From 726c5116f4757efef4d2eb952fc335ce3bb7f45e Mon Sep 17 00:00:00 2001
From: gaofei1985 <181547018@qq.com>
Date: Mon, 25 Dec 2023 14:19:31 +0800
Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E8=AF=95=E8=BD=A6=E4=BB=A3?=
=?UTF-8?q?=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
DataBase/版本日志/SGGLDB_WH_2023-12-25.sql | 25 +
SGGL/BLL/Common/NPOIHelper.cs | 2 +
SGGL/FineUIPro.Web/FineUIPro.Web.csproj | 32 +
.../FourDecisionOtherConfirm.aspx | 4 +-
.../FourDecisionOtherConfirm.aspx.cs | 11 +-
.../FourDecisionOtherConfirmEdit.aspx | 4 +-
.../FourDecisionOtherConfirmEdit.aspx.cs | 15 +-
.../FourDecisionProposerConfirm.aspx | 139 +++
.../FourDecisionProposerConfirm.aspx.cs | 298 +++++++
...urDecisionProposerConfirm.aspx.designer.cs | 188 ++++
.../FourDecisionProposerConfirmEdit.aspx | 160 ++++
.../FourDecisionProposerConfirmEdit.aspx.cs | 244 ++++++
...cisionProposerConfirmEdit.aspx.designer.cs | 305 +++++++
.../FourDecisionProposerHandle.aspx | 140 +++
.../FourDecisionProposerHandle.aspx.cs | 299 +++++++
...ourDecisionProposerHandle.aspx.designer.cs | 188 ++++
.../FourDecisionProposerHandleEdit.aspx | 129 +++
.../FourDecisionProposerHandleEdit.aspx.cs | 203 +++++
...ecisionProposerHandleEdit.aspx.designer.cs | 260 ++++++
.../FourDecisionResponsibilityConfirm.aspx | 13 +-
.../FourDecisionResponsibilityConfirm.aspx.cs | 18 +-
...sionResponsibilityConfirm.aspx.designer.cs | 4 +-
...FourDecisionResponsibilityConfirmEdit.aspx | 28 +-
...rDecisionResponsibilityConfirmEdit.aspx.cs | 33 +-
...ResponsibilityConfirmEdit.aspx.designer.cs | 18 +
.../BeforeTestRun/InspectTailTermList.aspx.cs | 2 +-
.../InspectWanderAboutAllPassList.aspx.cs | 2 +-
.../InspectWanderAboutList.aspx.cs | 2 +-
.../BeforeTestRun/SiteImplementation.aspx | 4 +-
.../SiteImplementationList.aspx.cs | 2 +-
.../TestRun/BeforeTestRun/SubInspectTerm.aspx | 23 +
.../BeforeTestRun/SubInspectTerm.aspx.cs | 20 +-
.../SubInspectTerm.aspx.designer.cs | 27 +
.../BeforeTestRun/SubSysWorkPackage.aspx.cs | 8 +-
.../SubThreeChecksFourDecisionEdit.aspx | 63 +-
.../SubThreeChecksFourDecisionEdit.aspx.cs | 40 +-
...reeChecksFourDecisionEdit.aspx.designer.cs | 71 +-
.../SubThreeChecksFourDecisionList.aspx | 33 +-
.../SubThreeChecksFourDecisionList.aspx.cs | 77 +-
...reeChecksFourDecisionList.aspx.designer.cs | 17 +-
.../BeforeTestRun/SubWorkInspect.aspx.cs | 2 +-
.../BeforeTestRun/SysPipingDeviceImport.aspx | 75 +-
.../SysPipingDeviceImport.aspx.cs | 30 +-
.../BeforeTestRun/TailTermApproveList.aspx.cs | 2 +-
.../BeforeTestRun/TailTermHandleList.aspx.cs | 2 +-
.../BeforeTestRun/TestRunRecordUpload.aspx | 5 +
.../BeforeTestRun/TestRunRecordUpload.aspx.cs | 38 +-
.../TestRunRecordUpload.aspx.designer.cs | 9 +
.../TestRunRecordUploadList.aspx.cs | 2 +-
.../TestRunManage/SubSysWorkPackage.aspx.cs | 10 +-
SGGL/Model/Model.cs | 818 +++++++++---------
51 files changed, 3545 insertions(+), 599 deletions(-)
create mode 100644 DataBase/版本日志/SGGLDB_WH_2023-12-25.sql
create mode 100644 SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerConfirm.aspx
create mode 100644 SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerConfirm.aspx.cs
create mode 100644 SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerConfirm.aspx.designer.cs
create mode 100644 SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerConfirmEdit.aspx
create mode 100644 SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerConfirmEdit.aspx.cs
create mode 100644 SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerConfirmEdit.aspx.designer.cs
create mode 100644 SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerHandle.aspx
create mode 100644 SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerHandle.aspx.cs
create mode 100644 SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerHandle.aspx.designer.cs
create mode 100644 SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerHandleEdit.aspx
create mode 100644 SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerHandleEdit.aspx.cs
create mode 100644 SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerHandleEdit.aspx.designer.cs
diff --git a/DataBase/版本日志/SGGLDB_WH_2023-12-25.sql b/DataBase/版本日志/SGGLDB_WH_2023-12-25.sql
new file mode 100644
index 00000000..98c8fc4d
--- /dev/null
+++ b/DataBase/版本日志/SGGLDB_WH_2023-12-25.sql
@@ -0,0 +1,25 @@
+delete Sys_Menu where MenuId='E673FC27-74F1-479C-8DE1-950183566725'
+delete Sys_Menu where MenuId='FAD7BF9B-B08A-473B-BEB9-CCAC3E5EA130'
+delete Sys_Menu where MenuId='4822760B-395B-4979-B547-EA0D715C8A2C'
+delete Sys_Menu where MenuId='7803218A-3E94-4715-814A-951CF2474E7C'
+INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Icon,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)VALUES('4822760B-395B-4979-B547-EA0D715C8A2C','Ķ˴',null,'TestRun/BeforeTestRun/FourDecisionProposerHandle.aspx',16,'AD6E08B6-5571-4FFB-BDBE-9E6811770BD6','Menu_TestRun',0,1,1)
+INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Icon,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)VALUES('E673FC27-74F1-479C-8DE1-950183566725','Ķ',null,'TestRun/BeforeTestRun/FourDecisionResponsibilityConfirm.aspx',17,'AD6E08B6-5571-4FFB-BDBE-9E6811770BD6','Menu_TestRun',0,1,1)
+INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Icon,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)VALUES('7803218A-3E94-4715-814A-951CF2474E7C','Ķȷ',null,'TestRun/BeforeTestRun/FourDecisionProposerConfirm.aspx',18,'AD6E08B6-5571-4FFB-BDBE-9E6811770BD6','Menu_TestRun',0,1,1)
+INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Icon,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)VALUES('FAD7BF9B-B08A-473B-BEB9-CCAC3E5EA130','Ķȷ',null,'TestRun/BeforeTestRun/FourDecisionOtherConfirm.aspx',19,'AD6E08B6-5571-4FFB-BDBE-9E6811770BD6','Menu_TestRun',0,1,1)
+
+--/˴״̬(0:ύ1:˴2:˴˻3:˴ȷ4:˻5:ͨ˴6:˻7:ȷͨ)
+alter table PreRun_SubThreeChecksFourDecision add ResponsibilityProposeSatate int null
+--˴ʱ
+alter table PreRun_SubThreeChecksFourDecision add ProposeHandleData datetime NULL
+--Ķ
+alter table PreRun_SubThreeChecksFourDecision add FourDecisionCode varchar(20) NULL
+
+--
+truncate table PreRun_SubThreeChecksFourDecision
+truncate table PreRun_DecisionConfirmRecords
+truncate table PreRun_PropertySysPiping
+truncate table PreRun_SubPropertySelect
+truncate table PreRun_TechnologySysPiping
+truncate table PreRun_SubTechnologySelect
+truncate table PreRun_InstrumentSysPiping
+truncate table PreRun_SubInstrumentSelect
\ No newline at end of file
diff --git a/SGGL/BLL/Common/NPOIHelper.cs b/SGGL/BLL/Common/NPOIHelper.cs
index 48ee0ae9..b376f00d 100644
--- a/SGGL/BLL/Common/NPOIHelper.cs
+++ b/SGGL/BLL/Common/NPOIHelper.cs
@@ -113,6 +113,7 @@ namespace BLL
sheetNumber = firstSheet ? 1 : workbook.NumberOfSheets;
for (int i = 0; i < sheetNumber; i++)
{
+ if (workbook.IsSheetHidden(i)) continue;
string sheetName = workbook.GetSheetName(i);
sheet = workbook.GetSheet(sheetName);
if (sheet != null)
@@ -137,6 +138,7 @@ namespace BLL
sheetNumber = firstSheet ? 1 : workbook.NumberOfSheets;
for (int i = 0; i < sheetNumber; i++)
{
+ if (workbook.IsSheetHidden(i)) continue;
string sheetName = workbook.GetSheetName(i);
sheet = workbook.GetSheet(sheetName);
if (sheet != null)
diff --git a/SGGL/FineUIPro.Web/FineUIPro.Web.csproj b/SGGL/FineUIPro.Web/FineUIPro.Web.csproj
index c5185f93..21917918 100644
--- a/SGGL/FineUIPro.Web/FineUIPro.Web.csproj
+++ b/SGGL/FineUIPro.Web/FineUIPro.Web.csproj
@@ -1674,6 +1674,10 @@
+
+
+
+
@@ -15154,6 +15158,34 @@
FourDecisionOtherConfirmEdit.aspx
+
+ FourDecisionProposerConfirm.aspx
+ ASPXCodeBehind
+
+
+ FourDecisionProposerConfirm.aspx
+
+
+ FourDecisionProposerConfirmEdit.aspx
+ ASPXCodeBehind
+
+
+ FourDecisionProposerConfirmEdit.aspx
+
+
+ FourDecisionProposerHandle.aspx
+ ASPXCodeBehind
+
+
+ FourDecisionProposerHandle.aspx
+
+
+ FourDecisionProposerHandleEdit.aspx
+ ASPXCodeBehind
+
+
+ FourDecisionProposerHandleEdit.aspx
+
FourDecisionResponsibilityConfirm.aspx
ASPXCodeBehind
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionOtherConfirm.aspx b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionOtherConfirm.aspx
index 14b086f8..40c30b82 100644
--- a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionOtherConfirm.aspx
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionOtherConfirm.aspx
@@ -4,7 +4,7 @@
- 提出人,总包,监理,业主确认
+ 总包,监理,业主确认
+
+
+
+
+
+
+
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerConfirm.aspx.cs b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerConfirm.aspx.cs
new file mode 100644
index 00000000..03fb40b3
--- /dev/null
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerConfirm.aspx.cs
@@ -0,0 +1,298 @@
+using BLL;
+using Model;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Data.SqlClient;
+using System.Linq;
+using System.Web;
+using System.Web.UI;
+using System.Web.UI.WebControls;
+
+namespace FineUIPro.Web.TestRun.BeforeTestRun
+{
+ public partial class FourDecisionProposerConfirm : PageBase
+ {
+ ///
+ /// 子系统主键
+ ///
+ public string SsubSystemId
+ {
+ get { return (string)ViewState["SsubSystemId"]; }
+ set { ViewState["SsubSystemId"] = value; }
+ }
+
+ protected void Page_Load(object sender, EventArgs e)
+ {
+ if (!IsPostBack)
+ {
+ //加载树
+ this.InitTreeMenu();
+ }
+ }
+
+ ///
+ /// 加载树
+ ///
+ private void InitTreeMenu()
+ {
+ this.tvControlItem.Nodes.Clear();
+ TreeNode rootNode = new TreeNode();
+ rootNode.Text = "提出人确认";
+ rootNode.NodeID = "0";
+ rootNode.Expanded = true;
+ rootNode.ToolTip = "";
+ rootNode.EnableClickEvent = true;
+ this.tvControlItem.Nodes.Add(rootNode);
+ var decisions = Funs.DB.PreRun_SubThreeChecksFourDecision.Where(x => x.ProposeUser == this.CurrUser.UserId && x.ResponsibilityConfirm == 2 && x.ProjectId == this.CurrUser.LoginProjectId).ToList();
+ if (decisions.Count == 0) return;
+ //获取子系统主键
+ var subsystemids = decisions.ConvertAll(x => x.SubSystemId);
+ //根据子系统获取其他节点ID
+ var userDevices = Funs.DB.PreRun_SysDevice.Where(p => p.ProjectId == this.CurrUser.LoginProjectId && subsystemids.Contains(p.PreRunId)).ToList();
+ List allIds = new List();
+ allIds.AddRange(userDevices.ConvertAll(x => x.ProcessesId));
+ allIds.AddRange(userDevices.ConvertAll(x => x.SystemId));
+ allIds.AddRange(subsystemids);
+ var allPreRunLs = Funs.DB.PreRun_SysDevice.Where(p => p.ProjectId == this.CurrUser.LoginProjectId && p.PreRunLevel > 1 && allIds.Contains(p.PreRunId)).ToList();
+ var onePreRunLs = allPreRunLs.Where(p => p.PreRunLevel == 2).OrderBy(x => x.Sort);
+ foreach (var item in onePreRunLs)
+ {
+ TreeNode rootUnitNode = new TreeNode();//定义根节点
+ rootUnitNode.NodeID = item.PreRunId;
+ rootUnitNode.Text = item.PreRunName;
+ rootUnitNode.ToolTip = item.PreRunName;
+ rootUnitNode.CommandName = "";
+ rootUnitNode.EnableClickEvent = false;
+ rootUnitNode.EnableExpandEvent = false;
+ rootNode.Nodes.Add(rootUnitNode);
+ rootUnitNode.Expanded = true;
+ var otherPreRunls = allPreRunLs.Where(p => p.PreRunLevel != 1).ToList();
+ this.BindNodes(rootUnitNode, otherPreRunls, item.PreRunId);
+ }
+ }
+
+ ///
+ /// 绑定树节点
+ ///
+ private void BindNodes(TreeNode node, List list, string parentId)
+ {
+ var itemList = list.Where(p => p.ParentId == parentId).OrderBy(x => x.Sort).ToList();
+ if (itemList.Count > 0)
+ {
+ foreach (var item in itemList)
+ {
+ TreeNode newNode = new TreeNode();
+ newNode.Text = item.PreRunName;
+ newNode.NodeID = item.PreRunId;
+ newNode.ToolTip = item.PreRunName;
+ newNode.CommandName = "";
+ newNode.EnableClickEvent = item.PreRunLevel == 4 ? true : false;
+ newNode.EnableExpandEvent = item.PreRunLevel == 4 ? true : false;
+ newNode.Expanded = true;
+ node.Nodes.Add(newNode);
+ BindNodes(newNode, list, item.PreRunId);
+ }
+ }
+ }
+
+ ///
+ /// 点击TreeView
+ ///
+ ///
+ ///
+ protected void tvControlItem_NodeCommand(object sender, TreeCommandEventArgs e)
+ {
+ this.SsubSystemId = tvControlItem.SelectedNodeID;
+ BindGrid();
+ }
+
+ #region 绑定数据
+
+ ///
+ /// 数据绑定
+ ///
+ public void BindGrid()
+ {
+ string strSql = @"select a.DecisionId,a.ProjectId,a.SubSystemId,a.ProposeUser,puser.UserName as ProposeUserName,a.ResponsibilityUser,ruser.UserName as ResponsibilityUserName,a.ResponsibilityUnit,unit.UnitName as ResponsibilityUnitName,a.QuestionDesc,a.Level,a.Speciality,a.AskDestructionTime,a.RealityDestructionTime,a.RestrictCondition,a.ResponsibilityProposeSatate,(case a.ResponsibilityProposeSatate when 0 then '待提交' when 1 then '提出人待处理' when 2 then '提出人处理退回' when 3 then '责任人待确认' when 4 then '责任人退回' when 5 then '责任人通过提出人待处理' when 6 then '提出人退回' when 7 then '提出人确认通过' else '' end) as ResponsibilityProposeSatateName,a.ProposeConfirm,(case a.ProposeConfirm when 1 then '未确认' when 2 then '确认通过' else '' end) as ProposeConfirmName,a.ResponsibilityConfirm,(case a.ResponsibilityConfirm when 1 then '未确认' when 2 then '确认通过' else '' end) as ResponsibilityConfirmName,a.ProposeConfirm,(case a.ProposeConfirm when 1 then '未确认' when 2 then '确认通过' else '' end) as ProposeConfirmName,a.GeneraConfirm,(case a.GeneraConfirm when 1 then '未确认' when 2 then '确认通过' else '' end) as GeneraConfirmName,a.SupervisionConfirm,(case a.SupervisionConfirm when 1 then '未确认' when 2 then '确认通过' else '' end) as SupervisionConfirmName,a.OwnerConfirm,(case a.OwnerConfirm when 1 then '未确认' when 2 then '确认通过' else '' end) as OwnerConfirmName,a.ProposeConfirmData,a.ResponsibilityConfirmData,a.GeneraConfirmData,a.SupervisionConfirmData,a.OwnerConfirmData,a.DecisionIsClose,(case a.DecisionIsClose when 1 then '已关闭' else '未关闭' end) as DecisionIsCloseName,(case ISNULL(a.AskDestructionTime,'') when '' then 0 else DATEDIFF(DAY, GETDATE(),a.AskDestructionTime) end) as DestructionDiffDay,a.AddUser,a.AddTime,a.Sort from PreRun_SubThreeChecksFourDecision as a left join Sys_User as puser on a.ProposeUser=puser.UserId left join Sys_User as ruser on a.ResponsibilityUser=ruser.UserId left join Base_Unit as unit on a.ResponsibilityUnit=unit.UnitId where 1=1 and a.SubSystemId=@SubSystemId and a.ProjectId=@ProjectId and a.ProposeUser=@ProposeUser and a.ResponsibilityProposeSatate in (5,6,7) ";
+ List listStr = new List();
+ listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
+ listStr.Add(new SqlParameter("@SubSystemId", this.SsubSystemId));
+ listStr.Add(new SqlParameter("@ProposeUser", this.CurrUser.UserId));
+ //提出人/责任人处理状态
+ if (!string.IsNullOrWhiteSpace(ddlResponsibilityProposeSatate.SelectedValue))
+ {
+ strSql += " and a.ResponsibilityProposeSatate=@ResponsibilityProposeSatate";
+ listStr.Add(new SqlParameter("@ResponsibilityProposeSatate", ddlResponsibilityProposeSatate.SelectedValue));
+ }
+ //是否关闭
+ if (!string.IsNullOrWhiteSpace(ddlDecisionState.Text))
+ {
+ strSql += " and a.DecisionState=@DecisionState";
+ listStr.Add(new SqlParameter("@DecisionState", ddlDecisionState.SelectedValue));
+ }
+ strSql += " order by a.AddTime desc";
+ SqlParameter[] parameter = listStr.ToArray();
+ DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
+ Grid1.RecordCount = tb.Rows.Count;
+ var table = this.GetPagedDataTable(Grid1, tb);
+ Grid1.DataSource = table;
+ Grid1.DataBind();
+ }
+
+ ///
+ /// 分页
+ ///
+ protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
+ {
+ Grid1.PageIndex = e.NewPageIndex;
+ BindGrid();
+ }
+
+ ///
+ /// 双击事件
+ ///
+ protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
+ {
+ btnSubmitConfirm_Click(null, null);
+ }
+
+ ///
+ /// 分页下拉框
+ ///
+ protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
+ BindGrid();
+ }
+
+ ///
+ /// 排序
+ ///
+ protected void Grid1_Sort(object sender, GridSortEventArgs e)
+ {
+ BindGrid();
+ }
+
+ ///
+ /// 行数据处理事件
+ ///
+ protected void Grid1_RowDataBound(object sender, GridRowEventArgs e)
+ {
+ DataRowView row = e.DataItem as DataRowView;
+
+ int diffDay = Convert.ToInt32(row["DestructionDiffDay"]);
+ TemplateField AdjustDiffDay = Grid1.FindColumn("DestructionDiffDay") as TemplateField;
+ int isClose = int.Parse(Grid1.DataKeys[e.RowIndex][1].ToString());
+ if (isClose != 1)
+ {
+ if (diffDay > 0)
+ {
+ e.CellAttributes[AdjustDiffDay.ColumnIndex]["data-color"] = "color1";
+ }
+ else if (diffDay == 0)
+ {
+ e.CellAttributes[AdjustDiffDay.ColumnIndex]["data-color"] = "color2";
+ }
+ else if (diffDay < 0)
+ {
+ e.CellAttributes[AdjustDiffDay.ColumnIndex]["data-color"] = "color3";
+ }
+ }
+ }
+
+ #endregion
+
+ ///
+ /// 提出人确认
+ ///
+ protected void btnSubmitConfirm_Click(object sender, EventArgs e)
+ {
+ if (Grid1.SelectedRowIndexArray.Length == 0)
+ {
+ Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
+ return;
+ }
+ var model = Funs.DB.PreRun_SubThreeChecksFourDecision.FirstOrDefault(x => x.DecisionId == Grid1.SelectedRowID);
+ if (model != null)
+ {
+ if (model.ResponsibilityProposeSatate != 5)
+ {
+ Alert.ShowInTop("仅“责任人通过提出人待处理”状态才可进行提出人确认!", MessageBoxIcon.Warning);
+ return;
+ }
+ }
+ PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("FourDecisionProposerConfirmEdit.aspx?DecisionId={0}", Grid1.SelectedRowID, "提出人确认 - ")));
+ }
+
+ ///
+ /// 搜索
+ ///
+ protected void btnQuery_Click(object sender, EventArgs e)
+ {
+ BindGrid();
+ }
+
+ ///
+ /// 查看
+ ///
+ protected void btnView_Click(object sender, EventArgs e)
+ {
+ if (Grid1.SelectedRowIndexArray.Length == 0)
+ {
+ Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
+ return;
+ }
+ PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("FourDecisionProposerConfirmEdit.aspx?DecisionId={0}&IsView=true", Grid1.SelectedRowID, "查看 - ")));
+ }
+
+ ///
+ /// 是否逾期返回
+ ///
+ ///
+ public string IsOverdue(object diffDayVal, object stateVal)
+ {
+ var result = string.Empty;
+ var diffDay = 0;
+ var itemState = 0;
+ if (diffDayVal != null) diffDay = int.Parse(diffDayVal.ToString());
+ if (stateVal != null) itemState = int.Parse(stateVal.ToString());
+ if (itemState != 1)
+ {
+ if (diffDay > 0)
+ {
+ result = "未逾期";
+ }
+ else if (diffDay == 0)
+ {
+ result = "即将逾期";
+ }
+ else if (diffDay < 0)
+ {
+ result = "已逾期";
+ }
+ }
+ else
+ {
+ result = "已关闭";
+ }
+ return result;
+ }
+
+ ///
+ /// 右击确认
+ ///
+ protected void btnMenuConfirm_Click(object sender, EventArgs e)
+ {
+ btnSubmitConfirm_Click(null, null);
+ }
+
+ ///
+ /// 关闭
+ ///
+ protected void Window1_Close(object sender, WindowCloseEventArgs e)
+ {
+
+ }
+ }
+}
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerConfirm.aspx.designer.cs b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerConfirm.aspx.designer.cs
new file mode 100644
index 00000000..9a27e744
--- /dev/null
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerConfirm.aspx.designer.cs
@@ -0,0 +1,188 @@
+//------------------------------------------------------------------------------
+// <自动生成>
+// 此代码由工具生成。
+//
+// 对此文件的更改可能导致不正确的行为,如果
+// 重新生成代码,则所做更改将丢失。
+// 自动生成>
+//------------------------------------------------------------------------------
+
+namespace FineUIPro.Web.TestRun.BeforeTestRun
+{
+
+
+ public partial class FourDecisionProposerConfirm
+ {
+
+ ///
+ /// form1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::System.Web.UI.HtmlControls.HtmlForm form1;
+
+ ///
+ /// PageManager1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.PageManager PageManager1;
+
+ ///
+ /// Panel1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Panel Panel1;
+
+ ///
+ /// panelLeftRegion 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Panel panelLeftRegion;
+
+ ///
+ /// tvControlItem 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Tree tvControlItem;
+
+ ///
+ /// Grid1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Grid Grid1;
+
+ ///
+ /// Toolbar3 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Toolbar Toolbar3;
+
+ ///
+ /// ddlResponsibilityProposeSatate 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList ddlResponsibilityProposeSatate;
+
+ ///
+ /// ddlDecisionState 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList ddlDecisionState;
+
+ ///
+ /// btnQuery 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnQuery;
+
+ ///
+ /// btnView 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnView;
+
+ ///
+ /// btnSubmitConfirm 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnSubmitConfirm;
+
+ ///
+ /// lblIsOverdue 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::System.Web.UI.WebControls.Label lblIsOverdue;
+
+ ///
+ /// ToolbarSeparator1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
+
+ ///
+ /// ToolbarText1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.ToolbarText ToolbarText1;
+
+ ///
+ /// ddlPageSize 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList ddlPageSize;
+
+ ///
+ /// Window1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Window Window1;
+
+ ///
+ /// Menu1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Menu Menu1;
+
+ ///
+ /// btnMenuConfirm 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.MenuButton btnMenuConfirm;
+ }
+}
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerConfirmEdit.aspx b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerConfirmEdit.aspx
new file mode 100644
index 00000000..9c680ff7
--- /dev/null
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerConfirmEdit.aspx
@@ -0,0 +1,160 @@
+<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="FourDecisionProposerConfirmEdit.aspx.cs" Inherits="FineUIPro.Web.TestRun.BeforeTestRun.FourDecisionProposerConfirmEdit" %>
+
+
+
+
+
+ 责任人确认
+
+
+
+
+
+
+
+
+
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerConfirmEdit.aspx.cs b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerConfirmEdit.aspx.cs
new file mode 100644
index 00000000..2f578bc6
--- /dev/null
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerConfirmEdit.aspx.cs
@@ -0,0 +1,244 @@
+using BLL;
+using Model;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Data.SqlClient;
+using System.Linq;
+using System.Web;
+using System.Web.UI;
+using System.Web.UI.WebControls;
+
+namespace FineUIPro.Web.TestRun.BeforeTestRun
+{
+ public partial class FourDecisionProposerConfirmEdit : PageBase
+ {
+ ///
+ /// 主键
+ ///
+ public string DecisionId
+ {
+ get { return (string)ViewState["DecisionId"]; }
+ set { ViewState["DecisionId"] = value; }
+ }
+
+ ///
+ /// 是否查看
+ ///
+ public bool IsView
+ {
+ get { return (bool)ViewState["IsView"]; }
+ set { ViewState["IsView"] = value; }
+ }
+
+ ///
+ /// 问题图片是否可编辑
+ ///
+ public int QuestionEditImg
+ {
+ get { return (int)ViewState["QuestionEditImg"]; }
+ set { ViewState["QuestionEditImg"] = value; }
+ }
+
+ ///
+ /// 整改图片是否可编辑
+ ///
+ public int RectifyEditImg
+ {
+ get { return (int)ViewState["RectifyEditImg"]; }
+ set { ViewState["RectifyEditImg"] = value; }
+ }
+
+ protected void Page_Load(object sender, EventArgs e)
+ {
+ this.DecisionId = Request["DecisionId"];
+ //是否查看
+ this.IsView = string.IsNullOrWhiteSpace(Request["IsView"]) ? false : bool.Parse(Request["IsView"]);
+ //数据绑定
+ PageInit();
+ //提出人处理
+ gvDataBrid();
+ //判断是否查看
+ if (IsView)
+ {
+ btnReturn.Hidden = true;
+ btnPass.Hidden = true;
+ QuestionEditImg = -1;
+ RectifyEditImg = -1;
+ lblResponsibilityUnit.Enabled = false;
+ lblQuestionDesc.Enabled = false;
+ lblRestrictCondition.Enabled = false;
+ lblLevel.Enabled = false;
+ lblSpeciality.Enabled = false;
+ lblAskDestructionTime.Enabled = false;
+ lblRealityDestructionTime.Enabled = false;
+ lblResponsibilityUser.Enabled = false;
+ lblProposeUser.Enabled = false;
+ lblGeneraUser.Enabled = false;
+ lblSupervisionUser.Enabled = false;
+ lblOwnerUser.Enabled = false;
+ lblDecisionIsClose.Enabled = false;
+ txtConfirmDesc.Enabled = false;
+ }
+ }
+
+ ///
+ /// 默认绑定
+ ///
+ public void PageInit()
+ {
+ QuestionEditImg = -1;
+ RectifyEditImg = -1;
+ var query = from a in Funs.DB.PreRun_SubThreeChecksFourDecision
+ join b in Funs.DB.Base_Project on a.ProjectId equals b.ProjectId
+ join c in Funs.DB.Base_Unit on a.ResponsibilityUnit equals c.UnitId
+ join d in Funs.DB.Sys_User on a.ResponsibilityUser equals d.UserId
+ join e in Funs.DB.Sys_User on a.ProposeUser equals e.UserId
+ join f in Funs.DB.Sys_User on a.GeneraUser equals f.UserId
+ join g in Funs.DB.Sys_User on a.SupervisionUser equals g.UserId
+ join h in Funs.DB.Sys_User on a.OwnerUser equals h.UserId
+ where a.DecisionId == this.DecisionId
+ select new
+ {
+ a.DecisionId,
+ a.ProjectId,
+ b.ProjectName,
+ a.ResponsibilityUnit,
+ ResponsibilityUnitName = c.UnitName,
+ a.ResponsibilityUser,
+ ResponsibilityUserName = d.UserName,
+ a.ProposeUser,
+ ProposeUserName = e.UserName,
+ a.GeneraUser,
+ GeneraUserName = f.UserName,
+ a.SupervisionUser,
+ SupervisionUserName = g.UserName,
+ a.OwnerUser,
+ OwnerUserName = h.UserName,
+ a.QuestionDesc,
+ a.Level,
+ a.Speciality,
+ a.AskDestructionTime,
+ a.RealityDestructionTime,
+ a.RestrictCondition,
+ a.DecisionIsClose,
+ DecisionIsCloseName = a.DecisionIsClose == 1 ? "已关闭" : "未关闭"
+ };
+ var model = query.FirstOrDefault();
+ if (model != null)
+ {
+ lblProjectName.Text = model.ProjectName;
+ lblResponsibilityUnit.Text = model.ResponsibilityUnitName;
+ lblQuestionDesc.Text = model.QuestionDesc;
+ lblRestrictCondition.Text = model.RestrictCondition;
+ lblLevel.Text = model.Level;
+ lblSpeciality.Text = model.Speciality;
+ lblAskDestructionTime.Text = model.AskDestructionTime.Value != null ? model.AskDestructionTime.Value.ToString("yyyy-MM-dd") : string.Empty;
+ lblRealityDestructionTime.Text = model.RealityDestructionTime != null ? model.RealityDestructionTime.Value.ToString("yyyy-MM-dd") : string.Empty;
+ lblResponsibilityUser.Text = model.ResponsibilityUserName;
+ lblProposeUser.Text = model.ProposeUserName;
+ lblGeneraUser.Text = model.GeneraUserName;
+ lblSupervisionUser.Text = model.SupervisionUserName;
+ lblOwnerUser.Text = model.OwnerUserName;
+ lblDecisionIsClose.Text = model.DecisionIsCloseName;
+ }
+ }
+
+ ///
+ /// 提出人处理
+ ///
+ public void gvDataBrid()
+ {
+ string strSql = @"select a.ConfirmId,a.ProjectId,a.DecisionId,a.ConfirmDesc,a.ConfirmTime,a.ConfirmUser,b.UserName as ConfirmUserName,a.ConfirmType,(case a.ConfirmType when 1 then '提出人处理' when 2 then '责任人确认' when 3 then '提出人确认' when 4 then '总包确认' when 5 then '监理确认' when 6 then '业主确认' else '' end) as ConfirmTypeName,a.ConfirmState,(case a.ConfirmState when 1 then '确认通过' when 2 then '确认退回' else '' end) as ConfirmStateName,a.AddUser,a.AddTime from PreRun_DecisionConfirmRecords as a left join Sys_User as b on a.ConfirmUser=b.UserId where a.ProjectId=@ProjectId and a.DecisionId=@DecisionId and a.ConfirmType=2";
+ List listStr = new List();
+ listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
+ listStr.Add(new SqlParameter("@DecisionId", this.DecisionId));
+ strSql += " order by a.AddTime asc";
+ SqlParameter[] parameter = listStr.ToArray();
+ DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
+ gvTcrcl.DataSource = tb;
+ gvTcrcl.DataBind();
+ }
+
+ ///
+ /// 问题图片查看
+ ///
+ protected void imgBtnQuestionFile_Click(object sender, EventArgs e)
+ {
+ PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/CheckControl&menuId={2}", QuestionEditImg, this.DecisionId + "q", Const.InspectTailTerm)));
+ }
+
+ ///
+ /// 整改图片查看
+ ///
+ protected void imgBtnRectifyFile_Click(object sender, EventArgs e)
+ {
+ PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/CheckControl&menuId={2}", RectifyEditImg, this.DecisionId + "h", Const.InspectTailTerm)));
+ }
+
+ ///
+ /// 退回
+ ///
+ protected void btnReturn_Click(object sender, EventArgs e)
+ {
+ var decisionModel = Funs.DB.PreRun_SubThreeChecksFourDecision.FirstOrDefault(x => x.DecisionId == this.DecisionId);
+ if (decisionModel != null)
+ {
+ decisionModel.ProposeConfirm = 1;
+ decisionModel.ResponsibilityProposeSatate = 6;
+ var model = new PreRun_DecisionConfirmRecords();
+ model.ConfirmId = Guid.NewGuid().ToString();
+ model.ProjectId = this.CurrUser.LoginProjectId;
+ model.DecisionId = this.DecisionId;
+ model.ConfirmDesc = txtConfirmDesc.Text;
+ model.ConfirmTime = DateTime.Now;
+ model.ConfirmUser = this.CurrUser.UserId;
+ model.ConfirmType = 3;
+ model.ConfirmState = 2;
+ model.AddUser = this.CurrUser.UserId;
+ model.AddTime = DateTime.Now;
+ Funs.DB.PreRun_DecisionConfirmRecords.InsertOnSubmit(model);
+ Funs.DB.SubmitChanges();
+ ShowNotify("退回成功!", MessageBoxIcon.Success);
+ PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
+ }
+ }
+
+ ///
+ /// 确认通过
+ ///
+ protected void btnPass_Click(object sender, EventArgs e)
+ {
+ var decisionModel = Funs.DB.PreRun_SubThreeChecksFourDecision.FirstOrDefault(x => x.DecisionId == this.DecisionId);
+ if (decisionModel != null)
+ {
+ decisionModel.ResponsibilityProposeSatate = 7;
+ decisionModel.ProposeConfirm = 2;
+ decisionModel.ResponsibilityConfirmData = DateTime.Now;
+ var model = new PreRun_DecisionConfirmRecords();
+ model.ConfirmId = Guid.NewGuid().ToString();
+ model.ProjectId = this.CurrUser.LoginProjectId;
+ model.DecisionId = this.DecisionId;
+ model.ConfirmDesc = txtConfirmDesc.Text;
+ model.ConfirmTime = DateTime.Now;
+ model.ConfirmUser = this.CurrUser.UserId;
+ model.ConfirmType = 3;
+ model.ConfirmState = 1;
+ model.AddUser = this.CurrUser.UserId;
+ model.AddTime = DateTime.Now;
+ Funs.DB.PreRun_DecisionConfirmRecords.InsertOnSubmit(model);
+ Funs.DB.SubmitChanges();
+ ShowNotify("确认通过成功!", MessageBoxIcon.Success);
+ PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
+ }
+ }
+
+ ///
+ /// 关闭
+ ///
+ protected void WindowAtt_Close(object sender, WindowCloseEventArgs e)
+ {
+
+ }
+ }
+}
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerConfirmEdit.aspx.designer.cs b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerConfirmEdit.aspx.designer.cs
new file mode 100644
index 00000000..a6911ae2
--- /dev/null
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerConfirmEdit.aspx.designer.cs
@@ -0,0 +1,305 @@
+//------------------------------------------------------------------------------
+// <自动生成>
+// 此代码由工具生成。
+//
+// 对此文件的更改可能导致不正确的行为,如果
+// 重新生成代码,则所做更改将丢失。
+// 自动生成>
+//------------------------------------------------------------------------------
+
+namespace FineUIPro.Web.TestRun.BeforeTestRun
+{
+
+
+ public partial class FourDecisionProposerConfirmEdit
+ {
+
+ ///
+ /// form1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::System.Web.UI.HtmlControls.HtmlForm form1;
+
+ ///
+ /// PageManager1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.PageManager PageManager1;
+
+ ///
+ /// SimpleForm1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Form SimpleForm1;
+
+ ///
+ /// ContentPanel1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.ContentPanel ContentPanel1;
+
+ ///
+ /// Form2 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Form Form2;
+
+ ///
+ /// lblProjectName 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblProjectName;
+
+ ///
+ /// lblResponsibilityUnit 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblResponsibilityUnit;
+
+ ///
+ /// lblQuestionDesc 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblQuestionDesc;
+
+ ///
+ /// lblRestrictCondition 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblRestrictCondition;
+
+ ///
+ /// lblLevel 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblLevel;
+
+ ///
+ /// lblSpeciality 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblSpeciality;
+
+ ///
+ /// lblAskDestructionTime 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblAskDestructionTime;
+
+ ///
+ /// lblRealityDestructionTime 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblRealityDestructionTime;
+
+ ///
+ /// lblResponsibilityUser 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblResponsibilityUser;
+
+ ///
+ /// lblProposeUser 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblProposeUser;
+
+ ///
+ /// lblGeneraUser 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblGeneraUser;
+
+ ///
+ /// lblSupervisionUser 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblSupervisionUser;
+
+ ///
+ /// lblOwnerUser 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblOwnerUser;
+
+ ///
+ /// lblDecisionIsClose 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblDecisionIsClose;
+
+ ///
+ /// Panel1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Panel Panel1;
+
+ ///
+ /// imgBtnQuestionFile 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button imgBtnQuestionFile;
+
+ ///
+ /// Panel2 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Panel Panel2;
+
+ ///
+ /// lblAttach 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblAttach;
+
+ ///
+ /// imgBtnRectifyFile 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button imgBtnRectifyFile;
+
+ ///
+ /// txtConfirmDesc 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextArea txtConfirmDesc;
+
+ ///
+ /// plApprove2 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.FormRow plApprove2;
+
+ ///
+ /// gvTcrcl 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Grid gvTcrcl;
+
+ ///
+ /// Toolbar1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Toolbar Toolbar1;
+
+ ///
+ /// ToolbarFill1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.ToolbarFill ToolbarFill1;
+
+ ///
+ /// btnReturn 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnReturn;
+
+ ///
+ /// btnPass 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnPass;
+
+ ///
+ /// WindowAtt 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Window WindowAtt;
+ }
+}
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerHandle.aspx b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerHandle.aspx
new file mode 100644
index 00000000..7fb3baca
--- /dev/null
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerHandle.aspx
@@ -0,0 +1,140 @@
+<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="FourDecisionProposerHandle.aspx.cs" Inherits="FineUIPro.Web.TestRun.BeforeTestRun.FourDecisionProposerHandle" %>
+
+
+
+
+
+ 提出人处理
+
+
+
+
+
+
+
+
+
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerHandle.aspx.cs b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerHandle.aspx.cs
new file mode 100644
index 00000000..32eb6135
--- /dev/null
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerHandle.aspx.cs
@@ -0,0 +1,299 @@
+using BLL;
+using Model;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Data.SqlClient;
+using System.Linq;
+using System.Web;
+using System.Web.UI;
+using System.Web.UI.WebControls;
+
+namespace FineUIPro.Web.TestRun.BeforeTestRun
+{
+ public partial class FourDecisionProposerHandle : PageBase
+ {
+ ///
+ /// 子系统主键
+ ///
+ public string SsubSystemId
+ {
+ get { return (string)ViewState["SsubSystemId"]; }
+ set { ViewState["SsubSystemId"] = value; }
+ }
+
+ protected void Page_Load(object sender, EventArgs e)
+ {
+ if (!IsPostBack)
+ {
+ //加载树
+ this.InitTreeMenu();
+ }
+ }
+
+ ///
+ /// 加载树
+ ///
+ private void InitTreeMenu()
+ {
+ this.tvControlItem.Nodes.Clear();
+ TreeNode rootNode = new TreeNode();
+ rootNode.Text = "提出人处理";
+ rootNode.NodeID = "0";
+ rootNode.Expanded = true;
+ rootNode.ToolTip = "";
+ rootNode.EnableClickEvent = true;
+ this.tvControlItem.Nodes.Add(rootNode);
+ var decisions = Funs.DB.PreRun_SubThreeChecksFourDecision.Where(x => x.ProposeUser == this.CurrUser.UserId && x.ProjectId == this.CurrUser.LoginProjectId).ToList();
+ if (decisions.Count == 0) return;
+ //获取子系统主键
+ var subsystemids = decisions.ConvertAll(x => x.SubSystemId);
+ //根据子系统获取其他节点ID
+ var userDevices = Funs.DB.PreRun_SysDevice.Where(p => p.ProjectId == this.CurrUser.LoginProjectId && subsystemids.Contains(p.PreRunId)).ToList();
+ List allIds = new List();
+ allIds.AddRange(userDevices.ConvertAll(x => x.ProcessesId));
+ allIds.AddRange(userDevices.ConvertAll(x => x.SystemId));
+ allIds.AddRange(subsystemids);
+ var allPreRunLs = Funs.DB.PreRun_SysDevice.Where(p => p.ProjectId == this.CurrUser.LoginProjectId && p.PreRunLevel > 1 && allIds.Contains(p.PreRunId)).ToList();
+ var onePreRunLs = allPreRunLs.Where(p => p.PreRunLevel == 2).OrderBy(x => x.Sort);
+ foreach (var item in onePreRunLs)
+ {
+ TreeNode rootUnitNode = new TreeNode();//定义根节点
+ rootUnitNode.NodeID = item.PreRunId;
+ rootUnitNode.Text = item.PreRunName;
+ rootUnitNode.ToolTip = item.PreRunName;
+ rootUnitNode.CommandName = "";
+ rootUnitNode.EnableClickEvent = false;
+ rootUnitNode.EnableExpandEvent = false;
+ rootNode.Nodes.Add(rootUnitNode);
+ rootUnitNode.Expanded = true;
+ var otherPreRunls = allPreRunLs.Where(p => p.PreRunLevel != 1).ToList();
+ this.BindNodes(rootUnitNode, otherPreRunls, item.PreRunId);
+ }
+ }
+
+ ///
+ /// 绑定树节点
+ ///
+ private void BindNodes(TreeNode node, List list, string parentId)
+ {
+ var itemList = list.Where(p => p.ParentId == parentId).OrderBy(x => x.Sort).ToList();
+ if (itemList.Count > 0)
+ {
+ foreach (var item in itemList)
+ {
+ TreeNode newNode = new TreeNode();
+ newNode.Text = item.PreRunName;
+ newNode.NodeID = item.PreRunId;
+ newNode.ToolTip = item.PreRunName;
+ newNode.CommandName = "";
+ newNode.EnableClickEvent = item.PreRunLevel == 4 ? true : false;
+ newNode.EnableExpandEvent = item.PreRunLevel == 4 ? true : false;
+ newNode.Expanded = true;
+ node.Nodes.Add(newNode);
+ BindNodes(newNode, list, item.PreRunId);
+ }
+ }
+ }
+
+ ///
+ /// 点击TreeView
+ ///
+ ///
+ ///
+ protected void tvControlItem_NodeCommand(object sender, TreeCommandEventArgs e)
+ {
+ this.SsubSystemId = tvControlItem.SelectedNodeID;
+ BindGrid();
+ }
+
+ #region 绑定数据
+
+ ///
+ /// 数据绑定
+ ///
+ public void BindGrid()
+ {
+ string strSql = @"select a.DecisionId,a.ProjectId,a.SubSystemId,a.ProposeUser,puser.UserName as ProposeUserName,a.ResponsibilityUser,ruser.UserName as ResponsibilityUserName,a.ResponsibilityUnit,unit.UnitName as ResponsibilityUnitName,a.QuestionDesc,a.Level,a.Speciality,a.AskDestructionTime,a.RealityDestructionTime,a.RestrictCondition,a.ResponsibilityProposeSatate,(case a.ResponsibilityProposeSatate when 0 then '待提交' when 1 then '提出人待处理' when 2 then '提出人处理退回' when 3 then '责任人待确认' when 4 then '责任人退回' when 5 then '责任人通过提出人待处理' when 6 then '提出人退回' when 7 then '提出人确认通过' else '' end) as ResponsibilityProposeSatateName,a.ProposeConfirm,(case a.ProposeConfirm when 1 then '未确认' when 2 then '确认通过' else '' end) as ProposeConfirmName,a.ResponsibilityConfirm,(case a.ResponsibilityConfirm when 1 then '未确认' when 2 then '确认通过' else '' end) as ResponsibilityConfirmName,a.ProposeConfirm,(case a.ProposeConfirm when 1 then '未确认' when 2 then '确认通过' else '' end) as ProposeConfirmName,a.GeneraConfirm,(case a.GeneraConfirm when 1 then '未确认' when 2 then '确认通过' else '' end) as GeneraConfirmName,a.SupervisionConfirm,(case a.SupervisionConfirm when 1 then '未确认' when 2 then '确认通过' else '' end) as SupervisionConfirmName,a.OwnerConfirm,(case a.OwnerConfirm when 1 then '未确认' when 2 then '确认通过' else '' end) as OwnerConfirmName,a.ProposeConfirmData,a.ResponsibilityConfirmData,a.GeneraConfirmData,a.SupervisionConfirmData,a.OwnerConfirmData,a.DecisionIsClose,(case a.DecisionIsClose when 1 then '已关闭' else '未关闭' end) as DecisionIsCloseName,(case ISNULL(a.AskDestructionTime,'') when '' then 0 else DATEDIFF(DAY, GETDATE(),a.AskDestructionTime) end) as DestructionDiffDay,a.AddUser,a.AddTime,a.Sort from PreRun_SubThreeChecksFourDecision as a left join Sys_User as puser on a.ProposeUser=puser.UserId left join Sys_User as ruser on a.ResponsibilityUser=ruser.UserId left join Base_Unit as unit on a.ResponsibilityUnit=unit.UnitId where 1=1 and a.SubSystemId=@SubSystemId and a.ProjectId=@ProjectId and a.ProposeUser=@ProposeUser and a.ResponsibilityProposeSatate in (1,2,4) ";
+ List listStr = new List();
+ listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
+ listStr.Add(new SqlParameter("@SubSystemId", this.SsubSystemId));
+ listStr.Add(new SqlParameter("@ProposeUser", this.CurrUser.UserId));
+ //提出人处理状态
+ if (!string.IsNullOrWhiteSpace(ddlResponsibilityProposeSatate.SelectedValue))
+ {
+ strSql += " and a.ResponsibilityProposeSatate=@ResponsibilityProposeSatate";
+ listStr.Add(new SqlParameter("@ResponsibilityProposeSatate", ddlResponsibilityProposeSatate.SelectedValue));
+ }
+ //是否关闭
+ if (!string.IsNullOrWhiteSpace(ddlDecisionState.Text))
+ {
+ strSql += " and a.DecisionState=@DecisionState";
+ listStr.Add(new SqlParameter("@DecisionState", ddlDecisionState.SelectedValue));
+ }
+ strSql += " order by a.AddTime desc";
+ SqlParameter[] parameter = listStr.ToArray();
+ DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
+ Grid1.RecordCount = tb.Rows.Count;
+ var table = this.GetPagedDataTable(Grid1, tb);
+ Grid1.DataSource = table;
+ Grid1.DataBind();
+ }
+
+ ///
+ /// 分页
+ ///
+ protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
+ {
+ Grid1.PageIndex = e.NewPageIndex;
+ BindGrid();
+ }
+
+ ///
+ /// 双击事件
+ ///
+ protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
+ {
+ btnSubmitConfirm_Click(null, null);
+ }
+
+ ///
+ /// 分页下拉框
+ ///
+ protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
+ BindGrid();
+ }
+
+ ///
+ /// 排序
+ ///
+ protected void Grid1_Sort(object sender, GridSortEventArgs e)
+ {
+ BindGrid();
+ }
+
+ ///
+ /// 行数据处理事件
+ ///
+ protected void Grid1_RowDataBound(object sender, GridRowEventArgs e)
+ {
+ DataRowView row = e.DataItem as DataRowView;
+
+ int diffDay = Convert.ToInt32(row["DestructionDiffDay"]);
+ TemplateField AdjustDiffDay = Grid1.FindColumn("DestructionDiffDay") as TemplateField;
+ int isClose = int.Parse(Grid1.DataKeys[e.RowIndex][1].ToString());
+ if (isClose != 1)
+ {
+ if (diffDay > 0)
+ {
+ e.CellAttributes[AdjustDiffDay.ColumnIndex]["data-color"] = "color1";
+ }
+ else if (diffDay == 0)
+ {
+ e.CellAttributes[AdjustDiffDay.ColumnIndex]["data-color"] = "color2";
+ }
+ else if (diffDay < 0)
+ {
+ e.CellAttributes[AdjustDiffDay.ColumnIndex]["data-color"] = "color3";
+ }
+ }
+ }
+
+ #endregion
+
+ ///
+ /// 提出人处理
+ ///
+ protected void btnSubmitConfirm_Click(object sender, EventArgs e)
+ {
+ if (Grid1.SelectedRowIndexArray.Length == 0)
+ {
+ Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
+ return;
+ }
+ var model = Funs.DB.PreRun_SubThreeChecksFourDecision.FirstOrDefault(x => x.DecisionId == Grid1.SelectedRowID);
+ if (model != null)
+ {
+ int[] arr = { 1, 4 };
+ if (!arr.Contains(model.ResponsibilityProposeSatate.Value))
+ {
+ Alert.ShowInTop("仅“提出人待处理”和“责任人退回”才可以进行处理操作!", MessageBoxIcon.Warning);
+ return;
+ }
+ }
+ PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("FourDecisionProposerHandleEdit.aspx?DecisionId={0}", Grid1.SelectedRowID, "提出人处理 - ")));
+ }
+
+ ///
+ /// 搜索
+ ///
+ protected void btnQuery_Click(object sender, EventArgs e)
+ {
+ BindGrid();
+ }
+
+ ///
+ /// 查看
+ ///
+ protected void btnView_Click(object sender, EventArgs e)
+ {
+ if (Grid1.SelectedRowIndexArray.Length == 0)
+ {
+ Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
+ return;
+ }
+ PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("FourDecisionProposerHandleEdit.aspx?DecisionId={0}&IsView=true", Grid1.SelectedRowID, "查看 - ")));
+ }
+
+ ///
+ /// 是否逾期返回
+ ///
+ ///
+ public string IsOverdue(object diffDayVal, object stateVal)
+ {
+ var result = string.Empty;
+ var diffDay = 0;
+ var itemState = 0;
+ if (diffDayVal != null) diffDay = int.Parse(diffDayVal.ToString());
+ if (stateVal != null) itemState = int.Parse(stateVal.ToString());
+ if (itemState != 1)
+ {
+ if (diffDay > 0)
+ {
+ result = "未逾期";
+ }
+ else if (diffDay == 0)
+ {
+ result = "即将逾期";
+ }
+ else if (diffDay < 0)
+ {
+ result = "已逾期";
+ }
+ }
+ else
+ {
+ result = "已关闭";
+ }
+ return result;
+ }
+
+ ///
+ /// 右击确认
+ ///
+ protected void btnMenuConfirm_Click(object sender, EventArgs e)
+ {
+ btnSubmitConfirm_Click(null, null);
+ }
+
+ ///
+ /// 关闭
+ ///
+ protected void Window1_Close(object sender, WindowCloseEventArgs e)
+ {
+
+ }
+ }
+}
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerHandle.aspx.designer.cs b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerHandle.aspx.designer.cs
new file mode 100644
index 00000000..fa871b68
--- /dev/null
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerHandle.aspx.designer.cs
@@ -0,0 +1,188 @@
+//------------------------------------------------------------------------------
+// <自动生成>
+// 此代码由工具生成。
+//
+// 对此文件的更改可能导致不正确的行为,如果
+// 重新生成代码,则所做更改将丢失。
+// 自动生成>
+//------------------------------------------------------------------------------
+
+namespace FineUIPro.Web.TestRun.BeforeTestRun
+{
+
+
+ public partial class FourDecisionProposerHandle
+ {
+
+ ///
+ /// form1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::System.Web.UI.HtmlControls.HtmlForm form1;
+
+ ///
+ /// PageManager1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.PageManager PageManager1;
+
+ ///
+ /// Panel1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Panel Panel1;
+
+ ///
+ /// panelLeftRegion 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Panel panelLeftRegion;
+
+ ///
+ /// tvControlItem 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Tree tvControlItem;
+
+ ///
+ /// Grid1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Grid Grid1;
+
+ ///
+ /// Toolbar3 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Toolbar Toolbar3;
+
+ ///
+ /// ddlResponsibilityProposeSatate 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList ddlResponsibilityProposeSatate;
+
+ ///
+ /// ddlDecisionState 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList ddlDecisionState;
+
+ ///
+ /// btnQuery 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnQuery;
+
+ ///
+ /// btnView 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnView;
+
+ ///
+ /// btnSubmitConfirm 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnSubmitConfirm;
+
+ ///
+ /// lblIsOverdue 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::System.Web.UI.WebControls.Label lblIsOverdue;
+
+ ///
+ /// ToolbarSeparator1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
+
+ ///
+ /// ToolbarText1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.ToolbarText ToolbarText1;
+
+ ///
+ /// ddlPageSize 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList ddlPageSize;
+
+ ///
+ /// Window1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Window Window1;
+
+ ///
+ /// Menu1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Menu Menu1;
+
+ ///
+ /// btnMenuConfirm 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.MenuButton btnMenuConfirm;
+ }
+}
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerHandleEdit.aspx b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerHandleEdit.aspx
new file mode 100644
index 00000000..25901988
--- /dev/null
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerHandleEdit.aspx
@@ -0,0 +1,129 @@
+<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="FourDecisionProposerHandleEdit.aspx.cs" Inherits="FineUIPro.Web.TestRun.BeforeTestRun.FourDecisionProposerHandleEdit" %>
+
+
+
+
+
+ 提出人处理
+
+
+
+
+
+
+
+
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerHandleEdit.aspx.cs b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerHandleEdit.aspx.cs
new file mode 100644
index 00000000..29b5b8ed
--- /dev/null
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerHandleEdit.aspx.cs
@@ -0,0 +1,203 @@
+using BLL;
+using Model;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Web;
+using System.Web.UI;
+using System.Web.UI.WebControls;
+
+namespace FineUIPro.Web.TestRun.BeforeTestRun
+{
+ public partial class FourDecisionProposerHandleEdit : PageBase
+ {
+ ///
+ /// 主键
+ ///
+ public string DecisionId
+ {
+ get { return (string)ViewState["DecisionId"]; }
+ set { ViewState["DecisionId"] = value; }
+ }
+
+ ///
+ /// 是否查看
+ ///
+ public bool IsView
+ {
+ get { return (bool)ViewState["IsView"]; }
+ set { ViewState["IsView"] = value; }
+ }
+
+ ///
+ /// 问题图片是否可编辑
+ ///
+ public int QuestionEditImg
+ {
+ get { return (int)ViewState["QuestionEditImg"]; }
+ set { ViewState["QuestionEditImg"] = value; }
+ }
+
+ protected void Page_Load(object sender, EventArgs e)
+ {
+ this.DecisionId = Request["DecisionId"];
+ //是否查看
+ this.IsView = string.IsNullOrWhiteSpace(Request["IsView"]) ? false : bool.Parse(Request["IsView"]);
+ //数据绑定
+ PageInit();
+ //判断是否查看
+ if (IsView)
+ {
+ btnReturn.Hidden = true;
+ btnSave.Hidden = true;
+ QuestionEditImg = -1;
+ lblResponsibilityUnit.Enabled = false;
+ lblQuestionDesc.Enabled = false;
+ lblRestrictCondition.Enabled = false;
+ lblLevel.Enabled = false;
+ lblSpeciality.Enabled = false;
+ lblAskDestructionTime.Enabled = false;
+ lblRealityDestructionTime.Enabled = false;
+ lblResponsibilityUser.Enabled = false;
+ lblProposeUser.Enabled = false;
+ lblGeneraUser.Enabled = false;
+ lblSupervisionUser.Enabled = false;
+ lblOwnerUser.Enabled = false;
+ lblDecisionIsClose.Enabled = false;
+ txtConfirmDesc.Enabled = false;
+ }
+ }
+
+ ///
+ /// 默认绑定
+ ///
+ public void PageInit()
+ {
+ QuestionEditImg = 0;
+ var query = from a in Funs.DB.PreRun_SubThreeChecksFourDecision
+ join b in Funs.DB.Base_Project on a.ProjectId equals b.ProjectId
+ join c in Funs.DB.Base_Unit on a.ResponsibilityUnit equals c.UnitId
+ join d in Funs.DB.Sys_User on a.ResponsibilityUser equals d.UserId
+ join e in Funs.DB.Sys_User on a.ProposeUser equals e.UserId
+ join f in Funs.DB.Sys_User on a.GeneraUser equals f.UserId
+ join g in Funs.DB.Sys_User on a.SupervisionUser equals g.UserId
+ join h in Funs.DB.Sys_User on a.OwnerUser equals h.UserId
+ where a.DecisionId == this.DecisionId
+ select new
+ {
+ a.DecisionId,
+ a.ProjectId,
+ b.ProjectName,
+ a.ResponsibilityUnit,
+ ResponsibilityUnitName = c.UnitName,
+ a.ResponsibilityUser,
+ ResponsibilityUserName = d.UserName,
+ a.ProposeUser,
+ ProposeUserName = e.UserName,
+ a.GeneraUser,
+ GeneraUserName = f.UserName,
+ a.SupervisionUser,
+ SupervisionUserName = g.UserName,
+ a.OwnerUser,
+ OwnerUserName = h.UserName,
+ a.QuestionDesc,
+ a.Level,
+ a.Speciality,
+ a.AskDestructionTime,
+ a.RealityDestructionTime,
+ a.RestrictCondition,
+ a.DecisionIsClose,
+ DecisionIsCloseName = a.DecisionIsClose == 1 ? "已关闭" : "未关闭"
+ };
+ var model = query.FirstOrDefault();
+ if (model != null)
+ {
+ lblProjectName.Text = model.ProjectName;
+ lblResponsibilityUnit.Text = model.ResponsibilityUnitName;
+ lblQuestionDesc.Text = model.QuestionDesc;
+ lblRestrictCondition.Text = model.RestrictCondition;
+ lblLevel.Text = model.Level;
+ lblSpeciality.Text = model.Speciality;
+ lblAskDestructionTime.Text = model.AskDestructionTime.Value != null ? model.AskDestructionTime.Value.ToString("yyyy-MM-dd") : string.Empty;
+ lblRealityDestructionTime.Text = model.RealityDestructionTime != null ? model.RealityDestructionTime.Value.ToString("yyyy-MM-dd") : string.Empty;
+ lblResponsibilityUser.Text = model.ResponsibilityUserName;
+ lblProposeUser.Text = model.ProposeUserName;
+ lblGeneraUser.Text = model.GeneraUserName;
+ lblSupervisionUser.Text = model.SupervisionUserName;
+ lblOwnerUser.Text = model.OwnerUserName;
+ lblDecisionIsClose.Text = model.DecisionIsCloseName;
+ }
+ }
+
+ ///
+ /// 问题图片查看
+ ///
+ protected void imgBtnQuestionFile_Click(object sender, EventArgs e)
+ {
+ PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/CheckControl&menuId={2}", QuestionEditImg, this.DecisionId + "q", Const.InspectTailTerm)));
+ }
+
+ ///
+ /// 退回
+ ///
+ protected void btnReturn_Click(object sender, EventArgs e)
+ {
+ var decisionModel = Funs.DB.PreRun_SubThreeChecksFourDecision.FirstOrDefault(x => x.DecisionId == this.DecisionId);
+ if (decisionModel != null)
+ {
+ decisionModel.ResponsibilityProposeSatate = 2;
+ var model = new PreRun_DecisionConfirmRecords();
+ model.ConfirmId = Guid.NewGuid().ToString();
+ model.ProjectId = this.CurrUser.LoginProjectId;
+ model.DecisionId = this.DecisionId;
+ model.ConfirmDesc = txtConfirmDesc.Text;
+ model.ConfirmTime = DateTime.Now;
+ model.ConfirmUser = this.CurrUser.UserId;
+ model.ConfirmType = 1;
+ model.ConfirmState = 2;
+ model.AddUser = this.CurrUser.UserId;
+ model.AddTime = DateTime.Now;
+ Funs.DB.PreRun_DecisionConfirmRecords.InsertOnSubmit(model);
+ Funs.DB.SubmitChanges();
+ ShowNotify("退回成功!", MessageBoxIcon.Success);
+ PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
+ }
+ }
+
+ ///
+ /// 确认并提交责任人确认
+ ///
+ protected void btnSave_Click(object sender, EventArgs e)
+ {
+ var decisionModel = Funs.DB.PreRun_SubThreeChecksFourDecision.FirstOrDefault(x => x.DecisionId == this.DecisionId);
+ if (decisionModel != null)
+ {
+ decisionModel.ResponsibilityProposeSatate = 3;
+ decisionModel.ProposeHandleData = DateTime.Now;
+ var model = new PreRun_DecisionConfirmRecords();
+ model.ConfirmId = Guid.NewGuid().ToString();
+ model.ProjectId = this.CurrUser.LoginProjectId;
+ model.DecisionId = this.DecisionId;
+ model.ConfirmDesc = txtConfirmDesc.Text;
+ model.ConfirmTime = DateTime.Now;
+ model.ConfirmUser = this.CurrUser.UserId;
+ model.ConfirmType = 1;
+ model.ConfirmState = 1;
+ model.AddUser = this.CurrUser.UserId;
+ model.AddTime = DateTime.Now;
+ Funs.DB.PreRun_DecisionConfirmRecords.InsertOnSubmit(model);
+ Funs.DB.SubmitChanges();
+ ShowNotify("确认并提交责任人确认成功!", MessageBoxIcon.Success);
+ PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
+ }
+ }
+
+ ///
+ /// 关闭
+ ///
+ protected void WindowAtt_Close(object sender, WindowCloseEventArgs e)
+ {
+
+ }
+ }
+}
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerHandleEdit.aspx.designer.cs b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerHandleEdit.aspx.designer.cs
new file mode 100644
index 00000000..f8e2fbc9
--- /dev/null
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionProposerHandleEdit.aspx.designer.cs
@@ -0,0 +1,260 @@
+//------------------------------------------------------------------------------
+// <自动生成>
+// 此代码由工具生成。
+//
+// 对此文件的更改可能导致不正确的行为,如果
+// 重新生成代码,则所做更改将丢失。
+// 自动生成>
+//------------------------------------------------------------------------------
+
+namespace FineUIPro.Web.TestRun.BeforeTestRun
+{
+
+
+ public partial class FourDecisionProposerHandleEdit
+ {
+
+ ///
+ /// form1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::System.Web.UI.HtmlControls.HtmlForm form1;
+
+ ///
+ /// PageManager1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.PageManager PageManager1;
+
+ ///
+ /// SimpleForm1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Form SimpleForm1;
+
+ ///
+ /// ContentPanel1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.ContentPanel ContentPanel1;
+
+ ///
+ /// Form2 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Form Form2;
+
+ ///
+ /// lblProjectName 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblProjectName;
+
+ ///
+ /// lblResponsibilityUnit 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblResponsibilityUnit;
+
+ ///
+ /// lblQuestionDesc 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblQuestionDesc;
+
+ ///
+ /// lblRestrictCondition 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblRestrictCondition;
+
+ ///
+ /// lblLevel 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblLevel;
+
+ ///
+ /// lblSpeciality 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblSpeciality;
+
+ ///
+ /// lblAskDestructionTime 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblAskDestructionTime;
+
+ ///
+ /// lblRealityDestructionTime 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblRealityDestructionTime;
+
+ ///
+ /// lblResponsibilityUser 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblResponsibilityUser;
+
+ ///
+ /// lblProposeUser 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblProposeUser;
+
+ ///
+ /// lblGeneraUser 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblGeneraUser;
+
+ ///
+ /// lblSupervisionUser 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblSupervisionUser;
+
+ ///
+ /// lblOwnerUser 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblOwnerUser;
+
+ ///
+ /// lblDecisionIsClose 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label lblDecisionIsClose;
+
+ ///
+ /// Panel1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Panel Panel1;
+
+ ///
+ /// imgBtnQuestionFile 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button imgBtnQuestionFile;
+
+ ///
+ /// txtConfirmDesc 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextArea txtConfirmDesc;
+
+ ///
+ /// Toolbar1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Toolbar Toolbar1;
+
+ ///
+ /// ToolbarFill1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.ToolbarFill ToolbarFill1;
+
+ ///
+ /// btnReturn 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnReturn;
+
+ ///
+ /// btnSave 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnSave;
+
+ ///
+ /// WindowAtt 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Window WindowAtt;
+ }
+}
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionResponsibilityConfirm.aspx b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionResponsibilityConfirm.aspx
index e5b101f6..b605a0b3 100644
--- a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionResponsibilityConfirm.aspx
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionResponsibilityConfirm.aspx
@@ -44,11 +44,12 @@
-
+
-
-
-
+
+
+
+
@@ -79,8 +80,8 @@
-
-
+
+
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionResponsibilityConfirm.aspx.cs b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionResponsibilityConfirm.aspx.cs
index 425dd9b4..e9de8c19 100644
--- a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionResponsibilityConfirm.aspx.cs
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionResponsibilityConfirm.aspx.cs
@@ -44,7 +44,8 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
rootNode.ToolTip = "";
rootNode.EnableClickEvent = true;
this.tvControlItem.Nodes.Add(rootNode);
- var decisions = Funs.DB.PreRun_SubThreeChecksFourDecision.Where(x => x.ResponsibilityUser == this.CurrUser.UserId && x.ProjectId == this.CurrUser.LoginProjectId).ToList();
+ int[] state = { 3, 4, 5, 6 };
+ var decisions = Funs.DB.PreRun_SubThreeChecksFourDecision.Where(x => x.ResponsibilityUser == this.CurrUser.UserId && state.Contains(x.ResponsibilityProposeSatate.Value) && x.ProjectId == this.CurrUser.LoginProjectId).ToList();
if (decisions.Count == 0) return;
//获取子系统主键
var subsystemids = decisions.ConvertAll(x => x.SubSystemId);
@@ -114,16 +115,16 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
///
public void BindGrid()
{
- string strSql = @"select a.DecisionId,a.ProjectId,a.SubSystemId,a.ProposeUser,puser.UserName as ProposeUserName,a.ResponsibilityUser,ruser.UserName as ResponsibilityUserName,a.ResponsibilityUnit,unit.UnitName as ResponsibilityUnitName,a.QuestionDesc,a.Level,a.Speciality,a.AskDestructionTime,a.RealityDestructionTime,a.RestrictCondition,a.ResponsibilityConfirm,(case a.ResponsibilityConfirm when 0 then '待提交' when 1 then '未确认' when 2 then '确认退回' when 3 then '确认通过' else '待提交' end) as ResponsibilityConfirmName,a.ProposeConfirm,(case a.ProposeConfirm when 1 then '未确认' when 2 then '确认通过' else '' end) as ProposeConfirmName,a.GeneraConfirm,(case a.GeneraConfirm when 1 then '未确认' when 2 then '确认通过' else '' end) as GeneraConfirmName,a.SupervisionConfirm,(case a.SupervisionConfirm when 1 then '未确认' when 2 then '确认通过' else '' end) as SupervisionConfirmName,a.OwnerConfirm,(case a.OwnerConfirm when 1 then '未确认' when 2 then '确认通过' else '' end) as OwnerConfirmName,a.ProposeConfirmData,a.ResponsibilityConfirmData,a.GeneraConfirmData,a.SupervisionConfirmData,a.OwnerConfirmData,a.DecisionIsClose,(case a.DecisionIsClose when 1 then '已关闭' else '未关闭' end) as DecisionIsCloseName,(case ISNULL(a.AskDestructionTime,'') when '' then 0 else DATEDIFF(DAY, GETDATE(),a.AskDestructionTime) end) as DestructionDiffDay,a.AddUser,a.AddTime,a.Sort from PreRun_SubThreeChecksFourDecision as a left join Sys_User as puser on a.ProposeUser=puser.UserId left join Sys_User as ruser on a.ResponsibilityUser=ruser.UserId left join Base_Unit as unit on a.ResponsibilityUnit=unit.UnitId where 1=1 and a.SubSystemId=@SubSystemId and a.ProjectId=@ProjectId and a.ResponsibilityUser=@ResponsibilityUser and a.ResponsibilityConfirm>0 ";
+ string strSql = @"select a.DecisionId,a.ProjectId,a.SubSystemId,a.ProposeUser,puser.UserName as ProposeUserName,a.ResponsibilityUser,ruser.UserName as ResponsibilityUserName,a.ResponsibilityUnit,unit.UnitName as ResponsibilityUnitName,a.QuestionDesc,a.Level,a.Speciality,a.AskDestructionTime,a.RealityDestructionTime,a.RestrictCondition,a.ResponsibilityProposeSatate,(case a.ResponsibilityProposeSatate when 0 then '待提交' when 1 then '提出人待处理' when 2 then '提出人处理退回' when 3 then '责任人待确认' when 4 then '责任人退回' when 5 then '责任人通过提出人待处理' when 6 then '提出人退回' when 7 then '提出人确认通过' else '' end) as ResponsibilityProposeSatateName,a.ProposeConfirm,(case a.ProposeConfirm when 1 then '未确认' when 2 then '确认通过' else '' end) as ProposeConfirmName,a.ResponsibilityConfirm,(case a.ResponsibilityConfirm when 1 then '未确认' when 2 then '确认通过' else '' end) as ResponsibilityConfirmName,a.ProposeConfirm,(case a.ProposeConfirm when 1 then '未确认' when 2 then '确认通过' else '' end) as ProposeConfirmName,a.GeneraConfirm,(case a.GeneraConfirm when 1 then '未确认' when 2 then '确认通过' else '' end) as GeneraConfirmName,a.SupervisionConfirm,(case a.SupervisionConfirm when 1 then '未确认' when 2 then '确认通过' else '' end) as SupervisionConfirmName,a.OwnerConfirm,(case a.OwnerConfirm when 1 then '未确认' when 2 then '确认通过' else '' end) as OwnerConfirmName,a.ProposeConfirmData,a.ResponsibilityConfirmData,a.GeneraConfirmData,a.SupervisionConfirmData,a.OwnerConfirmData,a.DecisionIsClose,(case a.DecisionIsClose when 1 then '已关闭' else '未关闭' end) as DecisionIsCloseName,(case ISNULL(a.AskDestructionTime,'') when '' then 0 else DATEDIFF(DAY, GETDATE(),a.AskDestructionTime) end) as DestructionDiffDay,a.AddUser,a.AddTime,a.Sort from PreRun_SubThreeChecksFourDecision as a left join Sys_User as puser on a.ProposeUser=puser.UserId left join Sys_User as ruser on a.ResponsibilityUser=ruser.UserId left join Base_Unit as unit on a.ResponsibilityUnit=unit.UnitId where 1=1 and a.SubSystemId=@SubSystemId and a.ProjectId=@ProjectId and a.ResponsibilityUser=@ResponsibilityUser and a.ResponsibilityProposeSatate in (3,4,5,6) ";
List listStr = new List();
listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
listStr.Add(new SqlParameter("@SubSystemId", this.SsubSystemId));
listStr.Add(new SqlParameter("@ResponsibilityUser", this.CurrUser.UserId));
- //是否确认
- if (!string.IsNullOrWhiteSpace(ddlResponsibilityConfirm.SelectedValue))
+ //提出人/责任人处理状态
+ if (!string.IsNullOrWhiteSpace(ddlResponsibilityProposeSatate.SelectedValue))
{
- strSql += " and a.ResponsibilityConfirm=@ResponsibilityConfirm";
- listStr.Add(new SqlParameter("@ResponsibilityConfirm", ddlResponsibilityConfirm.SelectedValue));
+ strSql += " and a.ResponsibilityProposeSatate=@ResponsibilityProposeSatate";
+ listStr.Add(new SqlParameter("@ResponsibilityProposeSatate", ddlResponsibilityProposeSatate.SelectedValue));
}
//是否关闭
if (!string.IsNullOrWhiteSpace(ddlDecisionState.Text))
@@ -216,9 +217,10 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
var model = Funs.DB.PreRun_SubThreeChecksFourDecision.FirstOrDefault(x => x.DecisionId == Grid1.SelectedRowID);
if (model != null)
{
- if (model.ResponsibilityConfirm != 1)
+ int[] arr = { 3, 6 };
+ if (!arr.Contains(model.ResponsibilityProposeSatate.Value))
{
- Alert.ShowInTop("责任人“未确认”才可进行责任人确认操作!", MessageBoxIcon.Warning);
+ Alert.ShowInTop("仅“责任人待确认”和“提出人退回”状态才可进行责任人确认!", MessageBoxIcon.Warning);
return;
}
}
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionResponsibilityConfirm.aspx.designer.cs b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionResponsibilityConfirm.aspx.designer.cs
index 84f59230..e6a0b71b 100644
--- a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionResponsibilityConfirm.aspx.designer.cs
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionResponsibilityConfirm.aspx.designer.cs
@@ -78,13 +78,13 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
protected global::FineUIPro.Toolbar Toolbar3;
///
- /// ddlResponsibilityConfirm 控件。
+ /// ddlResponsibilityProposeSatate 控件。
///
///
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
- protected global::FineUIPro.DropDownList ddlResponsibilityConfirm;
+ protected global::FineUIPro.DropDownList ddlResponsibilityProposeSatate;
///
/// ddlDecisionState 控件。
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionResponsibilityConfirmEdit.aspx b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionResponsibilityConfirmEdit.aspx
index 9a3cc857..6b8af23f 100644
--- a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionResponsibilityConfirmEdit.aspx
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionResponsibilityConfirmEdit.aspx
@@ -106,7 +106,7 @@
-
+
@@ -114,6 +114,30 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -122,7 +146,7 @@
-
+
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionResponsibilityConfirmEdit.aspx.cs b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionResponsibilityConfirmEdit.aspx.cs
index 6713554e..916f66b2 100644
--- a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionResponsibilityConfirmEdit.aspx.cs
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionResponsibilityConfirmEdit.aspx.cs
@@ -2,6 +2,8 @@
using Model;
using System;
using System.Collections.Generic;
+using System.Data;
+using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.UI;
@@ -29,7 +31,6 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
set { ViewState["IsView"] = value; }
}
-
///
/// 问题图片是否可编辑
///
@@ -55,6 +56,8 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
this.IsView = string.IsNullOrWhiteSpace(Request["IsView"]) ? false : bool.Parse(Request["IsView"]);
//数据绑定
PageInit();
+ //提出人处理
+ gvDataBrid();
//判断是否查看
if (IsView)
{
@@ -141,6 +144,22 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
}
}
+ ///
+ /// 提出人处理
+ ///
+ public void gvDataBrid()
+ {
+ string strSql = @"select a.ConfirmId,a.ProjectId,a.DecisionId,a.ConfirmDesc,a.ConfirmTime,a.ConfirmUser,b.UserName as ConfirmUserName,a.ConfirmType,(case a.ConfirmType when 1 then '提出人处理' when 2 then '责任人确认' when 3 then '提出人确认' when 4 then '总包确认' when 5 then '监理确认' when 6 then '业主确认' else '' end) as ConfirmTypeName,a.ConfirmState,(case a.ConfirmState when 1 then '处理通过' when 2 then '处理退回' else '' end) as ConfirmStateName,a.AddUser,a.AddTime from PreRun_DecisionConfirmRecords as a left join Sys_User as b on a.ConfirmUser=b.UserId where a.ProjectId=@ProjectId and a.DecisionId=@DecisionId and a.ConfirmType=1";
+ List listStr = new List();
+ listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
+ listStr.Add(new SqlParameter("@DecisionId", this.DecisionId));
+ strSql += " order by a.AddTime asc";
+ SqlParameter[] parameter = listStr.ToArray();
+ DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
+ gvTcrcl.DataSource = tb;
+ gvTcrcl.DataBind();
+ }
+
///
/// 问题图片查看
///
@@ -165,7 +184,8 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
var decisionModel = Funs.DB.PreRun_SubThreeChecksFourDecision.FirstOrDefault(x => x.DecisionId == this.DecisionId);
if (decisionModel != null)
{
- decisionModel.ResponsibilityConfirm = 2;
+ decisionModel.ResponsibilityConfirm = 1;
+ decisionModel.ResponsibilityProposeSatate = 4;
var model = new PreRun_DecisionConfirmRecords();
model.ConfirmId = Guid.NewGuid().ToString();
model.ProjectId = this.CurrUser.LoginProjectId;
@@ -173,7 +193,7 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
model.ConfirmDesc = txtConfirmDesc.Text;
model.ConfirmTime = DateTime.Now;
model.ConfirmUser = this.CurrUser.UserId;
- model.ConfirmType = 1;
+ model.ConfirmType = 2;
model.ConfirmState = 2;
model.AddUser = this.CurrUser.UserId;
model.AddTime = DateTime.Now;
@@ -185,14 +205,15 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
}
///
- /// 确认通过
+ /// 销项完成
///
protected void btnPass_Click(object sender, EventArgs e)
{
var decisionModel = Funs.DB.PreRun_SubThreeChecksFourDecision.FirstOrDefault(x => x.DecisionId == this.DecisionId);
if (decisionModel != null)
{
- decisionModel.ResponsibilityConfirm = 3;
+ decisionModel.ResponsibilityProposeSatate = 5;
+ decisionModel.ResponsibilityConfirm = 2;
decisionModel.ResponsibilityConfirmData = DateTime.Now;
var model = new PreRun_DecisionConfirmRecords();
model.ConfirmId = Guid.NewGuid().ToString();
@@ -201,7 +222,7 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
model.ConfirmDesc = txtConfirmDesc.Text;
model.ConfirmTime = DateTime.Now;
model.ConfirmUser = this.CurrUser.UserId;
- model.ConfirmType = 1;
+ model.ConfirmType = 2;
model.ConfirmState = 1;
model.AddUser = this.CurrUser.UserId;
model.AddTime = DateTime.Now;
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionResponsibilityConfirmEdit.aspx.designer.cs b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionResponsibilityConfirmEdit.aspx.designer.cs
index 0e212674..afdc6679 100644
--- a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionResponsibilityConfirmEdit.aspx.designer.cs
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/FourDecisionResponsibilityConfirmEdit.aspx.designer.cs
@@ -239,6 +239,24 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
///
protected global::FineUIPro.TextArea txtConfirmDesc;
+ ///
+ /// plApprove2 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.FormRow plApprove2;
+
+ ///
+ /// gvTcrcl 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Grid gvTcrcl;
+
///
/// Toolbar1 控件。
///
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/InspectTailTermList.aspx.cs b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/InspectTailTermList.aspx.cs
index 7eb0f993..c7a83fa4 100644
--- a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/InspectTailTermList.aspx.cs
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/InspectTailTermList.aspx.cs
@@ -51,7 +51,7 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
{
var selectlist = YscInspectItems(workPackIds, subSystemIds);
var systemIds = list.Select(x => x.SystemId).ToList();
- var syslist = Funs.DB.PreRun_SysDevice.Where(x => systemIds.Contains(x.PreRunId));
+ var syslist = Funs.DB.PreRun_SysDevice.Where(x => systemIds.Contains(x.PreRunId)).OrderBy(o => o.Sort).ThenBy(t => t.PreRunLevel);
foreach (var itemSys in syslist)
{
TreeNode rootFirstNode = new TreeNode();//定义根节点
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/InspectWanderAboutAllPassList.aspx.cs b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/InspectWanderAboutAllPassList.aspx.cs
index 555ae203..cb6cc7bb 100644
--- a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/InspectWanderAboutAllPassList.aspx.cs
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/InspectWanderAboutAllPassList.aspx.cs
@@ -50,7 +50,7 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
{
var selectlist = YscInspectItems(workPackIds, subSystemIds);
var systemIds = list.Select(x => x.SystemId).ToList();
- var syslist = Funs.DB.PreRun_SysDevice.Where(x => systemIds.Contains(x.PreRunId));
+ var syslist = Funs.DB.PreRun_SysDevice.Where(x => systemIds.Contains(x.PreRunId)).OrderBy(o => o.Sort).ThenBy(t => t.PreRunLevel);
foreach (var itemSys in syslist)
{
TreeNode rootFirstNode = new TreeNode();//定义根节点
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/InspectWanderAboutList.aspx.cs b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/InspectWanderAboutList.aspx.cs
index ccbefcce..d15b1ba0 100644
--- a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/InspectWanderAboutList.aspx.cs
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/InspectWanderAboutList.aspx.cs
@@ -50,7 +50,7 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
{
var selectlist = YscInspectItems(workPackIds, subSystemIds);
var systemIds = list.Select(x => x.SystemId).ToList();
- var syslist = Funs.DB.PreRun_SysDevice.Where(x => systemIds.Contains(x.PreRunId));
+ var syslist = Funs.DB.PreRun_SysDevice.Where(x => systemIds.Contains(x.PreRunId)).OrderBy(o => o.Sort).ThenBy(t => t.PreRunLevel);
foreach (var itemSys in syslist)
{
TreeNode rootFirstNode = new TreeNode();//定义根节点
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/SiteImplementation.aspx b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/SiteImplementation.aspx
index 35750233..b17a03ac 100644
--- a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/SiteImplementation.aspx
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/SiteImplementation.aspx
@@ -84,8 +84,8 @@
-
-
+
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/SiteImplementationList.aspx.cs b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/SiteImplementationList.aspx.cs
index a317c5dc..43134eb5 100644
--- a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/SiteImplementationList.aspx.cs
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/SiteImplementationList.aspx.cs
@@ -49,7 +49,7 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
{
var selectlist = YscInspectItems(workPackIds, subSystemIds);
var systemIds = list.Select(x => x.SystemId).ToList();
- var syslist = Funs.DB.PreRun_SysDevice.Where(x => systemIds.Contains(x.PreRunId));
+ var syslist = Funs.DB.PreRun_SysDevice.Where(x => systemIds.Contains(x.PreRunId)).OrderBy(o => o.Sort).ThenBy(t => t.PreRunLevel);
foreach (var itemSys in syslist)
{
TreeNode rootFirstNode = new TreeNode();//定义根节点
diff --git a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/SubInspectTerm.aspx b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/SubInspectTerm.aspx
index 72eb85e4..494cbc42 100644
--- a/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/SubInspectTerm.aspx
+++ b/SGGL/FineUIPro.Web/TestRun/BeforeTestRun/SubInspectTerm.aspx
@@ -10,6 +10,10 @@
white-space: normal;
word-break: break-all;
}
+ .customlabel span {
+ color: red;
+ font-weight: bold;
+ }
@@ -29,6 +33,15 @@
+
+
+
+
+
+
+
+
+
@@ -176,6 +189,16 @@
return valid;
}
+ var basePath = '<%= PageContext.ResolveUrl("~/") %>';
+ function openHelloFineUI() {
+ parent.addExampleTab({
+ id: 'fnode46',
+ iframeUrl: basePath + 'TestRun/BeforeTestRun/TestRunRecordUploadList.aspx',
+ title: '试车记录上传',
+ refreshWhenExist: true
+ });
+ }
+