public IActionResult ApplyDiscount([FromBody] InvoiceDiscountRequest request) { try { _invoiceService.ApplyDiscount(request); return(Ok(HttpStatusCode.OK)); } catch (Exception ex) { return(BadRequest(ex)); } }
public void ApplyDiscount(InvoiceDiscountRequest request) { var invoiceHeader = _customerInvoiceHeaderRepository .FirstOrDefault(c => c.InvoiceNo == request.InvoiceNo); if (invoiceHeader != null) { decimal newTax = (invoiceHeader.TreatmentSubTotalAmount - request.Discount) * 0.06M; decimal newDueAmount = newTax + (invoiceHeader.TreatmentSubTotalAmount - request.Discount); invoiceHeader.TreatmentDiscountAmount = request.Discount; invoiceHeader.TreatmentTaxAmount = newTax; invoiceHeader.TreatmentDueAmount = newDueAmount; _customerInvoiceHeaderRepository.SaveChanges(); } }