diff --git a/.vs/SGGL_SeDin/v17/.wsuo b/.vs/SGGL_SeDin/v17/.wsuo
index 1261326e..b7abaf60 100644
Binary files a/.vs/SGGL_SeDin/v17/.wsuo and b/.vs/SGGL_SeDin/v17/.wsuo differ
diff --git a/DataBase/菜单初始化脚本/0-3合同管理(Menu_HTGL).sql b/DataBase/菜单初始化脚本/0-3合同管理(Menu_HTGL).sql
index 5a6ab701..80aeb926 100644
--- a/DataBase/菜单初始化脚本/0-3合同管理(Menu_HTGL).sql
+++ b/DataBase/菜单初始化脚本/0-3合同管理(Menu_HTGL).sql
@@ -1,11 +1,11 @@
---delete from Sys_ButtonToMenu where MenuId in (select MenuId from Sys_Menu where MenuType='Menu_HTGL')
---go
---delete from Sys_Menu where MenuType='Menu_HTGL'
---go
-
---INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
---VALUES('E9D387EB-2797-43E3-AACE-93413839CCF7','合同管理','',10,'0','Menu_HTGL',0,0,1)
---GO
+-- delete from Sys_ButtonToMenu where MenuId in (select MenuId from Sys_Menu where MenuType='Menu_HTGL')
+-- go
+-- delete from Sys_Menu where MenuType='Menu_HTGL'
+-- go
+--
+-- INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
+-- VALUES('E9D387EB-2797-43E3-AACE-93413839CCF7','合同管理','',10,'0','Menu_HTGL',0,0,1)
+-- GO
INSERT Sys_Menu ([MenuId],[MenuName],[SortIndex],[SuperMenu],[MenuType],[IsOffice],[IsEnd],[IsUsed])
VALUES ( N'E36CBDD0-2E49-415E-BBE7-B8222F40D749',N'合同模板',20,N'0',N'Menu_HTGL',1,0,1)
@@ -158,17 +158,44 @@ GO
VALUES ( N'DADA9037-FB84-4F87-B582-22D8C9060CA2',N'10586190-0FDD-4DA8-A877-CE4599D6F0DF',N'保存',4)
GO
INSERT Sys_Menu ([MenuId],[MenuName],[Url],[SortIndex],[SuperMenu],[MenuType],[IsOffice],[IsEnd],[IsUsed])
-VALUES ( N'1C770E20-7912-484C-9739-499B1B2F8DEB',N'电仪安装工程',N'PHTGL/BillOfQuantities/TemQuantityList.aspx?Type=5',60,N'8213BE20-2680-4A13-91B8-49028BB89869',N'Menu_HTGL',1,1,1)
+VALUES ( N'1C770E20-7912-484C-9739-499B1B2F8DEB',N'电仪安装工程','',60,N'8213BE20-2680-4A13-91B8-49028BB89869',N'Menu_HTGL',1,0,1)
GO
- INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
- VALUES ( N'4A66821E-D8EE-4D1B-953D-7D18323A46DA',N'1C770E20-7912-484C-9739-499B1B2F8DEB',N'增加',1)
- INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
- VALUES ( N'6CD2EF60-3F20-4A1F-B920-39A696EE1948',N'1C770E20-7912-484C-9739-499B1B2F8DEB',N'修改',2)
- INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
- VALUES ( N'CD5B9E2F-52F1-496B-B34D-5C4F27881645',N'1C770E20-7912-484C-9739-499B1B2F8DEB',N'删除',3)
- INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
- VALUES ( N'08F6077E-DEC5-4965-BC39-D81439B867B9',N'1C770E20-7912-484C-9739-499B1B2F8DEB',N'保存',4)
- GO
+ INSERT Sys_Menu ([MenuId],[MenuName],[Url],[SortIndex],[SuperMenu],[MenuType],[IsOffice],[IsEnd],[IsUsed])
+ VALUES ( N'3593DF22-78C1-4A73-8468-B20CB44D88C9',N'电气工程',N'PHTGL/BillOfQuantities/TemQuantityList.aspx?Type=5.1',10,N'1C770E20-7912-484C-9739-499B1B2F8DEB',N'Menu_HTGL',1,1,1)
+ GO
+ INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
+ VALUES ( N'E85E577E-D291-4BE4-A188-1299627CB9BF',N'3593DF22-78C1-4A73-8468-B20CB44D88C9',N'增加',1)
+ INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
+ VALUES ( N'96284F37-5F44-45BC-9A76-07C5951B65FA',N'3593DF22-78C1-4A73-8468-B20CB44D88C9',N'修改',2)
+ INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
+ VALUES ( N'B449607E-78A1-4D43-B96F-DC005B63D0A9',N'3593DF22-78C1-4A73-8468-B20CB44D88C9',N'删除',3)
+ INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
+ VALUES ( N'C0DAC9B2-E39B-4424-B84B-88CDC840366E',N'3593DF22-78C1-4A73-8468-B20CB44D88C9',N'保存',4)
+ GO
+ INSERT Sys_Menu ([MenuId],[MenuName],[Url],[SortIndex],[SuperMenu],[MenuType],[IsOffice],[IsEnd],[IsUsed])
+ VALUES ( N'3ECE6333-6785-424D-996E-B923A650D8C7',N'仪表工程',N'PHTGL/BillOfQuantities/TemQuantityList.aspx?Type=5.2',20,N'1C770E20-7912-484C-9739-499B1B2F8DEB',N'Menu_HTGL',1,1,1)
+ GO
+ INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
+ VALUES ( N'0F96E48B-F865-4735-916E-8A981E004898',N'3ECE6333-6785-424D-996E-B923A650D8C7',N'增加',1)
+ INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
+ VALUES ( N'D482584F-9CFD-4490-8BC3-9E19053F4E0D',N'3ECE6333-6785-424D-996E-B923A650D8C7',N'修改',2)
+ INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
+ VALUES ( N'D59B5E5F-C8B0-4ABB-AE90-0574F5057FA5',N'3ECE6333-6785-424D-996E-B923A650D8C7',N'删除',3)
+ INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
+ VALUES ( N'27A4B058-2DAA-49DD-BDA6-27E87DF14EFA',N'3ECE6333-6785-424D-996E-B923A650D8C7',N'保存',4)
+ GO
+ INSERT Sys_Menu ([MenuId],[MenuName],[Url],[SortIndex],[SuperMenu],[MenuType],[IsOffice],[IsEnd],[IsUsed])
+ VALUES ( N'480F8C85-F5F2-4C5C-BE72-2ADABB7250CF',N'电信工程',N'PHTGL/BillOfQuantities/TemQuantityList.aspx?Type=5.3',30,N'1C770E20-7912-484C-9739-499B1B2F8DEB',N'Menu_HTGL',1,1,1)
+ GO
+ INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
+ VALUES ( N'FE761E62-A580-470E-AE7D-ACC112F816F1',N'480F8C85-F5F2-4C5C-BE72-2ADABB7250CF',N'增加',1)
+ INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
+ VALUES ( N'3CF4C013-1A1E-4FB9-926B-CE50F187EFA5',N'480F8C85-F5F2-4C5C-BE72-2ADABB7250CF',N'修改',2)
+ INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
+ VALUES ( N'C13CB62F-8793-460F-A0D0-8FBBA7F588A4',N'480F8C85-F5F2-4C5C-BE72-2ADABB7250CF',N'删除',3)
+ INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
+ VALUES ( N'89CF8033-B506-41E2-96D5-9D2406D814D0',N'480F8C85-F5F2-4C5C-BE72-2ADABB7250CF',N'保存',4)
+ GO
INSERT Sys_Menu ([MenuId],[MenuName],[Url],[SortIndex],[SuperMenu],[MenuType],[IsOffice],[IsEnd],[IsUsed])
VALUES ( N'92101A90-9C22-4B43-B012-9AFF8402F85D',N'水暖安装工程',N'PHTGL/BillOfQuantities/TemQuantityList.aspx?Type=6',70,N'8213BE20-2680-4A13-91B8-49028BB89869',N'Menu_HTGL',1,1,1)
GO
diff --git a/DataBase/菜单初始化脚本/1-6合同管理(Menu_PHTGL).sql b/DataBase/菜单初始化脚本/1-6合同管理(Menu_PHTGL).sql
index ef9d7f04..e29a1926 100644
--- a/DataBase/菜单初始化脚本/1-6合同管理(Menu_PHTGL).sql
+++ b/DataBase/菜单初始化脚本/1-6合同管理(Menu_PHTGL).sql
@@ -191,7 +191,7 @@ INSERT [Sys_Menu] ([MenuId],[MenuName],[SortIndex],[SuperMenu],[MenuType],[IsOff
GO
INSERT [Sys_Menu] ([MenuId],[MenuName],[Url],[SortIndex],[SuperMenu],[MenuType],[IsOffice],[IsEnd],[IsUsed])
- VALUES ( N'D9BAB30E-3255-4EA0-8631-EF15C9203EFD',N'ִͬи',N'PHTGL/ContractCompile/ContractTrackList.aspx',40,0,N'Menu_PHTGL',0,1,1)
+ VALUES ( N'D9BAB30E-3255-4EA0-8631-EF15C9203EFD',N'ͬ۸Ϣ',N'PHTGL/ContractCompile/ContractTrackList.aspx',40,0,N'Menu_PHTGL',0,1,1)
GO
INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
VALUES ( N'5AD91BF5-4CA6-4A9E-A370-D17B0D99010F',N'D9BAB30E-3255-4EA0-8631-EF15C9203EFD',N'',2)
@@ -201,4 +201,41 @@ INSERT [Sys_Menu] ([MenuId],[MenuName],[Url],[SortIndex],[SuperMenu],[MenuType],
VALUES ( N'DD9A3A8A-8DD9-4B24-B51D-C3EB530B60F2',N'D9BAB30E-3255-4EA0-8631-EF15C9203EFD',N'',4)
INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
VALUES ( N'C1708178-C52B-4D32-9849-C69622D96105',N'D9BAB30E-3255-4EA0-8631-EF15C9203EFD',N'',1)
+ GO
+
+INSERT [Sys_Menu] ([MenuId],[MenuName],[Url],[SortIndex],[SuperMenu],[MenuType],[IsOffice],[IsEnd],[IsUsed])
+ VALUES ( N'98269480-3F36-4169-A91D-16144D903C6C',N'WBS',N'PHTGL/ContractCompile/ContractWBS.aspx',50,0,N'Menu_PHTGL',0,1,1)
+ GO
+ INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
+ VALUES ( N'08CD24EB-98F4-407D-822F-8CF9C8D33E82',N'98269480-3F36-4169-A91D-16144D903C6C',N'',2)
+ INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
+ VALUES ( N'97308133-D190-4AD7-917F-A2AF444E8462',N'98269480-3F36-4169-A91D-16144D903C6C',N'ɾ',3)
+ INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
+ VALUES ( N'0B7306D1-A4A8-4C3C-814F-B28B991C5488',N'98269480-3F36-4169-A91D-16144D903C6C',N'',4)
+ INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
+ VALUES ( N'3D4B433D-EA34-4D0C-B744-E12CE232171C',N'98269480-3F36-4169-A91D-16144D903C6C',N'',1)
+ GO
+INSERT [Sys_Menu] ([MenuId],[MenuName],[Url],[SortIndex],[SuperMenu],[MenuType],[IsOffice],[IsEnd],[IsUsed])
+ VALUES ( N'D715B66F-8E99-498F-87DA-E85B4B8EB923',N'öԱͳ',N'PHTGL/ContractCompile/ContractTrackComparison.aspx',60,0,N'Menu_PHTGL',0,1,1)
+ GO
+ INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
+ VALUES ( N'E2C32BE6-A98D-4A6E-A2C5-6C2A50CF1105',N'D715B66F-8E99-498F-87DA-E85B4B8EB923',N'',2)
+ INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
+ VALUES ( N'C375017D-7521-4339-8CAB-029CD3EBB36B',N'D715B66F-8E99-498F-87DA-E85B4B8EB923',N'ɾ',3)
+ INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
+ VALUES ( N'64464E85-267F-4559-89D4-FB6F1E2B5FA5',N'D715B66F-8E99-498F-87DA-E85B4B8EB923',N'',4)
+ INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
+ VALUES ( N'1859C0E1-437C-419F-ABEE-63EE72E24AFC',N'D715B66F-8E99-498F-87DA-E85B4B8EB923',N'',1)
+ GO
+INSERT [Sys_Menu] ([MenuId],[MenuName],[Url],[SortIndex],[SuperMenu],[MenuType],[IsOffice],[IsEnd],[IsUsed])
+ VALUES ( N'F545E899-B3B5-4B49-A741-DE19356553D5',N'ȼ',N'PHTGL/ContractCompile/ContractTrackProgressDetection.aspx',70,0,N'Menu_PHTGL',0,1,1)
+ GO
+ INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
+ VALUES ( N'646C7C58-350D-484D-91BD-2FD3754FFD3E',N'F545E899-B3B5-4B49-A741-DE19356553D5',N'',2)
+ INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
+ VALUES ( N'6765754C-917B-4C07-A0F6-CCDED2ABDD07',N'F545E899-B3B5-4B49-A741-DE19356553D5',N'ɾ',3)
+ INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
+ VALUES ( N'1F7FDDC4-2746-4B65-9F65-37C71F11D342',N'F545E899-B3B5-4B49-A741-DE19356553D5',N'',4)
+ INSERT [Sys_ButtonToMenu] ([ButtonToMenuId],[MenuId],[ButtonName],[SortIndex])
+ VALUES ( N'D11BD092-6A18-44A3-8ABD-9CF9B95340E1',N'F545E899-B3B5-4B49-A741-DE19356553D5',N'',1)
GO
\ No newline at end of file
diff --git a/SGGL/BLL/Common/Const.cs b/SGGL/BLL/Common/Const.cs
index 829132a1..b5f1c295 100644
--- a/SGGL/BLL/Common/Const.cs
+++ b/SGGL/BLL/Common/Const.cs
@@ -3206,6 +3206,9 @@ namespace BLL
public const string TemQuantityListMenuId3= "FAC4F0F7-A7C0-4F66-8BCB-846C082BCA40";
public const string TemQuantityListMenuId4= "10586190-0FDD-4DA8-A877-CE4599D6F0DF";
public const string TemQuantityListMenuId5= "1C770E20-7912-484C-9739-499B1B2F8DEB";
+ public const string TemQuantityListMenuId5_1= "3593DF22-78C1-4A73-8468-B20CB44D88C9";
+ public const string TemQuantityListMenuId5_2= "3ECE6333-6785-424D-996E-B923A650D8C7";
+ public const string TemQuantityListMenuId5_3= "480F8C85-F5F2-4C5C-BE72-2ADABB7250CF";
public const string TemQuantityListMenuId6= "92101A90-9C22-4B43-B012-9AFF8402F85D";
public const string TemQuantityListMenuId7= "33A03E2C-4E00-4722-AA14-F50419468154";
public const string TemQuantityListMenuId8= "A5A31FE8-0643-4396-99E3-A4A31A947789";
@@ -3215,9 +3218,21 @@ namespace BLL
///
public const string PHTGL_BidProjectQuantityMenuId = "687991B6-73AC-42FA-9A72-178AF94D1EB4";
///
- /// 合同执行跟踪
+ /// 合同价格信息
///
public const string PHTGL_ContractTrackMenuId = "D9BAB30E-3255-4EA0-8631-EF15C9203EFD";
+ ///
+ /// WBS工作包
+ ///
+ public const string PHTGL_ContractWBSMenuId = "98269480-3F36-4169-A91D-16144D903C6C";
+ ///
+ /// 费用对比统计
+ ///
+ public const string PHTGL_ContractTrackComparisonMenuId = "D715B66F-8E99-498F-87DA-E85B4B8EB923";
+ ///
+ /// 进度检测
+ ///
+ public const string PHTGL_ContractTrackProgressDetectionMenuId = "F545E899-B3B5-4B49-A741-DE19356553D5";
#endregion
diff --git a/SGGL/BLL/PHTGL/BillOfQuantities/PhtglQuantityService.cs b/SGGL/BLL/PHTGL/BillOfQuantities/PhtglQuantityService.cs
index 0e6a5cd1..ee9616c6 100644
--- a/SGGL/BLL/PHTGL/BillOfQuantities/PhtglQuantityService.cs
+++ b/SGGL/BLL/PHTGL/BillOfQuantities/PhtglQuantityService.cs
@@ -17,6 +17,10 @@ namespace BLL
return Funs.DB.PHTGL_Quantity.FirstOrDefault(x => x.Id == Id);
}
+ public static PHTGL_Quantity GetPHTGL_QuantityByNumBer(string serialNumber,string marjor)
+ {
+ return Funs.DB.PHTGL_Quantity.FirstOrDefault(x => x.SerialNumber == serialNumber && x.Major==marjor);
+ }
public static void AddPHTGL_Quantity(PHTGL_Quantity newtable)
{
@@ -132,10 +136,24 @@ namespace BLL
public static ResponeData ImportData(string path, string majortype)
{
var responeData = new ResponeData();
- List rows;
+ List rows= new List();
+ List remarkQuery=new List();
+ string Major = "";
try
{
- rows = MiniExcel.Query(path).ToList();
+ var sheetNames = MiniExcel.GetSheetNames(path);
+ foreach (var item in sheetNames)
+ {
+ if (item=="编制说明")
+ {
+ remarkQuery = MiniExcel.Query(path, sheetName: item).ToList();
+ }
+ else
+ {
+ rows = MiniExcel.Query(path, sheetName: item).ToList();
+ }
+ }
+
}
catch (Exception e)
{
@@ -154,17 +172,46 @@ namespace BLL
return responeData;
}
+ Major = GetMajorItems().Where(x => x.Text == majortype).Select(x => x.Value).FirstOrDefault() ??
+ "";
+ List consts=new List();
+ int SortIndex = 0;
+ foreach (var item in remarkQuery)
+ {
+ if (string.IsNullOrEmpty(Major)) break;
+ Model.Sys_Const model = new Model.Sys_Const()
+ {
+ ID = SQLHelper.GetNewID(),
+ ConstValue = item.A?.ToString(),
+ SortIndex = SortIndex,
+ GroupId = "工程量清单-"+ Major
+ };
+ consts.Add(model);
+ SortIndex++;
+ }
+
+ var old = ConstValue.drpConstItemList("工程量清单-" + Major);
+ if (old.Count>0)
+ {
+ Funs.DB.Sys_Const.DeleteAllOnSubmit(old);
+ Funs.DB.SubmitChanges();
+ }
+ ;
+ Funs.DB.Sys_Const.InsertAllOnSubmit(consts);
+ Funs.DB.SubmitChanges();
foreach (var item in modeList)
{
- item.Major = GetMajorItems().Where(x => x.Text == majortype).Select(x => x.Value).FirstOrDefault() ??
- "";
- if (string.IsNullOrEmpty(item.Major)) break;
+ item.Major = Major;
+ if (string.IsNullOrEmpty(Major)) break;
+ if (string .IsNullOrEmpty(item.ProjectName)) continue;
+ if (item.ProjectName== "项目名称") continue;
var queryPhtglQuantity = new PHTGL_Quantity
{
Major = item.Major,
SubProject = item.SubProject,
SubItemProject = item.SubItemProject,
ProjectCode = item.ProjectCode,
+ ProjectName = item.ProjectName,
IsTemplate = true
};
var resultModel = GetPHTGL_QuantityByModle(queryPhtglQuantity);
@@ -256,17 +303,19 @@ namespace BLL
public static ListItem[] GetMajorItems()
{
- var list = new ListItem[10];
+ var list = new ListItem[12];
list[0] = new ListItem("0", "土建工程");
list[1] = new ListItem("1", "钢结构预制工程");
list[2] = new ListItem("2", "工艺管道安装工程");
list[3] = new ListItem("3", "工艺设备安装工程");
list[4] = new ListItem("4", "非标设备现场制作安装工程");
- list[5] = new ListItem("5", "电仪安装工程");
- list[6] = new ListItem("6", "水暖安装工程");
- list[7] = new ListItem("7", "防腐绝热工程");
- list[8] = new ListItem("8", "无损检测工程");
- list[9] = new ListItem("9", "消防工程");
+ list[5] = new ListItem("5.1", "电气工程");
+ list[6] = new ListItem("5.2", "仪表工程");
+ list[7] = new ListItem("5.3", "电信工程");
+ list[8] = new ListItem("6", "水暖安装工程");
+ list[9] = new ListItem("7", "防腐绝热工程");
+ list[10] = new ListItem("8", "无损检测工程");
+ list[11] = new ListItem("9", "消防工程");
return list;
}
@@ -305,12 +354,14 @@ namespace BLL
(string.IsNullOrEmpty(table.Remarks) || x.Remarks.Contains(table.Remarks)) &&
x.IsTemplate == table.IsTemplate &&
(string.IsNullOrEmpty(table.ParentId) || x.ParentId.Contains(table.ParentId))
-
- select new { x ,IntSerialNumber= Funs.GetNewIntOrZero(x.SerialNumber.Replace(".", ""))
- }
+
+ select x;
+ //select new { x ,IntSerialNumber= Funs.GetNewIntOrZero(x.SerialNumber.Replace(".", ""))
+ // }
;
- var model = q.ToList().OrderBy(x => x.IntSerialNumber).Select(itemx => itemx.x).ToList();
+ //var model = q.ToList().OrderBy(x => x.IntSerialNumber).Select(itemx => itemx.x).ToList();
+ var model = q.ToList().OrderBy(x => x.SerialNumber, new CustomComparer()).ToList();
return model;
}
@@ -350,9 +401,61 @@ namespace BLL
};
}
+ public static void CheckSubProjectName(List list)
+ {
+ foreach (var item in list)
+ {
+ var SubProject = "";
+ var SubItemProject = "";
+ var SerialNumberArry = item.SerialNumber?.Split('.');
+ if (SerialNumberArry.Length==2)
+ {
+ item.SubProject = GetPHTGL_QuantityByNumBer(SerialNumberArry[0], item.Major).ProjectName;
+ UpdatePHTGL_Quantity(item);
+
+ }
+ else if (SerialNumberArry.Length == 3)
+ {
+ item.SubProject = GetPHTGL_QuantityByNumBer(SerialNumberArry[0], item.Major).ProjectName;
+ item.SubItemProject= GetPHTGL_QuantityByNumBer(SerialNumberArry[0]+"."+ SerialNumberArry[1], item.Major).ProjectName;
+ UpdatePHTGL_Quantity(item);
+ }
+
+ }
+ }
+
#endregion
}
+ public class CustomComparer : IComparer
+ {
+ public int Compare(string x, string y)
+ {
+ if (string.IsNullOrEmpty(x)||string.IsNullOrEmpty(y))
+ {
+ return 0;
+ }
+ var xParts = x.Split('.');
+ var yParts = y.Split('.');
+ for (int i = 0; i < Math.Min(xParts.Length, yParts.Length); i++)
+ {
+ int xNumber, yNumber;
+ if (int.TryParse(xParts[i], out xNumber) && int.TryParse(yParts[i], out yNumber))
+ {
+ if (xNumber != yNumber)
+ {
+ return xNumber.CompareTo(yNumber);
+ }
+ }
+ else
+ {
+ return x.CompareTo(y);
+ }
+ }
+
+ return xParts.Length.CompareTo(yParts.Length);
+ }
+ }
public class PHTGL_QuantityDtoIn
{
[ExcelColumnIndex("A")] public string SerialNumber { get; set; }
diff --git a/SGGL/FineUIPro.Web/FineUIPro.Web.csproj b/SGGL/FineUIPro.Web/FineUIPro.Web.csproj
index d6fef964..9f17ed3c 100644
--- a/SGGL/FineUIPro.Web/FineUIPro.Web.csproj
+++ b/SGGL/FineUIPro.Web/FineUIPro.Web.csproj
@@ -1267,11 +1267,14 @@
+
+
+
@@ -12435,6 +12438,13 @@
ContractStandingBook.aspx
+
+ ContractTrackComparison.aspx
+ ASPXCodeBehind
+
+
+ ContractTrackComparison.aspx
+
ContractTrackEdit.aspx
ASPXCodeBehind
@@ -12470,6 +12480,20 @@
ContractTrackProgressChart.aspx
+
+ ContractTrackProgressDetection.aspx
+ ASPXCodeBehind
+
+
+ ContractTrackProgressDetection.aspx
+
+
+ ContractWBS.aspx
+ ASPXCodeBehind
+
+
+ ContractWBS.aspx
+
GeneralTermsConditions.aspx
ASPXCodeBehind
diff --git a/SGGL/FineUIPro.Web/HJGL/WeldingManage/WeldReportEdit.aspx.cs b/SGGL/FineUIPro.Web/HJGL/WeldingManage/WeldReportEdit.aspx.cs
index 77e15f0d..88c0514c 100644
--- a/SGGL/FineUIPro.Web/HJGL/WeldingManage/WeldReportEdit.aspx.cs
+++ b/SGGL/FineUIPro.Web/HJGL/WeldingManage/WeldReportEdit.aspx.cs
@@ -206,7 +206,7 @@ namespace FineUIPro.Web.WeldingProcess.WeldingManage
&& x.WeldingDailyId == null /*&& x.CoverWelderId != null && x.BackingWelderId != null*/) || x.WeldingDailyId == this.WeldingDailyId
select x).ToList();
- weldJointIds= weldJointIds.GroupBy(x => x.WeldJointId, (key, group) => group.First()).ToList();
+ weldJointIds= weldJointIds.GroupBy(x => x.WeldJointId, (key, group) => group.OrderByDescending(x=>x.TaskDate).First()).ToList();
task = weldJointIds;
//foreach (var weldJointId in weldJointIds)
//{
@@ -228,7 +228,7 @@ namespace FineUIPro.Web.WeldingProcess.WeldingManage
where x.UnitWorkId == this.UnitWorkId && x.TaskDate.Value.Date <= Convert.ToDateTime(txtWeldingDate.Text)
&& x.WeldingDailyId == null /*&& x.CoverWelderId != null && x.BackingWelderId != null*/
select x).ToList();
- weldJointIds = weldJointIds.GroupBy(x => x.WeldJointId, (key, group) => group.First()).ToList();
+ weldJointIds = weldJointIds.GroupBy(x => x.WeldJointId, (key, group) => group.OrderByDescending(x => x.TaskDate).First()).ToList();
task = weldJointIds;
//foreach (var weldJointId in weldJointIds)
//{
diff --git a/SGGL/FineUIPro.Web/PHTGL/BillOfQuantities/TemQuantityList.aspx b/SGGL/FineUIPro.Web/PHTGL/BillOfQuantities/TemQuantityList.aspx
index a09ceb99..d318451f 100644
--- a/SGGL/FineUIPro.Web/PHTGL/BillOfQuantities/TemQuantityList.aspx
+++ b/SGGL/FineUIPro.Web/PHTGL/BillOfQuantities/TemQuantityList.aspx
@@ -5,151 +5,152 @@
-
+
+
+
diff --git a/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractTrackComparison.aspx.cs b/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractTrackComparison.aspx.cs
new file mode 100644
index 00000000..a8e8e597
--- /dev/null
+++ b/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractTrackComparison.aspx.cs
@@ -0,0 +1,476 @@
+using BLL;
+using Newtonsoft.Json.Linq;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Web;
+using System.Web.UI;
+using System.Web.UI.WebControls;
+
+namespace FineUIPro.Web.PHTGL.ContractCompile
+{
+ public partial class ContractTrackComparison : PageBase
+ {
+ public string ContractId
+ {
+ get => (string)ViewState["ContractId"];
+ set => ViewState["ContractId"] = value;
+ }
+ protected void Page_Load(object sender, EventArgs e)
+ {
+ if (!IsPostBack)
+ {
+ this.GetButtonPower();
+ //主合同编号
+ this.DropContractCode.DataTextField = "ContractNum";
+ this.DropContractCode.DataValueField = "ContractNum";
+ this.DropContractCode.DataSource = BLL.PHTGL_ContractReviewService.GetContractReview_CompleteData(this.CurrUser.LoginProjectId);
+ this.DropContractCode.DataBind();
+ Funs.FineUIPleaseSelect(this.DropContractCode);
+ DropMainContractCode_SelectedIndexChanged(null, null);
+ this.ddlPageSize.SelectedValue = this.Grid1.PageSize.ToString();
+ // 绑定表格
+ this.BindGrid();
+
+ }
+ }
+
+ #region 绑定数据
+ ///
+ /// 绑定数据
+ ///
+ private void BindGrid()
+ {
+ Model.PHTGL_ContractTrack table = new Model.PHTGL_ContractTrack();
+ table.ProjectId = this.CurrUser.LoginProjectId;
+ table.ContractId = this.ContractId;
+ table.ProjectCode = this.txtProjectCode.Text.Trim();
+ table.ProjectName = this.txtProjectName.Text.Trim();
+ var tb = BLL.PhtglContractTrackService.GetListData(table, Grid1);
+ Grid1.RecordCount = PhtglContractTrackService.Count;
+ //tb = GetFilteredTable(Grid1.FilteredData, tb);
+ Grid1.DataSource = tb;
+ Grid1.DataBind();
+
+
+ }
+ private void BindGrid2()
+ {
+ var db = Funs.DB;
+ var q = from x in db.PHTGL_ContractTrackMatchWBS
+ join y in db.WBS_ControlItemAndCycle on x.ControlItemAndCycleId equals y.ControlItemAndCycleId
+ where x.ContractTrackId == Grid1.SelectedRowID
+ select new
+ {
+ x.Id,
+ x.ContractTrackId,
+ x.ControlItemAndCycleId,
+ y.ControlItemAndCycleCode,
+ y.ControlItemContent,
+ y.Weights,
+ x.WorkPackageEstimate
+ };
+ ;
+
+
+ }
+ private string GetDeleteScript()
+ {
+ return Confirm.GetShowReference("确定删除当前数据吗?", String.Empty, MessageBoxIcon.Question, Grid1.GetDeleteSelectedRowsReference(), String.Empty);
+ }
+
+ #endregion
+
+ #region GV 数据操作
+ ///
+ /// 过滤表头
+ ///
+ ///
+ ///
+ //protected void Grid1_FilterChange(object sender, EventArgs e)
+ //{
+ // this.BindGrid();
+ //}
+
+ ///
+ /// 分页
+ ///
+ ///
+ ///
+ protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
+ {
+ this.Grid1.PageIndex = e.NewPageIndex;
+ this.BindGrid();
+ }
+
+ ///
+ /// 排序
+ ///
+ ///
+ ///
+ protected void Grid1_Sort(object sender, GridSortEventArgs e)
+ {
+ this.Grid1.SortDirection = e.SortDirection;
+ this.Grid1.SortField = e.SortField;
+ this.BindGrid();
+ }
+
+ ///
+ /// 分页显示条数下拉框
+ ///
+ ///
+ ///
+ protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ this.Grid1.PageSize = Convert.ToInt32(this.ddlPageSize.SelectedValue);
+ this.BindGrid();
+ }
+ #endregion
+
+ #region 数据编辑事件
+ ///
+ /// 新增
+ ///
+ ///
+ ///
+ protected void btnNew_Click(object sender, EventArgs e)
+ {
+ if (!string.IsNullOrEmpty(ContractId))
+ {
+ PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("ContractTrackEdit.aspx?Id={0}", string.Empty, "增加 - ")));
+
+ }
+ else
+ {
+ ShowNotify("请选择施工分包合同!", MessageBoxIcon.Information);
+ }
+ }
+
+ ///
+ /// 编辑按钮
+ ///
+ ///
+ ///
+ protected void btnEdit_Click(object sender, EventArgs e)
+ {
+ if (Grid1.SelectedRowIndexArray.Length == 0)
+ {
+ Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
+ return;
+ }
+ string ID = Grid1.SelectedRowID;
+ var model = BLL.PhtglContractTrackService.GetPHTGL_ContractTrackById(ID);
+ if (model != null) ///已上报时不能删除
+ {
+ PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("ContractTrackEdit.aspx?Id={0}", ID, "编辑 - ")));
+ }
+ }
+
+ ///
+ /// Grid行单击事件
+ ///
+ ///
+ ///
+ protected void Grid1_OnRowClick(object sender, GridRowClickEventArgs e)
+ {
+ BindGrid2();
+ }
+
+ ///
+ /// Grid行双击事件
+ ///
+ ///
+ ///
+ protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
+ {
+ this.btnEdit_Click(null, null);
+ }
+
+ ///
+ /// 批量删除
+ ///
+ ///
+ ///
+ protected void btnDelete_Click(object sender, EventArgs e)
+ {
+ if (Grid1.SelectedRowIndexArray.Length > 0)
+ {
+ foreach (int rowIndex in Grid1.SelectedRowIndexArray)
+ {
+ string rowID = Grid1.DataKeys[rowIndex][0].ToString();
+ var model = BLL.PhtglContractTrackService.GetPHTGL_ContractTrackById(rowID);
+ if (model != null)
+ {
+ BLL.PhtglContractTrackService.DeletePHTGL_ContractTrackById(rowID);
+ }
+ }
+
+ BindGrid();
+ ShowNotify("删除数据成功!", MessageBoxIcon.Success);
+ }
+ }
+
+ #region 更新上级WBS内容每月实际费用
+ ///
+ /// 更新上级WBS内容每月实际费用
+ ///
+ ///
+ ///
+ ///
+ ///
+ private void UpdateWorkPackageParentThisValue(Model.SGGLDB db, string SuperWorkPackageId, DateTime months, decimal thisValue)
+ {
+ Model.WBS_WorkPackage workPackage = db.WBS_WorkPackage.FirstOrDefault(x => x.WorkPackageId == SuperWorkPackageId);
+ if (workPackage != null)
+ {
+ Model.WBS_WorkPackageParentDetail parentDetail = BLL.WorkPackageParentDetailService.GetWorkPackageParentDetailByParentIdAndMonths(SuperWorkPackageId, months);
+ if (parentDetail != null)
+ {
+ parentDetail.ThisValue += thisValue;
+ }
+ else
+ {
+ parentDetail = new Model.WBS_WorkPackageParentDetail();
+ parentDetail.WorkPackageParentDetailId = SQLHelper.GetNewID();
+ parentDetail.ParentId = SuperWorkPackageId;
+ parentDetail.Months = months;
+ parentDetail.ThisValue = thisValue;
+ db.WBS_WorkPackageParentDetail.InsertOnSubmit(parentDetail);
+ }
+ if (workPackage.SuperWorkPackageId != null) //还存在上级节点,需要继续循环
+ {
+ UpdateWorkPackageParentThisValue(db, workPackage.SuperWorkPackageId, months, thisValue);
+ }
+ }
+ }
+ #endregion
+
+ protected void btnSave_OnClick(object sender, EventArgs e)
+ {
+ JArray EditorArr = Grid1.GetMergedData();
+ if (EditorArr.Count > 0)
+ {
+ for (int i = 0; i < EditorArr.Count; i++)
+ {
+ JObject objects = (JObject)EditorArr[i];
+ var Id = objects["id"].ToString();
+ var MainItemCode = objects["values"]["MainItemCode"].ToString();
+ var MainItemName = objects["values"]["MainItemName"].ToString();
+ var MajorName = objects["values"]["MajorName"].ToString();
+ var MajorCode = objects["values"]["MajorCode"].ToString();
+ //var ProjectCode = objects["values"]["ProjectCode"].ToString();
+ var ProjectName = objects["values"]["ProjectName"].ToString();
+ var ProjectDescription = objects["values"]["ProjectDescription"].ToString();
+ var UnitOfMeasurement = objects["values"]["UnitOfMeasurement"].ToString();
+ var Quantity = objects["values"]["Quantity"].ToString();
+ var TotalCostFixedComprehensiveUnitPrice = objects["values"]["TotalCostFixedComprehensiveUnitPrice"].ToString();
+ var MainMaterialCost = objects["values"]["MainMaterialCost"].ToString();
+ var TotalPrice = objects["values"]["TotalPrice"].ToString();
+ var CalculationRule = objects["values"]["CalculationRule"].ToString();
+ var WorkContent = objects["values"]["WorkContent"].ToString();
+ var Remarks = objects["values"]["Remarks"].ToString();
+ var ConstructionSubcontractor = objects["values"]["ConstructionSubcontractor"].ToString();
+ var ContractWeight = objects["values"]["ContractWeight"].ToString();
+ var MaterialSupplier = objects["values"]["MaterialSupplier"].ToString();
+ var IsWithinGeneralContractScope = objects["values"]["IsWithinGeneralContractScope"].ToString();
+ var EstimatedQuantity = objects["values"]["EstimatedQuantity"].ToString();
+ var EstimatedAmount = objects["values"]["EstimatedAmount"].ToString();
+ var SettledQuantity = objects["values"]["SettledQuantity"].ToString();
+ var SettledAmount = objects["values"]["SettledAmount"].ToString();
+
+ var model = PhtglContractTrackService.GetPHTGL_ContractTrackById(Id);
+ model.MainItemCode = MainItemCode;
+ model.MainItemName = MainItemName;
+ model.MajorName = MajorName;
+ model.MajorCode = MajorCode;
+ // model.ProjectCode = ProjectCode;
+ model.ProjectName = ProjectName;
+ model.ProjectDescription = ProjectDescription;
+ model.UnitOfMeasurement = UnitOfMeasurement;
+ model.Quantity = Quantity;
+ model.TotalCostFixedComprehensiveUnitPrice = TotalCostFixedComprehensiveUnitPrice;
+ model.MainMaterialCost = MainMaterialCost;
+ model.TotalPrice = TotalPrice;
+ model.CalculationRule = CalculationRule;
+ model.WorkContent = WorkContent;
+ model.Remarks = Remarks;
+ model.ConstructionSubcontractor = ConstructionSubcontractor;
+ model.ContractWeight = ContractWeight;
+ model.MaterialSupplier = MaterialSupplier;
+ model.IsWithinGeneralContractScope = bool.Parse(IsWithinGeneralContractScope);
+ model.EstimatedQuantity = EstimatedQuantity;
+ model.EstimatedAmount = Funs.GetNewDecimal(EstimatedAmount);
+ model.SettledQuantity = SettledQuantity;
+ model.SettledAmount = Funs.GetNewDecimal(SettledAmount);
+
+ PhtglContractTrackService.UpdatePHTGL_ContractTrack(model);
+ }
+ }
+ BindGrid();
+ }
+
+ protected void btnQuery_OnClick(object sender, EventArgs e)
+ {
+ BindGrid();
+ }
+
+ protected void btnGetChart_Click(object sender, EventArgs e)
+ {
+ if (!string.IsNullOrEmpty(ContractId))
+ {
+ var model = ContractService.GetContractByContractNum(DropContractCode.SelectedValue);
+ if (model != null)
+ {
+ PageContext.RegisterStartupScript(
+ Window2.GetShowReference(string.Format("ContractTrackProgressChart.aspx?ContractId={0}", model.ContractId, "图表 - ")));
+ }
+ }
+ else
+ {
+ ShowNotify("请选择施工分包合同", MessageBoxIcon.Question);
+ }
+ }
+ #endregion
+
+ #region 关闭弹出窗
+ ///
+ /// 关闭弹出窗
+ ///
+ ///
+ ///
+ protected void Window1_Close(object sender, WindowCloseEventArgs e)
+ {
+ BindGrid();
+ }
+ #endregion
+
+ #region 获取权限按钮
+ ///
+ /// 获取按钮权限
+ ///
+ ///
+ ///
+ private void GetButtonPower()
+ {
+ var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.PersonId, BLL.Const.PHTGL_ContractTrackComparisonMenuId);
+ if (buttonList.Count > 0)
+ {
+ if (buttonList.Contains(BLL.Const.BtnAdd))
+ {
+ this.btnNew.Hidden = false;
+ }
+ if (buttonList.Contains(BLL.Const.BtnModify))
+ {
+ this.btnMenuEdit.Hidden = false;
+ }
+ if (buttonList.Contains(BLL.Const.BtnDelete))
+ {
+ this.btnMenuDelete.Hidden = false;
+ }
+ }
+ }
+ #endregion
+
+ #region 导出按钮
+ /// 导出按钮
+ ///
+ ///
+ ///
+ protected void btnOut_Click(object sender, EventArgs e)
+ {
+ Response.ClearContent();
+ string filename = Funs.GetNewFileName();
+ Response.AddHeader("content-disposition", "attachment; filename=" + System.Web.HttpUtility.UrlEncode("合同执行跟踪表" + filename, System.Text.Encoding.UTF8) + ".xls");
+ Response.ContentType = "application/excel";
+ Response.ContentEncoding = System.Text.Encoding.UTF8;
+ this.Grid1.PageSize = 500;
+ this.BindGrid();
+ Response.Write(GetGridTableHtml(Grid1));
+ Response.End();
+ }
+
+ ///
+ /// 导出方法
+ ///
+ ///
+ ///
+ private string GetGridTableHtml(Grid grid)
+ {
+ StringBuilder sb = new StringBuilder();
+ sb.Append("");
+ sb.Append("");
+ sb.Append("");
+ foreach (GridColumn column in grid.Columns)
+ {
+ sb.AppendFormat("| {0} | ", column.HeaderText);
+ }
+ sb.Append("
");
+ foreach (GridRow row in grid.Rows)
+ {
+ sb.Append("");
+ foreach (GridColumn column in grid.Columns)
+ {
+ string html = row.Values[column.ColumnIndex].ToString();
+ if (column.ColumnID == "tfNumber")
+ {
+ html = (row.FindControl("lblNumber") as System.Web.UI.WebControls.Label).Text;
+ }
+ sb.AppendFormat("| {0} | ", html);
+ }
+
+ sb.Append("
");
+ }
+
+ sb.Append("
");
+
+ return sb.ToString();
+ }
+ #endregion
+
+ protected void DropMainContractCode_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ if (!string.IsNullOrEmpty(DropContractCode.SelectedValue))
+ {
+ var model = ContractService.GetContractByContractNum(DropContractCode.SelectedValue);
+ if (model != null)
+ {
+ ContractId = model.ContractId;
+ this.txtContractName.Text = model.ContractName;
+ }
+ else
+ {
+ ContractId = "";
+ this.txtContractName.Text = string.Empty;
+
+ }
+ }
+ BindGrid();
+ }
+
+ protected void btnImport_Click(object sender, EventArgs e)
+ {
+ if (!string.IsNullOrEmpty(ContractId))
+ {
+ var model = ContractService.GetContractByContractNum(DropContractCode.SelectedValue);
+ if (model != null)
+ {
+ PageContext.RegisterStartupScript(
+ Window2.GetShowReference(string.Format("ContractTrackIn.aspx?ContractId={0}", model.ContractId, "导入 - ")));
+ }
+ }
+ else
+ {
+ ShowNotify("请选择施工分包合同", MessageBoxIcon.Question);
+ }
+ }
+
+
+ protected void Window3_OnClose(object sender, WindowCloseEventArgs e)
+ {
+ BindGrid2();
+ }
+
+
+ }
+}
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractTrackComparison.aspx.designer.cs b/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractTrackComparison.aspx.designer.cs
new file mode 100644
index 00000000..076beb91
--- /dev/null
+++ b/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractTrackComparison.aspx.designer.cs
@@ -0,0 +1,467 @@
+//------------------------------------------------------------------------------
+// <自动生成>
+// 此代码由工具生成。
+//
+// 对此文件的更改可能导致不正确的行为,如果
+// 重新生成代码,则所做更改将丢失。
+// 自动生成>
+//------------------------------------------------------------------------------
+
+namespace FineUIPro.Web.PHTGL.ContractCompile
+{
+
+
+ public partial class ContractTrackComparison
+ {
+
+ ///
+ /// form1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::System.Web.UI.HtmlControls.HtmlForm form1;
+
+ ///
+ /// PageManager1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.PageManager PageManager1;
+
+ ///
+ /// Panel3 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Panel Panel3;
+
+ ///
+ /// panelCenterRegion 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Panel panelCenterRegion;
+
+ ///
+ /// Grid1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Grid Grid1;
+
+ ///
+ /// Toolbar2 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Toolbar Toolbar2;
+
+ ///
+ /// DropContractCode 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList DropContractCode;
+
+ ///
+ /// txtContractName 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label txtContractName;
+
+ ///
+ /// btnNew 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnNew;
+
+ ///
+ /// btnImport 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnImport;
+
+ ///
+ /// btnOut 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnOut;
+
+ ///
+ /// btnSave 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnSave;
+
+ ///
+ /// Toolbar4 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Toolbar Toolbar4;
+
+ ///
+ /// txtProjectCode 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtProjectCode;
+
+ ///
+ /// txtProjectName 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtProjectName;
+
+ ///
+ /// btnQuery 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnQuery;
+
+ ///
+ /// btnGetChart 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnGetChart;
+
+ ///
+ /// lblNumber 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::System.Web.UI.WebControls.Label lblNumber;
+
+ ///
+ /// TextBox2 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox2;
+
+ ///
+ /// TextBox3 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox3;
+
+ ///
+ /// TextBox4 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox4;
+
+ ///
+ /// TextBox5 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox5;
+
+ ///
+ /// TextBox6 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox6;
+
+ ///
+ /// TextBox7 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox7;
+
+ ///
+ /// TextBox8 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox8;
+
+ ///
+ /// TextBox9 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox9;
+
+ ///
+ /// TextBox10 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox10;
+
+ ///
+ /// TextBox11 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox11;
+
+ ///
+ /// TextBox12 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox12;
+
+ ///
+ /// TextBox13 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox13;
+
+ ///
+ /// TextBox14 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox14;
+
+ ///
+ /// TextBox15 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox15;
+
+ ///
+ /// TextBox16 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox16;
+
+ ///
+ /// TextBox17 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox17;
+
+ ///
+ /// TextBox18 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox18;
+
+ ///
+ /// TextBox19 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox19;
+
+ ///
+ /// TextBox20 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox20;
+
+ ///
+ /// TextBox22 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox22;
+
+ ///
+ /// NumberBox2 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.NumberBox NumberBox2;
+
+ ///
+ /// TextBox24 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox24;
+
+ ///
+ /// NumberBox3 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.NumberBox NumberBox3;
+
+ ///
+ /// ToolbarSeparator1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
+
+ ///
+ /// ToolbarText1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.ToolbarText ToolbarText1;
+
+ ///
+ /// ddlPageSize 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList ddlPageSize;
+
+ ///
+ /// Window1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Window Window1;
+
+ ///
+ /// Window2 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Window Window2;
+
+ ///
+ /// Window3 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Window Window3;
+
+ ///
+ /// Menu1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Menu Menu1;
+
+ ///
+ /// btnMenuEdit 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.MenuButton btnMenuEdit;
+
+ ///
+ /// btnMenuDelete 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.MenuButton btnMenuDelete;
+ }
+}
diff --git a/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractTrackList.aspx b/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractTrackList.aspx
index 4128a8ff..ede7e4c6 100644
--- a/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractTrackList.aspx
+++ b/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractTrackList.aspx
@@ -189,7 +189,7 @@
-
@@ -234,7 +234,7 @@
-
+ --%>
@@ -260,7 +260,7 @@
+ Title="底部面板" ShowBorder="true" ShowHeader="false" BodyPadding="10px" IconFont="_PullDown" Layout="HBox" Hidden="True">
diff --git a/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractTrackList.aspx.designer.cs b/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractTrackList.aspx.designer.cs
index ee26ef32..f9e9e9af 100644
--- a/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractTrackList.aspx.designer.cs
+++ b/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractTrackList.aspx.designer.cs
@@ -320,69 +320,6 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
///
protected global::FineUIPro.TextBox TextBox17;
- ///
- /// TextBox18 控件。
- ///
- ///
- /// 自动生成的字段。
- /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
- ///
- protected global::FineUIPro.TextBox TextBox18;
-
- ///
- /// TextBox19 控件。
- ///
- ///
- /// 自动生成的字段。
- /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
- ///
- protected global::FineUIPro.TextBox TextBox19;
-
- ///
- /// TextBox20 控件。
- ///
- ///
- /// 自动生成的字段。
- /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
- ///
- protected global::FineUIPro.TextBox TextBox20;
-
- ///
- /// TextBox22 控件。
- ///
- ///
- /// 自动生成的字段。
- /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
- ///
- protected global::FineUIPro.TextBox TextBox22;
-
- ///
- /// NumberBox2 控件。
- ///
- ///
- /// 自动生成的字段。
- /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
- ///
- protected global::FineUIPro.NumberBox NumberBox2;
-
- ///
- /// TextBox24 控件。
- ///
- ///
- /// 自动生成的字段。
- /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
- ///
- protected global::FineUIPro.TextBox TextBox24;
-
- ///
- /// NumberBox3 控件。
- ///
- ///
- /// 自动生成的字段。
- /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
- ///
- protected global::FineUIPro.NumberBox NumberBox3;
-
///
/// ToolbarSeparator1 控件。
///
diff --git a/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractTrackProgressDetection.aspx b/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractTrackProgressDetection.aspx
new file mode 100644
index 00000000..74cc0878
--- /dev/null
+++ b/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractTrackProgressDetection.aspx
@@ -0,0 +1,16 @@
+<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ContractTrackProgressDetection.aspx.cs" Inherits="FineUIPro.Web.PHTGL.ContractCompile.ContractTrackProgressDetection" %>
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractTrackProgressDetection.aspx.cs b/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractTrackProgressDetection.aspx.cs
new file mode 100644
index 00000000..912e8656
--- /dev/null
+++ b/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractTrackProgressDetection.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.PHTGL.ContractCompile
+{
+ public partial class ContractTrackProgressDetection : System.Web.UI.Page
+ {
+ protected void Page_Load(object sender, EventArgs e)
+ {
+
+ }
+ }
+}
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractTrackProgressDetection.aspx.designer.cs b/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractTrackProgressDetection.aspx.designer.cs
new file mode 100644
index 00000000..2c60b552
--- /dev/null
+++ b/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractTrackProgressDetection.aspx.designer.cs
@@ -0,0 +1,26 @@
+//------------------------------------------------------------------------------
+// <自动生成>
+// 此代码由工具生成。
+//
+// 对此文件的更改可能导致不正确的行为,如果
+// 重新生成代码,则所做更改将丢失。
+// 自动生成>
+//------------------------------------------------------------------------------
+
+namespace FineUIPro.Web.PHTGL.ContractCompile
+{
+
+
+ public partial class ContractTrackProgressDetection
+ {
+
+ ///
+ /// form1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::System.Web.UI.HtmlControls.HtmlForm form1;
+ }
+}
diff --git a/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractWBS.aspx b/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractWBS.aspx
new file mode 100644
index 00000000..e4974a14
--- /dev/null
+++ b/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractWBS.aspx
@@ -0,0 +1,213 @@
+<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ContractWBS.aspx.cs" Inherits="FineUIPro.Web.PHTGL.ContractCompile.ContractWBS" %>
+
+
+
+
+
+
+
+ 合同执行跟踪表
+
+
+
+
+
+
+
+
diff --git a/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractWBS.aspx.cs b/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractWBS.aspx.cs
new file mode 100644
index 00000000..bb75b6f2
--- /dev/null
+++ b/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractWBS.aspx.cs
@@ -0,0 +1,270 @@
+using BLL;
+using Newtonsoft.Json.Linq;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Web;
+using System.Web.UI;
+using System.Web.UI.WebControls;
+
+namespace FineUIPro.Web.PHTGL.ContractCompile
+{
+ public partial class ContractWBS : PageBase
+ {
+ public string ContractId
+ {
+ get => (string)ViewState["ContractId"];
+ set => ViewState["ContractId"] = value;
+ }
+ protected void Page_Load(object sender, EventArgs e)
+ {
+ if (!IsPostBack)
+ {
+ this.GetButtonPower();
+ //主合同编号
+ this.DropContractCode.DataTextField = "ContractNum";
+ this.DropContractCode.DataValueField = "ContractNum";
+ this.DropContractCode.DataSource = BLL.PHTGL_ContractReviewService.GetContractReview_CompleteData(this.CurrUser.LoginProjectId);
+ this.DropContractCode.DataBind();
+ Funs.FineUIPleaseSelect(this.DropContractCode);
+ DropMainContractCode_SelectedIndexChanged(null, null);
+ this.ddlPageSize.SelectedValue = this.Grid1.PageSize.ToString();
+ // 绑定表格
+ this.BindGrid();
+
+ }
+ }
+
+ #region 绑定数据
+ ///
+ /// 绑定数据
+ ///
+ private void BindGrid()
+ {
+ var db = Funs.DB;
+ var q =
+ from x in db.PHTGL_ContractTrack
+ join y in db.PHTGL_ContractTrackMatchWBS on x.Id equals y.ContractTrackId into g
+ from y in g.DefaultIfEmpty()
+ join z in db.WBS_ControlItemAndCycle on y.ControlItemAndCycleId equals z.ControlItemAndCycleId into _ControlJoin
+ from z in _ControlJoin.DefaultIfEmpty()
+
+ where (string.IsNullOrEmpty(ContractId) || x.ContractId.Contains(ContractId)) &&
+ (string.IsNullOrEmpty(CurrUser.LoginProjectId) || x.ProjectId.Contains(CurrUser.LoginProjectId)) &&
+ (string.IsNullOrEmpty(this.txtProjectCode.Text.Trim()) || x.ProjectCode.Contains(this.txtProjectCode.Text.Trim())) &&
+ (string.IsNullOrEmpty(this.txtProjectName.Text.Trim()) || x.ProjectName.Contains(this.txtProjectName.Text.Trim()))
+
+ select new
+ {
+ MatchWbsId= y.Id ,
+ y.ContractTrackId,
+ y.ControlItemAndCycleId,
+ z.ControlItemAndCycleCode,
+ z.ControlItemContent,
+ z.Weights,
+ y.WorkPackageEstimate,
+ x.Id,
+ x.ContractNum,
+ x.MainItemCode,
+ x.MainItemName,
+ x.MajorName,
+ x.MajorCode,
+ x.SubProject,
+ x.SubItemProject,
+ x.ProjectCode,
+ x.ProjectName,
+ x.ProjectDescription,
+ x.UnitOfMeasurement,
+ x.Quantity,
+ x.TotalCostFixedComprehensiveUnitPrice,
+ x.MainMaterialCost,
+ x.TotalPrice,
+ x.CalculationRule,
+ x.WorkContent,
+ x.Remarks,
+ x.ConstructionSubcontractor,
+ x.ContractWeight,
+ x.MaterialSupplier,
+ x.IsWithinGeneralContractScope,
+ x.EstimatedQuantity,
+ x.EstimatedAmount,
+ x.SettledQuantity,
+ x.SettledAmount,
+ x.ContractId
+ };
+ ;
+ Grid1.RecordCount = q.Count();
+ Grid1.DataSource = q.ToList();
+ Grid1.DataBind();
+
+ }
+
+ protected void DropMainContractCode_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ if (!string.IsNullOrEmpty(DropContractCode.SelectedValue))
+ {
+ var model = ContractService.GetContractByContractNum(DropContractCode.SelectedValue);
+ if (model != null)
+ {
+ ContractId = model.ContractId;
+ this.txtContractName.Text = model.ContractName;
+ }
+ else
+ {
+ ContractId = "";
+ this.txtContractName.Text = string.Empty;
+
+ }
+ }
+ BindGrid();
+ }
+
+ #endregion
+
+ #region GV 数据操作
+ ///
+ /// 分页
+ ///
+ ///
+ ///
+ protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
+ {
+ this.Grid1.PageIndex = e.NewPageIndex;
+ this.BindGrid();
+ }
+
+ ///
+ /// 排序
+ ///
+ ///
+ ///
+ protected void Grid1_Sort(object sender, GridSortEventArgs e)
+ {
+ this.Grid1.SortDirection = e.SortDirection;
+ this.Grid1.SortField = e.SortField;
+ this.BindGrid();
+ }
+
+ ///
+ /// 分页显示条数下拉框
+ ///
+ ///
+ ///
+ protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ this.Grid1.PageSize = Convert.ToInt32(this.ddlPageSize.SelectedValue);
+ this.BindGrid();
+ }
+ protected void btnQuery_OnClick(object sender, EventArgs e)
+ {
+ BindGrid();
+ }
+ #endregion
+
+ #region 数据编辑事件
+ ///
+ /// 新增
+ ///
+ ///
+ ///
+ protected void btnNew_Click(object sender, EventArgs e)
+ {
+
+ if (Grid1.SelectedRowIndexArray.Length == 0)
+ {
+ Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
+ return;
+ }
+ object[] ID = Grid1.DataKeys[Grid1.SelectedRowIndex];
+ var model = BLL.PhtglContractTrackService.GetPHTGL_ContractTrackById(ID[0].ToString());
+ if (model != null) ///已上报时不能删除
+ {
+ PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("ContractTrackMatchWBS.aspx?ContractTrackId={0}", ID, "编辑 - ")));
+ }
+ }
+
+ ///
+ /// 批量删除
+ ///
+ ///
+ ///
+ protected void btnDelete_Click(object sender, EventArgs e)
+ {
+ if (Grid1.SelectedRowIndexArray.Length > 0)
+ {
+ foreach (int rowIndex in Grid1.SelectedRowIndexArray)
+ {
+ object[] rowID = Grid1.DataKeys[rowIndex];
+ var model = BLL.PhtglContracttrackmatchwbsService.GetPHTGL_ContractTrackMatchWBSById(rowID[1].ToString());
+ if (model != null)
+ {
+ BLL.PhtglContracttrackmatchwbsService.DeleteModelById(rowID[1].ToString());
+ }
+ }
+
+ BindGrid();
+ ShowNotify("删除数据成功!", MessageBoxIcon.Success);
+ }
+ }
+
+ protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
+ {
+ if (Grid1.SelectedRowIndexArray.Length == 0)
+ {
+ Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
+ return;
+ }
+ object[] ID = Grid1.DataKeys[Grid1.SelectedRowIndex];
+ var model = BLL.PhtglContractTrackService.GetPHTGL_ContractTrackById(ID[0].ToString());
+ if (model != null) ///已上报时不能删除
+ {
+ PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("ContractTrackMatchWBS.aspx?ContractTrackId={0}", ID, "编辑 - ")));
+ }
+ }
+ #endregion
+
+ #region 关闭弹出窗
+ ///
+ /// 关闭弹出窗
+ ///
+ ///
+ ///
+ protected void Window1_Close(object sender, WindowCloseEventArgs e)
+ {
+ BindGrid();
+ }
+ #endregion
+
+ #region 获取权限按钮
+ ///
+ /// 获取按钮权限
+ ///
+ ///
+ ///
+ private void GetButtonPower()
+ {
+ var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.PersonId, BLL.Const.PHTGL_ContractWBSMenuId);
+ if (buttonList.Count > 0)
+ {
+ if (buttonList.Contains(BLL.Const.BtnAdd))
+ {
+ this.btnNew.Hidden = false;
+ }
+ if (buttonList.Contains(BLL.Const.BtnModify))
+ {
+ this.btnMenuEdit.Hidden = false;
+ }
+ if (buttonList.Contains(BLL.Const.BtnDelete))
+ {
+ this.btnMenuDelete.Hidden = false;
+ }
+ }
+ }
+ #endregion
+
+
+
+
+ }
+}
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractWBS.aspx.designer.cs b/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractWBS.aspx.designer.cs
new file mode 100644
index 00000000..8f51d833
--- /dev/null
+++ b/SGGL/FineUIPro.Web/PHTGL/ContractCompile/ContractWBS.aspx.designer.cs
@@ -0,0 +1,278 @@
+//------------------------------------------------------------------------------
+// <自动生成>
+// 此代码由工具生成。
+//
+// 对此文件的更改可能导致不正确的行为,如果
+// 重新生成代码,则所做更改将丢失。
+// 自动生成>
+//------------------------------------------------------------------------------
+
+namespace FineUIPro.Web.PHTGL.ContractCompile
+{
+
+
+ public partial class ContractWBS
+ {
+
+ ///
+ /// form1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::System.Web.UI.HtmlControls.HtmlForm form1;
+
+ ///
+ /// PageManager1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.PageManager PageManager1;
+
+ ///
+ /// Panel3 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Panel Panel3;
+
+ ///
+ /// panelCenterRegion 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Panel panelCenterRegion;
+
+ ///
+ /// Grid1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Grid Grid1;
+
+ ///
+ /// Toolbar2 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Toolbar Toolbar2;
+
+ ///
+ /// DropContractCode 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList DropContractCode;
+
+ ///
+ /// txtContractName 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label txtContractName;
+
+ ///
+ /// btnNew 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnNew;
+
+ ///
+ /// Toolbar4 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Toolbar Toolbar4;
+
+ ///
+ /// txtProjectCode 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtProjectCode;
+
+ ///
+ /// txtProjectName 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtProjectName;
+
+ ///
+ /// btnQuery 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnQuery;
+
+ ///
+ /// TextBox2 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox2;
+
+ ///
+ /// TextBox3 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox3;
+
+ ///
+ /// TextBox4 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox4;
+
+ ///
+ /// TextBox5 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox5;
+
+ ///
+ /// TextBox6 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox6;
+
+ ///
+ /// TextBox7 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox7;
+
+ ///
+ /// TextBox8 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox8;
+
+ ///
+ /// TextBox9 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox TextBox9;
+
+ ///
+ /// NumberBox2 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.NumberBox NumberBox2;
+
+ ///
+ /// 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;
+
+ ///
+ /// btnMenuEdit 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.MenuButton btnMenuEdit;
+
+ ///
+ /// btnMenuDelete 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.MenuButton btnMenuDelete;
+ }
+}
diff --git a/SGGL/FineUIPro.Web/common/Menu_DigData.xml b/SGGL/FineUIPro.Web/common/Menu_DigData.xml
index b3d0385c..bb7a7a34 100644
--- a/SGGL/FineUIPro.Web/common/Menu_DigData.xml
+++ b/SGGL/FineUIPro.Web/common/Menu_DigData.xml
@@ -1,9 +1,51 @@
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -12,16 +54,19 @@
-
+
+
+
+
-
-
-
-
-
+
+
+
+
+
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/common/Menu_HTGL.xml b/SGGL/FineUIPro.Web/common/Menu_HTGL.xml
index 9b647aea..6a68aebd 100644
--- a/SGGL/FineUIPro.Web/common/Menu_HTGL.xml
+++ b/SGGL/FineUIPro.Web/common/Menu_HTGL.xml
@@ -1,12 +1,14 @@
-
-
-
+
+
+
+
+
@@ -14,7 +16,10 @@
-
+
+
+
+
diff --git a/SGGL/FineUIPro.Web/common/Menu_JDGL.xml b/SGGL/FineUIPro.Web/common/Menu_JDGL.xml
index 8d4aa005..fd6a0762 100644
--- a/SGGL/FineUIPro.Web/common/Menu_JDGL.xml
+++ b/SGGL/FineUIPro.Web/common/Menu_JDGL.xml
@@ -1,7 +1,11 @@
-
+
+
+
+
+
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/common/Menu_PHTGL.xml b/SGGL/FineUIPro.Web/common/Menu_PHTGL.xml
index 997760f7..3ccb32ac 100644
--- a/SGGL/FineUIPro.Web/common/Menu_PHTGL.xml
+++ b/SGGL/FineUIPro.Web/common/Menu_PHTGL.xml
@@ -35,5 +35,8 @@
-
+
+
+
+
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/common/Menu_ZHGL.xml b/SGGL/FineUIPro.Web/common/Menu_ZHGL.xml
index 342d91b8..9bc36592 100644
--- a/SGGL/FineUIPro.Web/common/Menu_ZHGL.xml
+++ b/SGGL/FineUIPro.Web/common/Menu_ZHGL.xml
@@ -48,48 +48,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-