Пример #1
0
        public async Task <IActionResult> UpdateBasket([FromBody] UpdateBasketStatusDto basketStatus)
        {
            var res = await _service.UpdateBasketStatusAsync(basketStatus);

            if (res.Success)
            {
                return(Ok(res));
            }

            return(BadRequest(res));
        }
Пример #2
0
        public async Task <ServiceResponse <GetBasketDto> > UpdateBasketStatusAsync(UpdateBasketStatusDto updateBasketStatusDto)
        {
            var response = new ServiceResponse <GetBasketDto>();

            try
            {
                var basket = await _context.Baskets.Include(x => x.Customer)
                             .FirstOrDefaultAsync(c => c.Id == updateBasketStatusDto.Id);

                if (basket == null)
                {
                    response.Success = false;
                    response.Message = "Basket is not found";
                    response.Code    = ErrorCode.BASKET_NOT_FOUND_ERROR;

                    return(response);
                }
                basket.Status = updateBasketStatusDto.Status;

                _context.Baskets.Update(basket);

                _context.BasketLogs.Add(new BasketLog()
                {
                    BasketId = basket.Id,
                    Status   = basket.Status,
                });

                await _context.SaveChangeWithValidationAsync();

                var getBasketDto = _mapper.Map <GetBasketDto>(basket);

                response.Data = getBasketDto;

                return(response);
            }
            catch (Exception ex)
            {
                response.Success = false;
                response.Message = ex.Message;
                response.Code    = ErrorCode.BASKET_NOT_FOUND_ERROR;

                _logger.LogError(ex.Message, ex.StackTrace);
                return(response);
            }
        }