diff --git a/DataBase/版本日志/SGGLDB_WH_2023-05-23.sql b/DataBase/版本日志/SGGLDB_WH_2023-05-23.sql new file mode 100644 index 00000000..c46fee9e --- /dev/null +++ b/DataBase/版本日志/SGGLDB_WH_2023-05-23.sql @@ -0,0 +1,6 @@ +insert into [Sys_Const] +values('C92CC20B-1710-4DD3-A0DA-9E308DCC945B','Menu_Doc','Э빵ͨ',13,'MenuType_P',null) +GO + + + diff --git a/DataBase/版本日志/SGGLDB_WH_2023-05-24.sql b/DataBase/版本日志/SGGLDB_WH_2023-05-24.sql new file mode 100644 index 00000000..fb348ba1 --- /dev/null +++ b/DataBase/版本日志/SGGLDB_WH_2023-05-24.sql @@ -0,0 +1,49 @@ + INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) + VALUES('D00B3C53-2972-4D24-B88F-B38880D4A24F','豸Ϸ','JDGL/WBS/EquipmentMaterialType.aspx',5,'0','Menu_JDGL',0,1,1) + GO + INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES('3B588E9C-B89C-466B-B1A6-A8986F04EBA6','D00B3C53-2972-4D24-B88F-B38880D4A24F','',1) + INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES('9522CCE6-9F26-4C4B-84AC-708E7FC7F39D','D00B3C53-2972-4D24-B88F-B38880D4A24F','޸',2) + INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES('D2F495A5-33D0-49B2-BEF5-BA96C9283D71','D00B3C53-2972-4D24-B88F-B38880D4A24F','ɾ',3) + INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES('2AE8CA32-9218-41A1-AEFF-33B5EB416B08','D00B3C53-2972-4D24-B88F-B38880D4A24F','',4) + GO + + + +CREATE TABLE [dbo].[WBS_EquipmentMaterialType]( + [EquipmentMaterialTypeId] [nvarchar](50) NOT NULL, + [EquipmentMaterialTypeCode] [nvarchar](50) NULL, + [EquipmentMaterialTypeName] [nvarchar](50) NULL, + [Remark] [nvarchar](100) NULL, + CONSTRAINT [PK_WBS_EquipmentMaterialType] PRIMARY KEY CLUSTERED +( + [EquipmentMaterialTypeId] ASC +)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] +) ON [PRIMARY] + +GO + +EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WBS_EquipmentMaterialType', @level2type=N'COLUMN',@level2name=N'EquipmentMaterialTypeId' +GO + +EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WBS_EquipmentMaterialType', @level2type=N'COLUMN',@level2name=N'EquipmentMaterialTypeCode' +GO + +EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WBS_EquipmentMaterialType', @level2type=N'COLUMN',@level2name=N'EquipmentMaterialTypeName' +GO + +EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ע' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WBS_EquipmentMaterialType', @level2type=N'COLUMN',@level2name=N'Remark' +GO + +EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'豸Ϸ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WBS_EquipmentMaterialType' +GO + + +alter table WBS_CostControl add EquipmentMaterialTypeId nvarchar(50) null +GO +alter table WBS_CostControl add constraint FK_WBS_CostControl_WBS_EquipmentMaterialType +foreign key (EquipmentMaterialTypeId) references WBS_EquipmentMaterialType (EquipmentMaterialTypeId) +GO \ No newline at end of file diff --git a/DataBase/版本日志/SGGLDB_WH_2023-06-06.sql b/DataBase/版本日志/SGGLDB_WH_2023-06-06.sql new file mode 100644 index 00000000..61401eeb --- /dev/null +++ b/DataBase/版本日志/SGGLDB_WH_2023-06-06.sql @@ -0,0 +1,19 @@ + INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) + VALUES('F2BC1293-8639-4BD6-8759-648BCF6346E9','豸ϴ','JDGL/WBS/EquipmentMaterialBigType.aspx',4,'0','Menu_JDGL',0,1,1) + GO + INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES('A6A7CDD7-B223-4A80-9A0E-8E0F4B4E422A','F2BC1293-8639-4BD6-8759-648BCF6346E9','',1) + INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES('0D343597-D1FD-4CD5-9F23-43E6A68FE26B','F2BC1293-8639-4BD6-8759-648BCF6346E9','޸',2) + INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES('D003035F-CE86-4A71-AD3A-33CD4E260A00','F2BC1293-8639-4BD6-8759-648BCF6346E9','ɾ',3) + INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES('6210DDB2-9196-4315-9308-009BD3A85E78','F2BC1293-8639-4BD6-8759-648BCF6346E9','',4) + GO + +alter table WBS_EquipmentMaterialType add EquipmentMaterialBigTypeId nvarchar(50) null +GO + +alter table WBS_EquipmentMaterialType add constraint FK_WBS_EquipmentMaterialType_WBS_EquipmentMaterialBigType +foreign key (EquipmentMaterialBigTypeId) references WBS_EquipmentMaterialBigType (EquipmentMaterialBigTypeId) +GO \ No newline at end of file diff --git a/DataBase/菜单初始化脚本/1-4进度管理(Menu_JDGL).sql b/DataBase/菜单初始化脚本/1-4进度管理(Menu_JDGL).sql index 2368f3a8..4b77ce99 100644 --- a/DataBase/菜单初始化脚本/1-4进度管理(Menu_JDGL).sql +++ b/DataBase/菜单初始化脚本/1-4进度管理(Menu_JDGL).sql @@ -6,6 +6,32 @@ go --INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) --VALUES('B707B4E0-EF73-4010-A13B-59263A5029C7','单位、分部、分项工程设置','',10,'0','Menu_JDGL',0,0,1) --GO + INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) + VALUES('F2BC1293-8639-4BD6-8759-648BCF6346E9','设备材料大类','JDGL/WBS/EquipmentMaterialBigType.aspx',4,'0','Menu_JDGL',0,1,1) + GO + INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES('A6A7CDD7-B223-4A80-9A0E-8E0F4B4E422A','F2BC1293-8639-4BD6-8759-648BCF6346E9','增加',1) + INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES('0D343597-D1FD-4CD5-9F23-43E6A68FE26B','F2BC1293-8639-4BD6-8759-648BCF6346E9','修改',2) + INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES('D003035F-CE86-4A71-AD3A-33CD4E260A00','F2BC1293-8639-4BD6-8759-648BCF6346E9','删除',3) + INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES('6210DDB2-9196-4315-9308-009BD3A85E78','F2BC1293-8639-4BD6-8759-648BCF6346E9','保存',4) + GO + + INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) + VALUES('D00B3C53-2972-4D24-B88F-B38880D4A24F','设备材料分类','JDGL/WBS/EquipmentMaterialType.aspx',5,'0','Menu_JDGL',0,1,1) + GO + INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES('3B588E9C-B89C-466B-B1A6-A8986F04EBA6','D00B3C53-2972-4D24-B88F-B38880D4A24F','增加',1) + INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES('9522CCE6-9F26-4C4B-84AC-708E7FC7F39D','D00B3C53-2972-4D24-B88F-B38880D4A24F','修改',2) + INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES('D2F495A5-33D0-49B2-BEF5-BA96C9283D71','D00B3C53-2972-4D24-B88F-B38880D4A24F','删除',3) + INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES('2AE8CA32-9218-41A1-AEFF-33B5EB416B08','D00B3C53-2972-4D24-B88F-B38880D4A24F','保存',4) + GO + INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) VALUES('858E83E9-ADE5-452E-BD65-82D8DFF872C0','分部、工作项及费用清单裁剪','JDGL/WBS/WBSSetAudit.aspx',10,'0','Menu_JDGL',0,1,1) GO diff --git a/SGGL/BLL/API/APICommonService.cs b/SGGL/BLL/API/APICommonService.cs index a8c24095..c837f98b 100644 --- a/SGGL/BLL/API/APICommonService.cs +++ b/SGGL/BLL/API/APICommonService.cs @@ -92,9 +92,9 @@ namespace BLL page = "pages/index/main", data = new { - thing2 = new { value = thing2 }, - name1 = new { value = name1 }, - date3 = new { value = date3 } + thing3 = new { value = thing2 }, + thing13 = new { value = name1 }, + time5 = new { value = date3 } }, miniprogram_state, lang = "zh_CN", diff --git a/SGGL/BLL/BLL.csproj b/SGGL/BLL/BLL.csproj index 582d2550..fdc1ee73 100644 --- a/SGGL/BLL/BLL.csproj +++ b/SGGL/BLL/BLL.csproj @@ -582,6 +582,8 @@ + + diff --git a/SGGL/BLL/Common/Const.cs b/SGGL/BLL/Common/Const.cs index 27a49771..1085e599 100644 --- a/SGGL/BLL/Common/Const.cs +++ b/SGGL/BLL/Common/Const.cs @@ -61,7 +61,7 @@ namespace BLL /// /// 微信订阅模板ID /// - public const string WX_TemplateID = "hKFrcahyXEjGSrLM4qBPpjXAkFldnrqxU_mARd1IF4o"; + public const string WX_TemplateID = "1gT0FfTc2LwnnqUCU8h_nXDyv8VGtne1Iolo47gPA0c"; /// /// 五环OA 私钥 @@ -5204,6 +5204,16 @@ namespace BLL /// public const string ProjectInstallationMenuId = "A4308F9A-0280-49C5-BEE4-FA858FE1CE24"; + /// + /// 设备材料大类 + /// + public const string EquipmentMaterialBigTypeMenuId = "F2BC1293-8639-4BD6-8759-648BCF6346E9"; + + /// + /// 设备材料分类 + /// + public const string EquipmentMaterialTypeMenuId = "D00B3C53-2972-4D24-B88F-B38880D4A24F"; + /// /// 分部、工作项及费用清单设置 /// diff --git a/SGGL/BLL/JDGL/WBS/CostControlService.cs b/SGGL/BLL/JDGL/WBS/CostControlService.cs index e0d1b599..7a0839d2 100644 --- a/SGGL/BLL/JDGL/WBS/CostControlService.cs +++ b/SGGL/BLL/JDGL/WBS/CostControlService.cs @@ -63,6 +63,7 @@ namespace BLL newUP.CostControlName = costControl.CostControlName; newUP.Unit = costControl.Unit; newUP.IsSelected = costControl.IsSelected; + newUP.EquipmentMaterialTypeId = costControl.EquipmentMaterialTypeId; newUP.TotalNum = costControl.TotalNum; newUP.RealPrice = costControl.RealPrice; @@ -84,6 +85,7 @@ namespace BLL newUP.Unit = costControl.Unit; newUP.TotalNum = costControl.TotalNum; newUP.IsSelected = costControl.IsSelected; + newUP.EquipmentMaterialTypeId = costControl.EquipmentMaterialTypeId; newUP.RealPrice = costControl.RealPrice; newUP.PlanPrice = costControl.PlanPrice; newUP.PlanStartDate = costControl.PlanStartDate; diff --git a/SGGL/BLL/JDGL/WBS/EquipmentMaterialBigTypeService.cs b/SGGL/BLL/JDGL/WBS/EquipmentMaterialBigTypeService.cs new file mode 100644 index 00000000..5904ae05 --- /dev/null +++ b/SGGL/BLL/JDGL/WBS/EquipmentMaterialBigTypeService.cs @@ -0,0 +1,125 @@ +using FineUIPro; +using System; +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace BLL +{ + public static class EquipmentMaterialBigTypeService + { + public static Model.SGGLDB db = Funs.DB; + + /// + /// 获取实体集合 + /// + /// + public static List GetList() + { + var q = (from x in Funs.DB.WBS_EquipmentMaterialBigType orderby x.EquipmentMaterialBigTypeCode select x).ToList(); + return q; + } + /// + /// 添加 + /// + /// + public static void AddEquipmentMaterialBigType(Model.WBS_EquipmentMaterialBigType EquipmentMaterialBigType) + { + Model.SGGLDB db = Funs.DB; + Model.WBS_EquipmentMaterialBigType newEquipmentMaterialBigType = new Model.WBS_EquipmentMaterialBigType + { + EquipmentMaterialBigTypeId = EquipmentMaterialBigType.EquipmentMaterialBigTypeId, + EquipmentMaterialBigTypeCode = EquipmentMaterialBigType.EquipmentMaterialBigTypeCode, + EquipmentMaterialBigTypeName = EquipmentMaterialBigType.EquipmentMaterialBigTypeName, + Remark = EquipmentMaterialBigType.Remark + }; + + db.WBS_EquipmentMaterialBigType.InsertOnSubmit(newEquipmentMaterialBigType); + db.SubmitChanges(); + } + + /// + /// 修改 + /// + /// + public static void UpdateEquipmentMaterialBigType(Model.WBS_EquipmentMaterialBigType EquipmentMaterialBigType) + { + Model.SGGLDB db = Funs.DB; + Model.WBS_EquipmentMaterialBigType newEquipmentMaterialBigType = db.WBS_EquipmentMaterialBigType.FirstOrDefault(e => e.EquipmentMaterialBigTypeId == EquipmentMaterialBigType.EquipmentMaterialBigTypeId); + if (newEquipmentMaterialBigType != null) + { + newEquipmentMaterialBigType.EquipmentMaterialBigTypeCode = EquipmentMaterialBigType.EquipmentMaterialBigTypeCode; + newEquipmentMaterialBigType.EquipmentMaterialBigTypeName = EquipmentMaterialBigType.EquipmentMaterialBigTypeName; + newEquipmentMaterialBigType.Remark = EquipmentMaterialBigType.Remark; + db.SubmitChanges(); + } + } + + /// + /// 根据主键删除信息 + /// + /// + public static void DeleteEquipmentMaterialBigTypeById(string EquipmentMaterialBigTypeId) + { + Model.SGGLDB db = Funs.DB; + Model.WBS_EquipmentMaterialBigType EquipmentMaterialBigType = db.WBS_EquipmentMaterialBigType.FirstOrDefault(e => e.EquipmentMaterialBigTypeId == EquipmentMaterialBigTypeId); + { + db.WBS_EquipmentMaterialBigType.DeleteOnSubmit(EquipmentMaterialBigType); + db.SubmitChanges(); + } + } + public static void InitEquipmentMaterialBigTypeDownList(FineUIPro.DropDownList dropName, bool isShowPlease) + { + dropName.DataValueField = "Value"; + dropName.DataTextField = "Text"; + dropName.DataSource = GetEquipmentMaterialBigTypeItem(); + dropName.DataBind(); + if (isShowPlease) + { + Funs.FineUIPleaseSelect(dropName); + } + } + /// + /// 设备材料分类下拉框 + /// + /// + /// + /// + public static void InitEquipmentMaterialBigType(FineUIPro.DropDownList dropName, bool isShowPlease) + { + dropName.DataValueField = "Text"; + dropName.DataTextField = "Text"; + dropName.DataSource = GetEquipmentMaterialBigTypeItem(); + dropName.DataBind(); + if (isShowPlease) + { + Funs.FineUIPleaseSelect(dropName); + } + } + /// + /// 获取设备材料分类集合 + /// + /// + public static ListItem[] GetEquipmentMaterialBigTypeItem() + { + var q = (from x in Funs.DB.WBS_EquipmentMaterialBigType orderby x.EquipmentMaterialBigTypeCode select x).ToList(); + ListItem[] list = new ListItem[q.Count()]; + for (int i = 0; i < q.Count(); i++) + { + list[i] = new ListItem(q[i].EquipmentMaterialBigTypeName ?? "", q[i].EquipmentMaterialBigTypeId); + } + return list; + } + + /// + /// 获取一个设备材料分类信息 + /// + /// + /// + public static Model.WBS_EquipmentMaterialBigType GetEquipmentMaterialBigType(string EquipmentMaterialBigTypeId) + { + return Funs.DB.WBS_EquipmentMaterialBigType.FirstOrDefault(e => e.EquipmentMaterialBigTypeId == EquipmentMaterialBigTypeId); + } + } +} diff --git a/SGGL/BLL/JDGL/WBS/EquipmentMaterialTypeService.cs b/SGGL/BLL/JDGL/WBS/EquipmentMaterialTypeService.cs new file mode 100644 index 00000000..b019f444 --- /dev/null +++ b/SGGL/BLL/JDGL/WBS/EquipmentMaterialTypeService.cs @@ -0,0 +1,127 @@ +using FineUIPro; +using System; +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace BLL +{ + public static class EquipmentMaterialTypeService + { + public static Model.SGGLDB db = Funs.DB; + + /// + /// 获取实体集合 + /// + /// + public static List GetList() + { + var q = (from x in Funs.DB.WBS_EquipmentMaterialType orderby x.EquipmentMaterialTypeCode select x).ToList(); + return q; + } + /// + /// 添加 + /// + /// + public static void AddEquipmentMaterialType(Model.WBS_EquipmentMaterialType equipmentMaterialType) + { + Model.SGGLDB db = Funs.DB; + Model.WBS_EquipmentMaterialType newEquipmentMaterialType = new Model.WBS_EquipmentMaterialType + { + EquipmentMaterialTypeId = equipmentMaterialType.EquipmentMaterialTypeId, + EquipmentMaterialTypeCode = equipmentMaterialType.EquipmentMaterialTypeCode, + EquipmentMaterialTypeName = equipmentMaterialType.EquipmentMaterialTypeName, + EquipmentMaterialBigTypeId = equipmentMaterialType.EquipmentMaterialBigTypeId, + Remark = equipmentMaterialType.Remark + }; + + db.WBS_EquipmentMaterialType.InsertOnSubmit(newEquipmentMaterialType); + db.SubmitChanges(); + } + + /// + /// 修改 + /// + /// + public static void UpdateEquipmentMaterialType(Model.WBS_EquipmentMaterialType equipmentMaterialType) + { + Model.SGGLDB db = Funs.DB; + Model.WBS_EquipmentMaterialType newEquipmentMaterialType = db.WBS_EquipmentMaterialType.FirstOrDefault(e => e.EquipmentMaterialTypeId == equipmentMaterialType.EquipmentMaterialTypeId); + if (newEquipmentMaterialType != null) + { + newEquipmentMaterialType.EquipmentMaterialTypeCode = equipmentMaterialType.EquipmentMaterialTypeCode; + newEquipmentMaterialType.EquipmentMaterialTypeName = equipmentMaterialType.EquipmentMaterialTypeName; + newEquipmentMaterialType.EquipmentMaterialBigTypeId = equipmentMaterialType.EquipmentMaterialBigTypeId; + newEquipmentMaterialType.Remark = equipmentMaterialType.Remark; + db.SubmitChanges(); + } + } + + /// + /// 根据主键删除信息 + /// + /// + public static void DeleteEquipmentMaterialTypeById(string equipmentMaterialTypeId) + { + Model.SGGLDB db = Funs.DB; + Model.WBS_EquipmentMaterialType equipmentMaterialType = db.WBS_EquipmentMaterialType.FirstOrDefault(e => e.EquipmentMaterialTypeId == equipmentMaterialTypeId); + { + db.WBS_EquipmentMaterialType.DeleteOnSubmit(equipmentMaterialType); + db.SubmitChanges(); + } + } + public static void InitEquipmentMaterialTypeDownList(FineUIPro.DropDownList dropName, bool isShowPlease) + { + dropName.DataValueField = "Value"; + dropName.DataTextField = "Text"; + dropName.DataSource = GetEquipmentMaterialTypeItem(); + dropName.DataBind(); + if (isShowPlease) + { + Funs.FineUIPleaseSelect(dropName); + } + } + /// + /// 设备材料分类下拉框 + /// + /// + /// + /// + public static void InitEquipmentMaterialType(FineUIPro.DropDownList dropName, bool isShowPlease) + { + dropName.DataValueField = "Text"; + dropName.DataTextField = "Text"; + dropName.DataSource = GetEquipmentMaterialTypeItem(); + dropName.DataBind(); + if (isShowPlease) + { + Funs.FineUIPleaseSelect(dropName); + } + } + /// + /// 获取设备材料分类集合 + /// + /// + public static ListItem[] GetEquipmentMaterialTypeItem() + { + var q = (from x in Funs.DB.WBS_EquipmentMaterialType orderby x.EquipmentMaterialTypeCode select x).ToList(); + ListItem[] list = new ListItem[q.Count()]; + for (int i = 0; i < q.Count(); i++) + { + list[i] = new ListItem(q[i].EquipmentMaterialTypeName ?? "", q[i].EquipmentMaterialTypeId); + } + return list; + } + + /// + /// 获取一个设备材料分类信息 + /// + /// + /// + public static Model.WBS_EquipmentMaterialType GetEquipmentMaterialType(string EquipmentMaterialTypeId) + { + return Funs.DB.WBS_EquipmentMaterialType.FirstOrDefault(e => e.EquipmentMaterialTypeId == EquipmentMaterialTypeId); + } + } +} diff --git a/SGGL/FineUIPro.Web/CQMS/DataBase/ConstructionStandardListProject.aspx.cs b/SGGL/FineUIPro.Web/CQMS/DataBase/ConstructionStandardListProject.aspx.cs index 90647079..80ea8277 100644 --- a/SGGL/FineUIPro.Web/CQMS/DataBase/ConstructionStandardListProject.aspx.cs +++ b/SGGL/FineUIPro.Web/CQMS/DataBase/ConstructionStandardListProject.aspx.cs @@ -181,7 +181,8 @@ namespace FineUIPro.Web.CQMS.DataBase } for (int i = 0; i < Grid1.Rows.Count; i++) { - var attachFile = Funs.DB.AttachFile.FirstOrDefault(x => x.ToKeyId == Grid1.Rows[i].RowID + this.CurrUser.LoginProjectId); + //var attachFile = Funs.DB.AttachFile.FirstOrDefault(x => x.ToKeyId == Grid1.Rows[i].RowID + this.CurrUser.LoginProjectId); + var attachFile = Funs.DB.AttachFile.FirstOrDefault(x => x.ToKeyId == Grid1.Rows[i].RowID); if (attachFile != null && !string.IsNullOrEmpty(attachFile.AttachUrl)) { Grid1.Rows[i].CellCssClasses[18] = "green"; @@ -272,7 +273,8 @@ namespace FineUIPro.Web.CQMS.DataBase string id = Grid1.DataKeys[e.RowIndex][0].ToString(); if (e.CommandName == "AttachUrl") { - PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type=-1&toKeyId={0}&path=FileUpload/DataBase/ConstructionStandardProject&menuId={1}", id + this.CurrUser.LoginProjectId, BLL.Const.CQMSConstructionStandardListProjectMenuId))); + //PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type=-1&toKeyId={0}&path=FileUpload/DataBase/ConstructionStandardProject&menuId={1}", id + this.CurrUser.LoginProjectId, BLL.Const.CQMSConstructionStandardListProjectMenuId))); + PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type=-1&toKeyId={0}&path=FileUpload/DataBase/ConstructionStandardProject&menuId={1}", id, BLL.Const.CQMSConstructionStandardListProjectMenuId))); } } #endregion diff --git a/SGGL/FineUIPro.Web/CQMS/DataBase/ConstructionStandardListProjectEdit.aspx.cs b/SGGL/FineUIPro.Web/CQMS/DataBase/ConstructionStandardListProjectEdit.aspx.cs index 6c5cbdad..c66b8247 100644 --- a/SGGL/FineUIPro.Web/CQMS/DataBase/ConstructionStandardListProjectEdit.aspx.cs +++ b/SGGL/FineUIPro.Web/CQMS/DataBase/ConstructionStandardListProjectEdit.aspx.cs @@ -63,7 +63,8 @@ namespace FineUIPro.Web.CQMS.DataBase this.cbIsSelected6.Checked = true; } this.txtRemark.Text = standard.Memo; - this.hdStandardCode.Text = standard.StandardCode + this.CurrUser.LoginProjectId; + //this.hdStandardCode.Text = standard.StandardCode + this.CurrUser.LoginProjectId; + this.hdStandardCode.Text = standard.StandardCode.ToString(); } } } @@ -85,7 +86,8 @@ namespace FineUIPro.Web.CQMS.DataBase { maxStandardCode = BLL.ConstructionStandardListProjectService.GetMaxStandardCode(this.CurrUser.LoginProjectId); } - this.hdStandardCode.Text = (maxStandardCode + 1).ToString() + this.CurrUser.LoginProjectId; + //this.hdStandardCode.Text = (maxStandardCode + 1).ToString() + this.CurrUser.LoginProjectId; + this.hdStandardCode.Text = (maxStandardCode + 1).ToString(); } PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type=0&toKeyId={0}&path=FileUpload/DataBase/ConstructionStandardProject&menuId={1}", this.hdStandardCode.Text, BLL.Const.CQMSConstructionStandardListProjectMenuId))); } diff --git a/SGGL/FineUIPro.Web/DocManage/DocFind.aspx.cs b/SGGL/FineUIPro.Web/DocManage/DocFind.aspx.cs deleted file mode 100644 index 840300dc..00000000 --- a/SGGL/FineUIPro.Web/DocManage/DocFind.aspx.cs +++ /dev/null @@ -1,232 +0,0 @@ -using System; -using System.Collections.Generic; -using System; -using System.Collections.Generic; -using System.Data; -using System.Data.SqlClient; -using System.Linq; -using System.Web; -using System.Web.UI; -using System.Web.UI.WebControls; -using BLL; -using System.IO; - -namespace FineUIPro.Web.DocManage -{ - public partial class DocFind : PageBase - { - protected void Page_Load(object sender, EventArgs e) - { - if (!IsPostBack) - { - GetButtonPower(); - ddlPageSize.SelectedValue = Grid1.PageSize.ToString(); - - // 绑定表格 - BindGrid(); - // btnNew.OnClientClick = Window1.GetShowReference("ProjectSubItemEdit.aspx") + "return false;"; - } - } - #region 绑定数据与查看数据 - /// - /// 绑定数据 - /// - public void BindGrid() - { - DataTable tb = BindData(); - Grid1.RecordCount = tb.Rows.Count; - tb = GetFilteredTable(Grid1.FilteredData, tb); - var table = this.GetPagedDataTable(Grid1, tb); - - Grid1.DataSource = table; - Grid1.DataBind(); - } - protected DataTable BindData() - { - string strSql = @"SELECT AttachFileDetaiId - ,ToKeyId - ,Name - ,AliasName - ,Type - ,AttachUrl - ,Classify - ,SourcePath - ,HtmlPath - ,Content - ,size - ,UploadTime - ,U.UserName - FROM dbo.AttachFileDetail as Att - left join Sys_User U on att.UploadMan=U.UserId - left join Doc_DocManage doc on doc.DocId =Att.ToKeyId - where doc.ProjectId=@ProjectId "; - - List listStr = new List(); - listStr.Add(new SqlParameter("@ProjectId", CurrUser.LoginProjectId)); - strSql += " AND (doc.ReceivUnitIds like @ReceivUnitId or doc.SendUnitId = @SendUnitId )"; - if (string.IsNullOrEmpty(this.CurrUser.UnitId)) - { - return new DataTable(); - } - listStr.Add(new SqlParameter("@SendUnitId", this.CurrUser.UnitId)); - listStr.Add(new SqlParameter("@ReceivUnitId", "%" + this.CurrUser.UnitId + "%")); - - if (!string.IsNullOrEmpty(this.txtkeyword.Text.Trim())) - { - if (ListFindType.SelectedValue == "Name") - { - strSql += " AND AliasName like @keyword"; - - } - else - { - strSql += " AND Content like @keyword"; - - - } - listStr.Add(new SqlParameter("@keyword", "%" + this.txtkeyword.Text.Trim() + "%")); - } - SqlParameter[] parameter = listStr.ToArray(); - DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter); - return tb; - } - - private void LookData() - { - if (Grid1.SelectedRowIndexArray.Length == 0) - { - Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning); - return; - } - var model = AttachFileDetailService.GetAttachFileDetaiIdById(Grid1.SelectedRowID); - if (!string.IsNullOrEmpty(model.SourcePath)) - { - PageContext.RegisterStartupScript(Window2.GetShowReference(String.Format("..{0}", model.SourcePath, "查看 - "))); - - } - } - - #endregion - - #region 右键菜单事件 - protected void btnMenuView_Click(object sender, EventArgs e) - { - LookData(); - } - #endregion - - #region 获取按钮权限 - /// - /// 获取按钮权限 - /// - /// - /// - private void GetButtonPower() - { - if (Request.Params["value"] == "0") - { - return; - } - var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.DocFindMenuId); - if (buttonList.Count() > 0) - { - if (buttonList.Contains(BLL.Const.BtnAdd)) - { - // this.btnNew.Hidden = false; - } - if (buttonList.Contains(BLL.Const.BtnModify)) - { - // this.btnMenuModify.Hidden = false; - } - if (buttonList.Contains(BLL.Const.BtnDelete)) - { - //this.btnMenuDel.Hidden = false; - } - } - } - #endregion - - #region 下拉列表事件 - protected void DropProjectSubject_SelectedIndexChanged(object sender, EventArgs e) - { - BindGrid(); - } - #endregion - - #region 表格事件 - - protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e) - { - LookData(); - } - protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e) - { - BindGrid(); - } - protected void Grid1_RowCommand(object sender, GridCommandEventArgs e) - { - if (e.CommandName == "Preview") - { - var model = BLL.AttachFileDetailService.GetAttachFileDetaiIdById(e.RowID); - if (model != null) - { - string savedName = model.Name; - string xnUrl = model.AttachUrl; - string url = Funs.RootPath + xnUrl; - - FileInfo info = new FileInfo(url); - if (!info.Exists || string.IsNullOrEmpty(savedName)) - { - url = Funs.RootPath + "Images//Null.jpg"; - info = new FileInfo(url); - } - var FiletExtension = Path.GetExtension(savedName); - bool isSupportType = AttachFileDetailService.IsSupportFileType(FiletExtension); - if (isSupportType) - { - PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("../AttachFile/Look.aspx?fileUrl={0}", model.HtmlPath, "查看 -"))); - } - else - { - ShowNotify("不支持预览", MessageBoxIcon.Warning); - - } - } - } - } - - protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e) - { - Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue); - BindGrid(); - } - #endregion - - #region 按钮事件 - protected void btnSearch_Click(object sender, EventArgs e) - { - BindGrid(); - } - /// - /// 重置 - /// - /// - /// - protected void btnRset_Click(object sender, EventArgs e) - { - txtkeyword.Text = ""; - BindGrid(); - } - - #endregion - - #region 窗体事件 - protected void Window1_Close(object sender, WindowCloseEventArgs e) - { - BindGrid(); - } - #endregion - - - } -} \ No newline at end of file diff --git a/SGGL/FineUIPro.Web/DocManage/FileCabinet.aspx b/SGGL/FineUIPro.Web/DocManage/FileCabinet.aspx deleted file mode 100644 index 221da37e..00000000 --- a/SGGL/FineUIPro.Web/DocManage/FileCabinet.aspx +++ /dev/null @@ -1,206 +0,0 @@ -<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="FileCabinet.aspx.cs" Inherits="FineUIPro.Web.DocManage.FileCabinet" %> - - - - - - - 文件柜 - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - <%-- - --%> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/SGGL/FineUIPro.Web/DocManage/FileCabinet.aspx.cs b/SGGL/FineUIPro.Web/DocManage/FileCabinet.aspx.cs deleted file mode 100644 index a0019afb..00000000 --- a/SGGL/FineUIPro.Web/DocManage/FileCabinet.aspx.cs +++ /dev/null @@ -1,325 +0,0 @@ -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; - -namespace FineUIPro.Web.DocManage -{ - public partial class FileCabinet : PageBase - { - - - public string TreeCommand - { - get - { - return (string)ViewState["TreeCommand"]; - } - set - { - ViewState["TreeCommand"] = value; - } - } - #region 页面加载 - /// - /// 页面加载 - /// - /// - /// - protected void Page_Load(object sender, EventArgs e) - { - if (!IsPostBack) - { - GetButtonPower(); - InitTreeMenu(); - } - } - #endregion - - #region 加载树 - /// - /// 加载树 - /// - private void InitTreeMenu() - { - if (string.IsNullOrEmpty(this.CurrUser.UnitId)) - { - return; - } - this.tree1.Nodes.Clear(); - this.tree1.ShowBorder = false; - this.tree1.ShowHeader = false; - this.tree1.EnableIcons = true; - this.tree1.AutoScroll = true; - this.tree1.EnableSingleClickExpand = true; - if (RadioType.SelectedValue == "Unit") - { - List base_Unit = new List(); - // base_Unit = BLL.UnitService.GetUnitListByProjectId(this.CurrUser.LoginProjectId); - - var list = BLL.UnitService.GetUnitByUnitId(this.CurrUser.UnitId); - base_Unit.Add(list); - foreach (var q in base_Unit) //二级树 - { - TreeNode newNode = new TreeNode(); - newNode.Text = q.UnitName; - newNode.NodeID = q.UnitId; - newNode.CommandName = "Unit"; - newNode.EnableExpandEvent = true; - newNode.EnableClickEvent = true; - this.tree1.Nodes.Add(newNode); - //TreeNode emptyNode = new TreeNode(); - //emptyNode.Text = ""; - //emptyNode.NodeID = ""; - //newNode.Nodes.Add(emptyNode); - } - } - else - { - var DocTypeList= DocTypeService.GetDocTypeList(); - - foreach (var q in DocTypeList) - { - TreeNode newNode = new TreeNode(); - newNode.Text = q.DocTypeName; - newNode.NodeID = q.DocTypeId; - newNode.CommandName = "DocType"; - newNode.EnableExpandEvent = true; - newNode.EnableClickEvent = true; - this.tree1.Nodes.Add(newNode); - } - } - } - #endregion - - #region Tree事件 - /// - /// Tree点击事件 - /// - /// - /// - protected void tree1_NodeCommand(object sender, TreeCommandEventArgs e) - { - TreeCommand = e.CommandName; - BindGrid(); - } - - protected void tree1_NodeExpand(object sender, TreeNodeEventArgs e) - { - e.Node.Nodes.Clear(); - if (e.Node.CommandName == "Unit") //展开部门 - { - var DepartList= DepartService.GetDepartList(e.Node.NodeID); - foreach (var depart in DepartList) - { - TreeNode newNode1 = new TreeNode(); - newNode1.Text = depart.DepartName; - newNode1.NodeID = depart.DepartId; - newNode1.CommandName = "Depart"; - newNode1.EnableExpandEvent = true; - newNode1.EnableClickEvent = true; - e.Node.Nodes.Add(newNode1); - } - } - - } - #endregion - - #region 绑定数据 - private void BindGrid() - { - string strSql = @"SELECT doc.DocId,doc.ProjectId,doc.DocCode,doc.DocName,unit.UnitName as SendUnitName,doc.ReceivUnitIds,docType.DocTypeName," - + @" doc.CompileMan,doc.CompileDate,CNProfessional.ProfessionalName,doc.State,u.userName" - + @" FROM Doc_DocManage doc " - + @" left join Base_Unit unit on unit.unitId=doc.SendUnitId " - + @" left join Base_DocType docType on docType.DocTypeId=doc.DocTypeId " - + @" left join Base_CNProfessional CNProfessional on CNProfessional.CNProfessionalId=doc.CNProfessionalId " - + @" left join sys_User u on u.userId = doc.CompileMan" - + @" where doc.ProjectId=@ProjectId"; - - List listStr = new List(); - listStr.Add(new SqlParameter("@ProjectId", CurrUser.LoginProjectId)); - if (TreeCommand== "Unit" && !string.IsNullOrEmpty(tree1.SelectedNodeID)) - { - strSql += " AND doc.SendUnitId=@unitId"; - listStr.Add(new SqlParameter("@unitId", tree1.SelectedNodeID)); - } - else if (TreeCommand== "Depart" && !string.IsNullOrEmpty(tree1.SelectedNodeID)) - { - strSql += " AND doc.DepartId=@DepartId"; - listStr.Add(new SqlParameter("@DepartId", tree1.SelectedNodeID)); - } - else if (TreeCommand== "DocType") - { - - //ReceivUnitIds SendUnitId - strSql += " AND (doc.ReceivUnitIds like @ReceivUnitId or doc.SendUnitId = @SendUnitId )"; - listStr.Add(new SqlParameter("@SendUnitId", this.CurrUser.UnitId)); - listStr.Add(new SqlParameter("@ReceivUnitId", "%" + this.CurrUser.UnitId + "%")); - strSql += " AND doc.DocTypeId=@DocTypeId"; - listStr.Add(new SqlParameter("@DocTypeId", tree1.SelectedNodeID)); - - } - - - SqlParameter[] parameter = listStr.ToArray(); - DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter); - tb = GetFilteredTable(Grid1.FilteredData, tb); - var table = GetPagedDataTable(Grid1, tb); - Grid1.RecordCount = tb.Rows.Count; - Grid1.DataSource = table; - Grid1.DataBind(); - } - - #endregion - - #region 表格事件 - protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e) - { - Grid1.PageIndex = e.NewPageIndex; - BindGrid(); - } - - /// - /// Grid1排序 - /// - /// - /// - protected void Grid1_Sort(object sender, GridSortEventArgs e) - { - Grid1.SortDirection = e.SortDirection; - Grid1.SortField = e.SortField; - BindGrid(); - } - - /// - /// 分页下拉选择事件 - /// - /// - /// - protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e) - { - Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue); - BindGrid(); - } - protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e) - { - if (Grid1.SelectedRowIndexArray.Length == 0) - { - Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning); - return; - } - - PageContext.RegisterStartupScript(Window2.GetShowReference(String.Format("../DocManage/DocManageView.aspx?DocId={0}", Grid1.SelectedRowID, "查看 - "))); - - - } - /// - /// 行点击事件 - /// - /// - /// - protected void Grid1_RowCommand(object sender, GridCommandEventArgs e) - { - string id = e.RowID; - if (e.CommandName.Equals("AttachUrl")) - { - string menuId = Const.ProjectControlPointMenuId; - PageContext.RegisterStartupScript(WindowAtt.GetShowReference( - String.Format("../AttachFile/Fileuploader.aspx?type=-1&source=1&toKeyId={0}&path=FileUpload/BreakdownProject&menuId={1}", id, menuId))); - } - else if (e.CommandName == "Print") - { - Print(id); - } - } - - #endregion - private void Print(string DocId) - { - var model = DocManageService.GetDocByDocId(DocId); - if (model.State != Const.Doc_State_2) - { - ShowNotify("当前状态未闭环无法打印", MessageBoxIcon.Warning); - return; - } - DataTable dt = new DataTable(); - dt = DocManageApproveService.GetListData(DocId); - if (dt.Columns.Count == 0) - { - dt.Columns.Add("RoleName", typeof(String)); - dt.Columns.Add("ApproveMan", typeof(String)); - dt.Columns.Add("ApproveDate", typeof(String)); - dt.Columns.Add("ApproveIdea", typeof(String)); - - } - var keyValuePairs = BLL.DocManageService.GetPairs(DocId); - dt.TableName = "Table1"; - - BLL.Common.FastReport.ResetData(); - BLL.Common.FastReport.AddFastreportTable(dt); - BLL.Common.FastReport.AddFastreportParameter(keyValuePairs); - string initTemplatePath = "File/Fastreport/新疆文件管理流转表.frx"; - string rootPath = Server.MapPath("~/"); - if (File.Exists(rootPath + initTemplatePath)) - { - PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("../Controls/Fastreport.aspx?ReportPath={0}", rootPath + initTemplatePath))); - - - } - } - - - #region 右键菜单事件 - protected void btnMenuView_Click(object sender, EventArgs e) - { - if (Grid1.SelectedRowIndexArray.Length == 0) - { - Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning); - return; - } - - PageContext.RegisterStartupScript(Window2.GetShowReference(String.Format("../DocManage/DocManageView.aspx?DocId={0}", Grid1.SelectedRowID, "查看 - "))); - - } - - #endregion - - #region 获取按钮权限 - /// - /// 获取按钮权限 - /// - /// - /// - private void GetButtonPower() - { - if (Request.Params["value"] == "0") - { - return; - } - var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.ProjectControlPointMenuId); - if (buttonList.Count() > 0) - { - if (buttonList.Contains(BLL.Const.BtnAdd)) - { - // this.btnNew.Hidden = false; - } - } - } - #endregion - - protected void RadioButtonList1_SelectedIndexChanged(object sender, EventArgs e) - { - InitTreeMenu(); - - } - - - } -} \ No newline at end of file diff --git a/SGGL/FineUIPro.Web/DocManage/PersonalFileCabinet.aspx b/SGGL/FineUIPro.Web/DocManage/PersonalFileCabinet.aspx deleted file mode 100644 index 48a57f97..00000000 --- a/SGGL/FineUIPro.Web/DocManage/PersonalFileCabinet.aspx +++ /dev/null @@ -1,216 +0,0 @@ -<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="PersonalFileCabinet.aspx.cs" Inherits="FineUIPro.Web.DocManage.PersonalFileCabinet" %> - - - - - - - 文件柜 - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - <%-- - --%> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/SGGL/FineUIPro.Web/DocManage/PersonalFileCabinet.aspx.cs b/SGGL/FineUIPro.Web/DocManage/PersonalFileCabinet.aspx.cs deleted file mode 100644 index 40b43c96..00000000 --- a/SGGL/FineUIPro.Web/DocManage/PersonalFileCabinet.aspx.cs +++ /dev/null @@ -1,287 +0,0 @@ -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; - -namespace FineUIPro.Web.DocManage -{ - public partial class PersonalFileCabinet : PageBase - { - #region 页面加载 - /// - /// 页面加载 - /// - /// - /// - protected void Page_Load(object sender, EventArgs e) - { - if (!IsPostBack) - { - GetButtonPower(); - InitTreeMenu(); - } - } - #endregion - - #region 加载树 - /// - /// 加载树 - /// - private void InitTreeMenu() - { - if (string.IsNullOrEmpty(this.CurrUser.UnitId)) - { - return; - } - this.tree1.Nodes.Clear(); - this.tree1.ShowBorder = false; - this.tree1.ShowHeader = false; - this.tree1.EnableIcons = true; - this.tree1.AutoScroll = true; - this.tree1.EnableSingleClickExpand = true; - if (RadioType.SelectedValue == "Unit") - { - List base_Unit = new List(); - var list = BLL.UnitService.GetUnitByUnitId(this.CurrUser.UnitId); //非业主 - base_Unit.Add(list); - - foreach (var q in base_Unit) - { - TreeNode newNode = new TreeNode(); - newNode.Text = q.UnitName; - newNode.NodeID = q.UnitId; - newNode.CommandName = "Unit"; - newNode.EnableExpandEvent = true; - newNode.EnableClickEvent = true; - this.tree1.Nodes.Add(newNode); - } - - } - else - { - var DocTypeList = DocTypeService.GetDocTypeList(); - - foreach (var q in DocTypeList) - { - TreeNode newNode = new TreeNode(); - newNode.Text = q.DocTypeName; - newNode.NodeID = q.DocTypeId; - newNode.EnableExpandEvent = true; - newNode.EnableClickEvent = true; - this.tree1.Nodes.Add(newNode); - - } - - } - - } - #endregion - - #region Tree点击事件 - /// - /// Tree点击事件 - /// - /// - /// - protected void tree1_NodeCommand(object sender, TreeCommandEventArgs e) - { - BindGrid(); - } - #endregion - - - - - protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e) - { - Grid1.PageIndex = e.NewPageIndex; - BindGrid(); - } - - /// - /// Grid1排序 - /// - /// - /// - protected void Grid1_Sort(object sender, GridSortEventArgs e) - { - Grid1.SortDirection = e.SortDirection; - Grid1.SortField = e.SortField; - BindGrid(); - } - - /// - /// 分页下拉选择事件 - /// - /// - /// - protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e) - { - Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue); - BindGrid(); - } - - - private void BindGrid() - { - string strSql = @"SELECT doc.DocId,doc.ProjectId,doc.DocCode,doc.DocName,unit.UnitName as SendUnitName,doc.ReceivUnitIds,docType.DocTypeName," - + @" doc.CompileMan,doc.CompileDate,CNProfessional.ProfessionalName,doc.State,u.userName" - + @" FROM Doc_DocManage doc " - + @" left join Base_Unit unit on unit.unitId=doc.SendUnitId " - + @" left join Base_DocType docType on docType.DocTypeId=doc.DocTypeId " - + @" left join Base_CNProfessional CNProfessional on CNProfessional.CNProfessionalId=doc.CNProfessionalId " - + @" left join sys_User u on u.userId = doc.CompileMan" - + @" where doc.ProjectId=@ProjectId"; - - List listStr = new List(); - listStr.Add(new SqlParameter("@ProjectId", CurrUser.LoginProjectId)); - if (RadioType.SelectedValue == "Unit" && !string.IsNullOrEmpty(tree1.SelectedNodeID)) - { - strSql += " AND doc.SendUnitId=@unitId"; - listStr.Add(new SqlParameter("@unitId", tree1.SelectedNodeID)); - - } - else if (RadioType.SelectedValue == "DocType" && !string.IsNullOrEmpty(tree1.SelectedNodeID)) - { - strSql += " AND doc.DocTypeId=@DocTypeId"; - listStr.Add(new SqlParameter("@DocTypeId", tree1.SelectedNodeID)); - } - if (RadioList2.SelectedValue=="Send") - { - strSql += " AND doc.CompileMan=@CompileMan"; - listStr.Add(new SqlParameter("@CompileMan", this.CurrUser.UserId)); - } - else - { - strSql += " AND doc.AcceptMan like @AcceptMan"; - listStr.Add(new SqlParameter("@AcceptMan", "%"+this.CurrUser.UserId+"%")); - } - SqlParameter[] parameter = listStr.ToArray(); - DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter); - tb = GetFilteredTable(Grid1.FilteredData, tb); - var table = GetPagedDataTable(Grid1, tb); - Grid1.RecordCount = tb.Rows.Count; - - Grid1.DataSource = table; - Grid1.DataBind(); - } - - - #region 行点击事件 - protected void Grid1_RowCommand(object sender, GridCommandEventArgs e) - { - string id = e.RowID; - if (e.CommandName.Equals("AttachUrl")) - { - string menuId = Const.ProjectControlPointMenuId; - PageContext.RegisterStartupScript(WindowAtt.GetShowReference( - String.Format("../AttachFile/Fileuploader.aspx?type=-1&source=1&toKeyId={0}&path=FileUpload/BreakdownProject&menuId={1}", id, menuId))); - } - else if (e.CommandName == "Print") - { - Print(id); - } - } - #endregion - private void Print(string DocId) - { - var model = DocManageService.GetDocByDocId(DocId); - if (model.State != Const.Doc_State_2) - { - ShowNotify("当前状态未闭环无法打印", MessageBoxIcon.Warning); - return; - } - DataTable dt = new DataTable(); - dt = DocManageApproveService.GetListData(DocId); - if (dt.Columns.Count == 0) - { - dt.Columns.Add("RoleName", typeof(String)); - dt.Columns.Add("ApproveMan", typeof(String)); - dt.Columns.Add("ApproveDate", typeof(String)); - dt.Columns.Add("ApproveIdea", typeof(String)); - - } - var keyValuePairs = BLL.DocManageService.GetPairs(DocId); - dt.TableName = "Table1"; - - BLL.Common.FastReport.ResetData(); - BLL.Common.FastReport.AddFastreportTable(dt); - BLL.Common.FastReport.AddFastreportParameter(keyValuePairs); - string initTemplatePath = "File/Fastreport/新疆文件管理流转表.frx"; - string rootPath = Server.MapPath("~/"); - if (File.Exists(rootPath + initTemplatePath)) - { - PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("../Controls/Fastreport.aspx?ReportPath={0}", rootPath + initTemplatePath))); - - - } - } - - #region 获取按钮权限 - /// - /// 获取按钮权限 - /// - /// - /// - private void GetButtonPower() - { - if (Request.Params["value"] == "0") - { - return; - } - var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.ProjectControlPointMenuId); - if (buttonList.Count() > 0) - { - if (buttonList.Contains(BLL.Const.BtnAdd)) - { - // this.btnNew.Hidden = false; - } - } - } - #endregion - - protected void RadioButtonList1_SelectedIndexChanged(object sender, EventArgs e) - { - InitTreeMenu(); - } - - protected void RadioList2_SelectedIndexChanged(object sender, EventArgs e) - { - BindGrid(); - - } - - protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e) - { - if (Grid1.SelectedRowIndexArray.Length == 0) - { - Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning); - return; - } - - PageContext.RegisterStartupScript(Window2.GetShowReference(String.Format("../DocManage/DocManageView.aspx?DocId={0}", Grid1.SelectedRowID, "查看 - "))); - - } - - #region 右键菜单事件 - protected void btnMenuView_Click(object sender, EventArgs e) - { - if (Grid1.SelectedRowIndexArray.Length == 0) - { - Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning); - return; - } - - PageContext.RegisterStartupScript(Window2.GetShowReference(String.Format("../DocManage/DocManageView.aspx?DocId={0}", Grid1.SelectedRowID, "查看 - "))); - - } - - #endregion - } -} \ No newline at end of file diff --git a/SGGL/FineUIPro.Web/DocManage/PersonalFileCabinet.aspx.designer.cs b/SGGL/FineUIPro.Web/DocManage/PersonalFileCabinet.aspx.designer.cs deleted file mode 100644 index 04e5ec2a..00000000 --- a/SGGL/FineUIPro.Web/DocManage/PersonalFileCabinet.aspx.designer.cs +++ /dev/null @@ -1,242 +0,0 @@ -//------------------------------------------------------------------------------ -// <自动生成> -// 此代码由工具生成。 -// -// 对此文件的更改可能导致不正确的行为,如果 -// 重新生成代码,则所做更改将丢失。 -// -//------------------------------------------------------------------------------ - -namespace FineUIPro.Web.DocManage -{ - - - public partial class PersonalFileCabinet - { - - /// - /// form1 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::System.Web.UI.HtmlControls.HtmlForm form1; - - /// - /// PageManager1 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.PageManager PageManager1; - - /// - /// Panel1 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.Panel Panel1; - - /// - /// panelLeftRegion 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.Panel panelLeftRegion; - - /// - /// Toolbar1 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.Toolbar Toolbar1; - - /// - /// RadioType 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.RadioButtonList RadioType; - - /// - /// tree1 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.Tree tree1; - - /// - /// hdSelectId 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.HiddenField hdSelectId; - - /// - /// hdUnitWorkId 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.HiddenField hdUnitWorkId; - - /// - /// panelCenterRegion 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.Panel panelCenterRegion; - - /// - /// Toolbar2 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.Toolbar Toolbar2; - - /// - /// RadioList2 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.RadioButtonList RadioList2; - - /// - /// Grid1 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.Grid Grid1; - - /// - /// lblPageIndex 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::System.Web.UI.WebControls.Label lblPageIndex; - - /// - /// Label3 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::System.Web.UI.WebControls.Label Label3; - - /// - /// Label2 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::System.Web.UI.WebControls.Label Label2; - - /// - /// Label1 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::System.Web.UI.WebControls.Label Label1; - - /// - /// ToolbarSeparator1 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1; - - /// - /// ToolbarText1 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.ToolbarText ToolbarText1; - - /// - /// ddlPageSize 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.DropDownList ddlPageSize; - - /// - /// WindowAtt 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.Window WindowAtt; - - /// - /// Window2 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.Window Window2; - - /// - /// Window1 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.Window Window1; - - /// - /// Menu1 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.Menu Menu1; - - /// - /// btnMenuView 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.MenuButton btnMenuView; - } -} diff --git a/SGGL/FineUIPro.Web/ErrLog.txt b/SGGL/FineUIPro.Web/ErrLog.txt index e2a3e182..dda9e1ae 100644 --- a/SGGL/FineUIPro.Web/ErrLog.txt +++ b/SGGL/FineUIPro.Web/ErrLog.txt @@ -1,326 +1,49 @@ 错误信息开始=====> -错误类型:ArgumentException -错误信息:提供的 URI 方案“http”无效,应为“https”。 -参数名: via +错误类型:IndexOutOfRangeException +错误信息:无法找到列 SortIndex。 错误堆栈: - 在 System.ServiceModel.Channels.TransportChannelFactory`1.ValidateScheme(Uri via) - 在 System.ServiceModel.Channels.HttpChannelFactory`1.ValidateCreateChannelParameters(EndpointAddress remoteAddress, Uri via) - 在 System.ServiceModel.Channels.HttpsChannelFactory`1.ValidateCreateChannelParameters(EndpointAddress remoteAddress, Uri via) - 在 System.ServiceModel.Channels.HttpsChannelFactory`1.OnCreateChannelCore(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.HttpChannelFactory`1.OnCreateChannel(EndpointAddress remoteAddress, Uri via) - 在 System.ServiceModel.Channels.ChannelFactoryBase`1.InternalCreateChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.ChannelFactoryBase`1.CreateChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.ServiceChannelFactory.ServiceChannelFactoryOverRequest.CreateInnerChannelBinder(EndpointAddress to, Uri via) - 在 System.ServiceModel.Channels.ServiceChannelFactory.CreateServiceChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.ServiceChannelFactory.CreateChannel(Type channelType, EndpointAddress address, Uri via) - 在 System.ServiceModel.ChannelFactory`1.CreateChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.ChannelFactory`1.CreateChannel() - 在 System.ServiceModel.ClientBase`1.CreateChannel() - 在 System.ServiceModel.ClientBase`1.CreateChannelInternal() - 在 System.ServiceModel.ClientBase`1.get_Channel() - 在 BLL.CNCECHSSEWebService.getSupervise_SubUnitReport() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\BLL\WebService\CNCECHSSEWebService.cs:行号 2157 -出错时间:05/11/2023 12:32:31 -出错时间:05/11/2023 12:32:32 - - -错误信息开始=====> -错误类型:ArgumentException -错误信息:提供的 URI 方案“http”无效,应为“https”。 -参数名: via -错误堆栈: - 在 System.ServiceModel.Channels.TransportChannelFactory`1.ValidateScheme(Uri via) - 在 System.ServiceModel.Channels.HttpChannelFactory`1.ValidateCreateChannelParameters(EndpointAddress remoteAddress, Uri via) - 在 System.ServiceModel.Channels.HttpsChannelFactory`1.ValidateCreateChannelParameters(EndpointAddress remoteAddress, Uri via) - 在 System.ServiceModel.Channels.HttpsChannelFactory`1.OnCreateChannelCore(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.HttpChannelFactory`1.OnCreateChannel(EndpointAddress remoteAddress, Uri via) - 在 System.ServiceModel.Channels.ChannelFactoryBase`1.InternalCreateChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.ChannelFactoryBase`1.CreateChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.ServiceChannelFactory.ServiceChannelFactoryOverRequest.CreateInnerChannelBinder(EndpointAddress to, Uri via) - 在 System.ServiceModel.Channels.ServiceChannelFactory.CreateServiceChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.ServiceChannelFactory.CreateChannel(Type channelType, EndpointAddress address, Uri via) - 在 System.ServiceModel.ChannelFactory`1.CreateChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.ChannelFactory`1.CreateChannel() - 在 System.ServiceModel.ClientBase`1.CreateChannel() - 在 System.ServiceModel.ClientBase`1.CreateChannelInternal() - 在 System.ServiceModel.ClientBase`1.get_Channel() - 在 BLL.CNCECHSSEWebService.getCheck_CheckInfo_Table8Item() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\BLL\WebService\CNCECHSSEWebService.cs:行号 2022 -出错时间:05/11/2023 12:32:32 -出错时间:05/11/2023 12:32:32 - - -错误信息开始=====> -错误类型:ArgumentException -错误信息:提供的 URI 方案“http”无效,应为“https”。 -参数名: via -错误堆栈: - 在 System.ServiceModel.Channels.TransportChannelFactory`1.ValidateScheme(Uri via) - 在 System.ServiceModel.Channels.HttpChannelFactory`1.ValidateCreateChannelParameters(EndpointAddress remoteAddress, Uri via) - 在 System.ServiceModel.Channels.HttpsChannelFactory`1.ValidateCreateChannelParameters(EndpointAddress remoteAddress, Uri via) - 在 System.ServiceModel.Channels.HttpsChannelFactory`1.OnCreateChannelCore(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.HttpChannelFactory`1.OnCreateChannel(EndpointAddress remoteAddress, Uri via) - 在 System.ServiceModel.Channels.ChannelFactoryBase`1.InternalCreateChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.ChannelFactoryBase`1.CreateChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.ServiceChannelFactory.ServiceChannelFactoryOverRequest.CreateInnerChannelBinder(EndpointAddress to, Uri via) - 在 System.ServiceModel.Channels.ServiceChannelFactory.CreateServiceChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.ServiceChannelFactory.CreateChannel(Type channelType, EndpointAddress address, Uri via) - 在 System.ServiceModel.ChannelFactory`1.CreateChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.ChannelFactory`1.CreateChannel() - 在 System.ServiceModel.ClientBase`1.CreateChannel() - 在 System.ServiceModel.ClientBase`1.CreateChannelInternal() - 在 System.ServiceModel.ClientBase`1.get_Channel() - 在 BLL.CNCECHSSEWebService.getCheck_CheckRectify() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\BLL\WebService\CNCECHSSEWebService.cs:行号 1918 -出错时间:05/11/2023 12:32:32 -出错时间:05/11/2023 12:32:32 - - -错误信息开始=====> -错误类型:ArgumentException -错误信息:提供的 URI 方案“http”无效,应为“https”。 -参数名: via -错误堆栈: - 在 System.ServiceModel.Channels.TransportChannelFactory`1.ValidateScheme(Uri via) - 在 System.ServiceModel.Channels.HttpChannelFactory`1.ValidateCreateChannelParameters(EndpointAddress remoteAddress, Uri via) - 在 System.ServiceModel.Channels.HttpsChannelFactory`1.ValidateCreateChannelParameters(EndpointAddress remoteAddress, Uri via) - 在 System.ServiceModel.Channels.HttpsChannelFactory`1.OnCreateChannelCore(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.HttpChannelFactory`1.OnCreateChannel(EndpointAddress remoteAddress, Uri via) - 在 System.ServiceModel.Channels.ChannelFactoryBase`1.InternalCreateChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.ChannelFactoryBase`1.CreateChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.ServiceChannelFactory.ServiceChannelFactoryOverRequest.CreateInnerChannelBinder(EndpointAddress to, Uri via) - 在 System.ServiceModel.Channels.ServiceChannelFactory.CreateServiceChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.ServiceChannelFactory.CreateChannel(Type channelType, EndpointAddress address, Uri via) - 在 System.ServiceModel.ChannelFactory`1.CreateChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.ChannelFactory`1.CreateChannel() - 在 System.ServiceModel.ClientBase`1.CreateChannel() - 在 System.ServiceModel.ClientBase`1.CreateChannelInternal() - 在 System.ServiceModel.ClientBase`1.get_Channel() - 在 BLL.CNCECHSSEWebService.getInformation_UrgeReport() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\BLL\WebService\CNCECHSSEWebService.cs:行号 1860 -出错时间:05/11/2023 12:32:32 -出错时间:05/11/2023 12:32:32 - - -错误信息开始=====> -错误类型:NullReferenceException -错误信息:未将对象引用设置到对象的实例。 -错误堆栈: - 在 System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add) - 在 FineUIPro.ResourceHelper.GetResourceContentAsBinary(String resName, String resVersion) - 在 FineUIPro.ResourceHandler.ProcessRequest(HttpContext context) - 在 System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() - 在 System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step) - 在 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) -出错时间:05/11/2023 17:07:02 -出错文件:http://localhost:9733/res.axd?font=lib.fa.fontawesome.woff2&t=636128671740000000 -IP地址:::1 - -出错时间:05/11/2023 17:07:02 - - -错误信息开始=====> -错误类型:NullReferenceException -错误信息:未将对象引用设置到对象的实例。 -错误堆栈: - 在 System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add) - 在 FineUIPro.ResourceHelper.GetResourceContentAsBinary(String resName, String resVersion) - 在 FineUIPro.ResourceHandler.ProcessRequest(HttpContext context) - 在 System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() - 在 System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step) - 在 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) -出错时间:05/16/2023 15:43:58 -出错文件:http://localhost:9733/res.axd?font=lib.fa.fontawesome.woff2&t=636128671740000000 -IP地址:::1 - -出错时间:05/16/2023 15:43:58 - - -错误信息开始=====> -错误类型:NullReferenceException -错误信息:未将对象引用设置到对象的实例。 -错误堆栈: - 在 FineUIPro.Web.indexProject.Page_Load(Object sender, EventArgs e) 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\FineUIPro.Web\indexProject.aspx.cs:行号 296 - 在 System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) - 在 System.EventHandler.Invoke(Object sender, EventArgs e) - 在 System.Web.UI.Control.OnLoad(EventArgs e) - 在 System.Web.UI.Control.LoadRecursive() - 在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) -出错时间:05/16/2023 16:41:36 -出错文件:http://localhost:9733/indexProject.aspx?projectId=e9fe4b89-f62d-4b3a-a40c-57c87010aa92 -IP地址:::1 - -出错时间:05/16/2023 16:41:36 - - -错误信息开始=====> -错误类型:InvalidOperationException -错误信息:不能将 Null 值赋给类型为 System.Double (不可为 null 的值类型)的成员。 -错误堆栈: - 在 System.Data.Linq.SqlClient.SqlProvider.Execute(Expression query, QueryInfo queryInfo, IObjectReaderFactory factory, Object[] parentArgs, Object[] userArgs, ICompiledSubQuery[] subQueries, Object lastResult) - 在 System.Data.Linq.SqlClient.SqlProvider.ExecuteAll(Expression query, QueryInfo[] queryInfos, IObjectReaderFactory factory, Object[] userArguments, ICompiledSubQuery[] subQueries) - 在 System.Data.Linq.SqlClient.SqlProvider.System.Data.Linq.Provider.IProvider.Execute(Expression query) - 在 System.Data.Linq.DataQuery`1.System.Linq.IQueryProvider.Execute[S](Expression expression) - 在 System.Linq.Queryable.Sum[TSource](IQueryable`1 source, Expression`1 selector) - 在 FineUIPro.Web.JDGL.CostAnalysis.JDReport.BindChart() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\FineUIPro.Web\JDGL\CostAnalysis\JDReport.aspx.cs:行号 280 - 在 FineUIPro.Web.JDGL.CostAnalysis.JDReport.GetValue() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\FineUIPro.Web\JDGL\CostAnalysis\JDReport.aspx.cs:行号 34 - 在 FineUIPro.Web.JDGL.CostAnalysis.JDReport.Page_Load(Object sender, EventArgs e) 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\FineUIPro.Web\JDGL\CostAnalysis\JDReport.aspx.cs:行号 20 - 在 System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) - 在 System.EventHandler.Invoke(Object sender, EventArgs e) - 在 System.Web.UI.Control.OnLoad(EventArgs e) - 在 System.Web.UI.Control.LoadRecursive() - 在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) -出错时间:05/17/2023 11:07:58 -出错文件:http://localhost:9733/JDGL/CostAnalysis/JDReport.aspx -IP地址:::1 -操作人员:JT - -出错时间:05/17/2023 11:07:58 - - -错误信息开始=====> -错误类型:InvalidOperationException -错误信息:不能将 Null 值赋给类型为 System.Double (不可为 null 的值类型)的成员。 -错误堆栈: - 在 System.Data.Linq.SqlClient.SqlProvider.Execute(Expression query, QueryInfo queryInfo, IObjectReaderFactory factory, Object[] parentArgs, Object[] userArgs, ICompiledSubQuery[] subQueries, Object lastResult) - 在 System.Data.Linq.SqlClient.SqlProvider.ExecuteAll(Expression query, QueryInfo[] queryInfos, IObjectReaderFactory factory, Object[] userArguments, ICompiledSubQuery[] subQueries) - 在 System.Data.Linq.SqlClient.SqlProvider.System.Data.Linq.Provider.IProvider.Execute(Expression query) - 在 System.Data.Linq.DataQuery`1.System.Linq.IQueryProvider.Execute[S](Expression expression) - 在 System.Linq.Queryable.Sum[TSource](IQueryable`1 source, Expression`1 selector) - 在 FineUIPro.Web.JDGL.CostAnalysis.JDReport.BindChart() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\FineUIPro.Web\JDGL\CostAnalysis\JDReport.aspx.cs:行号 268 - 在 FineUIPro.Web.JDGL.CostAnalysis.JDReport.GetValue() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\FineUIPro.Web\JDGL\CostAnalysis\JDReport.aspx.cs:行号 34 - 在 FineUIPro.Web.JDGL.CostAnalysis.JDReport.Page_Load(Object sender, EventArgs e) 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\FineUIPro.Web\JDGL\CostAnalysis\JDReport.aspx.cs:行号 20 - 在 System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) - 在 System.EventHandler.Invoke(Object sender, EventArgs e) - 在 System.Web.UI.Control.OnLoad(EventArgs e) - 在 System.Web.UI.Control.LoadRecursive() - 在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) -出错时间:05/17/2023 11:11:44 -出错文件:http://localhost:9733/JDGL/CostAnalysis/JDReport.aspx -IP地址:::1 -操作人员:JT - -出错时间:05/17/2023 11:11:44 - - -错误信息开始=====> -错误类型:NullReferenceException -错误信息:未将对象引用设置到对象的实例。 -错误堆栈: - 在 (TreeNode ) - 在 FineUIPro.TreeCommandEventArgs..ctor(TreeNode node, String commandName, String commandArgument) - 在 (TreeNode , String , String ) - 在 FineUIPro.Tree.RaisePostBackEvent(String eventArgument) + 在 System.Data.DataTable.ParseSortString(String sortString) + 在 System.Data.DataView.CheckSort(String sort) + 在 System.Data.DataView.set_Sort(String value) + 在 FineUIPro.Web.PageBase.GetPagedDataTable(Grid Grid1, DataTable tb) 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\FineUIPro.Web\common\PageBase.cs:行号 562 + 在 FineUIPro.Web.JDGL.WBS.EquipmentMaterialType.BindGrid() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\FineUIPro.Web\JDGL\WBS\EquipmentMaterialType.aspx.cs:行号 36 + 在 FineUIPro.Web.JDGL.WBS.EquipmentMaterialType.Window1_Close(Object sender, WindowCloseEventArgs e) 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\FineUIPro.Web\JDGL\WBS\EquipmentMaterialType.aspx.cs:行号 179 + 在 FineUIPro.Window.OnClose(WindowCloseEventArgs e) + 在 (Window , WindowCloseEventArgs ) + 在 FineUIPro.Window.RaisePostBackEvent(String eventArgument) 在 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) 在 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) 在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) -出错时间:05/17/2023 11:21:27 -出错文件:http://localhost:9733/JDGL/CostAnalysis/EarnedValueCurve.aspx +出错时间:05/24/2023 10:22:42 +出错文件:http://localhost:9733/JDGL/WBS/EquipmentMaterialType.aspx IP地址:::1 操作人员:JT -出错时间:05/17/2023 11:21:27 +出错时间:05/24/2023 10:22:42 错误信息开始=====> -错误类型:ArgumentException -错误信息:提供的 URI 方案“http”无效,应为“https”。 -参数名: via +错误类型:IndexOutOfRangeException +错误信息:无法找到列 SortIndex。 错误堆栈: - 在 System.ServiceModel.Channels.TransportChannelFactory`1.ValidateScheme(Uri via) - 在 System.ServiceModel.Channels.HttpChannelFactory`1.ValidateCreateChannelParameters(EndpointAddress remoteAddress, Uri via) - 在 System.ServiceModel.Channels.HttpsChannelFactory`1.ValidateCreateChannelParameters(EndpointAddress remoteAddress, Uri via) - 在 System.ServiceModel.Channels.HttpsChannelFactory`1.OnCreateChannelCore(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.HttpChannelFactory`1.OnCreateChannel(EndpointAddress remoteAddress, Uri via) - 在 System.ServiceModel.Channels.ChannelFactoryBase`1.InternalCreateChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.ChannelFactoryBase`1.CreateChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.ServiceChannelFactory.ServiceChannelFactoryOverRequest.CreateInnerChannelBinder(EndpointAddress to, Uri via) - 在 System.ServiceModel.Channels.ServiceChannelFactory.CreateServiceChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.ServiceChannelFactory.CreateChannel(Type channelType, EndpointAddress address, Uri via) - 在 System.ServiceModel.ChannelFactory`1.CreateChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.ChannelFactory`1.CreateChannel() - 在 System.ServiceModel.ClientBase`1.CreateChannel() - 在 System.ServiceModel.ClientBase`1.CreateChannelInternal() - 在 System.ServiceModel.ClientBase`1.get_Channel() - 在 BLL.CNCECHSSEService.HSSEServiceClient.GetSupervise_SubUnitReportListToSUB() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\BLL\Service References\CNCECHSSEService\Reference.cs:行号 14204 - 在 BLL.CNCECHSSEWebService.getSupervise_SubUnitReport() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\BLL\WebService\CNCECHSSEWebService.cs:行号 2158 -出错时间:05/17/2023 16:36:26 -出错时间:05/17/2023 16:36:26 + 在 System.Data.DataTable.ParseSortString(String sortString) + 在 System.Data.DataView.CheckSort(String sort) + 在 System.Data.DataView.set_Sort(String value) + 在 FineUIPro.Web.PageBase.GetPagedDataTable(Grid Grid1, DataTable tb) 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\FineUIPro.Web\common\PageBase.cs:行号 562 + 在 FineUIPro.Web.JDGL.WBS.EquipmentMaterialType.BindGrid() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\FineUIPro.Web\JDGL\WBS\EquipmentMaterialType.aspx.cs:行号 36 + 在 FineUIPro.Web.JDGL.WBS.EquipmentMaterialType.Page_Load(Object sender, EventArgs e) 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\FineUIPro.Web\JDGL\WBS\EquipmentMaterialType.aspx.cs:行号 23 + 在 System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) + 在 System.EventHandler.Invoke(Object sender, EventArgs e) + 在 System.Web.UI.Control.OnLoad(EventArgs e) + 在 System.Web.UI.Control.LoadRecursive() + 在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +出错时间:05/24/2023 10:22:45 +出错文件:http://localhost:9733/JDGL/WBS/EquipmentMaterialType.aspx +IP地址:::1 +操作人员:JT - -错误信息开始=====> -错误类型:ArgumentException -错误信息:提供的 URI 方案“http”无效,应为“https”。 -参数名: via -错误堆栈: - 在 System.ServiceModel.Channels.TransportChannelFactory`1.ValidateScheme(Uri via) - 在 System.ServiceModel.Channels.HttpChannelFactory`1.ValidateCreateChannelParameters(EndpointAddress remoteAddress, Uri via) - 在 System.ServiceModel.Channels.HttpsChannelFactory`1.ValidateCreateChannelParameters(EndpointAddress remoteAddress, Uri via) - 在 System.ServiceModel.Channels.HttpsChannelFactory`1.OnCreateChannelCore(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.HttpChannelFactory`1.OnCreateChannel(EndpointAddress remoteAddress, Uri via) - 在 System.ServiceModel.Channels.ChannelFactoryBase`1.InternalCreateChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.ChannelFactoryBase`1.CreateChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.ServiceChannelFactory.ServiceChannelFactoryOverRequest.CreateInnerChannelBinder(EndpointAddress to, Uri via) - 在 System.ServiceModel.Channels.ServiceChannelFactory.CreateServiceChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.ServiceChannelFactory.CreateChannel(Type channelType, EndpointAddress address, Uri via) - 在 System.ServiceModel.ChannelFactory`1.CreateChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.ChannelFactory`1.CreateChannel() - 在 System.ServiceModel.ClientBase`1.CreateChannel() - 在 System.ServiceModel.ClientBase`1.CreateChannelInternal() - 在 System.ServiceModel.ClientBase`1.get_Channel() - 在 BLL.CNCECHSSEService.HSSEServiceClient.GetCheck_CheckInfo_Table8ItemListToSUB(String unitId) 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\BLL\Service References\CNCECHSSEService\Reference.cs:行号 14228 - 在 BLL.CNCECHSSEWebService.getCheck_CheckInfo_Table8Item() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\BLL\WebService\CNCECHSSEWebService.cs:行号 2023 -出错时间:05/17/2023 16:36:26 -出错时间:05/17/2023 16:36:26 - - -错误信息开始=====> -错误类型:ArgumentException -错误信息:提供的 URI 方案“http”无效,应为“https”。 -参数名: via -错误堆栈: - 在 System.ServiceModel.Channels.TransportChannelFactory`1.ValidateScheme(Uri via) - 在 System.ServiceModel.Channels.HttpChannelFactory`1.ValidateCreateChannelParameters(EndpointAddress remoteAddress, Uri via) - 在 System.ServiceModel.Channels.HttpsChannelFactory`1.ValidateCreateChannelParameters(EndpointAddress remoteAddress, Uri via) - 在 System.ServiceModel.Channels.HttpsChannelFactory`1.OnCreateChannelCore(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.HttpChannelFactory`1.OnCreateChannel(EndpointAddress remoteAddress, Uri via) - 在 System.ServiceModel.Channels.ChannelFactoryBase`1.InternalCreateChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.ChannelFactoryBase`1.CreateChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.ServiceChannelFactory.ServiceChannelFactoryOverRequest.CreateInnerChannelBinder(EndpointAddress to, Uri via) - 在 System.ServiceModel.Channels.ServiceChannelFactory.CreateServiceChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.ServiceChannelFactory.CreateChannel(Type channelType, EndpointAddress address, Uri via) - 在 System.ServiceModel.ChannelFactory`1.CreateChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.ChannelFactory`1.CreateChannel() - 在 System.ServiceModel.ClientBase`1.CreateChannel() - 在 System.ServiceModel.ClientBase`1.CreateChannelInternal() - 在 System.ServiceModel.ClientBase`1.get_Channel() - 在 BLL.CNCECHSSEService.HSSEServiceClient.GetCheck_CheckRectifyListToSUB(String unitId) 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\BLL\Service References\CNCECHSSEService\Reference.cs:行号 14220 - 在 BLL.CNCECHSSEWebService.getCheck_CheckRectify() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\BLL\WebService\CNCECHSSEWebService.cs:行号 1919 -出错时间:05/17/2023 16:36:26 -出错时间:05/17/2023 16:36:26 - - -错误信息开始=====> -错误类型:ArgumentException -错误信息:提供的 URI 方案“http”无效,应为“https”。 -参数名: via -错误堆栈: - 在 System.ServiceModel.Channels.TransportChannelFactory`1.ValidateScheme(Uri via) - 在 System.ServiceModel.Channels.HttpChannelFactory`1.ValidateCreateChannelParameters(EndpointAddress remoteAddress, Uri via) - 在 System.ServiceModel.Channels.HttpsChannelFactory`1.ValidateCreateChannelParameters(EndpointAddress remoteAddress, Uri via) - 在 System.ServiceModel.Channels.HttpsChannelFactory`1.OnCreateChannelCore(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.HttpChannelFactory`1.OnCreateChannel(EndpointAddress remoteAddress, Uri via) - 在 System.ServiceModel.Channels.ChannelFactoryBase`1.InternalCreateChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.ChannelFactoryBase`1.CreateChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.ServiceChannelFactory.ServiceChannelFactoryOverRequest.CreateInnerChannelBinder(EndpointAddress to, Uri via) - 在 System.ServiceModel.Channels.ServiceChannelFactory.CreateServiceChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.Channels.ServiceChannelFactory.CreateChannel(Type channelType, EndpointAddress address, Uri via) - 在 System.ServiceModel.ChannelFactory`1.CreateChannel(EndpointAddress address, Uri via) - 在 System.ServiceModel.ChannelFactory`1.CreateChannel() - 在 System.ServiceModel.ClientBase`1.CreateChannel() - 在 System.ServiceModel.ClientBase`1.CreateChannelInternal() - 在 System.ServiceModel.ClientBase`1.get_Channel() - 在 BLL.CNCECHSSEService.HSSEServiceClient.GetInformation_UrgeReportToSUB(String unitId) 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\BLL\Service References\CNCECHSSEService\Reference.cs:行号 14020 - 在 BLL.CNCECHSSEWebService.getInformation_UrgeReport() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\BLL\WebService\CNCECHSSEWebService.cs:行号 1861 -出错时间:05/17/2023 16:36:26 -出错时间:05/17/2023 16:36:26 +出错时间:05/24/2023 10:22:45 错误信息开始=====> @@ -344,8 +67,8 @@ IP地址:::1 在 System.ServiceModel.ClientBase`1.CreateChannelInternal() 在 System.ServiceModel.ClientBase`1.get_Channel() 在 BLL.CNCECHSSEWebService.getSupervise_SubUnitReport() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\BLL\WebService\CNCECHSSEWebService.cs:行号 2157 -出错时间:05/20/2023 12:47:17 -出错时间:05/20/2023 12:47:18 +出错时间:05/24/2023 12:47:53 +出错时间:05/24/2023 12:47:54 错误信息开始=====> @@ -369,8 +92,8 @@ IP地址:::1 在 System.ServiceModel.ClientBase`1.CreateChannelInternal() 在 System.ServiceModel.ClientBase`1.get_Channel() 在 BLL.CNCECHSSEWebService.getCheck_CheckInfo_Table8Item() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\BLL\WebService\CNCECHSSEWebService.cs:行号 2022 -出错时间:05/20/2023 12:47:18 -出错时间:05/20/2023 12:47:18 +出错时间:05/24/2023 12:47:54 +出错时间:05/24/2023 12:47:54 错误信息开始=====> @@ -394,8 +117,8 @@ IP地址:::1 在 System.ServiceModel.ClientBase`1.CreateChannelInternal() 在 System.ServiceModel.ClientBase`1.get_Channel() 在 BLL.CNCECHSSEWebService.getCheck_CheckRectify() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\BLL\WebService\CNCECHSSEWebService.cs:行号 1918 -出错时间:05/20/2023 12:47:18 -出错时间:05/20/2023 12:47:18 +出错时间:05/24/2023 12:47:54 +出错时间:05/24/2023 12:47:54 错误信息开始=====> @@ -419,8 +142,8 @@ IP地址:::1 在 System.ServiceModel.ClientBase`1.CreateChannelInternal() 在 System.ServiceModel.ClientBase`1.get_Channel() 在 BLL.CNCECHSSEWebService.getInformation_UrgeReport() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\BLL\WebService\CNCECHSSEWebService.cs:行号 1860 -出错时间:05/20/2023 12:47:18 -出错时间:05/20/2023 12:47:18 +出错时间:05/24/2023 12:47:54 +出错时间:05/24/2023 12:47:54 错误信息开始=====> @@ -444,8 +167,8 @@ IP地址:::1 在 System.ServiceModel.ClientBase`1.CreateChannelInternal() 在 System.ServiceModel.ClientBase`1.get_Channel() 在 BLL.CNCECHSSEWebService.getSupervise_SubUnitReport() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\BLL\WebService\CNCECHSSEWebService.cs:行号 2157 -出错时间:05/20/2023 14:47:17 -出错时间:05/20/2023 14:47:17 +出错时间:05/24/2023 14:47:53 +出错时间:05/24/2023 14:47:53 错误信息开始=====> @@ -469,8 +192,8 @@ IP地址:::1 在 System.ServiceModel.ClientBase`1.CreateChannelInternal() 在 System.ServiceModel.ClientBase`1.get_Channel() 在 BLL.CNCECHSSEWebService.getCheck_CheckInfo_Table8Item() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\BLL\WebService\CNCECHSSEWebService.cs:行号 2022 -出错时间:05/20/2023 14:47:17 -出错时间:05/20/2023 14:47:17 +出错时间:05/24/2023 14:47:53 +出错时间:05/24/2023 14:47:53 错误信息开始=====> @@ -494,8 +217,8 @@ IP地址:::1 在 System.ServiceModel.ClientBase`1.CreateChannelInternal() 在 System.ServiceModel.ClientBase`1.get_Channel() 在 BLL.CNCECHSSEWebService.getCheck_CheckRectify() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\BLL\WebService\CNCECHSSEWebService.cs:行号 1918 -出错时间:05/20/2023 14:47:17 -出错时间:05/20/2023 14:47:17 +出错时间:05/24/2023 14:47:53 +出错时间:05/24/2023 14:47:53 错误信息开始=====> @@ -519,8 +242,8 @@ IP地址:::1 在 System.ServiceModel.ClientBase`1.CreateChannelInternal() 在 System.ServiceModel.ClientBase`1.get_Channel() 在 BLL.CNCECHSSEWebService.getInformation_UrgeReport() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\BLL\WebService\CNCECHSSEWebService.cs:行号 1860 -出错时间:05/20/2023 14:47:17 -出错时间:05/20/2023 14:47:17 +出错时间:05/24/2023 14:47:53 +出错时间:05/24/2023 14:47:53 错误信息开始=====> @@ -544,8 +267,8 @@ IP地址:::1 在 System.ServiceModel.ClientBase`1.CreateChannelInternal() 在 System.ServiceModel.ClientBase`1.get_Channel() 在 BLL.CNCECHSSEWebService.getSupervise_SubUnitReport() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\BLL\WebService\CNCECHSSEWebService.cs:行号 2157 -出错时间:05/22/2023 13:23:54 -出错时间:05/22/2023 13:23:54 +出错时间:05/24/2023 16:47:53 +出错时间:05/24/2023 16:47:53 错误信息开始=====> @@ -569,8 +292,8 @@ IP地址:::1 在 System.ServiceModel.ClientBase`1.CreateChannelInternal() 在 System.ServiceModel.ClientBase`1.get_Channel() 在 BLL.CNCECHSSEWebService.getCheck_CheckInfo_Table8Item() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\BLL\WebService\CNCECHSSEWebService.cs:行号 2022 -出错时间:05/22/2023 13:23:54 -出错时间:05/22/2023 13:23:54 +出错时间:05/24/2023 16:47:53 +出错时间:05/24/2023 16:47:53 错误信息开始=====> @@ -594,8 +317,8 @@ IP地址:::1 在 System.ServiceModel.ClientBase`1.CreateChannelInternal() 在 System.ServiceModel.ClientBase`1.get_Channel() 在 BLL.CNCECHSSEWebService.getCheck_CheckRectify() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\BLL\WebService\CNCECHSSEWebService.cs:行号 1918 -出错时间:05/22/2023 13:23:54 -出错时间:05/22/2023 13:23:54 +出错时间:05/24/2023 16:47:53 +出错时间:05/24/2023 16:47:53 错误信息开始=====> @@ -619,6 +342,65 @@ IP地址:::1 在 System.ServiceModel.ClientBase`1.CreateChannelInternal() 在 System.ServiceModel.ClientBase`1.get_Channel() 在 BLL.CNCECHSSEWebService.getInformation_UrgeReport() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\BLL\WebService\CNCECHSSEWebService.cs:行号 1860 -出错时间:05/22/2023 13:23:54 -出错时间:05/22/2023 13:23:54 +出错时间:05/24/2023 16:47:53 +出错时间:05/24/2023 16:47:54 + + +错误信息开始=====> +错误类型:ArgumentException +错误信息:该行已经属于此表。 +错误堆栈: + 在 System.Data.DataTable.InsertRow(DataRow row, Int64 proposedID, Int32 pos, Boolean fireEvent) + 在 System.Data.DataRowCollection.Add(DataRow row) + 在 FineUIPro.Web.JDGL.CostAnalysis.JDReport.GetValue() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\FineUIPro.Web\JDGL\CostAnalysis\JDReport.aspx.cs:行号 395 + 在 FineUIPro.Web.JDGL.CostAnalysis.JDReport.Page_Load(Object sender, EventArgs e) 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\FineUIPro.Web\JDGL\CostAnalysis\JDReport.aspx.cs:行号 25 + 在 System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) + 在 System.EventHandler.Invoke(Object sender, EventArgs e) + 在 System.Web.UI.Control.OnLoad(EventArgs e) + 在 System.Web.UI.Control.LoadRecursive() + 在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +出错时间:05/25/2023 10:05:02 +出错文件:http://localhost:9733/JDGL/CostAnalysis/JDReport.aspx +IP地址:::1 +操作人员:JT + +出错时间:05/25/2023 10:05:02 + + +错误信息开始=====> +错误类型:ArgumentException +错误信息:该行已经属于此表。 +错误堆栈: + 在 System.Data.DataTable.InsertRow(DataRow row, Int64 proposedID, Int32 pos, Boolean fireEvent) + 在 System.Data.DataRowCollection.Add(DataRow row) + 在 FineUIPro.Web.JDGL.CostAnalysis.JDReport.GetValue() 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\FineUIPro.Web\JDGL\CostAnalysis\JDReport.aspx.cs:行号 404 + 在 FineUIPro.Web.JDGL.CostAnalysis.JDReport.Page_Load(Object sender, EventArgs e) 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\FineUIPro.Web\JDGL\CostAnalysis\JDReport.aspx.cs:行号 25 + 在 System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) + 在 System.EventHandler.Invoke(Object sender, EventArgs e) + 在 System.Web.UI.Control.OnLoad(EventArgs e) + 在 System.Web.UI.Control.LoadRecursive() + 在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +出错时间:05/25/2023 10:08:31 +出错文件:http://localhost:9733/JDGL/CostAnalysis/JDReport.aspx +IP地址:::1 +操作人员:JT + +出错时间:05/25/2023 10:08:31 + + +错误信息开始=====> +错误类型:NullReferenceException +错误信息:未将对象引用设置到对象的实例。 +错误堆栈: + 在 System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add) + 在 FineUIPro.ResourceHelper.GetResourceContentAsBinary(String resName, String resVersion) + 在 FineUIPro.ResourceHandler.ProcessRequest(HttpContext context) + 在 System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() + 在 System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step) + 在 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +出错时间:06/05/2023 09:22:57 +出错文件:http://localhost:9733/res.axd?font=lib.iconfont.iconfont.woff&t=638137763580000000 +IP地址:::1 + +出错时间:06/05/2023 09:22:57 diff --git a/SGGL/FineUIPro.Web/FineUIPro.Web.csproj b/SGGL/FineUIPro.Web/FineUIPro.Web.csproj index 86cfeb13..c232391f 100644 --- a/SGGL/FineUIPro.Web/FineUIPro.Web.csproj +++ b/SGGL/FineUIPro.Web/FineUIPro.Web.csproj @@ -1281,6 +1281,12 @@ + + + + + + @@ -13042,6 +13048,48 @@ CostControlWeekItemDetailEdit.aspx + + EquipmentMaterialBigType.aspx + ASPXCodeBehind + + + EquipmentMaterialBigType.aspx + + + EquipmentMaterialBigTypeEdit.aspx + ASPXCodeBehind + + + EquipmentMaterialBigTypeEdit.aspx + + + EquipmentMaterialBigTypeView.aspx + ASPXCodeBehind + + + EquipmentMaterialBigTypeView.aspx + + + EquipmentMaterialType.aspx + ASPXCodeBehind + + + EquipmentMaterialType.aspx + + + EquipmentMaterialTypeEdit.aspx + ASPXCodeBehind + + + EquipmentMaterialTypeEdit.aspx + + + EquipmentMaterialTypeView.aspx + ASPXCodeBehind + + + EquipmentMaterialTypeView.aspx + MilePost.aspx ASPXCodeBehind diff --git a/SGGL/FineUIPro.Web/JDGL/CostAnalysis/JDReport.aspx b/SGGL/FineUIPro.Web/JDGL/CostAnalysis/JDReport.aspx index 5a497698..9c068c28 100644 --- a/SGGL/FineUIPro.Web/JDGL/CostAnalysis/JDReport.aspx +++ b/SGGL/FineUIPro.Web/JDGL/CostAnalysis/JDReport.aspx @@ -62,7 +62,7 @@ @@ -167,11 +167,11 @@ AllowFilters="true" EnableTextSelection="True"> - - - + HeaderText="序号" HeaderTextAlign="Center" TextAlign="Center" EnableColumnEdit="true"> + + + - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SGGL/FineUIPro.Web/JDGL/CostAnalysis/JDReport.aspx.cs b/SGGL/FineUIPro.Web/JDGL/CostAnalysis/JDReport.aspx.cs index f3a20dd9..18121b73 100644 --- a/SGGL/FineUIPro.Web/JDGL/CostAnalysis/JDReport.aspx.cs +++ b/SGGL/FineUIPro.Web/JDGL/CostAnalysis/JDReport.aspx.cs @@ -29,7 +29,6 @@ namespace FineUIPro.Web.JDGL.CostAnalysis private void SetEmpty() { this.SimpleForm1.Title = string.Empty; - txt5.Text = string.Empty; } #endregion @@ -109,242 +108,383 @@ namespace FineUIPro.Web.JDGL.CostAnalysis lastacwp = acwp; lastbcwp = bcwp; } - this.ChartEV.CreateMaryChart(dt, 1220, 420, null); - decimal BCWP = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["累计已完工作预算费用-BCWP"].ToString()); - decimal BCWS = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["累计计划工作预算费用-BCWS"].ToString()); - decimal ACWP = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["累计已完工作实际费用-ACWP"].ToString()); - decimal mBCWP = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["本月已完工作预算费用-BCWP"].ToString()); - decimal mBCWS = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["本月计划工作预算费用-BCWS"].ToString()); - decimal mACWP = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["本月已完工作实际费用-ACWP"].ToString()); - decimal CV = BCWP - ACWP; - decimal SV = BCWP - BCWS; - decimal CPI = 0; - if (ACWP > 0) + if (dt.Rows.Count > 0) { - CPI = BCWP / ACWP; - } - decimal SPI = 0; - if (BCWS > 0) - { - SPI = BCWP / BCWS; - } - decimal mCV = mBCWP - mACWP; - decimal mSV = mBCWP - mBCWS; - decimal mCPI = 0; - if (mACWP > 0) - { - mCPI = mBCWP / mACWP; - } - decimal mSPI = 0; - if (mBCWS > 0) - { - mSPI = mBCWP / mBCWS; - } - //总体进度 - DataTable table2 = new DataTable(); - table2.Columns.Add(new DataColumn("Id", typeof(String))); - table2.Columns.Add(new DataColumn("BCWP", typeof(String))); - table2.Columns.Add(new DataColumn("BCWS", typeof(String))); - table2.Columns.Add(new DataColumn("ACWP", typeof(String))); - table2.Columns.Add(new DataColumn("CV", typeof(String))); - table2.Columns.Add(new DataColumn("SV", typeof(String))); - table2.Columns.Add(new DataColumn("CPI", typeof(String))); - table2.Columns.Add(new DataColumn("SPI", typeof(String))); - DataRow row2; - row2 = table2.NewRow(); - row2[0] = SQLHelper.GetNewID(); - row2[1] = BCWP.ToString("0.####"); - row2[2] = BCWS.ToString("0.####"); - row2[3] = ACWP.ToString("0.####"); - row2[4] = CV.ToString("0.####"); - row2[5] = SV.ToString("0.####"); - row2[6] = CPI.ToString("0.####"); - row2[7] = SPI.ToString("0.####"); - table2.Rows.Add(row2); - this.Grid2.DataSource = table2; - this.Grid2.DataBind(); - //本月进度 - table2.Rows.Clear(); - row2[0] = SQLHelper.GetNewID(); - row2[1] = mBCWP.ToString("0.####"); - row2[2] = mBCWS.ToString("0.####"); - row2[3] = mACWP.ToString("0.####"); - row2[4] = mCV.ToString("0.####"); - row2[5] = mSV.ToString("0.####"); - row2[6] = mCPI.ToString("0.####"); - row2[7] = mSPI.ToString("0.####"); - table2.Rows.Add(row2); - this.Grid3.DataSource = table2; - this.Grid3.DataBind(); - //按专业统计 - DataTable table4 = new DataTable(); - table4.Columns.Add(new DataColumn("Id", typeof(String))); - table4.Columns.Add(new DataColumn("SupId", typeof(String))); - table4.Columns.Add(new DataColumn("Name", typeof(String))); - table4.Columns.Add(new DataColumn("mBCWP", typeof(String))); - table4.Columns.Add(new DataColumn("mBCWS", typeof(String))); - table4.Columns.Add(new DataColumn("mACWP", typeof(String))); - table4.Columns.Add(new DataColumn("mCV", typeof(String))); - table4.Columns.Add(new DataColumn("mSV", typeof(String))); - table4.Columns.Add(new DataColumn("mCPI", typeof(String))); - table4.Columns.Add(new DataColumn("mSPI", typeof(String))); - table4.Columns.Add(new DataColumn("BCWP", typeof(String))); - table4.Columns.Add(new DataColumn("BCWS", typeof(String))); - table4.Columns.Add(new DataColumn("ACWP", typeof(String))); - table4.Columns.Add(new DataColumn("CV", typeof(String))); - table4.Columns.Add(new DataColumn("SV", typeof(String))); - table4.Columns.Add(new DataColumn("CPI", typeof(String))); - table4.Columns.Add(new DataColumn("SPI", typeof(String))); - Model.SGGLDB db = Funs.DB; - var cnProfessionInits = from x in db.WBS_CnProfessionInit select x; - var cnProfessions = from x in db.WBS_CnProfession where x.ProjectId == this.CurrUser.LoginProjectId select x; - var unitProjectInits = from x in db.Wbs_UnitProjectInit select x; - var unitProjects = from x in db.Wbs_UnitProject where x.ProjectId == this.CurrUser.LoginProjectId select x; - var details = from x in db.View_WBS_CostControlParentDetail - where x.Months == Funs.GetNewDateTime(date) - select x; - DataRow row4; - decimal cnACWP, cnBCWP, cnBCWS, cnmACWP, cnmBCWP, cnmBCWS, cnCV, cnSV, cnCPI, cnSPI, cnmCV, cnmSV, cnmCPI, cnmSPI, - unACWP, unBCWP, unBCWS, unmACWP, unmBCWP, unmBCWS, unCV, unSV, unCPI, unSPI, unmCV, unmSV, unmCPI, unmSPI; - int a = 1, b = 1; - foreach (var cn in cnProfessionInits) - { - cnACWP = 0; - cnBCWP = 0; - cnBCWS = 0; - cnmACWP = 0; - cnmBCWP = 0; - cnmBCWS = 0; - cnCV = 0; - cnSV = 0; - cnCPI = 0; - cnSPI = 0; - cnmCV = 0; - cnmSV = 0; - cnmCPI = 0; - cnmSPI = 0; - row4 = table4.NewRow(); - row4[0] = a; - row4[1] = "0"; - row4[2] = cn.CnProfessionName; - var cnDetails = (from x in details - join y in cnProfessions on x.ParentId equals y.CnProfessionId - where y.OldId == cn.CnProfessionId - select x).ToList(); - cnmACWP = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.ThisRealCost).Sum().ToString()) / 10000; - cnmBCWP = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.ThisPlanCost).Sum().ToString()) / 10000; - cnmBCWS = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.ThisPlanValue).Sum().ToString()) / 10000; - cnmCV = cnmBCWP - cnmACWP; - cnmSV = cnmBCWP - cnmBCWS; - if (cnmACWP > 0) + this.ChartEV.CreateMaryChart(dt, 1220, 420, null); + decimal BCWP = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["累计已完工作预算费用-BCWP"].ToString()); + decimal BCWS = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["累计计划工作预算费用-BCWS"].ToString()); + decimal ACWP = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["累计已完工作实际费用-ACWP"].ToString()); + decimal mBCWP = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["本月已完工作预算费用-BCWP"].ToString()); + decimal mBCWS = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["本月计划工作预算费用-BCWS"].ToString()); + decimal mACWP = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["本月已完工作实际费用-ACWP"].ToString()); + decimal CV = BCWP - ACWP; + decimal SV = BCWP - BCWS; + decimal CPI = 0; + if (ACWP > 0) { - cnmCPI = cnmBCWP / cnmACWP; + CPI = BCWP / ACWP; } - if (cnmBCWS > 0) + decimal SPI = 0; + if (BCWS > 0) { - cnmSPI = cnmBCWP / cnmBCWS; + SPI = BCWP / BCWS; } - row4[3] = cnmBCWP.ToString("0.####"); - row4[4] = cnmBCWS.ToString("0.####"); - row4[5] = cnmACWP.ToString("0.####"); - row4[6] = cnmCV.ToString("0.####"); - row4[7] = cnmSV.ToString("0.####"); - row4[8] = cnmCPI.ToString("0.####"); - row4[9] = cnmSPI.ToString("0.####"); - cnACWP = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.TotalRealCost).Sum().ToString()) / 10000; - cnBCWP = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.TotalPlanCost).Sum().ToString()) / 10000; - cnBCWS = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.TotalPlanValue).Sum().ToString()) / 10000; - cnCV = cnBCWP - cnACWP; - cnSV = cnBCWP - cnBCWS; - if (cnACWP > 0) + decimal mCV = mBCWP - mACWP; + decimal mSV = mBCWP - mBCWS; + decimal mCPI = 0; + if (mACWP > 0) { - cnCPI = cnBCWP / cnACWP; + mCPI = mBCWP / mACWP; } - if (cnBCWS > 0) + decimal mSPI = 0; + if (mBCWS > 0) { - cnSPI = cnBCWP / cnBCWS; + mSPI = mBCWP / mBCWS; } - row4[10] = cnBCWP.ToString("0.####"); - row4[11] = cnBCWS.ToString("0.####"); - row4[12] = cnACWP.ToString("0.####"); - row4[13] = cnCV.ToString("0.####"); - row4[14] = cnSV.ToString("0.####"); - row4[15] = cnCPI.ToString("0.####"); - row4[16] = cnSPI.ToString("0.####"); - table4.Rows.Add(row4); - b = 1; - var unLists = (from x in unitProjectInits where x.CnProfessionId == cn.CnProfessionId orderby x.SortIndex select x).ToList(); - foreach (var un in unLists) + //总体进度 + DataTable table2 = new DataTable(); + table2.Columns.Add(new DataColumn("Id", typeof(String))); + table2.Columns.Add(new DataColumn("BCWP", typeof(String))); + table2.Columns.Add(new DataColumn("BCWS", typeof(String))); + table2.Columns.Add(new DataColumn("ACWP", typeof(String))); + table2.Columns.Add(new DataColumn("CV", typeof(String))); + table2.Columns.Add(new DataColumn("SV", typeof(String))); + table2.Columns.Add(new DataColumn("CPI", typeof(String))); + table2.Columns.Add(new DataColumn("SPI", typeof(String))); + DataRow row2; + row2 = table2.NewRow(); + row2[0] = SQLHelper.GetNewID(); + row2[1] = BCWP.ToString("0.####"); + row2[2] = BCWS.ToString("0.####"); + row2[3] = ACWP.ToString("0.####"); + row2[4] = CV.ToString("0.####"); + row2[5] = SV.ToString("0.####"); + row2[6] = CPI.ToString("0.####"); + row2[7] = SPI.ToString("0.####"); + table2.Rows.Add(row2); + this.Grid2.DataSource = table2; + this.Grid2.DataBind(); + //本月进度 + table2.Rows.Clear(); + row2[0] = SQLHelper.GetNewID(); + row2[1] = mBCWP.ToString("0.####"); + row2[2] = mBCWS.ToString("0.####"); + row2[3] = mACWP.ToString("0.####"); + row2[4] = mCV.ToString("0.####"); + row2[5] = mSV.ToString("0.####"); + row2[6] = mCPI.ToString("0.####"); + row2[7] = mSPI.ToString("0.####"); + table2.Rows.Add(row2); + this.Grid3.DataSource = table2; + this.Grid3.DataBind(); + //按专业统计 + DataTable table4 = new DataTable(); + table4.Columns.Add(new DataColumn("Id", typeof(String))); + table4.Columns.Add(new DataColumn("SupId", typeof(String))); + table4.Columns.Add(new DataColumn("Name", typeof(String))); + table4.Columns.Add(new DataColumn("mBCWP", typeof(String))); + table4.Columns.Add(new DataColumn("mBCWS", typeof(String))); + table4.Columns.Add(new DataColumn("mACWP", typeof(String))); + table4.Columns.Add(new DataColumn("mCV", typeof(String))); + table4.Columns.Add(new DataColumn("mSV", typeof(String))); + table4.Columns.Add(new DataColumn("mCPI", typeof(String))); + table4.Columns.Add(new DataColumn("mSPI", typeof(String))); + table4.Columns.Add(new DataColumn("BCWP", typeof(String))); + table4.Columns.Add(new DataColumn("BCWS", typeof(String))); + table4.Columns.Add(new DataColumn("ACWP", typeof(String))); + table4.Columns.Add(new DataColumn("CV", typeof(String))); + table4.Columns.Add(new DataColumn("SV", typeof(String))); + table4.Columns.Add(new DataColumn("CPI", typeof(String))); + table4.Columns.Add(new DataColumn("SPI", typeof(String))); + Model.SGGLDB db = Funs.DB; + var cnProfessions = from x in db.WBS_CnProfession where x.ProjectId == this.CurrUser.LoginProjectId && x.IsApprove == true select x; + var installationIds = cnProfessions.Select(x => x.InstallationId).Distinct().ToList(); + var installations = from x in db.Project_Installation where x.ProjectId == this.CurrUser.LoginProjectId && installationIds.Contains(x.InstallationId) select x; + var unitProjects = from x in db.Wbs_UnitProject where x.ProjectId == this.CurrUser.LoginProjectId && x.IsApprove == true select x; + var details = from x in db.View_WBS_CostControlParentDetail + where x.Months == Funs.GetNewDateTime(date) + select x; + DataRow row4; + decimal cnACWP, cnBCWP, cnBCWS, cnmACWP, cnmBCWP, cnmBCWS, cnCV, cnSV, cnCPI, cnSPI, cnmCV, cnmSV, cnmCPI, cnmSPI, + unACWP, unBCWP, unBCWS, unmACWP, unmBCWP, unmBCWS, unCV, unSV, unCPI, unSPI, unmCV, unmSV, unmCPI, unmSPI, + inACWP, inBCWP, inBCWS, inmACWP, inmBCWP, inmBCWS, inCV, inSV, inCPI, inSPI, inmCV, inmSV, inmCPI, inmSPI; + int a = 1, b = 1, c = 1; + foreach (var item in installations) { - unACWP = 0; - unBCWP = 0; - unBCWS = 0; - unmACWP = 0; - unmBCWP = 0; - unmBCWS = 0; - unCV = 0; - unSV = 0; - unCPI = 0; - unSPI = 0; - unmCV = 0; - unmSV = 0; - unmCPI = 0; - unmSPI = 0; + inACWP = 0; + inBCWP = 0; + inBCWS = 0; + inmACWP = 0; + inmBCWP = 0; + inmBCWS = 0; + inCV = 0; + inSV = 0; + inCPI = 0; + inSPI = 0; + inmCV = 0; + inmSV = 0; + inmCPI = 0; + inmSPI = 0; row4 = table4.NewRow(); - row4[0] = a.ToString() + "." + b.ToString(); - row4[1] = a; - row4[2] = un.UnitProjectName; - var unDetails = from x in details - join y in unitProjects on x.ParentId equals y.UnitProjectId - where y.UnitProjectCode == un.UnitProjectCode - select x; - unmACWP = Funs.GetNewDecimalOrZero(unDetails.Select(x => x.ThisRealCost).Sum().ToString()) / 10000; - unmBCWP = Funs.GetNewDecimalOrZero(unDetails.Select(x => x.ThisPlanCost).Sum().ToString()) / 10000; - unmBCWS = Funs.GetNewDecimalOrZero(unDetails.Select(x => x.ThisPlanValue).Sum().ToString()) / 10000; - unmCV = unmBCWP - unmACWP; - unmSV = unmBCWP - unmBCWS; - if (unmACWP > 0) + row4[0] = c.ToString(); + row4[1] = "0"; + row4[2] = item.InstallationName; + var inDetails = (from x in details + where x.ParentId == item.InstallationId + select x).ToList(); + inmACWP = Funs.GetNewDecimalOrZero(inDetails.Select(x => x.ThisRealCost).Sum().ToString()) / 10000; + inmBCWP = Funs.GetNewDecimalOrZero(inDetails.Select(x => x.ThisPlanCost).Sum().ToString()) / 10000; + inmBCWS = Funs.GetNewDecimalOrZero(inDetails.Select(x => x.ThisPlanValue).Sum().ToString()) / 10000; + inmCV = inmBCWP - inmACWP; + inmSV = inmBCWP - inmBCWS; + if (inmACWP > 0) { - unmCPI = unmBCWP / unmACWP; + inmCPI = inmBCWP / inmACWP; } - if (unmBCWS > 0) + if (inmBCWS > 0) { - unmSPI = unmBCWP / unmBCWS; + inmSPI = inmBCWP / inmBCWS; } - row4[3] = unmBCWP.ToString("0.####"); - row4[4] = unmBCWS.ToString("0.####"); - row4[5] = unmACWP.ToString("0.####"); - row4[6] = unmCV.ToString("0.####"); - row4[7] = unmSV.ToString("0.####"); - row4[8] = unmCPI.ToString("0.####"); - row4[9] = unmSPI.ToString("0.####"); - unACWP = Funs.GetNewDecimalOrZero(unDetails.Select(x => x.TotalRealCost).Sum().ToString()) / 10000; - unBCWP = Funs.GetNewDecimalOrZero(unDetails.Select(x => x.TotalPlanCost).Sum().ToString()) / 10000; - unBCWS = Funs.GetNewDecimalOrZero(unDetails.Select(x => x.TotalPlanValue).Sum().ToString()) / 10000; - unCV = unBCWP - unACWP; - unSV = unBCWP - unBCWS; - if (unACWP > 0) + row4[3] = inmBCWP.ToString("0.####"); + row4[4] = inmBCWS.ToString("0.####"); + row4[5] = inmACWP.ToString("0.####"); + row4[6] = inmCV.ToString("0.####"); + row4[7] = inmSV.ToString("0.####"); + row4[8] = inmCPI.ToString("0.####"); + row4[9] = inmSPI.ToString("0.####"); + inACWP = Funs.GetNewDecimalOrZero(inDetails.Select(x => x.TotalRealCost).Sum().ToString()) / 10000; + inBCWP = Funs.GetNewDecimalOrZero(inDetails.Select(x => x.TotalPlanCost).Sum().ToString()) / 10000; + inBCWS = Funs.GetNewDecimalOrZero(inDetails.Select(x => x.TotalPlanValue).Sum().ToString()) / 10000; + inCV = inBCWP - inACWP; + inSV = inBCWP - inBCWS; + if (inACWP > 0) { - unCPI = unBCWP / unACWP; + inCPI = inBCWP / inACWP; } - if (unBCWS > 0) + if (inBCWS > 0) { - unSPI = unBCWP / unBCWS; + inSPI = inBCWP / inBCWS; } - row4[10] = unBCWP.ToString("0.####"); - row4[11] = unBCWS.ToString("0.####"); - row4[12] = unACWP.ToString("0.####"); - row4[13] = unCV.ToString("0.####"); - row4[14] = unSV.ToString("0.####"); - row4[15] = unCPI.ToString("0.####"); - row4[16] = unSPI.ToString("0.####"); + row4[10] = inBCWP.ToString("0.####"); + row4[11] = inBCWS.ToString("0.####"); + row4[12] = inACWP.ToString("0.####"); + row4[13] = inCV.ToString("0.####"); + row4[14] = inSV.ToString("0.####"); + row4[15] = inCPI.ToString("0.####"); + row4[16] = inSPI.ToString("0.####"); table4.Rows.Add(row4); - b++; + a = 1; + var icnProfessions = cnProfessions.Where(x => x.InstallationId == item.InstallationId); + foreach (var cn in icnProfessions) + { + cnACWP = 0; + cnBCWP = 0; + cnBCWS = 0; + cnmACWP = 0; + cnmBCWP = 0; + cnmBCWS = 0; + cnCV = 0; + cnSV = 0; + cnCPI = 0; + cnSPI = 0; + cnmCV = 0; + cnmSV = 0; + cnmCPI = 0; + cnmSPI = 0; + row4 = table4.NewRow(); + row4[0] = c.ToString() + "." + a.ToString(); + row4[1] = c; + row4[2] = cn.CnProfessionName; + var cnDetails = (from x in details + where x.ParentId == cn.CnProfessionId + select x).ToList(); + cnmACWP = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.ThisRealCost).Sum().ToString()) / 10000; + cnmBCWP = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.ThisPlanCost).Sum().ToString()) / 10000; + cnmBCWS = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.ThisPlanValue).Sum().ToString()) / 10000; + cnmCV = cnmBCWP - cnmACWP; + cnmSV = cnmBCWP - cnmBCWS; + if (cnmACWP > 0) + { + cnmCPI = cnmBCWP / cnmACWP; + } + if (cnmBCWS > 0) + { + cnmSPI = cnmBCWP / cnmBCWS; + } + row4[3] = cnmBCWP.ToString("0.####"); + row4[4] = cnmBCWS.ToString("0.####"); + row4[5] = cnmACWP.ToString("0.####"); + row4[6] = cnmCV.ToString("0.####"); + row4[7] = cnmSV.ToString("0.####"); + row4[8] = cnmCPI.ToString("0.####"); + row4[9] = cnmSPI.ToString("0.####"); + cnACWP = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.TotalRealCost).Sum().ToString()) / 10000; + cnBCWP = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.TotalPlanCost).Sum().ToString()) / 10000; + cnBCWS = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.TotalPlanValue).Sum().ToString()) / 10000; + cnCV = cnBCWP - cnACWP; + cnSV = cnBCWP - cnBCWS; + if (cnACWP > 0) + { + cnCPI = cnBCWP / cnACWP; + } + if (cnBCWS > 0) + { + cnSPI = cnBCWP / cnBCWS; + } + row4[10] = cnBCWP.ToString("0.####"); + row4[11] = cnBCWS.ToString("0.####"); + row4[12] = cnACWP.ToString("0.####"); + row4[13] = cnCV.ToString("0.####"); + row4[14] = cnSV.ToString("0.####"); + row4[15] = cnCPI.ToString("0.####"); + row4[16] = cnSPI.ToString("0.####"); + table4.Rows.Add(row4); + b = 1; + var unLists = from x in unitProjects where x.CnProfessionId == cn.CnProfessionId orderby x.SortIndex select x; + foreach (var un in unLists) + { + unACWP = 0; + unBCWP = 0; + unBCWS = 0; + unmACWP = 0; + unmBCWP = 0; + unmBCWS = 0; + unCV = 0; + unSV = 0; + unCPI = 0; + unSPI = 0; + unmCV = 0; + unmSV = 0; + unmCPI = 0; + unmSPI = 0; + row4 = table4.NewRow(); + row4[0] = c.ToString() + "." + a.ToString() + "." + b.ToString(); + row4[1] = c.ToString() + "." + a.ToString(); + row4[2] = un.UnitProjectName; + var unDetails = from x in details + where x.ParentId == un.UnitProjectId + select x; + unmACWP = Funs.GetNewDecimalOrZero(unDetails.Select(x => x.ThisRealCost).Sum().ToString()) / 10000; + unmBCWP = Funs.GetNewDecimalOrZero(unDetails.Select(x => x.ThisPlanCost).Sum().ToString()) / 10000; + unmBCWS = Funs.GetNewDecimalOrZero(unDetails.Select(x => x.ThisPlanValue).Sum().ToString()) / 10000; + unmCV = unmBCWP - unmACWP; + unmSV = unmBCWP - unmBCWS; + if (unmACWP > 0) + { + unmCPI = unmBCWP / unmACWP; + } + if (unmBCWS > 0) + { + unmSPI = unmBCWP / unmBCWS; + } + row4[3] = unmBCWP.ToString("0.####"); + row4[4] = unmBCWS.ToString("0.####"); + row4[5] = unmACWP.ToString("0.####"); + row4[6] = unmCV.ToString("0.####"); + row4[7] = unmSV.ToString("0.####"); + row4[8] = unmCPI.ToString("0.####"); + row4[9] = unmSPI.ToString("0.####"); + unACWP = Funs.GetNewDecimalOrZero(unDetails.Select(x => x.TotalRealCost).Sum().ToString()) / 10000; + unBCWP = Funs.GetNewDecimalOrZero(unDetails.Select(x => x.TotalPlanCost).Sum().ToString()) / 10000; + unBCWS = Funs.GetNewDecimalOrZero(unDetails.Select(x => x.TotalPlanValue).Sum().ToString()) / 10000; + unCV = unBCWP - unACWP; + unSV = unBCWP - unBCWS; + if (unACWP > 0) + { + unCPI = unBCWP / unACWP; + } + if (unBCWS > 0) + { + unSPI = unBCWP / unBCWS; + } + row4[10] = unBCWP.ToString("0.####"); + row4[11] = unBCWS.ToString("0.####"); + row4[12] = unACWP.ToString("0.####"); + row4[13] = unCV.ToString("0.####"); + row4[14] = unSV.ToString("0.####"); + row4[15] = unCPI.ToString("0.####"); + row4[16] = unSPI.ToString("0.####"); + table4.Rows.Add(row4); + b++; + } + a++; + } + c++; + } + if (table4.Rows.Count > 0) + { + this.Grid4.DataSource = table4; + this.Grid4.DataBind(); + } + + //按设备材料分类统计 + DataTable table5 = new DataTable(); + table5.Columns.Add(new DataColumn("Id", typeof(String))); + table5.Columns.Add(new DataColumn("Name", typeof(String))); + table5.Columns.Add(new DataColumn("Unit", typeof(String))); + table5.Columns.Add(new DataColumn("TotalNum", typeof(String))); + table5.Columns.Add(new DataColumn("mThisNum", typeof(String))); + table5.Columns.Add(new DataColumn("tThisNum", typeof(String))); + table5.Columns.Add(new DataColumn("mRate", typeof(String))); + table5.Columns.Add(new DataColumn("tRate", typeof(String))); + DataRow row5; + var costControls = from x in db.WBS_CostControl where x.ProjectId == this.CurrUser.LoginProjectId select x; + var costControlDetails = from x in db.WBS_CostControlDetail + join y in db.WBS_CostControl on x.CostControlId equals y.CostControlId + join z in db.WBS_EquipmentMaterialType on y.EquipmentMaterialTypeId equals z.EquipmentMaterialTypeId + where x.Months <= Funs.GetNewDateTime(date) && y.ProjectId == this.CurrUser.LoginProjectId + orderby x.Months descending + select new + { + x.CostControlDetailId, + y.EquipmentMaterialTypeId, + z.EquipmentMaterialTypeName, + x.Months, + x.ThisNum, + }; + var equipmentMaterialTypes = from x in db.WBS_EquipmentMaterialType orderby x.EquipmentMaterialTypeCode select x; + if (equipmentMaterialTypes.Count() > 0) + { + foreach (var equipmentMaterialType in equipmentMaterialTypes) + { + row5 = table5.NewRow(); + row5[0] = equipmentMaterialType.EquipmentMaterialTypeId; + row5[1] = equipmentMaterialType.EquipmentMaterialTypeName; + var list = costControls.Where(x => x.EquipmentMaterialTypeId == equipmentMaterialType.EquipmentMaterialTypeId); + if (list.Count() > 0) + { + row5[2] = list.First().Unit; + } + row5[3] = list.ToList().Sum(x => x.TotalNum ?? 0); + var list2 = costControlDetails.Where(x => x.EquipmentMaterialTypeId == equipmentMaterialType.EquipmentMaterialTypeId && x.Months == Funs.GetNewDateTime(date)); + row5[4] = list2.ToList().Sum(x => x.ThisNum ?? 0); + var list3 = costControlDetails.Where(x => x.EquipmentMaterialTypeId == equipmentMaterialType.EquipmentMaterialTypeId); + row5[5] = list3.ToList().Sum(x => x.ThisNum ?? 0); + if (row5[3].ToString() != "0" && row5[4].ToString() != "0") + { + row5[6] = (Funs.GetNewDecimalOrZero(row5[4].ToString()) / Funs.GetNewDecimalOrZero(row5[3].ToString()) * 100).ToString("0.##") + "%"; + } + else + { + row5[6] = "/"; + } + if (row5[3].ToString() != "0" && row5[5].ToString() != "0") + { + row5[7] = (Funs.GetNewDecimalOrZero(row5[5].ToString()) / Funs.GetNewDecimalOrZero(row5[3].ToString()) * 100).ToString("0.##") + "%"; + } + else + { + row5[7] = "/"; + } + table5.Rows.Add(row5); + } + if (table5.Rows.Count > 0) + { + this.Grid5.DataSource = table5; + this.Grid5.DataBind(); + } } - a++; } - this.Grid4.DataSource = table4; - this.Grid4.DataBind(); } } #endregion @@ -392,48 +532,6 @@ namespace FineUIPro.Web.JDGL.CostAnalysis Model.Project_Installation installation = BLL.Project_InstallationService.GetProjectInstallationByProjectId(this.CurrUser.LoginProjectId); if (installation != null && !string.IsNullOrEmpty(this.txtMonths.Text.Trim())) { - string rootPath = Server.MapPath("~/"); - string initTemplatePath = string.Empty; - string uploadfilepath = string.Empty; - string newUrl = string.Empty; - string filePath = string.Empty; - Model.SGGLDB db = Funs.DB; - initTemplatePath = Const.JDReportTemplateUrl; - uploadfilepath = rootPath + initTemplatePath; - newUrl = uploadfilepath.Replace(".docx", "(" + this.txtMonths.Text.Trim() + ")" + ".docx"); - if (File.Exists(newUrl)) - { - File.Delete(newUrl); - } - File.Copy(uploadfilepath, newUrl); - //更新书签内容 - Document doc = new Aspose.Words.Document(newUrl); - DocumentBuilder builder = new DocumentBuilder(doc); - string projectName = string.Empty; - var project = ProjectService.GetProjectByProjectId(this.CurrUser.LoginProjectId); - if (project != null) - { - projectName = project.ProjectName; - } - Bookmark bookmarkProjectName = doc.Range.Bookmarks["ProjectName"]; - if (bookmarkProjectName != null) - { - bookmarkProjectName.Text = projectName; - } - Bookmark bookmarkMonths = doc.Range.Bookmarks["Months"]; - if (bookmarkMonths != null) - { - string[] strs = this.txtMonths.Text.Trim().Split('-'); - bookmarkMonths.Text = strs[0] + "年" + strs[1] + "月"; - } - - //插入图表 - builder.MoveToBookmark("Chart"); - Shape shape = builder.InsertChart(ChartType.Line, 432, 252); - Chart chart = shape.Chart; - chart.Title.Text = "赢得值曲线"; - ChartSeriesCollection seriesColl = chart.Series; - seriesColl.Clear(); string id = installation.InstallationId; string date = this.txtMonths.Text.Trim() + "-01"; string strSql = "select distinct (cast(YEAR(Months) as varchar(4))+'.'+cast(MONTH(Months) as varchar(2))) as 月份,t.Months," + @@ -446,554 +544,481 @@ namespace FineUIPro.Web.JDGL.CostAnalysis new SqlParameter("@Months",date), }; DataTable dt = SQLHelper.GetDataTableRunText(strSql, parameter); - string[] categories = new string[dt.Rows.Count]; - double[] d1 = new double[dt.Rows.Count]; - double[] d2 = new double[dt.Rows.Count]; - double[] d3 = new double[dt.Rows.Count]; - for (int i = 0; i < dt.Rows.Count; i++) + if (dt.Rows.Count > 0) { - categories[i] = dt.Rows[i]["月份"].ToString(); - d1[i] = Convert.ToDouble(dt.Rows[i]["累计已完工作实际费用-ACWP"].ToString()) / 10000; - d2[i] = Convert.ToDouble(dt.Rows[i]["累计已完工作预算费用-BCWP"].ToString()) / 10000; - d3[i] = Convert.ToDouble(dt.Rows[i]["累计计划工作预算费用-BCWS"].ToString()) / 10000; - } - seriesColl.Add("累计已完工作实际费用-ACWP", categories, d1); - seriesColl.Add("累计已完工作预算费用-BCWP", categories, d2); - seriesColl.Add("累计计划工作预算费用-BCWS", categories, d3); + string rootPath = Server.MapPath("~/"); + string initTemplatePath = string.Empty; + string uploadfilepath = string.Empty; + string newUrl = string.Empty; + string filePath = string.Empty; + Model.SGGLDB db = Funs.DB; + initTemplatePath = Const.JDReportTemplateUrl; + uploadfilepath = rootPath + initTemplatePath; + newUrl = uploadfilepath.Replace(".docx", "(" + this.txtMonths.Text.Trim() + ")" + ".docx"); + if (File.Exists(newUrl)) + { + File.Delete(newUrl); + } + File.Copy(uploadfilepath, newUrl); + //更新书签内容 + Document doc = new Aspose.Words.Document(newUrl); + DocumentBuilder builder = new DocumentBuilder(doc); + string projectName = string.Empty; + var project = ProjectService.GetProjectByProjectId(this.CurrUser.LoginProjectId); + if (project != null) + { + projectName = project.ProjectName; + } + Bookmark bookmarkProjectName = doc.Range.Bookmarks["ProjectName"]; + if (bookmarkProjectName != null) + { + bookmarkProjectName.Text = projectName; + } + Bookmark bookmarkMonths = doc.Range.Bookmarks["Months"]; + if (bookmarkMonths != null) + { + string[] strs = this.txtMonths.Text.Trim().Split('-'); + bookmarkMonths.Text = strs[0] + "年" + strs[1] + "月"; + } - decimal BCWP = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["累计已完工作预算费用-BCWP"].ToString()); - decimal BCWS = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["累计计划工作预算费用-BCWS"].ToString()); - decimal ACWP = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["累计已完工作实际费用-ACWP"].ToString()); - decimal mBCWP = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["本月已完工作预算费用-BCWP"].ToString()); - decimal mBCWS = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["本月计划工作预算费用-BCWS"].ToString()); - decimal mACWP = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["本月已完工作实际费用-ACWP"].ToString()); - decimal CV = BCWP / 10000 - ACWP / 10000; - decimal SV = BCWP / 10000 - BCWS / 10000; - decimal CPI = 0; - if (ACWP > 0) - { - CPI = BCWP / ACWP; - } - decimal SPI = 0; - if (BCWS > 0) - { - SPI = BCWP / BCWS; - } - decimal mCV = mBCWP / 10000 - mACWP / 10000; - decimal mSV = mBCWP / 10000 - mBCWS / 10000; - decimal mCPI = 0; - if (mACWP > 0) - { - mCPI = mBCWP / mACWP; - } - decimal mSPI = 0; - if (mBCWS > 0) - { - mSPI = mBCWP / mBCWS; - } - #region 项目总体施工进度情况 - //项目总体施工进度情况 - builder.MoveToBookmark("Form2"); - builder.StartTable(); - builder.CellFormat.Borders.LineStyle = LineStyle.Single; - builder.CellFormat.Borders.Color = System.Drawing.Color.Black; - builder.Bold = false; - builder.RowFormat.Height = 20; - builder.Font.Size = 10; + //插入图表 + builder.MoveToBookmark("Chart"); + Shape shape = builder.InsertChart(ChartType.Line, 432, 252); + Chart chart = shape.Chart; + chart.Title.Text = "赢得值曲线"; + ChartSeriesCollection seriesColl = chart.Series; + seriesColl.Clear(); - //序号 - //builder.InsertCell(); - //builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - //builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - //builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - //builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - //builder.CellFormat.Width = 30; - //builder.Write("序号"); - //赢得值参数(单位:万元) - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 240; - builder.Write("赢得值参数(单位:万元)"); - //赢得值评价指标 - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 320; - builder.Write("赢得值评价指标"); - builder.EndRow(); - //BCWP - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write("BCWP"); - //BCWS - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write("BCWS"); - //ACWP - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write("ACWP"); - //CV - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write("CV"); - //SV - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write("SV"); - //CPI - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write("CPI"); - //SPI - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write("SPI"); - builder.EndRow(); - ////序号 - //builder.InsertCell(); - //builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - //builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - //builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - //builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - //builder.CellFormat.Width = 30; - //builder.Write(h.ToString()); - //问题内容 - //BCWP - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write((BCWP / 10000).ToString("0.####")); - //BCWS - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write((BCWS / 10000).ToString("0.####")); - //ACWP - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write((ACWP / 10000).ToString("0.####")); - //CV - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write(CV.ToString("0.####")); - //SV - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write(SV.ToString("0.####")); - //CPI - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write(CPI.ToString("0.####")); - //SPI - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write(SPI.ToString("0.####")); - builder.EndRow(); - #endregion - #region 本月施工进度情况 - //本月施工进度情况 - builder.MoveToBookmark("Form3"); - builder.StartTable(); - builder.CellFormat.Borders.LineStyle = LineStyle.Single; - builder.CellFormat.Borders.Color = System.Drawing.Color.Black; - builder.Bold = false; - builder.RowFormat.Height = 20; - builder.Font.Size = 10; + string[] categories = new string[dt.Rows.Count]; + double[] d1 = new double[dt.Rows.Count]; + double[] d2 = new double[dt.Rows.Count]; + double[] d3 = new double[dt.Rows.Count]; + for (int i = 0; i < dt.Rows.Count; i++) + { + categories[i] = dt.Rows[i]["月份"].ToString(); + d1[i] = Convert.ToDouble(dt.Rows[i]["累计已完工作实际费用-ACWP"].ToString()) / 10000; + d2[i] = Convert.ToDouble(dt.Rows[i]["累计已完工作预算费用-BCWP"].ToString()) / 10000; + d3[i] = Convert.ToDouble(dt.Rows[i]["累计计划工作预算费用-BCWS"].ToString()) / 10000; + } + seriesColl.Add("累计已完工作实际费用-ACWP", categories, d1); + seriesColl.Add("累计已完工作预算费用-BCWP", categories, d2); + seriesColl.Add("累计计划工作预算费用-BCWS", categories, d3); - //序号 - //builder.InsertCell(); - //builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - //builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - //builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - //builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - //builder.CellFormat.Width = 30; - //builder.Write("序号"); - //赢得值参数(单位:万元) - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 240; - builder.Write("赢得值参数(单位:万元)"); - //赢得值评价指标 - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 320; - builder.Write("赢得值评价指标"); - builder.EndRow(); - //BCWP - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write("BCWP"); - //BCWS - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write("BCWS"); - //ACWP - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write("ACWP"); - //CV - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write("CV"); - //SV - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write("SV"); - //CPI - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write("CPI"); - //SPI - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write("SPI"); - builder.EndRow(); - //问题内容 - //BCWP - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write((mBCWP / 10000).ToString("0.####")); - //BCWS - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write((mBCWS / 10000).ToString("0.####")); - //ACWP - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write((mACWP / 10000).ToString("0.####")); - //CV - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write(mCV.ToString("0.####")); - //SV - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write(mSV.ToString("0.####")); - //CPI - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write(mCPI.ToString("0.####")); - //SPI - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 80; - builder.Write(mSPI.ToString("0.####")); - builder.EndRow(); - #endregion - #region 专业和分部工程工程施工进度情况 - //专业和分部工程工程施工进度情况 - builder.MoveToBookmark("Form4"); - builder.StartTable(); - builder.CellFormat.Borders.LineStyle = LineStyle.Single; - builder.CellFormat.Borders.Color = System.Drawing.Color.Black; - builder.Bold = false; - builder.RowFormat.Height = 20; - builder.Font.Size = 10; + decimal BCWP = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["累计已完工作预算费用-BCWP"].ToString()); + decimal BCWS = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["累计计划工作预算费用-BCWS"].ToString()); + decimal ACWP = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["累计已完工作实际费用-ACWP"].ToString()); + decimal mBCWP = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["本月已完工作预算费用-BCWP"].ToString()); + decimal mBCWS = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["本月计划工作预算费用-BCWS"].ToString()); + decimal mACWP = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["本月已完工作实际费用-ACWP"].ToString()); + decimal CV = BCWP / 10000 - ACWP / 10000; + decimal SV = BCWP / 10000 - BCWS / 10000; + decimal CPI = 0; + if (ACWP > 0) + { + CPI = BCWP / ACWP; + } + decimal SPI = 0; + if (BCWS > 0) + { + SPI = BCWP / BCWS; + } + decimal mCV = mBCWP / 10000 - mACWP / 10000; + decimal mSV = mBCWP / 10000 - mBCWS / 10000; + decimal mCPI = 0; + if (mACWP > 0) + { + mCPI = mBCWP / mACWP; + } + decimal mSPI = 0; + if (mBCWS > 0) + { + mSPI = mBCWP / mBCWS; + } + #region 项目总体施工进度情况 + //项目总体施工进度情况 + builder.MoveToBookmark("Form2"); + builder.StartTable(); + builder.CellFormat.Borders.LineStyle = LineStyle.Single; + builder.CellFormat.Borders.Color = System.Drawing.Color.Black; + builder.Bold = false; + builder.RowFormat.Height = 20; + builder.Font.Size = 10; - //序号 - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 30; - builder.Write("序号"); - //专业 - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 50; - builder.Write("专业"); - //分部工程 - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 60; - builder.Write("分部工程"); - //本月赢得值参数(单位:万元) - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 150; - builder.Write("本月赢得值参数(单位:万元)"); - //本月赢得值评价指标 - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 200; - builder.Write("本月赢得值评价指标"); - builder.EndRow(); - //序号 - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.Previous; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 30; - builder.Write("序号"); - //专业 - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.Previous; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 50; - builder.Write("专业"); - //分部工程 - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.Previous; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 60; - builder.Write("分部工程"); - //BCWP - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 50; - builder.Write("BCWP"); - //BCWS - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 50; - builder.Write("BCWS"); - //ACWP - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 50; - builder.Write("ACWP"); - //CV - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 50; - builder.Write("CV"); - //SV - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 50; - builder.Write("SV"); - //CPI - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 50; - builder.Write("CPI"); - //SPI - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 50; - builder.Write("SPI"); - builder.EndRow(); - var cnProfessionInits = from x in db.WBS_CnProfessionInit select x; - var cnProfessions = from x in db.WBS_CnProfession where x.ProjectId == this.CurrUser.LoginProjectId select x; - var unitProjectInits = from x in db.Wbs_UnitProjectInit select x; - var unitProjects = from x in db.Wbs_UnitProject where x.ProjectId == this.CurrUser.LoginProjectId select x; - var details = from x in db.View_WBS_CostControlParentDetail - where x.Months == Funs.GetNewDateTime(date) - select x; - decimal cnACWP, cnBCWP, cnBCWS, cnmACWP, cnmBCWP, cnmBCWS, cnCV, cnSV, cnCPI, cnSPI, cnmCV, cnmSV, cnmCPI, cnmSPI, - unACWP, unBCWP, unBCWS, unmACWP, unmBCWP, unmBCWS, unCV, unSV, unCPI, unSPI, unmCV, unmSV, unmCPI, unmSPI; - int a = 1, b = 1; - foreach (var cn in cnProfessionInits) - { - cnmACWP = 0; - cnmBCWP = 0; - cnmBCWS = 0; - cnmCV = 0; - cnmSV = 0; - cnmCPI = 0; - cnmSPI = 0; + //序号 + //builder.InsertCell(); + //builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + //builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + //builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + //builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + //builder.CellFormat.Width = 30; + //builder.Write("序号"); + //赢得值参数(单位:万元) + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 240; + builder.Write("赢得值参数(单位:万元)"); + //赢得值评价指标 + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 320; + builder.Write("赢得值评价指标"); + builder.EndRow(); + //BCWP + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write("BCWP"); + //BCWS + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write("BCWS"); + //ACWP + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write("ACWP"); + //CV + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write("CV"); + //SV + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write("SV"); + //CPI + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write("CPI"); + //SPI + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write("SPI"); + builder.EndRow(); + ////序号 + //builder.InsertCell(); + //builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + //builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + //builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + //builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + //builder.CellFormat.Width = 30; + //builder.Write(h.ToString()); + //问题内容 + //BCWP + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write((BCWP / 10000).ToString("0.####")); + //BCWS + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write((BCWS / 10000).ToString("0.####")); + //ACWP + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write((ACWP / 10000).ToString("0.####")); + //CV + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write(CV.ToString("0.####")); + //SV + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write(SV.ToString("0.####")); + //CPI + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write(CPI.ToString("0.####")); + //SPI + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write(SPI.ToString("0.####")); + builder.EndRow(); + #endregion + #region 本月施工进度情况 + //本月施工进度情况 + builder.MoveToBookmark("Form3"); + builder.StartTable(); + builder.CellFormat.Borders.LineStyle = LineStyle.Single; + builder.CellFormat.Borders.Color = System.Drawing.Color.Black; + builder.Bold = false; + builder.RowFormat.Height = 20; + builder.Font.Size = 10; + + //序号 + //builder.InsertCell(); + //builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + //builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + //builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + //builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + //builder.CellFormat.Width = 30; + //builder.Write("序号"); + //赢得值参数(单位:万元) + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 240; + builder.Write("赢得值参数(单位:万元)"); + //赢得值评价指标 + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 320; + builder.Write("赢得值评价指标"); + builder.EndRow(); + //BCWP + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write("BCWP"); + //BCWS + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write("BCWS"); + //ACWP + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write("ACWP"); + //CV + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write("CV"); + //SV + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write("SV"); + //CPI + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write("CPI"); + //SPI + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write("SPI"); + builder.EndRow(); + //问题内容 + //BCWP + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write((mBCWP / 10000).ToString("0.####")); + //BCWS + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write((mBCWS / 10000).ToString("0.####")); + //ACWP + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write((mACWP / 10000).ToString("0.####")); + //CV + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write(mCV.ToString("0.####")); + //SV + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write(mSV.ToString("0.####")); + //CPI + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write(mCPI.ToString("0.####")); + //SPI + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 80; + builder.Write(mSPI.ToString("0.####")); + builder.EndRow(); + #endregion + #region 专业和分部工程工程施工进度情况 + //专业和分部工程工程施工进度情况 + builder.MoveToBookmark("Form4"); + builder.StartTable(); + builder.CellFormat.Borders.LineStyle = LineStyle.Single; + builder.CellFormat.Borders.Color = System.Drawing.Color.Black; + builder.Bold = false; + builder.RowFormat.Height = 20; + builder.Font.Size = 10; //序号 builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 30; - builder.Write(a.ToString()); + builder.Write("序号"); //专业 builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(cn.CnProfessionName); + builder.Write("专业"); //分部工程 builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 60; + builder.Write("分部工程"); + //本月赢得值参数(单位:万元) + builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 150; + builder.Write("本月赢得值参数(单位:万元)"); + //本月赢得值评价指标 + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 200; + builder.Write("本月赢得值评价指标"); + builder.EndRow(); + //序号 + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.Previous; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 30; + builder.Write("序号"); + //专业 + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.Previous; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 50; + builder.Write("专业"); + //分部工程 + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.Previous; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 60; - builder.Write(string.Empty); - var cnDetails = (from x in details - join y in cnProfessions on x.ParentId equals y.CnProfessionId - where y.OldId == cn.CnProfessionId - select x).ToList(); - cnmACWP = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.ThisRealCost).Sum().ToString()) / 10000; - cnmBCWP = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.ThisPlanCost).Sum().ToString()) / 10000; - cnmBCWS = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.ThisPlanValue).Sum().ToString()) / 10000; - cnmCV = cnmBCWP - cnmACWP; - cnmSV = cnmBCWP - cnmBCWS; - if (cnmACWP > 0) - { - cnmCPI = cnmBCWP / cnmACWP; - } - if (cnmBCWS > 0) - { - cnmSPI = cnmBCWP / cnmBCWS; - } + builder.Write("分部工程"); //BCWP builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1001,7 +1026,7 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(cnmBCWP.ToString("0.####")); + builder.Write("BCWP"); //BCWS builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1009,7 +1034,7 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(cnmBCWS.ToString("0.####")); + builder.Write("BCWS"); //ACWP builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1017,7 +1042,7 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(cnmACWP.ToString("0.####")); + builder.Write("ACWP"); //CV builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1025,7 +1050,7 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(cnmCV.ToString("0.####")); + builder.Write("CV"); //SV builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1033,15 +1058,15 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(cnmSV.ToString("0.####")); - //CPI + builder.Write("SV"); + //CPI builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(cnmCPI.ToString("0.####")); + builder.Write("CPI"); //SPI builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1049,19 +1074,27 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(cnmSPI.ToString("0.####")); + builder.Write("SPI"); builder.EndRow(); - b = 1; - var unLists = (from x in unitProjectInits where x.CnProfessionId == cn.CnProfessionId orderby x.SortIndex select x).ToList(); - foreach (var un in unLists) + var cnProfessionInits = from x in db.WBS_CnProfessionInit select x; + var cnProfessions = from x in db.WBS_CnProfession where x.ProjectId == this.CurrUser.LoginProjectId select x; + var unitProjectInits = from x in db.Wbs_UnitProjectInit select x; + var unitProjects = from x in db.Wbs_UnitProject where x.ProjectId == this.CurrUser.LoginProjectId select x; + var details = from x in db.View_WBS_CostControlParentDetail + where x.Months == Funs.GetNewDateTime(date) + select x; + decimal cnACWP, cnBCWP, cnBCWS, cnmACWP, cnmBCWP, cnmBCWS, cnCV, cnSV, cnCPI, cnSPI, cnmCV, cnmSV, cnmCPI, cnmSPI, + unACWP, unBCWP, unBCWS, unmACWP, unmBCWP, unmBCWS, unCV, unSV, unCPI, unSPI, unmCV, unmSV, unmCPI, unmSPI; + int a = 1, b = 1; + foreach (var cn in cnProfessionInits) { - unmACWP = 0; - unmBCWP = 0; - unmBCWS = 0; - unmCV = 0; - unmSV = 0; - unmCPI = 0; - unmSPI = 0; + cnmACWP = 0; + cnmBCWP = 0; + cnmBCWS = 0; + cnmCV = 0; + cnmSV = 0; + cnmCPI = 0; + cnmSPI = 0; //序号 builder.InsertCell(); @@ -1070,7 +1103,7 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 30; - builder.Write(a.ToString() + "." + b.ToString()); + builder.Write(a.ToString()); //专业 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1078,7 +1111,7 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(string.Empty); + builder.Write(cn.CnProfessionName); //分部工程 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1086,23 +1119,23 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 60; - builder.Write(un.UnitProjectName); - var unDetails = from x in details - join y in unitProjects on x.ParentId equals y.UnitProjectId - where y.UnitProjectCode == un.UnitProjectCode - select x; - unmACWP = Funs.GetNewDecimalOrZero(unDetails.Select(x => x.ThisRealCost).Sum().ToString()) / 10000; - unmBCWP = Funs.GetNewDecimalOrZero(unDetails.Select(x => x.ThisPlanCost).Sum().ToString()) / 10000; - unmBCWS = Funs.GetNewDecimalOrZero(unDetails.Select(x => x.ThisPlanValue).Sum().ToString()) / 10000; - unmCV = unmBCWP - unmACWP; - unmSV = unmBCWP - unmBCWS; - if (unmACWP > 0) + builder.Write(string.Empty); + var cnDetails = (from x in details + join y in cnProfessions on x.ParentId equals y.CnProfessionId + where y.OldId == cn.CnProfessionId + select x).ToList(); + cnmACWP = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.ThisRealCost).Sum().ToString()) / 10000; + cnmBCWP = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.ThisPlanCost).Sum().ToString()) / 10000; + cnmBCWS = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.ThisPlanValue).Sum().ToString()) / 10000; + cnmCV = cnmBCWP - cnmACWP; + cnmSV = cnmBCWP - cnmBCWS; + if (cnmACWP > 0) { - unmCPI = unmBCWP / unmACWP; + cnmCPI = cnmBCWP / cnmACWP; } - if (unmBCWS > 0) + if (cnmBCWS > 0) { - unmSPI = unmBCWP / unmBCWS; + cnmSPI = cnmBCWP / cnmBCWS; } //BCWP builder.InsertCell(); @@ -1111,7 +1144,7 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(unmBCWP.ToString("0.####")); + builder.Write(cnmBCWP.ToString("0.####")); //BCWS builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1119,7 +1152,7 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(unmBCWS.ToString("0.####")); + builder.Write(cnmBCWS.ToString("0.####")); //ACWP builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1127,7 +1160,7 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(unmACWP.ToString("0.####")); + builder.Write(cnmACWP.ToString("0.####")); //CV builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1135,7 +1168,7 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(unmCV.ToString("0.####")); + builder.Write(cnmCV.ToString("0.####")); //SV builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1143,7 +1176,7 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(unmSV.ToString("0.####")); + builder.Write(cnmSV.ToString("0.####")); //CPI builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1151,7 +1184,7 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(unmCPI.ToString("0.####")); + builder.Write(cnmCPI.ToString("0.####")); //SPI builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1159,211 +1192,199 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(unmSPI.ToString("0.####")); + builder.Write(cnmSPI.ToString("0.####")); builder.EndRow(); - b++; + b = 1; + var unLists = (from x in unitProjectInits where x.CnProfessionId == cn.CnProfessionId orderby x.SortIndex select x).ToList(); + foreach (var un in unLists) + { + unmACWP = 0; + unmBCWP = 0; + unmBCWS = 0; + unmCV = 0; + unmSV = 0; + unmCPI = 0; + unmSPI = 0; + + //序号 + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 30; + builder.Write(a.ToString() + "." + b.ToString()); + //专业 + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 50; + builder.Write(string.Empty); + //分部工程 + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 60; + builder.Write(un.UnitProjectName); + var unDetails = from x in details + join y in unitProjects on x.ParentId equals y.UnitProjectId + where y.UnitProjectCode == un.UnitProjectCode + select x; + unmACWP = Funs.GetNewDecimalOrZero(unDetails.Select(x => x.ThisRealCost).Sum().ToString()) / 10000; + unmBCWP = Funs.GetNewDecimalOrZero(unDetails.Select(x => x.ThisPlanCost).Sum().ToString()) / 10000; + unmBCWS = Funs.GetNewDecimalOrZero(unDetails.Select(x => x.ThisPlanValue).Sum().ToString()) / 10000; + unmCV = unmBCWP - unmACWP; + unmSV = unmBCWP - unmBCWS; + if (unmACWP > 0) + { + unmCPI = unmBCWP / unmACWP; + } + if (unmBCWS > 0) + { + unmSPI = unmBCWP / unmBCWS; + } + //BCWP + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 50; + builder.Write(unmBCWP.ToString("0.####")); + //BCWS + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 50; + builder.Write(unmBCWS.ToString("0.####")); + //ACWP + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 50; + builder.Write(unmACWP.ToString("0.####")); + //CV + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 50; + builder.Write(unmCV.ToString("0.####")); + //SV + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 50; + builder.Write(unmSV.ToString("0.####")); + //CPI + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 50; + builder.Write(unmCPI.ToString("0.####")); + //SPI + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 50; + builder.Write(unmSPI.ToString("0.####")); + builder.EndRow(); + b++; + } + a++; } - a++; - } - builder.MoveToBookmark("Form42"); - builder.StartTable(); - builder.CellFormat.Borders.LineStyle = LineStyle.Single; - builder.CellFormat.Borders.Color = System.Drawing.Color.Black; - builder.Bold = false; - builder.RowFormat.Height = 20; - builder.Font.Size = 10; + builder.MoveToBookmark("Form42"); + builder.StartTable(); + builder.CellFormat.Borders.LineStyle = LineStyle.Single; + builder.CellFormat.Borders.Color = System.Drawing.Color.Black; + builder.Bold = false; + builder.RowFormat.Height = 20; + builder.Font.Size = 10; - //序号 - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 30; - builder.Write("序号"); - //专业 - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 50; - builder.Write("专业"); - //分部工程 - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 60; - builder.Write("分部工程"); - //累计赢得值参数(单位:万元) - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.CellFormat.VerticalMerge = CellMerge.None; - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 150; - builder.Write("累计赢得值参数(单位:万元)"); - //累计赢得值评价指标 - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.CellFormat.VerticalMerge = CellMerge.None; - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 200; - builder.Write("累计赢得值评价指标"); - builder.EndRow(); - //序号 - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.Previous; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 30; - builder.Write("序号"); - //专业 - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.Previous; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 50; - builder.Write("专业"); - //分部工程 - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.Previous; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 60; - builder.Write("分部工程"); - //BCWP - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 50; - builder.Write("BCWP"); - //BCWS - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 50; - builder.Write("BCWS"); - //ACWP - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 50; - builder.Write("ACWP"); - //CV - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 50; - builder.Write("CV"); - //SV - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 50; - builder.Write("SV"); - //CPI - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 50; - builder.Write("CPI"); - //SPI - builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; - builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; - builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 - builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 - builder.CellFormat.Width = 50; - builder.Write("SPI"); - builder.EndRow(); - a = 1; - b = 1; - foreach (var cn in cnProfessionInits) - { - cnACWP = 0; - cnBCWP = 0; - cnBCWS = 0; - cnCV = 0; - cnSV = 0; - cnCPI = 0; - cnSPI = 0; //序号 builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 30; - builder.Write(a.ToString()); + builder.Write("序号"); //专业 builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(cn.CnProfessionName); + builder.Write("专业"); //分部工程 builder.InsertCell(); - builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 60; - builder.Write(string.Empty); - var cnDetails = (from x in details - join y in cnProfessions on x.ParentId equals y.CnProfessionId - where y.OldId == cn.CnProfessionId - select x).ToList(); - cnmACWP = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.ThisRealCost).Sum().ToString()) / 10000; - cnmBCWP = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.ThisPlanCost).Sum().ToString()) / 10000; - cnmBCWS = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.ThisPlanValue).Sum().ToString()) / 10000; - cnmCV = cnmBCWP - cnmACWP; - cnmSV = cnmBCWP - cnmBCWS; - if (cnmACWP > 0) - { - cnmCPI = cnmBCWP / cnmACWP; - } - if (cnmBCWS > 0) - { - cnmSPI = cnmBCWP / cnmBCWS; - } - cnACWP = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.TotalRealCost).Sum().ToString()) / 10000; - cnBCWP = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.TotalPlanCost).Sum().ToString()) / 10000; - cnBCWS = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.TotalPlanValue).Sum().ToString()) / 10000; - cnCV = cnBCWP - cnACWP; - cnSV = cnBCWP - cnBCWS; - if (cnACWP > 0) - { - cnCPI = cnBCWP / cnACWP; - } - if (cnBCWS > 0) - { - cnSPI = cnBCWP / cnBCWS; - } + builder.Write("分部工程"); + //累计赢得值参数(单位:万元) + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.CellFormat.VerticalMerge = CellMerge.None; + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 150; + builder.Write("累计赢得值参数(单位:万元)"); + //累计赢得值评价指标 + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.CellFormat.VerticalMerge = CellMerge.None; + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 200; + builder.Write("累计赢得值评价指标"); + builder.EndRow(); + //序号 + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.Previous; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 30; + builder.Write("序号"); + //专业 + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.Previous; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 50; + builder.Write("专业"); + //分部工程 + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.Previous; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 60; + builder.Write("分部工程"); //BCWP builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1371,7 +1392,7 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(cnBCWP.ToString("0.####")); + builder.Write("BCWP"); //BCWS builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1379,7 +1400,7 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(cnBCWS.ToString("0.####")); + builder.Write("BCWS"); //ACWP builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1387,7 +1408,7 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(cnACWP.ToString("0.####")); + builder.Write("ACWP"); //CV builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1395,7 +1416,7 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(cnCV.ToString("0.####")); + builder.Write("CV"); //SV builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1403,15 +1424,15 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(cnSV.ToString("0.####")); - //CPI + builder.Write("SV"); + //CPI builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(cnCPI.ToString("0.####")); + builder.Write("CPI"); //SPI builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1419,19 +1440,19 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(cnSPI.ToString("0.####")); + builder.Write("SPI"); builder.EndRow(); + a = 1; b = 1; - var unLists = (from x in unitProjectInits where x.CnProfessionId == cn.CnProfessionId orderby x.SortIndex select x).ToList(); - foreach (var un in unLists) + foreach (var cn in cnProfessionInits) { - unACWP = 0; - unBCWP = 0; - unBCWS = 0; - unCV = 0; - unSV = 0; - unCPI = 0; - unSPI = 0; + cnACWP = 0; + cnBCWP = 0; + cnBCWS = 0; + cnCV = 0; + cnSV = 0; + cnCPI = 0; + cnSPI = 0; //序号 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1439,7 +1460,7 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 30; - builder.Write(a.ToString() + "." + b.ToString()); + builder.Write(a.ToString()); //专业 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1447,7 +1468,7 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(string.Empty); + builder.Write(cn.CnProfessionName); //分部工程 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1455,23 +1476,36 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 60; - builder.Write(un.UnitProjectName); - var unDetails = from x in details - join y in unitProjects on x.ParentId equals y.UnitProjectId - where y.UnitProjectCode == un.UnitProjectCode - select x; - unACWP = Funs.GetNewDecimalOrZero(unDetails.Select(x => x.TotalRealCost).Sum().ToString()) / 10000; - unBCWP = Funs.GetNewDecimalOrZero(unDetails.Select(x => x.TotalPlanCost).Sum().ToString()) / 10000; - unBCWS = Funs.GetNewDecimalOrZero(unDetails.Select(x => x.TotalPlanValue).Sum().ToString()) / 10000; - unCV = unBCWP - unACWP; - unSV = unBCWP - unBCWS; - if (unACWP > 0) + builder.Write(string.Empty); + var cnDetails = (from x in details + join y in cnProfessions on x.ParentId equals y.CnProfessionId + where y.OldId == cn.CnProfessionId + select x).ToList(); + cnmACWP = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.ThisRealCost).Sum().ToString()) / 10000; + cnmBCWP = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.ThisPlanCost).Sum().ToString()) / 10000; + cnmBCWS = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.ThisPlanValue).Sum().ToString()) / 10000; + cnmCV = cnmBCWP - cnmACWP; + cnmSV = cnmBCWP - cnmBCWS; + if (cnmACWP > 0) { - unCPI = unBCWP / unACWP; + cnmCPI = cnmBCWP / cnmACWP; } - if (unBCWS > 0) + if (cnmBCWS > 0) { - unSPI = unBCWP / unBCWS; + cnmSPI = cnmBCWP / cnmBCWS; + } + cnACWP = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.TotalRealCost).Sum().ToString()) / 10000; + cnBCWP = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.TotalPlanCost).Sum().ToString()) / 10000; + cnBCWS = Funs.GetNewDecimalOrZero(cnDetails.Select(x => x.TotalPlanValue).Sum().ToString()) / 10000; + cnCV = cnBCWP - cnACWP; + cnSV = cnBCWP - cnBCWS; + if (cnACWP > 0) + { + cnCPI = cnBCWP / cnACWP; + } + if (cnBCWS > 0) + { + cnSPI = cnBCWP / cnBCWS; } //BCWP builder.InsertCell(); @@ -1480,7 +1514,7 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(unBCWP.ToString("0.####")); + builder.Write(cnBCWP.ToString("0.####")); //BCWS builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1488,7 +1522,7 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(unBCWS.ToString("0.####")); + builder.Write(cnBCWS.ToString("0.####")); //ACWP builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1496,7 +1530,7 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(unACWP.ToString("0.####")); + builder.Write(cnACWP.ToString("0.####")); //CV builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1504,7 +1538,7 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(unCV.ToString("0.####")); + builder.Write(cnCV.ToString("0.####")); //SV builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1512,7 +1546,7 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(unSV.ToString("0.####")); + builder.Write(cnSV.ToString("0.####")); //CPI builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1520,7 +1554,7 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(unCPI.ToString("0.####")); + builder.Write(cnCPI.ToString("0.####")); //SPI builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; @@ -1528,30 +1562,144 @@ namespace FineUIPro.Web.JDGL.CostAnalysis builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 50; - builder.Write(unSPI.ToString("0.####")); + builder.Write(cnSPI.ToString("0.####")); builder.EndRow(); - b++; + b = 1; + var unLists = (from x in unitProjectInits where x.CnProfessionId == cn.CnProfessionId orderby x.SortIndex select x).ToList(); + foreach (var un in unLists) + { + unACWP = 0; + unBCWP = 0; + unBCWS = 0; + unCV = 0; + unSV = 0; + unCPI = 0; + unSPI = 0; + //序号 + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 30; + builder.Write(a.ToString() + "." + b.ToString()); + //专业 + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 50; + builder.Write(string.Empty); + //分部工程 + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 60; + builder.Write(un.UnitProjectName); + var unDetails = from x in details + join y in unitProjects on x.ParentId equals y.UnitProjectId + where y.UnitProjectCode == un.UnitProjectCode + select x; + unACWP = Funs.GetNewDecimalOrZero(unDetails.Select(x => x.TotalRealCost).Sum().ToString()) / 10000; + unBCWP = Funs.GetNewDecimalOrZero(unDetails.Select(x => x.TotalPlanCost).Sum().ToString()) / 10000; + unBCWS = Funs.GetNewDecimalOrZero(unDetails.Select(x => x.TotalPlanValue).Sum().ToString()) / 10000; + unCV = unBCWP - unACWP; + unSV = unBCWP - unBCWS; + if (unACWP > 0) + { + unCPI = unBCWP / unACWP; + } + if (unBCWS > 0) + { + unSPI = unBCWP / unBCWS; + } + //BCWP + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 50; + builder.Write(unBCWP.ToString("0.####")); + //BCWS + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 50; + builder.Write(unBCWS.ToString("0.####")); + //ACWP + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 50; + builder.Write(unACWP.ToString("0.####")); + //CV + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 50; + builder.Write(unCV.ToString("0.####")); + //SV + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 50; + builder.Write(unSV.ToString("0.####")); + //CPI + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 50; + builder.Write(unCPI.ToString("0.####")); + //SPI + builder.InsertCell(); + builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; + builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 + builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 + builder.CellFormat.Width = 50; + builder.Write(unSPI.ToString("0.####")); + builder.EndRow(); + b++; + } + a++; } - a++; + #endregion + doc.Save(newUrl); + string fileName = Path.GetFileName(newUrl); + FileInfo info = new FileInfo(newUrl); + long fileSize = info.Length; + Response.Clear(); + Response.ContentType = "application/x-zip-compressed"; + Response.AddHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8)); + Response.AddHeader("Content-Length", fileSize.ToString()); + Response.TransmitFile(newUrl, 0, fileSize); + Response.Flush(); + Response.Close(); + File.Delete(newUrl); + } + else + { + ShowNotify("没有数据,无法导出!", MessageBoxIcon.Warning); } - #endregion - doc.Save(newUrl); - string fileName = Path.GetFileName(newUrl); - FileInfo info = new FileInfo(newUrl); - long fileSize = info.Length; - Response.Clear(); - Response.ContentType = "application/x-zip-compressed"; - Response.AddHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8)); - Response.AddHeader("Content-Length", fileSize.ToString()); - Response.TransmitFile(newUrl, 0, fileSize); - Response.Flush(); - Response.Close(); - File.Delete(newUrl); } } else { - ShowNotify("请选择月份", MessageBoxIcon.Warning); + ShowNotify("请选择月份!", MessageBoxIcon.Warning); } } #endregion diff --git a/SGGL/FineUIPro.Web/JDGL/CostAnalysis/JDReport.aspx.designer.cs b/SGGL/FineUIPro.Web/JDGL/CostAnalysis/JDReport.aspx.designer.cs index 8591a6ef..ec25aaac 100644 --- a/SGGL/FineUIPro.Web/JDGL/CostAnalysis/JDReport.aspx.designer.cs +++ b/SGGL/FineUIPro.Web/JDGL/CostAnalysis/JDReport.aspx.designer.cs @@ -202,22 +202,22 @@ namespace FineUIPro.Web.JDGL.CostAnalysis { protected global::FineUIPro.GroupPanel GroupPanel5; /// - /// Form5 控件。 + /// Grid5 控件。 /// /// /// 自动生成的字段。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// - protected global::FineUIPro.Form Form5; + protected global::FineUIPro.Grid Grid5; /// - /// txt5 控件。 + /// lblPageIndex 控件。 /// /// /// 自动生成的字段。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// - protected global::FineUIPro.TextArea txt5; + protected global::System.Web.UI.WebControls.Label lblPageIndex; /// /// Window1 控件。 diff --git a/SGGL/FineUIPro.Web/JDGL/WBS/CostControlEdit.aspx b/SGGL/FineUIPro.Web/JDGL/WBS/CostControlEdit.aspx index 8af67647..9bd9910e 100644 --- a/SGGL/FineUIPro.Web/JDGL/WBS/CostControlEdit.aspx +++ b/SGGL/FineUIPro.Web/JDGL/WBS/CostControlEdit.aspx @@ -24,6 +24,11 @@ + + + + + diff --git a/SGGL/FineUIPro.Web/JDGL/WBS/CostControlEdit.aspx.cs b/SGGL/FineUIPro.Web/JDGL/WBS/CostControlEdit.aspx.cs index 95f72ddd..d9922bba 100644 --- a/SGGL/FineUIPro.Web/JDGL/WBS/CostControlEdit.aspx.cs +++ b/SGGL/FineUIPro.Web/JDGL/WBS/CostControlEdit.aspx.cs @@ -20,6 +20,7 @@ namespace FineUIPro.Web.JDGL.WBS LoadData(); string id = Request.Params["Id"]; string operating = Request.Params["operating"]; + BLL.EquipmentMaterialTypeService.InitEquipmentMaterialTypeDownList(this.drpEquipmentMaterialType,true); if (operating == "add") { @@ -31,6 +32,10 @@ namespace FineUIPro.Web.JDGL.WBS { this.txtCostControlCode.Text = costControl.CostControlCode; this.txtCostControlName.Text = costControl.CostControlName; + if (!string.IsNullOrEmpty(costControl.EquipmentMaterialTypeId)) + { + this.drpEquipmentMaterialType.SelectedValue = costControl.EquipmentMaterialTypeId; + } this.txtUnit.Text = costControl.Unit; //if (costControl.TotalNum != null) //{ @@ -68,6 +73,10 @@ namespace FineUIPro.Web.JDGL.WBS Model.WBS_CostControl costControl = new WBS_CostControl(); costControl.CostControlCode = txtCostControlCode.Text.Trim(); costControl.CostControlName = txtCostControlName.Text.Trim(); + if (this.drpEquipmentMaterialType.SelectedValue != BLL.Const._Null) + { + costControl.EquipmentMaterialTypeId = this.drpEquipmentMaterialType.SelectedValue; + } costControl.ProjectId = wbsSet.ProjectId; costControl.WbsSetId = wbsSet.WbsSetId; costControl.Unit = txtUnit.Text.Trim(); @@ -99,6 +108,10 @@ namespace FineUIPro.Web.JDGL.WBS } costControl.CostControlCode = txtCostControlCode.Text.Trim(); costControl.CostControlName = txtCostControlName.Text.Trim(); + if (this.drpEquipmentMaterialType.SelectedValue != BLL.Const._Null) + { + costControl.EquipmentMaterialTypeId = this.drpEquipmentMaterialType.SelectedValue; + } costControl.Unit = txtUnit.Text.Trim(); //costControl.TotalNum = Funs.GetNewDecimal(txtTotalNum.Text.Trim()); //costControl.RealPrice = Funs.GetNewDecimal(txtRealPrice.Text.Trim()); diff --git a/SGGL/FineUIPro.Web/JDGL/WBS/CostControlEdit.aspx.designer.cs b/SGGL/FineUIPro.Web/JDGL/WBS/CostControlEdit.aspx.designer.cs index 447e2c9c..66e728d1 100644 --- a/SGGL/FineUIPro.Web/JDGL/WBS/CostControlEdit.aspx.designer.cs +++ b/SGGL/FineUIPro.Web/JDGL/WBS/CostControlEdit.aspx.designer.cs @@ -57,6 +57,15 @@ namespace FineUIPro.Web.JDGL.WBS { /// protected global::FineUIPro.TextBox txtCostControlName; + /// + /// drpEquipmentMaterialType 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.DropDownList drpEquipmentMaterialType; + /// /// txtUnit 控件。 /// diff --git a/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigType.aspx b/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigType.aspx new file mode 100644 index 00000000..c0ebe760 --- /dev/null +++ b/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigType.aspx @@ -0,0 +1,114 @@ +<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="EquipmentMaterialBigType.aspx.cs" Inherits="FineUIPro.Web.JDGL.WBS.EquipmentMaterialBigType" %> + + + + + +设备材料大类 + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%-- + --%> + + + + + + + diff --git a/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigType.aspx.cs b/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigType.aspx.cs new file mode 100644 index 00000000..4360301a --- /dev/null +++ b/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigType.aspx.cs @@ -0,0 +1,182 @@ +using System; +using System.Collections.Generic; +using System.Data; +using System.Data.SqlClient; +using System.Linq; +using System.Web; +using System.Web.UI; +using System.Web.UI.WebControls; +using BLL; + +namespace FineUIPro.Web.JDGL.WBS +{ + public partial class EquipmentMaterialBigType : PageBase + { + protected void Page_Load(object sender, EventArgs e) + { + if (!IsPostBack) + { + GetButtonPower(); + ddlPageSize.SelectedValue = Grid1.PageSize.ToString(); + + // 绑定表格 + BindGrid(); + btnNew.OnClientClick = Window1.GetShowReference("EquipmentMaterialBigTypeEdit.aspx") + "return false;"; + } + } + /// + /// 绑定数据 + /// + + public void BindGrid() + { + DataTable tb = BindData(); + Grid1.RecordCount = tb.Rows.Count; + tb = GetFilteredTable(Grid1.FilteredData, tb); + var table = this.GetPagedDataTable(Grid1, tb); + + Grid1.DataSource = table; + Grid1.DataBind(); + } + + + protected DataTable BindData() + { + string strSql = @"select EquipmentMaterialBigTypeId,EquipmentMaterialBigTypeCode,EquipmentMaterialBigTypeName,Remark from [dbo].[WBS_EquipmentMaterialBigType] where 1=1 "; + + List listStr = new List(); + if (!string.IsNullOrEmpty(this.txtEquipmentMaterialBigTypeCode.Text.Trim())) + { + strSql += " AND EquipmentMaterialBigTypeCode like @EquipmentMaterialBigTypeCode"; + listStr.Add(new SqlParameter("@EquipmentMaterialBigTypeCode", "%" + this.txtEquipmentMaterialBigTypeCode.Text.Trim() + "%")); + } + if (!string.IsNullOrEmpty(this.txtEquipmentMaterialBigTypeName.Text.Trim())) + { + strSql += " AND EquipmentMaterialBigTypeName like @EquipmentMaterialBigTypeName"; + listStr.Add(new SqlParameter("@EquipmentMaterialBigTypeName", "%" + this.txtEquipmentMaterialBigTypeName.Text.Trim() + "%")); + } + SqlParameter[] parameter = listStr.ToArray(); + DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter); + return tb; + } + protected void btnMenuModify_Click(object sender, EventArgs e) + { + EditData(); + } + + protected void btnMenuDel_Click(object sender, EventArgs e) + { + if (Grid1.SelectedRowIndexArray.Length > 0) + { + foreach (int rowIndex in Grid1.SelectedRowIndexArray) + { + string rowID = Grid1.DataKeys[rowIndex][0].ToString(); + BLL.EquipmentMaterialBigTypeService.DeleteEquipmentMaterialBigTypeById(rowID); + } + + BindGrid(); + ShowNotify("删除数据成功!", MessageBoxIcon.Success); + } + } + + /// + /// 编辑数据方法 + /// + private void EditData() + { + + if (Grid1.SelectedRowIndexArray.Length == 0) + { + Alert.ShowInTop("请至少选择一条记录", MessageBoxIcon.Warning); + return; + } + if (this.btnMenuModify.Hidden) ////双击事件 编辑权限有:编辑页面,无:查看页面 或者状态是完成时查看页面 + { + PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("EquipmentMaterialBigTypeView.aspx?EquipmentMaterialBigTypeId={0}", Grid1.SelectedRowID, "查看 - "))); + } + else + { + PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("EquipmentMaterialBigTypeEdit.aspx?EquipmentMaterialBigTypeId={0}", Grid1.SelectedRowID, "编辑 - "))); + } + } + #region 获取按钮权限 + /// + /// 获取按钮权限 + /// + /// + /// + private void GetButtonPower() + { + if (Request.Params["value"] == "0") + { + return; + } + var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.EquipmentMaterialBigTypeMenuId); + if (buttonList.Count() > 0) + { + if (buttonList.Contains(BLL.Const.BtnAdd)) + { + this.btnNew.Hidden = false; + } + if (buttonList.Contains(BLL.Const.BtnModify)) + { + this.btnMenuModify.Hidden = false; + } + if (buttonList.Contains(BLL.Const.BtnDelete)) + { + this.btnMenuDel.Hidden = false; + } + } + } + #endregion + + + protected void btnSearch_Click(object sender, EventArgs e) + { + BindGrid(); + } + + protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e) + { + EditData(); + } + + + protected void btnMenuView_Click(object sender, EventArgs e) + { + if (Grid1.SelectedRowIndexArray.Length == 0) + { + Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning); + return; + } + PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("EquipmentMaterialBigTypeView.aspx?EquipmentMaterialBigTypeId={0}", Grid1.SelectedRowID, "查看 - "))); + } + + protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e) + { + BindGrid(); + } + + protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e) + { + Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue); + BindGrid(); + } + /// + /// 重置 + /// + /// + /// + protected void btnRset_Click(object sender, EventArgs e) + { + txtEquipmentMaterialBigTypeCode.Text = ""; + txtEquipmentMaterialBigTypeName.Text = ""; + BindGrid(); + } + + protected void Window1_Close(object sender, WindowCloseEventArgs e) + { + BindGrid(); + } + } +} \ No newline at end of file diff --git a/SGGL/FineUIPro.Web/DocManage/DocFind.aspx.designer.cs b/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigType.aspx.designer.cs similarity index 79% rename from SGGL/FineUIPro.Web/DocManage/DocFind.aspx.designer.cs rename to SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigType.aspx.designer.cs index a4995dc6..00eaaf48 100644 --- a/SGGL/FineUIPro.Web/DocManage/DocFind.aspx.designer.cs +++ b/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigType.aspx.designer.cs @@ -7,13 +7,11 @@ // //------------------------------------------------------------------------------ -namespace FineUIPro.Web.DocManage -{ - - - public partial class DocFind - { - +namespace FineUIPro.Web.JDGL.WBS { + + + public partial class EquipmentMaterialBigType { + /// /// form1 控件。 /// @@ -22,7 +20,7 @@ namespace FineUIPro.Web.DocManage /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.HtmlControls.HtmlForm form1; - + /// /// PageManager1 控件。 /// @@ -31,7 +29,7 @@ namespace FineUIPro.Web.DocManage /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.PageManager PageManager1; - + /// /// Panel1 控件。 /// @@ -40,7 +38,7 @@ namespace FineUIPro.Web.DocManage /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Panel Panel1; - + /// /// Grid1 控件。 /// @@ -49,7 +47,7 @@ namespace FineUIPro.Web.DocManage /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Grid Grid1; - + /// /// Toolbar1 控件。 /// @@ -58,25 +56,25 @@ namespace FineUIPro.Web.DocManage /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Toolbar Toolbar1; - + /// - /// txtkeyword 控件。 + /// txtEquipmentMaterialBigTypeCode 控件。 /// /// /// 自动生成的字段。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// - protected global::FineUIPro.TextBox txtkeyword; - + protected global::FineUIPro.TextBox txtEquipmentMaterialBigTypeCode; + /// - /// ListFindType 控件。 + /// txtEquipmentMaterialBigTypeName 控件。 /// /// /// 自动生成的字段。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// - protected global::FineUIPro.RadioButtonList ListFindType; - + protected global::FineUIPro.TextBox txtEquipmentMaterialBigTypeName; + /// /// btnSearch 控件。 /// @@ -85,7 +83,25 @@ namespace FineUIPro.Web.DocManage /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Button btnSearch; - + + /// + /// btnRset 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnRset; + + /// + /// btnNew 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnNew; + /// /// lblPageIndex 控件。 /// @@ -94,7 +110,7 @@ namespace FineUIPro.Web.DocManage /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.WebControls.Label lblPageIndex; - + /// /// ToolbarSeparator1 控件。 /// @@ -103,7 +119,7 @@ namespace FineUIPro.Web.DocManage /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1; - + /// /// ToolbarText1 控件。 /// @@ -112,7 +128,7 @@ namespace FineUIPro.Web.DocManage /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.ToolbarText ToolbarText1; - + /// /// ddlPageSize 控件。 /// @@ -121,7 +137,7 @@ namespace FineUIPro.Web.DocManage /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList ddlPageSize; - + /// /// Window1 控件。 /// @@ -130,16 +146,7 @@ namespace FineUIPro.Web.DocManage /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Window Window1; - - /// - /// Window2 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.Window Window2; - + /// /// Menu1 控件。 /// @@ -148,14 +155,23 @@ namespace FineUIPro.Web.DocManage /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Menu Menu1; - + /// - /// btnMenuView 控件。 + /// btnMenuModify 控件。 /// /// /// 自动生成的字段。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// - protected global::FineUIPro.MenuButton btnMenuView; + protected global::FineUIPro.MenuButton btnMenuModify; + + /// + /// btnMenuDel 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.MenuButton btnMenuDel; } } diff --git a/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigTypeEdit.aspx b/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigTypeEdit.aspx new file mode 100644 index 00000000..acdf9858 --- /dev/null +++ b/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigTypeEdit.aspx @@ -0,0 +1,54 @@ +<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="EquipmentMaterialBigTypeEdit.aspx.cs" Inherits="FineUIPro.Web.JDGL.WBS.EquipmentMaterialBigTypeEdit" %> + + + + + +设备材料分类 + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigTypeEdit.aspx.cs b/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigTypeEdit.aspx.cs new file mode 100644 index 00000000..5ad5aad7 --- /dev/null +++ b/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigTypeEdit.aspx.cs @@ -0,0 +1,61 @@ +using BLL; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Web.UI; +using System.Web.UI.WebControls; + +namespace FineUIPro.Web.JDGL.WBS +{ + public partial class EquipmentMaterialBigTypeEdit : PageBase + { + protected void Page_Load(object sender, EventArgs e) + { + if (!IsPostBack) + { + this.btnClose.OnClientClick = ActiveWindow.GetHideReference(); + string EquipmentMaterialBigTypeId = Request.Params["EquipmentMaterialBigTypeId"]; + if (!string.IsNullOrEmpty(EquipmentMaterialBigTypeId)) + { + + Model.WBS_EquipmentMaterialBigType EquipmentMaterialBigType = BLL.EquipmentMaterialBigTypeService.GetEquipmentMaterialBigType(EquipmentMaterialBigTypeId); + if (EquipmentMaterialBigType != null) + { + this.txtEquipmentMaterialBigTypeCode.Text = EquipmentMaterialBigType.EquipmentMaterialBigTypeCode; + this.txtEquipmentMaterialBigTypeName.Text = EquipmentMaterialBigType.EquipmentMaterialBigTypeName; + this.txtRemark.Text = EquipmentMaterialBigType.Remark; + } + } + } + + } + + protected void btnSave_Click(object sender, EventArgs e) + { + SaveData(true); + } + + private void SaveData(bool b) + { + string EquipmentMaterialBigTypeId = Request.Params["EquipmentMaterialBigTypeId"]; + Model.WBS_EquipmentMaterialBigType EquipmentMaterialBigType = new Model.WBS_EquipmentMaterialBigType(); + EquipmentMaterialBigType.EquipmentMaterialBigTypeCode = this.txtEquipmentMaterialBigTypeCode.Text.Trim(); + EquipmentMaterialBigType.EquipmentMaterialBigTypeName = this.txtEquipmentMaterialBigTypeName.Text.Trim(); + EquipmentMaterialBigType.Remark = this.txtRemark.Text.Trim(); + if (!string.IsNullOrEmpty(EquipmentMaterialBigTypeId)) + { + EquipmentMaterialBigType.EquipmentMaterialBigTypeId = EquipmentMaterialBigTypeId; + BLL.EquipmentMaterialBigTypeService.UpdateEquipmentMaterialBigType(EquipmentMaterialBigType); + } + else + { + EquipmentMaterialBigType.EquipmentMaterialBigTypeId = SQLHelper.GetNewID(typeof(Model.WBS_EquipmentMaterialBigType)); + BLL.EquipmentMaterialBigTypeService.AddEquipmentMaterialBigType(EquipmentMaterialBigType); + + } + ShowNotify("保存成功!", MessageBoxIcon.Success); + PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference()); + } + } +} \ No newline at end of file diff --git a/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigTypeEdit.aspx.designer.cs b/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigTypeEdit.aspx.designer.cs new file mode 100644 index 00000000..e72ca44a --- /dev/null +++ b/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigTypeEdit.aspx.designer.cs @@ -0,0 +1,105 @@ +//------------------------------------------------------------------------------ +// <自动生成> +// 此代码由工具生成。 +// +// 对此文件的更改可能导致不正确的行为,如果 +// 重新生成代码,则所做更改将丢失。 +// +//------------------------------------------------------------------------------ + +namespace FineUIPro.Web.JDGL.WBS { + + + public partial class EquipmentMaterialBigTypeEdit { + + /// + /// form1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.HtmlControls.HtmlForm form1; + + /// + /// PageManager1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.PageManager PageManager1; + + /// + /// SimpleForm1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form SimpleForm1; + + /// + /// txtEquipmentMaterialBigTypeCode 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtEquipmentMaterialBigTypeCode; + + /// + /// txtEquipmentMaterialBigTypeName 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtEquipmentMaterialBigTypeName; + + /// + /// txtRemark 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtRemark; + + /// + /// Toolbar1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Toolbar Toolbar1; + + /// + /// hdCheckerId 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.HiddenField hdCheckerId; + + /// + /// btnSave 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnSave; + + /// + /// btnClose 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnClose; + } +} diff --git a/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigTypeView.aspx b/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigTypeView.aspx new file mode 100644 index 00000000..66059fd6 --- /dev/null +++ b/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigTypeView.aspx @@ -0,0 +1,54 @@ +<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="EquipmentMaterialBigTypeView.aspx.cs" Inherits="FineUIPro.Web.JDGL.WBS.EquipmentMaterialBigTypeView" %> + + + + + +设备材料分类 + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigTypeView.aspx.cs b/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigTypeView.aspx.cs new file mode 100644 index 00000000..2455d515 --- /dev/null +++ b/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigTypeView.aspx.cs @@ -0,0 +1,33 @@ +using BLL; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Web.UI; +using System.Web.UI.WebControls; + +namespace FineUIPro.Web.JDGL.WBS +{ + public partial class EquipmentMaterialBigTypeView : PageBase + { + protected void Page_Load(object sender, EventArgs e) + { + if (!IsPostBack) + { + this.btnClose.OnClientClick = ActiveWindow.GetHideReference(); + string EquipmentMaterialBigTypeId = Request.Params["EquipmentMaterialBigTypeId"]; + if (!string.IsNullOrEmpty(EquipmentMaterialBigTypeId)) + { + + Model.WBS_EquipmentMaterialBigType EquipmentMaterialBigType = BLL.EquipmentMaterialBigTypeService.GetEquipmentMaterialBigType(EquipmentMaterialBigTypeId); + if (EquipmentMaterialBigType != null) + { + this.txtEquipmentMaterialBigTypeCode.Text = EquipmentMaterialBigType.EquipmentMaterialBigTypeCode; + this.txtEquipmentMaterialBigTypeName.Text = EquipmentMaterialBigType.EquipmentMaterialBigTypeName; + this.txtRemark.Text = EquipmentMaterialBigType.Remark; + } + } + } + } + } +} \ No newline at end of file diff --git a/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigTypeView.aspx.designer.cs b/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigTypeView.aspx.designer.cs new file mode 100644 index 00000000..88d163b1 --- /dev/null +++ b/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialBigTypeView.aspx.designer.cs @@ -0,0 +1,105 @@ +//------------------------------------------------------------------------------ +// <自动生成> +// 此代码由工具生成。 +// +// 对此文件的更改可能导致不正确的行为,如果 +// 重新生成代码,则所做更改将丢失。 +// +//------------------------------------------------------------------------------ + +namespace FineUIPro.Web.JDGL.WBS { + + + public partial class EquipmentMaterialBigTypeView { + + /// + /// form1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.HtmlControls.HtmlForm form1; + + /// + /// PageManager1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.PageManager PageManager1; + + /// + /// SimpleForm1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form SimpleForm1; + + /// + /// txtEquipmentMaterialBigTypeCode 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtEquipmentMaterialBigTypeCode; + + /// + /// txtEquipmentMaterialBigTypeName 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtEquipmentMaterialBigTypeName; + + /// + /// txtRemark 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtRemark; + + /// + /// Toolbar1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Toolbar Toolbar1; + + /// + /// hdCheckerId 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.HiddenField hdCheckerId; + + /// + /// btnSave 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnSave; + + /// + /// btnClose 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnClose; + } +} diff --git a/SGGL/FineUIPro.Web/DocManage/DocFind.aspx b/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialType.aspx similarity index 61% rename from SGGL/FineUIPro.Web/DocManage/DocFind.aspx rename to SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialType.aspx index 09f3254c..93979e12 100644 --- a/SGGL/FineUIPro.Web/DocManage/DocFind.aspx +++ b/SGGL/FineUIPro.Web/JDGL/WBS/EquipmentMaterialType.aspx @@ -1,10 +1,10 @@ -<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="DocFind.aspx.cs" Inherits="FineUIPro.Web.DocManage.DocFind" %> +<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="EquipmentMaterialType.aspx.cs" Inherits="FineUIPro.Web.JDGL.WBS.EquipmentMaterialType" %> - 项目分项 +设备材料分类 @@ -14,31 +14,31 @@ ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch"> - - - - - - + + + - - <%-- + --%> + @@ -49,24 +49,22 @@ - - - - - - @@ -85,30 +83,25 @@ + - - -