207 lines
7.5 KiB
C#
207 lines
7.5 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.VSAT
|
|
{
|
|
public partial class FaultExamPaper_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();
|
|
|
|
protected override void Page_Load(object sender, EventArgs e)
|
|
{
|
|
if (!IsPostBack)
|
|
{
|
|
BindMajors(dpMajor, "");
|
|
BindGrade(grade, "");
|
|
BindExamBatch(dpbatch, "");
|
|
DataLoad();
|
|
}
|
|
}
|
|
|
|
protected override void DataLoad()
|
|
{
|
|
StringBuilder query = new StringBuilder(" 1 = 1 ");
|
|
if (!string.IsNullOrWhiteSpace(login_name.Text.Trim()))
|
|
{
|
|
query.AppendFormat(" AND login_name LIKE '%{0}%' ", login_name.Text.Trim());
|
|
}
|
|
if (!string.IsNullOrWhiteSpace(real_name.Text.Trim()))
|
|
{
|
|
query.AppendFormat(" AND real_name LIKE '%{0}%' ", real_name.Text.Trim());
|
|
}
|
|
/*
|
|
if (!string.IsNullOrWhiteSpace(id_card.Text.Trim()))
|
|
{
|
|
query.AppendFormat(" AND id_card LIKE '%{0}%' ", id_card.Text.Trim());
|
|
}*/
|
|
if (!string.IsNullOrWhiteSpace(dpMajor.SelectedValue))
|
|
{
|
|
query.AppendFormat(" AND major = '{0}' ", dpMajor.SelectedValue);
|
|
}
|
|
if (!string.IsNullOrWhiteSpace(grade.SelectedValue))
|
|
{
|
|
query.AppendFormat(" AND grade = '{0}' ", grade.SelectedValue);
|
|
}
|
|
//已经存在考试批次的学员,禁止重复添加
|
|
query.AppendFormat(" and T1.user_id not in (select user_id from pro_fault_exam_paper where state = 0) ");
|
|
|
|
var sql = query.ToString();
|
|
var data = bll.GetUsrUsers(sql);
|
|
dataList.DataSource = data;
|
|
dataList.Rebind();
|
|
|
|
var exam_list = bll_fault_exam.GetModelList("");
|
|
CheckBoxList1.DataBindings.DataTextField = "exam_title";
|
|
CheckBoxList1.DataBindings.DataValueField = "exam_id";
|
|
CheckBoxList1.DataSource = exam_list;
|
|
CheckBoxList1.DataBind();
|
|
}
|
|
|
|
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;
|
|
}
|
|
|
|
if (string.IsNullOrEmpty(dpbatch.SelectedValue))
|
|
{
|
|
RadAjaxManager1.Alert("请选择考试批次!");
|
|
return;
|
|
}
|
|
|
|
var array = CheckBoxList1.SelectedValues;
|
|
if (array.Length <= 0)
|
|
{
|
|
RadAjaxManager1.Alert("请选择故障题目!");
|
|
return;
|
|
}
|
|
|
|
List<DataService.Model.pro_fault_exam> list_fault_exam = new List<DataService.Model.pro_fault_exam>();
|
|
foreach(var item in array)
|
|
{
|
|
var exam = bll_fault_exam.GetModel(item);
|
|
list_fault_exam.Add(exam);
|
|
}
|
|
|
|
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 = bll_batch.GetModel(dpbatch.SelectedValue);
|
|
var now = DateTime.Now;
|
|
var success = false;
|
|
var fail_list = new List<string>();
|
|
foreach (var user in list_admin_user)
|
|
{
|
|
//学员存在考试批次 禁止添加
|
|
var exist_sql = " user_id ='" + user.user_id + "' and batch_id='" + batch.batch_id + "'";
|
|
var exist_list = bll_fault_exam_paper.GetModelList(exist_sql);
|
|
if (exist_list.Count>0)
|
|
{
|
|
fail_list.Add(user.real_name);
|
|
continue;
|
|
}
|
|
var model = new DataService.Model.pro_fault_exam_paper();
|
|
var paper_id = GetNewId();
|
|
model.paper_id = paper_id;
|
|
model.user_id = user.user_id;
|
|
model.login_name = user.login_name;
|
|
model.real_name = user.real_name;
|
|
|
|
|
|
model.batch_id = batch.batch_id;
|
|
model.batch_name = batch.batch_name;
|
|
model.sjms = batch.sjms;
|
|
model.state = 0;
|
|
model.score = 0;
|
|
model.create_time = now;
|
|
|
|
foreach(var fault_item in list_fault_exam)
|
|
{
|
|
var paper_item = new DataService.Model.pro_fault_exam_paper_item();
|
|
paper_item.item_id = GetNewId();
|
|
paper_item.paper_id = paper_id;
|
|
paper_item.exam_id = fault_item.exam_id;
|
|
paper_item.exam_title = fault_item.exam_title;
|
|
paper_item.create_time = now;
|
|
|
|
bll_paper_item.Add(paper_item);
|
|
}
|
|
success =bll_fault_exam_paper.Add(model);
|
|
}
|
|
string desc = "";
|
|
if (fail_list.Count > 0)
|
|
{
|
|
desc = " 学员(" + string.Join("", fail_list.ToArray()) + "),已经添加过该批次!";
|
|
}
|
|
if (success)
|
|
{
|
|
log.write_log("添加故障考试题目成功。" +desc);
|
|
if (fail_list.Count > 0)
|
|
{
|
|
RadAjaxManager1.ResponseScripts.Add("alert('部分添加成功!" + desc + "');CloseAndRebind();");
|
|
}
|
|
else
|
|
{
|
|
RadAjaxManager1.ResponseScripts.Add("alert('添加成功!');CloseAndRebind();");
|
|
}
|
|
}
|
|
else
|
|
{
|
|
log.write_log("添加故障考试题目失败。" + desc);
|
|
RadAjaxManager1.Alert("添加失败!"+ desc);
|
|
}
|
|
|
|
}
|
|
}
|
|
} |