diff --git a/DataBase/版本日志/SGGLDB_WH_2024-05-22-wq.sql b/DataBase/版本日志/SGGLDB_WH_2024-05-22-wq.sql
new file mode 100644
index 00000000..5cff6ace
--- /dev/null
+++ b/DataBase/版本日志/SGGLDB_WH_2024-05-22-wq.sql
@@ -0,0 +1,31 @@
+delete Sys_Menu where MenuId='17E206A1-E06B-40C0-8DCB-E3AAA2E3B339'
+INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Icon,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)VALUES('17E206A1-E06B-40C0-8DCB-E3AAA2E3B339','λֲ()',null,'CQMS/WBS/Control/DivisionSubProjects.aspx',1,'3B322232-38A1-4291-9832-CD4A01C2A975','Menu_CQMS',0,1,1)
+
+--==WBSλֲ̻
+if object_id(N'Division_SubProjects',N'U') is not null
+drop table dbo.Division_SubProjects
+CREATE TABLE dbo.Division_SubProjects(
+ DivisionId varchar(50) NOT NULL,--
+ ProjectId varchar(50) NULL,--Ŀ
+ ParentId varchar (50) NULL,--ϼ
+ DivisionLevel int NULL,--
+ EngineeringCode varchar(50) NULL,--λ̱
+ EngineeringName varchar(50) NULL,--λ
+ SubEngineeringCode varchar(50) NULL,--ӵλ̱
+ SubEngineeringName varchar(50) NULL,--ӵλ
+ BranchEngineeringCode varchar(50) NULL,--ֲ̱
+ BranchEngineeringName varchar(50) NULL,--ֲ
+ SubBranchEngineeringName varchar(50) NULL,--ӷֲ
+ ProEngineeringCode varchar(50) NULL,--̱
+ ProEngineeringName varchar(50) NULL,--
+ ProEngineeringNum varchar(50) NULL,--ֲ
+ Remark nvarchar(150) NULL,--ע
+ AddUser varchar(50) NULL,--
+ OperateTime datetime NULL,--
+ Sort int NULL,--
+ CONSTRAINT [PK_Division_SubProjects] PRIMARY KEY CLUSTERED
+(
+ [DivisionId] ASC
+)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
+) ON [PRIMARY]
+GO
\ No newline at end of file
diff --git a/SGGL/BLL/Common/Const.cs b/SGGL/BLL/Common/Const.cs
index 8e468e98..35d4ddf2 100644
--- a/SGGL/BLL/Common/Const.cs
+++ b/SGGL/BLL/Common/Const.cs
@@ -3131,6 +3131,10 @@ namespace BLL
///
public const string PreRunUrl = "File\\Excel\\TestRun\\系统划分.xlsx";
///
+ /// 单位分部分项工程划分
+ ///
+ public const string WBSDivisionUrl = "File\\Excel\\WBS\\单位分部分项工程划分.xlsx";
+ ///
/// 管道一览表
///
public const string PropertyUrl = "File\\Excel\\TestRun\\管道一览表.xlsx";
diff --git a/SGGL/FineUIPro.Web/CQMS/ManageReportNew/MonthReport.aspx.cs b/SGGL/FineUIPro.Web/CQMS/ManageReportNew/MonthReport.aspx.cs
index 567750f3..4df21ca0 100644
--- a/SGGL/FineUIPro.Web/CQMS/ManageReportNew/MonthReport.aspx.cs
+++ b/SGGL/FineUIPro.Web/CQMS/ManageReportNew/MonthReport.aspx.cs
@@ -152,7 +152,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
* @param doc Document对象
* @return
*/
- public static Cell CreateCell(String value, Document doc, double cellWidth, string cellMerge = "",string CenterPage="")
+ public static Cell CreateCell(String value, Document doc, double cellWidth, string cellMerge = "",string CenterPage="",string cellUnitLeft="")
{
Cell cell = new Cell(doc);
Paragraph p = new Paragraph(doc);
@@ -177,7 +177,14 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//序号
value = " " + value;
}
- p.ParagraphFormat.Alignment = ParagraphAlignment.Center;//表格中字体居中
+ if (!string.IsNullOrEmpty(cellUnitLeft))
+ {
+ p.ParagraphFormat.Alignment = ParagraphAlignment.Left;//表格中字体居左
+ }
+ else {
+ p.ParagraphFormat.Alignment = ParagraphAlignment.Center;//表格中字体居中
+ }
+
p.AppendChild(new Run(doc, value));
@@ -413,7 +420,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.UnitOrMajor, doc, table.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.UnitOrMajor, doc, table.FirstRow.Cells[1].CellFormat.Width,"","","unit"));
row.Cells.Add(CreateCell(item.Quantity1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.Quantity2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.Remarks, doc, table.FirstRow.Cells[4].CellFormat.Width));
@@ -465,7 +472,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.UnitOrMajor, doc, table.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.UnitOrMajor, doc, table.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.Quantity1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.Quantity2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.Quantity3.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width));
@@ -860,7 +867,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell((numberIndex - 1).ToString(), doc, table.Rows[0].Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.UnitName, doc, table.Rows[0].Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.UnitName, doc, table.Rows[0].Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.PipeMountGuard.ToString(), doc, table.Rows[1].Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.PipeTotal.ToString(), doc, table.Rows[1].Cells[3].CellFormat.Width));
@@ -925,7 +932,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.UnitOrMajor, doc, table.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.UnitOrMajor, doc, table.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.Quantity1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.Quantity2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.Remarks, doc, table.FirstRow.Cells[4].CellFormat.Width));
@@ -1179,14 +1186,14 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
pageCount += 1;
}
row.Cells.Add(CreateCell((pageCount).ToString(), doc, table.Rows[0].Cells[0].CellFormat.Width, "0", "1"));
- row.Cells.Add(CreateCell(item.CreateMan, doc, table.Rows[0].Cells[1].CellFormat.Width, "0"));
+ row.Cells.Add(CreateCell(item.CreateMan, doc, table.Rows[0].Cells[1].CellFormat.Width, "0", "", "unit"));
Unitname = item.CreateMan;
}
else
{
row.Cells.Add(CreateCell((pageCount).ToString(), doc, table.Rows[0].Cells[0].CellFormat.Width, "1", "1"));
- row.Cells.Add(CreateCell(item.CreateMan, doc, table.Rows[0].Cells[1].CellFormat.Width, "1"));
+ row.Cells.Add(CreateCell(item.CreateMan, doc, table.Rows[0].Cells[1].CellFormat.Width, "1", "", "unit"));
Unitname = item.CreateMan;
}
@@ -1289,7 +1296,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.UnitOrMajor, doc, table.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.UnitOrMajor, doc, table.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.Quantity1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.Quantity2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.QuaRate.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width));
@@ -1381,7 +1388,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.Remarks, doc, table.FirstRow.Cells[4].CellFormat.Width));
@@ -2375,7 +2382,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(Convert.ToString(item.RectificationRate), doc, table.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(Convert.ToString(item.TotationRate), doc, table.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.Remarks, doc, table.FirstRow.Cells[4].CellFormat.Width));
@@ -2455,7 +2462,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.TotalNoBackCount.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width));
@@ -2512,7 +2519,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.TotalNoBackCount.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width));
@@ -2568,7 +2575,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.TotalNoBackCount.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width));
@@ -2625,7 +2632,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.TotalNoBackCount.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width));
@@ -2691,7 +2698,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.RectificationRate, doc, table.FirstRow.Cells[4].CellFormat.Width));
@@ -2799,7 +2806,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.MonthsBackCount.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width));
@@ -2853,7 +2860,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex18_1.ToString(), doc, table18_1.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.UnitId, doc, table18_1.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.UnitId, doc, table18_1.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.ProblemDesrioption, doc, table18_1.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.TreatmentMeasures, doc, table18_1.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.ProcessingResults, doc, table18_1.FirstRow.Cells[4].CellFormat.Width));
@@ -2890,7 +2897,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex18_2.ToString(), doc, table18_2.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.UnitId, doc, table18_2.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.UnitId, doc, table18_2.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.ProblemDesrioption, doc, table18_2.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.TreatmentMeasures, doc, table18_2.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.ProcessingResults, doc, table18_2.FirstRow.Cells[4].CellFormat.Width));
diff --git a/SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReport.aspx.cs b/SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReport.aspx.cs
index 768c7962..ea486115 100644
--- a/SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReport.aspx.cs
+++ b/SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReport.aspx.cs
@@ -152,7 +152,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
* @param doc Document对象
* @return
*/
- public static Cell CreateCell(String value, Document doc, double cellWidth, string cellMerge = "", string CenterPage = "")
+ public static Cell CreateCell(String value, Document doc, double cellWidth, string cellMerge = "", string CenterPage = "", string cellUnitLeft = "")
{
Cell cell = new Cell(doc);
Paragraph p = new Paragraph(doc);
@@ -177,7 +177,14 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//序号
value = " " + value;
}
- p.ParagraphFormat.Alignment = ParagraphAlignment.Center;
+ if (!string.IsNullOrEmpty(cellUnitLeft))
+ {
+ p.ParagraphFormat.Alignment = ParagraphAlignment.Left;//表格中字体居左
+ }
+ else
+ {
+ p.ParagraphFormat.Alignment = ParagraphAlignment.Center;//表格中字体居中
+ }
p.AppendChild(new Run(doc, value));
@@ -418,7 +425,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.UnitOrMajor, doc, table.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.UnitOrMajor, doc, table.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.Quantity1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.Quantity2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.Remarks, doc, table.FirstRow.Cells[4].CellFormat.Width));
@@ -470,7 +477,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.UnitOrMajor, doc, table.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.UnitOrMajor, doc, table.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.Quantity1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.Quantity2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.Quantity3.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width));
@@ -867,7 +874,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell((numberIndex - 1).ToString(), doc, table.Rows[0].Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.UnitName, doc, table.Rows[0].Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.UnitName, doc, table.Rows[0].Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.PipeMountGuard.ToString(), doc, table.Rows[1].Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.PipeTotal.ToString(), doc, table.Rows[1].Cells[3].CellFormat.Width));
@@ -932,7 +939,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.UnitOrMajor, doc, table.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.UnitOrMajor, doc, table.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.Quantity1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.Quantity2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.Remarks, doc, table.FirstRow.Cells[4].CellFormat.Width));
@@ -1187,14 +1194,14 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
pageCount += 1;
}
row.Cells.Add(CreateCell((pageCount).ToString(), doc, table.Rows[0].Cells[0].CellFormat.Width, "0", "1"));
- row.Cells.Add(CreateCell(item.CreateMan, doc, table.Rows[0].Cells[1].CellFormat.Width, "0"));
+ row.Cells.Add(CreateCell(item.CreateMan, doc, table.Rows[0].Cells[1].CellFormat.Width, "0", "", "unit"));
Unitname = item.CreateMan;
}
else
{
row.Cells.Add(CreateCell((pageCount).ToString(), doc, table.Rows[0].Cells[0].CellFormat.Width, "1", "1"));
- row.Cells.Add(CreateCell(item.CreateMan, doc, table.Rows[0].Cells[1].CellFormat.Width, "1"));
+ row.Cells.Add(CreateCell(item.CreateMan, doc, table.Rows[0].Cells[1].CellFormat.Width, "1", "", "unit"));
Unitname = item.CreateMan;
}
@@ -1298,7 +1305,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.UnitOrMajor, doc, table.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.UnitOrMajor, doc, table.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.Quantity1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.Quantity2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.QuaRate.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width));
@@ -1391,7 +1398,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.Remarks, doc, table.FirstRow.Cells[4].CellFormat.Width));
@@ -2385,7 +2392,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(Convert.ToString(item.RectificationRate), doc, table.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(Convert.ToString(item.TotationRate), doc, table.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.Remarks, doc, table.FirstRow.Cells[4].CellFormat.Width));
@@ -2465,7 +2472,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.TotalNoBackCount.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width));
@@ -2522,7 +2529,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.TotalNoBackCount.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width));
@@ -2578,7 +2585,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.TotalNoBackCount.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width));
@@ -2635,7 +2642,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.TotalNoBackCount.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width));
@@ -2701,7 +2708,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.RectificationRate, doc, table.FirstRow.Cells[4].CellFormat.Width));
@@ -2809,7 +2816,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.MonthsBackCount.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width));
@@ -2863,7 +2870,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex18_1.ToString(), doc, table18_1.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.UnitId, doc, table18_1.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.UnitId, doc, table18_1.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.ProblemDesrioption, doc, table18_1.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.TreatmentMeasures, doc, table18_1.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.ProcessingResults, doc, table18_1.FirstRow.Cells[4].CellFormat.Width));
@@ -2900,7 +2907,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew
//创建行
Row row = new Row(doc);
row.Cells.Add(CreateCell(numberIndex18_2.ToString(), doc, table18_2.FirstRow.Cells[0].CellFormat.Width, "", "1"));
- row.Cells.Add(CreateCell(item.UnitId, doc, table18_2.FirstRow.Cells[1].CellFormat.Width));
+ row.Cells.Add(CreateCell(item.UnitId, doc, table18_2.FirstRow.Cells[1].CellFormat.Width, "", "", "unit"));
row.Cells.Add(CreateCell(item.ProblemDesrioption, doc, table18_2.FirstRow.Cells[2].CellFormat.Width));
row.Cells.Add(CreateCell(item.TreatmentMeasures, doc, table18_2.FirstRow.Cells[3].CellFormat.Width));
row.Cells.Add(CreateCell(item.ProcessingResults, doc, table18_2.FirstRow.Cells[4].CellFormat.Width));
diff --git a/SGGL/FineUIPro.Web/CQMS/WBS/Control/DivisionSubProjects.aspx b/SGGL/FineUIPro.Web/CQMS/WBS/Control/DivisionSubProjects.aspx
new file mode 100644
index 00000000..be2eca33
--- /dev/null
+++ b/SGGL/FineUIPro.Web/CQMS/WBS/Control/DivisionSubProjects.aspx
@@ -0,0 +1,98 @@
+<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="DivisionSubProjects.aspx.cs" Inherits="FineUIPro.Web.CQMS.WBS.Control.DivisionSubProjects" %>
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/SGGL/FineUIPro.Web/CQMS/WBS/Control/DivisionSubProjects.aspx.cs b/SGGL/FineUIPro.Web/CQMS/WBS/Control/DivisionSubProjects.aspx.cs
new file mode 100644
index 00000000..9e25e008
--- /dev/null
+++ b/SGGL/FineUIPro.Web/CQMS/WBS/Control/DivisionSubProjects.aspx.cs
@@ -0,0 +1,789 @@
+using BLL;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Data.SqlClient;
+using System.IO;
+using System.Linq;
+using System.Web;
+using System.Web.UI;
+using System.Web.UI.WebControls;
+using static FineUIPro.Web.CQMS.WBS.Control.DivisionSubProjects;
+
+namespace FineUIPro.Web.CQMS.WBS.Control
+{
+ public partial class DivisionSubProjects : PageBase
+ {
+ protected void Page_Load(object sender, EventArgs e)
+ {
+ if (!IsPostBack)
+ {
+ DataBrid();
+ }
+ }
+
+ #region 数据绑定和事件
+
+ ///
+ /// 数据绑定
+ ///
+ public void DataBrid()
+ {
+ string strSql = @"select a.Division,a.ProjectId,a.ParentId,a.DivisionLevel,a.EngineeringCode,a.EngineeringName,a.SubEngineeringCode,a.SubEngineeringName,a.BranchEngineeringCode,a.BranchEngineeringName,a.SubBranchEngineeringName,a.ProEngineeringCode,a.ProEngineeringName,a.ProEngineeringNum,a.Remark,a.AddUser,a.OperateTime,a.Sort from Division_SubProjects as a inner join Base_Project as b on a.ProjectId=b.ProjectId where a.ProjectId=@ProjectId order by a.Sort,a.DivisionLevel asc";
+ List listStr = new List();
+ listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
+ if (!string.IsNullOrEmpty(sEngineeringName.Text.Trim()))
+ {
+ strSql += " and a.EngineeringName=@EngineeringName";
+ listStr.Add(new SqlParameter("@EngineeringName", this.sEngineeringName.Text.Trim()));
+ }
+ SqlParameter[] parameter = listStr.ToArray();
+ DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
+ Grid1.DataSource = tb;
+ Grid1.DataBind();
+ }
+
+ ///
+ /// 行点击 事件
+ ///
+ protected void Grid1_RowCommand(object sender, GridCommandEventArgs e)
+ {
+ if (e.CommandName == "Delete")
+ {
+ string rowID = e.RowID;
+ DeleteRowByIDInternal(rowID);
+ DataBrid();
+ ShowNotify("删除成功!");
+ }
+ }
+
+ ///
+ /// 行加载事件
+ ///
+ protected void Grid1_RowDataBound(object sender, GridRowEventArgs e)
+ {
+
+ }
+
+ #endregion
+
+ #region 按钮
+
+ ///
+ /// 搜索
+ ///
+ protected void btnSearch_Click(object sender, EventArgs e)
+ {
+ DataBrid();
+ }
+
+ ///
+ /// 删除
+ ///
+ protected void btnDelete_Click(object sender, EventArgs e)
+ {
+ if (Grid1.SelectedRowIndexArray.Length == 0)
+ {
+ ShowNotify("至少选择一条数据!");
+ return;
+ }
+ foreach (int rowIndex in Grid1.SelectedRowIndexArray)
+ {
+ string rowID = Grid1.DataKeys[rowIndex][0].ToString();
+ DeleteRowByIDInternal(rowID);
+ }
+ DataBrid();
+ ShowNotify("删除成功!");
+
+ }
+
+ ///
+ /// 新增
+ ///
+ protected void btnAdd_Click(object sender, EventArgs e)
+ {
+ PageContext.RegisterStartupScript(Window1.GetShowReference($"DivisionSubProjectsEdit.aspx?DivisionId=&ParentId=", "新增"));
+ }
+
+ ///
+ /// 添加子级
+ ///
+ protected void btnParentAdd_Click(object sender, EventArgs e)
+ {
+ if (Grid1.SelectedRowIndexArray.Length == 0)
+ {
+ ShowNotify("请选择一条数据!", MessageBoxIcon.Warning);
+ return;
+ }
+
+ var rowIndex = Grid1.SelectedRowIndex;
+ var rowId = Grid1.DataKeys[rowIndex][0].ToString();
+ var runLevel = Grid1.DataKeys[rowIndex][2] != null ? Convert.ToInt32(Grid1.DataKeys[rowIndex][2]) : 1;
+ if (runLevel > 5)
+ {
+ ShowNotify("最小节点无子节点!", MessageBoxIcon.Warning);
+ return;
+ }
+ PageContext.RegisterStartupScript(Window1.GetShowReference($"DivisionSubProjectsEdit.aspx?RunId=&ParentId={rowId}", "添加子级"));
+ }
+
+ ///
+ /// 编辑
+ ///
+ protected void btnEdit_Click(object sender, EventArgs e)
+ {
+ if (Grid1.SelectedRowIndexArray.Length == 0)
+ {
+ ShowNotify("请选择一条数据!", MessageBoxIcon.Warning);
+ return;
+ }
+
+ var rowIndex = Grid1.SelectedRowIndex;
+ var rowId = Grid1.DataKeys[rowIndex][0].ToString();
+ var parentId = Grid1.DataKeys[rowIndex][1] != null ? Grid1.DataKeys[rowIndex][1].ToString() : string.Empty;
+ PageContext.RegisterStartupScript(Window1.GetShowReference($"DivisionSubProjectsEdit.aspx?RunId={rowId}&ParentId={parentId}", "编辑"));
+ }
+
+ ///
+ /// 关闭
+ ///
+ protected void Window1_Close(object sender, WindowCloseEventArgs e)
+ {
+ DataBrid();
+ }
+
+ ///
+ /// 导入
+ ///
+ protected void btnImport_Click(object sender, EventArgs e)
+ {
+ try
+ {
+ if (this.fileData.HasFile == false)
+ {
+ ShowNotify("请选择excel文件!", MessageBoxIcon.Warning);
+ return;
+ }
+ string IsXls = Path.GetExtension(this.fileData.FileName).ToString().Trim().ToLower();
+ if (IsXls != ".xls" && IsXls != ".xlsx")
+ {
+ this.fileData.Reset();
+ ShowNotify("excel文件类型错误!", MessageBoxIcon.Warning);
+ return;
+ }
+ string rootPath = Server.MapPath("~/");
+ string initFullPath = rootPath + Const.ExcelUrl;
+ if (!Directory.Exists(initFullPath))
+ {
+ Directory.CreateDirectory(initFullPath);
+ }
+ //指定上传文件名称
+ string fileUrl = BLL.Funs.GetNewFileName() + IsXls;
+ //上传文件路径
+ string filePath = initFullPath + fileUrl;
+ //文件上传服务器
+ this.fileData.PostedFile.SaveAs(filePath);
+ //文件上传服务器后的名称
+ string fileName = rootPath + Const.ExcelUrl + fileUrl;
+ //读取Excel
+ DataSet ds = NPOIHelper.ExcelToDataSet(fileName, out string message, false);
+ if (ds == null)
+ {
+ this.fileData.Reset();
+ ShowNotify("模板错误,请从系统下载正确的模板!", MessageBoxIcon.Warning);
+ return;
+ }
+ if (!string.IsNullOrWhiteSpace(message))
+ {
+ ShowNotify(message, MessageBoxIcon.Warning);
+ return;
+ }
+ if (ds.Tables[0].Rows.Count > 1)
+ {
+ var fileVerify = VerifyFile(ds);
+ if (!fileVerify)
+ {
+ this.fileData.Reset();
+ ShowNotify("请获取正确模板!", MessageBoxIcon.Warning);
+ return;
+ }
+
+ int index = 1;
+ List list = new List();
+ DivisionSubProjectsDto previousModel = new DivisionSubProjectsDto();
+ foreach (DataRow item in ds.Tables[0].Rows)
+ {
+ DivisionSubProjectsDto model = new DivisionSubProjectsDto();
+ if (index == 1)
+ {
+ index++;
+ continue;
+ }
+ if (StrIsNumm(item[10]))
+ {
+ this.fileData.Reset();
+ ShowNotify($"{index}级别为空!", MessageBoxIcon.Warning);
+ break;
+ }
+
+ previousModel.Level = int.Parse(item[10].ToString());
+ previousModel.EngineeringCode = item[0].ToString();
+ previousModel.EngineeringName = item[1].ToString();
+ previousModel.SubEngineeringCode = item[2].ToString();
+ previousModel.SubEngineeringName = item[3].ToString();
+ previousModel.BranchEngineeringCode = item[4].ToString();
+ previousModel.BranchEngineeringName = item[5].ToString();
+ previousModel.SubBranchEngineeringName = item[6].ToString();
+ previousModel.ProEngineeringCode = item[7].ToString();
+ previousModel.ProEngineeringName = item[8].ToString();
+ previousModel.ProEngineeringNum = item[9].ToString();
+ previousModel.ParentId = "";
+
+
+
+
+ ////判断是否为装置
+ //if (!StrIsNumm(item[0]) && !StrIsNumm(item[1]) && StrIsNumm(item[2]) && StrIsNumm(item[3]) && StrIsNumm(item[4]) && StrIsNumm(item[5]) && StrIsNumm(item[6]) && StrIsNumm(item[7]))
+ //{
+ // model.InstallationCode = item[0].ToString();
+ // model.InstallationName = item[1].ToString();
+ // model.Level = 1;
+ //}
+ ////判断是否为工序
+ //else if (!StrIsNumm(item[0]) && !StrIsNumm(item[1]) && !StrIsNumm(item[2]) && !StrIsNumm(item[3]) && StrIsNumm(item[4]) && StrIsNumm(item[5]) && StrIsNumm(item[6]) && StrIsNumm(item[7]))
+ //{
+ // model.InstallationCode = item[0].ToString();
+ // model.InstallationName = item[1].ToString();
+ // model.ProcessesCode = item[2].ToString();
+ // model.ProcessesName = item[3].ToString();
+ // model.Level = 2;
+ //}
+ ////判断是否为系统
+ //else if (!StrIsNumm(item[0]) && !StrIsNumm(item[1]) && !StrIsNumm(item[2]) && !StrIsNumm(item[3]) && !StrIsNumm(item[4]) && !StrIsNumm(item[5]) && StrIsNumm(item[6]) && StrIsNumm(item[7]))
+ //{
+ // model.InstallationCode = item[0].ToString();
+ // model.InstallationName = item[1].ToString();
+ // model.ProcessesCode = item[2].ToString();
+ // model.ProcessesName = item[3].ToString();
+ // model.SystemCode = item[4].ToString();
+ // model.SystemName = item[5].ToString();
+ // model.Level = 3;
+ //}
+ ////判断是否为子系统
+ //else if (!StrIsNumm(item[0]) && !StrIsNumm(item[1]) && !StrIsNumm(item[2]) && !StrIsNumm(item[3]) && !StrIsNumm(item[4]) && !StrIsNumm(item[5]) && !StrIsNumm(item[6]) && !StrIsNumm(item[7]))
+ //{
+ // model.InstallationCode = item[0].ToString();
+ // model.InstallationName = item[1].ToString();
+ // model.ProcessesCode = item[2].ToString();
+ // model.ProcessesName = item[3].ToString();
+ // model.SystemCode = item[4].ToString();
+ // model.SystemName = item[5].ToString();
+ // model.SubsystemCode = item[6].ToString();
+ // model.SubsystemName = item[7].ToString();
+ // model.Level = 4;
+ //}
+ //else
+ //{
+ // this.fileData.Reset();
+ // ShowNotify($"{index}行数据存在错误,数据格式具体见模板说明为空!", MessageBoxIcon.Warning);
+ // break;
+ //}
+ list.Add(model);
+ index++;
+ previousModel = new DivisionSubProjectsDto();
+ }
+
+ #region 数据验证
+
+ ////验证装置编码
+ //if (list.Count(x => x.Level == 1) > 0)
+ //{
+ // var installationCodes = list.Where(x => x.Level == 1).Select(a => a.InstallationCode);
+ // var importCodes = installationCodes.GroupBy(x => x).Where(x => x.Count() > 1).Select(x => x.Key).ToList();
+ // if (importCodes.Count > 0)
+ // {
+ // this.fileData.Reset();
+ // ShowNotify($"EXCEL中装置编码{string.Join(",", importCodes)}重复,请调整模板数据!", MessageBoxIcon.Warning);
+ // return;
+ // }
+ // installationCodes = installationCodes.Distinct();
+ // if (installationCodes.Count() > 0)
+ // {
+ // var existInstallations = Funs.DB.PreRun_SysDevice.Where(a => installationCodes.Contains(a.PreRunCode) && a.PreRunLevel == 1 && a.ProjectId == this.CurrUser.LoginProjectId).ToList();
+ // if (existInstallations.Count > 0)
+ // {
+ // this.fileData.Reset();
+ // ShowNotify($"装置编码({string.Join(",", existInstallations.ConvertAll(s => s.PreRunCode))})已存在!", MessageBoxIcon.Warning);
+ // return;
+ // }
+ // }
+
+ //}
+ ////验证工序编码
+ //if (list.Count(x => x.Level == 2) > 0)
+ //{
+ // var processesCodes = list.Where(x => x.Level == 2).Select(a => a.ProcessesCode);
+ // var importCodes = processesCodes.GroupBy(x => x).Where(x => x.Count() > 1).Select(x => x.Key).ToList();
+ // if (importCodes.Count > 0)
+ // {
+ // this.fileData.Reset();
+ // ShowNotify($"EXCEL中工序编码{string.Join(",", importCodes)}重复,请调整模板数据!", MessageBoxIcon.Warning);
+ // return;
+ // }
+ // processesCodes = processesCodes.Distinct();
+ // if (processesCodes.Count() > 0)
+ // {
+ // var existProcessess = Funs.DB.PreRun_SysDevice.Where(a => processesCodes.Contains(a.PreRunCode) && a.PreRunLevel == 2 && a.ProjectId == this.CurrUser.LoginProjectId).ToList();
+ // if (existProcessess.Count > 0)
+ // {
+ // this.fileData.Reset();
+ // ShowNotify($"工序编码({string.Join(",", existProcessess.ConvertAll(s => s.PreRunCode))})已存在!", MessageBoxIcon.Warning);
+ // return;
+ // }
+ // }
+ //}
+ ////验证系统编码
+ //if (list.Count(x => x.Level == 3) > 0)
+ //{
+ // var systemCodes = list.Where(x => x.Level == 3).Select(a => a.SystemCode);
+ // var importCodes = systemCodes.GroupBy(x => x).Where(x => x.Count() > 1).Select(x => x.Key).ToList();
+ // if (importCodes.Count > 0)
+ // {
+ // this.fileData.Reset();
+ // ShowNotify($"EXCEL中系统编码{string.Join(",", importCodes)}重复,请调整模板数据!", MessageBoxIcon.Warning);
+ // return;
+ // }
+ // systemCodes = systemCodes.Distinct().ToList();
+ // if (systemCodes.Count() > 0)
+ // {
+ // var existSystems = Funs.DB.PreRun_SysDevice.Where(a => systemCodes.Contains(a.PreRunCode) && a.PreRunLevel == 3 && a.ProjectId == this.CurrUser.LoginProjectId).ToList();
+ // if (existSystems.Count > 0)
+ // {
+ // this.fileData.Reset();
+ // ShowNotify($"系统编码({string.Join(",", existSystems.ConvertAll(s => s.PreRunCode))})已存在!", MessageBoxIcon.Warning);
+ // return;
+ // }
+ // }
+ //}
+ ////验证子系统编码
+ //if (list.Count(x => x.Level == 4) > 0)
+ //{
+ // var subsystemCodes = list.Where(x => x.Level == 4).Select(a => a.SubsystemCode);
+ // var importCodes = subsystemCodes.GroupBy(x => x).Where(x => x.Count() > 1).Select(x => x.Key).ToList();
+ // if (importCodes.Count > 0)
+ // {
+ // this.fileData.Reset();
+ // ShowNotify($"EXCEL中子系统编码{string.Join(",", importCodes)}重复,请调整模板数据!", MessageBoxIcon.Warning);
+ // return;
+ // }
+ // subsystemCodes = subsystemCodes.Distinct().ToList();
+ // if (subsystemCodes.Count() > 0)
+ // {
+ // var existSubsystems = Funs.DB.PreRun_SysDevice.Where(a => subsystemCodes.Contains(a.PreRunCode) && a.PreRunLevel == 4 && a.ProjectId == this.CurrUser.LoginProjectId).ToList();
+ // if (existSubsystems.Count > 0)
+ // {
+ // this.fileData.Reset();
+ // ShowNotify($"子系统编码({string.Join(",", existSubsystems.ConvertAll(s => s.PreRunCode))})已存在!", MessageBoxIcon.Warning);
+ // return;
+ // }
+ // }
+ //}
+
+ #endregion
+
+ #region 数据处理
+
+ //var installationData = new List();
+ //var processesData = new List();
+ //var systemData = new List();
+
+ ////处理装置
+ //if (list.Count(x => x.Level == 1) > 0)
+ //{
+ // list.Where(x => x.Level == 1).ToList().ForEach(a =>
+ // {
+ // a.InstallationId = Guid.NewGuid().ToString();
+ // });
+ //}
+ ////处理工序
+ //if (list.Count(x => x.Level == 2) > 0)
+ //{
+ // var codes = list.ConvertAll(a => a.InstallationCode).Distinct();
+ // installationData = Funs.DB.PreRun_SysDevice.Where(x => x.PreRunLevel == 1 && codes.Contains(x.PreRunCode)).ToList();
+ // list.Where(x => x.Level == 2).ToList().ForEach(a =>
+ // {
+ // //装置
+ // if (list.Count(p => p.InstallationCode == a.InstallationCode && p.Level == 1) > 0)
+ // {
+ // a.InstallationId = list.FirstOrDefault(p => p.InstallationCode == a.InstallationCode && p.Level == 1).InstallationId;
+ // }
+ // else if (installationData.Count(p => p.PreRunCode == a.InstallationCode) > 0)
+ // {
+ // a.InstallationId = installationData.FirstOrDefault(p => p.PreRunCode == a.InstallationCode).PreRunId;
+ // }
+ // //上级编码
+ // a.ParentId = a.InstallationId;
+ // //工序
+ // a.ProcessesId = Guid.NewGuid().ToString();
+ // });
+ //}
+ ////处理系统
+ //if (list.Count(x => x.Level == 3) > 0)
+ //{
+ // var codes = list.ConvertAll(a => a.ProcessesCode).Distinct();
+ // processesData = Funs.DB.PreRun_SysDevice.Where(x => x.PreRunLevel == 2 && codes.Contains(x.PreRunCode)).ToList();
+ // list.Where(x => x.Level == 3).ToList().ForEach(a =>
+ // {
+ // //装置
+ // if (list.Count(p => p.InstallationCode == a.InstallationCode && p.Level == 1) > 0)
+ // {
+ // a.InstallationId = list.FirstOrDefault(p => p.InstallationCode == a.InstallationCode && p.Level == 1).InstallationId;
+ // }
+ // else if (installationData.Count(p => p.PreRunCode == a.InstallationCode) > 0)
+ // {
+ // a.InstallationId = installationData.FirstOrDefault(p => p.PreRunCode == a.InstallationCode).PreRunId;
+ // }
+ // //工序
+ // if (list.Count(p => p.ProcessesCode == a.ProcessesCode && p.Level == 2) > 0)
+ // {
+ // a.ProcessesId = list.FirstOrDefault(p => p.ProcessesCode == a.ProcessesCode && p.Level == 2).ProcessesId;
+ // }
+ // else if (processesData.Count(p => p.PreRunCode == a.ProcessesCode) > 0)
+ // {
+ // a.ProcessesId = processesData.FirstOrDefault(p => p.PreRunCode == a.ProcessesCode).PreRunId;
+ // }
+ // //上级编码
+ // a.ParentId = a.ProcessesId;
+ // //系统
+ // a.SystemId = Guid.NewGuid().ToString();
+ // });
+ //}
+ ////处理子系统
+ //if (list.Count(x => x.Level == 4) > 0)
+ //{
+ // var codes = list.ConvertAll(a => a.SystemCode).Distinct();
+ // systemData = Funs.DB.PreRun_SysDevice.Where(x => x.PreRunLevel == 3 && codes.Contains(x.PreRunCode)).ToList();
+ // list.Where(x => x.Level == 4).ToList().ForEach(a =>
+ // {
+ // //装置
+ // if (list.Count(p => p.InstallationCode == a.InstallationCode && p.Level == 1) > 0)
+ // {
+ // a.InstallationId = list.FirstOrDefault(p => p.InstallationCode == a.InstallationCode && p.Level == 1).InstallationId;
+ // }
+ // else if (installationData.Count(p => p.PreRunCode == a.InstallationCode) > 0)
+ // {
+ // a.InstallationId = installationData.FirstOrDefault(p => p.PreRunCode == a.InstallationCode).PreRunId;
+ // }
+ // //工序
+ // if (list.Count(p => p.ProcessesCode == a.ProcessesCode && p.Level == 2) > 0)
+ // {
+ // a.ProcessesId = list.FirstOrDefault(p => p.ProcessesCode == a.ProcessesCode && p.Level == 2).ProcessesId;
+ // }
+ // else if (processesData.Count(p => p.PreRunCode == a.ProcessesCode) > 0)
+ // {
+ // a.ProcessesId = processesData.FirstOrDefault(p => p.PreRunCode == a.ProcessesCode).PreRunId;
+ // }
+ // //系统
+ // if (list.Count(p => p.SystemCode == a.SystemCode && p.Level == 3) > 0)
+ // {
+ // a.SystemId = list.FirstOrDefault(p => p.SystemCode == a.SystemCode && p.Level == 3).SystemId;
+ // }
+ // else if (systemData.Count(p => p.PreRunCode == a.SystemCode) > 0)
+ // {
+ // a.SystemId = systemData.FirstOrDefault(p => p.PreRunCode == a.SystemCode).PreRunId;
+ // }
+ // //上级编码
+ // a.ParentId = a.SystemId;
+ // //子系统
+ // a.SubsystemId = Guid.NewGuid().ToString();
+ // });
+ //}
+
+ #endregion
+
+ #region 数据入库
+
+ //var listData = new List();
+ //int oneIndex = 1;
+ //int twoIndex = 1;
+ //int threeIndex = 1;
+ //int fourIndex = 1;
+ //foreach (var itemData in list)
+ //{
+ // var model = new PreRun_SysDevice();
+ // model.ProjectId = this.CurrUser.LoginProjectId;
+ // model.PreRunLevel = itemData.Level;
+ // if (itemData.Level == 1)
+ // {
+ // model.PreRunId = itemData.InstallationId;
+ // model.PreRunCode = itemData.InstallationCode;
+ // model.PreRunName = itemData.InstallationName;
+ // model.ParentId = itemData.ParentId;
+ // model.AddUser = CurrUser.Account;
+ // model.OperateTime = DateTime.Now;
+ // model.Sort = Funs.DB.PreRun_SysDevice.Count(p => p.ProjectId == CurrUser.LoginProjectId) + oneIndex;
+ // oneIndex++;
+ // }
+ // if (itemData.Level == 2)
+ // {
+ // model.PreRunId = itemData.ProcessesId;
+ // model.ProcessesId = itemData.ProcessesId;
+ // model.PreRunCode = itemData.ProcessesCode;
+ // model.PreRunName = itemData.ProcessesName;
+ // model.InstallationId = itemData.InstallationId;
+ // model.ParentId = itemData.ParentId;
+ // model.AddUser = CurrUser.Account;
+ // model.OperateTime = DateTime.Now;
+ // model.Sort = Funs.DB.PreRun_SysDevice.Count(p => p.ProjectId == CurrUser.LoginProjectId) + twoIndex;
+ // twoIndex++;
+ // }
+ // if (itemData.Level == 3)
+ // {
+ // model.PreRunId = itemData.SystemId;
+ // model.SystemId = itemData.SystemId;
+ // model.PreRunCode = itemData.SystemCode;
+ // model.PreRunName = itemData.SystemName;
+ // model.InstallationId = itemData.InstallationId;
+ // model.ProcessesId = itemData.ProcessesId;
+ // model.ParentId = itemData.ParentId;
+ // model.AddUser = CurrUser.Account;
+ // model.OperateTime = DateTime.Now;
+ // model.Sort = Funs.DB.PreRun_SysDevice.Count(p => p.ProjectId == CurrUser.LoginProjectId) + threeIndex;
+ // threeIndex++;
+ // }
+ // if (itemData.Level == 4)
+ // {
+ // model.PreRunId = itemData.SubsystemId;
+ // model.SubsystemId = itemData.SubsystemId;
+ // model.PreRunCode = itemData.SubsystemCode;
+ // model.PreRunName = itemData.SubsystemName;
+ // model.InstallationId = itemData.InstallationId;
+ // model.ProcessesId = itemData.ProcessesId;
+ // model.SystemId = itemData.SystemId;
+ // model.ParentId = itemData.ParentId;
+ // model.AddUser = CurrUser.Account;
+ // model.OperateTime = DateTime.Now;
+ // model.Sort = Funs.DB.PreRun_SysDevice.Count(p => p.ProjectId == CurrUser.LoginProjectId) + fourIndex;
+ // fourIndex++;
+ // }
+ // listData.Add(model);
+ //}
+
+ //Funs.DB.PreRun_SysDevice.InsertAllOnSubmit(listData);
+ //Funs.DB.SubmitChanges();
+ //ShowNotify("导入成功!", MessageBoxIcon.Success);
+
+ #endregion
+ }
+ else
+ {
+ this.fileData.Reset();
+ ShowNotify("文件无数据!", MessageBoxIcon.Warning);
+ }
+ DataBrid();
+ this.fileData.Reset();
+ }
+ catch (Exception ex)
+ {
+ this.fileData.Reset();
+ ShowNotify(ex.Message, MessageBoxIcon.Warning);
+ }
+ }
+
+ ///
+ /// 下载模板
+ ///
+ protected void btnDownLoad_Click(object sender, EventArgs e)
+ {
+ PageContext.RegisterStartupScript(Confirm.GetShowReference("是否确认下载模板?", String.Empty, MessageBoxIcon.Question, PageManager1.GetCustomEventReference(false, "Confirm_OK"), PageManager1.GetCustomEventReference("Confirm_Cancel")));
+ }
+
+ ///
+ /// 下载导入模板
+ ///
+ protected void PageManager1_CustomEvent(object sender, CustomEventArgs e)
+ {
+ if (e.EventArgument == "Confirm_OK")
+ {
+ string rootPath = Server.MapPath("~/");
+ string uploadfilepath = rootPath + Const.WBSDivisionUrl;
+ string filePath = Const.WBSDivisionUrl;
+ string fileName = Path.GetFileName(filePath);
+ FileInfo info = new FileInfo(uploadfilepath);
+ long fileSize = info.Length;
+ Response.ClearContent();
+ Response.AddHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));
+ Response.ContentType = "excel/plain";
+ Response.ContentEncoding = System.Text.Encoding.UTF8;
+ Response.AddHeader("Content-Length", fileSize.ToString().Trim());
+ Response.TransmitFile(uploadfilepath, 0, fileSize);
+ Response.End();
+ }
+ }
+
+ ///
+ /// 右击修改
+ ///
+ protected void btnMenuModify_Click(object sender, EventArgs e)
+ {
+ btnEdit_Click(sender, e);
+ }
+
+ ///
+ /// 右击新增子级别
+ ///
+ protected void btnMenuParentAdd_Click(object sender, EventArgs e)
+ {
+ btnParentAdd_Click(sender, e);
+ }
+
+ #endregion
+
+ #region 私有方法
+
+ ///
+ /// 根据行ID来删除行数据
+ ///
+ private void DeleteRowByIDInternal(string rowID)
+ {
+ var model = Funs.DB.Division_SubProjects.FirstOrDefault(p => p.DivisionId == rowID);
+ if (model != null)
+ {
+ Funs.DB.Division_SubProjects.DeleteOnSubmit(model);
+ GetDevice(rowID);
+ }
+ Funs.DB.SubmitChanges();
+ }
+
+ ///
+ /// 删除
+ ///
+ private void GetDevice(string id)
+ {
+ var model = Funs.DB.Division_SubProjects.FirstOrDefault(p => p.ParentId == id);
+ if (model != null)
+ {
+ Funs.DB.Division_SubProjects.DeleteOnSubmit(model);
+ GetDevice(model.DivisionId);
+ }
+ }
+
+ ///
+ /// 验证单位分部分项工程划分模板是否正确
+ ///
+ ///
+ ///
+ private bool VerifyFile(DataSet ds)
+ {
+ var result = true;
+ if (ds.Tables[0].Rows[1][0].ToString().Contains("单位工程名称")) result = false;
+ if (ds.Tables[0].Rows[1][1].ToString().Contains("子单位工程编码")) result = false;
+ if (ds.Tables[0].Rows[1][2].ToString().Contains("子单位工程名称")) result = false;
+ if (ds.Tables[0].Rows[1][3].ToString().Contains("分部工程编号")) result = false;
+ if (ds.Tables[0].Rows[1][4].ToString().Contains("分部工程名称")) result = false;
+ if (ds.Tables[0].Rows[1][5].ToString().Contains("子分部工程名称")) result = false;
+ if (ds.Tables[0].Rows[1][6].ToString().Contains("分项工程编号")) result = false;
+ if (ds.Tables[0].Rows[1][7].ToString().Contains("分项工程名称")) result = false;
+ if (ds.Tables[0].Rows[1][7].ToString().Contains("分部分项码")) result = false;
+ if (ds.Tables[0].Rows[1][7].ToString().Contains("级别")) result = false;
+ return result;
+ }
+
+ ///
+ /// 验证datatable某列是否存在重复
+ ///
+ ///
+ public bool HasRepeatData(DataTable dt, string[] colName)
+ {
+ bool flag = false;
+ DataView myDataView = new DataView(dt);
+ if (myDataView.ToTable(true, colName).Rows.Count < dt.Rows.Count)
+ {
+ flag = true;
+ }
+ return flag;
+ }
+
+ ///
+ /// 获取某一列的所有值
+ ///
+ /// 列数据类型
+ /// 数据表
+ /// 列名
+ ///
+ public static List GetColumnValues(DataTable dtSource, string filedName)
+ {
+ return (from r in dtSource.AsEnumerable() select r.Field(filedName)).ToList();
+ }
+
+ ///
+ /// 判断是否为空
+ ///
+ ///
+ public bool StrIsNumm(object value)
+ {
+ bool result = false;
+ if (value == null) result = true;
+ if (string.IsNullOrWhiteSpace(value.ToString())) result = true;
+ return result;
+ }
+
+ ///
+ /// 单位分部分项工程划分信息
+ ///
+ public class DivisionSubProjectsDto
+ {
+ ///
+ /// 上级主键
+ ///
+ public string ParentId { get; set; }
+ ///
+ /// 级别
+ ///
+ public int Level { get; set; }
+ ///
+ /// 单位工程编码
+ ///
+ public string EngineeringCode { get; set; }
+ ///
+ /// 单位工程名称
+ ///
+ public string EngineeringName { get; set; }
+ ///
+ /// 子单位工程编码
+ ///
+ public string SubEngineeringCode { get; set; }
+ ///
+ /// 子单位工程名称
+ ///
+ public string SubEngineeringName { get; set; }
+ ///
+ /// 分部工程编号
+ ///
+ public string BranchEngineeringCode { get; set; }
+ ///
+ /// 分部工程名称
+ ///
+ public string BranchEngineeringName { get; set; }
+ ///
+ /// 子分部工程名称
+ ///
+ public string SubBranchEngineeringName { get; set; }
+ ///
+ /// 分项工程编号
+ ///
+ public string ProEngineeringCode { get; set; }
+ ///
+ /// 分项工程名称
+ ///
+ public string ProEngineeringName { get; set; }
+ ///
+ /// 分部分项码
+ ///
+ public string ProEngineeringNum { get; set; }
+ }
+
+ #endregion
+
+ }
+}
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/CQMS/WBS/Control/DivisionSubProjects.aspx.designer.cs b/SGGL/FineUIPro.Web/CQMS/WBS/Control/DivisionSubProjects.aspx.designer.cs
new file mode 100644
index 00000000..5695cd7e
--- /dev/null
+++ b/SGGL/FineUIPro.Web/CQMS/WBS/Control/DivisionSubProjects.aspx.designer.cs
@@ -0,0 +1,179 @@
+//------------------------------------------------------------------------------
+// <自动生成>
+// 此代码由工具生成。
+//
+// 对此文件的更改可能导致不正确的行为,如果
+// 重新生成代码,则所做更改将丢失。
+// 自动生成>
+//------------------------------------------------------------------------------
+
+namespace FineUIPro.Web.CQMS.WBS.Control
+{
+
+
+ public partial class DivisionSubProjects
+ {
+
+ ///
+ /// form1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::System.Web.UI.HtmlControls.HtmlForm form1;
+
+ ///
+ /// PageManager1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.PageManager PageManager1;
+
+ ///
+ /// Panel1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Panel Panel1;
+
+ ///
+ /// Grid1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Grid Grid1;
+
+ ///
+ /// Toolbar1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Toolbar Toolbar1;
+
+ ///
+ /// sEngineeringName 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox sEngineeringName;
+
+ ///
+ /// btnSearch 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnSearch;
+
+ ///
+ /// fileData 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.FileUpload fileData;
+
+ ///
+ /// btnImport 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnImport;
+
+ ///
+ /// btnDownLoad 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnDownLoad;
+
+ ///
+ /// btnAdd 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnAdd;
+
+ ///
+ /// btnParentAdd 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnParentAdd;
+
+ ///
+ /// btnEdit 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnEdit;
+
+ ///
+ /// btnDelete 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnDelete;
+
+ ///
+ /// Window1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Window Window1;
+
+ ///
+ /// Menu1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Menu Menu1;
+
+ ///
+ /// btnMenuModify 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.MenuButton btnMenuModify;
+
+ ///
+ /// btnMenuParentAdd 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.MenuButton btnMenuParentAdd;
+ }
+}
diff --git a/SGGL/FineUIPro.Web/CQMS/WBS/Control/DivisionSubProjectsEdit.aspx b/SGGL/FineUIPro.Web/CQMS/WBS/Control/DivisionSubProjectsEdit.aspx
new file mode 100644
index 00000000..928029f9
--- /dev/null
+++ b/SGGL/FineUIPro.Web/CQMS/WBS/Control/DivisionSubProjectsEdit.aspx
@@ -0,0 +1,16 @@
+<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="DivisionSubProjectsEdit.aspx.cs" Inherits="FineUIPro.Web.CQMS.WBS.Control.DivisionSubProjectsEdit" %>
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/SGGL/FineUIPro.Web/CQMS/WBS/Control/DivisionSubProjectsEdit.aspx.cs b/SGGL/FineUIPro.Web/CQMS/WBS/Control/DivisionSubProjectsEdit.aspx.cs
new file mode 100644
index 00000000..d9ad115a
--- /dev/null
+++ b/SGGL/FineUIPro.Web/CQMS/WBS/Control/DivisionSubProjectsEdit.aspx.cs
@@ -0,0 +1,17 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Web;
+using System.Web.UI;
+using System.Web.UI.WebControls;
+
+namespace FineUIPro.Web.CQMS.WBS.Control
+{
+ public partial class DivisionSubProjectsEdit : System.Web.UI.Page
+ {
+ protected void Page_Load(object sender, EventArgs e)
+ {
+
+ }
+ }
+}
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/CQMS/WBS/Control/DivisionSubProjectsEdit.aspx.designer.cs b/SGGL/FineUIPro.Web/CQMS/WBS/Control/DivisionSubProjectsEdit.aspx.designer.cs
new file mode 100644
index 00000000..942546cb
--- /dev/null
+++ b/SGGL/FineUIPro.Web/CQMS/WBS/Control/DivisionSubProjectsEdit.aspx.designer.cs
@@ -0,0 +1,26 @@
+//------------------------------------------------------------------------------
+//
+// 此代码是由工具生成的。
+//
+// 对此文件的更改可能会导致不正确的行为,并且如果
+// 重新生成代码,这些更改将会丢失。
+//
+//------------------------------------------------------------------------------
+
+namespace FineUIPro.Web.CQMS.WBS.Control
+{
+
+
+ public partial class DivisionSubProjectsEdit
+ {
+
+ ///
+ /// form1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::System.Web.UI.HtmlControls.HtmlForm form1;
+ }
+}
diff --git a/SGGL/FineUIPro.Web/File/Excel/WBS/单位分部分项工程划分.xlsx b/SGGL/FineUIPro.Web/File/Excel/WBS/单位分部分项工程划分.xlsx
new file mode 100644
index 00000000..b4112ced
Binary files /dev/null and b/SGGL/FineUIPro.Web/File/Excel/WBS/单位分部分项工程划分.xlsx differ