public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var generatedRefrence = _uow.GeneratedReferences.Find(id.Value); var model = new GenerateRefrenceModel() { EditDepartmentId = generatedRefrence.DepartmentId, GeneratedCodeAr = generatedRefrence.GeneratedCodeAr, GeneratedCodeEn = generatedRefrence.GeneratedCodeEn, GeneratedReferenceId = generatedRefrence.GeneratedReferenceId }; _uow.AutitTrails.Add(new AuditTrial() { UserId = SessionManager.CurrentUser.UserId, EventTypeId = 4, EventTime = DateTime.Now, EventDetails = "Visited Reassign Generate Reference Modal", EventDetailsAr = "قام بزيارة صفحة الغاء تعيين مرجع" }); _uow.Save(); return(PartialView("_Edit", model)); }
public ActionResult Edit(GenerateRefrenceModel model) { if (ModelState.IsValid) { var generatedRefrence = _uow.GeneratedReferences.Find(model.GeneratedReferenceId); var departmentShortCode = _uow.Departments.Find(model.EditDepartmentId); var ci = new CultureInfo("ar-EG"); if (generatedRefrence.CorrespondentId == 1) { var oldReferenceEn = generatedRefrence.GeneratedCodeEn.Split(new char[] { '/', '-' }, StringSplitOptions.RemoveEmptyEntries); var generatedCodedEn = new StringBuilder(); generatedCodedEn.Append(oldReferenceEn[0]).Append("/").Append("R-").Append(oldReferenceEn[2]).Append("/").Append(departmentShortCode.ShortcutEn).Append("/").Append(oldReferenceEn[4]); var oldReferenceAr = generatedRefrence.GeneratedCodeAr.Split(new Char[] { '/', '-' }, StringSplitOptions.RemoveEmptyEntries); var generatedCodedAr = new StringBuilder(); generatedCodedAr.Append(oldReferenceAr[0]).Append("/").Append("و-").Append(CultureHelper.ConvertToEasternArabicNumerals(int.Parse(oldReferenceEn[2]).ToString("0000", ci))).Append("/").Append(departmentShortCode.ShortcutAr).Append("/").Append(CultureHelper.ConvertToEasternArabicNumerals(int.Parse(oldReferenceEn[4]).ToString("00", ci))); generatedRefrence.GeneratedCodeEn = generatedCodedEn.ToString(); generatedRefrence.GeneratedCodeAr = generatedCodedAr.ToString(); generatedRefrence.DepartmentId = model.EditDepartmentId; generatedRefrence.IsAssigned = true; _uow.AutitTrails.Add(new AuditTrial() { UserId = SessionManager.CurrentUser.UserId, EventTypeId = 12, EventTime = DateTime.Now, ReferenceId = model.GeneratedReferenceId, EventDetails = "this reference " + '"' + model.GeneratedCodeEn + '"' + "has been reassigned with new Department,it's now this one" + '"' + generatedCodedEn.ToString() + '"' }); _uow.GeneratedReferences.Edit(generatedRefrence.GeneratedReferenceId, generatedRefrence); _uow.Save(); return(Json(new { success = true, type = 1, Encode = generatedCodedEn.ToString(), ArCode = generatedCodedAr.ToString(), depid = model.EditDepartmentId })); } else { var oldReferenceEn = generatedRefrence.GeneratedCodeEn.Split('/'); var generatedCodedEn = new StringBuilder(); generatedCodedEn.Append(oldReferenceEn[0]).Append("/").Append(oldReferenceEn[1]).Append("/").Append(departmentShortCode.ShortcutEn).Append("/").Append(oldReferenceEn[3]); var oldReferenceAr = generatedRefrence.GeneratedCodeAr.Split('/'); var generatedCodedAr = new StringBuilder(); generatedCodedAr.Append(oldReferenceAr[0]).Append("/").Append(CultureHelper.ConvertToEasternArabicNumerals(int.Parse(oldReferenceEn[1]).ToString("0000", ci))).Append("/").Append(departmentShortCode.ShortcutAr).Append("/").Append(CultureHelper.ConvertToEasternArabicNumerals(int.Parse(oldReferenceEn[3]).ToString("00", ci))); generatedRefrence.GeneratedCodeEn = generatedCodedEn.ToString(); generatedRefrence.GeneratedCodeAr = generatedCodedAr.ToString(); generatedRefrence.DepartmentId = model.EditDepartmentId; generatedRefrence.IsAssigned = true; _uow.AutitTrails.Add(new AuditTrial() { UserId = SessionManager.CurrentUser.UserId, EventTypeId = 12, EventTime = DateTime.Now, ReferenceId = model.GeneratedReferenceId, EventDetails = "this reference " + '"' + model.GeneratedCodeEn + '"' + "has been reassigned with new Department,it's now this one" + '"' + generatedCodedEn.ToString() + '"' }); _uow.GeneratedReferences.Edit(generatedRefrence.GeneratedReferenceId, generatedRefrence); _uow.Save(); return(Json(new { success = true, type = 2, Encode = generatedCodedEn.ToString(), ArCode = generatedCodedAr.ToString(), depid = model.EditDepartmentId })); } } return(Json(new { success = false, message = "There is a wrong in your " })); }
public ActionResult CreateGenerateRefrence(GenerateRefrenceModel model) { if (!ModelState.IsValid) { var sd = ModelState.Values; return(Json(new { success = false })); } var generatedCode = GenerateNewRefrence(model.CompanyName, model.CompanyNameAr, model.DepartmentId, model.Incoming); model.GeneratedCodeEn = generatedCode.GeneratedCodeEn; model.GeneratedCodeAr = generatedCode.GeneratedCodeAr; if (generatedCode.IsUnAssignedRef) { var toDeletedReference = _uow.GeneratedReferences.Find(generatedCode.UnAssignedId); var updGenerated = new GeneratedReference { CompanyName = model.CompanyName, CompanyNameAr = model.CompanyNameAr, DepartmentId = model.DepartmentId, GeneratedCodeAr = model.GeneratedCodeAr, GeneratedCodeEn = model.GeneratedCodeEn, IsAssigned = true, CorrespondentId = model.Incoming == "Incoming" ? 1 : 2, CreatedBy = SessionManager.CurrentUser.UserId, CreatedAt = DateTime.Now }; updGenerated.AuditTrial.Add(new AuditTrial() { EventTypeId = 12, UserId = SessionManager.CurrentUser.UserId, EventTime = DateTime.Now, EventDetails = "This User Created new reference based on this Unassigned Reference " + toDeletedReference.GeneratedCodeEn, EventDetailsAr = "هذا المستخدم قام بنشاء مرجع جديد بنائاً علي هذا المرجع الملغي تعيينه " + toDeletedReference.GeneratedCodeAr }); _uow.GeneratedReferences.Add(updGenerated); toDeletedReference.IsDeleted = true; _uow.AutitTrails.Add(new AuditTrial() { UserId = SessionManager.CurrentUser.UserId, ReferenceId = toDeletedReference.GeneratedReferenceId, EventTypeId = 13, EventTime = DateTime.Now, EventDetails = "This reference has been deleted after you reused this number in new generated reference", EventDetailsAr = "هذا المرجع تم حذفه بعد ما استخدم ترقيمه في مرجع جديد" }); _uow.Save(); ModelState.Clear(); return(Json(new { success = true, GeneratedCodeAr = model.GeneratedCodeAr, GeneratedCodeEn = model.GeneratedCodeEn }, JsonRequestBehavior.AllowGet)); } var newGenerated = new GeneratedReference { CompanyName = model.CompanyName, CompanyNameAr = model.CompanyNameAr, DepartmentId = model.DepartmentId, GeneratedCodeAr = model.GeneratedCodeAr, GeneratedCodeEn = model.GeneratedCodeEn, IsAssigned = true, CorrespondentId = model.Incoming == "Incoming" ? 1 : 2, CreatedBy = SessionManager.CurrentUser.UserId, CreatedAt = DateTime.Now }; newGenerated.AuditTrial.Add(new AuditTrial() { EventTypeId = 10, UserId = SessionManager.CurrentUser.UserId, EventTime = DateTime.Now, EventDetails = "This User Created this new reference", EventDetailsAr = "هذا المستخدم قام بانشاء مرجع جديد" }); _uow.GeneratedReferences.Add(newGenerated); var lastnumber = 0; string lastYear = null; if (model.Incoming == "Outgoing") { var generatedCodeSplitting = model.GeneratedCodeEn.Split('/'); lastnumber = int.Parse(generatedCodeSplitting[1]); var refNoCountToUpdate = _uow.RefNoCounts.List().FirstOrDefault(x => x.IsCurrentYearxx == true && x.CorrespondentTypeID == 2); if (refNoCountToUpdate != null) { refNoCountToUpdate.StartNumber = lastnumber; } } if (model.Incoming == "Incoming") { var generatedCodeSplitting = model.GeneratedCodeEn.Split(new Char[] { '/', '-' }, StringSplitOptions.RemoveEmptyEntries); lastnumber = int.Parse(generatedCodeSplitting[2]); var refNoCountToUpdate = _uow.RefNoCounts.List().FirstOrDefault(x => x.IsCurrentYearxx == true && x.CorrespondentTypeID == 1); if (refNoCountToUpdate != null) { refNoCountToUpdate.StartNumber = lastnumber; } } _uow.Save(); ModelState.Clear(); return(Json(new { success = true, GeneratedCodeAr = model.GeneratedCodeAr, GeneratedCodeEn = model.GeneratedCodeEn })); }