using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using VRS.Util; namespace VRS.Management { public partial class UserManage_Add : BasePage { DataService.BLL.admin_user bll = new DataService.BLL.admin_user(); DataService.BLL.admin_log log = new DataService.BLL.admin_log(); DataService.BLL.admin_school bll_school = new DataService.BLL.admin_school(); protected override void Page_Load(object sender, EventArgs e) { base.Page_Load(sender, e); if (!IsPostBack) { var user = DataService.BLL.admin_user.load_login(); var user_login = bll.GetModel(user.user_id); if (bll.IsAdministrator(user_login)) { //tr_school.Visible = true; dp_school.Visible = true; span_school.Visible = false; BindSchool(dp_school, ""); } //else if (bll.IsTeacher(user_login)) else if (bll.IsTeacher(user_login) || bll.IsSchoolAdministrator(user_login)) { //tr_school.Visible = false; dp_school.Visible = false ; span_school.Visible = true; if (!string.IsNullOrWhiteSpace(user_login.school_id)) { var school = bll_school.GetModel(user_login.school_id); span_school.InnerText = school.school; } BindSchoolGrade(user_login.school_id, cbx_schoolgrade, ""); // ddp_role.Items.RemoveAt(0); var admin_item = ddp_role.Items.Where(s => s.Text == "管理员").FirstOrDefault(); if (null != admin_item) { ddp_role.Items.Remove(admin_item); } } if (null!=user_login) BindRoleFour(ddp_role, user_login); } } protected void btnSure_Click(object sender, EventArgs e) { if (string.IsNullOrWhiteSpace(login_name.Text) || string.IsNullOrWhiteSpace(real_name.Text) || string.IsNullOrWhiteSpace(password.Text)) { RadAjaxManager1.Alert("登录账号、姓名、密码不能为空!"); return; } var mobile = phone.Text; if (!string.IsNullOrWhiteSpace(mobile) && !BasePage.IsMobile(mobile)) { RadAjaxManager1.Alert("手机号码不格式不正确!"); return; } var str_login_name = login_name.Text.Trim(); if (str_login_name.Length < 5) { RadAjaxManager1.Alert("登录账号至少5位!"); return; } if (bll.GetRecordCount(string.Format(" login_name = '{0}' ", login_name.Text.Trim())) > 0) { RadAjaxManager1.Alert("账号禁止重复!"); return; } var user = DataService.BLL.admin_user.load_login(); var user_login = bll.GetModel(user.user_id); DataService.Model.admin_user model = new DataService.Model.admin_user(); model.user_id = GetNewId("USER"); var role_id_add = ddp_role.SelectedValue; model.role_id = role_id_add; //=====超级管理员角色================================= if (bll.IsAdministrator(user_login)) { //添加超级管理员 if (role_id_add == bll.getAdminRoleId()) { model.school_id = ""; model.grade = ""; } //添加学校管理员 else if (role_id_add == bll.getSchoolAdminRoleId()) { if (string.IsNullOrWhiteSpace(dp_school.SelectedValue)) { RadAjaxManager1.Alert("学校不能为空!"); return; } model.school_id = dp_school.SelectedValue; model.grade = ""; } //添加老师 else if (role_id_add == bll.getTeacherRoleId()) { if (string.IsNullOrWhiteSpace(dp_school.SelectedValue)) { RadAjaxManager1.Alert("学校不能为空!"); return; } /* if (bll.GetRecordCount(string.Format(" job_number = '{0}' and school_id='{1}' ", job_number.Text.Trim(), dp_school.SelectedValue)) > 0) { RadAjaxManager1.Alert("学号禁止重复!"); return; } */ #region 1 老师 限制提示 var school = bll_school.GetModel(dp_school.SelectedValue); if (!string.IsNullOrEmpty(school.r1) && school.r1!="-1") { var limit_number = int.Parse(school.r1); var school_id = dp_school.SelectedValue; //只统计已启用用户$$$ var exist_number = bll.GetStartedUsers(school_id, role_id_add); if (exist_number >= limit_number) { //RadAjaxManager1.Alert(string.Format("当前学校老师已达上限{0}!", limit_number)); RadAjaxManager1.Alert(string.Format("当前学校老师已达上限!")); return; } } #endregion model.school_id = dp_school.SelectedValue; model.grade = ""; } //添加学生 else if (role_id_add == bll.getStudentRoleId()) { if (string.IsNullOrWhiteSpace(dp_school.SelectedValue)) { RadAjaxManager1.Alert("学校不能为空!"); return; } if (string.IsNullOrWhiteSpace(cbx_schoolgrade.Text)) { RadAjaxManager1.Alert("请选择或者录入班级!"); return; } #region 2 学生 限制提示 var school = bll_school.GetModel(dp_school.SelectedValue); if (!string.IsNullOrEmpty(school.r2) && school.r2 != "-1") { var limit_number = int.Parse(school.r2); var school_id = dp_school.SelectedValue; //只统计已启用用户$$$ var exist_number = bll.GetStartedUsers(school_id, role_id_add); if (exist_number >= limit_number) { //RadAjaxManager1.Alert(string.Format("当前学校学生已达上限{0}!", limit_number)); RadAjaxManager1.Alert(string.Format("当前学校学生已达上限!")); return; } } #endregion model.school_id = dp_school.SelectedValue; model.grade = cbx_schoolgrade.Text.Trim(); } } //=====老师角色或者学校管理员角色=================================== else if (bll.IsTeacher(user_login) || bll.IsSchoolAdministrator(user_login)) { //添加老师 if (role_id_add == bll.getTeacherRoleId()) { #region 1 老师 限制提示 var school = bll_school.GetModel(user_login.school_id); if (!string.IsNullOrEmpty(school.r1) && school.r1 != "-1") { var limit_number = int.Parse(school.r1); var school_id = user_login.school_id; //只统计已启用用户$$$ var exist_number = bll.GetStartedUsers(school_id, role_id_add); if (exist_number >= limit_number) { //RadAjaxManager1.Alert(string.Format("当前学校老师已达上限{0}!", limit_number)); RadAjaxManager1.Alert(string.Format("当前学校老师已达上限!")); return; } } #endregion model.school_id = user_login.school_id; model.grade = ""; } //添加学生 else if (role_id_add == bll.getStudentRoleId()) { if (string.IsNullOrWhiteSpace(cbx_schoolgrade.Text)) { RadAjaxManager1.Alert("请选择或者录入班级!"); return; } #region 2 学生 限制提示 var school = bll_school.GetModel(user_login.school_id); if (!string.IsNullOrEmpty(school.r2) && school.r2 != "-1") { var limit_number = int.Parse(school.r2); var school_id = user_login.school_id; //只统计已启用用户$$$ var exist_number = bll.GetStartedUsers(school_id, role_id_add); if (exist_number >= limit_number) { //RadAjaxManager1.Alert(string.Format("当前学校学生已达上限{0}!", limit_number)); RadAjaxManager1.Alert(string.Format("当前学校学生已达上限!")); return; } } #endregion model.school_id = user_login.school_id; model.grade = cbx_schoolgrade.Text.Trim(); } } #region /* var str_id_card = id_card.Text.Trim(); if (!BasePage.IsIdcard(str_id_card)) { RadAjaxManager1.Alert("身份证号码格式错误!"); return; } if (str_id_card.Length == 18 && !BasePage.Is_valid_idcard18(str_id_card)) { RadAjaxManager1.Alert("18位身份证号格式错误!"); return; } */ #endregion //账号 model.login_name = login_name.Text.Trim(); model.real_name = real_name.Text.Trim(); if (model.role_id == "2") { model.password = GetMD5(password.Text.Trim()); model.r6 = password.Text.Trim(); //密码 } else { var password_en =EncryptionAndDecryption.EncryptByLgzn(password.Text.Trim()); model.password = password_en; #region 停用保存密码 $$$$ //model.r6 = password.Text.Trim(); //密码 #endregion } model.job_number = job_number.Text.Trim(); //手机号码 model.mobile = phone.Text.Trim(); model.create_time = DateTime.Now; model.r1 = remark.Text; if (bll.Add(model)) { log.write_log("添加用户成功。" + "姓名:" + real_name.Text.Trim() + ",ID:" + model.user_id); RadAjaxManager1.ResponseScripts.Add("alert('添加成功!');CloseAndRebind();"); } else { RadAjaxManager1.Alert("添加失败!"); } } protected void id_card_TextChanged(object sender, EventArgs e) { /* if (!string.IsNullOrWhiteSpace(id_card.Text)) { var str = id_card.Text.Trim(); if (str.Length >= 17) { var flag = str.Substring(16, 1); string[] man = new string[] { "1","3","5","7","9" }; string[] woman = new string[] { "0","2","4","6","8"}; if (man.Contains(flag)) { sex.SelectedValue = "男"; } if (woman.Contains(flag)) { sex.SelectedValue = "女"; } } } */ } protected void dp_school_SelectedIndexChanged(object sender, Telerik.Web.UI.DropDownListEventArgs e) { var value = dp_school.SelectedValue; BindSchoolGrade(value,cbx_schoolgrade, ""); } } }