public ActionResult Reviewed(int Id, string IndexType, string UserRemark, string IsContinue) { SaleOrderHeader pd = new SaleOrderHeaderService(_unitOfWork).Find(Id); if (ModelState.IsValid) { pd.ReviewCount = (pd.ReviewCount ?? 0) + 1; pd.ReviewBy += User.Identity.Name + ", "; _SaleOrderHeaderService.Update(pd); _unitOfWork.Save(); LogActivity.LogActivityDetail(LogVm.Map(new ActiivtyLogViewModel { DocTypeId = pd.DocTypeId, DocId = pd.SaleOrderHeaderId, ActivityType = (int)ActivityTypeContants.Reviewed, UserRemark = UserRemark, DocNo = pd.DocNo, DocDate = pd.DocDate, DocStatus = pd.Status, })); return(RedirectToAction("Index", new { id = pd.DocTypeId, IndexType = IndexType }).Success("Record reviewed successfully.")); } return(RedirectToAction("Index", new { id = pd.DocTypeId, IndexType = IndexType }).Warning("Error in reviewing.")); }
public JsonResult GetUnitConversionDetailJson(int ProductId, string UnitId, string DeliveryUnitId, int HeaderId) { int UnitConversionForId = new SaleOrderHeaderService(_unitOfWork).Find(HeaderId).UnitConversionForId; UnitConversion uc = new UnitConversionService(_unitOfWork).GetUnitConversionForUCF(ProductId, UnitId, DeliveryUnitId, UnitConversionForId); List <SelectListItem> UnitConversionJson = new List <SelectListItem>(); if (uc != null) { UnitConversionJson.Add(new SelectListItem { Text = uc.Multiplier.ToString(), Value = uc.Multiplier.ToString() }); } else { UnitConversionJson.Add(new SelectListItem { Text = "0", Value = "0" }); } return(Json(UnitConversionJson)); }
public ActionResult Submitted(int Id, string IndexType, string UserRemark, string IsContinue) { SaleOrderHeader pd = new SaleOrderHeaderService(_unitOfWork).Find(Id); if (ModelState.IsValid) { if (User.Identity.Name == pd.ModifiedBy || UserRoles.Contains("Admin")) { int ActivityType; pd.ReviewBy = null; pd.Status = (int)StatusConstants.Submitted; ActivityType = (int)ActivityTypeContants.Submitted; int LedgerHeaderId = 0; LedgerHeaderId = LedgerPost(pd); pd.LedgerHeaderId = LedgerHeaderId; _SaleOrderHeaderService.Update(pd); _unitOfWork.Save(); LogActivity.LogActivityDetail(LogVm.Map(new ActiivtyLogViewModel { DocTypeId = pd.DocTypeId, DocId = pd.SaleOrderHeaderId, ActivityType = ActivityType, UserRemark = UserRemark, DocNo = pd.DocNo, DocDate = pd.DocDate, DocStatus = pd.Status, })); //SendEmail_PODrafted(Id); if (pd.Status == (int)StatusConstants.Submitted) { SaleOrderEmailContents.SendSaleOrderSubmitEmail(Id); } //else if (pd.Status == (int)StatusConstants.ModificationSubmitted) // SaleOrderEmailContents.SendSaleOrderModifiedEmail(Id, UserRemark); return(RedirectToAction("Index", new { id = pd.DocTypeId, IndexType = IndexType }).Success("Record Submitted successfully.")); } else { return(RedirectToAction("Index", new { id = pd.DocTypeId, IndexType = IndexType }).Warning("Record can be submitted by user " + pd.ModifiedBy + " only.")); } } return(View()); }
private ActionResult _Modify(int id) { SaleOrderLine temp = _SaleOrderLineService.GetSaleOrderLine(id); if (temp == null) { return(HttpNotFound()); } #region DocTypeTimeLineValidation try { TimePlanValidation = DocumentValidation.ValidateDocumentLine(new DocumentUniqueId { LockReason = temp.LockReason }, User.Identity.Name, out ExceptionMsg, out Continue); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXCL"] += message; TimePlanValidation = false; } if (!TimePlanValidation) { TempData["CSEXCL"] += ExceptionMsg; } #endregion if ((TimePlanValidation || Continue)) { ViewBag.LineMode = "Edit"; } SaleOrderHeader H = new SaleOrderHeaderService(_unitOfWork).GetSaleOrderHeader(temp.SaleOrderHeaderId); ViewBag.DocNo = H.DocNo; SaleOrderLineViewModel s = Mapper.Map <SaleOrderLine, SaleOrderLineViewModel>(temp); string BuyerSku = (_SaleOrderLineService.GetBuyerSKU(temp.ProductId, temp.SaleOrderHeaderId)); s.BuyerSku = BuyerSku; var settings = new SaleOrderSettingsService(_unitOfWork).GetSaleOrderSettings(H.DocTypeId, H.DivisionId, H.SiteId); s.SaleOrderSettings = Mapper.Map <SaleOrderSettings, SaleOrderSettingsViewModel>(settings); s.DocumentTypeSettings = new DocumentTypeSettingsService(_unitOfWork).GetDocumentTypeSettingsForDocument(H.DocTypeId); s.UnitId = new ProductService(_unitOfWork).Find(temp.ProductId).UnitId; PrepareViewBag(H); return(PartialView("_Create", s)); }
public ActionResult _Create(int Id) //Id ==>Sale Order Header Id { SaleOrderHeader H = new SaleOrderHeaderService(_unitOfWork).GetSaleOrderHeader(Id); SaleOrderLineViewModel s = new SaleOrderLineViewModel(); s.SaleOrderHeaderId = H.SaleOrderHeaderId; ViewBag.DocNo = H.DocNo; ViewBag.Status = H.Status; ViewBag.LineMode = "Create"; var settings = new SaleOrderSettingsService(_unitOfWork).GetSaleOrderSettings(H.DocTypeId, H.DivisionId, H.SiteId); s.SaleOrderSettings = Mapper.Map <SaleOrderSettings, SaleOrderSettingsViewModel>(settings); s.DocumentTypeSettings = new DocumentTypeSettingsService(_unitOfWork).GetDocumentTypeSettingsForDocument(H.DocTypeId); PrepareViewBag(H); return(PartialView("_Create", s)); }
private ActionResult _Detail(int id) { SaleOrderLine temp = _SaleOrderLineService.GetSaleOrderLine(id); if (temp == null) { return(HttpNotFound()); } SaleOrderHeader H = new SaleOrderHeaderService(_unitOfWork).GetSaleOrderHeader(temp.SaleOrderHeaderId); ViewBag.DocNo = H.DocNo; SaleOrderLineViewModel s = Mapper.Map <SaleOrderLine, SaleOrderLineViewModel>(temp); s.UnitId = new ProductService(_unitOfWork).Find(temp.ProductId).UnitId; PrepareViewBag(H); return(PartialView("_Create", s)); }
public ActionResult _CreatePost(SaleOrderLineViewModel svm) { SaleOrderLine s = Mapper.Map <SaleOrderLineViewModel, SaleOrderLine>(svm); SaleOrderHeader temp = new SaleOrderHeaderService(_unitOfWork).Find(s.SaleOrderHeaderId); //if (Command == "Submit" && (s.ProductId == 0)) // return RedirectToAction("Submit", "SaleOrderHeader", new { id = s.SaleOrderHeaderId }).Success("Data saved successfully"); var settings = new SaleOrderSettingsService(_unitOfWork).GetSaleOrderSettingsForDocument(temp.DocTypeId, temp.DivisionId, temp.SiteId); if (svm.Qty <= 0) { ModelState.AddModelError("Qty", "Please Check Qty"); } else if (svm.Rate <= 0 && settings.isMandatoryRate == true) { ModelState.AddModelError("Rate", "Please Check Rate"); } else if (svm.Amount <= 0 && settings.isMandatoryRate == true) { ModelState.AddModelError("Amount", "Please Check Amount"); } if (svm.DueDate < temp.DocDate) { ModelState.AddModelError("DueDate", "DueDate greater than DocDate"); } if (svm.SaleOrderLineId <= 0) { ViewBag.LineMode = "Create"; } else { ViewBag.LineMode = "Edit"; } if (ModelState.IsValid) { if (svm.SaleOrderLineId <= 0) { StockViewModel StockViewModel = new StockViewModel(); //Posting in Stock if (settings.isPostedInStock.HasValue && settings.isPostedInStock == true) { StockViewModel.StockHeaderId = temp.StockHeaderId ?? 0; StockViewModel.DocHeaderId = temp.SaleOrderHeaderId; StockViewModel.DocLineId = s.SaleOrderLineId; StockViewModel.DocTypeId = temp.DocTypeId; StockViewModel.StockHeaderDocDate = temp.DocDate; StockViewModel.StockDocDate = temp.DocDate; StockViewModel.DocNo = temp.DocNo; StockViewModel.DivisionId = temp.DivisionId; StockViewModel.SiteId = temp.SiteId; StockViewModel.CurrencyId = null; StockViewModel.HeaderProcessId = null; StockViewModel.PersonId = temp.SaleToBuyerId; StockViewModel.ProductId = s.ProductId; StockViewModel.HeaderFromGodownId = null; StockViewModel.HeaderGodownId = null; StockViewModel.GodownId = temp.GodownId ?? 0; StockViewModel.ProcessId = null; StockViewModel.LotNo = null; StockViewModel.CostCenterId = null; StockViewModel.Qty_Iss = 0; StockViewModel.Qty_Rec = s.Qty; StockViewModel.Rate = s.Rate; StockViewModel.ExpiryDate = null; StockViewModel.Specification = s.Specification; StockViewModel.Dimension1Id = s.Dimension1Id; StockViewModel.Dimension2Id = s.Dimension2Id; StockViewModel.Dimension3Id = s.Dimension3Id; StockViewModel.Dimension4Id = s.Dimension4Id; StockViewModel.Remark = s.Remark; StockViewModel.ProductUidId = null; StockViewModel.Status = temp.Status; StockViewModel.CreatedBy = temp.CreatedBy; StockViewModel.CreatedDate = DateTime.Now; StockViewModel.ModifiedBy = temp.ModifiedBy; StockViewModel.ModifiedDate = DateTime.Now; string StockPostingError = ""; StockPostingError = new StockService(_unitOfWork).StockPost(ref StockViewModel); if (StockPostingError != "") { ModelState.AddModelError("", StockPostingError); return(PartialView("_Create", svm)); } s.StockId = StockViewModel.StockId; if (temp.StockHeaderId == null) { temp.StockHeaderId = StockViewModel.StockHeaderId; } } s.CreatedDate = DateTime.Now; s.ModifiedDate = DateTime.Now; s.CreatedBy = User.Identity.Name; s.ModifiedBy = User.Identity.Name; s.ObjectState = Model.ObjectState.Added; _SaleOrderLineService.Create(s); new SaleOrderLineStatusService(_unitOfWork).CreateLineStatus(s.SaleOrderLineId); SaleOrderHeader header = new SaleOrderHeaderService(_unitOfWork).Find(s.SaleOrderHeaderId); if (temp.StockHeaderId != null && temp.StockHeaderId != 0) { header.StockHeaderId = temp.StockHeaderId; } 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 SaleOrderHeaderService(_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.SaleOrderHeaderId, DocLineId = s.SaleOrderLineId, ActivityType = (int)ActivityTypeContants.Added, DocNo = header.DocNo, DocDate = header.DocDate, DocStatus = header.Status, })); return(RedirectToAction("_Create", new { id = s.SaleOrderHeaderId })); } else { List <LogTypeViewModel> LogList = new List <LogTypeViewModel>(); SaleOrderHeader header = new SaleOrderHeaderService(_unitOfWork).Find(svm.SaleOrderHeaderId); StringBuilder logstring = new StringBuilder(); int status = header.Status; SaleOrderLine temp1 = _SaleOrderLineService.Find(svm.SaleOrderLineId); SaleOrderLine ExRec = new SaleOrderLine(); ExRec = Mapper.Map <SaleOrderLine>(temp1); //End of Tracking the Modifications:: if (temp1.StockId != null) { StockViewModel StockViewModel = new StockViewModel(); StockViewModel.StockHeaderId = temp.StockHeaderId ?? 0; StockViewModel.StockId = temp1.StockId ?? 0; StockViewModel.DocHeaderId = temp1.SaleOrderHeaderId; StockViewModel.DocLineId = temp1.SaleOrderLineId; StockViewModel.DocTypeId = temp.DocTypeId; StockViewModel.StockHeaderDocDate = temp.DocDate; StockViewModel.StockDocDate = temp.DocDate; StockViewModel.DocNo = temp.DocNo; StockViewModel.DivisionId = temp.DivisionId; StockViewModel.SiteId = temp.SiteId; StockViewModel.CurrencyId = null; StockViewModel.HeaderProcessId = null; StockViewModel.PersonId = temp.SaleToBuyerId; StockViewModel.ProductId = s.ProductId; StockViewModel.HeaderFromGodownId = null; StockViewModel.HeaderGodownId = temp.GodownId; StockViewModel.GodownId = temp.GodownId ?? 0; StockViewModel.ProcessId = null; StockViewModel.LotNo = null; StockViewModel.CostCenterId = null; StockViewModel.Qty_Iss = 0; StockViewModel.Qty_Rec = s.Qty; StockViewModel.Rate = temp1.Rate; StockViewModel.ExpiryDate = null; StockViewModel.Specification = temp1.Specification; StockViewModel.Dimension1Id = temp1.Dimension1Id; StockViewModel.Dimension2Id = temp1.Dimension2Id; StockViewModel.Dimension3Id = temp1.Dimension3Id; StockViewModel.Dimension4Id = temp1.Dimension4Id; StockViewModel.Remark = s.Remark; StockViewModel.ProductUidId = null; StockViewModel.Status = temp.Status; StockViewModel.CreatedBy = temp1.CreatedBy; StockViewModel.CreatedDate = temp1.CreatedDate; StockViewModel.ModifiedBy = User.Identity.Name; StockViewModel.ModifiedDate = DateTime.Now; string StockPostingError = ""; StockPostingError = new StockService(_unitOfWork).StockPost(ref StockViewModel); if (StockPostingError != "") { ModelState.AddModelError("", StockPostingError); return(PartialView("_Create", svm)); } } temp1.DueDate = svm.DueDate; temp1.ProductId = svm.ProductId ?? 0; temp1.Specification = svm.Specification; temp1.Dimension1Id = svm.Dimension1Id; temp1.Dimension2Id = svm.Dimension2Id; temp1.Dimension3Id = svm.Dimension3Id; temp1.Dimension4Id = svm.Dimension4Id; temp1.Qty = svm.Qty ?? 0; 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; _SaleOrderLineService.Update(temp1); 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 SaleOrderHeaderService(_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.SaleOrderHeaderId, DocLineId = temp1.SaleOrderLineId, 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 })); } } ViewBag.Status = temp.Status; PrepareViewBag(temp); return(PartialView("_Create", svm)); }
public ActionResult DeletePost(SaleOrderLineViewModel vm) { List <LogTypeViewModel> LogList = new List <LogTypeViewModel>(); SaleOrderLine SaleOrderLine = _SaleOrderLineService.Find(vm.SaleOrderLineId); int?StockId = 0; StockId = SaleOrderLine.StockId; if (StockId != null) { new StockService(_unitOfWork).DeleteStock((int)StockId); } if (SaleOrderLine.ReferenceDocLineId != null && SaleOrderLine.ReferenceDocLineId != 0 && SaleOrderLine.ReferenceDocTypeId != null && SaleOrderLine.ReferenceDocTypeId != 0) { var temp = (from L in db.SaleEnquiryLine join H in db.SaleEnquiryHeader on L.SaleEnquiryHeaderId equals H.SaleEnquiryHeaderId into SaleEnquiryHeaderTable from SaleEnquiryHeaderTab in SaleEnquiryHeaderTable.DefaultIfEmpty() where SaleEnquiryHeaderTab.DocTypeId == SaleOrderLine.ReferenceDocTypeId && L.SaleEnquiryLineId == SaleOrderLine.ReferenceDocLineId select L).FirstOrDefault(); if (temp != null) { SaleEnquiryLine SaleEnquiryLine = new SaleEnquiryLineService(_unitOfWork).Find(temp.SaleEnquiryLineId); SaleEnquiryLine.LockReason = null; new SaleEnquiryLineService(_unitOfWork).Update(SaleEnquiryLine); } } new SaleOrderLineStatusService(_unitOfWork).Delete(vm.SaleOrderLineId); _SaleOrderLineService.Delete(vm.SaleOrderLineId); SaleOrderHeader header = new SaleOrderHeaderService(_unitOfWork).Find(SaleOrderLine.SaleOrderHeaderId); 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 SaleOrderHeaderService(_unitOfWork).Update(header); } LogList.Add(new LogTypeViewModel { Obj = SaleOrderLine, }); XElement Modifications = new ModificationsCheckService().CheckChanges(LogList); try { _unitOfWork.Save(); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXCL"] += message; ViewBag.Docno = header.DocNo; ViewBag.DeliveryUnitList = new UnitService(_unitOfWork).GetUnitList().ToList(); return(PartialView("_Create", vm)); } LogActivity.LogActivityDetail(LogVm.Map(new ActiivtyLogViewModel { DocTypeId = header.DocTypeId, DocId = header.SaleOrderHeaderId, DocLineId = SaleOrderLine.SaleOrderLineId, ActivityType = (int)ActivityTypeContants.Deleted, DocNo = header.DocNo, xEModifications = Modifications, DocDate = header.DocDate, DocStatus = header.Status, })); return(Json(new { success = true })); }
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 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)); }