public ActionResult Create(ProcessSequenceLineViewModel svm, string Command) { ProcessSequenceLine s = Mapper.Map <ProcessSequenceLineViewModel, ProcessSequenceLine>(svm); ProcessSequenceHeader temp = new ProcessSequenceHeaderService(_unitOfWork).Find(s.ProcessSequenceHeaderId); if (ModelState.IsValid) { if (s.ProcessId == 0) { ViewBag.Status = temp.Status; PrepareViewBag(svm); return(View(svm).Danger("Please fill Qty")); } if (s.Sequence == 0) { ViewBag.Status = temp.Status; PrepareViewBag(svm); return(View(svm).Danger("Please fill Sequence")); } if (s.Days == 0) { ViewBag.Status = temp.Status; PrepareViewBag(svm); return(View(svm).Danger("Please fill Days")); } s.CreatedDate = DateTime.Now; s.ModifiedDate = DateTime.Now; s.CreatedBy = User.Identity.Name; s.ModifiedBy = User.Identity.Name; s.ObjectState = Model.ObjectState.Added; _ProcessSequenceLineService.Create(s); ProcessSequenceHeader header = new ProcessSequenceHeaderService(_unitOfWork).Find(s.ProcessSequenceHeaderId); if (header.Status != (int)StatusConstants.Drafted) { header.Status = (int)StatusConstants.Modified; new ProcessSequenceHeaderService(_unitOfWork).Update(header); } _unitOfWork.Save(); return(RedirectToAction("Create").Success("Data saved successfully")); } ViewBag.Status = temp.Status; PrepareViewBag(svm); return(View(svm)); }
public ActionResult _CreatePost(ProcessSequenceLineViewModel svm) { ProcessSequenceLine s = Mapper.Map <ProcessSequenceLineViewModel, ProcessSequenceLine>(svm); ProcessSequenceHeader temp = (from p in db.ProcessSequenceHeader where p.ProcessSequenceHeaderId == svm.ProcessSequenceHeaderId select p).FirstOrDefault(); ProductCollection PColl = new ProductCollectionService(_unitOfWork).Find(svm.RefDocId.Value); if (ModelState.IsValid) { if (svm.ProcessSequenceLineId <= 0) { if (temp == null) { int RefDocTypeId = new DocumentTypeService(_unitOfWork).Find(MasterDocTypeConstants.ProductCollection).DocumentTypeId; ProcessSequenceHeader Header = new ProcessSequenceHeader(); Header.ProcessSequenceHeaderName = PColl.ProductCollectionName + "-" + new DivisionService(_unitOfWork).Find((int)HttpContext.Session["DivisionId"]).DivisionName; Header.ReferenceDocTypeId = RefDocTypeId; Header.ReferenceDocId = PColl.ProductCollectionId; Header.CreatedBy = User.Identity.Name; Header.CreatedDate = DateTime.Now; Header.ModifiedBy = User.Identity.Name; Header.ModifiedDate = DateTime.Now; Header.ObjectState = Model.ObjectState.Added; new ProcessSequenceHeaderService(_unitOfWork).Create(Header); s.ProcessSequenceHeaderId = Header.ProcessSequenceHeaderId; } else { s.ProcessSequenceHeaderId = temp.ProcessSequenceHeaderId; } s.CreatedDate = DateTime.Now; s.ModifiedDate = DateTime.Now; s.CreatedBy = User.Identity.Name; s.ModifiedBy = User.Identity.Name; s.ObjectState = Model.ObjectState.Added; _ProcessSequenceLineService.Create(s); if (temp != null && temp.Status != (int)StatusConstants.Drafted) { temp.Status = (int)StatusConstants.Modified; new ProcessSequenceHeaderService(_unitOfWork).Update(temp); } try { _unitOfWork.Save(); } catch (Exception ex) { string message = _exception.HandleException(ex); ModelState.AddModelError("", message); return(PartialView("_Create", svm)); } LogActivity.LogActivityDetail(LogVm.Map(new ActiivtyLogViewModel { DocTypeId = new DocumentTypeService(_unitOfWork).FindByName(MasterDocTypeConstants.ProcessSequence).DocumentTypeId, DocId = s.ProcessSequenceHeaderId, DocLineId = s.ProcessSequenceLineId, ActivityType = (int)ActivityTypeContants.Added, })); return(RedirectToAction("_CreateForProductCollection", new { id = svm.RefDocId })); } else { List <LogTypeViewModel> LogList = new List <LogTypeViewModel>(); ProcessSequenceHeader header = new ProcessSequenceHeaderService(_unitOfWork).Find(svm.ProcessSequenceHeaderId); int status = header.Status; ProcessSequenceLine temp1 = _ProcessSequenceLineService.Find(svm.ProcessSequenceLineId); ProcessSequenceLine ExRec = Mapper.Map <ProcessSequenceLine>(temp1); temp1.ProcessId = svm.ProcessId; temp1.Sequence = svm.Sequence; temp1.ProductRateGroupId = svm.ProductRateGroupId; temp1.Days = svm.Days; temp1.ModifiedDate = DateTime.Now; temp1.ModifiedBy = User.Identity.Name; _ProcessSequenceLineService.Update(temp1); LogList.Add(new LogTypeViewModel { ExObj = ExRec, Obj = temp1, }); XElement Modifications = new ModificationsCheckService().CheckChanges(LogList); try { _unitOfWork.Save(); } catch (Exception ex) { string message = _exception.HandleException(ex); ModelState.AddModelError("", message); return(PartialView("_Create", svm)); } LogActivity.LogActivityDetail(LogVm.Map(new ActiivtyLogViewModel { DocTypeId = new DocumentTypeService(_unitOfWork).FindByName(MasterDocTypeConstants.ProcessSequence).DocumentTypeId, DocId = temp.ProcessSequenceHeaderId, DocLineId = temp1.ProcessSequenceLineId, ActivityType = (int)ActivityTypeContants.Modified, xEModifications = Modifications, })); return(Json(new { success = true })); } } PrepareViewBag(svm); return(PartialView("_Create", svm)); }