コード例 #1
0
        public async Task <CartResponseModel> GetCheckoutAsync(CartRequestModel requestModel)
        {
            CartResponseModel responseModel = new CartResponseModel();

            decimal totalPrice = default(decimal);

            List <int>            printedEditionIds = requestModel.CartItemModels.Select(item => item.PrintedEditionId).ToList();
            List <PrintedEdition> printedEditions   = await _printedEditionRepository.GetRangeByIdAsync(printedEditionIds);

            foreach (CartItemModel cartItem in requestModel.CartItemModels)
            {
                PrintedEdition    printedEdition = printedEditions.FirstOrDefault(item => item.Id == cartItem.PrintedEditionId);
                CheckoutItemModel checkoutItem   = new CheckoutItemModel
                {
                    PrintedEditionId   = printedEdition.Id,
                    PrintedEditionName = printedEdition.Name,
                    Quantity           = cartItem.Quantity,
                    UnitPrice          = printedEdition.Price,
                    OrderAmount        = printedEdition.Price * cartItem.Quantity
                };
                totalPrice += checkoutItem.OrderAmount;
                responseModel.CheckoutItemModels.Add(checkoutItem);
            }

            responseModel.TotalPrice = totalPrice;

            return(responseModel);
        }
コード例 #2
0
        public CartResponseModel Response(CartModel cartModel)
        {
            CartResponseModel cart = new CartResponseModel();

            cart.CartId      = cartModel.CartId;
            cart.UserId      = cartModel.UserId;
            cart.BookId      = cartModel.BookId;
            cart.CreatedDate = cartModel.CreatedDate;
            return(cart);
        }
コード例 #3
0
 public List <CartResponseModel> GetAllCartValues()
 {
     try
     {
         List <CartResponseModel> cartResponseList = new List <CartResponseModel>();
         var cartResponse = this.dbContext.Cart;
         foreach (var response in cartResponse)
         {
             CartResponseModel cart = new CartResponseModel();
             if (response.IsDeleted == "No")
             {
                 cart = Response(response);
                 cartResponseList.Add(cart);
             }
         }
         return(cartResponseList);
     }
     catch (Exception e)
     {
         throw new Exception(e.Message);
     }
 }