gyhlw_dotnet/网站项目/VRS/Management/Exam/MatchScene_Student_Add.aspx.cs

222 lines
8.1 KiB
C#

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.Exam
{
public partial class MatchScene_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<DataService.Model.admin_user> list_admin_user = new List<DataService.Model.admin_user>();
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<DataService.Model.admin_user> 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<DataService.Model.pro_subject_batch_user>();
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);
}
}
}