public async Task <IActionResult> PutBillSaleDetail(string id, BillSaleDetail billSaleDetail) { if (id != billSaleDetail.Id) { return(BadRequest()); } _context.Entry(billSaleDetail).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!BillSaleDetailExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public BillDetailView(BillSaleDetail output, string nameProduct, string promotionName, double?saleOff) { this.NameProduct = nameProduct; this.Amount = output.Amount; this.ProductID = output.ProductID; this.PromotionID = output.PromotionID; this.PriceProduct = output.PriceProduct; this.PromotionName = promotionName; this.SaleOff = saleOff; }
public async Task <ActionResult <BillSaleDetail> > PostBillSaleDetail(BillSaleDetail billSaleDetail) { _context.BillSaleDetail.Add(billSaleDetail); try { await _context.SaveChangesAsync(); } catch (DbUpdateException) { if (BillSaleDetailExists(billSaleDetail.Id)) { return(Conflict()); } else { throw; } } return(CreatedAtAction("GetBillSaleDetail", new { id = billSaleDetail.Id }, billSaleDetail)); }
public ContentResult ApproveOrder(ApproveOrderInput input) { try { UnitOfWork unitOfWork = new UnitOfWork(new Entity.QLBHDienThoaiEntities()); //===========check CartID has exist in bill Of Sale ====================== var cartExist = unitOfWork.BillOfSale.Query(x => x.CartID == input.OrderId).Any(); if (cartExist) { return(Content(Data.ToJson(new ResponseData("", false, "", "Đã tồn tại")))); } //=========== Begin Process ====================== //Tạo 1 Expression mục đích là Include thêm thông tin CartDetails,Customer vào Cart Expression <Func <Cart, object> >[] includes = new Expression <Func <Cart, object> > [1]; includes[0] = x => x.Customer; //lấy thông tin cart để approve var cart = unitOfWork.Cart .Include(includes) .FirstOrDefault(x => x.CartID == input.OrderId); if (cart != null) { //===========Add billOf Sale====================== var billOfSale = new BillOfSale { CartID = cart.CartID, BuyDate = DateTime.Now, EmployeeID = input.EmployeeId, EmployeeDeliveryID = input.EmployeeDeliveryId, Status = StatusBillKey.InProcess, TotalPrice = cart.TotalPrice }; unitOfWork.BillOfSale.Add(billOfSale); unitOfWork.Complete(); //===========Add detail====================== var cartDetails = unitOfWork.CartDetail .Query(x => x.CartID == cart.CartID); List <BillSaleDetail> billSaleDetails = new List <BillSaleDetail>(); // Lấy danh sách cart detail qua billDetail foreach (var item in cartDetails) { BillSaleDetail billSaleDetail = new BillSaleDetail { BillID = billOfSale.BillID, ProductID = item.ProductID, PromotionID = item.PromotionID, Amount = item.Amount, PriceProduct = item.PriceProduct }; billSaleDetails.Add(billSaleDetail); } unitOfWork.BillSaleDetail.AddRange(billSaleDetails); unitOfWork.Complete(); //=========== Change status Cart ====================== var cartData = unitOfWork.Cart.Get(input.OrderId); cartData.Status = StatusCartKey.Success; unitOfWork.Cart.Update(cartData); unitOfWork.Complete(); } return(Content(Data.ToJson(new ResponseData("", true, "", "Thành công")))); } catch (Exception e) { return(Content(Data.ToJson(new ResponseData("", false, e.Message, "Không Thành công")))); } }