public async Task <CommodityItem> AddCommodityItemAsync(CommodityItem commodity, string token = "")
        {
            var id = await CommodityDatabase.Instance.SaveCommodityAsync(commodity);

            commodity.Id = id;
            return(commodity);
        }
예제 #2
0
        public CommodityItemViewModel Delete(CommodityItemViewModel commodityItem)
        {
            CommodityItem result = _mapperConfig.CreateMapper().Map <CommodityItem>(commodityItem);

            _service.DeleteFromShoppingCart(result);
            return(commodityItem);
        }
예제 #3
0
        public CommodityItemViewModel Put(CommodityItemViewModel commodityItem)
        {
            CommodityItem result = _mapperConfig.CreateMapper().Map <CommodityItem>(commodityItem);

            _service.UpdateInShoppingCart(result);
            return(commodityItem);
        }
예제 #4
0
        public async Task <CommodityItem> UpdateCommodityItemAsync(CommodityItem commodity, string token = "")
        {
            var builder = new UriBuilder(GlobalSettings.Instance.UnitEndpoint)
            {
                Path = $"{ApiUrlBase}/{commodity.Id}"
            };

            return(await _requestProvider.PutAsync(builder.ToString(), commodity, token));
        }
        public Task <int> SaveCommodityAsync(CommodityItem commodity)
        {
            if (commodity.Id != 0)
            {
                return(_database.UpdateAsync(commodity));
            }

            return(_database.InsertAsync(commodity));
        }
예제 #6
0
        public CommodityItem AddToShoppingCart(CommodityItem item)
        {
            CommodityItem existingItem = GetByShoppingCartIdAndBookId(item.ShoppingCartId, item.BookId);

            if (existingItem == null)
            {
                _db.Entry(item).State = EntityState.Added;
                existingItem          = item;
            }
            else
            {
                existingItem.Quantity += item.Quantity;
            }
            _db.SaveChanges();
            return(existingItem);
        }
예제 #7
0
 public void DeleteFromShoppingCart(CommodityItem item)
 {
     _db.Entry(item).State = EntityState.Deleted;
     _db.SaveChanges();
 }
예제 #8
0
 public void UpdateInShoppingCart(CommodityItem item)
 {
     _db.Entry(item).State = EntityState.Modified;
     _db.SaveChanges();
 }
예제 #9
0
        public CommodityItem GetByShoppingCartIdAndBookId(int shoppingCartId, int bookId)
        {
            CommodityItem commodityItem = _db.CommodityItems.SingleOrDefault(c => c.ShoppingCartId == shoppingCartId && c.BookId == bookId);

            return(commodityItem);
        }
        public async Task <CommodityItem> UpdateCommodityItemAsync(CommodityItem commodity, string token = "")
        {
            await CommodityDatabase.Instance.SaveCommodityAsync(commodity);

            return(commodity);
        }
 public Task <int> DeleteCommodityAsync(CommodityItem commodity)
 {
     return(_database.DeleteAsync(commodity));
 }
예제 #12
0
        public CommodityItemViewModel Post(CommodityItemViewModel commodityItem)
        {
            CommodityItem newCommodityItem = _service.AddToShoppingCart(_mapperConfig.CreateMapper().Map <CommodityItem>(commodityItem));

            return(_mapperConfig.CreateMapper().Map <CommodityItemViewModel>(newCommodityItem));
        }