Example #1
0
        public static Domain.Model.Store MapStoreWithDetails(DataAccess.Model.Stores data_stores)
        {
            /*var MapOrderWithDetails(data_stores.Orders);*/
            var tempStore = new Domain.Model.Store
            {
                StoreName     = data_stores.StoreName,
                StreetAddress = data_stores.StreetAddress,
                City          = data_stores.City,
                State         = data_stores.State,
                Zipcode       = data_stores.Zipcode,
                StoreId       = data_stores.StoreId
            };

            //add inventory for each item sold

            foreach (var inventory in data_stores.Inventorys)
            {
                tempStore.ProductAndInventory.Add(MapProduct(inventory.Product), MapInventory(inventory));
            }

            //add past customers (customers who have place orders at this store before)
            foreach (var order in data_stores.Orders)
            {
                tempStore.PastCustomers.Add(MapCustomer(order.Customer));
            }

            return(tempStore); // initialized domain model store
        }
        public IActionResult Create([Bind("LocationName")] StoreViewModel viewModel)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var store = new Domain.Model.Store
                    {
                        Id    = viewModel.StoreId,
                        Name  = viewModel.LocationName,
                        Items = RepoItem.GetItemsByStoreName(viewModel.LocationName)
                                .FindAll(p => p.StoreId == (RepoStore.GetStoresByName(viewModel.LocationName)
                                                            .First(p => p.Name == viewModel.LocationName).Id)),
                    };

                    RepoStore.AddStore(store);
                    RepoStore.Save();

                    return(RedirectToAction(nameof(Index)));
                }
                return(View(viewModel));
            }
            catch
            {
                return(View(viewModel));
            }
        }
Example #3
0
        public static DataAccess.Model.Stores  MapStoreWithInventory(Domain.Model.Store domain_store)
        {
            /*var MapOrderWithDetails(data_stores.Orders);*/
            var tempStore = new DataAccess.Model.Stores
            {
                StoreName     = domain_store.StoreName,
                StreetAddress = domain_store.StreetAddress,
                City          = domain_store.City,
                State         = domain_store.State,
                Zipcode       = domain_store.Zipcode,
                StoreId       = domain_store.StoreId
            };

            //add inventory for each item sold

            foreach (var item in domain_store.ProductAndInventory)
            {
                var tempInventory = Mapper.MapInventory(item.Value);


                tempStore.Inventorys.Add(tempInventory);
                // product data lost?
            }



            return(tempStore); // initialized domain model store
        }
Example #4
0
 public static Context.Store UnMapStore(Domain.Model.Store store)
 {
     return(new Context.Store
     {
         StoreId = store.Id,
         LocationName = store.Name,
     });
 }
        public void UpdateStore(Domain.Model.Store inputStore)
        {
            _logger.LogInformation($"Updating store with ID {inputStore.Id}");
            Context.Store currentEntity = _dbContext.Stores.Find(inputStore.Id);
            Context.Store newEntity     = Mapper.UnMapStore(inputStore);

            _dbContext.Entry(currentEntity).CurrentValues.SetValues(newEntity);
        }
        // GET: Items/Delete/5
        public IActionResult Delete(int id)
        {
            Domain.Model.Store store = RepoStore.GetStoreById(id);
            var viewModel            = new StoreViewModel
            {
                StoreId      = store.Id,
                LocationName = store.Name,
                ItemCount    = store.Items.Count
            };

            return(View(viewModel));
        }
        public void AddStore(Domain.Model.Store inputStore)
        {
            if (inputStore.Id != 0)
            {
                _logger.LogWarning($"Store to be added has an ID ({inputStore.Id}) already: ignoring.");
            }

            _logger.LogInformation("Adding store");

            Context.Store entity = Mapper.UnMapStore(inputStore);
            entity.StoreId = 0;
            _dbContext.Add(entity);
        }
        // GET: Items/Edit/5
        public IActionResult Edit(int id)
        {
            // we pass the current values into the Edit view
            // so that the input fields can be pre-populated instead of blank
            // (important for good UX)
            Domain.Model.Store store = RepoStore.GetStoreById(id);
            var viewModel            = new StoreViewModel
            {
                StoreId      = store.Id,
                LocationName = store.Name,
                ItemCount    = store.Items.Count
            };

            return(View(viewModel));
        }
Example #9
0
        // The passed Stores object must include Inventorys or the inventory quantity will be null
        public static Domain.Model.Store MapStoreWithInventory(DataAccess.Model.Stores data_stores)
        {
            /*var MapOrderWithDetails(data_stores.Orders);*/
            var tempStore = new Domain.Model.Store
            {
                StoreName     = data_stores.StoreName,
                StreetAddress = data_stores.StreetAddress,
                City          = data_stores.City,
                State         = data_stores.State,
                Zipcode       = data_stores.Zipcode,
                StoreId       = data_stores.StoreId
            };


            foreach (var inventory in data_stores.Inventorys)
            {
                tempStore.ProductAndInventory.Add(MapProduct(inventory.Product), MapInventory(inventory));
            }

            return(tempStore); // initialized domain model store
        }
        public IActionResult Edit([FromRoute] int id, [Bind("LocationName")] StoreViewModel viewModel)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    Domain.Model.Store store = RepoStore.GetStoreById(id);
                    store.Name  = viewModel.LocationName;
                    store.Items = RepoItem.GetItemsByStoreName(viewModel.LocationName)
                                  .FindAll(p => p.StoreId == (RepoStore.GetStoresByName(viewModel.LocationName)
                                                              .First(p => p.Name == viewModel.LocationName).Id));
                    RepoStore.UpdateStore(store);
                    RepoStore.Save();

                    return(RedirectToAction(nameof(Index)));
                }
                return(View(viewModel));
            }
            catch (Exception)
            {
                return(View(viewModel));
            }
        }