CNCEC_SUBQHSE_WUHUAN/SGGL/FineUIPro.Web/DCGL/ServerCheck/CheckNotice.aspx.cs

547 lines
25 KiB
C#
Raw Normal View History

2025-01-23 22:56:48 +08:00
using BLL;
using Newtonsoft.Json.Linq;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Windows.Forms;
using System.Xml.Linq;
namespace FineUIPro.Web.DCGL.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.DCGL_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.DCGL_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.Day).ToString().PadLeft(2, '0') + "日:" + units.UnitName;
}
else
{
newNode.Text = (item.CheckStartTime.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.DCGL_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.txtCheckManName.Text = checkInfo.CheckManName;
this.txtSupervisionGroupName.Text = checkInfo.SupervisionGroupName;
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.txtCheckManName.Text = string.Empty;
this.txtSupervisionGroupName.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.DCGL_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,SexName,SupervisionGroupName,SortIndex,PostName,WorkTitle,CheckPostName,CheckDate
FROM dbo.DCGL_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();
}
/// <summary>
/// 从集团获取
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnGet_Click(object sender, EventArgs e)
{
var returnValue = getDCGLCheckInfo_CheckTeam();
// var returnValue= CNCECHSSEGetWebService.getCheck_CheckInfo_Table8Item();
if (returnValue.code == 1)
{
ShowNotify(returnValue.message, MessageBoxIcon.Success);
PageInfoLoad();
}
else
{
Alert.ShowInTop(returnValue.message, MessageBoxIcon.Success);
}
}
#region
/// <summary>
/// 获取
/// </summary>
/// <param name="type"></param>
/// <returns></returns>
public static Model.ResponeData getDCGLCheckInfo_CheckTeam()
{
var responeData = new Model.ResponeData();
try
{
string unitId = CommonService.GetThisUnitId();
string baseurl = SysConstSetService.CNCECPath + "/api/HSSEData/getDCGLCheckInfo_CheckTeam?unitId=" + unitId;
string contenttype = "application/json;charset=unicode";
Hashtable newToken = new Hashtable
{
{ "token", ServerService.GetToken().Token }
};
var strJosn = APIGetHttpService.Http(baseurl, "GET", contenttype, newToken, null);
if (!string.IsNullOrEmpty(strJosn))
{
JObject obj = JObject.Parse(strJosn);
responeData.code = Funs.GetNewIntOrZero(obj["code"].ToString());
responeData.message = obj["message"].ToString();
if (responeData.code == 1)
{
string data = obj["data"].ToString();
JArray arr = JArray.Parse(data);
if (arr.Count() > 0)
{
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
{
List<string> ids = new List<string>();
foreach (var item in arr)
{
string getCheckInfoId = item["CheckInfoId"].ToString();
if (!ids.Contains(getCheckInfoId))
{
var updateCheckInfo = db.DCGL_Check_CheckInfo.FirstOrDefault(x => x.CheckInfoId == getCheckInfoId);
if (updateCheckInfo == null)
{
ids.Add(getCheckInfoId);
Model.DCGL_Check_CheckInfo newCheckInfo = new Model.DCGL_Check_CheckInfo
{
CheckInfoId = getCheckInfoId,
CheckTypeName = item["CheckTypeName"].ToString(),
SubjectUnitId = item["SubjectUnitId"].ToString(),
SubjectUnitAdd = item["SubjectUnitAdd"].ToString(),
SubjectUnitMan = item["SubjectUnitMan"].ToString(),
SubjectUnitTel = item["SubjectUnitTel"].ToString(),
CheckStartTime = Funs.GetNewDateTimeOrNow(item["CheckStartTime"].ToString()),
CheckEndTime = Funs.GetNewDateTimeOrNow(item["CheckEndTime"].ToString()),
SubjectObject = item["SubjectObject"].ToString(),
};
db.DCGL_Check_CheckInfo.InsertOnSubmit(newCheckInfo);
db.SubmitChanges();
}
else
{
updateCheckInfo.CheckInfoId = getCheckInfoId;
updateCheckInfo.CheckTypeName = item["CheckTypeName"].ToString();
updateCheckInfo.SubjectUnitId = item["SubjectUnitId"].ToString();
updateCheckInfo.SubjectUnitAdd = item["SubjectUnitAdd"].ToString();
updateCheckInfo.SubjectUnitMan = item["SubjectUnitMan"].ToString();
updateCheckInfo.SubjectUnitTel = item["SubjectUnitTel"].ToString();
updateCheckInfo.CheckStartTime = Funs.GetNewDateTimeOrNow(item["CheckStartTime"].ToString());
updateCheckInfo.CheckEndTime = Funs.GetNewDateTimeOrNow(item["CheckEndTime"].ToString());
updateCheckInfo.SubjectObject = item["SubjectObject"].ToString();
db.SubmitChanges();
}
}
//string getCheckItemId = item["CheckItemId"].ToString();
//var updateTable8 = db.Check_CheckInfo_Table8.FirstOrDefault(x => x.CheckItemId == getCheckItemId);
//if (updateTable8 == null)
//{
// Model.Check_CheckInfo_Table8 newTable8 = new Model.Check_CheckInfo_Table8
// {
// CheckItemId = getCheckItemId,
// CheckInfoId = getCheckInfoId,
// Values1 = item["Values1"].ToString(),
// Values2 = item["Values2"].ToString(),
// Values3 = item["Values3"].ToString(),
// Values4 = item["Values4"].ToString(),
// Values5 = item["Values5"].ToString(),
// Values6 = item["Values6"].ToString(),
// Values7 = item["Values7"].ToString(),
// Values8 = item["Values8"].ToString(),
// };
// db.Check_CheckInfo_Table8.InsertOnSubmit(newTable8);
// db.SubmitChanges();
//}
//else
//{
// updateTable8.Values1 = item["Values1"].ToString();
// updateTable8.Values2 = item["Values2"].ToString();
// updateTable8.Values3 = item["Values3"].ToString();
// updateTable8.Values4 = item["Values4"].ToString();
// updateTable8.Values5 = item["Values5"].ToString();
// updateTable8.Values6 = item["Values6"].ToString();
// updateTable8.Values7 = item["Values7"].ToString();
// updateTable8.Values8 = item["Values8"].ToString();
// db.SubmitChanges();
//}
string getCheckTeamId = item["CheckTeamId"].ToString();
var checkTeam = db.DCGL_Check_CheckInfo_CheckTeam.FirstOrDefault(x => x.CheckTeamId == getCheckTeamId);
if (checkTeam == null)
{
string UserName = item["UserName"].ToString();
string SexName = item["SexName"].ToString();
//UnitId = item["UnitId"].ToString(),
//UnitName = item["UnitName"].ToString(),
string SupervisionGroupId = item["SupervisionGroupId"].ToString();
string SupervisionGroupName = item["SupervisionGroupName"].ToString();
string PostName = item["PostName"].ToString();
string WorkTitle = item["WorkTitle"].ToString();
string CheckPostName = item["CheckPostName"].ToString();
var CheckDate = Funs.GetNewDateTime(item["CheckDate"].ToString());
var SortIndex = Funs.GetNewInt(item["SortIndex"].ToString());
Model.DCGL_Check_CheckInfo_CheckTeam newCheckTeam = new Model.DCGL_Check_CheckInfo_CheckTeam
{
CheckTeamId = getCheckTeamId,
CheckInfoId = getCheckInfoId,
UserName = item["UserName"].ToString(),
SexName = item["SexName"].ToString(),
//UnitId = item["UnitId"].ToString(),
//UnitName = item["UnitName"].ToString(),
SupervisionGroupId = item["SupervisionGroupId"].ToString(),
SupervisionGroupName = item["SupervisionGroupName"].ToString(),
PostName = item["PostName"].ToString(),
WorkTitle = item["WorkTitle"].ToString(),
CheckPostName = item["CheckPostName"].ToString(),
CheckDate = Funs.GetNewDateTime(item["CheckDate"].ToString()),
SortIndex = Funs.GetNewInt(item["SortIndex"].ToString()),
};
db.DCGL_Check_CheckInfo_CheckTeam.InsertOnSubmit(newCheckTeam);
db.SubmitChanges();
}
else
{
checkTeam.CheckTeamId = getCheckTeamId;
checkTeam.CheckInfoId = getCheckInfoId;
checkTeam.UserName = item["UserName"].ToString();
checkTeam.SexName = item["SexName"].ToString();
//checkTeam.UnitId = item["UnitId"].ToString();
//checkTeam.UnitName = item["UnitName"].ToString();
checkTeam.SupervisionGroupId = item["SupervisionGroupId"].ToString();
checkTeam.SupervisionGroupName = item["SupervisionGroupName"].ToString();
checkTeam.PostName = item["PostName"].ToString();
checkTeam.WorkTitle = item["WorkTitle"].ToString();
checkTeam.CheckPostName = item["CheckPostName"].ToString();
checkTeam.CheckDate = Funs.GetNewDateTime(item["CheckDate"].ToString());
checkTeam.SortIndex = Funs.GetNewInt(item["SortIndex"].ToString());
db.SubmitChanges();
}
}
responeData.message = "获取成功:记录" + arr.Count().ToString() + "条";
}
}
else { responeData.message = "未获取数据!"; }
}
}
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = "获取失败:" + ex.Message;
ErrLogInfo.WriteLog("督查检查通知单获取!", ex);
}
return responeData;
}
#endregion
}
}