using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using Telerik.Web.UI; namespace VRS.Management.VSAT { public partial class ExamBatch_Student_Add : BaseListPage { DataService.BLL.admin_user bll = new DataService.BLL.admin_user(); DataService.BLL.pro_fault_exam bll_fault_exam = new DataService.BLL.pro_fault_exam(); DataService.BLL.pro_fault_exam_paper bll_fault_exam_paper = new DataService.BLL.pro_fault_exam_paper(); DataService.BLL.pro_exam_batch bll_batch = new DataService.BLL.pro_exam_batch(); DataService.BLL.admin_log log = new DataService.BLL.admin_log(); DataService.BLL.pro_fault_exam_paper_item bll_paper_item = new DataService.BLL.pro_fault_exam_paper_item(); DataService.BLL.pro_subject bll_subject = new DataService.BLL.pro_subject(); DataService.BLL.pro_fault bll_fault = new DataService.BLL.pro_fault(); DataService.BLL.pro_subject_batch_user bll_subject_batch_user = new DataService.BLL.pro_subject_batch_user(); DataService.BLL.pro_fault_batch_user bll_fault_batch_user = new DataService.BLL.pro_fault_batch_user(); DataService.BLL.admin_user bll_user = new DataService.BLL.admin_user(); protected override void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { var user = DataService.BLL.admin_user.load_login(); var user_login = bll_user.GetModel(user.user_id); if (bll_user.IsAdministrator(user_login)) { tr_school.Visible = true; BindSchool(dp_school, ""); } else if (bll_user.IsTeacher(user_login)) { tr_school.Visible = false; BindSchoolGrade(user_login.school_id, dp_schoolgrade, ""); } DataLoad(); } } protected void dp_school_SelectedIndexChanged(object sender, Telerik.Web.UI.DropDownListEventArgs e) { var value = dp_school.SelectedValue; BindSchoolGrade(value, dp_schoolgrade, ""); DataLoad(); } protected void dp_schoolgrade_SelectedIndexChanged(object sender, DropDownListEventArgs e) { DataLoad(); } protected override void DataLoad() { StringBuilder query = new StringBuilder(" 1 = 1 and is_lock=0 ");//停用用户 ,无法加入 if (!string.IsNullOrWhiteSpace(login_name.Text.Trim())) { query.AppendFormat(" AND (login_name LIKE '%{0}%' or real_name LIKE '%{0}%') ", login_name.Text.Trim()); } var userlogin = DataService.BLL.admin_user.load_login(); var user_login = bll_user.GetModel(userlogin.user_id); if (bll_user.IsAdministrator(user_login)) { if (!string.IsNullOrEmpty(dp_school.SelectedValue)) { query.AppendFormat(" AND school_id = '{0}' ", dp_school.SelectedValue); } } else //老师只能看到自己学校的(学生和老师) { query.AppendFormat(" AND school_id = '{0}' ", user_login.school_id); } if (!string.IsNullOrEmpty(dp_schoolgrade.SelectedValue)) { query.AppendFormat(" AND grade = '{0}' ", dp_schoolgrade.SelectedValue); } var batch_id = Request.Params["batch_id"]; var batch = bll_batch.GetModel(batch_id); if (null != batch) { //query.AppendFormat(" AND major = '{0}' ", batch.major); //query.AppendFormat(" AND grade = '{0}' ", batch.grade); var desc = batch.state == 1 ? "启用" : "停用"; span_batch.InnerHtml = batch.batch_name + ",状态:" + desc; if (batch.state == 1) { span_batch.Attributes["class"] = "green"; } else { span_batch.Attributes["class"] = "red"; } span_batch.InnerHtml = batch.batch_name; } // query.AppendFormat(" and T1.user_id not in (select user_id from pro_fault_batch_user where batch_id='{0}') ", batch_id); // query.AppendFormat(" and T1.user_id not in (select user_id from pro_fault_exam_paper where batch_id='{0}') ", batch_id); query.AppendFormat(" and T1.user_id not in (select user_id from pro_subject_batch_user where batch_id='{0}') ", batch_id); var sql = query.ToString(); var data = bll.GetUsrUsers(sql); dataList.DataSource = data; dataList.Rebind(); } protected override void GridList_PageIndexChanged(object sender, GridPageChangedEventArgs e) { DataLoad(); } protected override void GridList_PageSizeChanged(object sender, GridPageSizeChangedEventArgs e) { DataLoad(); } protected override void GridList_SortCommand(object sender, GridSortCommandEventArgs e) { DataLoad(); } protected override void AjaxManager_AjaxRequest(object sender, AjaxRequestEventArgs e) { } protected void btnSelect_Click(object sender, EventArgs e) { DataLoad(); } protected override void GrdList_DeleteCommand(object sender, GridCommandEventArgs e) { } protected void btnAdd_Click(object sender, EventArgs e) { var count = dataList.SelectedItems.Count; if (count <= 0) { RadAjaxManager1.Alert("学员不能为空!"); return; } btnAdd.Enabled = false; List list_admin_user = new List(); foreach (var obj in dataList.SelectedItems) { GridDataItem item = obj as GridDataItem; var user_id = item.GetDataKeyValue("user_id").ToString(); var user = bll.GetModel(user_id); list_admin_user.Add(user); } var batch_id = Request.Params["batch_id"]; var batch = bll_batch.GetModel(batch_id); if (null == batch) { RadAjaxManager1.Alert("考试场次不能为空!"); return; } var subject_id = "000"; var subject_name = "理论考试"; var add_count = batch_add_subject(list_admin_user, batch, subject_id, subject_name); if (add_count > 0) { RadAjaxManager1.ResponseScripts.Add("alert('添加成功!');CloseAndRebind();"); } } //添加普通科目 private int batch_add_subject(List list_user, DataService.Model.pro_exam_batch batch , string subject_id,string subject_name) { //id,batch_id,batch_name,subject_id,subject_name,user_id,login_name,real_name,state,create_time var now = DateTime.Now; var list_insert = new List(); var id = BasePage.GetId(); int index = 1; foreach (var user in list_user) { var item = new DataService.Model.pro_subject_batch_user(); item.id = BasePage.GetNextId(id, index++); item.batch_id = batch.batch_id; item.batch_name = batch.batch_name; item.subject_id = subject_id; item.subject_name = subject_name; item.user_id = user.user_id; item.login_name = user.login_name; item.real_name = user.real_name; item.state = 0; item.create_time = now; list_insert.Add(item); } return bll_subject_batch_user.BatchAdd(list_insert); } } }