public static void UpdateInvoiceDetail(InvoiceDetailModel model) { InvoiceModel invoice = SessionHelper.Invoice; invoice.InvoiceDetail.FirstOrDefault(x => x.Id == model.Id).InvoiceSourceId = model.InvoiceSourceId; invoice.InvoiceDetail.FirstOrDefault(x => x.Id == model.Id).ItemId = model.ItemId; invoice.InvoiceDetail.FirstOrDefault(x => x.Id == model.Id).Quantity = model.Quantity; invoice.InvoiceDetail.FirstOrDefault(x => x.Id == model.Id).Rate = model.Rate; invoice.InvoiceDetail.FirstOrDefault(x => x.Id == model.Id).TaxId = model.TaxId; invoice.InvoiceDetail.FirstOrDefault(x => x.Id == model.Id).Amount = model.Quantity * model.Rate; if (model.TaxId != null) { TaxDetailModel taxDetail = TaxHelper.GetTaxDetail(invoice.InvoiceDetail.FirstOrDefault(x => x.Id == model.Id).TaxId.ToString()).FirstOrDefault(x => x.StartDate <= SessionHelper.Invoice.InvoiceDate && x.EndDate >= SessionHelper.Invoice.InvoiceDate); if (taxDetail != null) { invoice.InvoiceDetail.FirstOrDefault(x => x.Id == model.Id).TaxAmount = invoice.InvoiceDetail.FirstOrDefault(x => x.Id == model.Id).Amount *taxDetail.Rate / 100; } else { invoice.InvoiceDetail.FirstOrDefault(x => x.Id == model.Id).TaxAmount = 0; } } }
private static TaxDetail getEntityByModel(TaxDetailModel model) { if (model == null) { return(null); } TaxDetail entity = new TaxDetail(); if (model.Id == 0) { entity.CreateBy = AuthenticationHelper.UserId; entity.CreateDate = DateTime.Now; } else { entity.CreateBy = model.CreateBy; entity.CreateDate = model.CreateDate; } entity.CodeCombinationId = model.CodeCombinationId; entity.EndDate = model.EndDate; entity.Id = model.Id; entity.Rate = model.Rate; entity.StartDate = model.StartDate; entity.TaxId = model.TaxId; entity.UpdateBy = AuthenticationHelper.UserId; entity.UpdateDate = DateTime.Now; return(entity); }
public static void DeleteTaxDetail(TaxDetailModel model) { TaxModel tax = SessionHelper.Tax; TaxDetailModel taxDetail = tax.TaxDetails.FirstOrDefault(x => x.Id == model.Id); tax.TaxDetails.Remove(taxDetail); }
public static void UpdateTaxDetail(TaxDetailModel model) { TaxModel tax = SessionHelper.Tax; tax.TaxDetails.FirstOrDefault(x => x.Id == model.Id).CodeCombinationId = model.CodeCombinationId; tax.TaxDetails.FirstOrDefault(x => x.Id == model.Id).StartDate = model.StartDate; tax.TaxDetails.FirstOrDefault(x => x.Id == model.Id).EndDate = model.EndDate; tax.TaxDetails.FirstOrDefault(x => x.Id == model.Id).Rate = model.Rate; }
public static void Insert(InvoiceDetailModel model) { model.Amount = model.Quantity * model.Rate; TaxDetailModel taxDetail = TaxHelper.GetTaxDetail(model.TaxId.ToString()).FirstOrDefault(x => x.StartDate <= SessionHelper.Invoice.InvoiceDate && x.EndDate >= SessionHelper.Invoice.InvoiceDate); if (taxDetail != null) { model.TaxAmount = model.Amount * taxDetail.Rate / 100; } else { model.TaxAmount = 0; } InvoiceModel invoice = SessionHelper.Invoice; invoice.InvoiceDetail.Add(model); }
public ActionResult UpdatePartial(TaxDetailModel model) { if (ModelState.IsValid) { try { TaxHelper.UpdateTaxDetail(model); } catch (Exception e) { ViewData["EditError"] = e.Message; } } else { ViewData["EditError"] = "Please, correct all errors."; } return(PartialView("_TaxDetailPartial", TaxHelper.GetTaxDetail())); }
public ActionResult AddNewPartial(TaxDetailModel model) { if (ModelState.IsValid) { try { bool validInput = false; if (SessionHelper.Tax.TaxDetails.Count != 0) { if (SessionHelper.Tax.TaxDetails.Any(rec => rec.CodeCombinationId == model.CodeCombinationId)) { ViewData["EditError"] = "Duplicate accounts can not be added."; } else { validInput = true; model.Id = SessionHelper.Tax.TaxDetails.Last().Id + 1; } } else { model.Id = 1; validInput = true; } if (validInput) { TaxHelper.Insert(model); } } catch (Exception ex) { ViewData["EditError"] = ex.Message; } } else { ViewData["EditError"] = "Please, correct all errors."; } return(PartialView("_TaxDetailPartial", TaxHelper.GetTaxDetail())); }
public ActionResult SaveInvoice(string invoiceType, string invoiceDate, string conversionRate, string remarks, long customerId, long customerSiteId, long periodId, long currencyId) { string message = ""; try { bool saved = false; if (SessionHelper.Invoice != null) { if (SessionHelper.Invoice.InvoiceDetail.Count == 0) { message = "No detail information available to save!"; } else { SessionHelper.Invoice.InvoiceType = invoiceType; SessionHelper.Invoice.InvoiceDate = Convert.ToDateTime(invoiceDate); SessionHelper.Invoice.ConversionRate = Convert.ToDecimal(conversionRate); SessionHelper.Invoice.Remarks = remarks; SessionHelper.Invoice.CustomerId = customerId; SessionHelper.Invoice.CustomerSiteId = customerSiteId; SessionHelper.Invoice.PeriodId = periodId; SessionHelper.Invoice.CurrencyId = currencyId; if (SessionHelper.Invoice.InvoiceDate >= SessionHelper.Calendar.StartDate && SessionHelper.Invoice.InvoiceDate <= SessionHelper.Calendar.EndDate) { if (SessionHelper.Invoice.InvoiceNo == "New") { SessionHelper.Invoice.InvoiceNo = InvoiceHelper.GetInvoiceNo(AuthenticationHelper.CompanyId.Value, SessionHelper.Invoice.SOBId, SessionHelper.Invoice.PeriodId, SessionHelper.Invoice.CurrencyId); } foreach (InvoiceDetailModel invoiceDetail in SessionHelper.Invoice.InvoiceDetail) { invoiceDetail.Amount = invoiceDetail.Quantity * invoiceDetail.Rate; if (invoiceDetail.TaxId != null) { TaxDetailModel taxDetail = TaxHelper.GetTaxDetail(invoiceDetail.TaxId.ToString()).FirstOrDefault(x => x.StartDate <= SessionHelper.Invoice.InvoiceDate && x.EndDate >= SessionHelper.Invoice.InvoiceDate); if (taxDetail != null) { invoiceDetail.TaxAmount = invoiceDetail.Amount * taxDetail.Rate / 100; } else { invoiceDetail.TaxAmount = 0; } } } InvoiceHelper.Update(SessionHelper.Invoice); SessionHelper.Invoice = null; saved = true; message = "Saved successfully"; } else { message = "GL Date must lie in the range of the selected period"; } } } else { message = "No information available to save!"; } return(Json(new { success = saved, message = message })); } catch (Exception e) { message = e.Message; return(Json(new { success = false, message = message })); } }
public static void Insert(TaxDetailModel model) { TaxModel tax = SessionHelper.Tax; tax.TaxDetails.Add(model); }