public async Task <IActionResult> EmpCerts(int id) { var employee = await _employeeService.GetEmployee(id); if (employee == null || employee.ID <= 0) { ModelState.AddModelError("", "没有找到指定的人员"); return(View(new EmployeeCertsViewModel { NewCertIssueDate = DateTime.Today, NewCertExpireDate = DateTime.Today.AddYears(3), })); } else { //get all certifications var certifications = await _employeeService.GetCertifications(employee.ID); var model = EmployeeCertsViewModel.Create(employee, certifications, await _sysAdminService.GetReferences(ReferenceTypeEnum.Qualification)); if (TempData.ContainsKey("CertAdd_Error")) { ModelState.AddModelError("", Convert.ToString(TempData["CertAdd_Error"])); var old_model = JsonConvert.DeserializeObject <EmployeeCertsViewModel>( Convert.ToString(TempData["Error_Model"])); model.NewCertActive = old_model.NewCertActive; model.NewCertAuthUnit = old_model.NewCertAuthUnit; model.NewCertExpireDate = old_model.NewCertExpireDate; model.NewCertIssueDate = old_model.NewCertIssueDate; model.NewCertName = old_model.NewCertName; model.NewCertQualifId = old_model.NewCertQualifId; } return(View(model)); } }
public async Task <IActionResult> CertAdd(EmployeeCertsViewModel model) { if (model.EmployeeId <= 0) { TempData["CertAdd_Error"] = "没有指定要添加证书的人员"; } else if (string.IsNullOrWhiteSpace(model.NewCertName) || model.NewCertAuthUnit?.Length > 200) { TempData["CertAdd_Error"] = "必须给证书命名一个名称;且发证机关不能超过200字"; } else if (model.NewCertExpireDate < model.NewCertIssueDate) { TempData["CertAdd_Error"] = "失效日期不能早于发证日期, 对于长期有效的证件,可以指定一个遥远的失效日期"; } else { var cert = new Certification { ActiveStatus = model.NewCertActive, AuthorityUnit = model.NewCertAuthUnit, CertifyingDate = model.NewCertIssueDate, CreatedOn = DateTime.Now, CreatedBy = UserHelper.GetUserID(HttpContext), EmployeeID = model.EmployeeId, ExpireDate = model.NewCertExpireDate, Name = model.NewCertName, QualificationID = model.NewCertQualifId.Value }; try { await _employeeService.SaveCertification(cert); } catch (Exception ex) { TempData["CertAdd_Error"] = "添加证书失败:" + ex.Message; } } if (TempData.ContainsKey("CertAdd_Error")) { TempData["Error_Model"] = JsonConvert.SerializeObject(model); } return(RedirectToAction(nameof(EmpCerts), new { id = model.EmployeeId })); }