UNPKG

esoftplay-market

Version:

market module on esoftplay framework

48 lines (37 loc) 1.57 kB
// noPage import { MarketAds_homeProperty } from 'esoftplay/cache/market/ads_home/import'; import { MarketProduct_list_searchProperty } from 'esoftplay/cache/market/product_list_search/import'; export default class m { static deleteAdsCache(): void { const date: any = new Date() const advertConfig = MarketAds_homeProperty.state().get() const adsCache = MarketProduct_list_searchProperty.getProductCache() const adsCacheMerchant = MarketProduct_list_searchProperty.getProductCacheMerchant() removeAds(adsCache, 'product') removeAds(adsCacheMerchant, 'merchant') function removeAds(result: string, type: 'product' | 'merchant'): void { const _delay = (type == 'product' ? advertConfig.ads_cache : advertConfig.ads_merchant_cache) * 1000 let cache = JSON.parse(result) let _cache = Object.values(cache) let _key = Object.keys(cache) function deleteExpired(newCache: any, key: any, index: any) { let cache = newCache delete cache[key][index] //set new_cache if (type == "product") { MarketProduct_list_searchProperty.setProductCache(cache) } else { MarketProduct_list_searchProperty.setProductCacheMerchant(cache) } } _cache.map((item: any, i) => Object.values(item).map((x, y) => x) .map((item2: any, i2: number) => { if (Number(date - item2[2]) > _delay) { let index = item2[1] + '-' + item2[0] deleteExpired(cache, _key[i], index) } }) ) } } }