// GET The BOM List public ActionResult GetChildBOMList(int OpportunityID, string BOMitemID, int BOMID, int State) { DL_OpportunityBOMItemsViewModel DLVM = new DL_OpportunityBOMItemsViewModel(); QuoteBOMBusinessLogic BL = new QuoteBOMBusinessLogic(); DLVM = BL.GetOpportunityBOMChildItemsByBOMItemID(OpportunityID, BOMitemID, BOMID, State); OpportunityBOMItemsViewModel view = PopulateBOMList(DLVM, ""); return(Json(view.BOMListViewModel, JsonRequestBehavior.AllowGet)); }
// GET The BOM List public ActionResult GetBOMList(int OpportunityID, int BOMID, string QuoteNo, string Name, bool NewBOM, bool ViewBOM, bool PMView) { int State; if (PMView == false) { State = (int)BOMState.Sales; } else { State = (int)BOMState.PM; } DL_OpportunityBOMItemsViewModel DLVM = new DL_OpportunityBOMItemsViewModel(); QuoteBOMBusinessLogic BL = new QuoteBOMBusinessLogic(); DLVM = BL.GetOpportunityBOMItemsByOpportunityID(OpportunityID, BOMID, NewBOM, State); OpportunityBOMItemsViewModel view = PopulateBOMList(DLVM, QuoteNo); view.ItemMasterName = Name; view.ViewBOM = ViewBOM; return(View("BOMList", view)); }
//---------------------------------Populate Data to View Modal and from BL private OpportunityBOMItemsViewModel PopulateBOMList(DL_OpportunityBOMItemsViewModel BOMDL, string QuoteNo) { OpportunityBOMItemsViewModel ret = new OpportunityBOMItemsViewModel(); List <OpportunityBOMItem> bomlst = new List <OpportunityBOMItem>(); if (BOMDL == null) { return(ret); } if (BOMDL.BOMListViewModel == null) { OpportunityBOMItem Model = new OpportunityBOMItem(); bomlst.Add(Model); ret.BOMListViewModel = bomlst; ret.QuoteNo = QuoteNo; return(ret); } if (BOMDL.BOMListViewModel.Count > 0) { decimal GrandTotal = 0; decimal GrandTotalAfterDiscount = 0; foreach (var item in BOMDL.BOMListViewModel) { OpportunityBOMItem Model = new OpportunityBOMItem(); Model.OpportunityID = item.OpportunityID; Model.BOMItemID = item.BOMItemID; Model.BOMID = item.BOMID; Model.Description = item.Description; Model.ItemPrice = item.ItemPrice; Model.Price = item.Price; Model.Category = item.Category; Model.SubCategory = item.SubCategory; Model.Qty = item.Qty; Model.MatthewsCode = item.MatthewsCode; Model.OpportunityBOMListID = item.OpportunityBOMListID; Model.Category = item.Category; Model.IsDiscountApply = item.IsDiscountApply; Model.Discount = item.Discount; Model.AfterDiscount = item.AfterDiscount; Model.IsQtyFixed = item.IsQtyFixed; Model.MaximumQty = item.MaximumQty; Model.Stock = item.Stock; Model.State = item.State; if (item.IsInTotal == true) { Model.IsInTotal = 1; GrandTotal += item.Price; GrandTotalAfterDiscount += item.PriceAfterDiscount; } else { Model.IsInTotal = 0; } if (item.IsDecimalAllowed == true) { Model.IsDecimalAllowed = 1; } else { Model.IsDecimalAllowed = 0; } ret.FinalAgreedPrice = item.FinalAgreedPrice; ret.Discount = item.Discount; ret.IsCustomParts = item.IsCustomParts; ret.OpportunityID = item.OpportunityID; ret.BOMID = item.BOMID; ret.BOM = item.BOM; ret.ClosedDate = item.ClosedDate; ret.InkUsage = item.InkUsage; bomlst.Add(Model); } ret.GrandTotalAfterDiscount = GrandTotalAfterDiscount; ret.GrandTotal = GrandTotal; ret.BOMListViewModel = bomlst; ret.QuoteNo = QuoteNo; } return(ret); }