public IHttpActionResult CreateNewChargingDetail([FromBody] InvoiceDetailJsonObj obj) { var invoiceInDb = _context.Invoices.Find(obj.invoiceId); var newInvoiceDetail = new InvoiceDetail { Activity = obj.Activity, ChargingType = obj.ChargingType, Unit = obj.Unit, Rate = obj.Rate, Amount = obj.Amount, Quantity = obj.Quantity, Memo = obj.Memo, Invoice = invoiceInDb }; invoiceInDb.TotalDue += obj.Amount; _context.InvoiceDetails.Add(newInvoiceDetail); _context.SaveChanges(); var sampleDto = Mapper.Map <InvoiceDetail, InvoiceDetailDto>(_context.InvoiceDetails.OrderBy(x => x.Id).First()); return(Created(Request.RequestUri + "/" + sampleDto.Id, sampleDto)); }
public void UpdateInvoiceDetail([FromUri] int invoiceDetailId, [FromBody] InvoiceDetailJsonObj obj) { var invoiceDetailInDb = _context.InvoiceDetails.Find(invoiceDetailId); invoiceDetailInDb.Activity = obj.Activity; invoiceDetailInDb.Amount = obj.Amount; invoiceDetailInDb.ChargingType = obj.ChargingType; invoiceDetailInDb.Cost = obj.Cost; invoiceDetailInDb.DateOfCost = obj.DateOfCost; invoiceDetailInDb.Memo = obj.Memo; invoiceDetailInDb.Operator = _userName; invoiceDetailInDb.Quantity = obj.Quantity; invoiceDetailInDb.Rate = obj.Rate; invoiceDetailInDb.Unit = obj.Unit; _context.SaveChanges(); }
public IHttpActionResult CreateChargingItem([FromUri] string reference, [FromUri] string invoiceType, [FromBody] InvoiceDetailJsonObj obj) { var invoice = new InvoiceDetail(); if (invoiceType == FBAInvoiceType.MasterOrder) { var masterOrderInDb = _context.FBAMasterOrders.SingleOrDefault(x => x.Container == reference); var invoiceDetail = new InvoiceDetail { Activity = obj.Activity, ChargingType = obj.ChargingType, DateOfCost = obj.DateOfCost, Memo = obj.Memo == null ? null : obj.Memo.ToUpper(), Unit = obj.Unit, Rate = obj.Rate, Cost = obj.Cost, OriginalAmount = obj.OriginalAmount, Discount = obj.Discount, Quantity = obj.Quantity, InvoiceType = invoiceType, Amount = obj.Amount, FBAMasterOrder = masterOrderInDb, Operator = _userName }; invoice = invoiceDetail; _context.InvoiceDetails.Add(invoiceDetail); } else if (invoiceType == FBAInvoiceType.ShipOrder) { var shipOrderInDb = _context.FBAShipOrders.SingleOrDefault(x => x.ShipOrderNumber == reference); var invoiceDetail = new InvoiceDetail { Activity = obj.Activity, ChargingType = obj.ChargingType, DateOfCost = obj.DateOfCost, Memo = obj.Memo == null ? null : obj.Memo.ToUpper(), Unit = obj.Unit, Rate = obj.Rate, Discount = obj.Discount, Cost = obj.Cost, Quantity = obj.Quantity, OriginalAmount = obj.OriginalAmount, InvoiceType = invoiceType, Amount = obj.Amount, FBAShipOrder = shipOrderInDb, Operator = _userName }; invoice = invoiceDetail; _context.InvoiceDetails.Add(invoiceDetail); } _context.SaveChanges(); return(Created(Request.RequestUri + "/", Mapper.Map <InvoiceDetail, InvoiceDetailDto>(invoice))); }