gyhlw_dotnet/网站项目/VRS/Management/VSAT/ResultStudentQuery.aspx.cs

159 lines
5.1 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.VSAT
{
public partial class ResultStudentQuery : BaseListPage
{
DataService.BLL.pro_result bll = new DataService.BLL.pro_result();
DataService.BLL.admin_user bll_user = new DataService.BLL.admin_user();
protected override void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
string login_name = Request.QueryString["login_name"];
var user = bll_user.GetModelByJobNumber(login_name);
if (null != user)
{
span_login_name.InnerHtml = user.login_name;
span_real_name.InnerHtml = user.real_name;
}
DataLoad();
}
}
public List<DataService.Model.pro_result> getDataSet()
{
string login_name = Request.QueryString["login_name"];
var query = new StringBuilder(" 1 = 1 and login_name='" + login_name + "' "); //不排除故障现象考试
var data = bll.GetModelList(query.ToString());
return data.OrderByDescending(s => s.examine_time).ToList(); ;
}
protected override void DataLoad()
{
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()
{
}
/// <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("考试时间");
foreach (var item in data)
{
var row = table.NewRow();
row["入学"] = item.grade;
row["专业"] = item.major;
row["学期"] = item.examine_term;
row["考试种类"] = item.examine_kind;
row["学号"] = item.login_name;
row["姓名"] = item.real_name;
row["科目名称"] = item.subject_name;
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();
}
}
}