public ActionResult AdministartorsRegisterDetials(CreateAdminitratorDetialData cre) { var or = Session["admin"] is SchoolAdministrator; SchoolAdministrator schoolAdministrator = null; if (or == false) { ModelState.AddModelError("RegisterError", "出现了意外的错误"); return(View("AdministartorsRegister")); } schoolAdministrator = Session["admin"] as SchoolAdministrator; bool resiterIS = true; try { re.RegisterBll(schoolAdministrator, cre, dal); //用户注册后发送一个带QueryString的URL给校长 var rightUrl = Url.Action("SeendValidateCode"); var LeftUrl = Request.Url.GetLeftPart(UriPartial.Authority) + rightUrl; try { var entity = dal.GetEntity(schoolAdministrator.AdministratorAccount); LeftUrl = LeftUrl + "?account=" + entity.AdministratorAccount + "&email=" + entity.CreateAdminitratorDetialDatas.Email; ICreateEmail createEmail = new CreateEnail(); bool Ok = createEmail.SeendEmail(LeftUrl, entity.CreateAdminitratorDetialDatas.Email, entity.CreateAdminitratorDetialDatas.Message, entity.AdministratorAccount, entity.CreateAdminitratorDetialDatas.AdministratorAuthority); if (!Ok) { throw new ArgumentException("邮件发送失败"); } } catch (Exception e) { ErrorDatabase error = new ErrorDatabase() { DateTime = DateTime.Now, ErrorMessage = e.StackTrace.ToString() }; errorDal.AddEntity(error); resiterIS = false; ModelState.AddModelError("RegisterError", "验证功能暂时失败请您后续登陆网站发送验证"); } } catch (Exception e) { ErrorDatabase error = new ErrorDatabase() { DateTime = DateTime.Now, ErrorMessage = e.StackTrace.ToString() }; errorDal.AddEntity(error); resiterIS = false; ModelState.AddModelError("RegisterError", "您输入的邮箱已被占用"); } if (resiterIS) { return(Content("完成")); } return(View("AdministartorsRegister")); }
/// <summary> /// 完善管理员注册的系统信息,并将权限冻结 /// </summary> /// <param name="school">SchoolAdministrator</param> /// <param name="cre">CreateAdminitratorDetialData</param> /// <param name="dal">ISchoolAdministratorDal</param> /// <returns>true/false</returns> public bool RegisterBll(SchoolAdministrator school, CreateAdminitratorDetialData cre, ISchoolAdministratorDal dal) { school.AdministratorPassword = CreateSha256Passsword(school.AdministratorPassword); cre.CreatedTime = DateTime.Now; cre.IsFreeze = true;//IsFreeze:是否冻结 school.CreateAdminitratorDetialDatas = cre; var num = dal.AddEntity(school); return(num > 0); }