CNCEC_SUBQHSE_WUHUAN/SGGL/FineUIPro.Web/DataShow/EduTrain.aspx.cs

293 lines
12 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using BLL;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
namespace FineUIPro.Web.DataShow
{
public partial class EduTrain : PageBase
{
#region
/// <summary>
/// 加载页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Funs.DropDownPageSize(this.ddlPageSize);
ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
BLL.ProjectService.InitProjectDropDownList(this.drpProject, true);
// 绑定表格t
BindGrid();
this.Panel1.Title = "安全教育(" + BLL.UnitService.GetUnitNameByUnitId(BLL.Const.UnitId_CWCEC) + "";
}
}
/// <summary>
/// 绑定数据
/// </summary>
private void BindGrid()
{
string strSql = string.Empty;
List<SqlParameter> listStr = new List<SqlParameter>();
List<SqlParameter> listStrSum = new List<SqlParameter>();
//strSql = @"select TrainRecord.TrainTypeId,TrainRecord.TrainingId,
// TrainRecord.TrainTitle,
// Project.ProjectId,
// Project.ProjectCode,
// Project.ProjectName,
// TrainRecord.TrainStartDate,
// TrainRecord.TrainEndDate,
// TrainRecord.TrainPersonNum,
// UnitName= STUFF((SELECT ',' + UnitName FROM dbo.Base_Unit where PATINDEX('%,' + RTRIM(UnitId) + ',%',',' +TrainRecord.UnitIds + ',')>0 FOR XML PATH('')), 1, 1,'')
// from EduTrain_TrainRecord AS TrainRecord
// LEFT JOIN Base_TrainType AS TrainType ON TrainRecord.TrainTypeId=TrainType.TrainTypeId
// LEFT JOIN Base_Project AS Project ON TrainRecord.ProjectId=Project.ProjectId
// WHERE 1=1 ";
//strSql += " AND TrainRecord.TrainTypeId =@TrainType";
//listStr.Add(new SqlParameter("@TrainType", this.rbType.SelectedValue));
//当前页数
int pageIndex = Grid1.PageIndex + 1;
//每页显示条数
int pageSize = Grid1.PageSize;
strSql = @"select*from(
select ROW_NUMBER() OVER(Order by ProjectCode desc) AS RowNumber,
* from (
select
'本系统' as Ttype,
TrainRecord.TrainTypeId,
TrainRecord.TrainingId,
TrainRecord.TrainTitle,
Project.ProjectId,
Project.ProjectCode,
Project.ProjectName,
TrainRecord.TrainStartDate,
TrainRecord.TrainEndDate,
TrainRecord.TrainPersonNum,
UnitName= STUFF((SELECT ',' + UnitName FROM dbo.Base_Unit where PATINDEX('%,' + RTRIM(UnitId) + ',%',',' +TrainRecord.UnitIds + ',')>0 FOR XML PATH('')), 1, 1,'')
from EduTrain_TrainRecord AS TrainRecord
LEFT JOIN Base_TrainType AS TrainType ON TrainRecord.TrainTypeId=TrainType.TrainTypeId
LEFT JOIN Base_Project AS Project ON TrainRecord.ProjectId=Project.ProjectId
UNION ALL
select
'博晟' as Ttype,
TrainType as TrainTypeId,
Id as TrainingId,
RecordName as TrainTitle,
Project.ProjectId,
Project.ProjectCode,
Project.ProjectName,
TrainStartDate,
TrainEndDate,
PersonCount as TrainPersonNum,
TrainDepart as UnitName
From Bo_Sheng_Train F
LEFT JOIN Base_Project AS Project ON F.ProjectId=Project.ProjectId
)f WHERE 1=1 ";
#region
var strSqlSum = @"select Count(*)as allCount from(
select ROW_NUMBER() OVER(Order by ProjectCode desc) AS RowNumber,
* from (
select
'1' as Ttype,
TrainRecord.TrainTypeId,
TrainRecord.TrainingId,
TrainRecord.TrainTitle,
Project.ProjectId,
Project.ProjectCode,
Project.ProjectName,
TrainRecord.TrainStartDate,
TrainRecord.TrainEndDate,
TrainRecord.TrainPersonNum,
UnitName= STUFF((SELECT ',' + UnitName FROM dbo.Base_Unit where PATINDEX('%,' + RTRIM(UnitId) + ',%',',' +TrainRecord.UnitIds + ',')>0 FOR XML PATH('')), 1, 1,'')
from EduTrain_TrainRecord AS TrainRecord
LEFT JOIN Base_TrainType AS TrainType ON TrainRecord.TrainTypeId=TrainType.TrainTypeId
LEFT JOIN Base_Project AS Project ON TrainRecord.ProjectId=Project.ProjectId
UNION ALL
select
'博晟' as Ttype,
TrainType as TrainTypeId,
Id as TrainingId,
RecordName as TrainTitle,
Project.ProjectId,
Project.ProjectCode,
Project.ProjectName,
TrainStartDate,
TrainEndDate,
PersonCount as TrainPersonNum,
TrainDepart as UnitName
From Bo_Sheng_Train F
LEFT JOIN Base_Project AS Project ON F.ProjectId=Project.ProjectId
)f WHERE 1=1";
#endregion
if (this.drpProject.SelectedValue != Const._Null)
{
strSql += " AND ProjectId = @ProjectId";
listStr.Add(new SqlParameter("@ProjectId", this.drpProject.SelectedValue));
strSqlSum += " AND ProjectId = @ProjectId";
listStrSum.Add(new SqlParameter("@ProjectId", this.drpProject.SelectedValue));
}
if (!string.IsNullOrEmpty(this.txtStartTime.Text))
{
strSql += " AND TrainStartDate >=@StartTime";
listStr.Add(new SqlParameter("@StartTime", this.txtStartTime.Text));
strSqlSum += " AND TrainStartDate >=@StartTime";
listStrSum.Add(new SqlParameter("@StartTime", this.txtStartTime.Text));
}
if (!string.IsNullOrEmpty(this.txtEndTime.Text))
{
strSql += " AND TrainStartDate <=@EndTime";
listStr.Add(new SqlParameter("@EndTime", this.txtEndTime.Text));
strSqlSum += " AND TrainStartDate <=@EndTime";
listStrSum.Add(new SqlParameter("@EndTime", this.txtStartTime.Text));
}
if (!string.IsNullOrEmpty(this.rbType.SelectedValue))
{
strSql += " And ( TrainTypeId='" + rbType.SelectedValue + "' or ";
strSqlSum+= " And ( TrainTypeId='" + rbType.SelectedValue + "' or ";
if (rbType.SelectedValue == "dfb6a37e-4412-4ba9-ad59-3bc505bc21f7")
{
strSql += " TrainTypeId like '%入场%' ) ";
strSqlSum += " TrainTypeId like '%入场%' ) ";
}
else if (rbType.SelectedValue == "c1a513bb-a547-45b0-944d-b0dd88f06f82")
{
strSql += " TrainTypeId like '%其他%' ) ";
strSqlSum += " TrainTypeId like '%其他%' ) ";
}
else {
strSql += " TrainTypeId like '%专项%' ) ";
strSqlSum += " TrainTypeId like '%专项%' ) ";
}
}
strSql += " ) b where b.RowNumber BETWEEN(@pageIndex-1)*@pageSize + 1 and @pageIndex*@pageSize order by RowNumber asc";
strSqlSum+= " ) b ";
listStr.Add(new SqlParameter("@pageIndex", pageIndex));
listStr.Add(new SqlParameter("@pageSize", pageSize));
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
#region
DataTable tbSum = SQLHelper.GetDataTableRunText(strSqlSum, listStrSum.ToArray());
Grid1.RecordCount = Convert.ToInt32(tbSum.Rows[0]["allcount"].ToString());
#endregion
Grid1.DataSource = tb;
Grid1.DataBind();
}
#endregion
#region
/// <summary>
/// 查询
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void TextBox_TextChanged(object sender, EventArgs e)
{
Grid1.PageIndex = 0;
this.BindGrid();
}
#endregion
#region
/// <summary>
/// 分页
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
{
BindGrid();
}
/// <summary>
/// 排序
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_Sort(object sender, GridSortEventArgs e)
{
BindGrid();
}
/// <summary>
/// 分页显示条数下拉框
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
{
Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
BindGrid();
}
/// <summary>
/// 关闭弹出窗
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Window1_Close(object sender, WindowCloseEventArgs e)
{
BindGrid();
}
#endregion
#region Grid双击事件
/// <summary>
/// Grid行双击事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
{
EditData();
}
/// <summary>
///
/// </summary>
private void EditData()
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
return;
}
var tType= Grid1.SelectedRow.DataKeys[1].ToString();
if (tType!="博晟")
{
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("../HSSE/EduTrain/TrainRecordView.aspx?TrainingId={0}", Grid1.SelectedRowID, "查看 - ")));
}
}
#endregion
protected void btnView_Click(object sender, EventArgs e)
{
EditData();
}
}
}