// GET: /ExcessMaterialSettingsMaster/Create public ActionResult Create(int id)//DocTypeId { if (!UserRoles.Contains("SysAdmin")) { return(View("~/Views/Shared/InValidSettings.cshtml")); } var DivisionId = (int)System.Web.HttpContext.Current.Session["DivisionId"]; var SiteId = (int)System.Web.HttpContext.Current.Session["SiteId"]; PrepareViewBag(); var settings = new ExcessMaterialSettingsService(_unitOfWork, db).GetExcessMaterialSettingsForDocument(id, DivisionId, SiteId); if (settings == null) { ExcessMaterialSettingsViewModel vm = new ExcessMaterialSettingsViewModel(); vm.DocTypeName = new DocumentTypeService(_unitOfWork).Find(id).DocumentTypeName; vm.SiteId = SiteId; vm.DivisionId = DivisionId; vm.DocTypeId = id; return(View("Create", vm)); } else { ExcessMaterialSettingsViewModel temp = AutoMapper.Mapper.Map <ExcessMaterialSettings, ExcessMaterialSettingsViewModel>(settings); temp.DocTypeName = new DocumentTypeService(_unitOfWork).Find(id).DocumentTypeName; return(View("Create", temp)); } }
public ActionResult Post(ExcessMaterialSettingsViewModel vm) { ExcessMaterialSettings pt = AutoMapper.Mapper.Map <ExcessMaterialSettingsViewModel, ExcessMaterialSettings>(vm); if (ModelState.IsValid) { if (vm.ExcessMaterialSettingsId <= 0) { pt.CreatedDate = DateTime.Now; pt.ModifiedDate = DateTime.Now; pt.CreatedBy = User.Identity.Name; pt.ModifiedBy = User.Identity.Name; pt.ObjectState = Model.ObjectState.Added; _ExcessMaterialSettingsService.Create(pt); try { _unitOfWork.Save(); } catch (Exception ex) { string message = _exception.HandleException(ex); ModelState.AddModelError("", message); PrepareViewBag(); return(View("Create", vm)); } LogActivity.LogActivityDetail(LogVm.Map(new ActiivtyLogViewModel { DocTypeId = pt.DocTypeId, DocId = pt.ExcessMaterialSettingsId, ActivityType = (int)ActivityTypeContants.SettingsAdded, })); return(RedirectToAction("Index", "ExcessMaterialHeader", new { id = vm.DocTypeId }).Success("Data saved successfully")); } else { List <LogTypeViewModel> LogList = new List <LogTypeViewModel>(); ExcessMaterialSettings temp = _ExcessMaterialSettingsService.Find(pt.ExcessMaterialSettingsId); ExcessMaterialSettings ExRec = Mapper.Map <ExcessMaterialSettings>(temp); temp.filterContraDocTypes = pt.filterContraDocTypes; temp.ProcessId = pt.ProcessId; temp.filterProductGroups = pt.filterProductGroups; temp.filterProducts = pt.filterProducts; temp.filterProductTypes = pt.filterProductTypes; temp.isMandatoryProcessLine = pt.isMandatoryProcessLine; temp.filterContraDivisions = pt.filterContraDivisions; temp.filterContraSites = pt.filterContraSites; temp.isVisibleDimension1 = pt.isVisibleDimension1; temp.isVisibleDimension2 = pt.isVisibleDimension2; temp.isVisibleDimension3 = pt.isVisibleDimension3; temp.isVisibleDimension4 = pt.isVisibleDimension4; temp.isVisibleLotNo = pt.isVisibleLotNo; temp.isVisibleProductUID = pt.isVisibleProductUID; temp.SqlProcDocumentPrint = pt.SqlProcDocumentPrint; temp.ModifiedDate = DateTime.Now; temp.ModifiedBy = User.Identity.Name; temp.ObjectState = Model.ObjectState.Modified; _ExcessMaterialSettingsService.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); PrepareViewBag(); return(View("Create", pt)); } LogActivity.LogActivityDetail(LogVm.Map(new ActiivtyLogViewModel { DocTypeId = temp.DocTypeId, DocId = temp.ExcessMaterialSettingsId, ActivityType = (int)ActivityTypeContants.SettingsModified, xEModifications = Modifications, })); return(RedirectToAction("Index", "ExcessMaterialHeader", new { id = vm.DocTypeId }).Success("Data saved successfully")); } } PrepareViewBag(); return(View("Create", vm)); }