// // GET: /PaperStatus/Edit/5 public ActionResult Edit(int id) { var record = _db.Records.Find(id); var MSStatus = new MSStatusViewModel { PaperNumber = record.PaperNumber, AcceptanceStatus_randomizer = record.AcceptanceStatus_randomizer, StatusEntryUser_randomizer = record.StatusEntryUser_randomizer, StatusUpdateTime_randomizer = record.StatusUpdateTime_randomizer, RecordID = record.RecordID, StatusComments_randomizer = record.StatusComments_randomizer, AuthorCompliance = record.AuthorCompliance }; ViewBag.action = (record.CategoryCategoryID == 1) ? "No" : (record.hadarrivechecklist == "Yes" ? "No" : "Yes"); return(View(MSStatus)); }
public ActionResult Edit(MSStatusViewModel MSStatusRecord) { if (!ModelState.IsValid) { return(View(MSStatusRecord)); } var userid = (int)Membership.GetUser().ProviderUserKey; var id = MSStatusRecord.RecordID; var record = _db.Records.Find(id); record.AcceptanceStatus_randomizer = MSStatusRecord.AcceptanceStatus_randomizer; record.StatusEntryUser_randomizer = User.Identity.Name; record.StatusComments_randomizer = MSStatusRecord.StatusComments_randomizer; record.StatusUpdateTime_randomizer = DateTime.Now; record.StatusUpdateTimeUTC_randomizer = DateTime.UtcNow; record.AuthorCompliance = MSStatusRecord.AuthorCompliance; if (record.AcceptanceStatus_randomizer == "Error") { var reviewCompletsions = _db.ReviewCompletions.Where(rc => rc.RecordRecordID == id && rc.Status == "Current"); if (reviewCompletsions.Any()) { foreach (var rc in reviewCompletsions) { rc.Status = "TC1Error"; rc.UserID = userid; if (!rc.PaperQualities.Any()) { continue; } foreach (var r in rc.PaperQualities) { r.Status = "TC1Error"; } } } } if (record.AcceptanceStatus_randomizer == "Pass TC1") { var reviewCompletsions = _db.ReviewCompletions.Where(rc => rc.RecordRecordID == id && rc.Status == "TC1Error"); if (reviewCompletsions.Any()) { foreach (var rc in reviewCompletsions) { rc.Status = "Current"; rc.UserID = userid; if (rc.PaperQualities.All(p => p.Status != "TC1Error")) { continue; } foreach (var r in rc.PaperQualities.Where(p => p.Status == "TC1Error")) { r.Status = "Current"; } } } } _db.SaveChanges(); return(RedirectToAction("Index")); }