コード例 #1
0
        public async Task <IActionResult> UpdateMarket(long id, [FromBody] UpdateMarketSellerDTO updatedMarketSeller)
        {
            // check if requester is trying to update markets of other sellers
            if (id != updatedMarketSeller.SellerId)
            {
                return(Forbid());
            }

            // check if requester is part of the seller
            if (!await _permissionService.UserIsSeller(HttpContext.GetUserIdFromToken(), id))
            {
                return(Forbid());
            }

            return(Ok(await _sellerService.UpdateMarketSeller(updatedMarketSeller)));
        }
コード例 #2
0
        public async Task <ServiceResponse <GetMarketSellerDTO> > UpdateMarketSeller(UpdateMarketSellerDTO updatedMarketSeller)
        {
            ServiceResponse <GetMarketSellerDTO> serviceResponse = new ServiceResponse <GetMarketSellerDTO>();

            try
            {
                var marketSeller = await _context.MarketSellers.Include(x => x.Market).Include(x => x.Seller).FirstOrDefaultAsync(x => x.SellerId == updatedMarketSeller.SellerId && x.MarketId == updatedMarketSeller.MarketId);

                if (marketSeller != null)
                {
                    marketSeller.Description           = updatedMarketSeller.Description;
                    marketSeller.Portfolio             = updatedMarketSeller.Portfolio;
                    marketSeller.LastReservationOffset = updatedMarketSeller.LastReservationOffset;
                    marketSeller.DebitCardAccepted     = updatedMarketSeller.DebitCardAccepted;
                    marketSeller.CreditCardAccepted    = updatedMarketSeller.CreditCardAccepted;
                    marketSeller.Visible = updatedMarketSeller.Visible;

                    // TODO: figure out why this is not working here
                    //_context.MarketSellers.Update(dbMarketSeller);
                    await _context.SaveChangesAsync();

                    serviceResponse.Data = _mapper.Map <GetMarketSellerDTO>(marketSeller);
                }
                else
                {
                    serviceResponse.Success = false;
                    serviceResponse.Message = $"Could not found market with id '{updatedMarketSeller.MarketId}' on seller with id '{updatedMarketSeller.SellerId}'";
                }
            }
            catch (Exception ex)
            {
                serviceResponse.Success   = false;
                serviceResponse.Exception = ex.Message;
            }
            return(serviceResponse);
        }