//ProductBuyer Code: public JsonResult ProductBuyerIndex(int ID)//ProductId { Product temp = new ProductService(_unitOfWork).Find(ID); ViewBag.Name = temp.ProductName; ViewBag.Id = ID; var ProductBuyer = new ProductBuyerService(_unitOfWork).GetProductBuyerList(ID).ToList(); return(Json(ProductBuyer, JsonRequestBehavior.AllowGet)); }
// GET: /ProductMaster/Edit/5 public ActionResult _Edit(int id)//ProductBuyerId { ProductBuyer pt = new ProductBuyerService(_unitOfWork).Find(id); ProductBuyerViewModel vm = AutoMapper.Mapper.Map <ProductBuyer, ProductBuyerViewModel>(pt); if (pt == null) { return(HttpNotFound()); } Product temp = new ProductService(_unitOfWork).Find(pt.ProductId); ViewBag.Name = temp.ProductName; ViewBag.Id = pt.ProductId; return(PartialView("_Create", vm)); }
public ActionResult DeleteProductBuyerConfirmed(ProductBuyerViewModel vm) { if (ModelState.IsValid) { List <LogTypeViewModel> LogList = new List <LogTypeViewModel>(); var temp = new ProductBuyerService(_unitOfWork).Find(vm.ProductBuyerId); LogList.Add(new LogTypeViewModel { ExObj = temp, }); new ProductBuyerService(_unitOfWork).Delete(vm.ProductBuyerId); XElement Modifications = new ModificationsCheckService().CheckChanges(LogList); try { _unitOfWork.Save(); } catch (Exception ex) { string message = _exception.HandleException(ex); ModelState.AddModelError("", message); return(PartialView("_Create", vm)); } //Logging Activity LogActivity.LogActivityDetail(LogVm.Map(new ActiivtyLogViewModel { DocTypeId = new DocumentTypeService(_unitOfWork).FindByName(MasterDocTypeConstants.ProductBuyer).DocumentTypeId, DocId = vm.ProductBuyerId, ActivityType = (int)ActivityTypeContants.Deleted, xEModifications = Modifications, })); return(Json(new { success = true })); } return(PartialView("_Create", vm)); }
public ActionResult SaleOrderExcelImport(int id) { int BuyerId = 0; var file = Request.Files[0]; string filePath = Request.MapPath(ConfigurationManager.AppSettings["ExcelFilePath"] + file.FileName); file.SaveAs(filePath); var excel = new ExcelQueryFactory(); //excel.FileName =ConfigurationManager.AppSettings["ExcelFilePath"]; // @"C:\Users\guru\Downloads\PO.xls"; //TODO: Rempve hardcode excel.FileName = filePath; var SaleOrderRecordList = from c in excel.Worksheet <SaleOrderExcel>() select c; StringBuilder strSku = new StringBuilder(); StringBuilder strSaleToBuyer = new StringBuilder(); StringBuilder strBillToBuyer = new StringBuilder(); StringBuilder strCurrency = new StringBuilder(); StringBuilder strShipMethod = new StringBuilder(); StringBuilder strDeliveryTerms = new StringBuilder(); StringBuilder strPriority = new StringBuilder(); StringBuilder strOrderNo = new StringBuilder(); foreach (var SaleOrderRecord in SaleOrderRecordList) { if (_SaleOrderHeaderService.FindByDocNo(SaleOrderRecord.OrderNumber) != null) { if (!strOrderNo.ToString().Contains("" + SaleOrderRecord.OrderNumber)) { strOrderNo.Append(" " + SaleOrderRecord.OrderNumber + ","); } } if (_ProductService.Find(SaleOrderRecord.Product) == null) { if (!strSku.ToString().Contains("" + SaleOrderRecord.Product)) { strSku.Append(" " + SaleOrderRecord.Product + ","); } } if (SaleOrderRecord.SaleToBuyer != null) { if (_BuyerService.GetBuyerByName(SaleOrderRecord.SaleToBuyer) == null) { if (!strSaleToBuyer.ToString().Contains("" + SaleOrderRecord.SaleToBuyer)) { strSaleToBuyer.Append(" " + SaleOrderRecord.SaleToBuyer + ","); } } } if (SaleOrderRecord.BillToBuyer != null) { if (_BuyerService.GetBuyerByName(SaleOrderRecord.BillToBuyer) == null) { if (!strBillToBuyer.ToString().Contains("" + SaleOrderRecord.BillToBuyer)) { strBillToBuyer.Append(" " + SaleOrderRecord.BillToBuyer + ","); } } } if (SaleOrderRecord.Currency != null) { if (_currencyService.GetCurrencyByName(SaleOrderRecord.Currency) == null) { if (!strCurrency.ToString().Contains("" + SaleOrderRecord.Currency)) { strCurrency.Append(" " + SaleOrderRecord.Currency + ","); } } } if (SaleOrderRecord.ShipMethod != null) { if (_ShipMethodService.GetShipMethodByName(SaleOrderRecord.ShipMethod) == null) { if (!strShipMethod.ToString().Contains("" + SaleOrderRecord.ShipMethod)) { strShipMethod.Append(" " + SaleOrderRecord.ShipMethod + ","); } } } if (SaleOrderRecord.DeliveryTerms != null) { if (_DeliveryTermsService.GetDeliveryTermsByName(SaleOrderRecord.DeliveryTerms) == null) { if (!strDeliveryTerms.ToString().Contains("" + SaleOrderRecord.DeliveryTerms)) { strDeliveryTerms.Append(" " + SaleOrderRecord.DeliveryTerms + ","); } } } if (SaleOrderRecord.Priority != null) { if (Enum.IsDefined(typeof(SaleOrderPriority), SaleOrderRecord.Priority) == false) { if (!strPriority.ToString().Contains("" + SaleOrderRecord.Priority)) { strPriority.Append(" " + SaleOrderRecord.Priority + ","); } } } } if (!string.IsNullOrEmpty(strSku.ToString()) || !string.IsNullOrEmpty(strOrderNo.ToString()) || !string.IsNullOrEmpty(strSaleToBuyer.ToString()) || !string.IsNullOrEmpty(strBillToBuyer.ToString()) || !string.IsNullOrEmpty(strCurrency.ToString()) || !string.IsNullOrEmpty(strShipMethod.ToString()) || !string.IsNullOrEmpty(strDeliveryTerms.ToString()) || !string.IsNullOrEmpty(strPriority.ToString())) { if (string.IsNullOrEmpty(strOrderNo.ToString())) { ViewBag.orderno = null; } else { ViewBag.orderno = strOrderNo; } if (string.IsNullOrEmpty(strSku.ToString())) { ViewBag.product = null; } else { ViewBag.product = strSku; } if (string.IsNullOrEmpty(strSaleToBuyer.ToString())) { ViewBag.SaleToBuyer = null; } else { ViewBag.SaleToBuyer = strSaleToBuyer; } if (string.IsNullOrEmpty(strBillToBuyer.ToString())) { ViewBag.BillToBuyer = null; } else { ViewBag.BillToBuyer = strBillToBuyer; } if (string.IsNullOrEmpty(strCurrency.ToString())) { ViewBag.Currency = null; } else { ViewBag.Currency = strCurrency; } if (string.IsNullOrEmpty(strShipMethod.ToString())) { ViewBag.ShipMethod = null; } else { ViewBag.ShipMethod = strShipMethod; } if (string.IsNullOrEmpty(strDeliveryTerms.ToString())) { ViewBag.DeliveryTerms = null; } else { ViewBag.DeliveryTerms = strDeliveryTerms; } if (string.IsNullOrEmpty(strPriority.ToString())) { ViewBag.Priority = null; } else { ViewBag.Priority = strPriority; } return(View()); } else { string previousRecord = null; int count = 0; SaleOrderHeader stemp = new SaleOrderHeader(); int LinePk = 0; foreach (var SaleOrderRecord in SaleOrderRecordList) { if (count == 0 || SaleOrderRecord.OrderNumber != previousRecord) { //Object for SaleorderHeader Model to Save Order Num,Order Date, Ship Date and Supplier SaleOrderHeader s = new SaleOrderHeader(); if (SaleOrderRecord.ShipAddress != null) { s.ShipAddress = SaleOrderRecord.ShipAddress; } s.DocDate = SaleOrderRecord.OrderDate; s.DocNo = SaleOrderRecord.OrderNumber; s.DueDate = SaleOrderRecord.DueDate; s.ActualDueDate = SaleOrderRecord.DueDate; s.BuyerOrderNo = SaleOrderRecord.BuyerOrderNo; s.CreatedDate = DateTime.Now; s.ModifiedDate = DateTime.Now; s.CreatedBy = User.Identity.Name; s.ModifiedBy = User.Identity.Name; s.SaleToBuyerId = _BuyerService.GetBuyerByName(SaleOrderRecord.SaleToBuyer).PersonID; if (SaleOrderRecord.BillToBuyer != null) { s.BillToBuyerId = _BuyerService.GetBuyerByName(SaleOrderRecord.BillToBuyer).PersonID; } else { s.BillToBuyerId = s.SaleToBuyerId; } BuyerId = s.SaleToBuyerId; s.DivisionId = (int)System.Web.HttpContext.Current.Session["DivisionId"]; s.SiteId = (int)System.Web.HttpContext.Current.Session["SiteId"]; SaleOrderSettings temp = new SaleOrderSettingsService(_unitOfWork).GetSaleOrderSettings(id, s.DivisionId, s.SiteId); if (temp == null) { throw new Exception("Sale order settings is not configured"); } if (SaleOrderRecord.Currency != null) { s.CurrencyId = _currencyService.GetCurrencyByName(SaleOrderRecord.Currency).ID; } else { s.CurrencyId = temp.CurrencyId; } if (SaleOrderRecord.ShipMethod == null) { s.ShipMethodId = temp.ShipMethodId; } else { s.ShipMethodId = _ShipMethodService.GetShipMethodByName(SaleOrderRecord.ShipMethod).ShipMethodId; } if (SaleOrderRecord.DeliveryTerms == null) { s.DeliveryTermsId = temp.DeliveryTermsId; } else { s.DeliveryTermsId = _DeliveryTermsService.GetDeliveryTermsByName(SaleOrderRecord.DeliveryTerms).DeliveryTermsId; } if (SaleOrderRecord.Priority == null) { s.Priority = temp.Priority; } else if (SaleOrderRecord.Priority == "Low") { s.Priority = (int)(SaleOrderPriority.Low); } else if (SaleOrderRecord.Priority == "High") { s.Priority = (int)(SaleOrderPriority.High); } else { s.Priority = (int)(SaleOrderPriority.Normal); } if (temp != null) { s.DocTypeId = temp.DocTypeId; s.UnitConversionForId = temp.UnitConversionForId; } _SaleOrderHeaderService.Create(s); stemp = s; } //Object for SaleOrderLineDetail Model to Save Rate, Quantity, Product Product product = _ProductService.Find(SaleOrderRecord.Product); SaleOrderLine sl = new SaleOrderLine(); sl.SaleOrderHeaderId = stemp.SaleOrderHeaderId; sl.Rate = (decimal)SaleOrderRecord.Rate; sl.Qty = SaleOrderRecord.Quantity; sl.ProductId = product.ProductId; sl.Specification = product.ProductSpecification; sl.DueDate = SaleOrderRecord.DueDate; sl.DealUnitId = product.UnitId; sl.CreatedDate = DateTime.Now; sl.ModifiedDate = DateTime.Now; sl.DealQty = SaleOrderRecord.Quantity; sl.CreatedBy = User.Identity.Name; sl.ModifiedBy = User.Identity.Name; sl.Amount = sl.Rate * sl.Qty; sl.SaleOrderLineId = LinePk++; if (SaleOrderRecord.BuyerUpcCode != "" && SaleOrderRecord.BuyerUpcCode != null) { ProductBuyer productbuyer = new ProductBuyerService(_unitOfWork).Find(BuyerId, sl.ProductId); if (productbuyer != null) { productbuyer.BuyerUpcCode = SaleOrderRecord.BuyerUpcCode; new ProductBuyerService(_unitOfWork).Update(productbuyer); } else { ProductBuyer Temp = new ProductBuyer(); Temp.BuyerId = BuyerId; Temp.ProductId = sl.ProductId; Temp.BuyerUpcCode = SaleOrderRecord.BuyerUpcCode; Temp.CreatedDate = DateTime.Now; Temp.ModifiedDate = DateTime.Now; Temp.CreatedBy = User.Identity.Name; Temp.ModifiedBy = User.Identity.Name; Temp.ObjectState = Model.ObjectState.Added; new ProductBuyerService(_unitOfWork).Create(Temp); } } _SaleOrderLineService.Create(sl); new SaleOrderLineStatusService(_unitOfWork).CreateLineStatus(sl.SaleOrderLineId); count++; previousRecord = SaleOrderRecord.OrderNumber; _unitOfWork.Save(); } ViewBag.id = id; return(View("Sucess")); } }
public void Post(int SaleEnquiryLineId, string ProductName) { SaleEnquiryLine Line = new SaleEnquiryLineService(_unitOfWork).Find(SaleEnquiryLineId); SaleEnquiryLineExtended LineExtended = new SaleEnquiryLineExtendedService(_unitOfWork).Find(SaleEnquiryLineId); Product Product = new ProductService(_unitOfWork).Find(ProductName); if (Product != null) { Line.ProductId = Product.ProductId; Line.ModifiedDate = DateTime.Now; Line.ModifiedBy = User.Identity.Name; Line.ObjectState = Model.ObjectState.Modified; new SaleEnquiryLineService(_unitOfWork).Update(Line); SaleEnquiryHeader Header = new SaleEnquiryHeaderService(_unitOfWork).Find(Line.SaleEnquiryHeaderId); ProductBuyer PB = new ProductBuyerService(_unitOfWork).Find((int)Header.SaleToBuyerId, Product.ProductId); if (PB == null) { string BuyerSku = LineExtended.BuyerSpecification.Replace("-", "") + "-" + LineExtended.BuyerSpecification1 + "-" + LineExtended.BuyerSpecification2; ProductBuyer ProdBuyer = new ProductBuyer(); ProdBuyer.BuyerId = (int)Header.SaleToBuyerId; ProdBuyer.ProductId = Product.ProductId; ProdBuyer.BuyerSku = LineExtended.BuyerSku == null ? BuyerSku : LineExtended.BuyerSku; ProdBuyer.BuyerUpcCode = LineExtended.BuyerUpcCode; ProdBuyer.BuyerSpecification = LineExtended.BuyerSpecification; ProdBuyer.BuyerSpecification1 = LineExtended.BuyerSpecification1; ProdBuyer.BuyerSpecification2 = LineExtended.BuyerSpecification2; ProdBuyer.BuyerSpecification3 = LineExtended.BuyerSpecification3; ProdBuyer.CreatedDate = DateTime.Now; ProdBuyer.CreatedBy = User.Identity.Name; ProdBuyer.ModifiedDate = DateTime.Now; ProdBuyer.ModifiedBy = User.Identity.Name; ProdBuyer.ObjectState = Model.ObjectState.Added; new ProductBuyerService(_unitOfWork).Create(ProdBuyer); } SaleOrderHeader SaleOrderHeader = new SaleOrderHeaderService(_unitOfWork).Find_ByReferenceDocId(Header.DocTypeId, Header.SaleEnquiryHeaderId); if (SaleOrderHeader == null) { CreateSaleOrder(Header.SaleEnquiryHeaderId); } else { CreateSaleOrderLine(Line.SaleEnquiryLineId, SaleOrderHeader.SaleOrderHeaderId); } try { _unitOfWork.Save(); } catch (Exception ex) { string message = _exception.HandleException(ex); } } }
public ActionResult _CreatePost(ProductBuyerViewModel vm) { ProductBuyer pt = AutoMapper.Mapper.Map <ProductBuyerViewModel, ProductBuyer>(vm); if (ModelState.IsValid) { if (vm.ProductBuyerId <= 0) { pt.CreatedDate = DateTime.Now; pt.ModifiedDate = DateTime.Now; pt.CreatedBy = User.Identity.Name; pt.ModifiedBy = User.Identity.Name; pt.ObjectState = Model.ObjectState.Added; new ProductBuyerService(_unitOfWork).Create(pt); try { _unitOfWork.Save(); } catch (Exception ex) { string message = _exception.HandleException(ex); ModelState.AddModelError("", message); return(PartialView("_Create", vm)); } LogActivity.LogActivityDetail(LogVm.Map(new ActiivtyLogViewModel { DocTypeId = new DocumentTypeService(_unitOfWork).FindByName(MasterDocTypeConstants.ProductBuyer).DocumentTypeId, DocId = pt.ProductBuyerId, ActivityType = (int)ActivityTypeContants.Added, })); return(RedirectToAction("_Create", new { ProductId = pt.ProductId })); } else { List <LogTypeViewModel> LogList = new List <LogTypeViewModel>(); ProductBuyer temp = new ProductBuyerService(_unitOfWork).Find(pt.ProductBuyerId); ProductBuyer ExRec = new ProductBuyer(); ExRec = Mapper.Map <ProductBuyer>(temp); temp.BuyerId = pt.BuyerId; temp.BuyerSku = pt.BuyerSku; temp.BuyerSpecification = pt.BuyerSpecification; temp.BuyerSpecification1 = pt.BuyerSpecification1; temp.BuyerSpecification2 = pt.BuyerSpecification2; temp.BuyerSpecification3 = pt.BuyerSpecification3; temp.BuyerSpecification4 = pt.BuyerSpecification4; temp.BuyerSpecification5 = pt.BuyerSpecification5; temp.BuyerSpecification6 = pt.BuyerSpecification6; temp.BuyerUpcCode = pt.BuyerUpcCode; temp.ModifiedDate = DateTime.Now; temp.ModifiedBy = User.Identity.Name; temp.ObjectState = Model.ObjectState.Modified; new ProductBuyerService(_unitOfWork).Update(temp); LogList.Add(new LogTypeViewModel { ExObj = ExRec, Obj = temp, }); XElement Modifications = new ModificationsCheckService().CheckChanges(LogList); try { _unitOfWork.Save(); } catch (Exception ex) { string message = _exception.HandleException(ex); ModelState.AddModelError("", message); return(PartialView("_Create", pt)); } LogActivity.LogActivityDetail(LogVm.Map(new ActiivtyLogViewModel { DocTypeId = new DocumentTypeService(_unitOfWork).FindByName(MasterDocTypeConstants.ProductBuyer).DocumentTypeId, DocId = temp.ProductBuyerId, ActivityType = (int)ActivityTypeContants.Modified, xEModifications = Modifications, })); return(Json(new { success = true })); } } return(PartialView("_Create", vm)); }
public ActionResult Post(SaleEnquiryLineViewModel vm) { if (ModelState.IsValid) { List <LogTypeViewModel> LogList = new List <LogTypeViewModel>(); SaleEnquiryLine temp = new SaleEnquiryLineService(_unitOfWork).Find(vm.SaleEnquiryLineId); SaleEnquiryLine ExRec = Mapper.Map <SaleEnquiryLine>(temp); temp.ProductId = vm.ProductId; temp.ModifiedDate = DateTime.Now; temp.ModifiedBy = User.Identity.Name; temp.ObjectState = Model.ObjectState.Modified; new SaleEnquiryLineService(_unitOfWork).Update(temp); ProductBuyer PB = new ProductBuyerService(_unitOfWork).Find((int)vm.SaleToBuyerId, (int)vm.ProductId); if (PB == null) { string BuyerSku = vm.BuyerSpecification.Replace("-", "") + "-" + vm.BuyerSpecification1 + "-" + vm.BuyerSpecification2; ProductBuyer ProdBuyer = new ProductBuyer(); ProdBuyer.BuyerId = (int)vm.SaleToBuyerId; ProdBuyer.ProductId = (int)vm.ProductId; ProdBuyer.BuyerSku = vm.BuyerSku == null ? BuyerSku : vm.BuyerSku; ProdBuyer.BuyerUpcCode = vm.BuyerUpcCode; ProdBuyer.BuyerSpecification = vm.BuyerSpecification; ProdBuyer.BuyerSpecification1 = vm.BuyerSpecification1; ProdBuyer.BuyerSpecification2 = vm.BuyerSpecification2; ProdBuyer.BuyerSpecification3 = vm.BuyerSpecification3; ProdBuyer.CreatedDate = DateTime.Now; ProdBuyer.CreatedBy = User.Identity.Name; ProdBuyer.ModifiedDate = DateTime.Now; ProdBuyer.ModifiedBy = User.Identity.Name; ProdBuyer.ObjectState = Model.ObjectState.Added; new ProductBuyerService(_unitOfWork).Create(ProdBuyer); } SaleEnquiryHeader SaleEnquiryHeader = new SaleEnquiryHeaderService(_unitOfWork).Find(temp.SaleEnquiryHeaderId); SaleOrderHeader SaleOrderHeader = new SaleOrderHeaderService(_unitOfWork).Find_ByReferenceDocId(SaleEnquiryHeader.DocTypeId, SaleEnquiryHeader.SaleEnquiryHeaderId); if (SaleOrderHeader == null) { CreateSaleOrder(temp.SaleEnquiryHeaderId); } else { CreateSaleOrderLine(temp.SaleEnquiryLineId, SaleOrderHeader.SaleOrderHeaderId); } LogList.Add(new LogTypeViewModel { ExObj = ExRec, Obj = temp, }); XElement Modifications = new ModificationsCheckService().CheckChanges(LogList); try { _unitOfWork.Save(); } catch (Exception ex) { string message = _exception.HandleException(ex); ModelState.AddModelError("", message); return(View("Create", vm)); } LogActivity.LogActivityDetail(LogVm.Map(new ActiivtyLogViewModel { DocTypeId = new DocumentTypeService(_unitOfWork).FindByName(TransactionDoctypeConstants.SaleEnquiryProductMapping).DocumentTypeId, DocId = temp.SaleEnquiryLineId, ActivityType = (int)ActivityTypeContants.Modified, xEModifications = Modifications, })); //return RedirectToAction("Index").Success("Data saved successfully"); //var SaleEnquiryProductMapping = _SaleEnquiryLineService.GetSaleEnquiryLineListForIndex().OrderBy(m => m.SaleEnquiryLineId).OrderBy(m => m.SaleEnquiryLineId).FirstOrDefault(); //if (SaleEnquiryProductMapping != null) //{ // return RedirectToAction("Edit", new { id = SaleEnquiryProductMapping.SaleEnquiryLineId }).Success("Data saved successfully"); //} //else //{ // return RedirectToAction("Index").Success("Data saved successfully"); //} int SaleEnquiryId = _SaleEnquiryLineService.NextId(vm.SaleEnquiryLineId); if (SaleEnquiryId > 0) { return(RedirectToAction("Edit", new { id = SaleEnquiryId }).Success("Data saved successfully")); } else { return(RedirectToAction("Index").Success("Data saved successfully")); } } return(View("Create", vm)); }
public ActionResult _CreatePost(SaleEnquiryLineViewModel svm) { SaleEnquiryLine s = Mapper.Map <SaleEnquiryLineViewModel, SaleEnquiryLine>(svm); SaleEnquiryHeader temp = new SaleEnquiryHeaderService(_unitOfWork).Find(s.SaleEnquiryHeaderId); //if (Command == "Submit" && (s.ProductId == 0)) // return RedirectToAction("Submit", "SaleEnquiryHeader", new { id = s.SaleEnquiryHeaderId }).Success("Data saved successfully"); if (svm.BuyerSpecification != null || svm.BuyerSpecification1 != null || svm.BuyerSpecification2 != null || svm.BuyerSpecification3 != null) { SaleEnquiryLine es = new SaleEnquiryLineService(_unitOfWork).Find_WithLineDetail(svm.SaleEnquiryHeaderId, svm.BuyerSpecification, svm.BuyerSpecification1, svm.BuyerSpecification2, svm.BuyerSpecification3); if (es != null) { if (es != null && es.SaleEnquiryLineId != svm.SaleEnquiryLineId) { ModelState.AddModelError("ProductId", "This Detail is already Added !"); } } } if (svm.Qty <= 0) { //ModelState.AddModelError("Qty", "Please Check Qty"); ViewBag.LineMode = "Create"; string message = "Please Check Qty"; TempData["CSEXCL"] += message; PrepareViewBag(temp); return(PartialView("_Create", svm)); } if (svm.DueDate < temp.DocDate) { ModelState.AddModelError("DueDate", "DueDate greater than DocDate"); } if (svm.SaleEnquiryLineId <= 0) { ViewBag.LineMode = "Create"; } else { ViewBag.LineMode = "Edit"; } if (ModelState.IsValid) { if (svm.SaleEnquiryLineId <= 0) { if (svm.BuyerSpecification != null || svm.BuyerSpecification1 != null || svm.BuyerSpecification2 != null || svm.BuyerSpecification3 != null) { ProductBuyer BP = new ProductBuyerService(_unitOfWork).Find(temp.SaleToBuyerId, svm.BuyerSpecification, svm.BuyerSpecification1, svm.BuyerSpecification2, svm.BuyerSpecification3); if (BP != null) { s.ProductId = BP.ProductId; } } s.CreatedDate = DateTime.Now; s.ModifiedDate = DateTime.Now; s.CreatedBy = User.Identity.Name; s.ModifiedBy = User.Identity.Name; s.ObjectState = Model.ObjectState.Added; _SaleEnquiryLineService.Create(s); SaleEnquiryLineExtended Extended = new SaleEnquiryLineExtended(); Extended.SaleEnquiryLineId = s.SaleEnquiryLineId; Extended.BuyerSpecification = svm.BuyerSpecification; Extended.BuyerSpecification1 = svm.BuyerSpecification1; Extended.BuyerSpecification2 = svm.BuyerSpecification2; Extended.BuyerSpecification3 = svm.BuyerSpecification3; Extended.BuyerSku = svm.BuyerSku; Extended.BuyerUpcCode = svm.BuyerUpcCode; new SaleEnquiryLineExtendedService(_unitOfWork).Create(Extended); //new SaleEnquiryLineStatusService(_unitOfWork).CreateLineStatus(s.SaleEnquiryLineId); SaleEnquiryHeader header = new SaleEnquiryHeaderService(_unitOfWork).Find(s.SaleEnquiryHeaderId); if (header.Status != (int)StatusConstants.Drafted && header.Status != (int)StatusConstants.Import) { header.Status = (int)StatusConstants.Modified; header.ModifiedDate = DateTime.Now; header.ModifiedBy = User.Identity.Name; new SaleEnquiryHeaderService(_unitOfWork).Update(header); } try { _unitOfWork.Save(); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXCL"] += message; PrepareViewBag(temp); return(PartialView("_Create", svm)); } LogActivity.LogActivityDetail(LogVm.Map(new ActiivtyLogViewModel { DocTypeId = header.DocTypeId, DocId = header.SaleEnquiryHeaderId, DocLineId = s.SaleEnquiryLineId, ActivityType = (int)ActivityTypeContants.Added, DocNo = header.DocNo, DocDate = header.DocDate, DocStatus = header.Status, })); return(RedirectToAction("_Create", new { id = s.SaleEnquiryHeaderId })); } else { List <LogTypeViewModel> LogList = new List <LogTypeViewModel>(); SaleEnquiryHeader header = new SaleEnquiryHeaderService(_unitOfWork).Find(svm.SaleEnquiryHeaderId); StringBuilder logstring = new StringBuilder(); int status = header.Status; SaleEnquiryLine temp1 = _SaleEnquiryLineService.Find(svm.SaleEnquiryLineId); SaleEnquiryLine ExRec = new SaleEnquiryLine(); ExRec = Mapper.Map <SaleEnquiryLine>(temp1); //End of Tracking the Modifications:: temp1.DueDate = svm.DueDate; temp1.ProductId = svm.ProductId; temp1.Specification = svm.Specification; temp1.Dimension1Id = svm.Dimension1Id; temp1.Dimension2Id = svm.Dimension2Id; temp1.Dimension3Id = svm.Dimension3Id; temp1.Dimension4Id = svm.Dimension4Id; temp1.Qty = svm.Qty; temp1.UnitId = svm.UnitId; temp1.DealQty = svm.DealQty ?? 0; temp1.DealUnitId = svm.DealUnitId; temp1.UnitConversionMultiplier = svm.UnitConversionMultiplier; temp1.Rate = svm.Rate ?? 0; temp1.Amount = svm.Amount ?? 0; temp1.Remark = svm.Remark; temp1.ModifiedDate = DateTime.Now; temp1.ModifiedBy = User.Identity.Name; _SaleEnquiryLineService.Update(temp1); SaleEnquiryLineExtended Extended = new SaleEnquiryLineExtendedService(_unitOfWork).Find(svm.SaleEnquiryLineId); Extended.BuyerSpecification = svm.BuyerSpecification; Extended.BuyerSpecification1 = svm.BuyerSpecification1; Extended.BuyerSpecification2 = svm.BuyerSpecification2; Extended.BuyerSpecification3 = svm.BuyerSpecification3; new SaleEnquiryLineExtendedService(_unitOfWork).Update(Extended); LogList.Add(new LogTypeViewModel { ExObj = ExRec, Obj = temp1, }); if (header.Status != (int)StatusConstants.Drafted && header.Status != (int)StatusConstants.Import) { header.Status = (int)StatusConstants.Modified; header.ModifiedBy = User.Identity.Name; header.ModifiedDate = DateTime.Now; new SaleEnquiryHeaderService(_unitOfWork).Update(header); } XElement Modifications = new ModificationsCheckService().CheckChanges(LogList); try { _unitOfWork.Save(); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXCL"] += message; PrepareViewBag(temp); return(PartialView("_Create", svm)); } //Saving the Activity Log LogActivity.LogActivityDetail(LogVm.Map(new ActiivtyLogViewModel { DocTypeId = temp.DocTypeId, DocId = temp1.SaleEnquiryHeaderId, DocLineId = temp1.SaleEnquiryLineId, ActivityType = (int)ActivityTypeContants.Modified, DocNo = temp.DocNo, xEModifications = Modifications, DocDate = temp.DocDate, DocStatus = temp.Status, })); //End of Saving the Activity Log return(Json(new { success = true })); } } //string messages = string.Join("; ", ModelState.Values // .SelectMany(x => x.Errors) // .Select(x => x.ErrorMessage)); //TempData["CSEXCL"] += messages; ViewBag.Status = temp.Status; PrepareViewBag(temp); return(PartialView("_Create", svm)); }