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 定义项 /// /// 督查检查主键 /// public string CheckInfoId { get { return (string)ViewState["CheckInfoId"]; } set { ViewState["CheckInfoId"] = value; } } #endregion #region 加载页面 /// /// 加载页面 /// /// /// protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { ////权限按钮方法 this.InitTreeMenu(); this.CheckInfoId = string.Empty; } } #endregion #region 加载树 /// /// 加载树 /// 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 绑定树节点 /// /// 绑定树节点 /// /// private void BindNodes(TreeNode node, List 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 /// /// 点击TreeView /// /// /// 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 加载页面输入保存信息 /// /// 加载页面输入保存信息 /// 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 数据绑定 /// /// 数据绑定 /// private void BindGrid1() { string strSql = @"SELECT CheckFileId,CheckInfoId,CheckFileName,SortIndex,Remark FROM dbo.DCGL_Check_CheckInfo_CheckFile WHERE 1=1 "; List listStr = new List(); 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(); } /// /// 数据绑定 /// 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 listStr = new List(); 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 排序 /// /// 排序 /// /// /// protected void Grid1_Sort(object sender, GridSortEventArgs e) { BindGrid1(); } /// /// 排序 /// /// /// protected void Grid2_Sort(object sender, GridSortEventArgs e) { BindGrid2(); } #endregion #region 查看检查办法 /// /// 查看检查办法 /// /// /// protected void btnFind_Click(object sender, EventArgs e) { PageContext.RegisterStartupScript(Window3.GetShowReference(String.Format("CheckInfoTemplate.aspx"))); } #endregion #region 组面板 折叠展开事件 /// /// 组面板 折叠展开事件 /// /// /// protected void Gridl_Collapse(object sender, EventArgs e) { if (this.Grid1.Collapsed) { this.Grid2.Collapsed = false; } } /// /// 组面板 折叠展开事件 /// /// /// protected void Grid2_Collapse(object sender, EventArgs e) { if (this.Grid2.Collapsed) { this.Grid1.Collapsed = false; } } /// /// 组面板 折叠展开事件 /// /// /// protected void Gridl_Expand(object sender, EventArgs e) { if (this.Grid1.Expanded) { this.Grid2.Expanded = false; } } /// /// 组面板 折叠展开事件 /// /// /// protected void Grid2_Expand(object sender, EventArgs e) { if (this.Grid2.Expanded) { this.Grid1.Expanded = false; } } #endregion /// /// 查询 /// /// /// protected void Tree_TextChanged(object sender, EventArgs e) { this.InitTreeMenu(); this.BindGrid1(); this.BindGrid2(); } /// /// 从集团获取 /// /// /// 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 获取 /// /// 获取 /// /// /// 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 ids = new List(); 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 } }