public ActionResult Submit(int id, string IndexType, string TransactionType) { #region DocTypeTimeLineValidation ExcessMaterialHeader s = context.ExcessMaterialHeader.Find(id); try { TimePlanValidation = DocumentValidation.ValidateDocument(Mapper.Map <DocumentUniqueId>(s), DocumentTimePlanTypeConstants.Submit, User.Identity.Name, out ExceptionMsg, out Continue); TempData["CSEXC"] += ExceptionMsg; } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; TimePlanValidation = false; } if (!TimePlanValidation && !Continue) { return(RedirectToAction("Index", new { id = s.DocTypeId, IndexType = IndexType })); } #endregion return(RedirectToAction("Detail", new { id = id, IndexType = IndexType, transactionType = string.IsNullOrEmpty(TransactionType) ? "submit" : TransactionType })); }
public ActionResult Print(int id) { ExcessMaterialHeader s = _ExcessMaterialHeaderService.Find(id); var settings = new ExcessMaterialSettingsService(_unitOfWork, context).GetExcessMaterialSettingsForDocument(s.DocTypeId, s.DivisionId, s.SiteId); String query = settings.SqlProcDocumentPrint; return(Redirect((string)System.Configuration.ConfigurationManager.AppSettings["JobsDomain"] + "/Report_DocumentPrint/DocumentPrint/?DocumentId=" + id + "&queryString=" + query)); }
public void Delete(int id, ApplicationDbContext Context) { //_unitOfWork.Repository<ExcessMaterialHeader>().Delete(id); ExcessMaterialHeader ExcessMaterialheader = (from H in db.ExcessMaterialHeader where H.ExcessMaterialHeaderId == id select H).FirstOrDefault(); ExcessMaterialheader.ObjectState = Model.ObjectState.Deleted; db.ExcessMaterialHeader.Attach(ExcessMaterialheader); db.ExcessMaterialHeader.Remove(ExcessMaterialheader); }
public ActionResult DeleteAfter_Submit(int id) { ExcessMaterialHeader header = _ExcessMaterialHeaderService.Find(id); if (header.Status == (int)StatusConstants.Submitted || header.Status == (int)StatusConstants.Modified) { return(Remove(id)); } else { return(HttpNotFound()); } }
public ActionResult Delete(int id) { ExcessMaterialHeader header = _ExcessMaterialHeaderService.Find(id); if (header.Status == (int)StatusConstants.Drafted || header.Status == (int)StatusConstants.Import) { return(Remove(id)); } else { return(HttpNotFound()); } }
public ActionResult ModifyAfter_Submit(int id, string IndexType) { ExcessMaterialHeader header = _ExcessMaterialHeaderService.Find(id); if (header.Status == (int)StatusConstants.Submitted || header.Status == (int)StatusConstants.Modified) { return(Edit(id, IndexType)); } else { return(HttpNotFound()); } }
public void UpdateExcessMaterialHeader(ExcessMaterialHeaderViewModel S) { ExcessMaterialHeader ExcessMaterialHeader = Find(S.ExcessMaterialHeaderId); ExcessMaterialHeader.DocTypeId = S.DocTypeId; ExcessMaterialHeader.DocDate = S.DocDate; ExcessMaterialHeader.DocNo = S.DocNo; ExcessMaterialHeader.DivisionId = S.DivisionId; ExcessMaterialHeader.SiteId = S.SiteId; ExcessMaterialHeader.CurrencyId = S.CurrencyId; ExcessMaterialHeader.PersonId = S.PersonId; ExcessMaterialHeader.ProcessId = S.ProcessId; ExcessMaterialHeader.GodownId = S.GodownId; ExcessMaterialHeader.Remark = S.Remark; ExcessMaterialHeader.Status = S.Status; ExcessMaterialHeader.ModifiedBy = S.ModifiedBy; ExcessMaterialHeader.ModifiedDate = S.ModifiedDate; Update(ExcessMaterialHeader); }
private ActionResult Remove(int id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ExcessMaterialHeader ExcessMaterialHeader = _ExcessMaterialHeaderService.Find(id); if (ExcessMaterialHeader == null) { return(HttpNotFound()); } #region DocTypeTimeLineValidation try { TimePlanValidation = DocumentValidation.ValidateDocument(Mapper.Map <DocumentUniqueId>(ExcessMaterialHeader), DocumentTimePlanTypeConstants.Delete, User.Identity.Name, out ExceptionMsg, out Continue); TempData["CSEXC"] += ExceptionMsg; } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; TimePlanValidation = false; } if (!TimePlanValidation && !Continue) { return(PartialView("AjaxError")); } #endregion ReasonViewModel rvm = new ReasonViewModel() { id = id, }; return(PartialView("_Reason", rvm)); }
public ActionResult Delete(ReasonViewModel vm) { bool BeforeSave = true; try { BeforeSave = ExcessMaterialDocEvents.beforeHeaderDeleteEvent(this, new StockEventArgs(vm.id), ref context); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; EventException = true; } if (!BeforeSave) { TempData["CSEXC"] += "Failed validation before delete"; } ExcessMaterialHeader ExcessMaterialHeader = (from p in context.ExcessMaterialHeader where p.ExcessMaterialHeaderId == vm.id select p).FirstOrDefault(); if (ModelState.IsValid && BeforeSave && !EventException) { List <LogTypeViewModel> LogList = new List <LogTypeViewModel>(); try { ExcessMaterialDocEvents.onHeaderDeleteEvent(this, new StockEventArgs(vm.id), ref context); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; EventException = true; } ExcessMaterialHeader ExRec = new ExcessMaterialHeader(); ExRec = Mapper.Map <ExcessMaterialHeader>(ExcessMaterialHeader); ExcessMaterialHeader Rec = new ExcessMaterialHeader(); LogList.Add(new LogTypeViewModel { ExObj = ExRec, Obj = Rec, }); //Then find all the Purchase Order Header Line associated with the above ProductType. //var ExcessMaterialLine = new ExcessMaterialLineService(_unitOfWork).GetExcessMaterialLineforDelete(vm.id); var ExcessMaterialLine = (from p in context.ExcessMaterialLine where p.ExcessMaterialHeaderId == vm.id select p).ToList(); //var ProductUids = ExcessMaterialLine.Select(m => m.ProductUidId).ToArray(); //var ProdUidRecords = (from p in context.ProductUid // where ProductUids.Contains(p.ProductUIDId) // select p).ToList(); //new RequisitionLineStatusService(_unitOfWork).DeleteRequisitionQtyOnIssueMultiple(ExcessMaterialHeader.ExcessMaterialHeaderId, ref context); //Mark ObjectState.Delete to all the Purchase Order Lines. foreach (var item in ExcessMaterialLine) { ExcessMaterialLine ExRecLine = new ExcessMaterialLine(); ExRecLine = Mapper.Map <ExcessMaterialLine>(item); ExcessMaterialLine RecLine = new ExcessMaterialLine(); LogList.Add(new LogTypeViewModel { ExObj = ExRecLine, Obj = RecLine, }); //if (item.ProductUidId != null && item.ProductUidId > 0) //{ // ProductUidDetail ProductUidDetail = new ProductUidService(_unitOfWork).FGetProductUidLastValues((int)item.ProductUidId, "ExcessMaterial Head-" + ExcessMaterialHeader.ExcessMaterialHeaderId.ToString()); // ProductUid ProductUid = ProdUidRecords.Where(m => m.ProductUIDId == item.ProductUidId).FirstOrDefault(); // ProductUid.LastTransactionDocDate = ProductUidDetail.LastTransactionDocDate; // ProductUid.LastTransactionDocId = ProductUidDetail.LastTransactionDocId; // ProductUid.LastTransactionDocNo = ProductUidDetail.LastTransactionDocNo; // ProductUid.LastTransactionDocTypeId = ProductUidDetail.LastTransactionDocTypeId; // ProductUid.LastTransactionPersonId = ProductUidDetail.LastTransactionPersonId; // ProductUid.CurrenctGodownId = ProductUidDetail.CurrenctGodownId; // ProductUid.CurrenctProcessId = ProductUidDetail.CurrenctProcessId; // ProductUid.ObjectState = Model.ObjectState.Modified; // context.ProductUid.Add(ProductUid); //} item.ObjectState = Model.ObjectState.Deleted; context.ExcessMaterialLine.Remove(item); } ExcessMaterialHeader.ObjectState = Model.ObjectState.Deleted; context.ExcessMaterialHeader.Remove(ExcessMaterialHeader); //if (GatePassHeaderId.HasValue) //{ // var GatePassLines = (from p in context.GatePassLine // where p.GatePassHeaderId == GatePassHeaderId // select p).ToList(); // foreach (var item in GatePassLines) // { // item.ObjectState = Model.ObjectState.Deleted; // context.GatePassLine.Remove(item); // } // GatePassHeader.ObjectState = Model.ObjectState.Deleted; // context.GatePassHeader.Remove(GatePassHeader); //} XElement Modifications = new ModificationsCheckService().CheckChanges(LogList); //Commit the DB try { if (EventException) { throw new Exception(); } context.SaveChanges(); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; return(PartialView("_Reason", vm)); } try { ExcessMaterialDocEvents.afterHeaderDeleteEvent(this, new StockEventArgs(vm.id), ref context); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; } LogActivity.LogActivityDetail(LogVm.Map(new ActiivtyLogViewModel { DocTypeId = ExcessMaterialHeader.DocTypeId, DocId = ExcessMaterialHeader.ExcessMaterialHeaderId, ActivityType = (int)ActivityTypeContants.Deleted, UserRemark = vm.Reason, DocNo = ExcessMaterialHeader.DocNo, xEModifications = Modifications, DocDate = ExcessMaterialHeader.DocDate, DocStatus = ExcessMaterialHeader.Status, })); return(Json(new { success = true })); } return(PartialView("_Reason", vm)); }
public ActionResult Post(ExcessMaterialHeaderViewModel svm) { ExcessMaterialHeader s = Mapper.Map <ExcessMaterialHeaderViewModel, ExcessMaterialHeader>(svm); System.Web.HttpContext.Current.Session["ExcessMaterialDocDate"] = svm.DocDate; #region BeforeSave bool BeforeSave = true; try { if (svm.ExcessMaterialHeaderId <= 0) { BeforeSave = ExcessMaterialDocEvents.beforeHeaderSaveEvent(this, new StockEventArgs(svm.ExcessMaterialHeaderId, EventModeConstants.Add), ref context); } else { BeforeSave = ExcessMaterialDocEvents.beforeHeaderSaveEvent(this, new StockEventArgs(svm.ExcessMaterialHeaderId, EventModeConstants.Edit), ref context); } } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; EventException = true; } if (!BeforeSave) { TempData["CSEXC"] += "Failed validation before save"; } #endregion #region DocTypeTimeLineValidation try { if (svm.ExcessMaterialHeaderId <= 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 && BeforeSave && !EventException && (TimePlanValidation || Continue)) { #region CreateRecord if (svm.ExcessMaterialHeaderId <= 0) { s.DocNo = new DocumentTypeService(_unitOfWork).FGetNewDocNo("DocNo", ConfigurationManager.AppSettings["DataBaseSchema"] + ".ExcessMaterialHeaders", s.DocTypeId, s.DocDate, s.DivisionId, s.SiteId); s.CreatedDate = DateTime.Now; s.ModifiedDate = DateTime.Now; s.CreatedBy = User.Identity.Name; s.ModifiedBy = User.Identity.Name; s.Status = (int)StatusConstants.Drafted; //_ExcessMaterialHeaderService.Create(s); s.ObjectState = Model.ObjectState.Added; context.ExcessMaterialHeader.Add(s); try { ExcessMaterialDocEvents.onHeaderSaveEvent(this, new StockEventArgs(s.ExcessMaterialHeaderId, EventModeConstants.Add), ref context); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; EventException = true; } try { if (EventException) { throw new Exception(); } context.SaveChanges(); //_unitOfWork.Save(); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; PrepareViewBag(svm.DocTypeId); ViewBag.Mode = "Add"; return(View("Create", svm)); } try { ExcessMaterialDocEvents.afterHeaderSaveEvent(this, new StockEventArgs(s.ExcessMaterialHeaderId, EventModeConstants.Add), ref context); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; } LogActivity.LogActivityDetail(LogVm.Map(new ActiivtyLogViewModel { DocTypeId = s.DocTypeId, DocId = s.ExcessMaterialHeaderId, ActivityType = (int)ActivityTypeContants.Added, DocNo = s.DocNo, DocDate = s.DocDate, DocStatus = s.Status, })); return(RedirectToAction("Modify", "ExcessMaterialHeader", new { Id = s.ExcessMaterialHeaderId }).Success("Data saved successfully")); } #endregion #region EditRecord else { List <LogTypeViewModel> LogList = new List <LogTypeViewModel>(); ExcessMaterialHeader temp = _ExcessMaterialHeaderService.Find(s.ExcessMaterialHeaderId); ExcessMaterialHeader ExRec = new ExcessMaterialHeader(); ExRec = Mapper.Map <ExcessMaterialHeader>(temp); int status = temp.Status; if (temp.Status != (int)StatusConstants.Drafted && temp.Status != (int)StatusConstants.Import) { temp.Status = (int)StatusConstants.Modified; } temp.DocDate = s.DocDate; temp.DocNo = s.DocNo; temp.PersonId = s.PersonId; temp.ProcessId = s.ProcessId; temp.GodownId = s.GodownId; temp.Remark = s.Remark; temp.ModifiedDate = DateTime.Now; temp.ModifiedBy = User.Identity.Name; temp.ObjectState = Model.ObjectState.Modified; context.ExcessMaterialHeader.Add(temp); LogList.Add(new LogTypeViewModel { ExObj = ExRec, Obj = temp, }); XElement Modifications = new ModificationsCheckService().CheckChanges(LogList); try { ExcessMaterialDocEvents.onHeaderSaveEvent(this, new StockEventArgs(temp.ExcessMaterialHeaderId, EventModeConstants.Edit), ref context); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; EventException = true; } try { if (EventException) { throw new Exception(); } context.SaveChanges(); //_unitOfWork.Save(); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; PrepareViewBag(svm.DocTypeId); ViewBag.id = svm.DocTypeId; return(View("Create", svm)); } try { ExcessMaterialDocEvents.afterHeaderSaveEvent(this, new StockEventArgs(s.ExcessMaterialHeaderId, EventModeConstants.Edit), ref context); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; } LogActivity.LogActivityDetail(LogVm.Map(new ActiivtyLogViewModel { DocTypeId = temp.DocTypeId, DocId = temp.ExcessMaterialHeaderId, ActivityType = (int)ActivityTypeContants.Modified, DocNo = temp.DocNo, xEModifications = Modifications, DocDate = temp.DocDate, DocStatus = temp.Status, })); return(RedirectToAction("Index", new { id = svm.DocTypeId }).Success("Data saved successfully")); } #endregion } PrepareViewBag(svm.DocTypeId); ViewBag.Mode = "Add"; return(View("Create", svm)); }
public void Update(ExcessMaterialHeader s) { s.ObjectState = ObjectState.Modified; _unitOfWork.Repository <ExcessMaterialHeader>().Update(s); }
public void Delete(ExcessMaterialHeader s) { _unitOfWork.Repository <ExcessMaterialHeader>().Delete(s); }
public ExcessMaterialHeader Create(ExcessMaterialHeader s) { s.ObjectState = ObjectState.Added; _unitOfWork.Repository <ExcessMaterialHeader>().Insert(s); return(s); }