public void Update(JobReceiveQAPenalty pt, string UserName) { pt.ModifiedDate = DateTime.Now; pt.ModifiedBy = UserName; pt.ObjectState = ObjectState.Modified; db.JobReceiveQAPenalty.Add(pt); }
public JobReceiveQAPenalty Create(JobReceiveQAPenalty pt, string UserName) { pt.CreatedBy = UserName; pt.CreatedDate = DateTime.Now; pt.ModifiedBy = UserName; pt.ModifiedDate = DateTime.Now; pt.ObjectState = ObjectState.Added; db.JobReceiveQAPenalty.Add(pt); if (pt.JobReceiveQALineId > 0) { List <JobReceiveQAPenalty> PenaltyLines = (from Pl in db.JobReceiveQAPenalty where Pl.JobReceiveQALineId == pt.JobReceiveQALineId select Pl).ToList(); Decimal TotalPenalty = 0; if (PenaltyLines.Count() != 0) { TotalPenalty = PenaltyLines.Sum(i => i.Amount) + pt.Amount; } else { TotalPenalty = pt.Amount; } JobReceiveQALine Line = db.JobReceiveQALine.Find(pt.JobReceiveQALineId); Line.PenaltyAmt = TotalPenalty; Line.ObjectState = ObjectState.Modified; db.JobReceiveQALine.Add(Line); } return(pt); }
public void Delete(int id) { JobReceiveQAPenalty Temp = db.JobReceiveQAPenalty.Find(id); Temp.ObjectState = Model.ObjectState.Deleted; db.JobReceiveQAPenalty.Remove(Temp); }
public ActionResult _CreatePost(JobReceiveQAPenaltyViewModel svm) { JobReceiveQALine L = new JobReceiveQALineService(db, _unitOfWork).Find(svm.JobReceiveQALineId); JobReceiveQAPenalty s = Mapper.Map <JobReceiveQAPenaltyViewModel, JobReceiveQAPenalty>(svm); JobReceiveQAHeader temp = new JobReceiveQAHeaderService(db).Find(L.JobReceiveQAHeaderId); #region BeforeSave bool BeforeSave = true; try { if (svm.JobReceiveQAPenaltyId <= 0) { BeforeSave = JobReceiveQADocEvents.beforeLineSaveEvent(this, new JobEventArgs(svm.JobReceiveQAPenaltyId, EventModeConstants.Add), ref db); } else { BeforeSave = JobReceiveQADocEvents.beforeLineSaveEvent(this, new JobEventArgs(svm.JobReceiveQAPenaltyId, EventModeConstants.Edit), ref db); } } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXCL"] += message; EventException = true; } if (!BeforeSave) { ModelState.AddModelError("", "Validation failed before save."); } #endregion var settings = new JobReceiveQASettingsService(db).GetJobReceiveQASettingsForDocument(temp.DocTypeId, temp.DivisionId, temp.SiteId); if (svm.JobReceiveQAPenaltyId <= 0) { ViewBag.LineMode = "Create"; } else { ViewBag.LineMode = "Edit"; } //if (svm.JobReceiveLineId <= 0) // ModelState.AddModelError("JobReceiveLineId", "The JobReceiveLine field is required"); if (ModelState.IsValid && BeforeSave && !EventException) { if (svm.JobReceiveQAPenaltyId <= 0) { _JobReceiveQAPenaltyService.Create(s, User.Identity.Name); try { db.SaveChanges(); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXCL"] += message; PrepareViewBag(); return(PartialView("_Create", svm)); } LogActivity.LogActivityDetail(LogVm.Map(new ActiivtyLogViewModel { DocTypeId = temp.DocTypeId, DocId = temp.JobReceiveQAHeaderId, DocLineId = s.JobReceiveQAPenaltyId, ActivityType = (int)ActivityTypeContants.Added, DocNo = temp.DocNo, DocDate = temp.DocDate, DocStatus = temp.Status, })); return(RedirectToAction("_Create", new { id = svm.JobReceiveQALineId })); } else { List <LogTypeViewModel> LogList = new List <LogTypeViewModel>(); StringBuilder logstring = new StringBuilder(); JobReceiveQAPenalty temp1 = _JobReceiveQAPenaltyService.Find(svm.JobReceiveQAPenaltyId); JobReceiveQAPenalty ExRec = new JobReceiveQAPenalty(); ExRec = Mapper.Map <JobReceiveQAPenalty>(temp1); temp1.ReasonId = svm.ReasonId; temp1.Amount = svm.Amount; temp1.Remark = svm.Remark; _JobReceiveQAPenaltyService.Update(temp1, User.Identity.Name); //List<JobReceiveQAPenalty> PenaltyLines = (from Pl in db.JobReceiveQAPenalty where Pl.JobReceiveQALineId == L.JobReceiveQALineId select Pl).ToList(); LogList.Add(new LogTypeViewModel { ExObj = ExRec, Obj = temp1, }); if (temp.Status != (int)StatusConstants.Drafted && temp.Status != (int)StatusConstants.Import) { temp.Status = (int)StatusConstants.Modified; } List <JobReceiveQAPenalty> PenaltyLinesList = (from Pl in db.JobReceiveQAPenalty where Pl.JobReceiveQALineId == L.JobReceiveQALineId && Pl.JobReceiveQAPenaltyId != svm.JobReceiveQAPenaltyId select Pl).ToList(); Decimal TotalPenalty = 0; if (PenaltyLinesList.Count() != 0) { TotalPenalty = PenaltyLinesList.Sum(i => i.Amount) + svm.Amount; } else { TotalPenalty = svm.Amount; } L.PenaltyAmt = TotalPenalty; new JobReceiveQALineService(db, _unitOfWork).Update(L, User.Identity.Name); new JobReceiveQAHeaderService(db).Update(temp, User.Identity.Name); XElement Modifications = new ModificationsCheckService().CheckChanges(LogList); try { JobReceiveQADocEvents.onLineSaveEvent(this, new JobEventArgs(temp.JobReceiveQAHeaderId, temp1.JobReceiveQAPenaltyId, EventModeConstants.Edit), ref db); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; EventException = true; } try { if (EventException) { throw new Exception(); } db.SaveChanges(); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXCL"] += message; PrepareViewBag(); return(PartialView("_Create", svm)); } try { JobReceiveQADocEvents.afterLineSaveEvent(this, new JobEventArgs(temp.JobReceiveQAHeaderId, temp1.JobReceiveQAPenaltyId, EventModeConstants.Edit), ref db); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; } LogActivity.LogActivityDetail(LogVm.Map(new ActiivtyLogViewModel { DocTypeId = temp.DocTypeId, DocId = temp.JobReceiveQAHeaderId, DocLineId = temp1.JobReceiveQAPenaltyId, ActivityType = (int)ActivityTypeContants.Modified, DocNo = temp.DocNo, xEModifications = Modifications, DocDate = temp.DocDate, DocStatus = temp.Status, })); return(Json(new { success = true })); } } PrepareViewBag(); return(PartialView("_Create", svm)); }
public ActionResult DeletePost(JobReceiveQAPenaltyViewModel vm) { JobReceiveQALine L = new JobReceiveQALineService(db, _unitOfWork).Find(vm.JobReceiveQALineId); #region BeforeSave bool BeforeSave = true; try { BeforeSave = JobReceiveQADocEvents.beforeLineDeleteEvent(this, new JobEventArgs(L.JobReceiveQAHeaderId, vm.JobReceiveQAPenaltyId), ref db); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; EventException = true; } if (!BeforeSave) { TempData["CSEXC"] += "Validation failed before delete."; } #endregion if (BeforeSave && !EventException) { List <LogTypeViewModel> LogList = new List <LogTypeViewModel>(); JobReceiveQAPenalty JobReceiveQAPenalty = (from p in db.JobReceiveQAPenalty where p.JobReceiveQAPenaltyId == vm.JobReceiveQAPenaltyId select p).FirstOrDefault(); JobReceiveQAHeader header = new JobReceiveQAHeaderService(db).Find(L.JobReceiveQAHeaderId); LogList.Add(new LogTypeViewModel { ExObj = Mapper.Map <JobReceiveQAPenalty>(JobReceiveQAPenalty), }); _JobReceiveQAPenaltyService.Delete(JobReceiveQAPenalty); if (header.Status != (int)StatusConstants.Drafted && header.Status != (int)StatusConstants.Import) { header.Status = (int)StatusConstants.Modified; new JobReceiveQAHeaderService(db).Update(header, User.Identity.Name); } XElement Modifications = new ModificationsCheckService().CheckChanges(LogList); try { JobReceiveQADocEvents.onLineDeleteEvent(this, new JobEventArgs(L.JobReceiveQAHeaderId, JobReceiveQAPenalty.JobReceiveQAPenaltyId), ref db); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; EventException = true; } try { if (EventException) { throw new Exception(); } db.SaveChanges(); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXCL"] += message; PrepareViewBag(); ViewBag.LineMode = "Delete"; return(PartialView("_Create", vm)); } try { JobReceiveQADocEvents.afterLineDeleteEvent(this, new JobEventArgs(L.JobReceiveQAHeaderId, JobReceiveQAPenalty.JobReceiveQAPenaltyId), ref db); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; } LogActivity.LogActivityDetail(LogVm.Map(new ActiivtyLogViewModel { DocTypeId = header.DocTypeId, DocId = header.JobReceiveQAHeaderId, DocLineId = JobReceiveQAPenalty.JobReceiveQAPenaltyId, ActivityType = (int)ActivityTypeContants.Deleted, DocNo = header.DocNo, xEModifications = Modifications, DocDate = header.DocDate, DocStatus = header.Status, })); } return(Json(new { success = true })); }
public void Delete(JobReceiveQAPenalty pt) { pt.ObjectState = Model.ObjectState.Deleted; db.JobReceiveQAPenalty.Remove(pt); }