Ejemplo n.º 1
0
        public async Task <bool> ModifyAsync(long productID)
        {
            return(await Task.Run(() =>
            {
                var item = MerchantProductProvider.GetMerchantProduct(productID);

                AreaIndexManager.Instance.Modify(item);
                MerchantProductIndexManager.Instance.Modify(item);

                return true;
            }));
        }
Ejemplo n.º 2
0
        public async Task <bool> AddAsync(long productID)
        {
            return(await Task.Run(() =>
            {
                var item = MerchantProductProvider.GetMerchantProduct(productID);

                if (item != null)
                {
                    AreaIndexManager.Instance.Insert(item);
                    MerchantProductIndexManager.Instance.Insert(item);
                    return true;
                }

                return false;
            }));
        }
Ejemplo n.º 3
0
        public async Task InitAsync()
        {
            await Task.Run(() =>
            {
                var list = MerchantProductProvider.GetAllProductList();

                if (null != list)
                {
                    //var cacheOpenAreas = CacheCollection.OpenAreaCache.Value();

                    foreach (var item in list)
                    {
                        UpdateAsync(item);
                    }
                }
            });
        }
Ejemplo n.º 4
0
        public async Task <bool> DeleteAsync(int?areaID, long productID)
        {
            return(await Task.Run(() =>
            {
                if (!areaID.HasValue || areaID < 100000)
                {
                    var layer = MerchantProductProvider.GetProductAreaLayer(productID);

                    var cacheOpenAreas = CacheCollection.OpenAreaCache.Value();

                    areaID = AreaHelper.GetOpenAreaID(layer, cacheOpenAreas);
                }

                AreaIndexManager.Instance.Delete(Enums.IndexDataType.MerchantProduct, areaID.Value, productID);
                MerchantProductIndexManager.Instance.Delete(Enums.IndexDataType.MerchantProduct, areaID.Value, productID);

                return true;
            }));
        }