public ActionResult SaveOrder(Models.ViewModels.Purchases.PurchaseHeaderViewModel model) { PurchaseOrderHeader order = null; if (model.Id.HasValue == false || model.Id == 0) { order = new PurchaseOrderHeader(); } else { order = _purchasingService.GetPurchaseOrderById(model.Id.Value); } order.VendorId = model.VendorId.Value; order.Date = model.Date; order.Description = string.Empty; foreach (var line in model.PurchaseLine.PurchaseLineItems) { var item = _inventoryService.GetItemById(line.ItemId); order.PurchaseOrderLines.Add(new PurchaseOrderLine() { Amount = line.Price, ItemId = item.Id, Quantity = line.Quantity, MeasurementId = item.PurchaseMeasurementId.Value, Cost = item.Cost.Value, }); } _purchasingService.AddPurchaseOrder(order, true); return(RedirectToAction("PurchaseOrders")); }
protected void AddLineItem(Models.ViewModels.Purchases.PurchaseHeaderViewModel model) { var item = _inventoryService.GetItemByNo(model.PurchaseLine.ItemNo); var newLine = new Models.ViewModels.Purchases.PurchaseLineItemViewModel() { ItemId = item.Id, ItemNo = item.No, ItemDescription = item.Description, Measurement = item.SellMeasurement.Description, Quantity = model.PurchaseLine.Quantity, Price = model.PurchaseLine.Price, }; model.PurchaseLine.PurchaseLineItems.Add(newLine); foreach (var line in model.PurchaseLine.PurchaseLineItems) { var taxes = _financialService.ComputeInputTax(model.VendorId.Value, line.ItemId, line.Quantity, line.Price, decimal.Zero); var taxVM = new Models.ViewModels.Purchases.PurchaseLineItemTaxViewModel(); //foreach (var tax in taxes) //{ // var t = _financialService.GetTaxes().Where(tx => tx.Id == int.Parse(tax.Key.ToString())).FirstOrDefault(); // taxVM.TaxId = int.Parse(tax.Key.ToString()); // taxVM.Amount = tax.Value; // taxVM.TaxRate = t.Rate; // taxVM.TaxName = t.TaxName; // model.PurchaseLine.PurchaseLineItemsTaxes.Add(taxVM); //} } }
public ActionResult PurchaseInvoice(int id = 0, int deliveryId = 0) { var model = new Models.ViewModels.Purchases.PurchaseHeaderViewModel(); model.DocumentType = Core.Domain.DocumentTypes.PurchaseInvoice; model.IsDirect = deliveryId == 0; model.Id = id; if (id == 0) { return(View(model)); } else { var invoice = _purchasingService.GetPurchaseInvoiceById(id); model.Id = invoice.Id; model.VendorId = invoice.VendorId; model.Date = invoice.Date; model.ReferenceNo = string.Empty; foreach (var line in invoice.PurchaseInvoiceLines) { var lineItem = new Models.ViewModels.Purchases.PurchaseLineItemViewModel(); lineItem.Id = line.Id; lineItem.ItemId = line.ItemId; lineItem.ItemNo = line.Item.No; lineItem.ItemDescription = line.Item.Description; lineItem.Measurement = line.Measurement.Description; lineItem.Quantity = line.Quantity; lineItem.Price = line.Amount; model.PurchaseLine.PurchaseLineItems.Add(lineItem); } return(View(model)); } }
public ActionResult SaveDelivery(Models.ViewModels.Purchases.PurchaseHeaderViewModel model) { if (model.Id == 0) { } else { } return(RedirectToAction("PurchaseDeliveries")); }
protected void DeleteLineItem(Models.ViewModels.Purchases.PurchaseHeaderViewModel model) { var request = HttpContext.Request; var deletedItem = request.Form["DeletedLineItem"]; if (!string.IsNullOrEmpty(deletedItem)) { model.PurchaseLine.PurchaseLineItems.RemoveAt(int.Parse(deletedItem)); } }
public ActionResult PurchaseDelivery(int id = 0, int orderid = 0) { var model = new Models.ViewModels.Purchases.PurchaseHeaderViewModel(); model.DocumentType = Core.Domain.DocumentTypes.PurchaseReceipt; if (id == 0) { model.Id = id; if (orderid != 0) { var order = _purchasingService.GetPurchaseOrderById(orderid); model.Id = order.Id; model.VendorId = order.VendorId; model.Date = order.Date; model.ReferenceNo = string.Empty; foreach (var line in order.PurchaseOrderLines) { var lineItem = new Models.ViewModels.Purchases.PurchaseLineItemViewModel(); lineItem.Id = line.Id; lineItem.ItemId = line.ItemId; lineItem.ItemNo = line.Item.No; lineItem.ItemDescription = line.Item.Description; lineItem.Measurement = line.Measurement.Description; lineItem.Quantity = line.Quantity; lineItem.Price = line.Amount; model.PurchaseLine.PurchaseLineItems.Add(lineItem); } } return(View(model)); } else { var delivery = _purchasingService.GetPurchaseReceiptById(id); model.Id = delivery.Id; model.VendorId = delivery.VendorId; model.Date = delivery.Date; model.ReferenceNo = string.Empty; foreach (var line in delivery.PurchaseReceiptLines) { var lineItem = new Models.ViewModels.Purchases.PurchaseLineItemViewModel(); lineItem.Id = line.Id; lineItem.ItemId = line.ItemId; lineItem.ItemNo = line.Item.No; lineItem.ItemDescription = line.Item.Description; lineItem.Measurement = line.Measurement.Description; lineItem.Quantity = line.Quantity; lineItem.Price = line.Amount; model.PurchaseLine.PurchaseLineItems.Add(lineItem); } return(View(model)); } }
public ActionResult SaveInvoice(Models.ViewModels.Purchases.PurchaseHeaderViewModel model) { if (model.Id == 0) { var invoice = new PurchaseInvoiceHeader(); invoice.Date = model.Date; invoice.Description = string.Empty; invoice.VendorId = model.VendorId; invoice.VendorInvoiceNo = model.ReferenceNo; } else { } return(RedirectToAction("PurchaseInvoices")); }
public ActionResult ReturnView(Models.ViewModels.Purchases.PurchaseHeaderViewModel model) { string actionName = string.Empty; switch (model.DocumentType) { case Core.Domain.DocumentTypes.SalesOrder: actionName = "PurchaseOrder"; break; case Core.Domain.DocumentTypes.SalesInvoice: actionName = "Purchasevoice"; break; case Core.Domain.DocumentTypes.SalesDelivery: actionName = "PurchaseDelivery"; break; } return(View(actionName, model)); }
public ActionResult PurchaseInvoice(int id = 0, int deliveryId = 0) { var model = new Models.ViewModels.Purchases.PurchaseHeaderViewModel(); model.DocumentType = Core.Domain.DocumentTypes.PurchaseInvoice; model.IsDirect = deliveryId == 0; model.Id = id; if (id == 0) { return View(model); } else { var invoice = _purchasingService.GetPurchaseInvoiceById(id); model.Id = invoice.Id; model.VendorId = invoice.VendorId; model.Date = invoice.Date; model.ReferenceNo = string.Empty; foreach (var line in invoice.PurchaseInvoiceLines) { var lineItem = new Models.ViewModels.Purchases.PurchaseLineItemViewModel(); lineItem.Id = line.Id; lineItem.ItemId = line.ItemId; lineItem.ItemNo = line.Item.No; lineItem.ItemDescription = line.Item.Description; lineItem.Measurement = line.Measurement.Description; lineItem.Quantity = line.Quantity; lineItem.Price = line.Amount; model.PurchaseLine.PurchaseLineItems.Add(lineItem); } return View(model); } }
public ActionResult PurchaseDelivery(int id = 0, int orderid = 0) { var model = new Models.ViewModels.Purchases.PurchaseHeaderViewModel(); model.DocumentType = Core.Domain.DocumentTypes.PurchaseReceipt; if (id == 0) { model.Id = id; if (orderid != 0) { var order = _purchasingService.GetPurchaseOrderById(orderid); model.Id = order.Id; model.VendorId = order.VendorId; model.Date = order.Date; model.ReferenceNo = string.Empty; foreach (var line in order.PurchaseOrderLines) { var lineItem = new Models.ViewModels.Purchases.PurchaseLineItemViewModel(); lineItem.Id = line.Id; lineItem.ItemId = line.ItemId; lineItem.ItemNo = line.Item.No; lineItem.ItemDescription = line.Item.Description; lineItem.Measurement = line.Measurement.Description; lineItem.Quantity = line.Quantity; lineItem.Price = line.Amount; model.PurchaseLine.PurchaseLineItems.Add(lineItem); } } return View(model); } else { var delivery = _purchasingService.GetPurchaseReceiptById(id); model.Id = delivery.Id; model.VendorId = delivery.VendorId; model.Date = delivery.Date; model.ReferenceNo = string.Empty; foreach (var line in delivery.PurchaseReceiptLines) { var lineItem = new Models.ViewModels.Purchases.PurchaseLineItemViewModel(); lineItem.Id = line.Id; lineItem.ItemId = line.ItemId; lineItem.ItemNo = line.Item.No; lineItem.ItemDescription = line.Item.Description; lineItem.Measurement = line.Measurement.Description; lineItem.Quantity = line.Quantity; lineItem.Price = line.Amount; model.PurchaseLine.PurchaseLineItems.Add(lineItem); } return View(model); } }
public ActionResult DeleteLineItemDelivery(Models.ViewModels.Purchases.PurchaseHeaderViewModel model) { DeleteLineItem(model); return(ReturnView(model)); }
public ActionResult AddLineItemInvoice(Models.ViewModels.Purchases.PurchaseHeaderViewModel model) { AddLineItem(model); return(ReturnView(model)); }