338 lines
12 KiB
C#
338 lines
12 KiB
C#
|
using System;
|
|||
|
using System.Collections.Generic;
|
|||
|
using System.Data;
|
|||
|
using System.Data.SqlClient;
|
|||
|
using System.Linq;
|
|||
|
using BLL;
|
|||
|
|
|||
|
namespace FineUIPro.Web.ZHGL.ServerCheck
|
|||
|
{
|
|||
|
public partial class CheckNotice : PageBase
|
|||
|
{
|
|||
|
#region 定义项
|
|||
|
/// <summary>
|
|||
|
/// 监督检查主键
|
|||
|
/// </summary>
|
|||
|
public string CheckInfoId
|
|||
|
{
|
|||
|
get
|
|||
|
{
|
|||
|
return (string)ViewState["CheckInfoId"];
|
|||
|
}
|
|||
|
set
|
|||
|
{
|
|||
|
ViewState["CheckInfoId"] = value;
|
|||
|
}
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 加载页面
|
|||
|
/// <summary>
|
|||
|
/// 加载页面
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void Page_Load(object sender, EventArgs e)
|
|||
|
{
|
|||
|
if (!IsPostBack)
|
|||
|
{
|
|||
|
////权限按钮方法
|
|||
|
this.InitTreeMenu();
|
|||
|
this.CheckInfoId = string.Empty;
|
|||
|
}
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 加载树
|
|||
|
/// <summary>
|
|||
|
/// 加载树
|
|||
|
/// </summary>
|
|||
|
private void InitTreeMenu()
|
|||
|
{
|
|||
|
this.tvControlItem.Nodes.Clear();
|
|||
|
this.tvControlItem.ShowBorder = false;
|
|||
|
this.tvControlItem.ShowHeader = false;
|
|||
|
this.tvControlItem.EnableIcons = true;
|
|||
|
this.tvControlItem.AutoScroll = true;
|
|||
|
this.tvControlItem.EnableSingleClickExpand = true;
|
|||
|
TreeNode rootNode = new TreeNode
|
|||
|
{
|
|||
|
Text = "检查方式-年月",
|
|||
|
NodeID = "0",
|
|||
|
Expanded = true
|
|||
|
};
|
|||
|
|
|||
|
this.tvControlItem.Nodes.Add(rootNode);
|
|||
|
var checkInfoLists = (from x in Funs.DB.Check_CheckInfo select x).ToList();
|
|||
|
if (!string.IsNullOrEmpty(this.txtCheckStartTimeS.Text))
|
|||
|
{
|
|||
|
checkInfoLists = checkInfoLists.Where(x => x.CheckStartTime >= Funs.GetNewDateTime(this.txtCheckStartTimeS.Text)).ToList();
|
|||
|
}
|
|||
|
if (!string.IsNullOrEmpty(this.txtCheckEndTimeS.Text))
|
|||
|
{
|
|||
|
checkInfoLists = checkInfoLists.Where(x => x.CheckEndTime <= Funs.GetNewDateTime(this.txtCheckEndTimeS.Text)).ToList();
|
|||
|
}
|
|||
|
|
|||
|
var checkTypeList = (from x in checkInfoLists select x.CheckTypeName).Distinct();
|
|||
|
foreach (var item in checkTypeList)
|
|||
|
{
|
|||
|
TreeNode rootUnitNode = new TreeNode
|
|||
|
{
|
|||
|
Text = item,
|
|||
|
NodeID = item,
|
|||
|
Expanded = true,
|
|||
|
ToolTip = "检查方式"
|
|||
|
};//定义根节点
|
|||
|
rootNode.Nodes.Add(rootUnitNode);
|
|||
|
var checkInfoList = (from x in checkInfoLists where x.CheckTypeName == item select x).ToList();
|
|||
|
this.BindNodes(rootUnitNode, checkInfoList);
|
|||
|
}
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 绑定树节点
|
|||
|
/// <summary>
|
|||
|
/// 绑定树节点
|
|||
|
/// </summary>
|
|||
|
/// <param name="node"></param>
|
|||
|
private void BindNodes(TreeNode node, List<Model.Check_CheckInfo> checkInfoList)
|
|||
|
{
|
|||
|
if (node.ToolTip == "检查方式")
|
|||
|
{
|
|||
|
var pointListMonth = (from x in checkInfoList
|
|||
|
orderby x.CheckStartTime descending
|
|||
|
select string.Format("{0:yyyy-MM}", x.CheckStartTime)).Distinct();
|
|||
|
foreach (var item in pointListMonth)
|
|||
|
{
|
|||
|
TreeNode newNode = new TreeNode
|
|||
|
{
|
|||
|
Text = item,
|
|||
|
NodeID = item + "|" + node.NodeID,
|
|||
|
ToolTip = "月份"
|
|||
|
};
|
|||
|
node.Nodes.Add(newNode);
|
|||
|
this.BindNodes(newNode, checkInfoList);
|
|||
|
}
|
|||
|
}
|
|||
|
else if (node.ToolTip == "月份")
|
|||
|
{
|
|||
|
var dReports = from x in checkInfoList
|
|||
|
where string.Format("{0:yyyy-MM}", x.CheckStartTime) == node.Text
|
|||
|
orderby x.CheckStartTime descending
|
|||
|
select x;
|
|||
|
foreach (var item in dReports)
|
|||
|
{
|
|||
|
TreeNode newNode = new TreeNode();
|
|||
|
var units = BLL.UnitService.GetUnitByUnitId(item.SubjectUnitId);
|
|||
|
if (units != null)
|
|||
|
{
|
|||
|
newNode.Text = (item.CheckStartTime.Value.Day).ToString().PadLeft(2, '0') + "日:" + units.UnitName;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
newNode.Text = (item.CheckStartTime.Value.Day).ToString().PadLeft(2, '0') + "日:未知单位";
|
|||
|
}
|
|||
|
newNode.NodeID = item.CheckInfoId;
|
|||
|
newNode.EnableClickEvent = true;
|
|||
|
node.Nodes.Add(newNode);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 点击TreeView
|
|||
|
/// <summary>
|
|||
|
/// 点击TreeView
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void tvControlItem_NodeCommand(object sender, TreeCommandEventArgs e)
|
|||
|
{
|
|||
|
this.CheckInfoId = this.tvControlItem.SelectedNodeID;
|
|||
|
this.txtCheckType.Text = this.tvControlItem.SelectedNode.ParentNode.ParentNode.Text;
|
|||
|
this.PageInfoLoad(); ///页面输入保存信息
|
|||
|
this.BindGrid1();
|
|||
|
this.BindGrid2();
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 加载页面输入保存信息
|
|||
|
/// <summary>
|
|||
|
/// 加载页面输入保存信息
|
|||
|
/// </summary>
|
|||
|
private void PageInfoLoad()
|
|||
|
{
|
|||
|
var checkInfo = Funs.DB.Check_CheckInfo.FirstOrDefault(x => x.CheckInfoId == this.CheckInfoId);
|
|||
|
if (checkInfo != null)
|
|||
|
{
|
|||
|
this.txtCheckStartTime.Text = string.Format("{0:yyyy-MM-dd}", checkInfo.CheckStartTime);
|
|||
|
this.txtCheckEndTime.Text = string.Format("{0:yyyy-MM-dd}", checkInfo.CheckEndTime);
|
|||
|
this.drpSubjectUnit.Text = BLL.UnitService.GetUnitNameByUnitId(checkInfo.SubjectUnitId);
|
|||
|
this.txtCheckType.Text = checkInfo.CheckTypeName;
|
|||
|
this.txtSubjectUnitMan.Text = checkInfo.SubjectUnitMan;
|
|||
|
this.txtSubjectUnitAdd.Text = checkInfo.SubjectUnitAdd;
|
|||
|
this.txtSubjectUnitTel.Text = checkInfo.SubjectUnitTel;
|
|||
|
this.txtSubjectObject.Text = checkInfo.SubjectObject;
|
|||
|
this.txtCheckTeamLeader.Text = checkInfo.CheckTeamLeader;
|
|||
|
this.txtCompileMan.Text = checkInfo.CompileMan;
|
|||
|
this.txtCompileDate.Text = string.Format("{0:yyyy-MM-dd}", checkInfo.CompileDate);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
this.drpSubjectUnit.Text = string.Empty;
|
|||
|
this.txtSubjectObject.Text = string.Empty;
|
|||
|
this.txtSubjectUnitMan.Text = string.Empty;
|
|||
|
this.txtSubjectUnitTel.Text = string.Empty;
|
|||
|
this.txtSubjectUnitAdd.Text = string.Empty;
|
|||
|
this.txtCheckStartTime.Text = string.Empty;
|
|||
|
this.txtCheckEndTime.Text = string.Empty;
|
|||
|
this.txtCheckType.Text = string.Empty;
|
|||
|
this.txtCheckTeamLeader.Text = string.Empty;
|
|||
|
this.txtCompileMan.Text = string.Empty;
|
|||
|
this.txtCompileDate.Text = string.Empty;
|
|||
|
this.CheckInfoId = string.Empty;
|
|||
|
}
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 数据绑定
|
|||
|
/// <summary>
|
|||
|
/// 数据绑定
|
|||
|
/// </summary>
|
|||
|
private void BindGrid1()
|
|||
|
{
|
|||
|
string strSql = @"SELECT CheckFileId,CheckInfoId,CheckFileName,SortIndex,Remark FROM dbo.Check_CheckInfo_CheckFile WHERE 1=1 ";
|
|||
|
List<SqlParameter> listStr = new List<SqlParameter>();
|
|||
|
strSql += " AND CheckInfoId = @CheckInfoId";
|
|||
|
listStr.Add(new SqlParameter("@CheckInfoId", this.CheckInfoId));
|
|||
|
SqlParameter[] parameter = listStr.ToArray();
|
|||
|
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
|
|||
|
|
|||
|
Grid1.RecordCount = tb.Rows.Count;
|
|||
|
//tb = GetFilteredTable(Grid1.FilteredData, tb);
|
|||
|
var table = this.GetPagedDataTable(Grid1, tb);
|
|||
|
Grid1.DataSource = table;
|
|||
|
Grid1.DataBind();
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 数据绑定
|
|||
|
/// </summary>
|
|||
|
private void BindGrid2()
|
|||
|
{
|
|||
|
string strSql = @"SELECT CheckTeamId,CheckInfoId,UserName,Sex,UnitName,SortIndex,PostName,WorkTitle,CheckPostName,CheckDate FROM dbo.Check_CheckInfo_CheckTeam"
|
|||
|
+ @" WHERE 1=1 ";
|
|||
|
List<SqlParameter> listStr = new List<SqlParameter>();
|
|||
|
strSql += " AND CheckInfoId = @CheckInfoId";
|
|||
|
listStr.Add(new SqlParameter("@CheckInfoId", this.CheckInfoId));
|
|||
|
SqlParameter[] parameter = listStr.ToArray();
|
|||
|
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
|
|||
|
|
|||
|
Grid2.RecordCount = tb.Rows.Count;
|
|||
|
//tb = GetFilteredTable(Grid2.FilteredData, tb);
|
|||
|
var table = this.GetPagedDataTable(Grid2, tb);
|
|||
|
Grid2.DataSource = table;
|
|||
|
Grid2.DataBind();
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 排序
|
|||
|
/// <summary>
|
|||
|
/// 排序
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void Grid1_Sort(object sender, GridSortEventArgs e)
|
|||
|
{
|
|||
|
BindGrid1();
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 排序
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void Grid2_Sort(object sender, GridSortEventArgs e)
|
|||
|
{
|
|||
|
BindGrid2();
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 查看检查办法
|
|||
|
/// <summary>
|
|||
|
/// 查看检查办法
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void btnFind_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
PageContext.RegisterStartupScript(Window3.GetShowReference(String.Format("CheckInfoTemplate.aspx")));
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 组面板 折叠展开事件
|
|||
|
/// <summary>
|
|||
|
/// 组面板 折叠展开事件
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void Gridl_Collapse(object sender, EventArgs e)
|
|||
|
{
|
|||
|
if (this.Grid1.Collapsed)
|
|||
|
{
|
|||
|
this.Grid2.Collapsed = false;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 组面板 折叠展开事件
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void Grid2_Collapse(object sender, EventArgs e)
|
|||
|
{
|
|||
|
if (this.Grid2.Collapsed)
|
|||
|
{
|
|||
|
this.Grid1.Collapsed = false;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 组面板 折叠展开事件
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void Gridl_Expand(object sender, EventArgs e)
|
|||
|
{
|
|||
|
if (this.Grid1.Expanded)
|
|||
|
{
|
|||
|
this.Grid2.Expanded = false;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 组面板 折叠展开事件
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void Grid2_Expand(object sender, EventArgs e)
|
|||
|
{
|
|||
|
if (this.Grid2.Expanded)
|
|||
|
{
|
|||
|
this.Grid1.Expanded = false;
|
|||
|
}
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 查询
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void Tree_TextChanged(object sender, EventArgs e)
|
|||
|
{
|
|||
|
this.InitTreeMenu();
|
|||
|
this.BindGrid1();
|
|||
|
this.BindGrid2();
|
|||
|
}
|
|||
|
}
|
|||
|
}
|