304 lines
11 KiB
C#
304 lines
11 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Data;
|
|
using System.IO;
|
|
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 ResultQueryOne : BaseListPage
|
|
{
|
|
DataService.BLL.pro_result bll = new DataService.BLL.pro_result();
|
|
DataService.BLL.pro_result_detail bll_result_detail = new DataService.BLL.pro_result_detail();
|
|
DataService.BLL.admin_user bll_user = new DataService.BLL.admin_user();
|
|
DataService.BLL.pro_file bll_file = new DataService.BLL.pro_file();
|
|
|
|
DataService.BLL.exam_result bll_exam_result = new DataService.BLL.exam_result();
|
|
DataService.BLL.exam_result_detail bll_exam_result_detail = new DataService.BLL.exam_result_detail();
|
|
|
|
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)
|
|
{
|
|
start.SelectedDate = DateTime.Today.AddDays(-365);
|
|
end.SelectedDate = DateTime.Today;
|
|
|
|
//BindResultSubject(dp_subject_name, "");
|
|
BindExamSubject(dp_subject_name, "");
|
|
|
|
//var user = DataService.BLL.admin_user.load_login();
|
|
//var userModel = bll_user.GetModel(user.user_id);
|
|
|
|
|
|
string Id = Request.Params["Id"];
|
|
var userModel = bll_user.GetModel(Id);
|
|
hid_user_id.Value = Id;
|
|
|
|
if (!string.IsNullOrEmpty(userModel.school_id))
|
|
{
|
|
var obj = bll_school.GetModel(userModel.school_id);
|
|
if (null != obj)
|
|
{
|
|
userModel.school_name = obj.school;
|
|
}
|
|
}
|
|
span_school.InnerHtml = userModel.school_name;
|
|
span_grade.InnerHtml = userModel.grade;
|
|
span_real_name.InnerHtml = userModel.real_name;
|
|
span_login_name.InnerHtml = userModel.login_name;
|
|
DataLoad();
|
|
}
|
|
}
|
|
|
|
|
|
|
|
public DataTable getDataSet()
|
|
{
|
|
var start_date = start.SelectedDate.HasValue ? start.SelectedDate.Value.ToString("yyyy-MM-dd") : "";
|
|
var end_date = end.SelectedDate.HasValue ? end.SelectedDate.Value.ToString("yyyy-MM-dd") : "";
|
|
if (!string.IsNullOrEmpty(end_date))
|
|
{
|
|
end_date = DateTime.Parse(end_date).AddDays(1).ToString("yyyy-MM-dd");
|
|
}
|
|
|
|
// 身份证号、姓名、部门、性别、科目、船型、时间联合筛选 (3列)
|
|
var query = new StringBuilder(" 1 = 1 "); //不排除故障现象考试
|
|
var user = DataService.BLL.admin_user.load_login();
|
|
var userModel = bll_user.GetModel(user.user_id);
|
|
|
|
|
|
//开始时间、结束时间
|
|
if (!string.IsNullOrWhiteSpace(start_date))
|
|
{
|
|
query.AppendFormat(" AND T1.create_time >= '{0}' ", start_date);
|
|
}
|
|
if (!string.IsNullOrWhiteSpace(end_date))
|
|
{
|
|
query.AppendFormat(" AND T1.create_time < '{0}' ", end_date);
|
|
}
|
|
|
|
string user_id = Request.Params["Id"];
|
|
query.AppendFormat(" AND T1.user_id = '{0}' ", user_id);
|
|
|
|
//科目
|
|
if (!string.IsNullOrWhiteSpace(dp_subject_name.SelectedValue))
|
|
{
|
|
query.AppendFormat(" AND T1.subject = '{0}' ", dp_subject_name.SelectedValue);
|
|
}
|
|
|
|
query.AppendFormat(" AND T1.sjms = '0' ");
|
|
|
|
var where = query.ToString();
|
|
var order = " order by T1.create_time desc";
|
|
var dataSet = bll_exam_result.QueryResult(where, order).Tables[0];
|
|
|
|
return dataSet;
|
|
|
|
#region 旧的查询条件
|
|
/*
|
|
|
|
if (!string.IsNullOrWhiteSpace(dpsjms.SelectedValue))
|
|
{
|
|
query.AppendFormat(" AND sjms = '{0}' ", dpsjms.SelectedValue);
|
|
}
|
|
*/
|
|
#endregion
|
|
|
|
|
|
}
|
|
|
|
protected override void DataLoad()
|
|
{
|
|
/*
|
|
var start_date = start.SelectedDate.HasValue ? start.SelectedDate.Value.ToString("yyyy-MM-dd") : "";
|
|
var end_date = end.SelectedDate.HasValue ? end.SelectedDate.Value.ToString("yyyy-MM-dd") : "";
|
|
var examine_type = 1;
|
|
var data = bll.GetListDetailByName(user_name.Text, subject_name.Text, start_date, end_date, examine_type);
|
|
*/
|
|
var data = getDataSet();
|
|
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 GrdList_DeleteCommand(object sender, GridCommandEventArgs e)
|
|
{
|
|
string Id = (e.Item as GridDataItem).OwnerTableView.DataKeyValues[e.Item.ItemIndex]["Id"].ToString();
|
|
bll.Delete(Id);
|
|
DataLoad();
|
|
}
|
|
|
|
protected override void AjaxManager_AjaxRequest(object sender, AjaxRequestEventArgs e)
|
|
{
|
|
|
|
}
|
|
|
|
protected void btnSelect_Click(object sender, EventArgs e)
|
|
{
|
|
DataLoad();
|
|
}
|
|
|
|
protected void btnDelete_Click(object sender, EventArgs e)
|
|
{
|
|
bll.Delete(IdInput.Value);
|
|
|
|
DataLoad();
|
|
}
|
|
|
|
public void getvalue()
|
|
{
|
|
|
|
}
|
|
|
|
protected void btnBatchDel_Click(object sender, EventArgs e)
|
|
{
|
|
var count = dataList.SelectedItems.Count;
|
|
if (count <= 0)
|
|
{
|
|
RadAjaxManager1.Alert("请选择需要删除的记录!");
|
|
return;
|
|
}
|
|
|
|
List<DataService.Model.exam_result> list_result = new List<DataService.Model.exam_result>();
|
|
foreach (var obj in dataList.SelectedItems)
|
|
{
|
|
GridDataItem item = obj as GridDataItem;
|
|
var result_id = item.GetDataKeyValue("id").ToString();
|
|
var model = bll_exam_result.GetModel(result_id);
|
|
if (null != model)
|
|
{
|
|
list_result.Add(model);
|
|
}
|
|
}
|
|
var flag = false;
|
|
//批量删除
|
|
if (list_result.Count > 0)
|
|
{
|
|
for (int i = 0; i < list_result.Count; i++)
|
|
{
|
|
var result = list_result[i];
|
|
if (bll_exam_result.Delete(result.id))
|
|
{
|
|
flag = true;
|
|
bll_exam_result_detail.DeleteByResultId(result.id);
|
|
}
|
|
}
|
|
}
|
|
|
|
if (flag)
|
|
{
|
|
DataLoad();
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// 导出excel
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void btnExport_Click(object sender, EventArgs e)
|
|
{
|
|
var data = getDataSet();
|
|
string filePath = Server.MapPath("~/Download/");
|
|
if (!Directory.Exists(filePath))
|
|
{
|
|
Directory.CreateDirectory(filePath);
|
|
}
|
|
string fileName = string.Format("{0}.xls", "成绩列表_" + DateTime.Now.ToString("yyyyMMddHHmmss"));
|
|
filePath = filePath + fileName;
|
|
|
|
//学校 班级 姓名 账号 科目名称 实践模式 总分 得分 考试时间
|
|
var table = new DataTable();
|
|
|
|
table.Columns.Add("学校");
|
|
table.Columns.Add("班级");
|
|
table.Columns.Add("姓名");
|
|
table.Columns.Add("账号");
|
|
|
|
table.Columns.Add("科目名称");
|
|
//table.Columns.Add("实践模式");
|
|
table.Columns.Add("总分");
|
|
table.Columns.Add("得分");
|
|
table.Columns.Add("考试时间");
|
|
|
|
//SELECT T1.id,T1.user_id,T1.subject,T1.sjms ,T1.total,T1.score,T1.create_time ,T2.login_name,T2.real_name,T2.school_id,T2.grade,T3.school FROM
|
|
for (int i = 0; i < data.Rows.Count; i++)
|
|
{
|
|
var row = table.NewRow();
|
|
var r = data.Rows[i];
|
|
row["学校"] = r["school"].ToString();
|
|
row["班级"] = r["grade"].ToString();
|
|
row["姓名"] = r["real_name"].ToString();
|
|
row["账号"] = r["login_name"].ToString();
|
|
|
|
row["科目名称"] = r["subject"].ToString();
|
|
//row["实践模式"] = r["sjms"].ToString();
|
|
row["总分"] = r["total"].ToString();
|
|
row["得分"] = r["score"].ToString();
|
|
row["考试时间"] = Convert.ToDateTime(r["create_time"]).ToString("yyyy-MM-dd HH:mm:ss");
|
|
table.Rows.Add(row);
|
|
}
|
|
|
|
/*
|
|
foreach (var item in data.Rows)
|
|
{
|
|
var row = table.NewRow();
|
|
row["省"] = item.province;
|
|
row["市"] = item.city;
|
|
row["单位"] = item.unit_name;
|
|
|
|
row["姓名"] = item.real_name;
|
|
//row["性别"] = item.major;
|
|
//row["账号"] = item.login_name;
|
|
row["登录账号"] = item.examine_term;
|
|
|
|
row["科目名称"] = item.subject_name;
|
|
row["船型"] = item.examine_kind_dsc;
|
|
row["成绩"] = item.total_result;
|
|
row["考试时间"] = item.examine_time.Value.ToString("yyyy-MM-dd HH:mm:ss");
|
|
table.Rows.Add(row);
|
|
}
|
|
*/
|
|
|
|
VRS.Util.Import.DateTableToExcel(table, filePath);
|
|
FileInfo fileInfo = new FileInfo(filePath);
|
|
Response.Clear();
|
|
Response.ClearContent();
|
|
Response.ClearHeaders();
|
|
Response.AddHeader("Content-Disposition", "attachment;filename=" + fileName);
|
|
Response.AddHeader("Content-Length", fileInfo.Length.ToString());
|
|
Response.AddHeader("Content-Transfer-Encoding", "binary");
|
|
Response.ContentType = "application/octet-stream";
|
|
Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312");
|
|
Response.WriteFile(fileInfo.FullName);
|
|
Response.Flush();
|
|
Response.End();
|
|
}
|
|
}
|
|
} |