public ActionResult CreatePost(PackingHeaderViewModel vm) { #region DocTypeTimeLineValidation try { if (vm.PackingHeaderId <= 0) { TimePlanValidation = DocumentValidation.ValidateDocument(Mapper.Map <DocumentUniqueId>(vm), DocumentTimePlanTypeConstants.Create, User.Identity.Name, out ExceptionMsg, out Continue); } else { TimePlanValidation = DocumentValidation.ValidateDocument(Mapper.Map <DocumentUniqueId>(vm), DocumentTimePlanTypeConstants.Modify, User.Identity.Name, out ExceptionMsg, out Continue); } } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; TimePlanValidation = false; } if (!TimePlanValidation) { TempData["CSEXC"] += ExceptionMsg; } #endregion if (ModelState.IsValid && (TimePlanValidation || Continue)) { #region CreateRecord if (vm.PackingHeaderId == 0) { PackingHeader Packingheader = Mapper.Map <PackingHeaderViewModel, PackingHeader>(vm); Packingheader.BuyerId = vm.BuyerId; Packingheader.CreatedBy = User.Identity.Name; Packingheader.ModifiedBy = User.Identity.Name; Packingheader.CreatedDate = DateTime.Now; Packingheader.ModifiedDate = DateTime.Now; Packingheader.ObjectState = Model.ObjectState.Added; _PackingHeaderService.Create(Packingheader); try { _unitOfWork.Save(); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; PrepareViewBag(vm.DocTypeId); ViewBag.Mode = "Add"; return(View("Create", vm)); } LogActivity.LogActivityDetail(LogVm.Map(new ActiivtyLogViewModel { DocTypeId = Packingheader.DocTypeId, DocId = Packingheader.PackingHeaderId, ActivityType = (int)ActivityTypeContants.Added, DocNo = Packingheader.DocNo, DocDate = Packingheader.DocDate, DocStatus = Packingheader.Status, })); return(RedirectToAction("Modify", new { id = Packingheader.PackingHeaderId }).Success("Data saved Successfully")); } #endregion #region EditRecord else { List <LogTypeViewModel> LogList = new List <LogTypeViewModel>(); PackingHeader Packingheader = _PackingHeaderService.Find(vm.PackingHeaderId); PackingHeader ExRec = Mapper.Map <PackingHeader>(Packingheader); StockHeader StockHeader = new StockHeaderService(_unitOfWork).Find(Packingheader.StockHeaderId ?? 0); int status = Packingheader.Status; if (Packingheader.Status != (int)StatusConstants.Drafted) { Packingheader.Status = (int)StatusConstants.Modified; } Packingheader.DocNo = vm.DocNo; Packingheader.DocDate = vm.DocDate; Packingheader.BuyerId = vm.BuyerId; Packingheader.GodownId = vm.GodownId; Packingheader.Remark = vm.Remark; Packingheader.ModifiedDate = DateTime.Now; Packingheader.ModifiedBy = User.Identity.Name; _PackingHeaderService.Update(Packingheader); if (StockHeader != null) { StockHeader.DocDate = vm.DocDate; StockHeader.PersonId = vm.BuyerId; StockHeader.GodownId = vm.GodownId; StockHeader.Remark = vm.Remark; StockHeader.ModifiedDate = DateTime.Now; StockHeader.ModifiedBy = User.Identity.Name; new StockHeaderService(_unitOfWork).Update(StockHeader); } LogList.Add(new LogTypeViewModel { ExObj = ExRec, Obj = Packingheader, }); XElement Modifications = new ModificationsCheckService().CheckChanges(LogList); try { _unitOfWork.Save(); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; PrepareViewBag(vm.DocTypeId); ViewBag.Mode = "Edit"; return(View("Create", vm)); } LogActivity.LogActivityDetail(LogVm.Map(new ActiivtyLogViewModel { DocTypeId = Packingheader.DocTypeId, DocId = Packingheader.PackingHeaderId, ActivityType = (int)ActivityTypeContants.Modified, DocNo = Packingheader.DocNo, xEModifications = Modifications, DocDate = Packingheader.DocDate, DocStatus = Packingheader.Status, })); return(RedirectToAction("Index", new { id = vm.DocTypeId }).Success("Data saved successfully")); } #endregion } PrepareViewBag(vm.DocTypeId); ViewBag.Mode = "Add"; return(View("Create", vm)); }
public ActionResult Create(PackingHeaderViewModel svm) { string DataValidationMsg = DataValidation(svm); if (DataValidationMsg != "") { PrepareViewBag(svm); return(View(svm).Danger(DataValidationMsg)); } #region DocTypeTimeLineValidation try { if (svm.PackingHeaderId <= 0) { TimePlanValidation = DocumentValidation.ValidateDocument(Mapper.Map <DocumentUniqueId>(svm), DocumentTimePlanTypeConstants.Create, User.Identity.Name, out ExceptionMsg, out Continue); } else { TimePlanValidation = DocumentValidation.ValidateDocument(Mapper.Map <DocumentUniqueId>(svm), DocumentTimePlanTypeConstants.Modify, User.Identity.Name, out ExceptionMsg, out Continue); } } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; TimePlanValidation = false; } if (!TimePlanValidation) { TempData["CSEXC"] += ExceptionMsg; } #endregion if (ModelState.IsValid && (TimePlanValidation || Continue)) { #region CreateRecord if (svm.PackingHeaderId == 0) { PackingHeader packingheader = Mapper.Map <PackingHeaderViewModel, PackingHeader>(svm); packingheader.CreatedDate = DateTime.Now; packingheader.ModifiedDate = DateTime.Now; packingheader.CreatedBy = User.Identity.Name; packingheader.ModifiedBy = User.Identity.Name; packingheader.Status = (int)StatusConstants.Drafted; _PackingHeaderService.Create(packingheader); try { _unitOfWork.Save(); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; PrepareViewBag(svm); ViewBag.Mode = "Add"; return(View("Create", svm)); } LogActivity.LogActivityDetail(LogVm.Map(new ActiivtyLogViewModel { DocTypeId = packingheader.DocTypeId, DocId = packingheader.PackingHeaderId, ActivityType = (int)ActivityTypeContants.Added, DocNo = packingheader.DocNo, DocDate = packingheader.DocDate, DocStatus = packingheader.Status, })); return(RedirectToAction("Modify", new { id = packingheader.PackingHeaderId }).Success("Data saved Successfully")); } #endregion #region EditRecord else { List <LogTypeViewModel> LogList = new List <LogTypeViewModel>(); PackingHeader packingheader = new PackingHeaderService(_unitOfWork).Find(svm.PackingHeaderId); PackingHeader ExRec = new PackingHeader(); ExRec = Mapper.Map <PackingHeader>(packingheader); StringBuilder logstring = new StringBuilder(); int status = packingheader.Status; if (packingheader.Status != (int)StatusConstants.Drafted) { packingheader.Status = (int)StatusConstants.Modified; } packingheader.DocNo = svm.DocNo; packingheader.DocDate = svm.DocDate; packingheader.BuyerId = svm.BuyerId; packingheader.GodownId = svm.GodownId; packingheader.DealUnitId = svm.DealUnitId; packingheader.Remark = svm.Remark; packingheader.JobWorkerId = svm.JobWorkerId; packingheader.BaleNoPattern = svm.BaleNoPattern; packingheader.ShipMethodId = svm.ShipMethodId; packingheader.ModifiedDate = DateTime.Now; packingheader.ModifiedBy = User.Identity.Name; _PackingHeaderService.Update(packingheader); LogList.Add(new LogTypeViewModel { ExObj = ExRec, Obj = packingheader, }); if (packingheader.StockHeaderId != null) { StockHeaderViewModel S = new StockHeaderViewModel(); S.StockHeaderId = (int)packingheader.StockHeaderId; S.DocTypeId = packingheader.DocTypeId; S.DocDate = packingheader.DocDate; S.DocNo = packingheader.DocNo; S.DivisionId = packingheader.DivisionId; S.SiteId = packingheader.SiteId; S.PersonId = packingheader.JobWorkerId; S.GodownId = packingheader.GodownId; S.Remark = packingheader.Remark; S.Status = packingheader.Status; S.ModifiedBy = packingheader.ModifiedBy; S.ModifiedDate = packingheader.ModifiedDate; new StockHeaderService(_unitOfWork).UpdateStockHeader(S); } XElement Modifications = new ModificationsCheckService().CheckChanges(LogList); try { _unitOfWork.Save(); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; ViewBag.Mode = "Edit"; return(View("Create", svm)); } LogActivity.LogActivityDetail(LogVm.Map(new ActiivtyLogViewModel { DocTypeId = packingheader.DocTypeId, DocId = packingheader.PackingHeaderId, ActivityType = (int)ActivityTypeContants.Modified, DocNo = packingheader.DocNo, xEModifications = Modifications, DocDate = packingheader.DocDate, DocStatus = packingheader.Status, })); return(RedirectToAction("Index").Success("Data saved successfully")); } #endregion } PrepareViewBag(svm); ViewBag.Mode = "Add"; return(View("Create", svm)); }