예제 #1
0
        public async Task <int> AddStores(Discount model, int Id)
        {
            List <StoreViewModels> storeviews = new List <StoreViewModels>();

            if (model.StoreCategory == "ALL" && model.StoreName == "ALL")
            {
                var storeview = GetStore("", "");
                foreach (var i in storeview)
                {
                    storeviews.Add(i);
                }
            }
            else if (model.StoreCategory != "ALL" && model.StoreName == "ALL")
            {
                var storeview = GetStore(model.StoreCategory, "");
                foreach (var i in storeview)
                {
                    storeviews.Add(i);
                }
            }
            else
            {
                var storeview = GetStore(model.StoreCategory, model.StoreName);
                foreach (var i in storeview)
                {
                    storeviews.Add(i);
                }
            }

            foreach (var store in storeviews)
            {
                DiscountStore discountStore = new DiscountStore
                {
                    Address       = store.address,
                    City          = store.city,
                    Code          = store.code,
                    Name          = store.name,
                    OnlineOffline = store.onlineOffline,
                    SalesCategory = store.salesCategory,
                    StoreArea     = store.storeArea,
                    StoreCategory = store.storeCategory,
                    StoreId       = store.Id,
                    StoreWide     = store.storeWide,
                    DiscountId    = Id,
                    DiscountCode  = model.Code
                };
                discountStore.FlagForCreate(IdentityService.Username, UserAgent);
                discountStore.FlagForUpdate(IdentityService.Username, UserAgent);

                DbSetDiscountStore.Add(discountStore);
            }
            int result = 0;

            return(result += await DbContext.SaveChangesAsync());
        }
예제 #2
0
        public async Task <int> UpdateStores(int id, Discount model)
        {
            int Update = 0;
            List <StoreViewModels> storeviews = new List <StoreViewModels>();

            if (model.StoreCategory == "ALL" && model.StoreName == "ALL")
            {
                var storeview = GetStore("", "");
                foreach (var i in storeview)
                {
                    storeviews.Add(i);
                }
            }
            else if (model.StoreCategory != "ALL" && model.StoreName == "ALL")
            {
                var storeview = GetStore(model.StoreCategory, "");
                foreach (var i in storeview)
                {
                    storeviews.Add(i);
                }
            }
            else
            {
                var storeview = GetStore(model.StoreCategory, model.StoreName);
                foreach (var i in storeview)
                {
                    storeviews.Add(i);
                }
            }

            if (model.StoreCategory == "ALL")
            {
                foreach (var store in storeviews)
                {
                    var distore = DbContext.DiscountStores.Where(x => x.DiscountId == id && x.Name == store.name).FirstOrDefault();
                    if (distore == null)
                    {
                        DiscountStore discountStore = new DiscountStore
                        {
                            Address       = store.address,
                            City          = store.city,
                            Code          = store.code,
                            Name          = store.name,
                            OnlineOffline = store.onlineOffline,
                            SalesCategory = store.salesCategory,
                            StoreArea     = store.storeArea,
                            StoreCategory = store.storeCategory,
                            StoreId       = store.Id,
                            StoreWide     = store.storeWide,
                            DiscountId    = model.Id,
                            DiscountCode  = model.Code
                        };
                        discountStore.FlagForCreate(IdentityService.Username, UserAgent);
                        discountStore.FlagForUpdate(IdentityService.Username, UserAgent);

                        DbSetDiscountStore.Add(discountStore);
                    }
                    else
                    {
                        distore._IsDeleted = false;
                    }
                }
            }
            else if (DbContext.DiscountStores.Where(x => x.DiscountId == model.Id).Count() > 1)
            {
                foreach (var stores in DbContext.DiscountStores.Where(x => x.DiscountId == model.Id))
                {
                    if (model.StoreName != stores.Name)
                    {
                        stores.FlagForDelete(IdentityService.Username, UserAgent);
                    }
                    else
                    {
                        var store = storeviews.Where(x => x.name == stores.Name).FirstOrDefault();
                        stores.Address       = store.address;
                        stores.City          = store.city;
                        stores.Code          = store.code;
                        stores.Name          = store.name;
                        stores.OnlineOffline = store.onlineOffline;
                        stores.SalesCategory = store.salesCategory;
                        stores.StoreArea     = store.storeArea;
                        stores.StoreCategory = store.storeCategory;
                        stores.StoreId       = store.Id;
                        stores.StoreWide     = store.storeWide;
                        stores._IsDeleted    = false;
                    }
                }
            }
            else
            {
                var stores = DbContext.DiscountStores.Where(x => x.DiscountId == model.Id).FirstOrDefault();
                var store  = storeviews.Where(x => x.name == model.StoreName).FirstOrDefault();
                stores.Address       = store.address;
                stores.City          = store.city;
                stores.Code          = store.code;
                stores.Name          = store.name;
                stores.OnlineOffline = store.onlineOffline;
                stores.SalesCategory = store.salesCategory;
                stores.StoreArea     = store.storeArea;
                stores.StoreCategory = store.storeCategory;
                stores.StoreId       = store.Id;
                stores.StoreWide     = store.storeWide;
            }

            Update += await DbContext.SaveChangesAsync();

            return(Update);
        }