public void Update(JobOrderInspectionRequestHeader pt, string UserName) { pt.ModifiedBy = UserName; pt.ModifiedDate = DateTime.Now; pt.ObjectState = ObjectState.Modified; db.JobOrderInspectionRequestHeader.Add(pt); }
public JobOrderInspectionRequestHeader Create(JobOrderInspectionRequestHeader pt, string UserName) { pt.CreatedBy = UserName; pt.CreatedDate = DateTime.Now; pt.ObjectState = ObjectState.Added; db.JobOrderInspectionRequestHeader.Add(pt); return(pt); }
public void Delete(JobOrderInspectionRequestHeader pt) { pt.ObjectState = Model.ObjectState.Deleted; db.JobOrderInspectionRequestHeader.Remove(pt); }
public ActionResult ConfirmedJobOrders(List <JobOrderInspectionRequestWizardViewModel> ConfirmedList, int DocTypeId, string UserRemark) { if (ConfirmedList.Count() > 0 && ConfirmedList.GroupBy(m => m.JobWorkerId).Count() > 1) { return(Json(new { Success = false, Data = " Multiple Headers are selected. " }, JsonRequestBehavior.AllowGet)); } else if (ConfirmedList.Count() == 0) { return(Json(new { Success = false, Data = " No Records are selected. " }, JsonRequestBehavior.AllowGet)); } else { int DivisionId = (int)System.Web.HttpContext.Current.Session["DivisionId"]; int SiteId = (int)System.Web.HttpContext.Current.Session["SiteId"]; bool BeforeSave = true; int Serial = 1; List <JobOrderInspectionRequestLineViewModel> LineStatus = new List <JobOrderInspectionRequestLineViewModel>(); try { BeforeSave = JobOrderInspectionRequestDocEvents.beforeWizardSaveEvent(this, new JobEventArgs(0), ref db); } catch (Exception ex) { string message = _exception.HandleException(ex); return(Json(new { Success = false, Data = message }, JsonRequestBehavior.AllowGet)); } if (!BeforeSave) { TempData["CSEXC"] += "Failed validation before save"; } int Cnt = 0; int Sr = 0; JobOrderInspectionRequestSettings Settings = new JobOrderInspectionRequestSettingsService(db).GetJobOrderInspectionRequestSettingsForDocument(DocTypeId, DivisionId, SiteId); int?MaxLineId = 0; if (ModelState.IsValid && BeforeSave && !EventException) { JobOrderInspectionRequestHeader pt = new JobOrderInspectionRequestHeader(); //Getting Settings pt.SiteId = SiteId; pt.JobWorkerId = ConfirmedList.FirstOrDefault().JobWorkerId; pt.DivisionId = DivisionId; pt.ProcessId = Settings.ProcessId; pt.Remark = UserRemark; pt.DocTypeId = DocTypeId; pt.DocDate = DateTime.Now; pt.DocNo = new DocumentTypeService(_unitOfWork).FGetNewDocNo("DocNo", ConfigurationManager.AppSettings["DataBaseSchema"] + ".JobOrderInspectionRequestHeaders", pt.DocTypeId, pt.DocDate, pt.DivisionId, pt.SiteId); pt.ModifiedBy = User.Identity.Name; pt.ModifiedDate = DateTime.Now; pt.CreatedBy = User.Identity.Name; pt.CreatedDate = DateTime.Now; pt.Status = (int)StatusConstants.Drafted; pt.ObjectState = Model.ObjectState.Added; db.JobOrderInspectionRequestHeader.Add(pt); var SelectedJobOrders = ConfirmedList; var JobOrderLineIds = SelectedJobOrders.Select(m => m.JobOrderLineId).ToArray(); var JobOrderBalanceRecords = (from p in db.ViewJobOrderBalanceForInspectionRequest where JobOrderLineIds.Contains(p.JobOrderLineId) select p).AsNoTracking().ToList(); var JobOrderRecords = (from p in db.JobOrderLine where JobOrderLineIds.Contains(p.JobOrderLineId) select p).AsNoTracking().ToList(); foreach (var item in SelectedJobOrders) { JobOrderLine Recline = JobOrderRecords.Where(m => m.JobOrderLineId == item.JobOrderLineId).FirstOrDefault(); var balRecline = JobOrderBalanceRecords.Where(m => m.JobOrderLineId == item.JobOrderLineId).FirstOrDefault(); if (item.Qty <= JobOrderBalanceRecords.Where(m => m.JobOrderLineId == item.JobOrderLineId).FirstOrDefault().BalanceQty) { JobOrderInspectionRequestLine line = new JobOrderInspectionRequestLine(); line.JobOrderInspectionRequestHeaderId = pt.JobOrderInspectionRequestHeaderId; line.JobOrderLineId = item.JobOrderLineId; line.Qty = item.Qty; line.Remark = item.Remark; line.ProductUidId = Recline.ProductUidId; line.Sr = Serial++; line.JobOrderInspectionRequestLineId = Cnt; line.CreatedDate = DateTime.Now; line.ModifiedDate = DateTime.Now; line.CreatedBy = User.Identity.Name; line.ModifiedBy = User.Identity.Name; LineStatus.Add(Mapper.Map <JobOrderInspectionRequestLineViewModel>(line)); line.ObjectState = Model.ObjectState.Added; db.JobOrderInspectionRequestLine.Add(line); Cnt = Cnt + 1; } } //new JobOrderLineStatusService(_unitOfWork).UpdateJobOrderQtyQAMultiple(LineStatus, pt.DocDate, ref db); try { JobOrderInspectionRequestDocEvents.onWizardSaveEvent(this, new JobEventArgs(pt.JobOrderInspectionRequestHeaderId, EventModeConstants.Add), ref db); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; EventException = true; } try { if (EventException) { throw new Exception(); } db.SaveChanges(); //_unitOfWork.Save(); } catch (Exception ex) { string message = _exception.HandleException(ex); return(Json(new { Success = false, Data = message }, JsonRequestBehavior.AllowGet)); } try { JobOrderInspectionRequestDocEvents.afterWizardSaveEvent(this, new JobEventArgs(pt.JobOrderInspectionRequestHeaderId, EventModeConstants.Add), ref db); } catch (Exception ex) { string message = _exception.HandleException(ex); TempData["CSEXC"] += message; } LogActivity.LogActivityDetail(LogVm.Map(new ActiivtyLogViewModel { DocTypeId = pt.DocTypeId, DocId = pt.JobOrderInspectionRequestHeaderId, ActivityType = (int)ActivityTypeContants.WizardCreate, DocNo = pt.DocNo, DocDate = pt.DocDate, DocStatus = pt.Status, })); return(Json(new { Success = "URL", Data = "/JobOrderInspectionRequestHeader/Submit/" + pt.JobOrderInspectionRequestHeaderId }, JsonRequestBehavior.AllowGet)); } else { return(Json(new { Success = false, Data = "ModelState is Invalid" }, JsonRequestBehavior.AllowGet)); } } }