20231113专项检查列表页面优化

This commit is contained in:
2023-11-13 14:19:41 +08:00
parent 7755589aa4
commit e3b8757e91
2 changed files with 141 additions and 48 deletions
@@ -1,4 +1,7 @@
using System; using FineUIPro;
using NPOI.SS.Formula.Functions;
using System;
using System.Collections;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
@@ -9,6 +12,91 @@ namespace BLL
/// </summary> /// </summary>
public static class Check_CheckSpecialService public static class Check_CheckSpecialService
{ {
public static Model.SGGLDB db = Funs.DB;
#region
/// <summary>
/// 记录数
/// </summary>
public static int count
{
get;
set;
}
/// <summary>
/// 定义变量
/// </summary>
private static IQueryable<Model.Check_CheckSpecial> getDataLists = from x in db.Check_CheckSpecial
select x;
/// <summary>
/// 列表
/// </summary>
/// <param name="projectId"></param>
/// <param name="states"></param>
/// <param name="checkType"></param>
/// <param name="checkItemSetId"></param>
/// <param name="startTime"></param>
/// <param name="endTime"></param>
/// <param name="Grid1"></param>
/// <returns></returns>
public static IEnumerable getListData(string projectId, string states, string checkType, string checkItemSetId, DateTime? startTime, DateTime? endTime, Grid Grid1)
{
IQueryable<Model.Check_CheckSpecial> getDataList = getDataLists;
if (!string.IsNullOrEmpty(projectId))
{
getDataList = getDataList.Where(e => e.ProjectId == projectId);
}
if (states != "-1")
{
getDataList = getDataList.Where(e => e.States == states);
}
if (checkType != "-1")
{
if (checkType == "1")
{
getDataList = getDataList.Where(e => e.CheckType == checkType);
}
else
{
getDataList = getDataList.Where(e => e.CheckType == checkType || e.CheckType == null );
}
}
if (!string.IsNullOrEmpty(checkItemSetId) && checkItemSetId != Const._Null)
{
getDataList = getDataList.Where(e => e.CheckItemSetId == checkItemSetId);
}
if (startTime.HasValue)
{
getDataList = getDataList.Where(e => e.CheckTime >= startTime);
}
if (endTime.HasValue)
{
getDataList = getDataList.Where(e => e.CheckTime <= endTime);
}
count = getDataList.Count();
if (count == 0)
{
return null;
}
getDataList = SortConditionHelper.SortingAndPaging(getDataList, Grid1.SortField, Grid1.SortDirection, Grid1.PageIndex, Grid1.PageSize);
return from x in getDataList
select new
{
x.CheckSpecialId,
x.CheckTime,
x.CheckSpecialCode,
CheckItemName =db.Technique_CheckItemSet .First(y=>y.CheckItemSetId ==x. CheckItemSetId).CheckItemName,
CheckTypeName = x.CheckType == "1" ? "联合检查" : "专项检查",
StatesName = x.States == "2" ? "已完成" : (x.States == "1" ? "待整改" : "待提交"),
};
}
#endregion
/// <summary> /// <summary>
/// 根据专项检查ID获取专项检查信息 /// 根据专项检查ID获取专项检查信息
/// </summary> /// </summary>
@@ -57,57 +57,62 @@ namespace FineUIPro.Web.HSSE.Check
/// </summary> /// </summary>
private void BindGrid() private void BindGrid()
{ {
string strSql = @"SELECT CheckSpecial.CheckSpecialId,CodeRecords.Code AS CheckSpecialCode," //string strSql = @"SELECT CheckSpecial.CheckSpecialId,CodeRecords.Code AS CheckSpecialCode,"
+ @" CheckItemSet.CheckItemName,CheckSpecial.CheckTime,(CASE WHEN CheckSpecial.CheckType ='1' THEN '联合检查' ELSE '专项检查' END) AS CheckTypeName" // + @" CheckItemSet.CheckItemName,CheckSpecial.CheckTime,(CASE WHEN CheckSpecial.CheckType ='1' THEN '联合检查' ELSE '专项检查' END) AS CheckTypeName"
+ @" ,(CASE WHEN CheckSpecial.States='2' THEN '已完成' WHEN CheckSpecial.States='1' THEN '待整改' ELSE '待提交' END) AS StatesName" // + @" ,(CASE WHEN CheckSpecial.States='2' THEN '已完成' WHEN CheckSpecial.States='1' THEN '待整改' ELSE '待提交' END) AS StatesName"
+ @" FROM Check_CheckSpecial AS CheckSpecial " // + @" FROM Check_CheckSpecial AS CheckSpecial "
+ @" LEFT JOIN Sys_CodeRecords AS CodeRecords ON CheckSpecial.CheckSpecialId=CodeRecords.DataId " // + @" LEFT JOIN Sys_CodeRecords AS CodeRecords ON CheckSpecial.CheckSpecialId=CodeRecords.DataId "
+ @" LEFT JOIN Technique_CheckItemSet AS CheckItemSet ON CheckItemSet.CheckItemSetId = CheckSpecial.CheckItemSetId where 1=1"; // + @" LEFT JOIN Technique_CheckItemSet AS CheckItemSet ON CheckItemSet.CheckItemSetId = CheckSpecial.CheckItemSetId where 1=1";
List<SqlParameter> listStr = new List<SqlParameter>(); //List<SqlParameter> listStr = new List<SqlParameter>();
strSql += " AND CheckSpecial.ProjectId = @ProjectId"; //strSql += " AND CheckSpecial.ProjectId = @ProjectId";
listStr.Add(new SqlParameter("@ProjectId", this.ProjectId)); //listStr.Add(new SqlParameter("@ProjectId", this.ProjectId));
if (this.rbStates.SelectedValue != "-1") //if (this.rbStates.SelectedValue != "-1")
{ //{
strSql += " AND CheckSpecial.States = @States"; // strSql += " AND CheckSpecial.States = @States";
listStr.Add(new SqlParameter("@States", this.rbStates.SelectedValue)); // listStr.Add(new SqlParameter("@States", this.rbStates.SelectedValue));
} //}
if (this.rbType.SelectedValue != "-1") //if (this.rbType.SelectedValue != "-1")
{ //{
if (this.rbType.SelectedValue == "1") // if (this.rbType.SelectedValue == "1")
{ // {
strSql += " AND CheckSpecial.CheckType = @CheckType"; // strSql += " AND CheckSpecial.CheckType = @CheckType";
listStr.Add(new SqlParameter("@CheckType", this.rbType.SelectedValue)); // listStr.Add(new SqlParameter("@CheckType", this.rbType.SelectedValue));
} // }
else // else
{ // {
strSql += " AND (CheckSpecial.CheckType = @CheckType OR CheckSpecial.CheckType IS NULL) "; // strSql += " AND (CheckSpecial.CheckType = @CheckType OR CheckSpecial.CheckType IS NULL) ";
listStr.Add(new SqlParameter("@CheckType", this.rbType.SelectedValue)); // listStr.Add(new SqlParameter("@CheckType", this.rbType.SelectedValue));
} // }
} //}
if (this.drpSupCheckItemSet.SelectedValue != BLL.Const._Null) //if (this.drpSupCheckItemSet.SelectedValue != BLL.Const._Null)
{ //{
strSql += " AND CheckSpecial.CheckItemSetId = @CheckItemSetId"; // strSql += " AND CheckSpecial.CheckItemSetId = @CheckItemSetId";
listStr.Add(new SqlParameter("@CheckItemSetId", this.drpSupCheckItemSet.SelectedValue)); // listStr.Add(new SqlParameter("@CheckItemSetId", this.drpSupCheckItemSet.SelectedValue));
} //}
if (!string.IsNullOrEmpty(this.txtStartTime.Text.Trim())) //if (!string.IsNullOrEmpty(this.txtStartTime.Text.Trim()))
{ //{
strSql += " AND CheckSpecial.CheckTime >= @StartTime"; // strSql += " AND CheckSpecial.CheckTime >= @StartTime";
listStr.Add(new SqlParameter("@StartTime", this.txtStartTime.Text.Trim())); // listStr.Add(new SqlParameter("@StartTime", this.txtStartTime.Text.Trim()));
} //}
if (!string.IsNullOrEmpty(this.txtEndTime.Text.Trim())) //if (!string.IsNullOrEmpty(this.txtEndTime.Text.Trim()))
{ //{
strSql += " AND CheckSpecial.CheckTime <= @EndTime"; // strSql += " AND CheckSpecial.CheckTime <= @EndTime";
listStr.Add(new SqlParameter("@EndTime", this.txtEndTime.Text.Trim())); // listStr.Add(new SqlParameter("@EndTime", this.txtEndTime.Text.Trim()));
} //}
SqlParameter[] parameter = listStr.ToArray(); //SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter); //DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
//Grid1.RecordCount = tb.Rows.Count;
//var table = this.GetPagedDataTable(Grid1, tb);
//Grid1.DataSource = table;
//Grid1.DataBind();
Grid1.RecordCount = tb.Rows.Count;
var table = this.GetPagedDataTable(Grid1, tb);
Grid1.DataSource = table; var getData = Check_CheckSpecialService.getListData(this.ProjectId, this.rbStates.SelectedValue, this.rbType.SelectedValue, this.drpSupCheckItemSet.SelectedValue,
Funs.GetNewDateTime(txtStartTime.Text.Trim()), Funs.GetNewDateTime(this.txtEndTime.Text.Trim()), Grid1);
Grid1.RecordCount = Check_CheckSpecialService.count;
Grid1.DataSource = getData;
Grid1.DataBind(); Grid1.DataBind();
} }
#endregion #endregion