Example #1
0
        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));
            }
        }
Example #2
0
 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 }));
 }