From ca070d56cff3c5af2aa385c1bb5867adf9c3039e Mon Sep 17 00:00:00 2001 From: wendy <408182087@qq.com> Date: Sun, 28 Apr 2024 10:23:34 +0800 Subject: [PATCH 1/5] =?UTF-8?q?20240428=20=E7=BB=BC=E5=90=88=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E5=AF=BC=E5=87=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SGGL/BLL/Common/Const.cs | 41 +++- .../CQMS/Check/JointCheck.aspx.cs | 5 +- .../ConTechnologyDisclosure.aspx | 3 + .../ConTechnologyDisclosure.aspx.cs | 147 ++++++++++++ .../ConTechnologyDisclosure.aspx.designer.cs | 9 + .../CQMS/Comprehensive/DataReceivingDoc.aspx | 3 + .../Comprehensive/DataReceivingDoc.aspx.cs | 217 ++++++++++++++++++ .../DataReceivingDoc.aspx.designer.cs | 9 + .../Comprehensive/InspectionEquipment.aspx | 3 + .../Comprehensive/InspectionEquipment.aspx.cs | 203 +++++++++++++--- .../InspectionEquipment.aspx.designer.cs | 67 +++--- .../CQMS/Comprehensive/InspectionMachine.aspx | 3 + .../Comprehensive/InspectionMachine.aspx.cs | 182 +++++++++++++++ .../InspectionMachine.aspx.designer.cs | 63 ++--- .../CQMS/Comprehensive/InspectionPerson.aspx | 3 + .../Comprehensive/InspectionPerson.aspx.cs | 164 ++++++++++++- .../InspectionPerson.aspx.designer.cs | 67 +++--- .../CQMS/Comprehensive/TrainingRecords.aspx | 3 + .../Comprehensive/TrainingRecords.aspx.cs | 130 ++++++++++- .../TrainingRecords.aspx.designer.cs | 9 + .../File/Excel/CQMS/人员报验模板.xls | Bin 0 -> 19456 bytes .../File/Excel/CQMS/培训记录模板.xls | Bin 0 -> 19456 bytes .../File/Excel/CQMS/施工技术交底管理模板.xls | Bin 0 -> 19456 bytes .../File/Excel/CQMS/机具报验模板.xls | Bin 0 -> 19456 bytes .../File/Excel/CQMS/设备材料报验模板.xls | Bin 0 -> 19456 bytes .../File/Excel/CQMS/质量专项检查模版.xls | Bin 0 -> 19456 bytes .../File/Excel/CQMS/质量专项检查模版.xlsx | Bin 10196 -> 0 bytes .../Excel/CQMS/资料收发文登记记录模板.xls | Bin 0 -> 19968 bytes SGGL/FineUIPro.Web/Web.config | 2 +- 29 files changed, 1208 insertions(+), 125 deletions(-) create mode 100644 SGGL/FineUIPro.Web/File/Excel/CQMS/人员报验模板.xls create mode 100644 SGGL/FineUIPro.Web/File/Excel/CQMS/培训记录模板.xls create mode 100644 SGGL/FineUIPro.Web/File/Excel/CQMS/施工技术交底管理模板.xls create mode 100644 SGGL/FineUIPro.Web/File/Excel/CQMS/机具报验模板.xls create mode 100644 SGGL/FineUIPro.Web/File/Excel/CQMS/设备材料报验模板.xls create mode 100644 SGGL/FineUIPro.Web/File/Excel/CQMS/质量专项检查模版.xls delete mode 100644 SGGL/FineUIPro.Web/File/Excel/CQMS/质量专项检查模版.xlsx create mode 100644 SGGL/FineUIPro.Web/File/Excel/CQMS/资料收发文登记记录模板.xls diff --git a/SGGL/BLL/Common/Const.cs b/SGGL/BLL/Common/Const.cs index 453edb97..8ee4bfb6 100644 --- a/SGGL/BLL/Common/Const.cs +++ b/SGGL/BLL/Common/Const.cs @@ -3251,11 +3251,6 @@ namespace BLL /// public const string CQMS_TrainingRecordsTemplateUrl= "File\\Excel\\DataIn\\培训记录导入模板.xls"; - /// - /// 质量专项检查模板文件原始虚拟路径 - /// - public const string JointCheckTempUrl = "File\\Excel\\CQMS\\质量专项检查模版.xlsx"; - /// /// 设计交底导入模板文件原始虚拟路径 /// @@ -3301,6 +3296,42 @@ namespace BLL /// public const string ConTechnologyDisclosureTemUrl = "File\\Excel\\DataIn\\施工技术交底管理导入模板.xls"; + #region 导出模板 + /// + /// 质量专项检查模板文件原始虚拟路径 + /// + public const string JointCheckTempUrl = "File\\Excel\\CQMS\\质量专项检查模版.xls"; + + /// + /// 设备材料报验模板文件原始虚拟路径 + /// + public const string InspectionEquipmentTempUrl = "File\\Excel\\CQMS\\设备材料报验模板.xls"; + + /// + /// 人员报验模板文件原始虚拟路径 + /// + public const string InspectionPersonTempUrl = "File\\Excel\\CQMS\\人员报验模板.xls"; + + /// + /// 机具报验模板文件原始虚拟路径 + /// + public const string InspectionMachineTempUrl = "File\\Excel\\CQMS\\机具报验模板.xls"; + + /// + /// 资料收发文登记记录模板文件原始虚拟路径 + /// + public const string DataReceivingDocTempUrl = "File\\Excel\\CQMS\\资料收发文登记记录模板.xls"; + + /// + /// 培训记录模板文件原始虚拟路径 + /// + public const string TrainingRecordsTempUrl = "File\\Excel\\CQMS\\培训记录模板.xls"; + + /// + /// 施工技术交底模板文件原始虚拟路径 + /// + public const string ConTechnologyDisclosureTempUrl = "File\\Excel\\CQMS\\施工技术交底管理模板.xls"; + #endregion #endregion #region 绩效考核模板文件路径 diff --git a/SGGL/FineUIPro.Web/CQMS/Check/JointCheck.aspx.cs b/SGGL/FineUIPro.Web/CQMS/Check/JointCheck.aspx.cs index 34e2e611..bfc81e77 100644 --- a/SGGL/FineUIPro.Web/CQMS/Check/JointCheck.aspx.cs +++ b/SGGL/FineUIPro.Web/CQMS/Check/JointCheck.aspx.cs @@ -418,13 +418,14 @@ namespace FineUIPro.Web.CQMS.Check var lists = BLL.JointCheckService.GetDriverPlanByProjectId(this.CurrUser.LoginProjectId); if (lists != null) { - newUrl = uploadfilepath.Replace("质量专项检查模版.xlsx", "质量专项检查.xlsx"); + newUrl = uploadfilepath.Replace("质量专项检查模版.xls", "质量专项检查.xls"); File.Copy(uploadfilepath, newUrl); // 第一步:读取文件流 NPOI.SS.UserModel.IWorkbook workbook; using (FileStream stream = new FileStream(newUrl, FileMode.Open, FileAccess.Read)) { - workbook = new NPOI.XSSF.UserModel.XSSFWorkbook(stream); + //workbook = new NPOI.XSSF.UserModel.XSSFWorkbook(stream); + workbook = new NPOI.HSSF.UserModel.HSSFWorkbook(stream); } // 创建单元格样式 NPOI.SS.UserModel.ICellStyle cellStyle = workbook.CreateCellStyle(); diff --git a/SGGL/FineUIPro.Web/CQMS/Comprehensive/ConTechnologyDisclosure.aspx b/SGGL/FineUIPro.Web/CQMS/Comprehensive/ConTechnologyDisclosure.aspx index 45536c75..5cbee3b9 100644 --- a/SGGL/FineUIPro.Web/CQMS/Comprehensive/ConTechnologyDisclosure.aspx +++ b/SGGL/FineUIPro.Web/CQMS/Comprehensive/ConTechnologyDisclosure.aspx @@ -34,6 +34,9 @@ + + diff --git a/SGGL/FineUIPro.Web/CQMS/Comprehensive/ConTechnologyDisclosure.aspx.cs b/SGGL/FineUIPro.Web/CQMS/Comprehensive/ConTechnologyDisclosure.aspx.cs index ecbce6e2..7f8d0791 100644 --- a/SGGL/FineUIPro.Web/CQMS/Comprehensive/ConTechnologyDisclosure.aspx.cs +++ b/SGGL/FineUIPro.Web/CQMS/Comprehensive/ConTechnologyDisclosure.aspx.cs @@ -3,6 +3,7 @@ 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; @@ -230,6 +231,152 @@ namespace FineUIPro.Web.CQMS.Comprehensive } #endregion + #region 导出按钮 + /// 导出按钮 + /// + /// + /// + protected void btnOut_Click(object sender, EventArgs e) + { + string rootPath = Server.MapPath("~/"); + string initTemplatePath = Const.ConTechnologyDisclosureTempUrl; + string uploadfilepath = string.Empty; + string newUrl = string.Empty; + uploadfilepath = rootPath + initTemplatePath; + + var lists = (from x in Funs.DB.Comprehensive_ConTechnologyDisclosure + where x.ProjectId == this.CurrUser.LoginProjectId + select x); + if (sdrpUnitId.SelectedValue != BLL.Const._Null) + { + lists = lists.Where(x => x.UnitId == sdrpUnitId.SelectedValue); + } + if (this.drpProfessionalId.SelectedValue != BLL.Const._Null) + { + lists = lists.Where(x => x.CNProfessionalId == this.drpProfessionalId.SelectedValue); + } + if (!string.IsNullOrEmpty(this.txtCode.Text.Trim())) + { + lists = lists.Where(x => x.DisclosureCode.Contains(this.txtCode.Text.Trim())); + } + lists = lists.OrderBy(x => x.UnitId); + if (lists != null) + { + newUrl = uploadfilepath.Replace("施工技术交底管理模板.xls", "施工技术交底管理.xls"); + File.Copy(uploadfilepath, newUrl); + // 第一步:读取文件流 + NPOI.SS.UserModel.IWorkbook workbook; + using (FileStream stream = new FileStream(newUrl, FileMode.Open, FileAccess.Read)) + { + //workbook = new NPOI.XSSF.UserModel.XSSFWorkbook(stream); + workbook = new NPOI.HSSF.UserModel.HSSFWorkbook(stream); + } + // 创建单元格样式 + NPOI.SS.UserModel.ICellStyle cellStyle = workbook.CreateCellStyle(); + cellStyle.BorderTop = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center; + cellStyle.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center; + var font = workbook.CreateFont(); + font.FontHeightInPoints = 11; + cellStyle.SetFont(font); + NPOI.SS.UserModel.ICellStyle cellStyle0 = workbook.CreateCellStyle(); + cellStyle0.BorderTop = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle0.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle0.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle0.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle0.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center; + cellStyle0.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center; + var font0 = workbook.CreateFont(); + font0.FontHeightInPoints = 12; + font0.IsBold = true; + cellStyle0.SetFont(font0); + // 第二步:创建新数据行 + NPOI.SS.UserModel.ISheet sheet = workbook.GetSheetAt(0); + NPOI.SS.UserModel.IRow row = sheet.GetRow(0); + NPOI.SS.UserModel.ICell cell; + int i = 1; + foreach (var item in lists) + { + // 第二步:创建新数据行 + row = sheet.CreateRow(i); + // 添加数据 + cell = row.CreateCell(0); + cell.CellStyle = cellStyle; + string proName = string.Empty; + var cnp = BLL.CNProfessionalService.GetCNProfessional(item.CNProfessionalId); + if (cnp != null) + { + proName = cnp.ProfessionalName; + } + cell.SetCellValue(proName);//专业 + + cell = row.CreateCell(1); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.DisclosureCode);//交底文件编号 + + cell = row.CreateCell(2); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.DisclosureName);//交底施工方案 + + cell = row.CreateCell(3); + cell.CellStyle = cellStyle; + string unitName = string.Empty; + if (!string.IsNullOrEmpty(item.UnitId)) + { + unitName = BLL.UnitService.GetUnitNameByUnitId(item.UnitId); + } + cell.SetCellValue(unitName);//交底负责单位 + + cell = row.CreateCell(4); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.DisclosureMan);//交底人 + + cell = row.CreateCell(5); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.DisclosureDate.HasValue ? string.Format("{0:yyyy-MM-dd}", item.DisclosureDate) : "");//交底日期 + + cell = row.CreateCell(6); + cell.CellStyle = cellStyle; + string unitWork = string.Empty; + if (!string.IsNullOrEmpty(item.UnitWorkId)) + { + unitWork = ConvertUnitWork(item.UnitWorkId); + } + cell.SetCellValue(unitWork);//单位工程 + + cell = row.CreateCell(7); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.AttendMan);//参加人员 + i++; + } + // 第三步:写入文件流 + using (FileStream stream = new FileStream(newUrl, FileMode.Create, FileAccess.Write)) + { + workbook.Write(stream); + workbook.Close(); + } + 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 + { + Alert.ShowInTop("当前无记录,无法导出!", MessageBoxIcon.Warning); + } + } + #endregion + #region 获取按钮权限 /// /// 获取按钮权限 diff --git a/SGGL/FineUIPro.Web/CQMS/Comprehensive/ConTechnologyDisclosure.aspx.designer.cs b/SGGL/FineUIPro.Web/CQMS/Comprehensive/ConTechnologyDisclosure.aspx.designer.cs index 1170de41..428af81b 100644 --- a/SGGL/FineUIPro.Web/CQMS/Comprehensive/ConTechnologyDisclosure.aspx.designer.cs +++ b/SGGL/FineUIPro.Web/CQMS/Comprehensive/ConTechnologyDisclosure.aspx.designer.cs @@ -111,6 +111,15 @@ namespace FineUIPro.Web.CQMS.Comprehensive { /// protected global::FineUIPro.Button btnImport; + /// + /// btnOut 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnOut; + /// /// lblPageIndex 控件。 /// diff --git a/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDoc.aspx b/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDoc.aspx index 0a2e1e10..265b8472 100644 --- a/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDoc.aspx +++ b/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDoc.aspx @@ -34,6 +34,9 @@ + + diff --git a/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDoc.aspx.cs b/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDoc.aspx.cs index ca189fce..082d5b54 100644 --- a/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDoc.aspx.cs +++ b/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDoc.aspx.cs @@ -3,6 +3,7 @@ using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; +using System.IO; using System.Linq; namespace FineUIPro.Web.CQMS.Comprehensive @@ -320,5 +321,221 @@ namespace FineUIPro.Web.CQMS.Comprehensive } } #endregion + + #region 导出按钮 + /// 导出按钮 + /// + /// + /// + protected void btnOut_Click(object sender, EventArgs e) + { + string rootPath = Server.MapPath("~/"); + string initTemplatePath = Const.DataReceivingDocTempUrl; + string uploadfilepath = string.Empty; + string newUrl = string.Empty; + uploadfilepath = rootPath + initTemplatePath; + + var lists = (from x in Funs.DB.Comprehensive_DataReceivingDoc + where x.ProjectId == this.CurrUser.LoginProjectId + select x); + if (!string.IsNullOrEmpty(this.stxtFileCode.Text.Trim())) + { + lists = lists.Where(x => x.FileCode.Contains(stxtFileCode.Text.Trim())); + } + if (!string.IsNullOrEmpty(this.stxtFileName.Text.Trim())) + { + lists = lists.Where(x => x.FileName.Contains(this.stxtFileName.Text.Trim())); + } + lists = lists.OrderBy(x => x.FileCode); + if (lists != null) + { + newUrl = uploadfilepath.Replace("资料收发文登记记录模板.xls", "资料收发文登记记录.xls"); + File.Copy(uploadfilepath, newUrl); + // 第一步:读取文件流 + NPOI.SS.UserModel.IWorkbook workbook; + using (FileStream stream = new FileStream(newUrl, FileMode.Open, FileAccess.Read)) + { + //workbook = new NPOI.XSSF.UserModel.XSSFWorkbook(stream); + workbook = new NPOI.HSSF.UserModel.HSSFWorkbook(stream); + } + // 创建单元格样式 + NPOI.SS.UserModel.ICellStyle cellStyle = workbook.CreateCellStyle(); + cellStyle.BorderTop = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center; + cellStyle.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center; + var font = workbook.CreateFont(); + font.FontHeightInPoints = 11; + cellStyle.SetFont(font); + NPOI.SS.UserModel.ICellStyle cellStyle0 = workbook.CreateCellStyle(); + cellStyle0.BorderTop = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle0.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle0.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle0.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle0.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center; + cellStyle0.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center; + var font0 = workbook.CreateFont(); + font0.FontHeightInPoints = 12; + font0.IsBold = true; + cellStyle0.SetFont(font0); + // 第二步:创建新数据行 + NPOI.SS.UserModel.ISheet sheet = workbook.GetSheetAt(0); + NPOI.SS.UserModel.IRow row = sheet.GetRow(0); + NPOI.SS.UserModel.ICell cell; + int i = 1; + foreach (var item in lists) + { + // 第二步:创建新数据行 + row = sheet.CreateRow(i); + // 添加数据 + cell = row.CreateCell(0); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.ReceiveDate.HasValue ? string.Format("{0:yyyy-MM-dd}", item.ReceiveDate) : "");//日期 + + cell = row.CreateCell(1); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.FileCode);//文件号 + + cell = row.CreateCell(2); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.FileName);//文件名称 + + cell = row.CreateCell(3); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.FileType);//文件类别 + + cell = row.CreateCell(4); + cell.CellStyle = cellStyle; + string proName = string.Empty; + var cnp = BLL.CNProfessionalService.GetCNProfessional(item.CNProfessionalId); + if (cnp != null) + { + proName = cnp.ProfessionalName; + } + cell.SetCellValue(proName);//专业 + + cell = row.CreateCell(5); + cell.CellStyle = cellStyle; + string unitName = string.Empty; + if (!string.IsNullOrEmpty(item.SendUnit)) + { + unitName = BLL.UnitService.GetUnitNameByUnitId(item.SendUnit); + } + cell.SetCellValue(unitName);//发件单位 + + cell = row.CreateCell(6); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.SendMan);//发件人 + + cell = row.CreateCell(7); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.Copies.HasValue ? item.Copies.ToString() : "");//份数 + + cell = row.CreateCell(8); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.DocumentHandler);//文件处理人 + + cell = row.CreateCell(9); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.SendDate.HasValue ? string.Format("{0:yyyy-MM-dd}", item.SendDate) : "");//发出日期 + + cell = row.CreateCell(10); + cell.CellStyle = cellStyle; + string receiveUnitName = string.Empty; + if (!string.IsNullOrEmpty(item.ReceiveUnit)) + { + receiveUnitName = ConvertCarryUnit(item.ReceiveUnit); + } + cell.SetCellValue(receiveUnitName);//接收单位 + + cell = row.CreateCell(11); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.ReceiveMan);//接收人 + + cell = row.CreateCell(12); + cell.CellStyle = cellStyle; + string isR = string.Empty; + if (item.IsReply.HasValue) + { + if (item.IsReply == true) + { + isR = "是"; + } + else if (item.IsReply == false) + { + isR = "否"; + } + } + cell.SetCellValue(isR);//是否需回复 + + cell = row.CreateCell(13); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.ReturnWuhuangDate.HasValue ? string.Format("{0:yyyy-MM-dd}", item.ReturnWuhuangDate) : "");//返回五环日期 + + cell = row.CreateCell(14); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.RetrunWuhuangCopies.HasValue ? item.RetrunWuhuangCopies.ToString() : "");//返回五环份数 + + cell = row.CreateCell(15); + cell.CellStyle = cellStyle; + string issueToUnitName = string.Empty; + if (!string.IsNullOrEmpty(item.IssueToUnit)) + { + issueToUnitName = ConvertCarryUnit(item.IssueToUnit); + } + cell.SetCellValue(issueToUnitName);//下发至单位 + + cell = row.CreateCell(16); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.IssueCopies.HasValue ? item.IssueCopies.ToString() : "");//下发份数 + + cell = row.CreateCell(17); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.IssueUnitReceiver);//下发单位接收人 + + cell = row.CreateCell(18); + cell.CellStyle = cellStyle; + string isO = string.Empty; + if (item.IsOnFile.HasValue) + { + if (item.IsOnFile == true) + { + isO = "是"; + } + else if (item.IsOnFile == false) + { + isO = "否"; + } + } + cell.SetCellValue(isO);//是否存档 + + i++; + } + // 第三步:写入文件流 + using (FileStream stream = new FileStream(newUrl, FileMode.Create, FileAccess.Write)) + { + workbook.Write(stream); + workbook.Close(); + } + 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 + { + Alert.ShowInTop("当前无记录,无法导出!", MessageBoxIcon.Warning); + } + } + #endregion } } \ No newline at end of file diff --git a/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDoc.aspx.designer.cs b/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDoc.aspx.designer.cs index f68eca34..fd1c5666 100644 --- a/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDoc.aspx.designer.cs +++ b/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDoc.aspx.designer.cs @@ -102,6 +102,15 @@ namespace FineUIPro.Web.CQMS.Comprehensive { /// protected global::FineUIPro.Button btnImport; + /// + /// btnOut 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnOut; + /// /// lblPageIndex 控件。 /// diff --git a/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionEquipment.aspx b/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionEquipment.aspx index 20d6a9c5..25ed15df 100644 --- a/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionEquipment.aspx +++ b/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionEquipment.aspx @@ -39,6 +39,9 @@ + + diff --git a/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionEquipment.aspx.cs b/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionEquipment.aspx.cs index 82481b82..7046a41d 100644 --- a/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionEquipment.aspx.cs +++ b/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionEquipment.aspx.cs @@ -4,6 +4,7 @@ using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; +using System.IO; using System.Linq; namespace FineUIPro.Web.Comprehensive { @@ -242,33 +243,7 @@ namespace FineUIPro.Web.Comprehensive } #endregion - - //public string ConvertState(object value) - //{ - // var status = 0; - // int.TryParse(value.ToString(), out status); - - // if (status == 0) - // { - // return "待审核"; - // } - // else if (status == 1) - // { - // return "合格"; - // } - // else if (status == 2) - // { - // return "驳回"; - // } - // else if (status == 3) - // { - // return "重报"; - // } - // return "待审核"; - //} - - - + #region 格式化字符串 public static string ConvertState(object Status) { if (Status != null) @@ -297,8 +272,182 @@ namespace FineUIPro.Web.Comprehensive return "编制"; } + #endregion + #region 导出按钮 + /// 导出按钮 + /// + /// + /// + protected void btnOut_Click(object sender, EventArgs e) + { + string rootPath = Server.MapPath("~/"); + string initTemplatePath = Const.InspectionEquipmentTempUrl; + string uploadfilepath = string.Empty; + string newUrl = string.Empty; + uploadfilepath = rootPath + initTemplatePath; + var lists = (from x in Funs.DB.Comprehensive_InspectionEquipment + where x.ProjectId == this.CurrUser.LoginProjectId + select x); + if (this.sdrpUnitId.SelectedValue != BLL.Const._Null) + { + lists = lists.Where(x => x.UnitId == this.sdrpUnitId.SelectedValue); + } + if (!string.IsNullOrEmpty(this.stxtInspectionName.Text.Trim())) + { + lists = lists.Where(x => x.InspectionName.Contains(this.stxtInspectionName.Text.Trim())); + } + if (!string.IsNullOrEmpty(txtStarTime.Text.Trim())) + { + lists = lists.Where(x => x.InspectionDate >= Funs.GetNewDateTime(txtStarTime.Text.Trim())); + } + if (!string.IsNullOrEmpty(txtEndTime.Text.Trim())) + { + lists = lists.Where(x => x.InspectionDate <= Funs.GetNewDateTime(txtEndTime.Text.Trim())); + } + lists = lists.OrderBy(x => x.UnitId); + if (lists != null) + { + newUrl = uploadfilepath.Replace("设备材料报验模板.xls", "设备材料报验.xls"); + File.Copy(uploadfilepath, newUrl); + // 第一步:读取文件流 + NPOI.SS.UserModel.IWorkbook workbook; + using (FileStream stream = new FileStream(newUrl, FileMode.Open, FileAccess.Read)) + { + //workbook = new NPOI.XSSF.UserModel.XSSFWorkbook(stream); + workbook = new NPOI.HSSF.UserModel.HSSFWorkbook(stream); + } + // 创建单元格样式 + NPOI.SS.UserModel.ICellStyle cellStyle = workbook.CreateCellStyle(); + cellStyle.BorderTop = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center; + cellStyle.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center; + var font = workbook.CreateFont(); + font.FontHeightInPoints = 11; + cellStyle.SetFont(font); + NPOI.SS.UserModel.ICellStyle cellStyle0 = workbook.CreateCellStyle(); + cellStyle0.BorderTop = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle0.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle0.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle0.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle0.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center; + cellStyle0.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center; + var font0 = workbook.CreateFont(); + font0.FontHeightInPoints = 12; + font0.IsBold = true; + cellStyle0.SetFont(font0); + // 第二步:创建新数据行 + NPOI.SS.UserModel.ISheet sheet = workbook.GetSheetAt(0); + NPOI.SS.UserModel.IRow row = sheet.GetRow(0); + NPOI.SS.UserModel.ICell cell; + int i = 1; + foreach (var item in lists) + { + // 第二步:创建新数据行 + row = sheet.CreateRow(i); + // 添加数据 + cell = row.CreateCell(0); + cell.CellStyle = cellStyle; + cell.SetCellValue(BLL.UnitService.GetUnitNameByUnitId(item.UnitId));//报验单位 + + cell = row.CreateCell(1); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.InspectionCode);//报验编号 + + cell = row.CreateCell(2); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.EquipmentNO);//设备位号 + + cell = row.CreateCell(3); + cell.CellStyle = cellStyle; + var cnp = BLL.CNProfessionalService.GetCNProfessional(item.CNProfessionalId); + if (cnp != null) + { + cell.SetCellValue(cnp.ProfessionalName);//专业 + } + else + { + cell.SetCellValue(string.Empty);//专业 + } + + cell = row.CreateCell(4); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.InspectionName);//名称 + + cell = row.CreateCell(5); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.Specifications);//规格(范围) + + cell = row.CreateCell(6); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.Supplier);//供货厂商 + + cell = row.CreateCell(7); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.Counts);//本次数量 + + cell = row.CreateCell(8); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.Unit);//单位 + + cell = row.CreateCell(9); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.SamplingCount);//本次抽检数量 + + cell = row.CreateCell(10); + cell.CellStyle = cellStyle; + string r = string.Empty; + if (!string.IsNullOrEmpty(item.SamplingResult)) + { + if (item.SamplingResult == "1") + { + r = "合格"; + } + else if (item.SamplingResult == "2") + { + r = "不合格"; + } + } + cell.SetCellValue(r);//本次抽检结果 + + cell = row.CreateCell(11); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.InspectionDate.HasValue ? string.Format("{0:yyyy-MM-dd}", item.InspectionDate) : "");//报验日期 + + cell = row.CreateCell(12); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.UsedPlace);//拟使用部位 + + i++; + } + // 第三步:写入文件流 + using (FileStream stream = new FileStream(newUrl, FileMode.Create, FileAccess.Write)) + { + workbook.Write(stream); + workbook.Close(); + } + 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 + { + Alert.ShowInTop("当前无记录,无法导出!", MessageBoxIcon.Warning); + } + } + #endregion } diff --git a/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionEquipment.aspx.designer.cs b/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionEquipment.aspx.designer.cs index 594e3ac8..27b36933 100644 --- a/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionEquipment.aspx.designer.cs +++ b/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionEquipment.aspx.designer.cs @@ -7,13 +7,11 @@ // //------------------------------------------------------------------------------ -namespace FineUIPro.Web.Comprehensive -{ - - - public partial class InspectionEquipment - { - +namespace FineUIPro.Web.Comprehensive { + + + public partial class InspectionEquipment { + /// /// form1 控件。 /// @@ -22,7 +20,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.HtmlControls.HtmlForm form1; - + /// /// PageManager1 控件。 /// @@ -31,7 +29,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.PageManager PageManager1; - + /// /// Panel1 控件。 /// @@ -40,7 +38,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Panel Panel1; - + /// /// Grid1 控件。 /// @@ -49,7 +47,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Grid Grid1; - + /// /// ToolSearch 控件。 /// @@ -58,7 +56,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Toolbar ToolSearch; - + /// /// sdrpUnitId 控件。 /// @@ -67,7 +65,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList sdrpUnitId; - + /// /// stxtInspectionName 控件。 /// @@ -76,7 +74,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox stxtInspectionName; - + /// /// txtStarTime 控件。 /// @@ -85,7 +83,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DatePicker txtStarTime; - + /// /// Label1 控件。 /// @@ -94,7 +92,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Label Label1; - + /// /// txtEndTime 控件。 /// @@ -103,7 +101,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DatePicker txtEndTime; - + /// /// btnSearch 控件。 /// @@ -112,7 +110,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Button btnSearch; - + /// /// btnNew 控件。 /// @@ -121,7 +119,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Button btnNew; - + /// /// btnImport 控件。 /// @@ -130,7 +128,16 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Button btnImport; - + + /// + /// btnOut 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnOut; + /// /// lblPageIndex 控件。 /// @@ -139,7 +146,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.WebControls.Label lblPageIndex; - + /// /// txtStatus 控件。 /// @@ -148,7 +155,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.WebControls.Label txtStatus; - + /// /// lbtnFileUrl 控件。 /// @@ -157,7 +164,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.WebControls.LinkButton lbtnFileUrl; - + /// /// ToolbarText1 控件。 /// @@ -166,7 +173,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.ToolbarText ToolbarText1; - + /// /// ddlPageSize 控件。 /// @@ -175,7 +182,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList ddlPageSize; - + /// /// Window1 控件。 /// @@ -184,7 +191,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Window Window1; - + /// /// Window2 控件。 /// @@ -193,7 +200,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Window Window2; - + /// /// WindowAtt 控件。 /// @@ -202,7 +209,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Window WindowAtt; - + /// /// Menu1 控件。 /// @@ -211,7 +218,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Menu Menu1; - + /// /// btnMenuModify 控件。 /// @@ -220,7 +227,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.MenuButton btnMenuModify; - + /// /// btnMenuDel 控件。 /// diff --git a/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionMachine.aspx b/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionMachine.aspx index a04f93dd..e22ec66a 100644 --- a/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionMachine.aspx +++ b/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionMachine.aspx @@ -49,6 +49,9 @@ + + diff --git a/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionMachine.aspx.cs b/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionMachine.aspx.cs index d4b8fa5b..20e547d6 100644 --- a/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionMachine.aspx.cs +++ b/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionMachine.aspx.cs @@ -3,6 +3,7 @@ using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; +using System.IO; using System.Linq; namespace FineUIPro.Web.Comprehensive { @@ -295,5 +296,186 @@ namespace FineUIPro.Web.Comprehensive return "编制"; } + + #region 导出按钮 + /// 导出按钮 + /// + /// + /// + protected void btnOut_Click(object sender, EventArgs e) + { + string rootPath = Server.MapPath("~/"); + string initTemplatePath = Const.InspectionMachineTempUrl; + string uploadfilepath = string.Empty; + string newUrl = string.Empty; + uploadfilepath = rootPath + initTemplatePath; + + var lists = (from x in Funs.DB.Comprehensive_InspectionMachine + where x.ProjectId == this.CurrUser.LoginProjectId + select x); + if (this.sdrpUnitId.SelectedValue != BLL.Const._Null) + { + lists = lists.Where(x => x.UnitId == this.sdrpUnitId.SelectedValue); + } + if (sdrpCNProfessional.SelectedValue != BLL.Const._Null) + { + lists = lists.Where(x => x.CNProfessionalId == this.sdrpCNProfessional.SelectedValue); + } + if (sdrpType.SelectedValue != "") + { + lists = lists.Where(x => x.InspectionType == this.sdrpType.SelectedValue); + } + lists = lists.OrderBy(x => x.UnitId); + if (lists != null) + { + newUrl = uploadfilepath.Replace("机具报验模板.xls", "机具报验.xls"); + File.Copy(uploadfilepath, newUrl); + // 第一步:读取文件流 + NPOI.SS.UserModel.IWorkbook workbook; + using (FileStream stream = new FileStream(newUrl, FileMode.Open, FileAccess.Read)) + { + //workbook = new NPOI.XSSF.UserModel.XSSFWorkbook(stream); + workbook = new NPOI.HSSF.UserModel.HSSFWorkbook(stream); + } + // 创建单元格样式 + NPOI.SS.UserModel.ICellStyle cellStyle = workbook.CreateCellStyle(); + cellStyle.BorderTop = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center; + cellStyle.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center; + var font = workbook.CreateFont(); + font.FontHeightInPoints = 11; + cellStyle.SetFont(font); + NPOI.SS.UserModel.ICellStyle cellStyle0 = workbook.CreateCellStyle(); + cellStyle0.BorderTop = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle0.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle0.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle0.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle0.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center; + cellStyle0.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center; + var font0 = workbook.CreateFont(); + font0.FontHeightInPoints = 12; + font0.IsBold = true; + cellStyle0.SetFont(font0); + // 第二步:创建新数据行 + NPOI.SS.UserModel.ISheet sheet = workbook.GetSheetAt(0); + NPOI.SS.UserModel.IRow row = sheet.GetRow(0); + NPOI.SS.UserModel.ICell cell; + int i = 1; + foreach (var item in lists) + { + // 第二步:创建新数据行 + row = sheet.CreateRow(i); + // 添加数据 + cell = row.CreateCell(0); + cell.CellStyle = cellStyle; + cell.SetCellValue(BLL.UnitService.GetUnitNameByUnitId(item.UnitId));//报验单位 + + cell = row.CreateCell(1); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.InspectionMachineCode);//报验编号 + + cell = row.CreateCell(2); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.InspectionMachineName);//名称 + + cell = row.CreateCell(3); + cell.CellStyle = cellStyle; + string proName = string.Empty; + var cnp = BLL.CNProfessionalService.GetCNProfessional(item.CNProfessionalId); + if (cnp != null) + { + proName = cnp.ProfessionalName; + } + cell.SetCellValue(proName);//专业 + + cell = row.CreateCell(4); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.InspectionType);//类型 + + cell = row.CreateCell(5); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.SpecificationModel);//规格型号 + + cell = row.CreateCell(6); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.NextTestDate.HasValue ? string.Format("{0:yyyy-MM-dd}", item.NextTestDate) : "");//下次检验日期 + + cell = row.CreateCell(7); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.TestCycle);//检验周期 + + cell = row.CreateCell(8); + cell.CellStyle = cellStyle; + string isV = string.Empty; + if(item.IsVerification.HasValue) + { + if (item.IsVerification==true) + { + isV = "是"; + } + else if(item.IsVerification == false) + { + isV = "否"; + } + } + cell.SetCellValue(isV);//是否在校验期内 + + cell = row.CreateCell(9); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.InspectionDate.HasValue ? string.Format("{0:yyyy-MM-dd}", item.InspectionDate) : "");//报验日期 + + cell = row.CreateCell(10); + cell.CellStyle = cellStyle; + string isO = string.Empty; + if (item.IsOnSite.HasValue)//是否在场 + { + if (item.IsOnSite == true) + { + isO = "是"; + } + else if (item.IsOnSite == false) + { + isO = "否"; + } + } + cell.SetCellValue(isO);//是否在校验期内 + + cell = row.CreateCell(11); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.UnitsCount.HasValue ? item.UnitsCount.ToString() : "");//台数 + + cell = row.CreateCell(12); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.LeaveDate.HasValue ? string.Format("{0:yyyy-MM-dd}", item.LeaveDate) : "");//离场时间 + + i++; + } + // 第三步:写入文件流 + using (FileStream stream = new FileStream(newUrl, FileMode.Create, FileAccess.Write)) + { + workbook.Write(stream); + workbook.Close(); + } + 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 + { + Alert.ShowInTop("当前无记录,无法导出!", MessageBoxIcon.Warning); + } + } + #endregion } } \ No newline at end of file diff --git a/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionMachine.aspx.designer.cs b/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionMachine.aspx.designer.cs index fcd8cd5f..5df0d290 100644 --- a/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionMachine.aspx.designer.cs +++ b/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionMachine.aspx.designer.cs @@ -7,13 +7,11 @@ // //------------------------------------------------------------------------------ -namespace FineUIPro.Web.Comprehensive -{ - - - public partial class InspectionMachine - { - +namespace FineUIPro.Web.Comprehensive { + + + public partial class InspectionMachine { + /// /// form1 控件。 /// @@ -22,7 +20,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.HtmlControls.HtmlForm form1; - + /// /// PageManager1 控件。 /// @@ -31,7 +29,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.PageManager PageManager1; - + /// /// Panel1 控件。 /// @@ -40,7 +38,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Panel Panel1; - + /// /// Grid1 控件。 /// @@ -49,7 +47,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Grid Grid1; - + /// /// ToolSearch 控件。 /// @@ -58,7 +56,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Toolbar ToolSearch; - + /// /// sdrpUnitId 控件。 /// @@ -67,7 +65,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList sdrpUnitId; - + /// /// sdrpCNProfessional 控件。 /// @@ -76,7 +74,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList sdrpCNProfessional; - + /// /// sdrpType 控件。 /// @@ -85,7 +83,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList sdrpType; - + /// /// btnSearch 控件。 /// @@ -94,7 +92,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Button btnSearch; - + /// /// btnNew 控件。 /// @@ -103,7 +101,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Button btnNew; - + /// /// btnImport 控件。 /// @@ -112,7 +110,16 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Button btnImport; - + + /// + /// btnOut 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnOut; + /// /// lblPageIndex 控件。 /// @@ -121,7 +128,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.WebControls.Label lblPageIndex; - + /// /// txtStatus 控件。 /// @@ -130,7 +137,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.WebControls.Label txtStatus; - + /// /// lbtnFileUrl 控件。 /// @@ -139,7 +146,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.WebControls.LinkButton lbtnFileUrl; - + /// /// ToolbarText1 控件。 /// @@ -148,7 +155,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.ToolbarText ToolbarText1; - + /// /// ddlPageSize 控件。 /// @@ -157,7 +164,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList ddlPageSize; - + /// /// Window1 控件。 /// @@ -166,7 +173,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Window Window1; - + /// /// Window2 控件。 /// @@ -175,7 +182,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Window Window2; - + /// /// WindowAtt 控件。 /// @@ -184,7 +191,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Window WindowAtt; - + /// /// Menu1 控件。 /// @@ -193,7 +200,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Menu Menu1; - + /// /// btnMenuModify 控件。 /// @@ -202,7 +209,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.MenuButton btnMenuModify; - + /// /// btnMenuDel 控件。 /// diff --git a/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionPerson.aspx b/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionPerson.aspx index a9bde66e..bf771998 100644 --- a/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionPerson.aspx +++ b/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionPerson.aspx @@ -46,6 +46,9 @@ + + diff --git a/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionPerson.aspx.cs b/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionPerson.aspx.cs index 2f30e7f4..7a66fa66 100644 --- a/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionPerson.aspx.cs +++ b/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionPerson.aspx.cs @@ -4,6 +4,7 @@ using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; +using System.IO; using System.Linq; namespace FineUIPro.Web.Comprehensive { @@ -363,6 +364,167 @@ namespace FineUIPro.Web.Comprehensive return "编制"; } - + #region 导出按钮 + /// 导出按钮 + /// + /// + /// + protected void btnOut_Click(object sender, EventArgs e) + { + string rootPath = Server.MapPath("~/"); + string initTemplatePath = Const.InspectionPersonTempUrl; + string uploadfilepath = string.Empty; + string newUrl = string.Empty; + uploadfilepath = rootPath + initTemplatePath; + + var lists = (from x in Funs.DB.Comprehensive_InspectionPerson + where x.ProjectId == this.CurrUser.LoginProjectId + select x); + if (this.sdrpUnitId.SelectedValue != BLL.Const._Null) + { + lists = lists.Where(x => x.UnitId == this.sdrpUnitId.SelectedValue); + } + if (sdrpPost.SelectedValue != BLL.Const._Null) + { + lists = lists.Where(x => x.PostId == this.sdrpPost.SelectedValue); + } + if (!string.IsNullOrEmpty(this.stxtPersonName.Text.Trim())) + { + lists = lists.Where(x => x.PersonName.Contains(this.stxtPersonName.Text.Trim())); + } + lists = lists.OrderBy(x => x.UnitId); + if (lists != null) + { + newUrl = uploadfilepath.Replace("人员报验模板.xls", "人员报验.xls"); + File.Copy(uploadfilepath, newUrl); + // 第一步:读取文件流 + NPOI.SS.UserModel.IWorkbook workbook; + using (FileStream stream = new FileStream(newUrl, FileMode.Open, FileAccess.Read)) + { + //workbook = new NPOI.XSSF.UserModel.XSSFWorkbook(stream); + workbook = new NPOI.HSSF.UserModel.HSSFWorkbook(stream); + } + // 创建单元格样式 + NPOI.SS.UserModel.ICellStyle cellStyle = workbook.CreateCellStyle(); + cellStyle.BorderTop = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center; + cellStyle.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center; + var font = workbook.CreateFont(); + font.FontHeightInPoints = 11; + cellStyle.SetFont(font); + NPOI.SS.UserModel.ICellStyle cellStyle0 = workbook.CreateCellStyle(); + cellStyle0.BorderTop = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle0.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle0.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle0.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle0.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center; + cellStyle0.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center; + var font0 = workbook.CreateFont(); + font0.FontHeightInPoints = 12; + font0.IsBold = true; + cellStyle0.SetFont(font0); + // 第二步:创建新数据行 + NPOI.SS.UserModel.ISheet sheet = workbook.GetSheetAt(0); + NPOI.SS.UserModel.IRow row = sheet.GetRow(0); + NPOI.SS.UserModel.ICell cell; + int i = 1; + foreach (var item in lists) + { + // 第二步:创建新数据行 + row = sheet.CreateRow(i); + // 添加数据 + cell = row.CreateCell(0); + cell.CellStyle = cellStyle; + cell.SetCellValue(BLL.UnitService.GetUnitNameByUnitId(item.UnitId));//报验单位 + + cell = row.CreateCell(1); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.InspectionPersonCode);//报验编号 + + cell = row.CreateCell(2); + cell.CellStyle = cellStyle; + string proName = string.Empty; + var cnp = BLL.CNProfessionalService.GetCNProfessional(item.CNProfessionalId); + if (cnp != null) + { + proName = cnp.ProfessionalName; + } + cell.SetCellValue(proName);//专业 + + cell = row.CreateCell(3); + cell.CellStyle = cellStyle; + string unitWork = string.Empty; + if (!string.IsNullOrEmpty(item.UnitWorkId)) + { + unitWork = ConvertUnitWork(item.UnitWorkId); + } + cell.SetCellValue(unitWork);//单位工程名称 + + cell = row.CreateCell(4); + cell.CellStyle = cellStyle; + string postName = string.Empty; + if (!string.IsNullOrEmpty(item.PostId)) + { + var post = BLL.PostService.GetPostById(item.PostId); + if (post!=null) + { + postName = post.PostName; + } + } + cell.SetCellValue(postName);//工种 + + cell = row.CreateCell(5); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.PersonName);//姓名 + + cell = row.CreateCell(6); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.CertificateNumber);//证书编号 + + cell = row.CreateCell(7); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.QualifiedProjectCode);//合格项目代号(级别) + + cell = row.CreateCell(8); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.ValidityDate.HasValue ? string.Format("{0:yyyy-MM-dd}", item.ValidityDate) : "");//有效期 + + cell = row.CreateCell(9); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.ApprovalTime.HasValue ? string.Format("{0:yyyy-MM-dd}", item.ApprovalTime) : "");//批准时间 + + cell = row.CreateCell(10); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.DepartureTime.HasValue ? string.Format("{0:yyyy-MM-dd}", item.DepartureTime) : "");//离场时间 + + i++; + } + // 第三步:写入文件流 + using (FileStream stream = new FileStream(newUrl, FileMode.Create, FileAccess.Write)) + { + workbook.Write(stream); + workbook.Close(); + } + 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 + { + Alert.ShowInTop("当前无记录,无法导出!", MessageBoxIcon.Warning); + } + } + #endregion } } \ No newline at end of file diff --git a/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionPerson.aspx.designer.cs b/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionPerson.aspx.designer.cs index 1929163a..065bfd78 100644 --- a/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionPerson.aspx.designer.cs +++ b/SGGL/FineUIPro.Web/CQMS/Comprehensive/InspectionPerson.aspx.designer.cs @@ -7,13 +7,11 @@ // //------------------------------------------------------------------------------ -namespace FineUIPro.Web.Comprehensive -{ - - - public partial class InspectionPerson - { - +namespace FineUIPro.Web.Comprehensive { + + + public partial class InspectionPerson { + /// /// form1 控件。 /// @@ -22,7 +20,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.HtmlControls.HtmlForm form1; - + /// /// PageManager1 控件。 /// @@ -31,7 +29,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.PageManager PageManager1; - + /// /// Panel1 控件。 /// @@ -40,7 +38,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Panel Panel1; - + /// /// Grid1 控件。 /// @@ -49,7 +47,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Grid Grid1; - + /// /// ToolSearch 控件。 /// @@ -58,7 +56,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Toolbar ToolSearch; - + /// /// sdrpUnitId 控件。 /// @@ -67,7 +65,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList sdrpUnitId; - + /// /// sdrpPost 控件。 /// @@ -76,7 +74,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList sdrpPost; - + /// /// stxtPersonName 控件。 /// @@ -85,7 +83,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox stxtPersonName; - + /// /// btnSearch 控件。 /// @@ -94,7 +92,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Button btnSearch; - + /// /// btnNew 控件。 /// @@ -103,7 +101,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Button btnNew; - + /// /// btnImport 控件。 /// @@ -112,7 +110,16 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Button btnImport; - + + /// + /// btnOut 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnOut; + /// /// lblPageIndex 控件。 /// @@ -121,7 +128,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.WebControls.Label lblPageIndex; - + /// /// Label2 控件。 /// @@ -130,7 +137,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.WebControls.Label Label2; - + /// /// txtStatus 控件。 /// @@ -139,7 +146,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.WebControls.Label txtStatus; - + /// /// lbtnFileUrl 控件。 /// @@ -148,7 +155,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.WebControls.LinkButton lbtnFileUrl; - + /// /// ToolbarText1 控件。 /// @@ -157,7 +164,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.ToolbarText ToolbarText1; - + /// /// ddlPageSize 控件。 /// @@ -166,7 +173,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList ddlPageSize; - + /// /// Window1 控件。 /// @@ -175,7 +182,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Window Window1; - + /// /// Window2 控件。 /// @@ -184,7 +191,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Window Window2; - + /// /// Window3 控件。 /// @@ -193,7 +200,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Window Window3; - + /// /// WindowAtt 控件。 /// @@ -202,7 +209,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Window WindowAtt; - + /// /// Menu1 控件。 /// @@ -211,7 +218,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Menu Menu1; - + /// /// btnMenuModify 控件。 /// @@ -220,7 +227,7 @@ namespace FineUIPro.Web.Comprehensive /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.MenuButton btnMenuModify; - + /// /// btnMenuDel 控件。 /// diff --git a/SGGL/FineUIPro.Web/CQMS/Comprehensive/TrainingRecords.aspx b/SGGL/FineUIPro.Web/CQMS/Comprehensive/TrainingRecords.aspx index 4b7d336d..a56facd0 100644 --- a/SGGL/FineUIPro.Web/CQMS/Comprehensive/TrainingRecords.aspx +++ b/SGGL/FineUIPro.Web/CQMS/Comprehensive/TrainingRecords.aspx @@ -30,6 +30,9 @@ + + diff --git a/SGGL/FineUIPro.Web/CQMS/Comprehensive/TrainingRecords.aspx.cs b/SGGL/FineUIPro.Web/CQMS/Comprehensive/TrainingRecords.aspx.cs index 27eeb729..c1afab99 100644 --- a/SGGL/FineUIPro.Web/CQMS/Comprehensive/TrainingRecords.aspx.cs +++ b/SGGL/FineUIPro.Web/CQMS/Comprehensive/TrainingRecords.aspx.cs @@ -3,6 +3,7 @@ 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; @@ -202,7 +203,134 @@ namespace FineUIPro.Web.CQMS.Comprehensive PageContext.RegisterStartupScript(Window2.GetShowReference(String.Format("TrainingRecordsDataIn.aspx", "导入 - "))); } #endregion - + + #region 导出按钮 + /// 导出按钮 + /// + /// + /// + protected void btnOut_Click(object sender, EventArgs e) + { + string rootPath = Server.MapPath("~/"); + string initTemplatePath = Const.TrainingRecordsTempUrl; + string uploadfilepath = string.Empty; + string newUrl = string.Empty; + uploadfilepath = rootPath + initTemplatePath; + + var lists = (from x in Funs.DB.Comprehensive_TrainingRecords + where x.ProjectId == this.CurrUser.LoginProjectId + select x); + if (drpCNProfessionalId.SelectedValue != BLL.Const._Null) + { + lists = lists.Where(x => x.CNProfessionalId == drpCNProfessionalId.SelectedValue); + } + if (!string.IsNullOrEmpty(this.txtTrainingContents.Text.Trim())) + { + lists = lists.Where(x => x.TrainingContents.Contains(this.txtTrainingContents.Text.Trim())); + } + if (lists != null) + { + newUrl = uploadfilepath.Replace("培训记录模板.xls", "培训记录.xls"); + File.Copy(uploadfilepath, newUrl); + // 第一步:读取文件流 + NPOI.SS.UserModel.IWorkbook workbook; + using (FileStream stream = new FileStream(newUrl, FileMode.Open, FileAccess.Read)) + { + //workbook = new NPOI.XSSF.UserModel.XSSFWorkbook(stream); + workbook = new NPOI.HSSF.UserModel.HSSFWorkbook(stream); + } + // 创建单元格样式 + NPOI.SS.UserModel.ICellStyle cellStyle = workbook.CreateCellStyle(); + cellStyle.BorderTop = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center; + cellStyle.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center; + var font = workbook.CreateFont(); + font.FontHeightInPoints = 11; + cellStyle.SetFont(font); + NPOI.SS.UserModel.ICellStyle cellStyle0 = workbook.CreateCellStyle(); + cellStyle0.BorderTop = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle0.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle0.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle0.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin; + cellStyle0.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center; + cellStyle0.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center; + var font0 = workbook.CreateFont(); + font0.FontHeightInPoints = 12; + font0.IsBold = true; + cellStyle0.SetFont(font0); + // 第二步:创建新数据行 + NPOI.SS.UserModel.ISheet sheet = workbook.GetSheetAt(0); + NPOI.SS.UserModel.IRow row = sheet.GetRow(0); + NPOI.SS.UserModel.ICell cell; + int i = 1; + foreach (var item in lists) + { + // 第二步:创建新数据行 + row = sheet.CreateRow(i); + // 添加数据 + cell = row.CreateCell(0); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.TrainingContents);//培训内容 + + cell = row.CreateCell(1); + cell.CellStyle = cellStyle; + string proName = string.Empty; + var cnp = BLL.CNProfessionalService.GetCNProfessional(item.CNProfessionalId); + if (cnp != null) + { + proName = cnp.ProfessionalName; + } + cell.SetCellValue(proName);//专业 + + cell = row.CreateCell(2); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.TrainingObject);//培训对象 + + cell = row.CreateCell(3); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.TrainingAddress);//培训地点 + + cell = row.CreateCell(4); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.Hours.HasValue ? item.Hours.ToString() : "");//课时(小时) + + cell = row.CreateCell(5); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.KeynoteSpeaker);//主讲人 + + cell = row.CreateCell(6); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.Remark);//备注 + i++; + } + // 第三步:写入文件流 + using (FileStream stream = new FileStream(newUrl, FileMode.Create, FileAccess.Write)) + { + workbook.Write(stream); + workbook.Close(); + } + 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 + { + Alert.ShowInTop("当前无记录,无法导出!", MessageBoxIcon.Warning); + } + } + #endregion + #region 获取按钮权限 /// /// 获取按钮权限 diff --git a/SGGL/FineUIPro.Web/CQMS/Comprehensive/TrainingRecords.aspx.designer.cs b/SGGL/FineUIPro.Web/CQMS/Comprehensive/TrainingRecords.aspx.designer.cs index 52402bab..e61880b2 100644 --- a/SGGL/FineUIPro.Web/CQMS/Comprehensive/TrainingRecords.aspx.designer.cs +++ b/SGGL/FineUIPro.Web/CQMS/Comprehensive/TrainingRecords.aspx.designer.cs @@ -102,6 +102,15 @@ namespace FineUIPro.Web.CQMS.Comprehensive { /// protected global::FineUIPro.Button btnImport; + /// + /// btnOut 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnOut; + /// /// lblPageIndex 控件。 /// diff --git a/SGGL/FineUIPro.Web/File/Excel/CQMS/人员报验模板.xls b/SGGL/FineUIPro.Web/File/Excel/CQMS/人员报验模板.xls new file mode 100644 index 0000000000000000000000000000000000000000..6d470aaf12720240545a14739c55ec5ec4ee97ea GIT binary patch literal 19456 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 F{Tr16hqV9z literal 0 HcmV?d00001 diff --git a/SGGL/FineUIPro.Web/File/Excel/CQMS/培训记录模板.xls b/SGGL/FineUIPro.Web/File/Excel/CQMS/培训记录模板.xls new file mode 100644 index 0000000000000000000000000000000000000000..df486a510c02722255bda08cd00f5af2da8ea097 GIT binary patch literal 19456 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 literal 0 HcmV?d00001 diff --git a/SGGL/FineUIPro.Web/File/Excel/CQMS/施工技术交底管理模板.xls b/SGGL/FineUIPro.Web/File/Excel/CQMS/施工技术交底管理模板.xls new file mode 100644 index 0000000000000000000000000000000000000000..3f5d4a887972e6077d59350bae05c07df41a7833 GIT binary patch literal 19456 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 literal 0 HcmV?d00001 diff --git a/SGGL/FineUIPro.Web/File/Excel/CQMS/机具报验模板.xls b/SGGL/FineUIPro.Web/File/Excel/CQMS/机具报验模板.xls new file mode 100644 index 0000000000000000000000000000000000000000..bc98e10fcc6857191b73dcac3b50bf6f8733f958 GIT binary patch literal 19456 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 literal 0 HcmV?d00001 diff --git a/SGGL/FineUIPro.Web/File/Excel/CQMS/质量专项检查模版.xls b/SGGL/FineUIPro.Web/File/Excel/CQMS/质量专项检查模版.xls new file mode 100644 index 0000000000000000000000000000000000000000..34652ff00f25aeffb35b4f26fc19890efa845138 GIT binary patch literal 19456 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 bQhwEc6{KMvvlwuYK!^AM)|u|b!^q3 diff --git a/SGGL/FineUIPro.Web/File/Excel/CQMS/资料收发文登记记录模板.xls b/SGGL/FineUIPro.Web/File/Excel/CQMS/资料收发文登记记录模板.xls new file mode 100644 index 0000000000000000000000000000000000000000..aff72b9485beb8f37772e6b4d2ebdbc7762c2741 GIT binary patch literal 19968 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 - + From 176ae6433be8dbd7fb10aec5a6715065dc4cee95 Mon Sep 17 00:00:00 2001 From: gaofei1985 <181547018@qq.com> Date: Sun, 28 Apr 2024 14:14:52 +0800 Subject: [PATCH 2/5] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SGGL/FineUIPro.Web/DataShow/GJSX.aspx | 12 +++++- SGGL/FineUIPro.Web/DataShow/GJSX.aspx.cs | 28 +++++-------- .../DataShow/GJSX.aspx.designer.cs | 18 ++++++++ .../DataShow/QualityPerson.aspx.cs | 4 +- SGGL/FineUIPro.Web/FineUIPro.Web.csproj.user | 2 +- SGGL/FineUIPro.Web/common/mainMenu_CQMS.aspx | 42 +++++++++++++------ .../common/mainMenu_CQMS.aspx.cs | 21 ++++++---- .../FineUIPro.Web/common/mainProject2.aspx.cs | 3 +- SGGL/FineUIPro.Web/common/main_new.aspx | 7 +++- SGGL/WebAPI/WebAPI.csproj.user | 2 +- 10 files changed, 96 insertions(+), 43 deletions(-) diff --git a/SGGL/FineUIPro.Web/DataShow/GJSX.aspx b/SGGL/FineUIPro.Web/DataShow/GJSX.aspx index f2e79433..6398c213 100644 --- a/SGGL/FineUIPro.Web/DataShow/GJSX.aspx +++ b/SGGL/FineUIPro.Web/DataShow/GJSX.aspx @@ -53,11 +53,21 @@ - + + + + + + + + + + + diff --git a/SGGL/FineUIPro.Web/DataShow/GJSX.aspx.cs b/SGGL/FineUIPro.Web/DataShow/GJSX.aspx.cs index 6cb52bff..a11485ee 100644 --- a/SGGL/FineUIPro.Web/DataShow/GJSX.aspx.cs +++ b/SGGL/FineUIPro.Web/DataShow/GJSX.aspx.cs @@ -188,14 +188,14 @@ namespace FineUIPro.Web.DataShow { var datetime1 = Funs.GetNewDateTime(this.txtStartTime.Text); var datetime2 = Funs.GetNewDateTime(this.txtStartTime.Text); - var getT = Funs.DB.ProcessControl_InspectionManagement.Where(x => x.ProjectId == projectId.ToString() && x.IsOnceQualified == true); + var getT = Funs.DB.GJSX.Where(x => x.ProjectId == projectId.ToString() && x.State == "0"); if (datetime1.HasValue) { - getT = getT.Where(x => x.InspectionDate >= datetime1); + getT = getT.Where(x => x.CreateDate >= datetime1); } if (datetime2.HasValue) { - getT = getT.Where(x => x.InspectionDate <= datetime2); + getT = getT.Where(x => x.CreateDate <= datetime2); } cout1 = getT.Count(); @@ -203,32 +203,26 @@ namespace FineUIPro.Web.DataShow return cout1; } - protected string Count4(object projectId) + protected int Count3(object projectId) { - string rate = string.Empty; + int cout1 = 0; if (projectId != null) { var datetime1 = Funs.GetNewDateTime(this.txtStartTime.Text); var datetime2 = Funs.GetNewDateTime(this.txtStartTime.Text); - var getALL = Funs.DB.ProcessControl_InspectionManagement.Where(x => x.ProjectId == projectId.ToString()); - + var getT = Funs.DB.GJSX.Where(x => x.ProjectId == projectId.ToString() && x.State != "0"); if (datetime1.HasValue) { - getALL = getALL.Where(x => x.CheckDate >= datetime1); + getT = getT.Where(x => x.CreateDate >= datetime1); } if (datetime2.HasValue) { - getALL = getALL.Where(x => x.CheckDate >= datetime1); - } - var getT = getALL.Where(x => x.ProjectId == projectId.ToString() && x.IsOnceQualified == true); - int coutall = getALL.Count(); - int cout0 = getT.Count(); - if (coutall > 0) - { - rate = Math.Round(cout0 * 1.0 / coutall * 100, 2).ToString(); + getT = getT.Where(x => x.CreateDate <= datetime2); } + + cout1 = getT.Count(); } - return rate; + return cout1; } } } \ No newline at end of file diff --git a/SGGL/FineUIPro.Web/DataShow/GJSX.aspx.designer.cs b/SGGL/FineUIPro.Web/DataShow/GJSX.aspx.designer.cs index 6624542d..5d8d8b9d 100644 --- a/SGGL/FineUIPro.Web/DataShow/GJSX.aspx.designer.cs +++ b/SGGL/FineUIPro.Web/DataShow/GJSX.aspx.designer.cs @@ -120,6 +120,24 @@ namespace FineUIPro.Web.DataShow { /// protected global::System.Web.UI.WebControls.Label Label2; + ///

+ /// Label1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.WebControls.Label Label1; + + /// + /// Label4 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.WebControls.Label Label4; + /// /// ToolbarSeparator1 控件。 /// diff --git a/SGGL/FineUIPro.Web/DataShow/QualityPerson.aspx.cs b/SGGL/FineUIPro.Web/DataShow/QualityPerson.aspx.cs index 18591b30..878dadc8 100644 --- a/SGGL/FineUIPro.Web/DataShow/QualityPerson.aspx.cs +++ b/SGGL/FineUIPro.Web/DataShow/QualityPerson.aspx.cs @@ -42,7 +42,7 @@ namespace FineUIPro.Web.DataShow ,Person.IdentityCard,WorkPost.WorkPostName,Person.Telephone,Person.IsOnJob,Person.Remark, '' as ProjectName " + @" FROM Person_CompanyBranchPerson AS Person " + @" LEFT JOIN Base_Unit AS Unit ON Unit.UnitId=Person.UnitId " - + @" LEFT JOIN Base_WorkPost AS WorkPost ON Person.WorkPostId=WorkPost.WorkPostId WHERE WorkPost.IsCQMS=1 "; + + @" LEFT JOIN Base_WorkPost AS WorkPost ON Person.WorkPostId=WorkPost.WorkPostId WHERE Person.IsOnJob=1 and WorkPost.IsCQMS=1 "; string UnitId = BLL.Const.UnitId_CWCEC; if (this.rbCom.SelectedValue == "1") { @@ -61,7 +61,7 @@ namespace FineUIPro.Web.DataShow FROM SitePerson_Person AS Person LEFT JOIN Base_Project AS Project ON Project.ProjectId=Person.ProjectId LEFT JOIN Base_Unit AS Unit ON Unit.UnitId=Person.UnitId - LEFT JOIN Base_WorkPost AS WorkPost ON Person.WorkPostId=WorkPost.WorkPostId WHERE WorkPost.IsCQMS=1 "; + LEFT JOIN Base_WorkPost AS WorkPost ON Person.WorkPostId=WorkPost.WorkPostId WHERE Person.IsUsed=1 and WorkPost.IsCQMS=1 "; if (this.drpProject.SelectedValue != Const._Null) { strSql += " AND Person.ProjectId = @ProjectId"; diff --git a/SGGL/FineUIPro.Web/FineUIPro.Web.csproj.user b/SGGL/FineUIPro.Web/FineUIPro.Web.csproj.user index 9e91deff..63ca13cc 100644 --- a/SGGL/FineUIPro.Web/FineUIPro.Web.csproj.user +++ b/SGGL/FineUIPro.Web/FineUIPro.Web.csproj.user @@ -1,7 +1,7 @@  - Debug|Any CPU + Release|Any CPU true false diff --git a/SGGL/FineUIPro.Web/common/mainMenu_CQMS.aspx b/SGGL/FineUIPro.Web/common/mainMenu_CQMS.aspx index f40f9d63..4e1a7268 100644 --- a/SGGL/FineUIPro.Web/common/mainMenu_CQMS.aspx +++ b/SGGL/FineUIPro.Web/common/mainMenu_CQMS.aspx @@ -617,7 +617,7 @@ data: two2.series[0].data, label: { //柱体上显示数值 show: true,//开启显示 - position: ['0%', '50%'],//在上方显示 + position: ['40%', '50%'],//在上方显示 textStyle: {//数值样式 fontSize: '20px', color: '#fff' @@ -635,7 +635,7 @@ data: two2.series[1].data, label: { //柱体上显示数值 show: true,//开启显示 - position: ['0%', '50%'],//在上方显示 + position: ['40%', '50%'],//在上方显示 textStyle: {//数值样式 fontSize: '20px', color: '#fff' @@ -739,12 +739,30 @@ type: 'bar', barGap: 0, data: three.series[0].data, + label: { //柱体上显示数值 + show: true,//开启显示 + position: ['50%', '30%'],//在上方显示 + textStyle: {//数值样式 + fontSize: '20px', + color: '#fff' + }, + formatter: '{c}', + }, itemStyle: { normal: { color: 'rgba(43,155,176,1)' } } }, { name: '焊接一次拍片合格率', type: 'bar', data: three.series[1].data, + label: { //柱体上显示数值 + show: true,//开启显示 + position: ['50%', '30%'],//在上方显示 + textStyle: {//数值样式 + fontSize: '20px', + color: '#fff' + }, + formatter: '{c}', + }, barCategoryGap: 10, itemStyle: { normal: { color: 'rgba(140,202,214, 1)' } } }] @@ -909,7 +927,7 @@ data: two.series[0].data, label: { //柱体上显示数值 show: true,//开启显示 - position: ['0%', '50%'],//在上方显示 + position: ['40%', '50%'],//在上方显示 textStyle: {//数值样式 fontSize: '20px', color: '#fff' @@ -926,7 +944,7 @@ data: two.series[1].data, label: { //柱体上显示数值 show: true,//开启显示 - position: ['0%', '50%'],//在上方显示 + position: ['40%', '50%'],//在上方显示 textStyle: {//数值样式 fontSize: '20px', color: '#fff' @@ -949,7 +967,7 @@ data: two2.series[0].data, label: { //柱体上显示数值 show: true,//开启显示 - position: ['0%', '50%'],//在上方显示 + position: ['40%', '50%'],//在上方显示 textStyle: {//数值样式 fontSize: '20px', color: '#fff' @@ -966,7 +984,7 @@ data: two2.series[1].data, label: { //柱体上显示数值 show: true,//开启显示 - position: ['0%', '50%'],//在上方显示 + position: ['40%', '50%'],//在上方显示 textStyle: {//数值样式 fontSize: '20px', color: '#fff' @@ -990,7 +1008,7 @@ data: two3.series[0].data, label: { //柱体上显示数值 show: true,//开启显示 - position: ['0%', '50%'],//在上方显示 + position: ['40%', '50%'],//在上方显示 textStyle: {//数值样式 fontSize: '20px', color: '#fff' @@ -1007,7 +1025,7 @@ data: two3.series[1].data, label: { //柱体上显示数值 show: true,//开启显示 - position: ['0%', '50%'],//在上方显示 + position: ['40%', '50%'],//在上方显示 textStyle: {//数值样式 fontSize: '20px', color: '#fff' @@ -1033,7 +1051,7 @@ itemStyle: { normal: { color: 'rgba(43,155,176,1)' } } }, { - name: '施工资料同步率', + name: '焊接一次拍片合格率', type: 'bar', data: three.series[1].data, itemStyle: { normal: { color: 'rgba(140,202,214, 1)' } } @@ -1048,7 +1066,7 @@ itemStyle: { normal: { color: 'rgba(43,155,176,1)' } } }, { - name: '施工资料同步率', + name: '焊接一次拍片合格率', type: 'bar', data: three2.series[1].data, itemStyle: { normal: { color: 'rgba(140,202,214, 1)' } } @@ -1065,7 +1083,7 @@ itemStyle: { normal: { color: 'rgba(43,155,176,1)' } } }, { - name: '施工资料同步率', + name: '焊接一次拍片合格率', type: 'bar', data: four.series[1].data, itemStyle: { normal: { color: 'rgba(140,202,214, 1)' } } @@ -1079,7 +1097,7 @@ itemStyle: { normal: { color: 'rgba(43,155,176,1)' } } }, { - name: '施工资料同步率', + name: '焊接一次拍片合格率', type: 'bar', data: four2.series[1].data, itemStyle: { normal: { color: 'rgba(140,202,214, 1)' } } diff --git a/SGGL/FineUIPro.Web/common/mainMenu_CQMS.aspx.cs b/SGGL/FineUIPro.Web/common/mainMenu_CQMS.aspx.cs index d781c6c9..7024aa15 100644 --- a/SGGL/FineUIPro.Web/common/mainMenu_CQMS.aspx.cs +++ b/SGGL/FineUIPro.Web/common/mainMenu_CQMS.aspx.cs @@ -24,8 +24,13 @@ namespace FineUIPro.Web { get { - List TotalCheckDetailOKLists = SpotCheckDetailService.GetTotalOKSpotCheckDetailListByTime1(CurrUser.LoginProjectId, DateTime.Now); - List TotalCheckDetailLists = SpotCheckDetailService.GetTotalAllSpotCheckDetailListByTime(CurrUser.LoginProjectId, DateTime.Now); + var db = new Model.SGGLDB(Funs.ConnString); + List TotalCheckDetailOKLists = (from x in db.ProcessControl_InspectionManagement + where x.ProjectId == this.CurrUser.LoginProjectId && x.IsOnceQualified == true + select x).ToList(); + List TotalCheckDetailLists = (from x in db.ProcessControl_InspectionManagement + where x.ProjectId == this.CurrUser.LoginProjectId + select x).ToList(); double result = 0; if (TotalCheckDetailOKLists.Count > 0 && TotalCheckDetailLists.Count > 0) { @@ -48,7 +53,7 @@ namespace FineUIPro.Web if (ndtList != null && !string.IsNullOrEmpty(ndtList.TotalRate)) { - result = Convert.ToDouble(ndtList.TotalRate) / 100; + result = Convert.ToDouble(ndtList.TotalRate); } return JsonConvert.SerializeObject(result); } @@ -60,12 +65,14 @@ namespace FineUIPro.Web { get { - List totalCheckLists = JointCheckDetailService.GetTotalJointCheckDetailListByTime(CurrUser.LoginProjectId, DateTime.Now); - int a = totalCheckLists.Where(x => x.OK == 1).Count(); + var checks = from x in Funs.DB.Check_CheckControl + where x.CheckDate <= DateTime.Now && x.ProjectId == CurrUser.LoginProjectId + select x; + int a = checks.Where(x => x.State == "7").Count(); double result = 0; - if (a > 0 && totalCheckLists.Count > 0) + if (a > 0 && checks.Count() > 0) { - var b = Convert.ToDouble(totalCheckLists.Count); + var b = Convert.ToDouble(checks.Count()); result = Convert.ToDouble(decimal.Round(decimal.Parse((a / b * 100).ToString()), 1)); } return JsonConvert.SerializeObject(result); diff --git a/SGGL/FineUIPro.Web/common/mainProject2.aspx.cs b/SGGL/FineUIPro.Web/common/mainProject2.aspx.cs index 0536faf2..fedb045c 100644 --- a/SGGL/FineUIPro.Web/common/mainProject2.aspx.cs +++ b/SGGL/FineUIPro.Web/common/mainProject2.aspx.cs @@ -105,7 +105,8 @@ namespace FineUIPro.Web.common divCqmsPxNum.InnerHtml = CqmsPxNum.ToString(); //施工审批量 - int sgspl = Funs.DB.Solution_CQMSConstructSolution.Where(x => x.ProjectId == ProjectId && x.State == Const.CQMSConstructSolution_Complete).Count(); + int sgspl = Funs.DB.Comprehensive_GeneralPlanApproval.Where(x => x.ProjectId == ProjectId && x.AuditMan != null && x.AuditMan != "" && x.ApprovalMan != null && x.ApprovalMan != "").Count() + + Funs.DB.Comprehensive_MajorPlanApproval.Where(x => x.ProjectId == ProjectId && x.AuditMan != null && x.AuditMan != "" && x.ApprovalMan != null && x.ApprovalMan != "").Count(); div_sgfaSpl.InnerHtml = sgspl.ToString(); GetJD(); //质量共检 diff --git a/SGGL/FineUIPro.Web/common/main_new.aspx b/SGGL/FineUIPro.Web/common/main_new.aspx index e6d60849..5797a135 100644 --- a/SGGL/FineUIPro.Web/common/main_new.aspx +++ b/SGGL/FineUIPro.Web/common/main_new.aspx @@ -96,7 +96,7 @@
质量管理人员
0
-
+
质量培训累计人员
0
@@ -439,6 +439,11 @@ window.open("../DataShow/QualityPerson.aspx") title = '管理人员数据' + }else if (type == 'ManagerTrainData') { + // $('iframe').attr('src', '../InterfacePopup/CQMS/QualityTraining.aspx') //质量培训人员数据 + window.open("../DataShow/QualityTraining.aspx") + + title = '质量培训人员数据' } else if (type == 'ProjectData') { // $('iframe').attr('src', '../InterfacePopup/CQMS/ManagerData.aspx') //管理人员数据 window.open("../DataShow/Project.aspx") diff --git a/SGGL/WebAPI/WebAPI.csproj.user b/SGGL/WebAPI/WebAPI.csproj.user index 5fe155da..bd497c6b 100644 --- a/SGGL/WebAPI/WebAPI.csproj.user +++ b/SGGL/WebAPI/WebAPI.csproj.user @@ -1,7 +1,7 @@  - Debug|Any CPU + Release|Any CPU true From 0aefcb309da1b442a4721061670e74c98dc72d6e Mon Sep 17 00:00:00 2001 From: wendy <408182087@qq.com> Date: Sun, 28 Apr 2024 15:51:10 +0800 Subject: [PATCH 3/5] =?UTF-8?q?20240428=20=E9=A1=B9=E7=9B=AE=E8=B4=A8?= =?UTF-8?q?=E9=87=8F=E5=91=A8=E6=8A=A5=EF=BC=88=E6=96=B0=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../版本日志/SGGLDB_WH_2024-04-28-bwj.sql | 19 + SGGL/BLL/Common/Const.cs | 14 +- .../CQMS/ManageReportNew/MonthReport.aspx.cs | 6 +- .../ManageReportNew/MonthReportEdit.aspx.cs | 1 + .../CQMS/ManageReportNew/WeekReport.aspx | 84 + .../CQMS/ManageReportNew/WeekReport.aspx.cs | 3204 +++++++++++++ .../WeekReport.aspx.designer.cs | 141 + .../CQMS/ManageReportNew/WeekReportEdit.aspx | 2067 +++++++++ .../ManageReportNew/WeekReportEdit.aspx.cs | 3948 +++++++++++++++++ .../WeekReportEdit.aspx.designer.cs | 1905 ++++++++ .../File/Word/CQMS/项目质量周报.doc | Bin 0 -> 65951 bytes SGGL/FineUIPro.Web/FineUIPro.Web.csproj | 16 + SGGL/FineUIPro.Web/common/Menu_CQMS.xml | 1 + SGGL/Model/Model.cs | 1811 +++++--- 14 files changed, 12477 insertions(+), 740 deletions(-) create mode 100644 DataBase/版本日志/SGGLDB_WH_2024-04-28-bwj.sql create mode 100644 SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReport.aspx create mode 100644 SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReport.aspx.cs create mode 100644 SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReport.aspx.designer.cs create mode 100644 SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReportEdit.aspx create mode 100644 SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReportEdit.aspx.cs create mode 100644 SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReportEdit.aspx.designer.cs create mode 100644 SGGL/FineUIPro.Web/File/Word/CQMS/项目质量周报.doc diff --git a/DataBase/版本日志/SGGLDB_WH_2024-04-28-bwj.sql b/DataBase/版本日志/SGGLDB_WH_2024-04-28-bwj.sql new file mode 100644 index 00000000..aa22a3e0 --- /dev/null +++ b/DataBase/版本日志/SGGLDB_WH_2024-04-28-bwj.sql @@ -0,0 +1,19 @@ + +insert into Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) +values('51ee983f-085e-4f02-b819-cab049d9cc27','Ŀܱ£','CQMS/ManageReportNew/WeekReport.aspx',15,'7ecf0229-8a0b-40ce-8b04-e556f7bd3394','Menu_CQMS',0,1,1) +go + insert into Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) + values('F30A37F8-A05E-4EFA-A577-26E909733C14','51ee983f-085e-4f02-b819-cab049d9cc27','',1) + insert into Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) + values('A214EF84-5C60-40EA-823C-DC1CB523A214','51ee983f-085e-4f02-b819-cab049d9cc27','޸',2) + insert into Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) + values('964847FA-521C-4BAF-B172-A5B2A06A18A8','51ee983f-085e-4f02-b819-cab049d9cc27','ɾ',3) + insert into Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) + values('256E7842-64DC-44EB-AAD5-A6DBC1DA31C8','51ee983f-085e-4f02-b819-cab049d9cc27','',4) + go + +alter table Report_WeekAndMonthReport_New add ReportType nvarchar(10) +go + +update Report_WeekAndMonthReport_New set ReportType='1'where ReportType is null +go diff --git a/SGGL/BLL/Common/Const.cs b/SGGL/BLL/Common/Const.cs index 8ee4bfb6..feaed4ac 100644 --- a/SGGL/BLL/Common/Const.cs +++ b/SGGL/BLL/Common/Const.cs @@ -3241,6 +3241,11 @@ namespace BLL ///
public const string MonthReportNewTemplateUrl = "File\\Word\\CQMS\\项目质量月报.doc"; + /// + /// 新项目质量周报模板文件原始虚拟路径 + /// + public const string WeekReportNewTemplateUrl = "File\\Word\\CQMS\\项目质量周报.doc"; + /// /// 资料收发文登记记录导入模板原始虚拟路径 /// @@ -3622,9 +3627,14 @@ namespace BLL public const string DivisionId15 = "BD0C9DC9-C621-497E-B947-A85F46D86AA4"; /// - /// 质量周报(新) + /// 质量月报(新) /// - public const string CQWeekReportNewMenuId = "4164BF9B-DA7C-4287-AC11-D1EB6A664F57"; + public const string MonthReportNewMenuId = "4164BF9B-DA7C-4287-AC11-D1EB6A664F57"; + + /// + /// 质量周报(新) + /// + public const string WeekReportNewMenuId = "51ee983f-085e-4f02-b819-cab049d9cc27"; #region 质量管理 #region 基础设置 diff --git a/SGGL/FineUIPro.Web/CQMS/ManageReportNew/MonthReport.aspx.cs b/SGGL/FineUIPro.Web/CQMS/ManageReportNew/MonthReport.aspx.cs index 17d17647..588b9c69 100644 --- a/SGGL/FineUIPro.Web/CQMS/ManageReportNew/MonthReport.aspx.cs +++ b/SGGL/FineUIPro.Web/CQMS/ManageReportNew/MonthReport.aspx.cs @@ -26,9 +26,9 @@ namespace FineUIPro.Web.CQMS.ManageReportNew public void BindGrid() { - string strSql = @"select Id, Sortid, StartDate, EndDate, ProjectId + string strSql = @"select Id, Sortid, StartDate, EndDate, ProjectId,ReportType from Report_WeekAndMonthReport_New C - where C.ProjectId = @ProjectId"; + where C.ReportType='1' AND C.ProjectId = @ProjectId"; List listStr = new List(); listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId)); SqlParameter[] parameter = listStr.ToArray(); @@ -129,7 +129,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew { return; } - var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.CQWeekReportNewMenuId); + var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.MonthReportNewMenuId); if (buttonList.Count() > 0) { if (buttonList.Contains(BLL.Const.BtnModify)) diff --git a/SGGL/FineUIPro.Web/CQMS/ManageReportNew/MonthReportEdit.aspx.cs b/SGGL/FineUIPro.Web/CQMS/ManageReportNew/MonthReportEdit.aspx.cs index 4ae5d19a..e1d30040 100644 --- a/SGGL/FineUIPro.Web/CQMS/ManageReportNew/MonthReportEdit.aspx.cs +++ b/SGGL/FineUIPro.Web/CQMS/ManageReportNew/MonthReportEdit.aspx.cs @@ -2751,6 +2751,7 @@ namespace FineUIPro.Web.CQMS.ManageReportNew Model.Report_WeekAndMonthReport_New report = new Model.Report_WeekAndMonthReport_New(); report.Id = ReportId; report.ProjectId = this.CurrUser.LoginProjectId; + report.ReportType = "1";//1.月报,2-周报 if (!string.IsNullOrEmpty(this.txtPeriod.Text.Trim())) { try diff --git a/SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReport.aspx b/SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReport.aspx new file mode 100644 index 00000000..bf510e6b --- /dev/null +++ b/SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReport.aspx @@ -0,0 +1,84 @@ +<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WeekReport.aspx.cs" Inherits="FineUIPro.Web.CQMS.ManageReportNew.WeekReport" %> + + + + + + + 项目质量周报(新) + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReport.aspx.cs b/SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReport.aspx.cs new file mode 100644 index 00000000..82c1a59c --- /dev/null +++ b/SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReport.aspx.cs @@ -0,0 +1,3204 @@ +using System; +using System.Collections.Generic; +using System.Data; +using System.Data.SqlClient; +using System.IO; +using System.Linq; +using System.Web; +using System.Web.UI; +using System.Web.UI.WebControls; +using Aspose.Words; +using Aspose.Words.Tables; +using BLL; + +namespace FineUIPro.Web.CQMS.ManageReportNew +{ + public partial class WeekReport : PageBase + { + protected void Page_Load(object sender, EventArgs e) + { + if (!IsPostBack) + { + BindGrid(); + GetButtonPower(); + } + } + + public void BindGrid() + { + string strSql = @"select Id, Sortid, StartDate, EndDate, ProjectId,ReportType + from Report_WeekAndMonthReport_New C + where C.ReportType='2' AND C.ProjectId = @ProjectId"; + List listStr = new List(); + listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId)); + SqlParameter[] parameter = listStr.ToArray(); + DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter); + Grid1.RecordCount = tb.Rows.Count; + tb = GetFilteredTable(Grid1.FilteredData, tb); + var table = this.GetPagedDataTable(Grid1, tb); + Grid1.DataSource = table; + Grid1.DataBind(); + } + + /// + /// 分页 + /// + /// + /// + protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e) + { + BindGrid(); + } + + /// + /// 格式化字符串 + /// + /// + /// + protected static string ConvertDate(object reportId) + { + string date = string.Empty; + if (reportId != null) + { + var r = BLL.WeekAndMonthReportNewService.Detail(reportId.ToString()); + if (r != null) + { + date = string.Format("{0:yyyy-MM-dd}", r.StartDate) + " 至 " + string.Format("{0:yyyy-MM-dd}", r.EndDate); + } + } + return date; + } + + /// + /// Grid行双击事件 + /// + /// + /// + protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e) + { + PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("WeekReportEdit.aspx?reportId=" + Grid1.SelectedRowID, "添加 - "))); + } + + + protected void btnNew_Click(object sender, EventArgs e) + { + PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("WeekReportEdit.aspx", "添加 - "))); + } + + protected void btnMenuModify_Click(object sender, EventArgs e) + { + PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("WeekReportEdit.aspx?reportId=" + Grid1.SelectedRowID, "添加 - "))); + } + + protected void btnMenuView_Click(object sender, EventArgs e) + { + PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("WeekReportEdit.aspx?view=view&reportId=" + Grid1.SelectedRowID, "查看 - "))); + } + + 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(); + //本周质量目标管理情况 + CqmsTargetService.Delete(rowID); + TextBoxContentService.Delete(rowID); + Report_CQMS_MonthReportItemService.DeleteReportItemByReportId(rowID); + WeekAndMonthReportNewService.Delete(rowID); + } + BindGrid(); + ShowNotify("删除数据成功!", MessageBoxIcon.Success); + } + } + + protected void Window1_Close(object sender, WindowCloseEventArgs e) + { + BindGrid(); + } + #region 获取按钮权限 + /// + /// 获取按钮权限 + /// + /// + /// + private void GetButtonPower() + { + if (Request.Params["value"] == BLL.Const._Null) + { + return; + } + var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.WeekReportNewMenuId); + if (buttonList.Count() > 0) + { + if (buttonList.Contains(BLL.Const.BtnModify)) + { + this.btnMenuModify.Hidden = false; + } + if (buttonList.Contains(BLL.Const.BtnDelete)) + { + this.btnMenuDel.Hidden = false; + } + } + } + #endregion + + #region 导出 + + /** + * 创建列值 + * @param value 要插入的值 + * @param doc Document对象 + * @return + */ + public static Cell CreateCell(String value, Document doc, double cellWidth, string cellMerge = "", string CenterPage = "") + { + Cell cell = new Cell(doc); + Paragraph p = new Paragraph(doc); + if (!string.IsNullOrEmpty(cellMerge)) + { + if (cellMerge == "0") + { + cell.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.First;//竖直方向合并的第一个单元格 + } + else + { + cell.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.Previous;//竖直方向合并的第一个单元格 + } + + } + else + { + cell.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; + } + if (!string.IsNullOrEmpty(CenterPage)) + { + //序号 + value = " " + value; + } + + + p.AppendChild(new Run(doc, value)); + + cell.CellFormat.Width = cellWidth; + + cell.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center; + + cell.AppendChild(p); + return cell; + } + + + protected void btnPrinter_Click(object sender, EventArgs e) + { + if (Grid1.SelectedRowIndexArray.Length == 0) + { + Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning); + return; + } + string Id = Grid1.SelectedRowID;//质量周报的主键 + try + { + 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.WeekReportNewTemplateUrl; + uploadfilepath = rootPath + initTemplatePath; + //newUrl = uploadfilepath.Replace(".doc", "(" + Funs.GetNewFileName() + ")" + ".doc"); + //名称XX项目质量周报第几期 + + //根据id获取质量月报主表数据 + var weekModel = db.Report_WeekAndMonthReport_New.FirstOrDefault(x => x.Id == Id); + var startDate = Convert.ToDateTime(weekModel.StartDate); + var endDate = Convert.ToDateTime(weekModel.EndDate); + //获取project + var pModel = db.Base_Project.FirstOrDefault(x => x.ProjectId == weekModel.ProjectId); + var urlHz = startDate.ToString("yyyyMMdd") + "-" + + endDate.ToString("yyyyMMdd"); + + newUrl = uploadfilepath.Replace("项目质量周报", pModel.ShortName + "项目质量周报(第" + weekModel.SortId + "期)" + urlHz); + + if (File.Exists(newUrl)) + { + File.Delete(newUrl); + } + File.Copy(uploadfilepath, newUrl); + //更新书签内容 + Document doc = new Aspose.Words.Document(newUrl); + DocumentBuilder builder = new DocumentBuilder(doc); + + + + #region 头部静态列 + //业主单位 + var unitsYz = (from x in db.Base_Unit + join y in db.Project_ProjectUnit + on x.UnitId equals y.UnitId + where y.ProjectId == this.CurrUser.LoginProjectId && y.UnitType == BLL.Const.ProjectUnitType_4 + orderby x.UnitName + select x).FirstOrDefault(); + + Bookmark bkmark = doc.Range.Bookmarks["username"]; + if (bkmark != null) + { + + if (unitsYz != null) + { + bkmark.Text = unitsYz.UnitName; + } + //var uModel = db.Sys_User.FirstOrDefault(x => x.UserId == weekModel.CreateMan); + //if (uModel!=null) + //{ + // bkmark.Text = uModel.UserName; + //} + } + + bkmark = doc.Range.Bookmarks["projectNo"]; + if (bkmark != null) + { + bkmark.Text = pModel.ProjectCode; + } + + bkmark = doc.Range.Bookmarks["createdate"]; + if (bkmark != null) + { + bkmark.Text = weekModel.CreateDate.ToString().Split(' ')[0].Replace('/', '.'); + } + + bkmark = doc.Range.Bookmarks["projectname"]; + if (bkmark != null) + { + bkmark.Text = pModel.ProjectName; + } + + bkmark = doc.Range.Bookmarks["quamanagername"]; + if (bkmark != null) + { + //var zlName = ""; + ////根据项目获取质量经理 + //var puserList = db.Project_ProjectUser.Where(x => x.ProjectId == weekModel.ProjectId && x.RoleId.Contains(BLL.Const.QAManager)).ToList(); + //foreach (var item in puserList) + //{ + // zlName+= db.Sys_User.FirstOrDefault(x => x.UserId == item.UserId).UserName+","; + //} + + var getPUser = Funs.DB.Project_ProjectUser.Where(x => x.ProjectId == weekModel.ProjectId); + ////质量经理 + var qa = getPUser.FirstOrDefault(x => x.RoleId.Contains(BLL.Const.QAManager)); + + bkmark.Text = db.Sys_User.FirstOrDefault(x => x.UserId == qa.UserId).UserName; + } + + bkmark = doc.Range.Bookmarks["reportAlldate"]; + //20XX年XX月XX日至20XX年XX月XX日 + if (bkmark != null) + { + var sdate = Convert.ToDateTime(weekModel.StartDate); + var edate = Convert.ToDateTime(weekModel.EndDate); + bkmark.Text = sdate.Year + "年" + sdate.Month + "月" + sdate.Day + "日至" + + edate.Year + "年" + edate.Month + "月" + edate.Day + "日"; + } + + bkmark = doc.Range.Bookmarks["reportindex"]; + if (bkmark != null) + { + bkmark.Text = weekModel.SortId; + } + + bkmark = doc.Range.Bookmarks["fromcode"]; + //fromcode,项目号-RM-PQM-顺序号 + if (bkmark != null) + { + bkmark.Text = pModel.ProjectCode + "-RM-PQM-" + weekModel.SortId; + } + #endregion + + #region 本月质量目标管理情况 + //获取word文档中的第二个表格 + int whileIndex = 1; + Aspose.Words.Tables.Table table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, 1, true); + bool isYm = true; + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + var cqrmTargetList = db.Report_CqmsTarget.Where(x => x.ReportId == Id).OrderBy(x => x.SortId); + int numberIndex = 1; + foreach (var item in cqrmTargetList) + { + //创建行 + Row row = new Row(doc); + row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.ProStage, doc, table.FirstRow.Cells[1].CellFormat.Width)); + row.Cells.Add(CreateCell(item.ProDescribe, doc, table.FirstRow.Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.TargetValue, doc, table.FirstRow.Cells[3].CellFormat.Width)); + row.Cells.Add(CreateCell(item.MonthPer, doc, table.FirstRow.Cells[4].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Remarks, doc, table.FirstRow.Cells[5].CellFormat.Width)); + table.Rows.Insert(numberIndex, row); + + numberIndex += 1; + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + + #endregion + + #region 本月主要工作内容 + var txtReportList = Funs.DB.Report_TextBoxContent.Where(x => x.ReportId == Id).ToList(); + + bkmark = doc.Range.Bookmarks["Content1"]; + if (bkmark != null) + { + bkmark.Text = txtReportList.FirstOrDefault(x => x.ContentType == "0").ContentText; + } + + bkmark = doc.Range.Bookmarks["Content2"]; + if (bkmark != null) + { + bkmark.Text = txtReportList.FirstOrDefault(x => x.ContentType == "1").ContentText; + } + + bkmark = doc.Range.Bookmarks["Content3"]; + if (bkmark != null) + { + bkmark.Text = txtReportList.FirstOrDefault(x => x.ContentType == "2").ContentText; + } + + bkmark = doc.Range.Bookmarks["Content8"]; + if (bkmark != null) + { + bkmark.Text = txtReportList.FirstOrDefault(x => x.ContentType == "8").ContentText; + } + + #endregion + + var ContuructionAllList = db.Report_Construction_Plan.Where(x => x.ReportId == Id).OrderBy(x => x.UnitOrMajor).ToList(); + + #region 3.施工方案及检验试验计划审批情况 + + #region 一般施工方案审批情况 + var ybsgfaList = ContuructionAllList.Where(x => x.ReType == "0").ToList(); + if (ybsgfaList.Count > 0) + { + isYm = true; + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 1; + int? num1 = 0, num2 = 0; + foreach (var item in ybsgfaList) + { + //创建行 + Row row = new Row(doc); + row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.UnitOrMajor, doc, table.FirstRow.Cells[1].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Quantity1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Quantity2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Remarks, doc, table.FirstRow.Cells[4].CellFormat.Width)); + table.Rows.Insert(numberIndex, row); + num1 += item.Quantity1; + num2 += item.Quantity2; + numberIndex += 1; + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + //创建合计 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.FirstRow.Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[4].CellFormat.Width)); + table.Rows.Insert(numberIndex, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + #endregion + + #region 危大工程方案审批情况 + var wdsgfaList = ContuructionAllList.Where(x => x.ReType == "1").ToList(); + if (wdsgfaList.Count > 0) + { + isYm = true; + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 1; + int? num1 = 0, num2 = 0, num3 = 0; + foreach (var item in wdsgfaList) + { + //创建行 + Row row = new Row(doc); + row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.UnitOrMajor, doc, table.FirstRow.Cells[1].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Quantity1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Quantity2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Quantity3.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Remarks, doc, table.FirstRow.Cells[5].CellFormat.Width)); + table.Rows.Insert(numberIndex, row); + num1 += item.Quantity1; + num2 += item.Quantity2; + num3 += item.Quantity3; + numberIndex += 1; + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + //创建合计 + //创建行 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.FirstRow.Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num3.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[5].CellFormat.Width)); + table.Rows.Insert(numberIndex, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + #endregion + + #region 质量控制点或检验试验计划(ITP)情况 + var itpList = ContuructionAllList.Where(x => x.ReType == "2").ToList(); + if (itpList.Count > 0) + { + isYm = true; + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 1; + int? num1 = 0, num2 = 0; + foreach (var item in itpList) + { + //创建行 + Row row = new Row(doc); + row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.UnitOrMajor, doc, table.FirstRow.Cells[1].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Quantity1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Quantity2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Remarks, doc, table.FirstRow.Cells[4].CellFormat.Width)); + table.Rows.Insert(numberIndex, row); + num1 += item.Quantity1; + num2 += item.Quantity2; + numberIndex += 1; + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + //创建合计 + //创建行 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.FirstRow.Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[4].CellFormat.Width)); + table.Rows.Insert(numberIndex, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + #endregion + + #endregion + + #region 设计交底管理情况 + var sjjdList = ContuructionAllList.Where(x => x.ReType == "3").ToList(); + if (sjjdList.Count > 0) + { + isYm = true; + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 1; + int? num1 = 0, num2 = 0; + foreach (var item in sjjdList) + { + //创建行 + Row row = new Row(doc); + row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.UnitOrMajor, doc, table.FirstRow.Cells[1].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Quantity1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Quantity2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Remarks, doc, table.FirstRow.Cells[4].CellFormat.Width)); + table.Rows.Insert(numberIndex, row); + num1 += item.Quantity1; + num2 += item.Quantity2; + numberIndex += 1; + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + //创建合计 + //创建行 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.FirstRow.Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[4].CellFormat.Width)); + table.Rows.Insert(numberIndex, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + #endregion + + #region 图纸会审管理情况 + var tzhsList = ContuructionAllList.Where(x => x.ReType == "4").ToList(); + if (tzhsList.Count > 0) + { + isYm = true; + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 1; + int? num1 = 0, num2 = 0; + foreach (var item in tzhsList) + { + //创建行 + Row row = new Row(doc); + row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.UnitOrMajor, doc, table.FirstRow.Cells[1].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Quantity1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Quantity2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Remarks, doc, table.FirstRow.Cells[4].CellFormat.Width)); + table.Rows.Insert(numberIndex, row); + num1 += item.Quantity1; + num2 += item.Quantity2; + numberIndex += 1; + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + //创建合计 + //创建行 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.FirstRow.Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[4].CellFormat.Width)); + table.Rows.Insert(numberIndex, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + #endregion + + #region 6.设计变更管理情况 + int Quantity1Sum = 0, Quantity2Sum = 0, Quantity3Sum = 0, Quantity4Sum = 0, Quantity5Sum = 0, Quantity6Sum = 0; + DateTime projectStartDate = Convert.ToDateTime("2015-01-01"); + List StatisticsList = new List(); + Model.Base_Project project = BLL.ProjectService.GetProjectByProjectId(this.CurrUser.LoginProjectId); + if (project != null) + { + if (project.StartDate != null) + { + projectStartDate = Convert.ToDateTime(project.StartDate); + } + } + int i = 1; + var cNProfessionals = from x in Funs.DB.Base_CNProfessional + where x.CNProfessionalId != BLL.Const.CNProfessionalConstructId +&& x.CNProfessionalId != BLL.Const.ComprehensiveId + orderby x.SortIndex + select x; + foreach (var item in cNProfessionals) + { + //专业下所有集合 + List totalManagementList = BLL.DesignChangeOrderService.GetDesignChangeOrderListByCNProfessionalIdAndDate(this.CurrUser.LoginProjectId, item.CNProfessionalId, projectStartDate, DateTime.Now); + //专业下当期集合 + List managementList = BLL.DesignChangeOrderService.GetDesignChangeOrderListByCNProfessionalIdAndDate(this.CurrUser.LoginProjectId, item.CNProfessionalId, startDate, endDate); + Model.CheckStatisc checkStatisc = new Model.CheckStatisc(); + checkStatisc.Num = i; + checkStatisc.WorkName = item.ProfessionalName; + checkStatisc.CheckNum = managementList.Count(); + checkStatisc.TotalCheckNum = totalManagementList.Count(); + checkStatisc.OKNum = managementList.Count(x => x.ApprovalDate != null); + checkStatisc.TotalOKNum = totalManagementList.Count(x => x.ApprovalDate != null); + checkStatisc.OneOKRate = managementList.Count(x => x.ImplementationFrontState == "已完成").ToString(); //当期完成数 + checkStatisc.TotalOneOKRate = totalManagementList.Count(x => x.ImplementationFrontState == "已完成").ToString(); //累计完成数 + + StatisticsList.Add(checkStatisc); + Quantity1Sum += checkStatisc.CheckNum; + Quantity2Sum += checkStatisc.TotalCheckNum; + Quantity3Sum += checkStatisc.OKNum; + Quantity4Sum += checkStatisc.TotalOKNum; + Quantity5Sum += Convert.ToInt32(checkStatisc.OneOKRate); + Quantity6Sum += Convert.ToInt32(checkStatisc.TotalOneOKRate); + } + if (StatisticsList.Count > 0) + { + isYm = true; + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 2; + //需要插入的table + foreach (var item in StatisticsList) + { + //创建行 + Row row = new Row(doc); + row.Cells.Add(CreateCell((numberIndex - 1).ToString(), doc, table.Rows[0].Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.WorkName, doc, table.Rows[0].Cells[1].CellFormat.Width)); + row.Cells.Add(CreateCell(item.CheckNum.ToString(), doc, table.Rows[1].Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.TotalCheckNum.ToString(), doc, table.Rows[1].Cells[3].CellFormat.Width)); + row.Cells.Add(CreateCell(item.OKNum.ToString(), doc, table.Rows[1].Cells[4].CellFormat.Width)); + row.Cells.Add(CreateCell(item.TotalOKNum.ToString(), doc, table.Rows[1].Cells[5].CellFormat.Width)); + row.Cells.Add(CreateCell(item.OneOKRate.ToString(), doc, table.Rows[1].Cells[6].CellFormat.Width)); + row.Cells.Add(CreateCell(item.TotalOneOKRate.ToString(), doc, table.Rows[1].Cells[7].CellFormat.Width)); + + table.Rows.Insert(numberIndex, row); + numberIndex += 1; + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + //创建合计 + //创建行 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.Rows[0].Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.Rows[0].Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(Quantity1Sum.ToString(), doc, table.Rows[1].Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(Quantity2Sum.ToString(), doc, table.Rows[1].Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(Quantity3Sum.ToString(), doc, table.Rows[1].Cells[4].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(Quantity4Sum.ToString(), doc, table.Rows[1].Cells[5].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(Quantity5Sum.ToString(), doc, table.Rows[1].Cells[6].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(Quantity6Sum.ToString(), doc, table.Rows[1].Cells[7].CellFormat.Width)); + + table.Rows.Insert(numberIndex, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + + } + + + + + #endregion + + #region 7.1合格焊工管理情况 + + Quantity1Sum = 0; Quantity2Sum = 0; Quantity3Sum = 0; Quantity4Sum = 0; Quantity5Sum = 0; Quantity6Sum = 0; + int Quantity7Sum = 0, Quantity8Sum = 0; + + List PassWelderList = new List(); + + if (project != null) + { + if (project.StartDate != null) + { + projectStartDate = Convert.ToDateTime(project.StartDate); + } + } + i = 1; + var units = from x in Funs.DB.Project_ProjectUnit + join y in Funs.DB.Base_Unit on x.UnitId equals y.UnitId + where x.ProjectId == this.CurrUser.LoginProjectId && x.UnitType == BLL.Const.ProjectUnitType_2 + orderby y.UnitCode + select new { x.UnitId, y.UnitName }; + + foreach (var item in units) + { + + var query = from c in db.Comprehensive_InspectionPerson + + join u in db.Base_Unit on c.UnitId equals u.UnitId into unitJoin + + from u in unitJoin.DefaultIfEmpty() + join cn in db.Base_CNProfessional on c.CNProfessionalId equals cn.CNProfessionalId into cnJoin + + from cn in cnJoin.DefaultIfEmpty() + join p in db.Base_Post on c.PostId equals p.PostId into postJoin + + from p in postJoin.DefaultIfEmpty() + where c.ProjectId == this.CurrUser.LoginProjectId && c.UnitId == item.UnitId + select new + + { + c.InspectionPersonId, + c.ProjectId, + u.UnitId, + u.UnitName, + c.PersonName, + c.ApprovalTime, + cn.ProfessionalName, + p.PostName + + }; + + //单位下所有集合 + // List totalWelderList = BLL.PersonManageService.GetWelderListByUnitId(this.CurrUser.LoginProjectId, item.UnitId); + //List welderList = BLL.PersonManageService.GetWelderListByUnitIdAndDate(this.CurrUser.LoginProjectId, item.UnitId, startDate, endDate); + var totalWelderList = query.ToList(); + var welderList = query + .Where(x => (x.ApprovalTime >= Convert.ToDateTime(startDate) && x.ApprovalTime <= Convert.ToDateTime(endDate))); + Model.PassWelderStatisc passWelderStatisc = new Model.PassWelderStatisc(); + passWelderStatisc.Num = i; + passWelderStatisc.UnitName = item.UnitName; + passWelderStatisc.PipeMountGuard = welderList.Count(x => x.ProfessionalName == "管道" && x.PostName == "焊工"); + passWelderStatisc.PipeTotal = totalWelderList.Count(x => x.ProfessionalName == "管道" && x.PostName == "焊工"); + passWelderStatisc.SteelStructureMountGuard = welderList.Count(x => x.ProfessionalName == "土建" && x.PostName == "焊工"); + passWelderStatisc.SteelStructureTotal = totalWelderList.Count(x => x.ProfessionalName == "土建" && x.PostName == "焊工"); + passWelderStatisc.EquipmentMountGuard = welderList.Count(x => x.ProfessionalName == "设备" && x.PostName == "焊工"); + passWelderStatisc.EquipmentTotal = totalWelderList.Count(x => x.ProfessionalName == "设备" && x.PostName == "焊工"); + passWelderStatisc.OtherMountGuard = welderList.Count(x => x.ProfessionalName != "管道" && x.ProfessionalName != "土建" && x.ProfessionalName != "设备" && x.PostName == "焊工"); + passWelderStatisc.OtherTotal = totalWelderList.Count(x => x.ProfessionalName != "管道" && x.ProfessionalName != "土建" && x.ProfessionalName != "设备" && x.PostName == "焊工"); + PassWelderList.Add(passWelderStatisc); + i++; + Quantity1Sum += passWelderStatisc.PipeMountGuard; + Quantity2Sum += passWelderStatisc.PipeTotal; + Quantity3Sum += passWelderStatisc.SteelStructureMountGuard; + Quantity4Sum += passWelderStatisc.SteelStructureTotal; + Quantity5Sum += passWelderStatisc.EquipmentMountGuard; + Quantity6Sum += passWelderStatisc.EquipmentTotal; + Quantity7Sum += passWelderStatisc.OtherMountGuard; + Quantity8Sum += passWelderStatisc.OtherTotal; + } + if (PassWelderList.Count > 0) + { + isYm = true; + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 2; + //需要插入的table + foreach (var item in PassWelderList) + { + //创建行 + Row row = new Row(doc); + row.Cells.Add(CreateCell((numberIndex - 1).ToString(), doc, table.Rows[0].Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.UnitName, doc, table.Rows[0].Cells[1].CellFormat.Width)); + + row.Cells.Add(CreateCell(item.PipeMountGuard.ToString(), doc, table.Rows[1].Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.PipeTotal.ToString(), doc, table.Rows[1].Cells[3].CellFormat.Width)); + row.Cells.Add(CreateCell(item.SteelStructureMountGuard.ToString(), doc, table.Rows[1].Cells[4].CellFormat.Width)); + row.Cells.Add(CreateCell(item.SteelStructureTotal.ToString(), doc, table.Rows[1].Cells[5].CellFormat.Width)); + row.Cells.Add(CreateCell(item.EquipmentMountGuard.ToString(), doc, table.Rows[1].Cells[6].CellFormat.Width)); + row.Cells.Add(CreateCell(item.EquipmentTotal.ToString(), doc, table.Rows[1].Cells[7].CellFormat.Width)); + row.Cells.Add(CreateCell(item.OtherMountGuard.ToString(), doc, table.Rows[1].Cells[8].CellFormat.Width)); + row.Cells.Add(CreateCell(item.OtherTotal.ToString(), doc, table.Rows[1].Cells[9].CellFormat.Width)); + + table.Rows.Insert(numberIndex, row); + numberIndex += 1; + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + //创建合计 + //创建行 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.Rows[0].Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.Rows[0].Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(Quantity1Sum.ToString(), doc, table.Rows[1].Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(Quantity2Sum.ToString(), doc, table.Rows[1].Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(Quantity3Sum.ToString(), doc, table.Rows[1].Cells[4].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(Quantity4Sum.ToString(), doc, table.Rows[1].Cells[5].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(Quantity5Sum.ToString(), doc, table.Rows[1].Cells[6].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(Quantity6Sum.ToString(), doc, table.Rows[1].Cells[7].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(Quantity7Sum.ToString(), doc, table.Rows[1].Cells[8].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(Quantity8Sum.ToString(), doc, table.Rows[1].Cells[9].CellFormat.Width)); + + table.Rows.Insert(numberIndex, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + + #endregion + + #region 7.2PQR/WPS报验情况 + var pqrList = ContuructionAllList.Where(x => x.ReType == "5").ToList(); + if (pqrList.Count > 0) + { + isYm = true; + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 1; + int? num1 = 0, num2 = 0; + foreach (var item in pqrList) + { + //创建行 + Row row = new Row(doc); + row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.UnitOrMajor, doc, table.FirstRow.Cells[1].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Quantity1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Quantity2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Remarks, doc, table.FirstRow.Cells[4].CellFormat.Width)); + table.Rows.Insert(numberIndex, row); + num1 += item.Quantity1; + num2 += item.Quantity2; + numberIndex += 1; + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + //创建合计 + //创建行 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.FirstRow.Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[4].CellFormat.Width)); + table.Rows.Insert(numberIndex, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + else + { + isYm = true; + numberIndex = 1; + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + //创建合计 + Row rowhj = new Row(doc); + double numcount0 = table.FirstRow.Cells[0].CellFormat.Width; + double numcount1 = table.FirstRow.Cells[1].CellFormat.Width; + double numcount2 = table.FirstRow.Cells[2].CellFormat.Width; + double numcount3 = table.FirstRow.Cells[3].CellFormat.Width; + double numcount4 = table.FirstRow.Cells[4].CellFormat.Width; + double numcount = numcount0 + numcount1 + numcount2 + numcount3 + numcount4; + rowhj.Cells.Add(CreateCell("暂无数据", doc, numcount)); + table.Rows.Insert(numberIndex + 1, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + #endregion + + #region 7.3无损检测管理情况 + var NondestructiveTestlist = new List(); + //加载所有施工分包单位 + units = from x in Funs.DB.Project_ProjectUnit + join y in Funs.DB.Base_Unit on x.UnitId equals y.UnitId + where x.ProjectId == this.CurrUser.LoginProjectId && (x.UnitType == BLL.Const.ProjectUnitType_2) + orderby y.UnitCode + select new { x.UnitId, y.UnitName }; + + int? totalNum0 = 0, totalNum1 = 0;//拍片数量合计 + + + foreach (var item in units) + { + int? num0 = 0, num1 = 0;//拍片数量小计 + + var query = from c in db.ProcessControl_NondestructiveTest_New + + join u in db.Base_Unit on c.UnitId equals u.UnitId + + + + where c.ProjectId == this.CurrUser.LoginProjectId && c.UnitId == item.UnitId + && c.CreateDate >= Convert.ToDateTime(startDate) && c.CreateDate <= Convert.ToDateTime(endDate) + + orderby c.CreateDate descending + + select new + + { + c.CreateDate, + c.ProjectId, + u.UnitId, + u.UnitName, + c.ProfessionalName, + c.MonthQuantity, + c.TotalQuantity, + c.MonthRate, + c.TotalRate + }; + if (query.ToList().Count > 0) + { + //加载工艺管道 + var gygdModel = query.FirstOrDefault(x => x.ProfessionalName == "工艺管道"); + var model = new Model.ProcessControl_NondestructiveTest_New(); + model.Id = Guid.NewGuid().ToString(); + model.CreateMan = item.UnitName;//用作存储施工单位名称 + model.ProfessionalName = "工艺管道"; + + if (gygdModel != null) + { + model.MonthQuantity = gygdModel.MonthQuantity; + model.TotalQuantity = gygdModel.TotalQuantity; + model.MonthRate = gygdModel.MonthRate + "%"; + model.TotalRate = gygdModel.TotalRate + "%"; + #region 小计和合计 + //小计 + num0 += gygdModel.MonthQuantity; + num1 += gygdModel.TotalQuantity; + + //合计 + totalNum0 += gygdModel.MonthQuantity; + totalNum1 += gygdModel.TotalQuantity; + + #endregion + NondestructiveTestlist.Add(model); + } + else + { + model.MonthQuantity = 0; + model.TotalQuantity = 0; + model.MonthRate = "0%"; + model.TotalRate = "0%"; + NondestructiveTestlist.Add(model); + } + + + + + //地管 + gygdModel = query.FirstOrDefault(x => x.ProfessionalName == "地管"); + model = new Model.ProcessControl_NondestructiveTest_New(); + model.Id = Guid.NewGuid().ToString(); + model.CreateMan = item.UnitName;//用作存储施工单位名称 + model.ProfessionalName = "地管"; + + if (gygdModel != null) + { + model.MonthQuantity = gygdModel.MonthQuantity; + model.TotalQuantity = gygdModel.TotalQuantity; + model.MonthRate = gygdModel.MonthRate + "%"; + model.TotalRate = gygdModel.TotalRate + "%"; + #region 小计和合计 + //小计 + num0 += gygdModel.MonthQuantity; + num1 += gygdModel.TotalQuantity; + + //合计 + totalNum0 += gygdModel.MonthQuantity; + totalNum1 += gygdModel.TotalQuantity; + + #endregion + NondestructiveTestlist.Add(model); + } + else + { + model.MonthQuantity = 0; + model.TotalQuantity = 0; + model.MonthRate = "0%"; + model.TotalRate = "0%"; + NondestructiveTestlist.Add(model); + } + + + //非标 + gygdModel = query.FirstOrDefault(x => x.ProfessionalName == "非标"); + model = new Model.ProcessControl_NondestructiveTest_New(); + model.Id = Guid.NewGuid().ToString(); + model.CreateMan = item.UnitName;//用作存储施工单位名称 + model.ProfessionalName = "非标"; + + if (gygdModel != null) + { + model.MonthQuantity = gygdModel.MonthQuantity; + model.TotalQuantity = gygdModel.TotalQuantity; + model.MonthRate = gygdModel.MonthRate + "%"; + model.TotalRate = gygdModel.TotalRate + "%"; + #region 小计和合计 + //小计 + num0 += gygdModel.MonthQuantity; + num1 += gygdModel.TotalQuantity; + + //合计 + totalNum0 += gygdModel.MonthQuantity; + totalNum1 += gygdModel.TotalQuantity; + + #endregion + NondestructiveTestlist.Add(model); + } + else + { + model.MonthQuantity = 0; + model.TotalQuantity = 0; + model.MonthRate = "0%"; + model.TotalRate = "0%"; + NondestructiveTestlist.Add(model); + } + //小计 + model = new Model.ProcessControl_NondestructiveTest_New(); + model.Id = Guid.NewGuid().ToString(); + model.CreateMan = item.UnitName;//用作存储施工单位名称 + model.ProfessionalName = "小计"; + model.MonthQuantity = num0; + model.TotalQuantity = num1; + model.MonthRate = ""; + model.TotalRate = ""; + NondestructiveTestlist.Add(model); + } + } + if (NondestructiveTestlist.Count > 0) + { + isYm = true; + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 1; + //需要插入的table + var Unitname = ""; + int pageCount = 1; + foreach (var item in NondestructiveTestlist) + { + + //创建行 + Row row = new Row(doc); + + + //如果是第一列,或者 + if (numberIndex == 1 || Unitname != item.CreateMan) + { + if (Unitname != item.CreateMan && numberIndex != 1) + { + pageCount += 1; + } + row.Cells.Add(CreateCell((pageCount).ToString(), doc, table.Rows[0].Cells[0].CellFormat.Width, "0", "1")); + row.Cells.Add(CreateCell(item.CreateMan, doc, table.Rows[0].Cells[1].CellFormat.Width, "0")); + + Unitname = item.CreateMan; + } + else + { + row.Cells.Add(CreateCell((pageCount).ToString(), doc, table.Rows[0].Cells[0].CellFormat.Width, "1", "1")); + row.Cells.Add(CreateCell(item.CreateMan, doc, table.Rows[0].Cells[1].CellFormat.Width, "1")); + Unitname = item.CreateMan; + } + + + + row.Cells.Add(CreateCell(item.ProfessionalName.ToString(), doc, table.Rows[0].Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.MonthQuantity.ToString(), doc, table.Rows[0].Cells[3].CellFormat.Width)); + row.Cells.Add(CreateCell(item.TotalQuantity.ToString(), doc, table.Rows[0].Cells[4].CellFormat.Width)); + row.Cells.Add(CreateCell(item.MonthRate.ToString(), doc, table.Rows[0].Cells[5].CellFormat.Width)); + row.Cells.Add(CreateCell(item.TotalRate.ToString(), doc, table.Rows[0].Cells[6].CellFormat.Width)); + + table.Rows.Insert(numberIndex, row); + numberIndex += 1; + if (Unitname != item.CreateMan) + { + pageCount += 1; + } + + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + //创建合计 + //创建行 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.Rows[0].Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.Rows[0].Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("", doc, table.Rows[0].Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(totalNum0.ToString(), doc, table.Rows[0].Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(totalNum1.ToString(), doc, table.Rows[0].Cells[4].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("", doc, table.Rows[0].Cells[5].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("", doc, table.Rows[0].Cells[6].CellFormat.Width)); + + table.Rows.Insert(numberIndex, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + else + { + isYm = true; + numberIndex = 1; + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + //创建合计 + Row rowhj = new Row(doc); + double numcount0 = table.Rows[0].Cells[0].CellFormat.Width; + double numcount1 = table.Rows[0].Cells[1].CellFormat.Width; + double numcount2 = table.Rows[0].Cells[2].CellFormat.Width; + double numcount3 = table.Rows[0].Cells[3].CellFormat.Width; + double numcount4 = table.Rows[0].Cells[4].CellFormat.Width; + double numcount5 = table.Rows[0].Cells[5].CellFormat.Width; + double numcount6 = table.Rows[0].Cells[6].CellFormat.Width; + double numcount = numcount0 + numcount1 + numcount2 + numcount3 + numcount4 + numcount5 + numcount6; + rowhj.Cells.Add(CreateCell("暂无数据", doc, numcount)); + table.Rows.Insert(numberIndex + 1, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + + #endregion + + #region 8.设备材料报验管理情况 + var sbclbyList = ContuructionAllList.Where(x => x.ReType == "6").ToList(); + if (sbclbyList.Count > 0) + { + isYm = true; + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + //获取到第一列是序号的列 + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 1; + int? num1 = 0, num2 = 0; + foreach (var item in sbclbyList) + { + //创建行 + Row row = new Row(doc); + row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.UnitOrMajor, doc, table.FirstRow.Cells[1].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Quantity1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Quantity2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + row.Cells.Add(CreateCell(item.QuaRate.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Remarks, doc, table.FirstRow.Cells[5].CellFormat.Width)); + table.Rows.Insert(numberIndex, row); + num1 += item.Quantity1; + num2 += item.Quantity2; + numberIndex += 1; + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + //创建合计 + //创建行 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.FirstRow.Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[4].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[5].CellFormat.Width)); + table.Rows.Insert(numberIndex, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + else + { + isYm = true; + numberIndex = 1; + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + //创建合计 + Row rowhj = new Row(doc); + double numcount0 = table.Rows[0].Cells[0].CellFormat.Width; + double numcount1 = table.Rows[0].Cells[1].CellFormat.Width; + double numcount2 = table.Rows[0].Cells[2].CellFormat.Width; + double numcount3 = table.Rows[0].Cells[3].CellFormat.Width; + double numcount4 = table.Rows[0].Cells[4].CellFormat.Width; + double numcount5 = table.Rows[0].Cells[5].CellFormat.Width; + double numcount = numcount0 + numcount1 + numcount2 + numcount3 + numcount4 + numcount5; + rowhj.Cells.Add(CreateCell("暂无数据", doc, numcount)); + table.Rows.Insert(numberIndex + 1, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + + #endregion + + var reportItem = db.Report_CQMS_MonthReportItem.Where(x => x.ReportId == Id).OrderBy(x => x.ContentName).ToList(); + + #region 9.计量器具报验管理情况 + var measuringInspection = reportItem.Where(x => x.ReType == "9").ToList(); + if (measuringInspection.Count > 0) + { + isYm = true; + //whileIndex += 1; + whileIndex = 13; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 1; + int? num1 = 0, num2 = 0; + foreach (var item in measuringInspection) + { + //创建行 + Row row = new Row(doc); + row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width)); + row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Remarks, doc, table.FirstRow.Cells[4].CellFormat.Width)); + table.Rows.Insert(numberIndex, row); + num1 += item.MonthsCount; + num2 += item.ProjectCount; + numberIndex += 1; + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + //创建合计 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.FirstRow.Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[4].CellFormat.Width)); + table.Rows.Insert(numberIndex, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + else + { + + isYm = true; + numberIndex = 1; + whileIndex = 13; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + //创建行 + Row row = new Row(doc); + row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width)); + row.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[1].CellFormat.Width)); + row.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[3].CellFormat.Width)); + row.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[4].CellFormat.Width)); + table.Rows.Insert(numberIndex, row); + } + + #endregion + + #region 10.现场质量共检数据 + + #region 10-1 土建 + var TJInspection = reportItem.Where(x => x.ReType == "10-1").ToList(); + if (TJInspection != null || TJInspection.Count > 0) + { + isYm = true; + //whileIndex += 1; + whileIndex = 14; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 1; + int? num1 = 0, num2 = 0, num3 = 0, num4 = 0; + string num5 = string.Empty; + string num6 = string.Empty; + foreach (var item in TJInspection) + { + //创建行 + Row row = new Row(doc); + + row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.Rows[0].Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.ContentName, doc, table.Rows[0].Cells[1].CellFormat.Width)); + // 合并第一行的前两个单元格 + table.Rows[0].Cells[0].CellFormat.VerticalMerge = CellMerge.First; + table.Rows[1].Cells[0].CellFormat.VerticalMerge = CellMerge.Previous; + + row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.Rows[1].Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.MonthsBackCount.ToString(), doc, table.Rows[1].Cells[3].CellFormat.Width)); + + row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.Rows[1].Cells[4].CellFormat.Width)); + row.Cells.Add(CreateCell(item.TotalNoBackCount.ToString(), doc, table.Rows[1].Cells[5].CellFormat.Width)); + + row.Cells.Add(CreateCell(item.RectificationRate.ToString(), doc, table.Rows[1].Cells[6].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Remarks.ToString(), doc, table.Rows[1].Cells[7].CellFormat.Width)); + + table.Rows.Insert(numberIndex + 1, row); + + num1 += item.MonthsCount; + num2 += item.MonthsBackCount; + num3 += item.ProjectCount; + num4 += item.TotalNoBackCount; + + numberIndex += 1; + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + + if (num1 != 0)//被除数不能为零 + { + num5 = Math.Round((double)num3 / (double)num1 * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + num5 = "0%"; + } + if (num2 != 0)//被除数不能为零 + { + num6 = Math.Round((double)num4 / (double)num2 * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + num6 = "0%"; + } + + //创建合计 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.Rows[0].Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.Rows[0].Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num1.ToString(), doc, table.Rows[1].Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num2.ToString(), doc, table.Rows[1].Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num3.ToString(), doc, table.Rows[1].Cells[4].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num4.ToString(), doc, table.Rows[1].Cells[5].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num5.ToString(), doc, table.Rows[1].Cells[6].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num6.ToString(), doc, table.Rows[1].Cells[7].CellFormat.Width)); + + table.Rows.Insert(numberIndex + 1, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + else + { + isYm = true; + numberIndex = 1; + whileIndex = 14; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + //创建合计 + Row rowhj = new Row(doc); + double numcount0 = table.Rows[0].Cells[0].CellFormat.Width; + double numcount1 = table.Rows[0].Cells[1].CellFormat.Width; + double numcount2 = table.Rows[1].Cells[2].CellFormat.Width; + double numcount3 = table.Rows[1].Cells[3].CellFormat.Width; + double numcount4 = table.Rows[1].Cells[4].CellFormat.Width; + double numcount5 = table.Rows[1].Cells[5].CellFormat.Width; + double numcount6 = table.Rows[1].Cells[6].CellFormat.Width; + double numcount7 = table.Rows[1].Cells[7].CellFormat.Width; + double numcount = numcount0 + numcount1 + numcount2 + numcount3 + numcount4 + numcount5 + numcount6 + numcount7; + rowhj.Cells.Add(CreateCell("暂无数据", doc, numcount)); + table.Rows.Insert(numberIndex + 1, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + #endregion + + #region 10-2 设备 + var SBInspection = reportItem.Where(x => x.ReType == "10-2").ToList(); + if (SBInspection != null || SBInspection.Count > 0) + { + isYm = true; + //whileIndex += 1; + whileIndex = 15; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 1; + int? num1 = 0, num2 = 0, num3 = 0, num4 = 0; + string num5 = string.Empty; + string num6 = string.Empty; + foreach (var item in SBInspection) + { + //创建行 + Row row = new Row(doc); + + row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.Rows[0].Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.ContentName, doc, table.Rows[0].Cells[1].CellFormat.Width)); + // 合并第一行的前两个单元格 + table.Rows[0].Cells[0].CellFormat.VerticalMerge = CellMerge.First; + table.Rows[1].Cells[0].CellFormat.VerticalMerge = CellMerge.Previous; + + row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.Rows[1].Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.MonthsBackCount.ToString(), doc, table.Rows[1].Cells[3].CellFormat.Width)); + + row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.Rows[1].Cells[4].CellFormat.Width)); + row.Cells.Add(CreateCell(item.TotalNoBackCount.ToString(), doc, table.Rows[1].Cells[5].CellFormat.Width)); + + row.Cells.Add(CreateCell(item.RectificationRate.ToString(), doc, table.Rows[1].Cells[6].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Remarks.ToString(), doc, table.Rows[1].Cells[7].CellFormat.Width)); + + table.Rows.Insert(numberIndex + 1, row); + + num1 += item.MonthsCount; + num2 += item.MonthsBackCount; + num3 += item.ProjectCount; + num4 += item.TotalNoBackCount; + + numberIndex += 1; + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + + if (num1 != 0)//被除数不能为零 + { + num5 = Math.Round((double)num3 / (double)num1 * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + num5 = "0%"; + } + if (num2 != 0)//被除数不能为零 + { + num6 = Math.Round((double)num4 / (double)num2 * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + num6 = "0%"; + } + + //创建合计 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.Rows[0].Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.Rows[0].Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num1.ToString(), doc, table.Rows[1].Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num2.ToString(), doc, table.Rows[1].Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num3.ToString(), doc, table.Rows[1].Cells[4].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num4.ToString(), doc, table.Rows[1].Cells[5].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num5.ToString(), doc, table.Rows[1].Cells[6].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num6.ToString(), doc, table.Rows[1].Cells[7].CellFormat.Width)); + + table.Rows.Insert(numberIndex + 1, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + else + { + isYm = true; + numberIndex = 1; + whileIndex = 15; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + //创建合计 + Row rowhj = new Row(doc); + double numcount0 = table.Rows[0].Cells[0].CellFormat.Width; + double numcount1 = table.Rows[0].Cells[1].CellFormat.Width; + double numcount2 = table.Rows[1].Cells[2].CellFormat.Width; + double numcount3 = table.Rows[1].Cells[3].CellFormat.Width; + double numcount4 = table.Rows[1].Cells[4].CellFormat.Width; + double numcount5 = table.Rows[1].Cells[5].CellFormat.Width; + double numcount6 = table.Rows[1].Cells[6].CellFormat.Width; + double numcount7 = table.Rows[1].Cells[7].CellFormat.Width; + double numcount = numcount0 + numcount1 + numcount2 + numcount3 + numcount4 + numcount5 + numcount6 + numcount7; + rowhj.Cells.Add(CreateCell("暂无数据", doc, numcount)); + table.Rows.Insert(numberIndex + 1, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + #endregion + + #region 10-3 管道 + var GDInspection = reportItem.Where(x => x.ReType == "10-3").ToList(); + if (GDInspection != null || GDInspection.Count > 0) + { + isYm = true; + //whileIndex += 1; + whileIndex = 16; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 1; + int? num1 = 0, num2 = 0, num3 = 0, num4 = 0; + string num5 = string.Empty; + string num6 = string.Empty; + foreach (var item in GDInspection) + { + //创建行 + Row row = new Row(doc); + + row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.Rows[0].Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.ContentName, doc, table.Rows[0].Cells[1].CellFormat.Width)); + // 合并第一行的前两个单元格 + table.Rows[0].Cells[0].CellFormat.VerticalMerge = CellMerge.First; + table.Rows[1].Cells[0].CellFormat.VerticalMerge = CellMerge.Previous; + + row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.Rows[1].Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.MonthsBackCount.ToString(), doc, table.Rows[1].Cells[3].CellFormat.Width)); + + row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.Rows[1].Cells[4].CellFormat.Width)); + row.Cells.Add(CreateCell(item.TotalNoBackCount.ToString(), doc, table.Rows[1].Cells[5].CellFormat.Width)); + + row.Cells.Add(CreateCell(item.RectificationRate.ToString(), doc, table.Rows[1].Cells[6].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Remarks.ToString(), doc, table.Rows[1].Cells[7].CellFormat.Width)); + + table.Rows.Insert(numberIndex + 1, row); + + num1 += item.MonthsCount; + num2 += item.MonthsBackCount; + num3 += item.ProjectCount; + num4 += item.TotalNoBackCount; + + numberIndex += 1; + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + + if (num1 != 0)//被除数不能为零 + { + num5 = Math.Round((double)num3 / (double)num1 * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + num5 = "0%"; + } + if (num2 != 0)//被除数不能为零 + { + num6 = Math.Round((double)num4 / (double)num2 * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + num6 = "0%"; + } + + //创建合计 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.Rows[0].Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.Rows[0].Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num1.ToString(), doc, table.Rows[1].Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num2.ToString(), doc, table.Rows[1].Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num3.ToString(), doc, table.Rows[1].Cells[4].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num4.ToString(), doc, table.Rows[1].Cells[5].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num5.ToString(), doc, table.Rows[1].Cells[6].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num6.ToString(), doc, table.Rows[1].Cells[7].CellFormat.Width)); + + table.Rows.Insert(numberIndex + 1, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + else + { + isYm = true; + numberIndex = 1; + whileIndex = 16; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + //创建合计 + Row rowhj = new Row(doc); + double numcount0 = table.Rows[0].Cells[0].CellFormat.Width; + double numcount1 = table.Rows[0].Cells[1].CellFormat.Width; + double numcount2 = table.Rows[1].Cells[2].CellFormat.Width; + double numcount3 = table.Rows[1].Cells[3].CellFormat.Width; + double numcount4 = table.Rows[1].Cells[4].CellFormat.Width; + double numcount5 = table.Rows[1].Cells[5].CellFormat.Width; + double numcount6 = table.Rows[1].Cells[6].CellFormat.Width; + double numcount7 = table.Rows[1].Cells[7].CellFormat.Width; + double numcount = numcount0 + numcount1 + numcount2 + numcount3 + numcount4 + numcount5 + numcount6 + numcount7; + rowhj.Cells.Add(CreateCell("暂无数据", doc, numcount)); + table.Rows.Insert(numberIndex + 1, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + #endregion + + #region 10-4 电气 + var DQInspection = reportItem.Where(x => x.ReType == "10-4").ToList(); + if (DQInspection != null || DQInspection.Count > 0) + { + isYm = true; + //whileIndex += 1; + whileIndex = 17; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 1; + int? num1 = 0, num2 = 0, num3 = 0, num4 = 0; + string num5 = string.Empty; + string num6 = string.Empty; + foreach (var item in DQInspection) + { + //创建行 + Row row = new Row(doc); + + row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.Rows[0].Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.ContentName, doc, table.Rows[0].Cells[1].CellFormat.Width)); + // 合并第一行的前两个单元格 + table.Rows[0].Cells[0].CellFormat.VerticalMerge = CellMerge.First; + table.Rows[1].Cells[0].CellFormat.VerticalMerge = CellMerge.Previous; + + row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.Rows[1].Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.MonthsBackCount.ToString(), doc, table.Rows[1].Cells[3].CellFormat.Width)); + + row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.Rows[1].Cells[4].CellFormat.Width)); + row.Cells.Add(CreateCell(item.TotalNoBackCount.ToString(), doc, table.Rows[1].Cells[5].CellFormat.Width)); + + row.Cells.Add(CreateCell(item.RectificationRate.ToString(), doc, table.Rows[1].Cells[6].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Remarks.ToString(), doc, table.Rows[1].Cells[7].CellFormat.Width)); + + table.Rows.Insert(numberIndex + 1, row); + + num1 += item.MonthsCount; + num2 += item.MonthsBackCount; + num3 += item.ProjectCount; + num4 += item.TotalNoBackCount; + + numberIndex += 1; + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + + if (num1 != 0)//被除数不能为零 + { + num5 = Math.Round((double)num3 / (double)num1 * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + num5 = "0%"; + } + if (num2 != 0)//被除数不能为零 + { + num6 = Math.Round((double)num4 / (double)num2 * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + num6 = "0%"; + } + + //创建合计 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.Rows[0].Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.Rows[0].Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num1.ToString(), doc, table.Rows[1].Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num2.ToString(), doc, table.Rows[1].Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num3.ToString(), doc, table.Rows[1].Cells[4].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num4.ToString(), doc, table.Rows[1].Cells[5].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num5.ToString(), doc, table.Rows[1].Cells[6].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num6.ToString(), doc, table.Rows[1].Cells[7].CellFormat.Width)); + + table.Rows.Insert(numberIndex + 1, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + else + { + isYm = true; + numberIndex = 1; + whileIndex = 17; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + //创建合计 + Row rowhj = new Row(doc); + double numcount0 = table.Rows[0].Cells[0].CellFormat.Width; + double numcount1 = table.Rows[0].Cells[1].CellFormat.Width; + double numcount2 = table.Rows[1].Cells[2].CellFormat.Width; + double numcount3 = table.Rows[1].Cells[3].CellFormat.Width; + double numcount4 = table.Rows[1].Cells[4].CellFormat.Width; + double numcount5 = table.Rows[1].Cells[5].CellFormat.Width; + double numcount6 = table.Rows[1].Cells[6].CellFormat.Width; + double numcount7 = table.Rows[1].Cells[7].CellFormat.Width; + double numcount = numcount0 + numcount1 + numcount2 + numcount3 + numcount4 + numcount5 + numcount6 + numcount7; + rowhj.Cells.Add(CreateCell("暂无数据", doc, numcount)); + table.Rows.Insert(numberIndex + 1, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + #endregion + + #region 10-5.仪表 + var YBInspection = reportItem.Where(x => x.ReType == "10-5").ToList(); + if (YBInspection != null || YBInspection.Count > 0) + { + isYm = true; + //whileIndex += 1; + whileIndex = 18; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 1; + int? num1 = 0, num2 = 0, num3 = 0, num4 = 0; + string num5 = string.Empty; + string num6 = string.Empty; + foreach (var item in YBInspection) + { + //创建行 + Row row = new Row(doc); + + row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.Rows[0].Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.ContentName, doc, table.Rows[0].Cells[1].CellFormat.Width)); + // 合并第一行的前两个单元格 + table.Rows[0].Cells[0].CellFormat.VerticalMerge = CellMerge.First; + table.Rows[1].Cells[0].CellFormat.VerticalMerge = CellMerge.Previous; + + row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.Rows[1].Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.MonthsBackCount.ToString(), doc, table.Rows[1].Cells[3].CellFormat.Width)); + + row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.Rows[1].Cells[4].CellFormat.Width)); + row.Cells.Add(CreateCell(item.TotalNoBackCount.ToString(), doc, table.Rows[1].Cells[5].CellFormat.Width)); + + row.Cells.Add(CreateCell(item.RectificationRate.ToString(), doc, table.Rows[1].Cells[6].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Remarks.ToString(), doc, table.Rows[1].Cells[7].CellFormat.Width)); + + table.Rows.Insert(numberIndex + 1, row); + + num1 += item.MonthsCount; + num2 += item.MonthsBackCount; + num3 += item.ProjectCount; + num4 += item.TotalNoBackCount; + + numberIndex += 1; + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + + if (num1 != 0)//被除数不能为零 + { + num5 = Math.Round((double)num3 / (double)num1 * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + num5 = "0%"; + } + if (num2 != 0)//被除数不能为零 + { + num6 = Math.Round((double)num4 / (double)num2 * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + num6 = "0%"; + } + + //创建合计 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.Rows[0].Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.Rows[0].Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num1.ToString(), doc, table.Rows[1].Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num2.ToString(), doc, table.Rows[1].Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num3.ToString(), doc, table.Rows[1].Cells[4].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num4.ToString(), doc, table.Rows[1].Cells[5].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num5.ToString(), doc, table.Rows[1].Cells[6].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num6.ToString(), doc, table.Rows[1].Cells[7].CellFormat.Width)); + + table.Rows.Insert(numberIndex + 1, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + else + { + isYm = true; + numberIndex = 1; + whileIndex = 18; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + //创建合计 + Row rowhj = new Row(doc); + double numcount0 = table.Rows[0].Cells[0].CellFormat.Width; + double numcount1 = table.Rows[0].Cells[1].CellFormat.Width; + double numcount2 = table.Rows[1].Cells[2].CellFormat.Width; + double numcount3 = table.Rows[1].Cells[3].CellFormat.Width; + double numcount4 = table.Rows[1].Cells[4].CellFormat.Width; + double numcount5 = table.Rows[1].Cells[5].CellFormat.Width; + double numcount6 = table.Rows[1].Cells[6].CellFormat.Width; + double numcount7 = table.Rows[1].Cells[7].CellFormat.Width; + double numcount = numcount0 + numcount1 + numcount2 + numcount3 + numcount4 + numcount5 + numcount6 + numcount7; + rowhj.Cells.Add(CreateCell("暂无数据", doc, numcount)); + table.Rows.Insert(numberIndex + 1, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + #endregion + + #region 10-6.防腐 + var FFInspection = reportItem.Where(x => x.ReType == "10-6").ToList(); + if (FFInspection != null || FFInspection.Count > 0) + { + isYm = true; + //whileIndex += 1; + whileIndex = 19; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 1; + int? num1 = 0, num2 = 0, num3 = 0, num4 = 0; + string num5 = string.Empty; + string num6 = string.Empty; + foreach (var item in FFInspection) + { + //创建行 + Row row = new Row(doc); + + row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.Rows[0].Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.ContentName, doc, table.Rows[0].Cells[1].CellFormat.Width)); + // 合并第一行的前两个单元格 + table.Rows[0].Cells[0].CellFormat.VerticalMerge = CellMerge.First; + table.Rows[1].Cells[0].CellFormat.VerticalMerge = CellMerge.Previous; + + row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.Rows[1].Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.MonthsBackCount.ToString(), doc, table.Rows[1].Cells[3].CellFormat.Width)); + + row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.Rows[1].Cells[4].CellFormat.Width)); + row.Cells.Add(CreateCell(item.TotalNoBackCount.ToString(), doc, table.Rows[1].Cells[5].CellFormat.Width)); + + row.Cells.Add(CreateCell(item.RectificationRate.ToString(), doc, table.Rows[1].Cells[6].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Remarks.ToString(), doc, table.Rows[1].Cells[7].CellFormat.Width)); + + table.Rows.Insert(numberIndex + 1, row); + + num1 += item.MonthsCount; + num2 += item.MonthsBackCount; + num3 += item.ProjectCount; + num4 += item.TotalNoBackCount; + + numberIndex += 1; + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + + if (num1 != 0)//被除数不能为零 + { + num5 = Math.Round((double)num3 / (double)num1 * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + num5 = "0%"; + } + if (num2 != 0)//被除数不能为零 + { + num6 = Math.Round((double)num4 / (double)num2 * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + num6 = "0%"; + } + + //创建合计 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.Rows[0].Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.Rows[0].Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num1.ToString(), doc, table.Rows[1].Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num2.ToString(), doc, table.Rows[1].Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num3.ToString(), doc, table.Rows[1].Cells[4].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num4.ToString(), doc, table.Rows[1].Cells[5].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num5.ToString(), doc, table.Rows[1].Cells[6].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num6.ToString(), doc, table.Rows[1].Cells[7].CellFormat.Width)); + + table.Rows.Insert(numberIndex + 1, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + else + { + isYm = true; + numberIndex = 1; + whileIndex = 19; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + //创建合计 + Row rowhj = new Row(doc); + double numcount0 = table.Rows[0].Cells[0].CellFormat.Width; + double numcount1 = table.Rows[0].Cells[1].CellFormat.Width; + double numcount2 = table.Rows[1].Cells[2].CellFormat.Width; + double numcount3 = table.Rows[1].Cells[3].CellFormat.Width; + double numcount4 = table.Rows[1].Cells[4].CellFormat.Width; + double numcount5 = table.Rows[1].Cells[5].CellFormat.Width; + double numcount6 = table.Rows[1].Cells[6].CellFormat.Width; + double numcount7 = table.Rows[1].Cells[7].CellFormat.Width; + double numcount = numcount0 + numcount1 + numcount2 + numcount3 + numcount4 + numcount5 + numcount6 + numcount7; + rowhj.Cells.Add(CreateCell("暂无数据", doc, numcount)); + table.Rows.Insert(numberIndex + 1, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + #endregion + + #region 10-7.消防 + var XFInspection = reportItem.Where(x => x.ReType == "10-7").ToList(); + if (XFInspection != null || XFInspection.Count > 0) + { + isYm = true; + //whileIndex += 1; + whileIndex = 20; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 1; + int? num1 = 0, num2 = 0, num3 = 0, num4 = 0; + string num5 = string.Empty; + string num6 = string.Empty; + foreach (var item in XFInspection) + { + //创建行 + Row row = new Row(doc); + + row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.Rows[0].Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.ContentName, doc, table.Rows[0].Cells[1].CellFormat.Width)); + // 合并第一行的前两个单元格 + table.Rows[0].Cells[0].CellFormat.VerticalMerge = CellMerge.First; + table.Rows[1].Cells[0].CellFormat.VerticalMerge = CellMerge.Previous; + + row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.Rows[1].Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.MonthsBackCount.ToString(), doc, table.Rows[1].Cells[3].CellFormat.Width)); + + row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.Rows[1].Cells[4].CellFormat.Width)); + row.Cells.Add(CreateCell(item.TotalNoBackCount.ToString(), doc, table.Rows[1].Cells[5].CellFormat.Width)); + + row.Cells.Add(CreateCell(item.RectificationRate.ToString(), doc, table.Rows[1].Cells[6].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Remarks.ToString(), doc, table.Rows[1].Cells[7].CellFormat.Width)); + + table.Rows.Insert(numberIndex + 1, row); + + num1 += item.MonthsCount; + num2 += item.MonthsBackCount; + num3 += item.ProjectCount; + num4 += item.TotalNoBackCount; + + numberIndex += 1; + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + + if (num1 != 0)//被除数不能为零 + { + num5 = Math.Round((double)num3 / (double)num1 * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + num5 = "0%"; + } + if (num2 != 0)//被除数不能为零 + { + num6 = Math.Round((double)num4 / (double)num2 * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + num6 = "0%"; + } + + //创建合计 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.Rows[0].Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.Rows[0].Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num1.ToString(), doc, table.Rows[1].Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num2.ToString(), doc, table.Rows[1].Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num3.ToString(), doc, table.Rows[1].Cells[4].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num4.ToString(), doc, table.Rows[1].Cells[5].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num5.ToString(), doc, table.Rows[1].Cells[6].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num6.ToString(), doc, table.Rows[1].Cells[7].CellFormat.Width)); + + table.Rows.Insert(numberIndex + 1, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + else + { + isYm = true; + numberIndex = 1; + whileIndex = 20; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + //创建合计 + Row rowhj = new Row(doc); + double numcount0 = table.Rows[0].Cells[0].CellFormat.Width; + double numcount1 = table.Rows[0].Cells[1].CellFormat.Width; + double numcount2 = table.Rows[1].Cells[2].CellFormat.Width; + double numcount3 = table.Rows[1].Cells[3].CellFormat.Width; + double numcount4 = table.Rows[1].Cells[4].CellFormat.Width; + double numcount5 = table.Rows[1].Cells[5].CellFormat.Width; + double numcount6 = table.Rows[1].Cells[6].CellFormat.Width; + double numcount7 = table.Rows[1].Cells[7].CellFormat.Width; + double numcount = numcount0 + numcount1 + numcount2 + numcount3 + numcount4 + numcount5 + numcount6 + numcount7; + rowhj.Cells.Add(CreateCell("暂无数据", doc, numcount)); + table.Rows.Insert(numberIndex + 1, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + #endregion + + #region 10.总数 + var InspectionDataInspection = reportItem.Where(x => x.ReType == "10").ToList(); + if (InspectionDataInspection != null || InspectionDataInspection.Count > 0) + { + isYm = true; + //whileIndex += 1; + whileIndex = 21; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 1; + //decimal? num1 = 0, num2 = 0; + //decimal MonthsCountstring = 0, ProjectCountstring = 0; + int CheckNum = 0, OKNum = 0, TotalCheckNum = 0, TotalOKNum = 0; + string QuantitySum1 = String.Empty;//本月检查合格点数/本月检查点数 + string QuantitySum2 = String.Empty;//累计检查合格点数/累计检查点数 + foreach (var item in InspectionDataInspection) + { + if (string.IsNullOrEmpty(item.RectificationRate)) + { + item.RectificationRate = "0%"; + } + + if (string.IsNullOrEmpty(item.TotationRate)) + { + item.TotationRate = "0%"; + } + //创建行 + Row row = new Row(doc); + row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width)); + row.Cells.Add(CreateCell(Convert.ToString(item.RectificationRate), doc, table.FirstRow.Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(Convert.ToString(item.TotationRate), doc, table.FirstRow.Cells[3].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Remarks, doc, table.FirstRow.Cells[4].CellFormat.Width)); + table.Rows.Insert(numberIndex, row); + //num1 += MonthsCountstring; + //num2 += ProjectCountstring; + CheckNum += Convert.ToInt32(item.MonthsCount); + OKNum += Convert.ToInt32(item.ProjectCount); + TotalCheckNum += Convert.ToInt32(item.MonthsBackCount); + TotalOKNum += Convert.ToInt32(item.TotalNoBackCount); + + numberIndex += 1; + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + + + if (CheckNum != 0)//被除数不能为零 + { + QuantitySum1 = Math.Round((decimal)OKNum / (decimal)CheckNum * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + QuantitySum1 = "0%"; + } + if (TotalCheckNum != 0)//被除数不能为零 + { + QuantitySum2 = Math.Round((decimal)TotalOKNum / (decimal)TotalCheckNum * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + QuantitySum2 = "0%"; + } + + + //创建合计 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.FirstRow.Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(QuantitySum1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(QuantitySum2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[4].CellFormat.Width)); + table.Rows.Insert(numberIndex, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + #endregion + + #endregion + + #region 11.压力管道监检情况 + var PressureInspection = reportItem.Where(x => x.ReType == "11").ToList(); + if (PressureInspection.Count > 0) + { + isYm = true; + //whileIndex += 1; + whileIndex = 22; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 1; + int? num1 = 0, num2 = 0, num3 = 0; + foreach (var item in PressureInspection) + { + //创建行 + Row row = new Row(doc); + row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width)); + row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + row.Cells.Add(CreateCell(item.TotalNoBackCount.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Remarks, doc, table.FirstRow.Cells[5].CellFormat.Width)); + table.Rows.Insert(numberIndex, row); + num1 += item.MonthsCount; + num2 += item.ProjectCount; + num3 += item.TotalNoBackCount; + numberIndex += 1; + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + + //创建合计 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.FirstRow.Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num3.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[5].CellFormat.Width)); + table.Rows.Insert(numberIndex, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + #endregion + + #region 12.管道试压包管理情况 + var PipingInspection = reportItem.Where(x => x.ReType == "12").ToList(); + if (PipingInspection.Count > 0) + { + isYm = true; + //whileIndex += 1; + whileIndex = 23; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 1; + int? num1 = 0, num2 = 0, num3 = 0; + foreach (var item in PipingInspection) + { + //创建行 + Row row = new Row(doc); + row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width)); + row.Cells.Add(CreateCell(item.TotalNoBackCount.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Remarks, doc, table.FirstRow.Cells[5].CellFormat.Width)); + table.Rows.Insert(numberIndex, row); + num3 += item.TotalNoBackCount; + num1 += item.MonthsCount; + num2 += item.ProjectCount; + numberIndex += 1; + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + //创建合计 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.FirstRow.Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num3.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num1.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num2.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[5].CellFormat.Width)); + table.Rows.Insert(numberIndex, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + #endregion + + #region 13.特种设备监检情况 + var SpecialInspection = reportItem.Where(x => x.ReType == "13").ToList(); + if (SpecialInspection.Count > 0) + { + isYm = true; + //whileIndex += 1; + whileIndex = 24; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 1; + int? num1 = 0, num2 = 0, num3 = 0; + foreach (var item in SpecialInspection) + { + //创建行 + Row row = new Row(doc); + row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width)); + row.Cells.Add(CreateCell(item.TotalNoBackCount.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Remarks, doc, table.FirstRow.Cells[5].CellFormat.Width)); + table.Rows.Insert(numberIndex, row); + num1 += item.MonthsCount; + num2 += item.ProjectCount; + num3 += item.TotalNoBackCount; + numberIndex += 1; + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + //创建合计 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.FirstRow.Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num3.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num1.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num2.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[5].CellFormat.Width)); + table.Rows.Insert(numberIndex, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + #endregion + + #region 14.NCR管理情况 + var NcrManagementInspection = reportItem.Where(x => x.ReType == "14").ToList(); + if (NcrManagementInspection.Count > 0) + { + isYm = true; + //whileIndex += 1; + whileIndex = 25; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 1; + int? num1 = 0, num2 = 0, num3 = 0; + string num4 = string.Empty; + foreach (var item in NcrManagementInspection) + { + //创建行 + Row row = new Row(doc); + row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width)); + row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + row.Cells.Add(CreateCell(item.TotalNoBackCount.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width)); + row.Cells.Add(CreateCell(item.RectificationRate.ToString(), doc, table.FirstRow.Cells[5].CellFormat.Width)); + table.Rows.Insert(numberIndex, row); + num1 += item.MonthsCount; + num2 += item.ProjectCount; + num3 += item.TotalNoBackCount; + numberIndex += 1; + } + + if (num2 != 0)//被除数不能为零 + { + num4 = Math.Round((double)num2 / (double)num3 * 100, 2) + "%";//保留两位小数、后四舍五3 + } + else + { + num4 = "0%"; + } + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + //创建合计 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.FirstRow.Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num3.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num4.ToString(), doc, table.FirstRow.Cells[5].CellFormat.Width)); + table.Rows.Insert(numberIndex, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + #endregion + + #region 15.质量巡检情况 + var qualityInspections = reportItem.Where(x => x.ReType == "1").ToList(); + if (qualityInspections.Count > 0) + { + isYm = true; + //whileIndex += 1; + whileIndex = 26; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 1; + int? num1 = 0, num2 = 0; + foreach (var item in qualityInspections) + { + //创建行 + Row row = new Row(doc); + row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width)); + row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + row.Cells.Add(CreateCell(item.RectificationRate, doc, table.FirstRow.Cells[4].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Remarks, doc, table.FirstRow.Cells[5].CellFormat.Width)); + table.Rows.Insert(numberIndex, row); + num1 += item.MonthsCount; + num2 += item.ProjectCount; + numberIndex += 1; + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + //创建合计 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.FirstRow.Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[4].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[5].CellFormat.Width)); + table.Rows.Insert(numberIndex, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + #endregion + + #region 16.质量专项检查情况 + var specialChecks = reportItem.Where(x => x.ReType == "2").ToList(); + if (specialChecks.Count > 0) + { + isYm = true; + //whileIndex += 1; + whileIndex = 27; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 1; + int? num1 = 0, num2 = 0; + foreach (var item in specialChecks) + { + //创建行 + Row row = new Row(doc); + row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width)); + row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Remarks, doc, table.FirstRow.Cells[4].CellFormat.Width)); + table.Rows.Insert(numberIndex, row); + num1 += item.MonthsCount; + num2 += item.ProjectCount; + numberIndex += 1; + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + //创建合计 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.FirstRow.Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[4].CellFormat.Width)); + table.Rows.Insert(numberIndex, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + #endregion + + #region 17.质量文件上报情况 + var fileReports = reportItem.Where(x => x.ReType == "3").ToList(); + if (fileReports.Count > 0) + { + isYm = true; + //whileIndex += 1; + whileIndex = 28; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + //跳过页眉的表头 + while (isYm) + { + if (table.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm = false; + } + } + numberIndex = 1; + int? num1 = 0, num2 = 0, num3 = 0, num4 = 0; + foreach (var item in fileReports) + { + //创建行 + Row row = new Row(doc); + row.Cells.Add(CreateCell(numberIndex.ToString(), doc, table.FirstRow.Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.ContentName, doc, table.FirstRow.Cells[1].CellFormat.Width)); + row.Cells.Add(CreateCell(item.MonthsCount.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.ProjectCount.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + row.Cells.Add(CreateCell(item.MonthsBackCount.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width)); + row.Cells.Add(CreateCell(item.TotalNoBackCount.ToString(), doc, table.FirstRow.Cells[5].CellFormat.Width)); + table.Rows.Insert(numberIndex, row); + num1 += item.MonthsCount; + num2 += item.ProjectCount; + num3 += item.MonthsBackCount; + num4 += item.TotalNoBackCount; + numberIndex += 1; + } + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + //创建合计 + Row rowhj = new Row(doc); + rowhj.Cells.Add(CreateCell("", doc, table.FirstRow.Cells[0].CellFormat.Width)); + rowhj.Cells.Add(CreateCell("合计", doc, table.FirstRow.Cells[1].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num1.ToString(), doc, table.FirstRow.Cells[2].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num2.ToString(), doc, table.FirstRow.Cells[3].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num3.ToString(), doc, table.FirstRow.Cells[4].CellFormat.Width)); + rowhj.Cells.Add(CreateCell(num4.ToString(), doc, table.FirstRow.Cells[5].CellFormat.Width)); + table.Rows.Insert(numberIndex, rowhj); + + //自动设置表格样式 + table.AutoFit(AutoFitBehavior.FixedColumnWidths); + } + #endregion + + #region 18.本月质量问题处理情况 + #region (1)原材料问题 + whileIndex = 29; + Aspose.Words.Tables.Table table18_1 = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + bool isYm18_1 = true; + //跳过页眉的表头 + while (isYm18_1) + { + if (table18_1.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table18_1 = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm18_1 = false; + } + } + var rowMaterialProblems = db.Report_RowMaterialProblem.Where(x => x.ReportId == Id); + int numberIndex18_1 = 1; + foreach (var item in rowMaterialProblems) + { + //创建行 + Row row = new Row(doc); + row.Cells.Add(CreateCell(numberIndex18_1.ToString(), doc, table18_1.FirstRow.Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.UnitId, doc, table18_1.FirstRow.Cells[1].CellFormat.Width)); + row.Cells.Add(CreateCell(item.ProblemDesrioption, doc, table18_1.FirstRow.Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.TreatmentMeasures, doc, table18_1.FirstRow.Cells[3].CellFormat.Width)); + row.Cells.Add(CreateCell(item.ProcessingResults, doc, table18_1.FirstRow.Cells[4].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Remark, doc, table18_1.FirstRow.Cells[5].CellFormat.Width)); + table18_1.Rows.Insert(numberIndex18_1, row); + + numberIndex18_1 += 1; + } + //自动设置表格样式 + table18_1.AutoFit(AutoFitBehavior.FixedColumnWidths); + #endregion + + #region (2)施工过程问题 + whileIndex = 30; + Aspose.Words.Tables.Table table18_2 = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + bool isYm18_2 = true; + //跳过页眉的表头 + while (isYm18_2) + { + if (table18_2.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table18_2 = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm18_2 = false; + } + } + var constructionProblems = db.Report_ConstructionProblems.Where(x => x.ReportId == Id); + int numberIndex18_2 = 1; + foreach (var item in constructionProblems) + { + //创建行 + Row row = new Row(doc); + row.Cells.Add(CreateCell(numberIndex18_2.ToString(), doc, table18_2.FirstRow.Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.UnitId, doc, table18_2.FirstRow.Cells[1].CellFormat.Width)); + row.Cells.Add(CreateCell(item.ProblemDesrioption, doc, table18_2.FirstRow.Cells[2].CellFormat.Width)); + row.Cells.Add(CreateCell(item.TreatmentMeasures, doc, table18_2.FirstRow.Cells[3].CellFormat.Width)); + row.Cells.Add(CreateCell(item.ProcessingResults, doc, table18_2.FirstRow.Cells[4].CellFormat.Width)); + row.Cells.Add(CreateCell(item.Remark, doc, table18_2.FirstRow.Cells[5].CellFormat.Width)); + table18_2.Rows.Insert(numberIndex18_2, row); + + numberIndex18_2 += 1; + } + //自动设置表格样式 + table18_2.AutoFit(AutoFitBehavior.FixedColumnWidths); + #endregion + #endregion + + #region 19.下月质量控制重点 + whileIndex = 31; + Aspose.Words.Tables.Table table19 = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + bool isYm19 = true; + //跳过页眉的表头 + while (isYm19) + { + if (table19.Range.Text.Substring(0, 2) != "序号") + { + whileIndex += 1; + table19 = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, whileIndex, true); + } + else + { + isYm19 = false; + } + } + var nextQualityControls = db.Report_NextQualityControl.Where(x => x.ReportId == Id); + int numberIndex19 = 1; + foreach (var item in nextQualityControls) + { + //创建行 + Row row = new Row(doc); + row.Cells.Add(CreateCell(numberIndex19.ToString(), doc, table19.FirstRow.Cells[0].CellFormat.Width, "", "1")); + row.Cells.Add(CreateCell(item.NextQualityControlContent, doc, table19.FirstRow.Cells[1].CellFormat.Width)); + table19.Rows.Insert(numberIndex19, row); + + numberIndex19 += 1; + } + //自动设置表格样式 + table19.AutoFit(AutoFitBehavior.FixedColumnWidths); + #endregion + + #region 20.项目质量体系审核 + bkmark = doc.Range.Bookmarks["Content20"]; + if (bkmark != null) + { + bkmark.Text = txtReportList.FirstOrDefault(x => x.ContentType == "20").ContentText; + } + #endregion + + #region 21.类似项目管理经验教训应对措施及跟踪 + bkmark = doc.Range.Bookmarks["Content21"]; + if (bkmark != null) + { + bkmark.Text = txtReportList.FirstOrDefault(x => x.ContentType == "21").ContentText; + } + #endregion + + #region 22.附件 + bkmark = doc.Range.Bookmarks["Content22"]; + if (bkmark != null) + { + bkmark.Text = txtReportList.FirstOrDefault(x => x.ContentType == "22").ContentText; + } + #endregion + + #region 23.施工照片 + string imageUrl = "res/images/R-C.png"; + var imageUrl1 = txtReportList.FirstOrDefault(x => x.ContentType == "23-1").ImageUrl; + if (!string.IsNullOrWhiteSpace(imageUrl1) && imageUrl1 != imageUrl) + { + string rootPathUrl = rootPath.Replace("\\", "/"); + string url = rootPathUrl + imageUrl1; + //DocumentBuilder builder = new DocumentBuilder(doc); + builder.MoveToBookmark("ImageUrl1"); + if (!string.IsNullOrEmpty(url)) + { + System.Drawing.Size JpgSize; + float Wpx; + float Hpx; + UploadAttachmentService.getJpgSize(rootPathUrl + imageUrl1, out JpgSize, out Wpx, out Hpx); + //double w = 1; + //w = JpgSize.Width / 50.0; + if (File.Exists(url)) + { + //builder.InsertImage(url, JpgSize.Width / w, JpgSize.Height / w); + builder.InsertImage(url, 200, 150); + } + } + } + + var imageUrl2 = txtReportList.FirstOrDefault(x => x.ContentType == "23-2").ImageUrl; + if (!string.IsNullOrWhiteSpace(imageUrl2) && imageUrl2 != imageUrl) + { + string rootPathUrl = rootPath.Replace("\\", "/"); + string url = rootPathUrl + imageUrl2; + //DocumentBuilder builder = new DocumentBuilder(doc); + builder.MoveToBookmark("ImageUrl2"); + if (!string.IsNullOrEmpty(url)) + { + System.Drawing.Size JpgSize; + float Wpx; + float Hpx; + UploadAttachmentService.getJpgSize(rootPathUrl + imageUrl2, out JpgSize, out Wpx, out Hpx); + //double w = 1; + //w = JpgSize.Width / 50.0; + if (File.Exists(url)) + { + //builder.InsertImage(url, JpgSize.Width / w, JpgSize.Height / w); + builder.InsertImage(url, 200, 150); + } + } + } + + var imageUrl3 = txtReportList.FirstOrDefault(x => x.ContentType == "23-3").ImageUrl; + if (!string.IsNullOrWhiteSpace(imageUrl3) && imageUrl3 != imageUrl) + { + string rootPathUrl = rootPath.Replace("\\", "/"); + string url = rootPathUrl + imageUrl3; + //DocumentBuilder builder = new DocumentBuilder(doc); + builder.MoveToBookmark("ImageUrl3"); + if (!string.IsNullOrEmpty(url)) + { + System.Drawing.Size JpgSize; + float Wpx; + float Hpx; + UploadAttachmentService.getJpgSize(rootPathUrl + imageUrl3, out JpgSize, out Wpx, out Hpx); + //double w = 1; + //w = JpgSize.Width / 50.0; + if (File.Exists(url)) + { + //builder.InsertImage(url, JpgSize.Width / w, JpgSize.Height / w); + builder.InsertImage(url, 200, 150); + } + } + } + + var imageUrl4 = txtReportList.FirstOrDefault(x => x.ContentType == "23-4").ImageUrl; + if (!string.IsNullOrWhiteSpace(imageUrl4) && imageUrl4 != imageUrl) + { + string rootPathUrl = rootPath.Replace("\\", "/"); + string url = rootPathUrl + imageUrl4; + //DocumentBuilder builder = new DocumentBuilder(doc); + builder.MoveToBookmark("ImageUrl4"); + if (!string.IsNullOrEmpty(url)) + { + System.Drawing.Size JpgSize; + float Wpx; + float Hpx; + UploadAttachmentService.getJpgSize(rootPathUrl + imageUrl4, out JpgSize, out Wpx, out Hpx); + //double w = 1; + //w = JpgSize.Width / 50.0; + if (File.Exists(url)) + { + //builder.InsertImage(url, JpgSize.Width / w, JpgSize.Height / w); + builder.InsertImage(url, 200, 150); + } + } + } + + var imageUrl5 = txtReportList.FirstOrDefault(x => x.ContentType == "23-5").ImageUrl; + if (!string.IsNullOrWhiteSpace(imageUrl5) && imageUrl5 != imageUrl) + { + string rootPathUrl = rootPath.Replace("\\", "/"); + string url = rootPathUrl + imageUrl5; + //DocumentBuilder builder = new DocumentBuilder(doc); + builder.MoveToBookmark("ImageUrl5"); + if (!string.IsNullOrEmpty(url)) + { + System.Drawing.Size JpgSize; + float Wpx; + float Hpx; + UploadAttachmentService.getJpgSize(rootPathUrl + imageUrl5, out JpgSize, out Wpx, out Hpx); + //double w = 1; + //w = JpgSize.Width / 50.0; + if (File.Exists(url)) + { + //builder.InsertImage(url, JpgSize.Width / w, JpgSize.Height / w); + builder.InsertImage(url, 200, 150); + } + } + } + + var imageUrl6 = txtReportList.FirstOrDefault(x => x.ContentType == "23-6").ImageUrl; + if (!string.IsNullOrWhiteSpace(imageUrl6) && imageUrl6 != imageUrl) + { + string rootPathUrl = rootPath.Replace("\\", "/"); + string url = rootPathUrl + imageUrl6; + //DocumentBuilder builder = new DocumentBuilder(doc); + builder.MoveToBookmark("ImageUrl6"); + if (!string.IsNullOrEmpty(url)) + { + System.Drawing.Size JpgSize; + float Wpx; + float Hpx; + UploadAttachmentService.getJpgSize(rootPathUrl + imageUrl6, out JpgSize, out Wpx, out Hpx); + //double w = 1; + //w = JpgSize.Width / 50.0; + if (File.Exists(url)) + { + //builder.InsertImage(url, JpgSize.Width / w, JpgSize.Height / w); + builder.InsertImage(url, 200, 150); + } + } + } + + bkmark = doc.Range.Bookmarks["ImageContent1"]; + if (bkmark != null) + { + bkmark.Text = txtReportList.FirstOrDefault(x => x.ContentType == "23-1").ContentText; + } + + bkmark = doc.Range.Bookmarks["ImageContent2"]; + if (bkmark != null) + { + bkmark.Text = txtReportList.FirstOrDefault(x => x.ContentType == "23-2").ContentText; + } + + bkmark = doc.Range.Bookmarks["ImageContent3"]; + if (bkmark != null) + { + bkmark.Text = txtReportList.FirstOrDefault(x => x.ContentType == "23-3").ContentText; + } + + bkmark = doc.Range.Bookmarks["ImageContent4"]; + if (bkmark != null) + { + bkmark.Text = txtReportList.FirstOrDefault(x => x.ContentType == "23-4").ContentText; + } + + bkmark = doc.Range.Bookmarks["ImageContent5"]; + if (bkmark != null) + { + bkmark.Text = txtReportList.FirstOrDefault(x => x.ContentType == "23-5").ContentText; + } + + bkmark = doc.Range.Bookmarks["ImageContent6"]; + if (bkmark != null) + { + bkmark.Text = txtReportList.FirstOrDefault(x => x.ContentType == "23-6").ContentText; + } + #endregion + + #region 设置页眉上的数据 + whileIndex = 1; + table = (Aspose.Words.Tables.Table)doc.GetChild(NodeType.Table, 1, true); + if (unitsYz != null) + { + //业主名称 + table.Rows[0].Cells[2].FirstParagraph.Runs[0].Text = unitsYz.UnitName; + } + + //项目号 + table.Rows[0].Cells[4].FirstParagraph.Runs[0].Text = pModel.ProjectCode; + + //项目名称 + table.Rows[2].Cells[2].FirstParagraph.Runs[0].Text = pModel.ProjectName; + table.Rows[2].Cells[3].FirstParagraph.Runs[0].Text = pModel.ProjectCode + "-RM-PQM-" + weekModel.SortId; + + //总页数 + table.Rows[4].Cells[5].FirstParagraph.Runs[0].Text = doc.PageCount.ToString(); + + bkmark = doc.Range.Bookmarks["CountPage"]; + if (bkmark != null) + { + bkmark.Text = doc.PageCount.ToString(); + } + + //页眉是第二个表 + //tableIndex—要移动的表的索引。 + //rowIndex - 表中行的索引。 + //columnIndex—表中列的索引。 + //字符在单元格中的索引。目前只能指定0移动到单元格的开头,或指定 - 1移动到单元格的结尾。 + //builder.MoveToCell(1,0,2,0); + //builder.Write(unitsYz.UnitName); + #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); + } + catch (Exception ex) + { + Alert.ShowInTop(ex.Message, MessageBoxIcon.Warning); + throw; + } + } + #endregion + } +} \ No newline at end of file diff --git a/SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReport.aspx.designer.cs b/SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReport.aspx.designer.cs new file mode 100644 index 00000000..4ac8449a --- /dev/null +++ b/SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReport.aspx.designer.cs @@ -0,0 +1,141 @@ +//------------------------------------------------------------------------------ +// <自动生成> +// 此代码由工具生成。 +// +// 对此文件的更改可能导致不正确的行为,如果 +// 重新生成代码,则所做更改将丢失。 +// +//------------------------------------------------------------------------------ + +namespace FineUIPro.Web.CQMS.ManageReportNew { + + + public partial class WeekReport { + + /// + /// form1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.HtmlControls.HtmlForm form1; + + /// + /// PageManager1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.PageManager PageManager1; + + /// + /// Panel1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel1; + + /// + /// Grid1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid Grid1; + + /// + /// Toolbar1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Toolbar Toolbar1; + + /// + /// btnNew 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnNew; + + /// + /// lblPageIndex 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.WebControls.Label lblPageIndex; + + /// + /// Label41 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.WebControls.Label Label41; + + /// + /// Window1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Window Window1; + + /// + /// Menu1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Menu Menu1; + + /// + /// btnMenuModify 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.MenuButton btnMenuModify; + + /// + /// btnMenuView 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.MenuButton btnMenuView; + + /// + /// btnPrinter 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.MenuButton btnPrinter; + + /// + /// btnMenuDel 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.MenuButton btnMenuDel; + } +} diff --git a/SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReportEdit.aspx b/SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReportEdit.aspx new file mode 100644 index 00000000..898e1075 --- /dev/null +++ b/SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReportEdit.aspx @@ -0,0 +1,2067 @@ +<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WeekReportEdit.aspx.cs" Inherits="FineUIPro.Web.CQMS.ManageReportNew.WeekReportEdit" %> + + + + + + + 编辑项目质量周报(新) + + + + + + + +
+ + + + + + + + + + + + + + + + + <%-- + + --%> +
+ + + + + +
+ +  编辑项目质量周报 + + <%-- --%> + + + + +
+
+ + + + + + + + + +
+ + + + + + + * + +
+
+
+ +
+
+ + + + + +
时间段  + + + + + + + + + <%-- + — + --%> +
+
+ + + + + + + +
+ +  20)项目质量体系审核 +
+ + + + +
+ +
+
+
+ <%--1.本周质量目标管理情况--%> + + + + + + + + + + + + + + + + + + + + + + + <%--2.本周主要工作内容--%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%--3.施工方案及检验试验计划审批情况--%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%--4.设计交底管理情况--%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%--5.图纸会审管理情况--%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%--6.设计变更管理情况--%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%--7.焊接管理情况--%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%--8.设备材料报验管理情况--%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%--9.计量器具报验管理情况--%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%--10.现场质量共检数据--%> + + + + + + + <%--10-1.土建--%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%--10-2.设备--%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%--10-3.管道--%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%--10-4.电气--%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%--10-5.仪表--%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%--10-6.防腐--%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%--10-7.消防--%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%--10.合计--%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%--11.压力管道监检情况--%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%--12.管道试压包管理情况--%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%--13.特种设备监检情况--%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%--14.NCR管理情况--%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%--15.质量巡检情况--%> + + + + + + + + + + + + + + + + + <%-- + + + --%> + + + + + + + + + + + + + + + + + + + + + + <%--16.质量专项检查情况--%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%--17.质量文件上报情况--%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%--18.本周质量问题处理情况--%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%--19.下周质量控制重点--%> + + + + + + + + + + + + + + + + + + + + + + <%--20.项目质量体系审核--%> + + + + + + + + + + + + + + + <%--21.类似项目管理经验教训应对措施及跟踪--%> + + + + + + + + + + + + + + + + <%--22.附件--%> + + + + + + + + + + + + + + + + <%--23.施工照片--%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + diff --git a/SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReportEdit.aspx.cs b/SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReportEdit.aspx.cs new file mode 100644 index 00000000..bcc1e45d --- /dev/null +++ b/SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReportEdit.aspx.cs @@ -0,0 +1,3948 @@ +using System; +using System.Collections.Generic; +using System.Data; +using System.Linq; +using System.Web.UI; +using System.Web.UI.WebControls; +using BLL; +using Newtonsoft.Json.Linq; +using System.Threading; + +namespace FineUIPro.Web.CQMS.ManageReportNew +{ + public partial class WeekReportEdit : PageBase + { + #region 定义项 + /// + /// 主键 + /// + public string ReportId + { + get + { + return (string)ViewState["ReportId"]; + } + set + { + ViewState["ReportId"] = value; + } + } + + public string AddOrUpdate + { + get + { + return (string)ViewState["AddOrUpdate"]; + } + set + { + ViewState["AddOrUpdate"] = value; + } + } + #endregion + + public Model.SGGLDB db = Funs.DB; + + #region 列表集合 + private static List detailsGrid1 = new List(); + + /// + /// 18.本月质量问题处理情况 + /// (1)原材料问题 + /// + private static List rowMaterialProblemLists = new List(); + + /// + /// 18.本月质量问题处理情况 + /// (2)施工过程问题 + /// + private static List constructionProblemsLists = new List(); + + /// + /// 19.下月质量控制重点 + /// + private static List nextQualityControlLists = new List(); + #endregion + + #region 加载所有单位 + public class UnitClass + { + public string UnitId { get; set; } + public string UnitName { get; set; } + + public string UnitType { get; set; } + } + + public List units = new List(); + #endregion + + #region 加载所有专业 + public class ProfessionalsClass + { + public string CNProfessionalId { get; set; } + public string ProfessionalName { get; set; } + } + + public List CNProfessionals = new List(); + #endregion + + #region 加载页面 + /// + /// 加载页面 + /// + /// + /// + protected void Page_Load(object sender, EventArgs e) + { + if (!IsPostBack) + { + //加载所有单位 + units = (from x in db.Project_ProjectUnit + join y in db.Base_Unit on x.UnitId equals y.UnitId + where x.ProjectId == this.CurrUser.LoginProjectId + orderby y.UnitCode + select new UnitClass { UnitId = x.UnitId, UnitName = y.UnitName, UnitType = x.UnitType }).ToList(); + //加载所有专业 + CNProfessionals = (from x in db.Base_CNProfessional + where x.CNProfessionalId != BLL.Const.CNProfessionalConstructId + && x.CNProfessionalId != BLL.Const.ComprehensiveId + orderby x.SortIndex + select new ProfessionalsClass + { + CNProfessionalId = x.CNProfessionalId, + ProfessionalName = x.ProfessionalName + }).ToList(); + + BLL.UnitService.InitUnitNameByProjectIdUnitTypeDropDownList(this.drpUnitId, this.CurrUser.LoginProjectId, BLL.Const.ProjectUnitType_2, false); + BLL.UnitService.InitUnitDownListByText(this.drpUnitIdGrid9, this.CurrUser.LoginProjectId, true); + this.EnableViewState = true; + this.lblProjectName.Text = BLL.ProjectService.GetProjectByProjectId(this.CurrUser.LoginProjectId).ProjectName; + this.ReportId = Request.Params["reportId"]; + if (!string.IsNullOrEmpty(Request.Params["view"])) + { + this.Button1.Visible = false; + this.Button2.Visible = false; + } + + if (!string.IsNullOrEmpty(this.ReportId)) + { + Model.Report_WeekAndMonthReport_New weekAndMonthReport = WeekAndMonthReportNewService.Detail(this.ReportId); + if (weekAndMonthReport != null) + { + if (weekAndMonthReport.SortId != null) + { + this.txtPeriod.Text = Convert.ToString(weekAndMonthReport.SortId); + } + if (weekAndMonthReport.StartDate != null) + { + this.txtStartDate.Text = string.Format("{0:yyyy-MM-dd}", weekAndMonthReport.StartDate); + } + if (weekAndMonthReport.EndDate != null) + { + this.txtEndDate.Text = string.Format("{0:yyyy-MM-dd}", weekAndMonthReport.EndDate); + } + } + AddOrUpdate = "update"; + + #region 加载本月质量目标管理情况 + detailsGrid1.Clear(); + detailsGrid1 = (from x in db.Report_CqmsTarget + where x.ReportId == this.ReportId + orderby x.SortId + select x).ToList(); + if (detailsGrid1.Count > 0) + { + Grid1.Hidden = false; + Grid1.DataSource = detailsGrid1; + Grid1.DataBind(); + } + + #endregion + + #region 加载7.2 PQR/WPS报验情况 + var detailsGrid9 = (from x in db.Report_Construction_Plan + where x.ReportId == ReportId && x.ReType == "5" + select x).ToList(); + if (detailsGrid9.Count > 0) + { + Grid9.Hidden = false; + Grid9.DataSource = detailsGrid9; + Grid9.DataBind(); + } + if (!string.IsNullOrEmpty(Request.Params["view"])) + { + //查看页面 + Button4.Hidden = true; + Button3.Hidden = true; + //合计 + OutPutSummaryGrid9(); + Grid1.FindColumn("Delete1").Hidden = true; + Grid9.FindColumn("Delete9").Hidden = true; + } + #endregion + + #region 加载18.本月质量问题处理情况 + //(1)原材料问题 + rowMaterialProblemLists.Clear(); + rowMaterialProblemLists = (from x in db.Report_RowMaterialProblem + where x.ReportId == this.ReportId + select x).ToList(); + if (rowMaterialProblemLists.Count > 0) + { + gvRowMaterialProblem.Hidden = false; + gvRowMaterialProblem.DataSource = rowMaterialProblemLists; + gvRowMaterialProblem.DataBind(); + } + //(2)施工过程问题 + constructionProblemsLists.Clear(); + constructionProblemsLists = (from x in db.Report_ConstructionProblems + where x.ReportId == this.ReportId + select x).ToList(); + if (constructionProblemsLists.Count > 0) + { + gvConstructionProblems.Hidden = false; + gvConstructionProblems.DataSource = constructionProblemsLists; + gvConstructionProblems.DataBind(); + } + #endregion + + #region 加载19.下月质量控制重点 + nextQualityControlLists.Clear(); + nextQualityControlLists = (from x in db.Report_NextQualityControl + where x.ReportId == this.ReportId + select x).ToList(); + if (nextQualityControlLists.Count > 0) + { + gvNextQualityControl.Hidden = false; + gvNextQualityControl.DataSource = nextQualityControlLists; + gvNextQualityControl.DataBind(); + } + #endregion + + #region 加载文本框内容 + var txtReportList = db.Report_TextBoxContent.Where(x => x.ReportId == ReportId).ToList(); + txtAre0.Text = txtReportList.FirstOrDefault(x => x.ContentType == "0").ContentText; + txtAre1.Text = txtReportList.FirstOrDefault(x => x.ContentType == "1").ContentText; + txtAre2.Text = txtReportList.FirstOrDefault(x => x.ContentType == "2").ContentText; + + txtAre20.Text = txtReportList.FirstOrDefault(x => x.ContentType == "20").ContentText; + txtAre21.Text = txtReportList.FirstOrDefault(x => x.ContentType == "21").ContentText; + txtAre22.Text = txtReportList.FirstOrDefault(x => x.ContentType == "22").ContentText; + txtAre8.Text = txtReportList.FirstOrDefault(x => x.ContentType == "8").ContentText; + + imgPhoto.ImageUrl = "~/" + txtReportList.FirstOrDefault(x => x.ContentType == "23-1").ImageUrl; + txtPhotoContent1.Text = txtReportList.FirstOrDefault(x => x.ContentType == "23-1").ContentText; + imgPhoto2.ImageUrl = "~/" + txtReportList.FirstOrDefault(x => x.ContentType == "23-2").ImageUrl; + txtPhotoContent2.Text = txtReportList.FirstOrDefault(x => x.ContentType == "23-2").ContentText; + imgPhoto3.ImageUrl = "~/" + txtReportList.FirstOrDefault(x => x.ContentType == "23-3").ImageUrl; + txtPhotoContent3.Text = txtReportList.FirstOrDefault(x => x.ContentType == "23-3").ContentText; + imgPhoto4.ImageUrl = "~/" + txtReportList.FirstOrDefault(x => x.ContentType == "23-4").ImageUrl; + txtPhotoContent4.Text = txtReportList.FirstOrDefault(x => x.ContentType == "23-4").ContentText; + imgPhoto5.ImageUrl = "~/" + txtReportList.FirstOrDefault(x => x.ContentType == "23-5").ImageUrl; + txtPhotoContent5.Text = txtReportList.FirstOrDefault(x => x.ContentType == "23-5").ContentText; + imgPhoto6.ImageUrl = "~/" + txtReportList.FirstOrDefault(x => x.ContentType == "23-6").ImageUrl; + txtPhotoContent6.Text = txtReportList.FirstOrDefault(x => x.ContentType == "23-6").ContentText; + #endregion + + //加载所有grid + lodAllGrid("1"); + } + else + { + this.txtStartDate.Text = string.IsNullOrEmpty(Request.Params["startdate"]) ? string.Format("{0:yyyy-MM-dd}", DateTime.Now) : Request.Params["startdate"]; + this.txtEndDate.Text = string.IsNullOrEmpty(Request.Params["enddate"]) ? string.Format("{0:yyyy-MM-dd}", Convert.ToDateTime(this.txtStartDate.Text).AddDays(6)) : Request.Params["enddate"]; + //给个新的主键 + ReportId = Guid.NewGuid().ToString(); + AddOrUpdate = "add"; + + //加载所有grid + lodAllGrid("0"); + } + + Grid10.EmptyText = "
无数据
"; + gvTj.EmptyText = "
无数据
"; + GvSb.EmptyText = "
无数据
"; + GvGD.EmptyText = "
无数据
"; + GvDq.EmptyText = "
无数据
"; + GvYb.EmptyText = "
无数据
"; + GvFf.EmptyText = "
无数据
"; + GvXf.EmptyText = "
无数据
"; + + hidReportId.Value = ReportId; + } + } + + /// + /// 加载grid + /// + /// + void lodAllGrid(string objType) + { + //3.1 加载一般施工方案审批情况 + loadGeneralPlanApproval(objType); + + //3.2 加载危大工程方案审批情况 + loadMajorPlanApproval(objType); + + //3.3 质量控制点或检验试验计划(ITP)情况 + loadInspectionTestPlan(objType); + + //4 加载设计交底管理情况 + loadDesignDetailsApprove(objType); + + //5 加载图纸会审管理情况 + loadReviewDrawings(objType); + + //6 加载设计变更管理情况 + loadDesignChangeOrder(); + + //7.1 加载合格焊工管理情况 + loadPassWelder(); + + //7.3 加载无损检测管理 + loadProcessControl_NondestructiveTest_New(); + + //8 设备报验管理Grid11 + LoadInspectionEquipment(objType); + + //加载9.计量器具报验管理情况 + loadMeasuringInspection(objType); + //加载10.现场质量共检数据 + loadInspectionDataInspection(objType); + //加载11.压力管道监检情况 + loadPressureInspection(objType); + //加载12.管道试压包管理情况 + loadPipingInspection(objType); + //加载13.特种设备监检情况 + loadSpecialInspection(objType); + ////加载14.NCR管理情况 + loadNcrManagementInspection(objType); + + //加载15.质量巡检情况 + loadQualityInspection(objType); + //加载16.质量专项检查情况 + loadSpecialCheck(objType); + //加载17.质量文件上报情况 + loadFileReport(objType); + } + #endregion + + #region 时间选择事件 + /// + /// 开始时间选择事件 + /// + /// + /// + protected void txtStartDate_TextChanged(object sender, EventArgs e) + { + if (!string.IsNullOrEmpty(this.txtStartDate.Text.Trim())) + { + string url = Request.Url.ToString(); + if (url.Contains("?")) + { + url = Request.Url.ToString().Substring(0, Request.Url.ToString().LastIndexOf('?')); + } + Response.Redirect(url + "?startdate=" + txtStartDate.Text + "&enddate=" + txtEndDate.Text); + } + } + + protected void TextBox_TextChanged(object sender, EventArgs e) + { + if (!string.IsNullOrEmpty(this.txtStartDate.Text.Trim()) && !string.IsNullOrEmpty(this.txtEndDate.Text.Trim())) + { + if (Funs.GetNewDateTime(this.txtStartDate.Text.Trim()) > Funs.GetNewDateTime(this.txtEndDate.Text.Trim())) + { + Alert.ShowInTop("开始时间不能大于结束时间!", MessageBoxIcon.Warning); + return; + } + PageContext.RegisterStartupScript("refresh();"); + } + } + + protected void btnLoad_Click(object sender, EventArgs e) + { + if (AddOrUpdate == "update") + { + lodAllGrid("1"); + PageContext.RegisterStartupScript("rehiden();"); + } + else + { + lodAllGrid("0"); + PageContext.RegisterStartupScript("rehiden();"); + } + } + + #endregion + + #region 本月质量目标管理情况 Grid1方法 + protected void btnAddGrid1_Click(object sender, EventArgs e) + { + Grid1.Hidden = false; + + JArray teamGroupData = Grid1.GetMergedData(); + List list = new List(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + values.Add("Id", teamGroupRow.Value("id")); + list.Add(values); + } + JObject defaultObj = new JObject + { { "Id",Guid.NewGuid() }, + { "ReportId", ReportId }, + { "ProStage", "" }, + { "ProDescribe",""}, + { "TargetValue", "" }, + { "MonthPer","" }, + { "Remarks", "" }, + { "SortId","" }, + { "Delete1", String.Format("
", GetDeleteScriptGrid1(), IconHelper.GetResolvedIconUrl(Icon.Delete)) } + }; + list.Add(defaultObj); + Grid1.DataSource = list; + Grid1.DataBind(); + } + + protected void Grid1_PreDataBound(object sender, EventArgs e) + { + // 设置LinkButtonField的点击客户端事件 + LinkButtonField deleteField = Grid1.FindColumn("Delete1") as LinkButtonField; + deleteField.OnClientClick = GetDeleteScriptGrid1(); + } + /// + /// 删除提示 + /// + /// + private string GetDeleteScriptGrid1() + { + return Confirm.GetShowReference("删除选中行?", String.Empty, MessageBoxIcon.Question, Grid1.GetDeleteSelectedRowsReference(), String.Empty); + } + #endregion + + #region 3.1一般施工方案审批情况 Grid2方法 + /// + /// 加载一般施工审批情况 + /// + void loadGeneralPlanApproval(string objType) + { + DateTime startDate = Convert.ToDateTime(this.txtStartDate.Text.Trim()); + DateTime endDate = Convert.ToDateTime(this.txtEndDate.Text.Trim()); + var list = new List(); + int i = 1; + + int Quantity1Sum = 0; + int Quantity2Sum = 0; + //加载所有单位 + //var units = from x in db.Project_ProjectUnit + // join y in db.Base_Unit on x.UnitId equals y.UnitId + // where x.ProjectId == this.CurrUser.LoginProjectId && (x.UnitType == BLL.Const.ProjectUnitType_2 || x.UnitType == BLL.Const.ProjectUnitType_1) + // orderby y.UnitCode + // select new { x.UnitId, y.UnitName }; + units = units.Where(x => x.UnitType == BLL.Const.ProjectUnitType_2 || x.UnitType == BLL.Const.ProjectUnitType_1).ToList(); + foreach (var item in units) + { + + var query = from c in db.Comprehensive_GeneralPlanApproval + + join u in db.Base_Unit on c.UnitId equals u.UnitId into unitJoin + + from u in unitJoin.DefaultIfEmpty() + + where c.ProjectId == this.CurrUser.LoginProjectId && c.UnitId == item.UnitId + select new + + { + c.ApprovalDate, + c.ProjectId, + u.UnitId, + u.UnitName, + c.CompileDate + }; + + var AllList = query.ToList(); + var monethCount = query + .Where(x => (x.ApprovalDate >= Convert.ToDateTime(startDate) && x.ApprovalDate <= Convert.ToDateTime(endDate))); + + Model.Report_Construction_Plan model = new Model.Report_Construction_Plan(); + + model.Id = Guid.NewGuid().ToString(); + model.UnitOrMajor = item.UnitName; + model.Quantity1 = monethCount.Count(); + model.Quantity2 = AllList.Count(); + model.ReportId = ReportId; + //如果是修改,查询表中数据 + if (objType == "1") + { + var NewModel = db.Report_Construction_Plan.FirstOrDefault(x => x.ReportId == ReportId && x.UnitOrMajor == item.UnitName && x.ReType == "0"); + if (NewModel != null) + { + model.Remarks = NewModel.Remarks; + } + } + list.Add(model); + + Quantity1Sum += monethCount.Count(); + Quantity2Sum += AllList.Count(); + i++; + } + Grid2.DataSource = list; + Grid2.DataBind(); + + //合计 + JObject summary = new JObject(); + summary.Add("UnitOrMajor", "合计"); + summary.Add("Quantity1", Quantity1Sum.ToString()); + summary.Add("Quantity2", Quantity2Sum.ToString()); + + Grid2.SummaryData = summary; + } + + + #endregion + + #region 3.2 危大工程方案审批情况 Grid3方法 + /// + /// 加载一般施工审批情况 + /// + void loadMajorPlanApproval(string objType) + { + DateTime startDate = Convert.ToDateTime(this.txtStartDate.Text.Trim()); + DateTime endDate = Convert.ToDateTime(this.txtEndDate.Text.Trim()); + var list = new List(); + int i = 1; + + int Quantity1Sum = 0; + int Quantity2Sum = 0; + int Quantity3Sum = 0; + //加载所有单位 + //var units = from x in db.Project_ProjectUnit + // join y in db.Base_Unit on x.UnitId equals y.UnitId + // where x.ProjectId == this.CurrUser.LoginProjectId && (x.UnitType == BLL.Const.ProjectUnitType_2 || x.UnitType == BLL.Const.ProjectUnitType_1) + // orderby y.UnitCode + // select new { x.UnitId, y.UnitName }; + units = units.Where(x => x.UnitType == BLL.Const.ProjectUnitType_2 || x.UnitType == BLL.Const.ProjectUnitType_1).ToList(); + foreach (var item in units) + { + + var query = from c in db.Comprehensive_MajorPlanApproval + + join u in db.Base_Unit on c.UnitId equals u.UnitId into unitJoin + + from u in unitJoin.DefaultIfEmpty() + + where c.ProjectId == this.CurrUser.LoginProjectId && c.UnitId == item.UnitId + select new + + { + c.ApprovalDate, + c.ProjectId, + u.UnitId, + u.UnitName, + c.ExpertReviewMan, + c.IsReview, + c.CompileDate + }; + + var AllList = query.ToList(); + var monethCount = query + .Where(x => (x.ApprovalDate >= Convert.ToDateTime(startDate) && x.ApprovalDate <= Convert.ToDateTime(endDate))); + + Model.Report_Construction_Plan model = new Model.Report_Construction_Plan(); + + model.Id = Guid.NewGuid().ToString(); + model.UnitOrMajor = item.UnitName; + model.Quantity1 = monethCount.Count(); + model.Quantity2 = AllList.Count(); + model.Quantity3 = AllList.Where(x => x.IsReview == true).ToList().Count(); + model.ReportId = ReportId; + //如果是修改,查询表中数据 + if (objType == "1") + { + var NewModel = db.Report_Construction_Plan.FirstOrDefault(x => x.ReportId == ReportId && x.UnitOrMajor == item.UnitName && x.ReType == "1"); + if (NewModel != null) + { + model.Remarks = NewModel.Remarks; + } + } + list.Add(model); + + Quantity1Sum += monethCount.Count(); + Quantity2Sum += AllList.Count(); + Quantity3Sum += Convert.ToInt32(model.Quantity3); + i++; + } + Grid3.DataSource = list; + Grid3.DataBind(); + + //合计 + JObject summary = new JObject(); + summary.Add("UnitOrMajor", "合计"); + summary.Add("Quantity1", Quantity1Sum.ToString()); + summary.Add("Quantity2", Quantity2Sum.ToString()); + summary.Add("Quantity3", Quantity3Sum.ToString()); + Grid3.SummaryData = summary; + } + + + #endregion + + #region 3.3 质量控制点或检验试验计划(ITP)情况 Grid4方法 + /// + /// 加载一般施工审批情况 + /// + void loadInspectionTestPlan(string objType) + { + DateTime startDate = Convert.ToDateTime(this.txtStartDate.Text.Trim()); + DateTime endDate = Convert.ToDateTime(this.txtEndDate.Text.Trim()); + var list = new List(); + int i = 1; + + int Quantity1Sum = 0; + int Quantity2Sum = 0; + //加载所有专业 + //var CNProfessionals = from x in db.Base_CNProfessional + // where x.CNProfessionalId != BLL.Const.CNProfessionalConstructId + // && x.CNProfessionalId != BLL.Const.ComprehensiveId + // orderby x.SortIndex + // select new + // { + // x.CNProfessionalId, + // x.ProfessionalName + // }; + + + foreach (var item in CNProfessionals) + { + + var query = from c in db.Inspection_Test_Plan + + join u in db.Base_Unit on c.UnitId equals u.UnitId into unitJoin + + from u in unitJoin.DefaultIfEmpty() + + where c.ProjectId == this.CurrUser.LoginProjectId && c.CNProfessionalId == item.CNProfessionalId + select new + + { + c.ApprovalDate, + c.ProjectId, + u.UnitId, + u.UnitName, + c.CreateDate + }; + + var AllList = query.ToList(); + var monethCount = query + .Where(x => (x.CreateDate >= Convert.ToDateTime(startDate) && x.CreateDate <= Convert.ToDateTime(endDate))); + + Model.Report_Construction_Plan model = new Model.Report_Construction_Plan(); + + model.Id = Guid.NewGuid().ToString(); + model.UnitOrMajor = item.ProfessionalName; + model.Quantity1 = monethCount.Count(); + model.Quantity2 = AllList.Count(); + + model.ReportId = ReportId; + //如果是修改,查询表中数据 + if (objType == "1") + { + var NewModel = db.Report_Construction_Plan.FirstOrDefault(x => x.ReportId == ReportId && x.UnitOrMajor == item.ProfessionalName && x.ReType == "2"); + if (NewModel != null) + { + model.Remarks = NewModel.Remarks; + } + } + list.Add(model); + + Quantity1Sum += monethCount.Count(); + Quantity2Sum += AllList.Count(); + + i++; + } + Grid4.DataSource = list; + Grid4.DataBind(); + + //合计 + JObject summary = new JObject(); + summary.Add("UnitOrMajor", "合计"); + summary.Add("Quantity1", Quantity1Sum.ToString()); + summary.Add("Quantity2", Quantity2Sum.ToString()); + Grid4.SummaryData = summary; + } + + + #endregion + + #region 4 设计交底管理情况 Grid5方法 + /// + /// 加载一般施工审批情况 + /// + void loadDesignDetailsApprove(string objType) + { + DateTime startDate = Convert.ToDateTime(this.txtStartDate.Text.Trim()); + DateTime endDate = Convert.ToDateTime(this.txtEndDate.Text.Trim()); + var list = new List(); + int i = 1; + + int Quantity1Sum = 0; + int Quantity2Sum = 0; + //加载所有专业 + //var CNProfessionals = from x in db.Base_CNProfessional + // where x.CNProfessionalId != BLL.Const.CNProfessionalConstructId + // && x.CNProfessionalId != BLL.Const.ComprehensiveId + // orderby x.SortIndex + // select new + // { + // x.CNProfessionalId, + // x.ProfessionalName + // }; + + + foreach (var item in CNProfessionals) + { + + var query = from c in db.Comprehensive_DesignDetails + + where c.ProjectId == this.CurrUser.LoginProjectId && c.CNProfessionalId == item.CNProfessionalId + //&& c.Status == "3" + select new + + { + c.Status, + c.CompileDate, + c.ProjectId, + + }; + + var AllList = query.ToList(); + var monethCount = query + .Where(x => (x.CompileDate >= Convert.ToDateTime(startDate) && x.CompileDate <= Convert.ToDateTime(endDate))); + + Model.Report_Construction_Plan model = new Model.Report_Construction_Plan(); + + model.Id = Guid.NewGuid().ToString(); + model.UnitOrMajor = item.ProfessionalName; + model.Quantity1 = monethCount.Count(); + model.Quantity2 = AllList.Count(); + + model.ReportId = ReportId; + //如果是修改,查询表中数据 + if (objType == "1") + { + var NewModel = db.Report_Construction_Plan.FirstOrDefault(x => x.ReportId == ReportId && x.UnitOrMajor == item.ProfessionalName && x.ReType == "3"); + if (NewModel != null) + { + model.Remarks = NewModel.Remarks; + } + } + list.Add(model); + + Quantity1Sum += monethCount.Count(); + Quantity2Sum += AllList.Count(); + + i++; + } + Grid5.DataSource = list; + Grid5.DataBind(); + + //合计 + JObject summary = new JObject(); + summary.Add("UnitOrMajor", "合计"); + summary.Add("Quantity1", Quantity1Sum.ToString()); + summary.Add("Quantity2", Quantity2Sum.ToString()); + Grid5.SummaryData = summary; + } + + + #endregion + + #region 5 图纸会审管理情况 Grid6方法 + /// + /// 加载一图纸会审管理情况 + /// + void loadReviewDrawings(string objType) + { + DateTime startDate = Convert.ToDateTime(this.txtStartDate.Text.Trim()); + DateTime endDate = Convert.ToDateTime(this.txtEndDate.Text.Trim()); + var list = new List(); + int i = 1; + + int Quantity1Sum = 0; + int Quantity2Sum = 0; + //加载所有专业 + //var CNProfessionals = from x in db.Base_CNProfessional + // where x.CNProfessionalId != BLL.Const.CNProfessionalConstructId + // && x.CNProfessionalId != BLL.Const.ComprehensiveId + // orderby x.SortIndex + // select new + // { + // x.CNProfessionalId, + // x.ProfessionalName + // }; + + + foreach (var item in CNProfessionals) + { + + var query = from c in db.Comprehensive_ReviewDrawings + + where c.ProjectId == this.CurrUser.LoginProjectId && c.CNProfessionalId == item.CNProfessionalId + //&& c.Status == "3" + select new + + { + c.Status, + c.ReviewDate, + c.ProjectId, + + }; + + var AllList = query.ToList(); + var monethCount = query + .Where(x => (x.ReviewDate >= Convert.ToDateTime(startDate) && x.ReviewDate <= Convert.ToDateTime(endDate))); + + Model.Report_Construction_Plan model = new Model.Report_Construction_Plan(); + + model.Id = Guid.NewGuid().ToString(); + model.UnitOrMajor = item.ProfessionalName; + model.Quantity1 = monethCount.Count(); + model.Quantity2 = AllList.Count(); + + model.ReportId = ReportId; + //如果是修改,查询表中数据 + if (objType == "1") + { + var NewModel = db.Report_Construction_Plan.FirstOrDefault(x => x.ReportId == ReportId && x.UnitOrMajor == item.ProfessionalName && x.ReType == "4"); + if (NewModel != null) + { + model.Remarks = NewModel.Remarks; + } + } + list.Add(model); + + Quantity1Sum += monethCount.Count(); + Quantity2Sum += AllList.Count(); + + i++; + } + Grid6.DataSource = list; + Grid6.DataBind(); + + //合计 + JObject summary = new JObject(); + summary.Add("UnitOrMajor", "合计"); + summary.Add("Quantity1", Quantity1Sum.ToString()); + summary.Add("Quantity2", Quantity2Sum.ToString()); + Grid6.SummaryData = summary; + } + + + #endregion + + #region 6 设计变更管理情况 Grid7方法 + /// + /// 加载设计变更管理情况 + /// + void loadDesignChangeOrder() + { + int Quantity1Sum = 0, Quantity2Sum = 0, Quantity3Sum = 0, Quantity4Sum = 0, Quantity5Sum = 0, Quantity6Sum = 0; + + DateTime startDate = Convert.ToDateTime(this.txtStartDate.Text.Trim()); + DateTime endDate = Convert.ToDateTime(this.txtEndDate.Text.Trim()); + DateTime projectStartDate = Convert.ToDateTime("2015-01-01"); + List StatisticsList = new List(); + Model.Base_Project project = BLL.ProjectService.GetProjectByProjectId(this.CurrUser.LoginProjectId); + if (project != null) + { + if (project.StartDate != null) + { + projectStartDate = Convert.ToDateTime(project.StartDate); + } + } + int i = 1; + var cNProfessionals = from x in db.Base_CNProfessional + where x.CNProfessionalId != BLL.Const.CNProfessionalConstructId + && x.CNProfessionalId != BLL.Const.ComprehensiveId + orderby x.SortIndex + select x; + foreach (var item in cNProfessionals) + { + //专业下所有集合 + List totalManagementList = BLL.DesignChangeOrderService.GetDesignChangeOrderListByCNProfessionalIdAndDate(this.CurrUser.LoginProjectId, item.CNProfessionalId, projectStartDate, DateTime.Now); + //专业下当期集合 + List managementList = BLL.DesignChangeOrderService.GetDesignChangeOrderListByCNProfessionalIdAndDate(this.CurrUser.LoginProjectId, item.CNProfessionalId, startDate, endDate); + Model.CheckStatisc checkStatisc = new Model.CheckStatisc(); + checkStatisc.Num = i; + checkStatisc.WorkName = item.ProfessionalName; + checkStatisc.CheckNum = managementList.Count(); + checkStatisc.TotalCheckNum = totalManagementList.Count(); + checkStatisc.OKNum = managementList.Count(x => x.ApprovalDate != null); + checkStatisc.TotalOKNum = totalManagementList.Count(x => x.ApprovalDate != null); + checkStatisc.OneOKRate = managementList.Count(x => x.ImplementationFrontState == "已完成").ToString(); //当期完成数 + checkStatisc.TotalOneOKRate = totalManagementList.Count(x => x.ImplementationFrontState == "已完成").ToString(); //累计完成数 + + StatisticsList.Add(checkStatisc); + Quantity1Sum += checkStatisc.CheckNum; + Quantity2Sum += checkStatisc.TotalCheckNum; + Quantity3Sum += checkStatisc.OKNum; + Quantity4Sum += checkStatisc.TotalOKNum; + Quantity5Sum += Convert.ToInt32(checkStatisc.OneOKRate); + Quantity6Sum += Convert.ToInt32(checkStatisc.TotalOneOKRate); + } + + Grid7.DataSource = StatisticsList; + Grid7.DataBind(); + + //合计 + JObject summary = new JObject(); + summary.Add("WorkName", "合计"); + summary.Add("CheckNum", Quantity1Sum.ToString()); + summary.Add("TotalCheckNum", Quantity2Sum.ToString()); + summary.Add("OKNum", Quantity3Sum.ToString()); + summary.Add("TotalOKNum", Quantity4Sum.ToString()); + summary.Add("OneOKRate", Quantity5Sum.ToString()); + summary.Add("TotalOneOKRate", Quantity6Sum.ToString()); + Grid7.SummaryData = summary; + } + + + #endregion + + #region 7.1 合格焊工管理情况 Grid8方法 + /// + /// 加载合格焊工管理情况 + /// + void loadPassWelder() + { + int Quantity1Sum = 0, Quantity2Sum = 0, Quantity3Sum = 0, Quantity4Sum = 0, Quantity5Sum = 0, Quantity6Sum = 0, Quantity7Sum = 0, Quantity8Sum = 0; + DateTime startDate = Convert.ToDateTime(this.txtStartDate.Text.Trim()); + DateTime endDate = Convert.ToDateTime(this.txtEndDate.Text.Trim()); + DateTime projectStartDate = Convert.ToDateTime("2015-01-01"); + List StatisticsList = new List(); + Model.Base_Project project = BLL.ProjectService.GetProjectByProjectId(this.CurrUser.LoginProjectId); + if (project != null) + { + if (project.StartDate != null) + { + projectStartDate = Convert.ToDateTime(project.StartDate); + } + } + int i = 1; + //var units = from x in db.Project_ProjectUnit + // join y in db.Base_Unit on x.UnitId equals y.UnitId + // where x.ProjectId == this.CurrUser.LoginProjectId && x.UnitType == BLL.Const.ProjectUnitType_2 + // orderby y.UnitCode + // select new { x.UnitId, y.UnitName }; + units = units.Where(x => x.UnitType == BLL.Const.ProjectUnitType_2).ToList(); + foreach (var item in units) + { + + var query = from c in db.Comprehensive_InspectionPerson + + join u in db.Base_Unit on c.UnitId equals u.UnitId into unitJoin + + from u in unitJoin.DefaultIfEmpty() + join cn in db.Base_CNProfessional on c.CNProfessionalId equals cn.CNProfessionalId into cnJoin + + from cn in cnJoin.DefaultIfEmpty() + join p in db.Base_Post on c.PostId equals p.PostId into postJoin + + from p in postJoin.DefaultIfEmpty() + where c.ProjectId == this.CurrUser.LoginProjectId && c.UnitId == item.UnitId + select new + + { + c.InspectionPersonId, + c.ProjectId, + u.UnitId, + u.UnitName, + c.PersonName, + c.ApprovalTime, + cn.ProfessionalName, + p.PostName + + }; + + //单位下所有集合 + // List totalWelderList = BLL.PersonManageService.GetWelderListByUnitId(this.CurrUser.LoginProjectId, item.UnitId); + //List welderList = BLL.PersonManageService.GetWelderListByUnitIdAndDate(this.CurrUser.LoginProjectId, item.UnitId, startDate, endDate); + var totalWelderList = query.ToList(); + var welderList = query + .Where(x => (x.ApprovalTime >= Convert.ToDateTime(startDate) && x.ApprovalTime <= Convert.ToDateTime(endDate))); + Model.PassWelderStatisc passWelderStatisc = new Model.PassWelderStatisc(); + passWelderStatisc.Num = i; + passWelderStatisc.UnitName = item.UnitName; + passWelderStatisc.PipeMountGuard = welderList.Count(x => x.ProfessionalName == "管道" && x.PostName == "焊工"); + passWelderStatisc.PipeTotal = totalWelderList.Count(x => x.ProfessionalName == "管道" && x.PostName == "焊工"); + passWelderStatisc.SteelStructureMountGuard = welderList.Count(x => x.ProfessionalName == "土建" && x.PostName == "焊工"); + passWelderStatisc.SteelStructureTotal = totalWelderList.Count(x => x.ProfessionalName == "土建" && x.PostName == "焊工"); + passWelderStatisc.EquipmentMountGuard = welderList.Count(x => x.ProfessionalName == "设备" && x.PostName == "焊工"); + passWelderStatisc.EquipmentTotal = totalWelderList.Count(x => x.ProfessionalName == "设备" && x.PostName == "焊工"); + passWelderStatisc.OtherMountGuard = welderList.Count(x => x.ProfessionalName != "管道" && x.ProfessionalName != "土建" && x.ProfessionalName != "设备" && x.PostName == "焊工"); + passWelderStatisc.OtherTotal = totalWelderList.Count(x => x.ProfessionalName != "管道" && x.ProfessionalName != "土建" && x.ProfessionalName != "设备" && x.PostName == "焊工"); + StatisticsList.Add(passWelderStatisc); + i++; + Quantity1Sum += passWelderStatisc.PipeMountGuard; + Quantity2Sum += passWelderStatisc.PipeTotal; + Quantity3Sum += passWelderStatisc.SteelStructureMountGuard; + Quantity4Sum += passWelderStatisc.SteelStructureTotal; + Quantity5Sum += passWelderStatisc.EquipmentMountGuard; + Quantity6Sum += passWelderStatisc.EquipmentTotal; + Quantity7Sum += passWelderStatisc.OtherMountGuard; + Quantity8Sum += passWelderStatisc.OtherTotal; + } + + Grid8.DataSource = StatisticsList; + Grid8.DataBind(); + + //合计 + JObject summary = new JObject(); + summary.Add("UnitName", "合计"); + summary.Add("PipeMountGuard", Quantity1Sum.ToString()); + summary.Add("PipeTotal", Quantity2Sum.ToString()); + summary.Add("SteelStructureMountGuard", Quantity3Sum.ToString()); + summary.Add("SteelStructureTotal", Quantity4Sum.ToString()); + summary.Add("EquipmentMountGuard", Quantity5Sum.ToString()); + summary.Add("EquipmentTotal", Quantity6Sum.ToString()); + summary.Add("OtherMountGuard", Quantity7Sum.ToString()); + summary.Add("OtherTotal", Quantity8Sum.ToString()); + Grid8.SummaryData = summary; + } + #endregion + + #region 7.2 PQR/WPS报验情况 Grid9方法 + protected void btnAddGrid9_Click(object sender, EventArgs e) + { + Grid9.Hidden = false; + + JArray teamGroupData = Grid9.GetMergedData(); + List list = new List(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + values.Add("Id", teamGroupRow.Value("id")); + list.Add(values); + } + JObject defaultObj = new JObject + { { "Id",Guid.NewGuid() }, + { "ReportId", ReportId }, + { "ReType", "2" }, + { "UnitOrMajor",""}, + { "Quantity1", "" }, + { "Quantity2","" }, + { "Remarks", "" }, + { "Delete9", String.Format("", GetDeleteScriptGrid9(), IconHelper.GetResolvedIconUrl(Icon.Delete)) } + }; + list.Add(defaultObj); + Grid9.DataSource = list; + Grid9.DataBind(); + } + + protected void Grid9_PreDataBound(object sender, EventArgs e) + { + // 设置LinkButtonField的点击客户端事件 + LinkButtonField deleteField = Grid9.FindColumn("Delete9") as LinkButtonField; + deleteField.OnClientClick = GetDeleteScriptGrid9(); + } + /// + /// 删除提示 + /// + /// + private string GetDeleteScriptGrid9() + { + return Confirm.GetShowReference("删除选中行?", String.Empty, MessageBoxIcon.Question, Grid9.GetDeleteSelectedRowsReference(), String.Empty); + } + + /// + /// 为grid9合计行 + /// + void OutPutSummaryGrid9() + { + DataTable source = ObjectToTable(Grid9.DataSource); + int Quantity1Total = 0, Quantity2Total = 0; + foreach (DataRow row in source.Rows) + { + Quantity1Total += Convert.ToInt32(row["Quantity1"]); + Quantity2Total += Convert.ToInt32(row["Quantity2"]); + } + + JObject summary = new JObject(); + summary.Add("UnitOrMajor", "合计"); + summary.Add("Quantity1", Quantity1Total.ToString()); + summary.Add("Quantity2", Quantity2Total.ToString()); + Grid9.SummaryData = summary; + } + + public static DataTable ObjectToTable(object obj) + { + try + { + Type t; + if (obj.GetType().IsGenericType) + { + t = obj.GetType().GetGenericTypeDefinition(); + } + else + { + t = obj.GetType(); + } + if (t == typeof(List<>) || + t == typeof(IEnumerable<>)) + { + DataTable dt = new DataTable(); + IEnumerable lstenum = obj as IEnumerable; + if (lstenum.Count() > 0) + { + var ob1 = lstenum.GetEnumerator(); + ob1.MoveNext(); + foreach (var item in ob1.Current.GetType().GetProperties()) + { + dt.Columns.Add(new DataColumn() { ColumnName = item.Name }); + } + //数据 + foreach (var item in lstenum) + { + DataRow row = dt.NewRow(); + foreach (var sub in item.GetType().GetProperties()) + { + row[sub.Name] = sub.GetValue(item, null); + } + dt.Rows.Add(row); + } + return dt; + } + } + else if (t == typeof(DataTable)) + { + return (DataTable)obj; + } + else //(t==typeof(Object)) + { + DataTable dt = new DataTable(); + foreach (var item in obj.GetType().GetProperties()) + { + dt.Columns.Add(new DataColumn() { ColumnName = item.Name }); + } + DataRow row = dt.NewRow(); + foreach (var item in obj.GetType().GetProperties()) + { + row[item.Name] = item.GetValue(obj, null); + } + dt.Rows.Add(row); + return dt; + } + + } + catch (Exception ex) + { + } + return null; + } + + #endregion + + #region 7.3 无损检测管理 Grid10方法 + void loadProcessControl_NondestructiveTest_New() + { + DateTime startDate = Convert.ToDateTime(this.txtStartDate.Text.Trim()); + DateTime endDate = Convert.ToDateTime(this.txtEndDate.Text.Trim()); + var list = new List(); + //加载所有施工分包单位 + //var units = from x in db.Project_ProjectUnit + // join y in db.Base_Unit on x.UnitId equals y.UnitId + // where x.ProjectId == this.CurrUser.LoginProjectId && (x.UnitType == BLL.Const.ProjectUnitType_2) + // orderby y.UnitCode + // select new { x.UnitId, y.UnitName }; + units = units.Where(x => x.UnitType == BLL.Const.ProjectUnitType_2).ToList(); + + int? totalNum0 = 0, totalNum1 = 0;//拍片数量合计 + + + foreach (var item in units) + { + int? num0 = 0, num1 = 0;//拍片数量小计 + + var query = from c in db.ProcessControl_NondestructiveTest_New + + join u in db.Base_Unit on c.UnitId equals u.UnitId into unitJoin + + from u in unitJoin.DefaultIfEmpty() + + where c.ProjectId == this.CurrUser.LoginProjectId && c.UnitId == item.UnitId + && c.CreateDate >= Convert.ToDateTime(startDate) && c.CreateDate <= Convert.ToDateTime(endDate) + + orderby c.CreateDate descending + + select new + + { + c.CreateDate, + c.ProjectId, + u.UnitId, + u.UnitName, + c.ProfessionalName, + c.MonthQuantity, + c.TotalQuantity, + c.MonthRate, + c.TotalRate + }; + if (query.ToList().Count > 0) + { + //加载工艺管道 + var gygdModel = query.FirstOrDefault(x => x.ProfessionalName == "工艺管道"); + var model = new Model.ProcessControl_NondestructiveTest_New(); + model.Id = Guid.NewGuid().ToString(); + model.CreateMan = item.UnitName;//用作存储施工单位名称 + model.ProfessionalName = "工艺管道"; + + if (gygdModel != null) + { + model.MonthQuantity = gygdModel.MonthQuantity; + model.TotalQuantity = gygdModel.TotalQuantity; + model.MonthRate = gygdModel.MonthRate + "%"; + model.TotalRate = gygdModel.TotalRate + "%"; + #region 小计和合计 + //小计 + num0 += gygdModel.MonthQuantity; + num1 += gygdModel.TotalQuantity; + + //合计 + totalNum0 += gygdModel.MonthQuantity; + totalNum1 += gygdModel.TotalQuantity; + + #endregion + list.Add(model); + } + else + { + model.MonthQuantity = 0; + model.TotalQuantity = 0; + model.MonthRate = "0%"; + model.TotalRate = "0%"; + list.Add(model); + } + + + + + //地管 + gygdModel = query.FirstOrDefault(x => x.ProfessionalName == "地管"); + model = new Model.ProcessControl_NondestructiveTest_New(); + model.Id = Guid.NewGuid().ToString(); + model.CreateMan = item.UnitName;//用作存储施工单位名称 + model.ProfessionalName = "地管"; + + if (gygdModel != null) + { + model.MonthQuantity = gygdModel.MonthQuantity; + model.TotalQuantity = gygdModel.TotalQuantity; + model.MonthRate = gygdModel.MonthRate + "%"; + model.TotalRate = gygdModel.TotalRate + "%"; + #region 小计和合计 + //小计 + num0 += gygdModel.MonthQuantity; + num1 += gygdModel.TotalQuantity; + + //合计 + totalNum0 += gygdModel.MonthQuantity; + totalNum1 += gygdModel.TotalQuantity; + + #endregion + list.Add(model); + } + else + { + model.MonthQuantity = 0; + model.TotalQuantity = 0; + model.MonthRate = "0%"; + model.TotalRate = "0%"; + list.Add(model); + } + + + //非标 + gygdModel = query.FirstOrDefault(x => x.ProfessionalName == "非标"); + model = new Model.ProcessControl_NondestructiveTest_New(); + model.Id = Guid.NewGuid().ToString(); + model.CreateMan = item.UnitName;//用作存储施工单位名称 + model.ProfessionalName = "非标"; + + if (gygdModel != null) + { + model.MonthQuantity = gygdModel.MonthQuantity; + model.TotalQuantity = gygdModel.TotalQuantity; + model.MonthRate = gygdModel.MonthRate + "%"; + model.TotalRate = gygdModel.TotalRate + "%"; + #region 小计和合计 + //小计 + num0 += gygdModel.MonthQuantity; + num1 += gygdModel.TotalQuantity; + + //合计 + totalNum0 += gygdModel.MonthQuantity; + totalNum1 += gygdModel.TotalQuantity; + + #endregion + list.Add(model); + } + else + { + model.MonthQuantity = 0; + model.TotalQuantity = 0; + model.MonthRate = "0%"; + model.TotalRate = "0%"; + list.Add(model); + } + //小计 + model = new Model.ProcessControl_NondestructiveTest_New(); + model.Id = Guid.NewGuid().ToString(); + model.CreateMan = item.UnitName;//用作存储施工单位名称 + model.ProfessionalName = "小计"; + model.MonthQuantity = num0; + model.TotalQuantity = num1; + model.MonthRate = ""; + model.TotalRate = ""; + list.Add(model); + } + } + if (list.Count == 0) + { + Grid10.Hidden = true; + hidWsjcgl.Hidden = false; + } + else + { + Grid10.DataSource = list; + Grid10.DataBind(); + + //合计 + //合计 + JObject summary = new JObject(); + summary.Add("CreateMan", "合计"); + summary.Add("MonthQuantity", totalNum0.ToString()); + summary.Add("TotalQuantity", totalNum1.ToString()); + + Grid10.SummaryData = summary; + } + } + #endregion + + #region 8 设备报验管理情况 Grid11方法 + /// + /// 加载一般施工审批情况 + /// + void LoadInspectionEquipment(string objType) + { + DateTime startDate = Convert.ToDateTime(this.txtStartDate.Text.Trim()); + DateTime endDate = Convert.ToDateTime(this.txtEndDate.Text.Trim()); + var list = new List(); + int i = 1; + + int Quantity1Sum = 0; + int Quantity2Sum = 0; + //加载所有单位 + //var units = from x in db.Project_ProjectUnit + // join y in db.Base_Unit on x.UnitId equals y.UnitId + // where x.ProjectId == this.CurrUser.LoginProjectId && (x.UnitType == BLL.Const.ProjectUnitType_2 || x.UnitType == BLL.Const.ProjectUnitType_1) + // orderby y.UnitCode + // select new { x.UnitId, y.UnitName }; + units = units.Where(x => x.UnitType == BLL.Const.ProjectUnitType_2 || x.UnitType == BLL.Const.ProjectUnitType_1).ToList(); + foreach (var item in units) + { + + var query = from c in db.Comprehensive_InspectionEquipment + + join u in db.Base_Unit on c.UnitId equals u.UnitId into unitJoin + + from u in unitJoin.DefaultIfEmpty() + + where c.ProjectId == this.CurrUser.LoginProjectId && c.UnitId == item.UnitId + + //&& c.Status == "3" + + select new + + { + c.SamplingResult,//1合格 2不合格 + c.ProjectId, + u.UnitId, + u.UnitName, + c.CompileDate + }; + + var AllList = query.ToList(); + var monethCount = query + .Where(x => (x.CompileDate >= Convert.ToDateTime(startDate) && x.CompileDate <= Convert.ToDateTime(endDate))); + + Model.Report_Construction_Plan model = new Model.Report_Construction_Plan(); + + model.Id = Guid.NewGuid().ToString(); + model.UnitOrMajor = item.UnitName; + model.Quantity1 = monethCount.Count(); + model.Quantity2 = AllList.Count(); + //验收合格率 + var UnqualifiedCount = AllList.Where(x => x.SamplingResult == "1").ToList().Count;//合格的数量 + if (UnqualifiedCount == AllList.Count() && AllList.Count() != 0) + { + model.QuaRate = "100%"; + } + else if (UnqualifiedCount == 0 && AllList.Count() == 0) + { + model.QuaRate = "0%"; + } + else + { + var Qualificationrate = (Convert.ToDouble(UnqualifiedCount) / Convert.ToDouble(AllList.Count)) * 100; + model.QuaRate = Qualificationrate.ToString("0.00") + "%"; + } + + model.ReportId = ReportId; + //如果是修改,查询表中数据 + if (objType == "1") + { + var NewModel = db.Report_Construction_Plan.FirstOrDefault(x => x.ReportId == ReportId && x.UnitOrMajor == item.UnitName && x.ReType == "6"); + if (NewModel != null) + { + model.Remarks = NewModel.Remarks; + } + } + list.Add(model); + + Quantity1Sum += monethCount.Count(); + Quantity2Sum += AllList.Count(); + + i++; + } + Grid11.DataSource = list; + Grid11.DataBind(); + + //合计 + JObject summary = new JObject(); + summary.Add("UnitOrMajor", "合计"); + summary.Add("Quantity1", Quantity1Sum.ToString()); + summary.Add("Quantity2", Quantity2Sum.ToString()); + + Grid11.SummaryData = summary; + } + + /// + /// 新增按钮显示文本框 + /// + /// + /// + protected void btnAddGrid11_Click(object sender, EventArgs e) + { + Form19.Hidden = false; + } + #endregion + + #region 9.计量器具报验管理情况 gvMeasuringInspection方法 + /// + /// 计量器具报验管理情况 + /// + void loadMeasuringInspection(string objType) + { + DateTime startDate = Convert.ToDateTime(this.txtStartDate.Text.Trim()); + DateTime endDate = Convert.ToDateTime(this.txtEndDate.Text.Trim()); + var list = new List(); + int i = 1; + + int Quantity1Sum = 0; + int Quantity2Sum = 0; + //加载所有单位 + //var units = from x in db.Project_ProjectUnit + // join y in db.Base_Unit on x.UnitId equals y.UnitId + // where x.ProjectId == this.CurrUser.LoginProjectId && (x.UnitType == BLL.Const.ProjectUnitType_2 || x.UnitType == BLL.Const.ProjectUnitType_1) + // orderby y.UnitCode + // select new { x.UnitId, y.UnitName }; + units = units.Where(x => x.UnitType == BLL.Const.ProjectUnitType_2 || x.UnitType == BLL.Const.ProjectUnitType_1).ToList(); + foreach (var item in units) + { + var query = from c in db.Comprehensive_InspectionMachine + join u in db.Base_Unit on c.UnitId equals u.UnitId into unitJoin + from u in unitJoin.DefaultIfEmpty() + where c.ProjectId == this.CurrUser.LoginProjectId && c.UnitId == item.UnitId && c.InspectionType.Equals("计量") + select new + { + c.InspectionDate, + c.ProjectId, + u.UnitId, + u.UnitName + }; + var AllList = query.ToList(); + var monethCount = query + .Where(x => (x.InspectionDate >= Convert.ToDateTime(startDate) && x.InspectionDate <= Convert.ToDateTime(endDate))); + + Model.Report_CQMS_MonthReportItem model = new Model.Report_CQMS_MonthReportItem(); + model.Id = Guid.NewGuid().ToString(); + model.ContentName = item.UnitName; + model.MonthsCount = monethCount.Count(); + model.ProjectCount = AllList.Count(); + model.ReportId = ReportId; + //如果是修改,查询表中数据 + if (objType == "1") + { + var NewModel = db.Report_CQMS_MonthReportItem.FirstOrDefault(x => x.ReportId == ReportId && x.ContentName == item.UnitName && x.ReType == "9"); + if (NewModel != null) + { + model.RectificationRate = NewModel.RectificationRate; + model.Remarks = NewModel.Remarks; + } + } + list.Add(model); + + Quantity1Sum += monethCount.Count(); + Quantity2Sum += AllList.Count(); + i++; + } + gvMeasuringInspection.DataSource = list; + gvMeasuringInspection.DataBind(); + + //合计 + JObject summary = new JObject(); + summary.Add("ContentName", "合计"); + summary.Add("MonthsCount", Quantity1Sum.ToString()); + summary.Add("ProjectCount", Quantity2Sum.ToString()); + + gvMeasuringInspection.SummaryData = summary; + } + #endregion + + #region 10.现场质量共检数据 gvInspectionDataInspection方法 + /// + /// 现场质量共检数据 + /// + void loadInspectionDataInspection(string objType) + { + CheckLotBindStatisc("CV");//检验批统计:土建 + CheckLotBindStatisc("EQ");//检验批统计:设备 + CheckLotBindStatisc("PP");//检验批统计:管道 + CheckLotBindStatisc("EL");//检验批统计:电气 + CheckLotBindStatisc("IN");//检验批统计:仪表 + CheckLotBindStatisc("FF");//检验批统计:反腐 + CheckLotBindStatisc("XF");//检验批统计:消防 + + #region 现场质量共检数据合计 + DateTime startDate = Convert.ToDateTime(this.txtStartDate.Text.Trim()); + DateTime endDate = Convert.ToDateTime(this.txtEndDate.Text.Trim()); + var list = new List(); + int i = 1; + + int CheckNum = 0;//本月检查点数 + int TotalCheckNum = 0;//累计检查点数 + + int OKNum = 0;//本月检查合格点数 + int TotalOKNum = 0;//累计检查合格点数 + + string Quantity1Sum = String.Empty;//本月检查合格点数/本月检查点数 + string Quantity2Sum = String.Empty;//累计检查合格点数/累计检查点数 + + + //加载所有单位 + //var units = from x in db.Project_ProjectUnit + // join y in db.Base_Unit on x.UnitId equals y.UnitId + // where x.ProjectId == this.CurrUser.LoginProjectId && (x.UnitType == BLL.Const.ProjectUnitType_2 || x.UnitType == BLL.Const.ProjectUnitType_1) + // orderby y.UnitCode + // select new { x.UnitId, y.UnitName }; + units = units.Where(x => x.UnitType == BLL.Const.ProjectUnitType_2 || x.UnitType == BLL.Const.ProjectUnitType_1).ToList(); + foreach (var item in units) + { + var query = from c in db.View_CQMS_InspectionManagementDetail + join u in db.Base_Unit on c.UnitId equals u.UnitId into unitJoin + from u in unitJoin.DefaultIfEmpty() + where c.ProjectId == this.CurrUser.LoginProjectId && c.UnitId == item.UnitId + select new + { + c.CheckDate, + c.ProjectId, + u.UnitId, + u.UnitName, + c.IsOnceQualified + }; + var AllList = query.ToList(); + var monethCount = query + .Where(x => (x.CheckDate >= Convert.ToDateTime(startDate) && x.CheckDate <= Convert.ToDateTime(endDate))); + + + Model.CheckStatisc checkStatisc = new Model.CheckStatisc(); + checkStatisc.Id = Guid.NewGuid().ToString(); + checkStatisc.ReportId = ReportId; + checkStatisc.WorkName = item.UnitName; + checkStatisc.CheckNum = monethCount.Count(); + checkStatisc.TotalCheckNum = AllList.Count(); + checkStatisc.OKNum = monethCount.Count(x => x.IsOnceQualified == true); + checkStatisc.TotalOKNum = AllList.Count(x => x.IsOnceQualified == true); + + if (checkStatisc.CheckNum != 0)//被除数不能为零 + { + checkStatisc.OneOKRate = Math.Round((double)checkStatisc.OKNum / (double)checkStatisc.CheckNum * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + checkStatisc.OneOKRate = "0%"; + } + + if (checkStatisc.TotalCheckNum != 0)//被除数不能为零 + { + checkStatisc.TotalOneOKRate = Math.Round((double)checkStatisc.TotalOKNum / (double)checkStatisc.TotalCheckNum * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + checkStatisc.TotalOneOKRate = "0%"; + } + //如果是修改,查询表中数据 + if (objType == "1") + { + var NewModel = db.Report_CQMS_MonthReportItem.FirstOrDefault(x => x.ReportId == ReportId && x.ContentName == item.UnitName && x.ReType == "10"); + if (NewModel != null) + { + checkStatisc.Remarks = NewModel.Remarks; + } + } + list.Add(checkStatisc); + + CheckNum += checkStatisc.CheckNum; + TotalCheckNum += checkStatisc.TotalCheckNum; + + OKNum += checkStatisc.OKNum; + TotalOKNum += checkStatisc.TotalOKNum; + + i++; + } + + gvInspectionDataInspection.DataSource = list; + gvInspectionDataInspection.DataBind(); + + if (CheckNum != 0)//被除数不能为零 + { + Quantity1Sum = Math.Round((double)OKNum / (double)CheckNum * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + Quantity1Sum = "0%"; + } + if (TotalCheckNum != 0)//被除数不能为零 + { + Quantity2Sum = Math.Round((double)TotalOKNum / (double)TotalCheckNum * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + Quantity2Sum = "0%"; + } + + //合计 + JObject summary = new JObject(); + summary.Add("WorkName", "合计"); + summary.Add("OneOKRate", Quantity1Sum.ToString()); + summary.Add("TotalOneOKRate", Quantity2Sum.ToString()); + + gvInspectionDataInspection.SummaryData = summary; + #endregion + } + + public void CheckLotBindStatisc(string cNProfessionalCode) + { + DateTime startDate = Convert.ToDateTime(this.txtStartDate.Text.Trim()); + DateTime endDate = Convert.ToDateTime(this.txtEndDate.Text.Trim()); + + DateTime projectStartDate = Convert.ToDateTime("2015-01-01"); + List StatisticsList = new List(); + Model.Base_Project project = BLL.ProjectService.GetProjectByProjectId(this.CurrUser.LoginProjectId); + + int CheckNum = 0; + int TotalCheckNum = 0; + + int OKNum = 0; + int TotalOKNum = 0; + + string OneOKRate = String.Empty; + string TotalOneOKRate = String.Empty; + + + if (project != null) + { + if (project.StartDate != null) + { + projectStartDate = Convert.ToDateTime(project.StartDate); + } + } + //int i = 1; + string cNProfessionalId = (from x in db.Base_CNProfessional where x.CNProfessionalCode == cNProfessionalCode select x.CNProfessionalId).FirstOrDefault(); + + List workNames = new List(); + //专业下所有集合 + List totalManagementList = BLL.InspectionManagementService.getInspectionManagementDetailListByCNProfessionalIdAndDate(this.CurrUser.LoginProjectId, cNProfessionalId, projectStartDate, endDate, false); + //专业下当期集合 + List managementList = BLL.InspectionManagementService.getInspectionManagementDetailListByCNProfessionalIdAndDate(this.CurrUser.LoginProjectId, cNProfessionalId, startDate, endDate, false); + workNames = totalManagementList.Select(x => x.UnitWorkId).DefaultIfEmpty().Distinct()?.ToList(); + foreach (string item in workNames) + { + Model.WBS_UnitWork ins = BLL.UnitWorkService.GetUnitWorkByUnitWorkId(item); + if (ins != null) + { + Model.CheckStatisc checkStatisc = new Model.CheckStatisc(); + checkStatisc.Id = Guid.NewGuid().ToString(); + checkStatisc.WorkName = ins.UnitWorkName; + + checkStatisc.CheckNum = managementList.Count(x => x.UnitWorkId == item); + checkStatisc.TotalCheckNum = totalManagementList.Count(x => x.UnitWorkId == item); + + checkStatisc.OKNum = managementList.Count(x => x.UnitWorkId == item && x.IsOnceQualified == true); + checkStatisc.TotalOKNum = totalManagementList.Count(x => x.UnitWorkId == item && x.IsOnceQualified == true); + + if (checkStatisc.CheckNum != 0)//被除数不能为零 + { + checkStatisc.OneOKRate = Math.Round((double)checkStatisc.OKNum / (double)checkStatisc.CheckNum * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + checkStatisc.OneOKRate = "0%"; + } + + if (checkStatisc.TotalCheckNum != 0)//被除数不能为零 + { + checkStatisc.TotalOneOKRate = Math.Round((double)checkStatisc.TotalOKNum / (double)checkStatisc.TotalCheckNum * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + checkStatisc.TotalOneOKRate = "0%"; + } + + StatisticsList.Add(checkStatisc); + + CheckNum += checkStatisc.CheckNum; + TotalCheckNum += checkStatisc.TotalCheckNum; + + OKNum += checkStatisc.OKNum; + TotalOKNum += checkStatisc.TotalOKNum; + } + } + + if (CheckNum != 0)//被除数不能为零 + { + OneOKRate = Math.Round((double)OKNum / (double)CheckNum * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + OneOKRate = "0"; + } + if (TotalCheckNum != 0)//被除数不能为零 + { + TotalOneOKRate = Math.Round((double)TotalOKNum / (double)TotalCheckNum * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + TotalOneOKRate = "0"; + } + + //检验批统计:土建 + if (cNProfessionalCode == "CV") + { + this.gvTj.DataSource = StatisticsList; + this.gvTj.DataBind(); + + //合计 + JObject summary = new JObject(); + summary.Add("WorkName", "合计"); + + summary.Add("CheckNum", CheckNum.ToString()); //当前检查点数 + summary.Add("TotalCheckNum", TotalCheckNum.ToString());//累计点数 + + summary.Add("OKNum", OKNum.ToString());//当前合格点数 + summary.Add("TotalOKNum", TotalOKNum.ToString());//累计合格点数 + + summary.Add("OneOKRate", OneOKRate.ToString());//本月合格点数 + summary.Add("TotalOneOKRate", TotalOneOKRate.ToString());//本月累计合格点数 + gvTj.SummaryData = summary; + + } + //检验批统计:设备 + if (cNProfessionalCode == "EQ") + { + this.GvSb.DataSource = StatisticsList; + this.GvSb.DataBind(); + + //合计 + JObject summary = new JObject(); + summary.Add("WorkName", "合计"); + + summary.Add("CheckNum", CheckNum.ToString()); //当前检查点数 + summary.Add("TotalCheckNum", TotalCheckNum.ToString());//累计点数 + + summary.Add("OKNum", OKNum.ToString());//当前合格点数 + summary.Add("TotalOKNum", TotalOKNum.ToString());//累计合格点数 + + summary.Add("OneOKRate", OneOKRate.ToString());//本月合格点数 + summary.Add("TotalOneOKRate", TotalOneOKRate.ToString());//本月累计合格点数 + GvSb.SummaryData = summary; + } + //检验批统计:管道 + if (cNProfessionalCode == "PP") + { + this.GvGD.DataSource = StatisticsList; + this.GvGD.DataBind(); + //合计 + JObject summary = new JObject(); + summary.Add("WorkName", "合计"); + + summary.Add("CheckNum", CheckNum.ToString()); //当前检查点数 + summary.Add("TotalCheckNum", TotalCheckNum.ToString());//累计点数 + + summary.Add("OKNum", OKNum.ToString());//当前合格点数 + summary.Add("TotalOKNum", TotalOKNum.ToString());//累计合格点数 + + summary.Add("OneOKRate", OneOKRate.ToString());//本月合格点数 + summary.Add("TotalOneOKRate", TotalOneOKRate.ToString());//本月累计合格点数 + GvGD.SummaryData = summary; + } + //检验批统计:电气 + if (cNProfessionalCode == "EL") + { + this.GvDq.DataSource = StatisticsList; + this.GvDq.DataBind(); + //合计 + JObject summary = new JObject(); + summary.Add("WorkName", "合计"); + + summary.Add("CheckNum", CheckNum.ToString()); //当前检查点数 + summary.Add("TotalCheckNum", TotalCheckNum.ToString());//累计点数 + + summary.Add("OKNum", OKNum.ToString());//当前合格点数 + summary.Add("TotalOKNum", TotalOKNum.ToString());//累计合格点数 + + summary.Add("OneOKRate", OneOKRate.ToString());//本月合格点数 + summary.Add("TotalOneOKRate", TotalOneOKRate.ToString());//本月累计合格点数 + GvDq.SummaryData = summary; + } + //检验批统计:仪表 + if (cNProfessionalCode == "IN") + { + this.GvYb.DataSource = StatisticsList; + this.GvYb.DataBind(); + //合计 + JObject summary = new JObject(); + summary.Add("WorkName", "合计"); + + summary.Add("CheckNum", CheckNum.ToString()); //当前检查点数 + summary.Add("TotalCheckNum", TotalCheckNum.ToString());//累计点数 + + summary.Add("OKNum", OKNum.ToString());//当前合格点数 + summary.Add("TotalOKNum", TotalOKNum.ToString());//累计合格点数 + + summary.Add("OneOKRate", OneOKRate.ToString());//本月合格点数 + summary.Add("TotalOneOKRate", TotalOneOKRate.ToString());//本月累计合格点数 + GvYb.SummaryData = summary; + } + //检验批统计:防腐 + if (cNProfessionalCode == "FF") + { + this.GvFf.DataSource = StatisticsList; + this.GvFf.DataBind(); + //合计 + JObject summary = new JObject(); + summary.Add("WorkName", "合计"); + + summary.Add("CheckNum", CheckNum.ToString()); //当前检查点数 + summary.Add("TotalCheckNum", TotalCheckNum.ToString());//累计点数 + + summary.Add("OKNum", OKNum.ToString());//当前合格点数 + summary.Add("TotalOKNum", TotalOKNum.ToString());//累计合格点数 + + summary.Add("OneOKRate", OneOKRate.ToString());//本月合格点数 + summary.Add("TotalOneOKRate", TotalOneOKRate.ToString());//本月累计合格点数 + GvFf.SummaryData = summary; + } + //检验批统计:消防 + if (cNProfessionalCode == "XF") + { + this.GvXf.DataSource = StatisticsList; + this.GvXf.DataBind(); + //合计 + JObject summary = new JObject(); + summary.Add("WorkName", "合计"); + + summary.Add("CheckNum", CheckNum.ToString()); //当前检查点数 + summary.Add("TotalCheckNum", TotalCheckNum.ToString());//累计点数 + + summary.Add("OKNum", OKNum.ToString());//当前合格点数 + summary.Add("TotalOKNum", TotalOKNum.ToString());//累计合格点数 + + summary.Add("OneOKRate", OneOKRate.ToString());//本月合格点数 + summary.Add("TotalOneOKRate", TotalOneOKRate.ToString());//本月累计合格点数 + + GvXf.SummaryData = summary; + } + } + + #endregion + + #region 11.压力管道监检情况 gvPressureInspection方法 + /// + /// 压力管道监检情况 + /// + void loadPressureInspection(string objType) + { + DateTime startDate = Convert.ToDateTime(this.txtStartDate.Text.Trim()); + DateTime endDate = Convert.ToDateTime(this.txtEndDate.Text.Trim()); + var list = new List(); + int i = 1; + + int Quantity0Sum = 0; + int Quantity1Sum = 0; + int Quantity2Sum = 0; + //加载所有单位 + //var units = from x in db.Project_ProjectUnit + // join y in db.Base_Unit on x.UnitId equals y.UnitId + // where x.ProjectId == this.CurrUser.LoginProjectId && (x.UnitType == BLL.Const.ProjectUnitType_2 || x.UnitType == BLL.Const.ProjectUnitType_1) + // orderby y.UnitCode + // select new { x.UnitId, y.UnitName }; + units = units.Where(x => x.UnitType == BLL.Const.ProjectUnitType_2 || x.UnitType == BLL.Const.ProjectUnitType_1).ToList(); + foreach (var item in units) + { + var query = from c in db.Comprehensive_PressurePipe + join u in db.Base_Unit on c.UnitId equals u.UnitId into unitJoin + from u in unitJoin.DefaultIfEmpty() + where c.Projctid == this.CurrUser.LoginProjectId && c.UnitId == item.UnitId + select new + { + c.ReportTime, + c.Projctid, + u.UnitId, + u.UnitName, + c.ActualNumber, + c.PressurePipeNumber + }; + var AllList = query.ToList(); + var monethCount = query + .Where(x => (x.ReportTime >= Convert.ToDateTime(startDate) && x.ReportTime <= Convert.ToDateTime(endDate))); + + Model.Report_CQMS_MonthReportItem model = new Model.Report_CQMS_MonthReportItem(); + model.Id = Guid.NewGuid().ToString(); + model.ContentName = item.UnitName; + model.MonthsCount = Convert.ToInt32(monethCount.Sum(o => o.PressurePipeNumber)); + model.ProjectCount = Convert.ToInt32(AllList.Sum(o => o.PressurePipeNumber)); + model.TotalNoBackCount = Convert.ToInt32(monethCount.Sum(o => o.ActualNumber));//总数 + model.ReportId = ReportId; + //如果是修改,查询表中数据 + if (objType == "1") + { + var NewModel = db.Report_CQMS_MonthReportItem.FirstOrDefault(x => x.ReportId == ReportId && x.ContentName == item.UnitName && x.ReType == "11"); + if (NewModel != null) + { + model.Remarks = NewModel.Remarks; + } + } + list.Add(model); + Quantity0Sum += Convert.ToInt32(AllList.Sum(o => o.ActualNumber)); + Quantity1Sum += Convert.ToInt32(monethCount.Sum(o => o.PressurePipeNumber)); + Quantity2Sum += Convert.ToInt32(AllList.Sum(o => o.PressurePipeNumber)); + i++; + } + gvPressureInspection.DataSource = list; + gvPressureInspection.DataBind(); + + //合计 + JObject summary = new JObject(); + summary.Add("ContentName", "合计"); + summary.Add("TotalNoBackCount", Quantity0Sum.ToString());//总数 + summary.Add("MonthsCount", Quantity1Sum.ToString()); + summary.Add("ProjectCount", Quantity2Sum.ToString()); + + gvPressureInspection.SummaryData = summary; + } + #endregion + + #region 12.管道试压包管理情况 gvPipingInspection方法 + /// + /// 管道试压包管理情况 + /// + void loadPipingInspection(string objType) + { + DateTime startDate = Convert.ToDateTime(this.txtStartDate.Text.Trim()); + DateTime endDate = Convert.ToDateTime(this.txtEndDate.Text.Trim()); + var list = new List(); + int i = 1; + + int Quantity0Sum = 0; + int Quantity1Sum = 0; + int Quantity2Sum = 0; + + //加载所有单位 + //var units = from x in db.Project_ProjectUnit + // join y in db.Base_Unit on x.UnitId equals y.UnitId + // where x.ProjectId == this.CurrUser.LoginProjectId && (x.UnitType == BLL.Const.ProjectUnitType_2 || x.UnitType == BLL.Const.ProjectUnitType_1) + // orderby y.UnitCode + // select new { x.UnitId, y.UnitName }; + units = units.Where(x => x.UnitType == BLL.Const.ProjectUnitType_2 || x.UnitType == BLL.Const.ProjectUnitType_1).ToList(); + foreach (var item in units) + { + var query = from c in db.Comprehensive_PressurePipe + join u in db.Base_Unit on c.UnitId equals u.UnitId into unitJoin + from u in unitJoin.DefaultIfEmpty() + where c.Projctid == this.CurrUser.LoginProjectId && c.UnitId == item.UnitId + select new + { + c.ReportTime, + c.Projctid, + u.UnitId, + u.UnitName, + c.PackageNumber, + c.IssuedReportNumber + }; + var AllList = query.ToList(); + var monethCount = query + .Where(x => (x.ReportTime >= Convert.ToDateTime(startDate) && x.ReportTime <= Convert.ToDateTime(endDate))); + + Model.Report_CQMS_MonthReportItem model = new Model.Report_CQMS_MonthReportItem(); + model.Id = Guid.NewGuid().ToString(); + model.ContentName = item.UnitName; + model.TotalNoBackCount = Convert.ToInt32(monethCount.Sum(o => o.PackageNumber)); + model.MonthsCount = Convert.ToInt32(monethCount.Sum(o => o.IssuedReportNumber)); + model.ProjectCount = Convert.ToInt32(AllList.Sum(o => o.IssuedReportNumber)); + model.ReportId = ReportId; + //如果是修改,查询表中数据 + if (objType == "1") + { + var NewModel = db.Report_CQMS_MonthReportItem.FirstOrDefault(x => x.ReportId == ReportId && x.ContentName == item.UnitName && x.ReType == "11"); + if (NewModel != null) + { + model.Remarks = NewModel.Remarks; + } + } + list.Add(model); + + Quantity0Sum += Convert.ToInt32(monethCount.Sum(o => o.PackageNumber)); + Quantity1Sum += Convert.ToInt32(monethCount.Sum(o => o.IssuedReportNumber)); + Quantity2Sum += Convert.ToInt32(AllList.Sum(o => o.IssuedReportNumber)); + i++; + } + gvPipingInspection.DataSource = list; + gvPipingInspection.DataBind(); + + //合计 + JObject summary = new JObject(); + summary.Add("ContentName", "合计"); + summary.Add("TotalNoBackCount", Quantity0Sum.ToString()); + summary.Add("MonthsCount", Quantity1Sum.ToString()); + summary.Add("ProjectCount", Quantity2Sum.ToString()); + + gvPipingInspection.SummaryData = summary; + } + #endregion + + #region 13.特种设备监检情况 gvSpecialInspection方法 + /// + /// 特种设备监检情况 + /// + void loadSpecialInspection(string objType) + { + DateTime startDate = Convert.ToDateTime(this.txtStartDate.Text.Trim()); + DateTime endDate = Convert.ToDateTime(this.txtEndDate.Text.Trim()); + var list = new List(); + int i = 1; + + int Quantity0Sum = 0; + int Quantity1Sum = 0; + int Quantity2Sum = 0; + //加载所有单位 + //var units = from x in db.Project_ProjectUnit + // join y in db.Base_Unit on x.UnitId equals y.UnitId + // where x.ProjectId == this.CurrUser.LoginProjectId && (x.UnitType == BLL.Const.ProjectUnitType_2 || x.UnitType == BLL.Const.ProjectUnitType_1) + // orderby y.UnitCode + // select new { x.UnitId, y.UnitName }; + units = units.Where(x => x.UnitType == BLL.Const.ProjectUnitType_2 || x.UnitType == BLL.Const.ProjectUnitType_1).ToList(); + foreach (var item in units) + { + var query = from c in db.Comprehensive_SpecialEquipment + join u in db.Base_Unit on c.UnitId equals u.UnitId into unitJoin + from u in unitJoin.DefaultIfEmpty() + where c.ProjectId == this.CurrUser.LoginProjectId && c.UnitId == item.UnitId + select new + { + c.ReportTime, + c.ProjectId, + u.UnitId, + u.UnitName, + c.SunNumber, + c.MonitoringReportNumber + }; + var AllList = query.ToList(); + var monethCount = query + .Where(x => (x.ReportTime >= Convert.ToDateTime(startDate) && x.ReportTime <= Convert.ToDateTime(endDate))); + + Model.Report_CQMS_MonthReportItem model = new Model.Report_CQMS_MonthReportItem(); + model.Id = Guid.NewGuid().ToString(); + model.ContentName = item.UnitName; + model.TotalNoBackCount = Convert.ToInt32(AllList.Sum(o => o.SunNumber)); + model.MonthsCount = Convert.ToInt32(monethCount.Sum(o => o.MonitoringReportNumber)); + model.ProjectCount = Convert.ToInt32(AllList.Sum(o => o.MonitoringReportNumber)); + model.ReportId = ReportId; + //如果是修改,查询表中数据 + if (objType == "1") + { + var NewModel = db.Report_CQMS_MonthReportItem.FirstOrDefault(x => x.ReportId == ReportId && x.ContentName == item.UnitName && x.ReType == "13"); + if (NewModel != null) + { + model.Remarks = NewModel.Remarks; + } + } + list.Add(model); + Quantity0Sum += Convert.ToInt32(AllList.Sum(o => o.SunNumber)); + Quantity1Sum += Convert.ToInt32(monethCount.Sum(o => o.MonitoringReportNumber)); + Quantity2Sum += Convert.ToInt32(AllList.Sum(o => o.MonitoringReportNumber)); + i++; + } + gvSpecialInspection.DataSource = list; + gvSpecialInspection.DataBind(); + + //合计 + JObject summary = new JObject(); + summary.Add("ContentName", "合计"); + summary.Add("TotalNoBackCount", Quantity0Sum.ToString());//总数 + summary.Add("MonthsCount", Quantity1Sum.ToString());//本月完成监检数量 + summary.Add("ProjectCount", Quantity2Sum.ToString());//累计完成监检数量 + + gvSpecialInspection.SummaryData = summary; + } + #endregion + + #region 14.NCR管理情况 gvNcrManagementInspection方法 + /// + /// NCR管理情况 + /// + void loadNcrManagementInspection(string objType) + { + DateTime startDate = Convert.ToDateTime(this.txtStartDate.Text.Trim()); + DateTime endDate = Convert.ToDateTime(this.txtEndDate.Text.Trim()); + List StatisticsList = new List(); + int i = 1; + + int CurrentPeriodOkNumSum = 0; + int OKNumSum = 0; + int CheckNumSum = 0; + string OKRateSum = string.Empty; + + var project = BLL.ProjectService.GetProjectByProjectId(this.CurrUser.LoginProjectId); + DateTime projectStartDate = Convert.ToDateTime("2000-01-01"); + if (project != null && project.StartDate != null) + { + projectStartDate = project.StartDate.Value; + } + //var units = from x in db.Project_ProjectUnit + // join y in db.Base_Unit on x.UnitId equals y.UnitId + // where x.ProjectId == this.CurrUser.LoginProjectId && x.UnitType == BLL.Const.ProjectUnitType_2 + // orderby y.UnitCode + // select new { x.UnitId, y.UnitName }; + units = units.Where(x => x.UnitType == BLL.Const.ProjectUnitType_2).ToList(); + + foreach (var item in units) + { + + var query = from c in db.Comprehensive_NCRManagement + join u in db.Base_Unit on c.SendUnit equals u.UnitId into unitJoin + from u in unitJoin.DefaultIfEmpty() + where c.ProjectId == this.CurrUser.LoginProjectId && c.ReceiveUnit == item.UnitId + select new + { + c.NCRManagementId, + c.ProjectId, + u.UnitId, + u.UnitName, + c.IssuedDate, + c.Status, + c.ImplementationFrontState, + }; + + var AllList = query.ToList(); + var unitNCRStatic = query + .Where(x => (x.IssuedDate >= Convert.ToDateTime(startDate) && x.IssuedDate <= Convert.ToDateTime(endDate))); + + Model.NCRReportStatisc NCRStatisc = new Model.NCRReportStatisc(); + NCRStatisc.Id = Guid.NewGuid().ToString(); + NCRStatisc.WorkName = item.UnitName; + //NCRStatisc.CurrentPeriodOkNum = unitNCRStatic.Count(x => x.Status == "3"); + //NCRStatisc.OKNum = AllList.Count(x => x.Status == "3"); + NCRStatisc.CurrentPeriodOkNum = unitNCRStatic.Where(x => x.ImplementationFrontState.Trim().Equals("已闭合")).Count(); + NCRStatisc.OKNum = AllList.Where(x => x.ImplementationFrontState.Trim().Equals("已闭合")).Count(); + + NCRStatisc.CheckNum = AllList.Count(); + + if (NCRStatisc.CheckNum != 0)//被除数不能为零 + { + NCRStatisc.OKRate = Math.Round((double)NCRStatisc.OKNum / (double)NCRStatisc.CheckNum * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + NCRStatisc.OKRate = "0%"; + } + + StatisticsList.Add(NCRStatisc); + + CurrentPeriodOkNumSum += NCRStatisc.CurrentPeriodOkNum; + OKNumSum += NCRStatisc.OKNum; + CheckNumSum += NCRStatisc.CheckNum; + i++; + } + + if (CheckNumSum != 0)//被除数不能为零 + { + OKRateSum = Math.Round((double)OKNumSum / (double)CheckNumSum * 100, 2) + "%";//保留两位小数、后四舍五入 + } + else + { + OKRateSum = "0%"; + } + + this.gvNcrManagementInspection.DataSource = StatisticsList; + this.gvNcrManagementInspection.DataBind(); + + //合计 + JObject summary = new JObject(); + summary.Add("WorkName", "合计"); + summary.Add("CurrentPeriodOkNum", CurrentPeriodOkNumSum.ToString()); + summary.Add("OKNum", OKNumSum.ToString()); + summary.Add("CheckNum", CheckNumSum.ToString()); + summary.Add("OKRate", OKRateSum.ToString()); + + gvNcrManagementInspection.SummaryData = summary; + } + #endregion + + #region 15.质量巡检情况 gvQualityInspection方法 + /// + /// 加载质量巡检情况 + /// + void loadQualityInspection(string objType) + { + DateTime startDate = Convert.ToDateTime(this.txtStartDate.Text.Trim()); + DateTime endDate = Convert.ToDateTime(this.txtEndDate.Text.Trim()); + var list = new List(); + int i = 1; + + int Quantity1Sum = 0; + int Quantity2Sum = 0; + int ClosedCountSum = 0; + //加载所有单位 + //var units = from x in db.Project_ProjectUnit + // join y in db.Base_Unit on x.UnitId equals y.UnitId + // where x.ProjectId == this.CurrUser.LoginProjectId && (x.UnitType == BLL.Const.ProjectUnitType_2 || x.UnitType == BLL.Const.ProjectUnitType_1) + // orderby y.UnitCode + // select new { x.UnitId, y.UnitName }; + units = units.Where(x => x.UnitType == BLL.Const.ProjectUnitType_2 || x.UnitType == BLL.Const.ProjectUnitType_1).ToList(); + foreach (var item in units) + { + var query = from c in db.Check_CheckControl + join u in db.Base_Unit on c.UnitId equals u.UnitId into unitJoin + from u in unitJoin.DefaultIfEmpty() + where c.ProjectId == this.CurrUser.LoginProjectId && c.UnitId == item.UnitId + select new + { + c.CheckDate, + c.ProjectId, + u.UnitId, + u.UnitName, + c.State + }; + var AllList = query.ToList(); + var monethCount = query + .Where(x => (x.CheckDate >= Convert.ToDateTime(startDate) && x.CheckDate <= Convert.ToDateTime(endDate))); + var ClosedCount = query.Where(x => x.State == "7");//已关闭数量 + + Model.Report_CQMS_MonthReportItem model = new Model.Report_CQMS_MonthReportItem(); + model.Id = Guid.NewGuid().ToString(); + model.ContentName = item.UnitName; + model.MonthsCount = monethCount.Count(); + model.ProjectCount = AllList.Count(); + if (AllList.Count() > 0) + { + model.RectificationRate = (100.0 * (ClosedCount.Count() / AllList.Count())).ToString("#0.00") + "%"; + } + else + { + model.RectificationRate = "0.00%"; + } + + model.ReportId = ReportId; + //如果是修改,查询表中数据 + if (objType == "1") + { + var NewModel = db.Report_CQMS_MonthReportItem.FirstOrDefault(x => x.ReportId == ReportId && x.ContentName == item.UnitName && x.ReType == "1"); + if (NewModel != null) + { + //model.RectificationRate = NewModel.RectificationRate; + model.Remarks = NewModel.Remarks; + } + } + list.Add(model); + + Quantity1Sum += monethCount.Count(); + Quantity2Sum += AllList.Count(); + ClosedCountSum += ClosedCount.Count(); + + i++; + } + gvQualityInspection.DataSource = list; + gvQualityInspection.DataBind(); + + //合计 + JObject summary = new JObject(); + summary.Add("ContentName", "合计"); + summary.Add("MonthsCount", Quantity1Sum.ToString()); + summary.Add("ProjectCount", Quantity2Sum.ToString()); + if (Quantity2Sum > 0) + { + summary.Add("RectificationRate", (100.00 * (ClosedCountSum / Quantity2Sum)).ToString("#0.00") + "%"); + } + else + { + summary.Add("RectificationRate", "0.00%"); + } + gvQualityInspection.SummaryData = summary; + } + #endregion + + #region 16.质量专项检查情况 gvSpecialCheck方法 + /// + /// 加载质量专项检查情况 + /// + void loadSpecialCheck(string objType) + { + DateTime startDate = Convert.ToDateTime(this.txtStartDate.Text.Trim()); + DateTime endDate = Convert.ToDateTime(this.txtEndDate.Text.Trim()); + var list = new List(); + int i = 1; + + int Quantity1Sum = 0; + int Quantity2Sum = 0; + + //加载检查类别 + var lists = BLL.JointCheckService.GetCheckTypeList(); + foreach (var item in lists) + { + var query = from c in db.Check_JointCheck + where c.ProjectId == this.CurrUser.LoginProjectId && c.CheckType == item.Key.ToString() + select new + { + c.CheckDate, + c.ProjectId, + c.CheckType + }; + var AllList = query.ToList(); + var monethCount = query + .Where(x => (x.CheckDate >= Convert.ToDateTime(startDate) && x.CheckDate <= Convert.ToDateTime(endDate))); + + Model.Report_CQMS_MonthReportItem model = new Model.Report_CQMS_MonthReportItem(); + model.Id = Guid.NewGuid().ToString(); + model.ContentName = item.Value; + model.MonthsCount = monethCount.Count(); + model.ProjectCount = AllList.Count(); + model.ReportId = ReportId; + //如果是修改,查询表中数据 + if (objType == "1") + { + var NewModel = db.Report_CQMS_MonthReportItem.FirstOrDefault(x => x.ReportId == ReportId && x.ContentName == item.Value && x.ReType == "2"); + if (NewModel != null) + { + model.Remarks = NewModel.Remarks; + } + } + list.Add(model); + + Quantity1Sum += monethCount.Count(); + Quantity2Sum += AllList.Count(); + i++; + } + + gvSpecialCheck.DataSource = list; + gvSpecialCheck.DataBind(); + + //合计 + JObject summary = new JObject(); + summary.Add("ContentName", "合计"); + summary.Add("MonthsCount", Quantity1Sum.ToString()); + summary.Add("ProjectCount", Quantity2Sum.ToString()); + + gvSpecialCheck.SummaryData = summary; + } + #endregion + + #region 17.质量文件上报情况 gvFileReport方法 + /// + /// 加载质量文件上报情况 + /// + void loadFileReport(string objType) + { + DateTime startDate = Convert.ToDateTime(this.txtStartDate.Text.Trim()); + DateTime endDate = Convert.ToDateTime(this.txtEndDate.Text.Trim()); + var list = new List(); + int i = 1; + + int Quantity1Sum = 0; + int Quantity2Sum = 0; + int Quantity3Sum = 0; + int Quantity4Sum = 0; + //加载所有单位 + //var units = from x in db.Project_ProjectUnit + // join y in db.Base_Unit on x.UnitId equals y.UnitId + // where x.ProjectId == this.CurrUser.LoginProjectId && (x.UnitType == BLL.Const.ProjectUnitType_2 || x.UnitType == BLL.Const.ProjectUnitType_1) + // orderby y.UnitCode + // select new { x.UnitId, y.UnitName }; + units = units.Where(x => x.UnitType == BLL.Const.ProjectUnitType_2 || x.UnitType == BLL.Const.ProjectUnitType_1).ToList(); + foreach (var item in units) + { + var query = from c in db.Comprehensive_DataReceivingDoc + join u in db.Base_Unit on c.SendUnit equals u.UnitId into unitJoin + from u in unitJoin.DefaultIfEmpty() + where c.ProjectId == this.CurrUser.LoginProjectId && c.SendUnit == item.UnitId + select new + { + c.ReceiveDate, + c.ProjectId, + c.IsReply, + c.RetrunWuhuangCopies, + u.UnitId, + u.UnitName + }; + var AllList = query.ToList();//项目数 + //本月数 + var monethCount = query.Where(x => (x.ReceiveDate >= Convert.ToDateTime(startDate) && x.ReceiveDate <= Convert.ToDateTime(endDate))); + var yzCount = query.Where(x => x.IsReply == true && x.RetrunWuhuangCopies != null && (x.ReceiveDate >= Convert.ToDateTime(startDate) && x.ReceiveDate <= Convert.ToDateTime(endDate)));//本月业主/ 监理返回数量 + int totalReturnCount = query.Where(x => x.IsReply == true && x.RetrunWuhuangCopies != null).Count();//总的已返回数量 + var NoBackCount = AllList.Count() - totalReturnCount;//累计未返回数量 + Model.Report_CQMS_MonthReportItem model = new Model.Report_CQMS_MonthReportItem(); + model.Id = Guid.NewGuid().ToString(); + model.ContentName = item.UnitName; + model.MonthsCount = monethCount.Count(); + model.ProjectCount = AllList.Count(); + model.MonthsBackCount = yzCount.Count(); + model.TotalNoBackCount = NoBackCount; + model.ReportId = ReportId; + //如果是修改,查询表中数据 + if (objType == "1") + { + var NewModel = db.Report_CQMS_MonthReportItem.FirstOrDefault(x => x.ReportId == ReportId && x.ContentName == item.UnitName && x.ReType == "3"); + if (NewModel != null) + { + model.Remarks = NewModel.Remarks; + } + } + list.Add(model); + + Quantity1Sum += monethCount.Count(); + Quantity2Sum += AllList.Count(); + Quantity3Sum += yzCount.Count(); + Quantity4Sum += NoBackCount; + i++; + } + gvFileReport.DataSource = list; + gvFileReport.DataBind(); + + //合计 + JObject summary = new JObject(); + summary.Add("ContentName", "合计"); + summary.Add("MonthsCount", Quantity1Sum.ToString()); + summary.Add("ProjectCount", Quantity2Sum.ToString()); + summary.Add("MonthsBackCount", Quantity3Sum.ToString()); + summary.Add("TotalNoBackCount", Quantity4Sum.ToString()); + + gvFileReport.SummaryData = summary; + } + #endregion + + #region 18.本月质量问题处理情况 + #region gvRowMaterialProblem 事件 + /// + /// 增加原材料问题 + /// + /// + /// + protected void btnRowMaterialProblem_Click(object sender, EventArgs e) + { + gvRowMaterialProblem.Hidden = false; + + JArray teamGroupData = gvRowMaterialProblem.GetMergedData(); + List list = new List(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + values.Add("Id", teamGroupRow.Value("id")); + list.Add(values); + } + JObject defaultObj = new JObject + { { "RowMaterialProblemId",Guid.NewGuid().ToString() }, + { "ReportId", ReportId }, + { "UnitId", "" }, + { "ProblemDesrioption",""}, + { "TreatmentMeasures", "" }, + { "ProcessingResults","" }, + { "Remark", "" }, + { "delRowMaterialProblem", String.Format("", GetDeleteRowMaterialProblem(), IconHelper.GetResolvedIconUrl(Icon.Delete)) } + }; + list.Add(defaultObj); + gvRowMaterialProblem.DataSource = list; + gvRowMaterialProblem.DataBind(); + } + + /// + /// 绑定数据前事件 + /// + /// + /// + protected void gvRowMaterialProblem_PreDataBound(object sender, EventArgs e) + { + // 设置LinkButtonField的点击客户端事件 + LinkButtonField deleteField = gvRowMaterialProblem.FindColumn("delRowMaterialProblem") as LinkButtonField; + deleteField.OnClientClick = GetDeleteRowMaterialProblem(); + } + /// + /// 删除提示 + /// + /// + private string GetDeleteRowMaterialProblem() + { + return Confirm.GetShowReference("删除选中行?", String.Empty, MessageBoxIcon.Question, gvRowMaterialProblem.GetDeleteSelectedRowsReference(), String.Empty); + } + #endregion + + #region gvConstructionProblems 事件 + /// + /// 增加施工过程问题 + /// + /// + /// + protected void btnAddConstructionProblems_Click(object sender, EventArgs e) + { + gvConstructionProblems.Hidden = false; + + JArray teamGroupData = gvConstructionProblems.GetMergedData(); + List list = new List(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + values.Add("Id", teamGroupRow.Value("id")); + list.Add(values); + } + JObject defaultObj = new JObject + { { "ConstructionProblemsId",Guid.NewGuid() }, + { "ReportId", ReportId }, + { "UnitId", "" }, + { "ProblemDesrioption",""}, + { "TreatmentMeasures", "" }, + { "ProcessingResults","" }, + { "Remark", "" }, + { "delConstructionProblems", String.Format("", GetDeleteConstructionProblems(), IconHelper.GetResolvedIconUrl(Icon.Delete)) } + }; + list.Add(defaultObj); + gvConstructionProblems.DataSource = list; + gvConstructionProblems.DataBind(); + } + + /// + /// 绑定数据前事件 + /// + /// + /// + protected void gvConstructionProblems_PreDataBound(object sender, EventArgs e) + { + // 设置LinkButtonField的点击客户端事件 + LinkButtonField deleteField = gvConstructionProblems.FindColumn("delConstructionProblems") as LinkButtonField; + deleteField.OnClientClick = GetDeleteConstructionProblems(); + } + + /// + /// 删除提示 + /// + /// + private string GetDeleteConstructionProblems() + { + return Confirm.GetShowReference("删除选中行?", String.Empty, MessageBoxIcon.Question, gvConstructionProblems.GetDeleteSelectedRowsReference(), String.Empty); + } + #endregion + #endregion + + #region 19.下月质量控制重点 + /// + /// gvNextQualityControl加载前事件 + /// + /// + /// + protected void gvNextQualityControl_PreDataBound(object sender, EventArgs e) + { + // 设置LinkButtonField的点击客户端事件 + LinkButtonField deleteField = gvNextQualityControl.FindColumn("delNextQualityControl") as LinkButtonField; + deleteField.OnClientClick = GetDeleteNextQualityControl(); + } + + /// + /// 增加 + /// + /// + /// + protected void btnAddNextControl_Click(object sender, EventArgs e) + { + gvNextQualityControl.Hidden = false; + + JArray teamGroupData = gvNextQualityControl.GetMergedData(); + List list = new List(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + values.Add("Id", teamGroupRow.Value("id")); + list.Add(values); + } + JObject defaultObj = new JObject + { { "NextQualityControlId",Guid.NewGuid().ToString() }, + { "ReportId", ReportId }, + { "NextQualityControlContent", "" }, + { "delNextQualityControl", String.Format("", GetDeleteNextQualityControl(), IconHelper.GetResolvedIconUrl(Icon.Delete)) } + }; + list.Add(defaultObj); + gvNextQualityControl.DataSource = list; + gvNextQualityControl.DataBind(); + } + + /// + /// 删除提示 + /// + /// + private string GetDeleteNextQualityControl() + { + return Confirm.GetShowReference("删除选中行?", String.Empty, MessageBoxIcon.Question, gvNextQualityControl.GetDeleteSelectedRowsReference(), String.Empty); + } + #endregion + + #region 23.施工照片 + protected void filePhoto_FileSelected(object sender, EventArgs e) + { + if (filePhoto.HasFile) + { + string fileName = filePhoto.ShortFileName; + if (!ValidateFileType(fileName)) + { + // 清空文件上传控件 + filePhoto.Reset(); + ShowNotify("无效的文件类型!"); + return; + } + fileName = fileName.Replace(":", "_").Replace(" ", "_").Replace("\\", "_").Replace("/", "_"); + fileName = DateTime.Now.Ticks.ToString() + "_" + fileName; + + filePhoto.SaveAs(Server.MapPath("~/upload/" + fileName)); + + imgPhoto.ImageUrl = "~/upload/" + fileName; + + // 清空文件上传组件(上传后要记着清空,否则点击提交表单时会再次上传!!) + filePhoto.Reset(); + } + + if (filePhoto2.HasFile) + { + string fileName = filePhoto2.ShortFileName; + if (!ValidateFileType(fileName)) + { + // 清空文件上传控件 + filePhoto2.Reset(); + ShowNotify("无效的文件类型!"); + return; + } + fileName = fileName.Replace(":", "_").Replace(" ", "_").Replace("\\", "_").Replace("/", "_"); + fileName = DateTime.Now.Ticks.ToString() + "_" + fileName; + + filePhoto2.SaveAs(Server.MapPath("~/upload/" + fileName)); + + imgPhoto2.ImageUrl = "~/upload/" + fileName; + + // 清空文件上传组件(上传后要记着清空,否则点击提交表单时会再次上传!!) + filePhoto2.Reset(); + } + + if (filePhoto3.HasFile) + { + string fileName = filePhoto3.ShortFileName; + if (!ValidateFileType(fileName)) + { + // 清空文件上传控件 + filePhoto3.Reset(); + ShowNotify("无效的文件类型!"); + return; + } + fileName = fileName.Replace(":", "_").Replace(" ", "_").Replace("\\", "_").Replace("/", "_"); + fileName = DateTime.Now.Ticks.ToString() + "_" + fileName; + + filePhoto3.SaveAs(Server.MapPath("~/upload/" + fileName)); + + imgPhoto3.ImageUrl = "~/upload/" + fileName; + + // 清空文件上传组件(上传后要记着清空,否则点击提交表单时会再次上传!!) + filePhoto3.Reset(); + } + + if (filePhoto4.HasFile) + { + string fileName = filePhoto4.ShortFileName; + if (!ValidateFileType(fileName)) + { + // 清空文件上传控件 + filePhoto4.Reset(); + ShowNotify("无效的文件类型!"); + return; + } + fileName = fileName.Replace(":", "_").Replace(" ", "_").Replace("\\", "_").Replace("/", "_"); + fileName = DateTime.Now.Ticks.ToString() + "_" + fileName; + + filePhoto4.SaveAs(Server.MapPath("~/upload/" + fileName)); + + imgPhoto4.ImageUrl = "~/upload/" + fileName; + + // 清空文件上传组件(上传后要记着清空,否则点击提交表单时会再次上传!!) + filePhoto4.Reset(); + } + + if (filePhoto5.HasFile) + { + string fileName = filePhoto5.ShortFileName; + if (!ValidateFileType(fileName)) + { + // 清空文件上传控件 + filePhoto5.Reset(); + ShowNotify("无效的文件类型!"); + return; + } + fileName = fileName.Replace(":", "_").Replace(" ", "_").Replace("\\", "_").Replace("/", "_"); + fileName = DateTime.Now.Ticks.ToString() + "_" + fileName; + + filePhoto5.SaveAs(Server.MapPath("~/upload/" + fileName)); + + imgPhoto5.ImageUrl = "~/upload/" + fileName; + + // 清空文件上传组件(上传后要记着清空,否则点击提交表单时会再次上传!!) + filePhoto5.Reset(); + } + + if (filePhoto6.HasFile) + { + string fileName = filePhoto6.ShortFileName; + if (!ValidateFileType(fileName)) + { + // 清空文件上传控件 + filePhoto6.Reset(); + ShowNotify("无效的文件类型!"); + return; + } + fileName = fileName.Replace(":", "_").Replace(" ", "_").Replace("\\", "_").Replace("/", "_"); + fileName = DateTime.Now.Ticks.ToString() + "_" + fileName; + + filePhoto6.SaveAs(Server.MapPath("~/upload/" + fileName)); + + imgPhoto6.ImageUrl = "~/upload/" + fileName; + + // 清空文件上传组件(上传后要记着清空,否则点击提交表单时会再次上传!!) + filePhoto6.Reset(); + } + } + #endregion + + #region 保存 + /// + /// 保存按钮 + /// + /// + /// + protected void btnSave_Click(object sender, EventArgs e) + { + if (string.IsNullOrEmpty(this.txtPeriod.Text.Trim())) + { + ShowNotify("周期不能为空!", MessageBoxIcon.Warning); + return; + } + Model.Report_WeekAndMonthReport_New report = new Model.Report_WeekAndMonthReport_New(); + report.Id = ReportId; + report.ProjectId = this.CurrUser.LoginProjectId; + report.ReportType = "2";//1.月报,2-周报 + if (!string.IsNullOrEmpty(this.txtPeriod.Text.Trim())) + { + try + { + report.SortId = this.txtPeriod.Text.Trim(); + } + catch (Exception) + { + ScriptManager.RegisterStartupScript(this, typeof(string), "_alert", "alert('周期输入格式不正确,请重新输入!')", true); + return; + } + } + if (!string.IsNullOrEmpty(this.txtStartDate.Text)) + { + report.StartDate = Convert.ToDateTime(this.txtStartDate.Text); + } + if (!string.IsNullOrEmpty(this.txtEndDate.Text)) + { + report.EndDate = Convert.ToDateTime(this.txtEndDate.Text); + } + report.CreateDate = DateTime.Now; + report.CreateMan = CurrUser.UserId; + + #region 删除所有子表 + //本月质量目标管理情况 + CqmsTargetService.Delete(ReportId); + + //所有文本框表 + TextBoxContentService.Delete(ReportId); + + //删除施工方案及检验试验计划审批情况 + BLL.CQMS.ManageReport.ReportNew.ConstructionPlanService.Delete(ReportId); + + // 15.质量巡检情况 16.质量专项检查情况 17.质量文件上报情况 + BLL.Report_CQMS_MonthReportItemService.DeleteReportItemByReportId(ReportId); + //18.本月质量问题处理情况(1)原材料问题 + BLL.RowMaterialProblemService.DeleteRowMaterialProbleByReportId(ReportId); + //18.本月质量问题处理情况(2)施工过程问题 + BLL.ConstructionProblemsService.DeleteConstructionProblemsByReportId(ReportId); + //19.下月质量控制重点 + BLL.NextQualityControlService.DeleteNextQualityControlByReportId(ReportId); + + #endregion + + #region 保存所有子表 + //保存本月质量目标管理情况 + saveTarget(); + + //保存3.1一般施工方案审批情况 + saveYbsgfa(); + + //保存3.2危大工程方案审批情况 + saveWdgcfa(); + + //保存3.2质量控制点或检验试验计划(ITP)情况 + saveJysyjh(); + + //保存4 设计交底管理情况 + saveSjjd(); + + //保存4图纸会审管理情况 + saveTzhs(); + + //保存7.2PQR/WPS报验情况 + savePqrWps(); + + //保存8 设备材料报验管理情况 + saveSbclBy(); + + //保存9.计量器具报验管理情况 + saveMeasuringInspection(); + //保存10.现场质量共检数据 + saveTjInspection(); + saveSbInspection(); + saveGDInspection(); + saveDQInspection(); + saveYBInspection(); + saveFFInspection(); + saveXFInspection(); + saveInspectionDataInspection(); + //保存11.压力管道监检情况 + savePressureInspection(); + //保存12.管道试压包管理情况 + savePipingInspection(); + //保存13.特种设备监检情况 + saveSpecialInspection(); + //保存14.NCR管理情况 + saveNcrManagementInspection(); + + //保存15.质量巡检情况 + saveQualityInspection(); + //保存16.质量专项检查情况 + saveSpecialCheck(); + //保存17.质量文件上报情况 + saveFileReport(); + //保存18.(1)原材料问题 + saveRowMaterialProblem(); + //保存18.(2)施工过程问题 + saveConstructionProblems(); + //保存19.下月质量控制重点 + saveNextQualityControl(); + + //保存23.施工照片 + saveImages(); + + //保存文本框 + saveTxtContent(); + #endregion + + if (AddOrUpdate == "add") + { + WeekAndMonthReportNewService.Insert(report); + } + else + { + WeekAndMonthReportNewService.Update(report); + } + + ShowNotify("编辑成功!", MessageBoxIcon.Success); + PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference()); + } + + #region 保存本月质量目标管理情况 + void saveTarget() + { + List detailLists = new List(); + JArray teamGroupData = Grid1.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_CqmsTarget newDetail = new Model.Report_CqmsTarget + { + //Id = values.Value("Id"), + ReportId = ReportId, + ProStage = values.Value("ProStage"), + ProDescribe = values.Value("ProDescribe"), + TargetValue = values.Value("TargetValue"), + MonthPer = values.Value("MonthPer"), + Remarks = values.Value("Remarks"), + SortId = rowIndex + 1 + }; + if (Grid1.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.Id = Grid1.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_CqmsTarget.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + + } + #endregion + + #region 保存PQR/WPS报验情况 + void savePqrWps() + { + List detailLists = new List(); + JArray teamGroupData = Grid9.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_Construction_Plan newDetail = new Model.Report_Construction_Plan + { + //Id = values.Value("Id"), + ReportId = ReportId, + ReType = "5", + UnitOrMajor = values.Value("UnitOrMajor"), + Quantity1 = values.Value("Quantity1"), + Quantity2 = values.Value("Quantity2"), + Remarks = values.Value("Remarks"), + }; + if (Grid9.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.Id = Grid9.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_Construction_Plan.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + } + #endregion + + #region 保存施工方案及检验试验计划审批情况 + /// + /// 3.1保存一般施工方案审批情况 + /// + void saveYbsgfa() + { + List detailLists = new List(); + JArray teamGroupData = Grid2.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_Construction_Plan newDetail = new Model.Report_Construction_Plan + { + //Id = values.Value("Id"), + ReportId = ReportId, + ReType = "0", + UnitOrMajor = values.Value("UnitOrMajor"), + Quantity1 = values.Value("Quantity1"), + Quantity2 = values.Value("Quantity2"), + Remarks = values.Value("Remarks") + }; + if (Grid2.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.Id = Grid2.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_Construction_Plan.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + } + + /// + /// 3.2保存危大工程方案审批情况 + /// + void saveWdgcfa() + { + List detailLists = new List(); + JArray teamGroupData = Grid3.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_Construction_Plan newDetail = new Model.Report_Construction_Plan + { + //Id = values.Value("Id"), + ReportId = ReportId, + ReType = "1", + UnitOrMajor = values.Value("UnitOrMajor"), + Quantity1 = values.Value("Quantity1"), + Quantity2 = values.Value("Quantity2"), + Quantity3 = values.Value("Quantity3"), + Remarks = values.Value("Remarks") + }; + if (Grid3.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.Id = Grid3.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_Construction_Plan.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + } + + /// + /// 3.3 质量控制点或检验试验计划(ITP)情况 + /// + void saveJysyjh() + { + List detailLists = new List(); + JArray teamGroupData = Grid4.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_Construction_Plan newDetail = new Model.Report_Construction_Plan + { + //Id = values.Value("Id"), + ReportId = ReportId, + ReType = "2", + UnitOrMajor = values.Value("UnitOrMajor"), + Quantity1 = values.Value("Quantity1"), + Quantity2 = values.Value("Quantity2"), + Remarks = values.Value("Remarks") + }; + if (Grid4.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.Id = Grid4.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_Construction_Plan.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + } + #endregion + + #region 保存4.设计交底管理情况 + /// + /// 保存设计交底管理情况 + /// + void saveSjjd() + { + List detailLists = new List(); + JArray teamGroupData = Grid5.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_Construction_Plan newDetail = new Model.Report_Construction_Plan + { + //Id = values.Value("Id"), + ReportId = ReportId, + ReType = "3", + UnitOrMajor = values.Value("UnitOrMajor"), + Quantity1 = values.Value("Quantity1"), + Quantity2 = values.Value("Quantity2"), + Remarks = values.Value("Remarks") + }; + if (Grid5.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.Id = Grid5.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_Construction_Plan.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + } + #endregion + + #region 保存图纸会审 + /// + /// 保存图纸会审 + /// + void saveTzhs() + { + List detailLists = new List(); + JArray teamGroupData = Grid6.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_Construction_Plan newDetail = new Model.Report_Construction_Plan + { + //Id = values.Value("Id"), + ReportId = ReportId, + ReType = "4", + UnitOrMajor = values.Value("UnitOrMajor"), + Quantity1 = values.Value("Quantity1"), + Quantity2 = values.Value("Quantity2"), + Remarks = values.Value("Remarks") + }; + if (Grid6.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.Id = Grid6.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_Construction_Plan.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + } + #endregion + + #region 保存设备材料报验管理情况 + /// + /// 保存设备材料报验管理情况 + /// + void saveSbclBy() + { + List detailLists = new List(); + JArray teamGroupData = Grid11.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_Construction_Plan newDetail = new Model.Report_Construction_Plan + { + //Id = values.Value("Id"), + ReportId = ReportId, + ReType = "6", + UnitOrMajor = values.Value("UnitOrMajor"), + Quantity1 = values.Value("Quantity1"), + Quantity2 = values.Value("Quantity2"), + QuaRate = values.Value("QuaRate"), + Remarks = values.Value("Remarks") + }; + if (Grid11.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.Id = Grid11.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_Construction_Plan.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + } + #endregion + + #region 保存文本框内容 + /// + /// 保存文本框内容 + /// + void saveTxtContent() + { + var txtContentList = new List(); + #region 给实体赋值 + var model0 = new Model.Report_TextBoxContent(); + model0.Id = Guid.NewGuid().ToString(); + model0.ReportId = ReportId; + model0.ContentType = "0"; + model0.ContentText = txtAre0.Text; + txtContentList.Add(model0); + + var model1 = new Model.Report_TextBoxContent(); + model1.Id = Guid.NewGuid().ToString(); + model1.ReportId = ReportId; + model1.ContentType = "1"; + model1.ContentText = txtAre1.Text; + txtContentList.Add(model1); + + var model2 = new Model.Report_TextBoxContent(); + model2.Id = Guid.NewGuid().ToString(); + model2.ReportId = ReportId; + model2.ContentType = "2"; + model2.ContentText = txtAre2.Text; + txtContentList.Add(model2); + + var model20 = new Model.Report_TextBoxContent(); + model20.Id = Guid.NewGuid().ToString(); + model20.ReportId = ReportId; + model20.ContentType = "20"; + model20.ContentText = txtAre20.Text; + txtContentList.Add(model20); + + var model21 = new Model.Report_TextBoxContent(); + model21.Id = Guid.NewGuid().ToString(); + model21.ReportId = ReportId; + model21.ContentType = "21"; + model21.ContentText = txtAre21.Text; + txtContentList.Add(model21); + + var model22 = new Model.Report_TextBoxContent(); + model22.Id = Guid.NewGuid().ToString(); + model22.ReportId = ReportId; + model22.ContentType = "22"; + model22.ContentText = txtAre22.Text; + txtContentList.Add(model22); + + //如果8设备材料报验管理情况点击了增加按钮,则添加文本框内容 + var model8 = new Model.Report_TextBoxContent(); + model8.Id = Guid.NewGuid().ToString(); + model8.ReportId = ReportId; + model8.ContentType = "8"; + model8.ContentText = txtAre8.Text; + txtContentList.Add(model8); + #endregion + db.Report_TextBoxContent.InsertAllOnSubmit(txtContentList); + db.SubmitChanges(); + } + #endregion + + #region 9.计量器具报验管理情况 + void saveMeasuringInspection() + { + + List detailLists = new List(); + JArray teamGroupData = gvMeasuringInspection.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_CQMS_MonthReportItem newDetail = new Model.Report_CQMS_MonthReportItem + { + ReportId = ReportId, + ReType = "9", + ContentName = values.Value("ContentName"), + MonthsCount = values.Value("MonthsCount"), + ProjectCount = values.Value("ProjectCount"), + //RectificationRate = values.Value("RectificationRate"), + Remarks = values.Value("Remarks") + }; + if (gvMeasuringInspection.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.Id = gvMeasuringInspection.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_CQMS_MonthReportItem.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + } + #endregion + + #region 10.现场质量共检数据 + void saveTjInspection() //检验批统计:土建 + { + List detailLists = new List(); + JArray teamGroupData = gvTj.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_CQMS_MonthReportItem newDetail = new Model.Report_CQMS_MonthReportItem + { + ReportId = ReportId, + ReType = "10-1", + ContentName = values.Value("WorkName"), + + MonthsCount = values.Value("CheckNum"), //当前检查点数 + MonthsBackCount = values.Value("TotalCheckNum"),//累计点数 + + ProjectCount = values.Value("OKNum"),//当前合格点数 + TotalNoBackCount = values.Value("TotalOKNum"),//累计合格点数 + + RectificationRate = values.Value("OneOKRate"),//本月合格点数 + Remarks = values.Value("TotalOneOKRate"),//本月累计合格点数 + }; + if (gvTj.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.Id = gvTj.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_CQMS_MonthReportItem.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + } + void saveSbInspection() //检验批统计:设备 + { + List detailLists = new List(); + JArray teamGroupData = GvSb.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_CQMS_MonthReportItem newDetail = new Model.Report_CQMS_MonthReportItem + { + ReportId = ReportId, + ReType = "10-2", + ContentName = values.Value("WorkName"), + MonthsCount = values.Value("CheckNum"), //当前检查点数 + MonthsBackCount = values.Value("TotalCheckNum"),//累计点数 + + ProjectCount = values.Value("OKNum"),//当前合格点数 + TotalNoBackCount = values.Value("TotalOKNum"),//累计合格点数 + + RectificationRate = values.Value("OneOKRate"),//本月合格点数 + Remarks = values.Value("TotalOneOKRate"),//本月累计合格点数 + }; + if (GvSb.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.Id = GvSb.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_CQMS_MonthReportItem.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + } + void saveGDInspection() //检验批统计:管道 + { + List detailLists = new List(); + JArray teamGroupData = GvGD.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_CQMS_MonthReportItem newDetail = new Model.Report_CQMS_MonthReportItem + { + ReportId = ReportId, + ReType = "10-3", + ContentName = values.Value("WorkName"), + MonthsCount = values.Value("CheckNum"), //当前检查点数 + MonthsBackCount = values.Value("TotalCheckNum"),//累计点数 + + ProjectCount = values.Value("OKNum"),//当前合格点数 + TotalNoBackCount = values.Value("TotalOKNum"),//累计合格点数 + + RectificationRate = values.Value("OneOKRate"),//本月合格点数 + Remarks = values.Value("TotalOneOKRate"),//本月累计合格点数 + }; + if (GvGD.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.Id = GvGD.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_CQMS_MonthReportItem.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + } + + void saveDQInspection() //检验批统计:电气 + { + List detailLists = new List(); + JArray teamGroupData = GvDq.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_CQMS_MonthReportItem newDetail = new Model.Report_CQMS_MonthReportItem + { + ReportId = ReportId, + ReType = "10-4", + ContentName = values.Value("WorkName"), + MonthsCount = values.Value("CheckNum"), //当前检查点数 + MonthsBackCount = values.Value("TotalCheckNum"),//累计点数 + + ProjectCount = values.Value("OKNum"),//当前合格点数 + TotalNoBackCount = values.Value("TotalOKNum"),//累计合格点数 + + RectificationRate = values.Value("OneOKRate"),//本月合格点数 + Remarks = values.Value("TotalOneOKRate"),//本月累计合格点数 + }; + if (GvDq.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.Id = GvDq.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_CQMS_MonthReportItem.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + } + void saveYBInspection() //检验批统计:仪表 + { + List detailLists = new List(); + JArray teamGroupData = GvYb.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_CQMS_MonthReportItem newDetail = new Model.Report_CQMS_MonthReportItem + { + ReportId = ReportId, + ReType = "10-5", + ContentName = values.Value("WorkName"), + MonthsCount = values.Value("CheckNum"), //当前检查点数 + MonthsBackCount = values.Value("TotalCheckNum"),//累计点数 + + ProjectCount = values.Value("OKNum"),//当前合格点数 + TotalNoBackCount = values.Value("TotalOKNum"),//累计合格点数 + + RectificationRate = values.Value("OneOKRate"),//本月合格点数 + Remarks = values.Value("TotalOneOKRate"),//本月累计合格点数 + }; + if (GvYb.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.Id = GvYb.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_CQMS_MonthReportItem.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + } + void saveFFInspection() //检验批统计:防腐 + { + List detailLists = new List(); + JArray teamGroupData = GvFf.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_CQMS_MonthReportItem newDetail = new Model.Report_CQMS_MonthReportItem + { + ReportId = ReportId, + ReType = "10-6", + ContentName = values.Value("WorkName"), + MonthsCount = values.Value("CheckNum"), //当前检查点数 + MonthsBackCount = values.Value("TotalCheckNum"),//累计点数 + + ProjectCount = values.Value("OKNum"),//当前合格点数 + TotalNoBackCount = values.Value("TotalOKNum"),//累计合格点数 + + RectificationRate = values.Value("OneOKRate"),//本月合格点数 + Remarks = values.Value("TotalOneOKRate"),//本月累计合格点数 + }; + if (GvFf.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.Id = GvFf.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_CQMS_MonthReportItem.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + } + void saveXFInspection() //检验批统计:消防 + { + List detailLists = new List(); + JArray teamGroupData = GvXf.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_CQMS_MonthReportItem newDetail = new Model.Report_CQMS_MonthReportItem + { + ReportId = ReportId, + ReType = "10-7", + ContentName = values.Value("WorkName"), + MonthsCount = values.Value("CheckNum"), //当前检查点数 + MonthsBackCount = values.Value("TotalCheckNum"),//累计点数 + + ProjectCount = values.Value("OKNum"),//当前合格点数 + TotalNoBackCount = values.Value("TotalOKNum"),//累计合格点数 + + RectificationRate = values.Value("OneOKRate"),//本月合格点数 + Remarks = values.Value("TotalOneOKRate"),//本月累计合格点数 + }; + if (GvXf.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.Id = GvXf.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_CQMS_MonthReportItem.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + } + void saveInspectionDataInspection() + { + List detailLists = new List(); + JArray teamGroupData = gvInspectionDataInspection.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_CQMS_MonthReportItem newDetail = new Model.Report_CQMS_MonthReportItem + { + ReportId = ReportId, + ReType = "10", + ContentName = values.Value("WorkName"), + MonthsCount = values.Value("CheckNum"), //当前检查点数 + MonthsBackCount = values.Value("TotalCheckNum"),//累计点数 + + ProjectCount = values.Value("OKNum"),//当前合格点数 + TotalNoBackCount = values.Value("TotalOKNum"),//累计合格点数 + + RectificationRate = values.Value("OneOKRate"),//本月合格点数 + TotationRate = values.Value("TotalOneOKRate"), + Remarks = values.Value("Remarks"),//本月累计合格点数 + + }; + if (gvInspectionDataInspection.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.Id = gvInspectionDataInspection.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_CQMS_MonthReportItem.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + + } + #endregion + + #region 11.压力管道监检情况 + void savePressureInspection() + { + List detailLists = new List(); + JArray teamGroupData = gvPressureInspection.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_CQMS_MonthReportItem newDetail = new Model.Report_CQMS_MonthReportItem + { + ReportId = ReportId, + ReType = "11", + TotalNoBackCount = values.Value("TotalNoBackCount"), + ContentName = values.Value("ContentName"), + MonthsCount = values.Value("MonthsCount"), + ProjectCount = values.Value("ProjectCount"), + //RectificationRate = values.Value("RectificationRate"), + Remarks = values.Value("Remarks"), + }; + if (gvPressureInspection.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.Id = gvPressureInspection.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_CQMS_MonthReportItem.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + + } + #endregion + + #region 12.管道试压包管理情况 + void savePipingInspection() + { + List detailLists = new List(); + JArray teamGroupData = gvPipingInspection.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_CQMS_MonthReportItem newDetail = new Model.Report_CQMS_MonthReportItem + { + ReportId = ReportId, + ReType = "12", + TotalNoBackCount = values.Value("TotalNoBackCount"), + ContentName = values.Value("ContentName"), + MonthsCount = values.Value("MonthsCount"), + ProjectCount = values.Value("ProjectCount"), + //RectificationRate = values.Value("RectificationRate"), + Remarks = values.Value("Remarks"), + }; + if (gvPipingInspection.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.Id = gvPipingInspection.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_CQMS_MonthReportItem.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + + } + #endregion + + #region 13.特种设备监检情况 + void saveSpecialInspection() + { + List detailLists = new List(); + JArray teamGroupData = gvSpecialInspection.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_CQMS_MonthReportItem newDetail = new Model.Report_CQMS_MonthReportItem + { + ReportId = ReportId, + ReType = "13", + TotalNoBackCount = values.Value("TotalNoBackCount"), + ContentName = values.Value("ContentName"), + MonthsCount = values.Value("MonthsCount"), + ProjectCount = values.Value("ProjectCount"), + //RectificationRate = values.Value("RectificationRate"), + Remarks = values.Value("Remarks"), + }; + if (gvSpecialInspection.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.Id = gvSpecialInspection.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_CQMS_MonthReportItem.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + + } + #endregion + + #region 14.NCR管理情况 + void saveNcrManagementInspection() + { + List detailLists = new List(); + JArray teamGroupData = gvNcrManagementInspection.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_CQMS_MonthReportItem newDetail = new Model.Report_CQMS_MonthReportItem + { + ReportId = ReportId, + ReType = "14", + ContentName = values.Value("WorkName"), + MonthsCount = values.Value("CurrentPeriodOkNum"), + ProjectCount = values.Value("OKNum"), + TotalNoBackCount = values.Value("CheckNum"), + RectificationRate = values.Value("OKRate"), + }; + if (gvNcrManagementInspection.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.Id = gvNcrManagementInspection.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_CQMS_MonthReportItem.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + } + #endregion + + #region 15.质量巡检情况 + /// + /// 15.质量巡检情况 + /// + void saveQualityInspection() + { + List detailLists = new List(); + JArray teamGroupData = gvQualityInspection.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_CQMS_MonthReportItem newDetail = new Model.Report_CQMS_MonthReportItem + { + ReportId = ReportId, + ReType = "1", + ContentName = values.Value("ContentName"), + MonthsCount = values.Value("MonthsCount"), + ProjectCount = values.Value("ProjectCount"), + RectificationRate = values.Value("RectificationRate"), + Remarks = values.Value("Remarks") + }; + if (gvQualityInspection.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.Id = gvQualityInspection.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_CQMS_MonthReportItem.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + } + #endregion + + #region 16.质量专项检查情况 + /// + /// 16.质量专项检查情况 + /// + void saveSpecialCheck() + { + List detailLists = new List(); + JArray teamGroupData = gvSpecialCheck.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_CQMS_MonthReportItem newDetail = new Model.Report_CQMS_MonthReportItem + { + ReportId = ReportId, + ReType = "2", + ContentName = values.Value("ContentName"), + MonthsCount = values.Value("MonthsCount"), + ProjectCount = values.Value("ProjectCount"), + Remarks = values.Value("Remarks") + }; + if (gvSpecialCheck.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.Id = gvSpecialCheck.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_CQMS_MonthReportItem.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + } + #endregion + + #region 17.质量文件上报情况 + /// + /// 17.质量文件上报情况 + /// + void saveFileReport() + { + List detailLists = new List(); + JArray teamGroupData = gvFileReport.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_CQMS_MonthReportItem newDetail = new Model.Report_CQMS_MonthReportItem + { + ReportId = ReportId, + ReType = "3", + ContentName = values.Value("ContentName"), + MonthsCount = Funs.GetNewInt(values.Value("MonthsCount").ToString()), + ProjectCount = Funs.GetNewInt(values.Value("ProjectCount").ToString()), + MonthsBackCount = Funs.GetNewInt(values.Value("MonthsBackCount").ToString()), + TotalNoBackCount = Funs.GetNewInt(values.Value("TotalNoBackCount").ToString()) + }; + if (gvFileReport.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.Id = gvFileReport.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_CQMS_MonthReportItem.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + } + #endregion + + #region 18.本月质量问题处理情况 + /// + /// (1)原材料问题 + /// + void saveRowMaterialProblem() + { + List detailLists = new List(); + JArray teamGroupData = gvRowMaterialProblem.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_RowMaterialProblem newDetail = new Model.Report_RowMaterialProblem + { + ReportId = ReportId, + UnitId = values.Value("UnitId"), + ProblemDesrioption = values.Value("ProblemDesrioption"), + TreatmentMeasures = values.Value("TreatmentMeasures"), + ProcessingResults = values.Value("ProcessingResults"), + Remark = values.Value("Remark") + }; + if (gvRowMaterialProblem.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.RowMaterialProblemId = gvRowMaterialProblem.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_RowMaterialProblem.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + } + + /// + /// (2)施工过程问题 + /// + void saveConstructionProblems() + { + List detailLists = new List(); + JArray teamGroupData = gvConstructionProblems.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_ConstructionProblems newDetail = new Model.Report_ConstructionProblems + { + ReportId = ReportId, + UnitId = values.Value("UnitId"), + ProblemDesrioption = values.Value("ProblemDesrioption"), + TreatmentMeasures = values.Value("TreatmentMeasures"), + ProcessingResults = values.Value("ProcessingResults"), + Remark = values.Value("Remark") + }; + if (gvConstructionProblems.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.ConstructionProblemsId = gvConstructionProblems.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_ConstructionProblems.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + } + + #endregion + + #region 19.下月质量控制重点 + /// + /// 下月质量控制重点 + /// + void saveNextQualityControl() + { + List detailLists = new List(); + JArray teamGroupData = gvNextQualityControl.GetMergedData(); + foreach (JObject teamGroupRow in teamGroupData) + { + JObject values = teamGroupRow.Value("values"); + int rowIndex = teamGroupRow.Value("index"); + Model.Report_NextQualityControl newDetail = new Model.Report_NextQualityControl + { + ReportId = ReportId, + NextQualityControlContent = values.Value("NextQualityControlContent") + }; + if (gvNextQualityControl.Rows[rowIndex].DataKeys.Length > 0) + { + newDetail.NextQualityControlId = gvNextQualityControl.Rows[rowIndex].DataKeys[0].ToString(); + } + detailLists.Add(newDetail); + } + if (detailLists.Count > 0) + { + db.Report_NextQualityControl.InsertAllOnSubmit(detailLists); + db.SubmitChanges(); + } + } + #endregion + + #region 23.施工照片 + void saveImages() + { + var ImageLists = new List(); + var imgage1 = new Model.Report_TextBoxContent(); + imgage1.Id = Guid.NewGuid().ToString(); + imgage1.ReportId = ReportId; + imgage1.ContentType = "23-1"; + imgage1.ContentText = txtPhotoContent1.Text; + imgage1.ImageUrl = imgPhoto.ImageUrl.Substring(imgPhoto.ImageUrl.IndexOf("/") + 1); + ImageLists.Add(imgage1); + + var imgage2 = new Model.Report_TextBoxContent(); + imgage2.Id = Guid.NewGuid().ToString(); + imgage2.ReportId = ReportId; + imgage2.ContentType = "23-2"; + imgage2.ContentText = txtPhotoContent2.Text; + imgage2.ImageUrl = imgPhoto2.ImageUrl.Substring(imgPhoto2.ImageUrl.IndexOf("/") + 1); + ImageLists.Add(imgage2); + + var imgage3 = new Model.Report_TextBoxContent(); + imgage3.Id = Guid.NewGuid().ToString(); + imgage3.ReportId = ReportId; + imgage3.ContentType = "23-3"; + imgage3.ContentText = txtPhotoContent3.Text; + imgage3.ImageUrl = imgPhoto3.ImageUrl.Substring(imgPhoto3.ImageUrl.IndexOf("/") + 1); + ImageLists.Add(imgage3); + + var imgage4 = new Model.Report_TextBoxContent(); + imgage4.Id = Guid.NewGuid().ToString(); + imgage4.ReportId = ReportId; + imgage4.ContentType = "23-4"; + imgage4.ContentText = txtPhotoContent4.Text; + imgage4.ImageUrl = imgPhoto4.ImageUrl.Substring(imgPhoto4.ImageUrl.IndexOf("/") + 1); + ImageLists.Add(imgage4); + + var imgage5 = new Model.Report_TextBoxContent(); + imgage5.Id = Guid.NewGuid().ToString(); + imgage5.ReportId = ReportId; + imgage5.ContentType = "23-5"; + imgage5.ContentText = txtPhotoContent5.Text; + imgage5.ImageUrl = imgPhoto5.ImageUrl.Substring(imgPhoto5.ImageUrl.IndexOf("/") + 1); + ImageLists.Add(imgage5); + + var imgage6 = new Model.Report_TextBoxContent(); + imgage6.Id = Guid.NewGuid().ToString(); + imgage6.ReportId = ReportId; + imgage6.ContentType = "23-6"; + imgage6.ContentText = txtPhotoContent6.Text; + imgage6.ImageUrl = imgPhoto6.ImageUrl.Substring(imgPhoto6.ImageUrl.IndexOf("/") + 1); + ImageLists.Add(imgage6); + + db.Report_TextBoxContent.InsertAllOnSubmit(ImageLists); + db.SubmitChanges(); + } + #endregion + + #endregion + } +} \ No newline at end of file diff --git a/SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReportEdit.aspx.designer.cs b/SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReportEdit.aspx.designer.cs new file mode 100644 index 00000000..edca3c7f --- /dev/null +++ b/SGGL/FineUIPro.Web/CQMS/ManageReportNew/WeekReportEdit.aspx.designer.cs @@ -0,0 +1,1905 @@ +//------------------------------------------------------------------------------ +// <自动生成> +// 此代码由工具生成。 +// +// 对此文件的更改可能导致不正确的行为,如果 +// 重新生成代码,则所做更改将丢失。 +// +//------------------------------------------------------------------------------ + +namespace FineUIPro.Web.CQMS.ManageReportNew { + + + public partial class WeekReportEdit { + + /// + /// form1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.HtmlControls.HtmlForm form1; + + /// + /// PageManager1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.PageManager PageManager1; + + /// + /// ContentPanel1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.ContentPanel ContentPanel1; + + /// + /// Table1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.HtmlControls.HtmlTable Table1; + + /// + /// tabbtn 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.HtmlControls.HtmlTable tabbtn; + + /// + /// image15 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.WebControls.Image image15; + + /// + /// Button2 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button Button2; + + /// + /// Table5 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.HtmlControls.HtmlTable Table5; + + /// + /// lblProjectName 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.WebControls.Label lblProjectName; + + /// + /// Label1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.WebControls.Label Label1; + + /// + /// txtPeriod 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.WebControls.TextBox txtPeriod; + + /// + /// RequiredFieldValidator1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.WebControls.RequiredFieldValidator RequiredFieldValidator1; + + /// + /// Label2 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.WebControls.Label Label2; + + /// + /// lblTital 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.WebControls.Label lblTital; + + /// + /// Table2 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.HtmlControls.HtmlTable Table2; + + /// + /// txtStartDate 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.DatePicker txtStartDate; + + /// + /// Label3 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label Label3; + + /// + /// txtEndDate 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.DatePicker txtEndDate; + + /// + /// Panel4 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel4; + + /// + /// Toolbar2 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Toolbar Toolbar2; + + /// + /// Button3 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button Button3; + + /// + /// Form5 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form5; + + /// + /// Grid1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid Grid1; + + /// + /// txtProStage 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtProStage; + + /// + /// txtProDescribe 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtProDescribe; + + /// + /// txtTargetValue 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtTargetValue; + + /// + /// txtMonthPer 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtMonthPer; + + /// + /// txtRemarks 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtRemarks; + + /// + /// Panel5 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel5; + + /// + /// Panel6 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel6; + + /// + /// Form6 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form6; + + /// + /// txtAre0 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextArea txtAre0; + + /// + /// Panel7 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel7; + + /// + /// Form7 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form7; + + /// + /// txtAre1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextArea txtAre1; + + /// + /// Panel8 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel8; + + /// + /// Form8 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form8; + + /// + /// txtAre2 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextArea txtAre2; + + /// + /// Panel9 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel9; + + /// + /// Panel10 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel10; + + /// + /// Form9 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form9; + + /// + /// Grid2 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid Grid2; + + /// + /// TextBox5 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox TextBox5; + + /// + /// Panel11 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel11; + + /// + /// Form10 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form10; + + /// + /// Grid3 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid Grid3; + + /// + /// TextBox1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox TextBox1; + + /// + /// Panel12 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel12; + + /// + /// Form11 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form11; + + /// + /// Grid4 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid Grid4; + + /// + /// TextBox2 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox TextBox2; + + /// + /// Panel13 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel13; + + /// + /// Form12 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form12; + + /// + /// Grid5 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid Grid5; + + /// + /// TextBox3 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox TextBox3; + + /// + /// Panel14 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel14; + + /// + /// Form13 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form13; + + /// + /// Grid6 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid Grid6; + + /// + /// TextBox4 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox TextBox4; + + /// + /// Panel15 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel15; + + /// + /// Form14 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form14; + + /// + /// Grid7 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid Grid7; + + /// + /// Panel16 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel16; + + /// + /// Panel17 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel17; + + /// + /// Form15 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form15; + + /// + /// Grid8 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid Grid8; + + /// + /// Panel18 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel18; + + /// + /// Toolbar3 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Toolbar Toolbar3; + + /// + /// Button4 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button Button4; + + /// + /// Form16 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form16; + + /// + /// Grid9 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid Grid9; + + /// + /// drpUnitIdGrid9 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.DropDownList drpUnitIdGrid9; + + /// + /// TextBox7 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.NumberBox TextBox7; + + /// + /// TextBox8 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.NumberBox TextBox8; + + /// + /// TextBox10 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox TextBox10; + + /// + /// Panel19 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel19; + + /// + /// Form17 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form17; + + /// + /// Grid10 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid Grid10; + + /// + /// hidWsjcgl 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label hidWsjcgl; + + /// + /// Panel20 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel20; + + /// + /// Form18 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form18; + + /// + /// Grid11 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid Grid11; + + /// + /// TextBox6 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox TextBox6; + + /// + /// Form19 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form19; + + /// + /// txtAre8 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextArea txtAre8; + + /// + /// Pnl9 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Pnl9; + + /// + /// Form26 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form26; + + /// + /// gvMeasuringInspection 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid gvMeasuringInspection; + + /// + /// TextBox9 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox TextBox9; + + /// + /// Pnl10 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Pnl10; + + /// + /// Form27 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form27; + + /// + /// gvTj 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid gvTj; + + /// + /// GvSb 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid GvSb; + + /// + /// GvGD 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid GvGD; + + /// + /// GvDq 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid GvDq; + + /// + /// GvYb 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid GvYb; + + /// + /// GvFf 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid GvFf; + + /// + /// GvXf 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid GvXf; + + /// + /// gvInspectionDataInspection 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid gvInspectionDataInspection; + + /// + /// TextBox14 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox TextBox14; + + /// + /// Pnl11 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Pnl11; + + /// + /// Form28 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form28; + + /// + /// gvPressureInspection 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid gvPressureInspection; + + /// + /// TextBox15 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox TextBox15; + + /// + /// Pnl12 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Pnl12; + + /// + /// Form29 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form29; + + /// + /// gvPipingInspection 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid gvPipingInspection; + + /// + /// TextBox16 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox TextBox16; + + /// + /// TextBox17 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox TextBox17; + + /// + /// Pnl13 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Pnl13; + + /// + /// Form30 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form30; + + /// + /// gvSpecialInspection 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid gvSpecialInspection; + + /// + /// TextBox18 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox TextBox18; + + /// + /// Pnl14 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Pnl14; + + /// + /// Form31 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form31; + + /// + /// gvNcrManagementInspection 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid gvNcrManagementInspection; + + /// + /// Panel21 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel21; + + /// + /// Form20 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form20; + + /// + /// gvQualityInspection 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid gvQualityInspection; + + /// + /// TextBox11 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox TextBox11; + + /// + /// Panel22 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel22; + + /// + /// Form21 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form21; + + /// + /// gvSpecialCheck 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid gvSpecialCheck; + + /// + /// TextBox12 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox TextBox12; + + /// + /// Panel23 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel23; + + /// + /// Form22 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form22; + + /// + /// gvFileReport 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid gvFileReport; + + /// + /// Panel24 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel24; + + /// + /// Panel25 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel25; + + /// + /// Toolbar5 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Toolbar Toolbar5; + + /// + /// btnRowMaterialProblem 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnRowMaterialProblem; + + /// + /// Form23 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form23; + + /// + /// gvRowMaterialProblem 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid gvRowMaterialProblem; + + /// + /// txtUnitId 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtUnitId; + + /// + /// txtProblemDesrioption 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtProblemDesrioption; + + /// + /// txtTreatmentMeasures 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtTreatmentMeasures; + + /// + /// txtProcessingResults 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtProcessingResults; + + /// + /// txtRemark 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtRemark; + + /// + /// Panel26 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel26; + + /// + /// Toolbar6 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Toolbar Toolbar6; + + /// + /// btnAddConstructionProblems 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnAddConstructionProblems; + + /// + /// Form24 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form24; + + /// + /// gvConstructionProblems 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid gvConstructionProblems; + + /// + /// drpUnitId 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.DropDownList drpUnitId; + + /// + /// txtProblemDesrioption2 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtProblemDesrioption2; + + /// + /// txtTreatmentMeasures2 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtTreatmentMeasures2; + + /// + /// txtProcessingResults2 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtProcessingResults2; + + /// + /// txtRemark2 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtRemark2; + + /// + /// Panel27 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel27; + + /// + /// Toolbar7 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Toolbar Toolbar7; + + /// + /// btnAddNextControl 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnAddNextControl; + + /// + /// Form25 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form25; + + /// + /// gvNextQualityControl 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid gvNextQualityControl; + + /// + /// TextBox13 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox TextBox13; + + /// + /// Panel3 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel3; + + /// + /// Form3 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form3; + + /// + /// txtAre20 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextArea txtAre20; + + /// + /// Panel1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel1; + + /// + /// Form2 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form2; + + /// + /// txtAre21 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextArea txtAre21; + + /// + /// Panel2 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel2; + + /// + /// Form4 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form4; + + /// + /// txtAre22 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextArea txtAre22; + + /// + /// Panel28 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel28; + + /// + /// Form32 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form32; + + /// + /// imgPhoto 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Image imgPhoto; + + /// + /// imgPhoto2 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Image imgPhoto2; + + /// + /// Label7 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label Label7; + + /// + /// filePhoto 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.FileUpload filePhoto; + + /// + /// Label8 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label Label8; + + /// + /// filePhoto2 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.FileUpload filePhoto2; + + /// + /// Label9 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label Label9; + + /// + /// Label4 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label Label4; + + /// + /// txtPhotoContent1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtPhotoContent1; + + /// + /// Label5 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label Label5; + + /// + /// txtPhotoContent2 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtPhotoContent2; + + /// + /// Label6 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label Label6; + + /// + /// imgPhoto3 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Image imgPhoto3; + + /// + /// imgPhoto4 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Image imgPhoto4; + + /// + /// Label10 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label Label10; + + /// + /// filePhoto3 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.FileUpload filePhoto3; + + /// + /// Label11 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label Label11; + + /// + /// filePhoto4 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.FileUpload filePhoto4; + + /// + /// Label12 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label Label12; + + /// + /// Label13 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label Label13; + + /// + /// txtPhotoContent3 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtPhotoContent3; + + /// + /// Label14 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label Label14; + + /// + /// txtPhotoContent4 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtPhotoContent4; + + /// + /// Label15 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label Label15; + + /// + /// imgPhoto5 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Image imgPhoto5; + + /// + /// imgPhoto6 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Image imgPhoto6; + + /// + /// Label16 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label Label16; + + /// + /// filePhoto5 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.FileUpload filePhoto5; + + /// + /// Label17 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label Label17; + + /// + /// filePhoto6 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.FileUpload filePhoto6; + + /// + /// Label18 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label Label18; + + /// + /// Label19 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label Label19; + + /// + /// txtPhotoContent5 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtPhotoContent5; + + /// + /// Label20 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label Label20; + + /// + /// txtPhotoContent6 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtPhotoContent6; + + /// + /// Label21 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label Label21; + + /// + /// Toolbar1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Toolbar Toolbar1; + + /// + /// hdCheckControlCode 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.HiddenField hdCheckControlCode; + + /// + /// ToolbarFill1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.ToolbarFill ToolbarFill1; + + /// + /// Button1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button Button1; + + /// + /// Button5 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button Button5; + + /// + /// hdId 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.HiddenField hdId; + + /// + /// hdAttachUrl 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.HiddenField hdAttachUrl; + + /// + /// ValidationSummary1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.WebControls.ValidationSummary ValidationSummary1; + + /// + /// hidReportId 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.HtmlControls.HtmlInputHidden hidReportId; + } +} diff --git a/SGGL/FineUIPro.Web/File/Word/CQMS/项目质量周报.doc b/SGGL/FineUIPro.Web/File/Word/CQMS/项目质量周报.doc new file mode 100644 index 0000000000000000000000000000000000000000..e8240f660d268761404a222d1b441dade3aabb2e GIT binary patch literal 65951 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 EFI}@Na{vGU literal 0 HcmV?d00001 diff --git a/SGGL/FineUIPro.Web/FineUIPro.Web.csproj b/SGGL/FineUIPro.Web/FineUIPro.Web.csproj index 23aa14be..0daf201e 100644 --- a/SGGL/FineUIPro.Web/FineUIPro.Web.csproj +++ b/SGGL/FineUIPro.Web/FineUIPro.Web.csproj @@ -523,6 +523,8 @@ + + @@ -8054,6 +8056,20 @@ MonthReportNewEdit2.aspx + + WeekReport.aspx + ASPXCodeBehind + + + WeekReport.aspx + + + WeekReportEdit.aspx + ASPXCodeBehind + + + WeekReportEdit.aspx + CheckStatisc.aspx ASPXCodeBehind diff --git a/SGGL/FineUIPro.Web/common/Menu_CQMS.xml b/SGGL/FineUIPro.Web/common/Menu_CQMS.xml index de919474..772210e3 100644 --- a/SGGL/FineUIPro.Web/common/Menu_CQMS.xml +++ b/SGGL/FineUIPro.Web/common/Menu_CQMS.xml @@ -38,6 +38,7 @@ + diff --git a/SGGL/Model/Model.cs b/SGGL/Model/Model.cs index 0fe6f230..c7deac87 100644 --- a/SGGL/Model/Model.cs +++ b/SGGL/Model/Model.cs @@ -1460,6 +1460,9 @@ namespace Model partial void InsertManager_Month_CheckC(Manager_Month_CheckC instance); partial void UpdateManager_Month_CheckC(Manager_Month_CheckC instance); partial void DeleteManager_Month_CheckC(Manager_Month_CheckC instance); + partial void InsertManager_Month_ComplianceObligations(Manager_Month_ComplianceObligations instance); + partial void UpdateManager_Month_ComplianceObligations(Manager_Month_ComplianceObligations instance); + partial void DeleteManager_Month_ComplianceObligations(Manager_Month_ComplianceObligations instance); partial void InsertManager_Month_ComplianceObligationsC(Manager_Month_ComplianceObligationsC instance); partial void UpdateManager_Month_ComplianceObligationsC(Manager_Month_ComplianceObligationsC instance); partial void DeleteManager_Month_ComplianceObligationsC(Manager_Month_ComplianceObligationsC instance); @@ -2018,6 +2021,9 @@ namespace Model partial void InsertReport_CQMS_MonthReportItem(Report_CQMS_MonthReportItem instance); partial void UpdateReport_CQMS_MonthReportItem(Report_CQMS_MonthReportItem instance); partial void DeleteReport_CQMS_MonthReportItem(Report_CQMS_MonthReportItem instance); + partial void InsertReport_CQMS_ProblemHandle(Report_CQMS_ProblemHandle instance); + partial void UpdateReport_CQMS_ProblemHandle(Report_CQMS_ProblemHandle instance); + partial void DeleteReport_CQMS_ProblemHandle(Report_CQMS_ProblemHandle instance); partial void InsertReport_CqmsTarget(Report_CqmsTarget instance); partial void UpdateReport_CqmsTarget(Report_CqmsTarget instance); partial void DeleteReport_CqmsTarget(Report_CqmsTarget instance); @@ -6510,6 +6516,14 @@ namespace Model } } + public System.Data.Linq.Table Manager_Month_ComplianceObligations + { + get + { + return this.GetTable(); + } + } + public System.Data.Linq.Table Manager_Month_ComplianceObligationsC { get @@ -7998,6 +8012,14 @@ namespace Model } } + public System.Data.Linq.Table Report_CQMS_ProblemHandle + { + get + { + return this.GetTable(); + } + } + public System.Data.Linq.Table Report_CqmsTarget { get @@ -21591,8 +21613,6 @@ namespace Model private string _CodeRule; - private EntitySet _Doc_DocManage; - #region 可扩展性方法定义 partial void OnLoaded(); partial void OnValidate(System.Data.Linq.ChangeAction action); @@ -21609,7 +21629,6 @@ namespace Model public Base_DocType() { - this._Doc_DocManage = new EntitySet(new Action(this.attach_Doc_DocManage), new Action(this.detach_Doc_DocManage)); OnCreated(); } @@ -21693,19 +21712,6 @@ namespace Model } } - [global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Doc_DocManage_Base_DocType", Storage="_Doc_DocManage", ThisKey="DocTypeId", OtherKey="DocTypeId", DeleteRule="NO ACTION")] - public EntitySet Doc_DocManage - { - get - { - return this._Doc_DocManage; - } - set - { - this._Doc_DocManage.Assign(value); - } - } - public event PropertyChangingEventHandler PropertyChanging; public event PropertyChangedEventHandler PropertyChanged; @@ -21725,18 +21731,6 @@ namespace Model this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName)); } } - - private void attach_Doc_DocManage(Doc_DocManage entity) - { - this.SendPropertyChanging(); - entity.Base_DocType = this; - } - - private void detach_Doc_DocManage(Doc_DocManage entity) - { - this.SendPropertyChanging(); - entity.Base_DocType = null; - } } [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Base_EmergencyType")] @@ -98235,10 +98229,10 @@ namespace Model private string _AuditMan; - private string _Problem; - private string _Measure; + private string _Problem; + private string _RemarkCode; private EntityRef _Sys_User; @@ -98287,10 +98281,10 @@ namespace Model partial void OnStatusChanged(); partial void OnAuditManChanging(string value); partial void OnAuditManChanged(); - partial void OnProblemChanging(string value); - partial void OnProblemChanged(); partial void OnMeasureChanging(string value); partial void OnMeasureChanged(); + partial void OnProblemChanging(string value); + partial void OnProblemChanged(); partial void OnRemarkCodeChanging(string value); partial void OnRemarkCodeChanged(); #endregion @@ -98660,27 +98654,7 @@ namespace Model } } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Problem", DbType="VarChar(50)")] - public string Problem - { - get - { - return this._Problem; - } - set - { - if ((this._Problem != value)) - { - this.OnProblemChanging(value); - this.SendPropertyChanging(); - this._Problem = value; - this.SendPropertyChanged("Problem"); - this.OnProblemChanged(); - } - } - } - - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Measure", DbType="VarChar(100)")] + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Measure", DbType="VarChar(500)")] public string Measure { get @@ -98700,6 +98674,26 @@ namespace Model } } + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Problem", DbType="VarChar(100)")] + public string Problem + { + get + { + return this._Problem; + } + set + { + if ((this._Problem != value)) + { + this.OnProblemChanging(value); + this.SendPropertyChanging(); + this._Problem = value; + this.SendPropertyChanged("Problem"); + this.OnProblemChanged(); + } + } + } + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_RemarkCode", DbType="NVarChar(50)")] public string RemarkCode { @@ -121058,8 +121052,6 @@ namespace Model private EntityRef _Base_CNProfessional; - private EntityRef _Base_DocType; - private EntityRef _Base_Project; private EntityRef _Base_Unit; @@ -121111,7 +121103,6 @@ namespace Model public Doc_DocManage() { this._Base_CNProfessional = default(EntityRef); - this._Base_DocType = default(EntityRef); this._Base_Project = default(EntityRef); this._Base_Unit = default(EntityRef); this._Sys_User = default(EntityRef); @@ -121190,10 +121181,6 @@ namespace Model { if ((this._DocTypeId != value)) { - if (this._Base_DocType.HasLoadedOrAssignedValue) - { - throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException(); - } this.OnDocTypeIdChanging(value); this.SendPropertyChanging(); this._DocTypeId = value; @@ -121513,40 +121500,6 @@ namespace Model } } - [global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Doc_DocManage_Base_DocType", Storage="_Base_DocType", ThisKey="DocTypeId", OtherKey="DocTypeId", IsForeignKey=true)] - public Base_DocType Base_DocType - { - get - { - return this._Base_DocType.Entity; - } - set - { - Base_DocType previousValue = this._Base_DocType.Entity; - if (((previousValue != value) - || (this._Base_DocType.HasLoadedOrAssignedValue == false))) - { - this.SendPropertyChanging(); - if ((previousValue != null)) - { - this._Base_DocType.Entity = null; - previousValue.Doc_DocManage.Remove(this); - } - this._Base_DocType.Entity = value; - if ((value != null)) - { - value.Doc_DocManage.Add(this); - this._DocTypeId = value.DocTypeId; - } - else - { - this._DocTypeId = default(string); - } - this.SendPropertyChanged("Base_DocType"); - } - } - } - [global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Doc_DocManage_Base_Project", Storage="_Base_Project", ThisKey="ProjectId", OtherKey="ProjectId", IsForeignKey=true)] public Base_Project Base_Project { @@ -121717,8 +121670,6 @@ namespace Model private EntityRef _Doc_DocManage; - private EntityRef _Sys_User; - #region 可扩展性方法定义 partial void OnLoaded(); partial void OnValidate(System.Data.Linq.ChangeAction action); @@ -121742,7 +121693,6 @@ namespace Model public Doc_DocManageApprove() { this._Doc_DocManage = default(EntityRef); - this._Sys_User = default(EntityRef); OnCreated(); } @@ -121790,7 +121740,7 @@ namespace Model } } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ApproveMan", DbType="NVarChar(50)")] + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ApproveMan", DbType="NVarChar(500)")] public string ApproveMan { get @@ -121801,10 +121751,6 @@ namespace Model { if ((this._ApproveMan != value)) { - if (this._Sys_User.HasLoadedOrAssignedValue) - { - throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException(); - } this.OnApproveManChanging(value); this.SendPropertyChanging(); this._ApproveMan = value; @@ -121928,40 +121874,6 @@ namespace Model } } - [global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Doc_DocManageApprove_Sys_User", Storage="_Sys_User", ThisKey="ApproveMan", OtherKey="UserId", IsForeignKey=true)] - public Sys_User Sys_User - { - get - { - return this._Sys_User.Entity; - } - set - { - Sys_User previousValue = this._Sys_User.Entity; - if (((previousValue != value) - || (this._Sys_User.HasLoadedOrAssignedValue == false))) - { - this.SendPropertyChanging(); - if ((previousValue != null)) - { - this._Sys_User.Entity = null; - previousValue.Doc_DocManageApprove.Remove(this); - } - this._Sys_User.Entity = value; - if ((value != null)) - { - value.Doc_DocManageApprove.Add(this); - this._ApproveMan = value.UserId; - } - else - { - this._ApproveMan = default(string); - } - this.SendPropertyChanged("Sys_User"); - } - } - } - public event PropertyChangingEventHandler PropertyChanging; public event PropertyChangedEventHandler PropertyChanged; @@ -235749,6 +235661,229 @@ namespace Model } } + [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Manager_Month_ComplianceObligations")] + public partial class Manager_Month_ComplianceObligations : INotifyPropertyChanging, INotifyPropertyChanged + { + + private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty); + + private string _ComplianceObligationsId; + + private string _MonthReportId; + + private string _InformationContent; + + private string _ResponseMeasures; + + private string _ImplementationStatus; + + private string _EvaluationConclusion; + + private EntityRef _Manager_MonthReportC; + + #region 可扩展性方法定义 + partial void OnLoaded(); + partial void OnValidate(System.Data.Linq.ChangeAction action); + partial void OnCreated(); + partial void OnComplianceObligationsIdChanging(string value); + partial void OnComplianceObligationsIdChanged(); + partial void OnMonthReportIdChanging(string value); + partial void OnMonthReportIdChanged(); + partial void OnInformationContentChanging(string value); + partial void OnInformationContentChanged(); + partial void OnResponseMeasuresChanging(string value); + partial void OnResponseMeasuresChanged(); + partial void OnImplementationStatusChanging(string value); + partial void OnImplementationStatusChanged(); + partial void OnEvaluationConclusionChanging(string value); + partial void OnEvaluationConclusionChanged(); + #endregion + + public Manager_Month_ComplianceObligations() + { + this._Manager_MonthReportC = default(EntityRef); + OnCreated(); + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ComplianceObligationsId", DbType="NVarChar(50) NOT NULL", CanBeNull=false, IsPrimaryKey=true)] + public string ComplianceObligationsId + { + get + { + return this._ComplianceObligationsId; + } + set + { + if ((this._ComplianceObligationsId != value)) + { + this.OnComplianceObligationsIdChanging(value); + this.SendPropertyChanging(); + this._ComplianceObligationsId = value; + this.SendPropertyChanged("ComplianceObligationsId"); + this.OnComplianceObligationsIdChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_MonthReportId", DbType="NVarChar(50)")] + public string MonthReportId + { + get + { + return this._MonthReportId; + } + set + { + if ((this._MonthReportId != value)) + { + if (this._Manager_MonthReportC.HasLoadedOrAssignedValue) + { + throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException(); + } + this.OnMonthReportIdChanging(value); + this.SendPropertyChanging(); + this._MonthReportId = value; + this.SendPropertyChanged("MonthReportId"); + this.OnMonthReportIdChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_InformationContent", DbType="NVarChar(500)")] + public string InformationContent + { + get + { + return this._InformationContent; + } + set + { + if ((this._InformationContent != value)) + { + this.OnInformationContentChanging(value); + this.SendPropertyChanging(); + this._InformationContent = value; + this.SendPropertyChanged("InformationContent"); + this.OnInformationContentChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResponseMeasures", DbType="NVarChar(500)")] + public string ResponseMeasures + { + get + { + return this._ResponseMeasures; + } + set + { + if ((this._ResponseMeasures != value)) + { + this.OnResponseMeasuresChanging(value); + this.SendPropertyChanging(); + this._ResponseMeasures = value; + this.SendPropertyChanged("ResponseMeasures"); + this.OnResponseMeasuresChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ImplementationStatus", DbType="NVarChar(500)")] + public string ImplementationStatus + { + get + { + return this._ImplementationStatus; + } + set + { + if ((this._ImplementationStatus != value)) + { + this.OnImplementationStatusChanging(value); + this.SendPropertyChanging(); + this._ImplementationStatus = value; + this.SendPropertyChanged("ImplementationStatus"); + this.OnImplementationStatusChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_EvaluationConclusion", DbType="NVarChar(50)")] + public string EvaluationConclusion + { + get + { + return this._EvaluationConclusion; + } + set + { + if ((this._EvaluationConclusion != value)) + { + this.OnEvaluationConclusionChanging(value); + this.SendPropertyChanging(); + this._EvaluationConclusion = value; + this.SendPropertyChanged("EvaluationConclusion"); + this.OnEvaluationConclusionChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Manager_Month_ComplianceObligations_Manager_MonthReportC", Storage="_Manager_MonthReportC", ThisKey="MonthReportId", OtherKey="MonthReportId", IsForeignKey=true)] + public Manager_MonthReportC Manager_MonthReportC + { + get + { + return this._Manager_MonthReportC.Entity; + } + set + { + Manager_MonthReportC previousValue = this._Manager_MonthReportC.Entity; + if (((previousValue != value) + || (this._Manager_MonthReportC.HasLoadedOrAssignedValue == false))) + { + this.SendPropertyChanging(); + if ((previousValue != null)) + { + this._Manager_MonthReportC.Entity = null; + previousValue.Manager_Month_ComplianceObligations.Remove(this); + } + this._Manager_MonthReportC.Entity = value; + if ((value != null)) + { + value.Manager_Month_ComplianceObligations.Add(this); + this._MonthReportId = value.MonthReportId; + } + else + { + this._MonthReportId = default(string); + } + this.SendPropertyChanged("Manager_MonthReportC"); + } + } + } + + public event PropertyChangingEventHandler PropertyChanging; + + public event PropertyChangedEventHandler PropertyChanged; + + protected virtual void SendPropertyChanging() + { + if ((this.PropertyChanging != null)) + { + this.PropertyChanging(this, emptyChangingEventArgs); + } + } + + protected virtual void SendPropertyChanged(String propertyName) + { + if ((this.PropertyChanged != null)) + { + this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName)); + } + } + } + [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Manager_Month_ComplianceObligationsC")] public partial class Manager_Month_ComplianceObligationsC : INotifyPropertyChanging, INotifyPropertyChanged { @@ -241948,6 +242083,8 @@ namespace Model private EntitySet _Manager_Month_CheckC; + private EntitySet _Manager_Month_ComplianceObligations; + private EntitySet _Manager_Month_ComplianceObligationsC; private EntitySet _Manager_Month_CostInvestmentPlanC; @@ -242220,6 +242357,7 @@ namespace Model this._Manager_Month_ActivitiesC = new EntitySet(new Action(this.attach_Manager_Month_ActivitiesC), new Action(this.detach_Manager_Month_ActivitiesC)); this._Manager_Month_ActivityDesC = new EntitySet(new Action(this.attach_Manager_Month_ActivityDesC), new Action(this.detach_Manager_Month_ActivityDesC)); this._Manager_Month_CheckC = new EntitySet(new Action(this.attach_Manager_Month_CheckC), new Action(this.detach_Manager_Month_CheckC)); + this._Manager_Month_ComplianceObligations = new EntitySet(new Action(this.attach_Manager_Month_ComplianceObligations), new Action(this.detach_Manager_Month_ComplianceObligations)); this._Manager_Month_ComplianceObligationsC = new EntitySet(new Action(this.attach_Manager_Month_ComplianceObligationsC), new Action(this.detach_Manager_Month_ComplianceObligationsC)); this._Manager_Month_CostInvestmentPlanC = new EntitySet(new Action(this.attach_Manager_Month_CostInvestmentPlanC), new Action(this.detach_Manager_Month_CostInvestmentPlanC)); this._Manager_Month_EmergencyExercisesC = new EntitySet(new Action(this.attach_Manager_Month_EmergencyExercisesC), new Action(this.detach_Manager_Month_EmergencyExercisesC)); @@ -244400,6 +244538,19 @@ namespace Model } } + [global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Manager_Month_ComplianceObligations_Manager_MonthReportC", Storage="_Manager_Month_ComplianceObligations", ThisKey="MonthReportId", OtherKey="MonthReportId", DeleteRule="NO ACTION")] + public EntitySet Manager_Month_ComplianceObligations + { + get + { + return this._Manager_Month_ComplianceObligations; + } + set + { + this._Manager_Month_ComplianceObligations.Assign(value); + } + } + [global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Manager_Month_ComplianceObligationsC_Manager_MonthReportC", Storage="_Manager_Month_ComplianceObligationsC", ThisKey="MonthReportId", OtherKey="MonthReportId", DeleteRule="NO ACTION")] public EntitySet Manager_Month_ComplianceObligationsC { @@ -244981,6 +245132,18 @@ namespace Model entity.Manager_MonthReportC = null; } + private void attach_Manager_Month_ComplianceObligations(Manager_Month_ComplianceObligations entity) + { + this.SendPropertyChanging(); + entity.Manager_MonthReportC = this; + } + + private void detach_Manager_Month_ComplianceObligations(Manager_Month_ComplianceObligations entity) + { + this.SendPropertyChanging(); + entity.Manager_MonthReportC = null; + } + private void attach_Manager_Month_ComplianceObligationsC(Manager_Month_ComplianceObligationsC entity) { this.SendPropertyChanging(); @@ -273325,7 +273488,7 @@ namespace Model private System.Nullable _ProblemType; - private string _SubInspectId; + private string _QuestionTechnologyId; private string _TermItemId; @@ -273339,18 +273502,20 @@ namespace Model private string _InspectUser; - private string _HandleUser; - private string _ApproveUser; - private System.Nullable _AdjustCompleteTime; - private System.Nullable _ApproveState; private string _AddUser; private System.Nullable _AddTime; + private string _HandleUser; + + private System.Nullable _AdjustCompleteTime; + + private string _SubInspectId; + #region 可扩展性方法定义 partial void OnLoaded(); partial void OnValidate(System.Data.Linq.ChangeAction action); @@ -273367,8 +273532,8 @@ namespace Model partial void OnConstructionUnitChanged(); partial void OnProblemTypeChanging(System.Nullable value); partial void OnProblemTypeChanged(); - partial void OnSubInspectIdChanging(string value); - partial void OnSubInspectIdChanged(); + partial void OnQuestionTechnologyIdChanging(string value); + partial void OnQuestionTechnologyIdChanged(); partial void OnTermItemIdChanging(string value); partial void OnTermItemIdChanged(); partial void OnWorkPackIdChanging(string value); @@ -273381,18 +273546,20 @@ namespace Model partial void OnRectifyTimeChanged(); partial void OnInspectUserChanging(string value); partial void OnInspectUserChanged(); - partial void OnHandleUserChanging(string value); - partial void OnHandleUserChanged(); partial void OnApproveUserChanging(string value); partial void OnApproveUserChanged(); - partial void OnAdjustCompleteTimeChanging(System.Nullable value); - partial void OnAdjustCompleteTimeChanged(); partial void OnApproveStateChanging(System.Nullable value); partial void OnApproveStateChanged(); partial void OnAddUserChanging(string value); partial void OnAddUserChanged(); partial void OnAddTimeChanging(System.Nullable value); partial void OnAddTimeChanged(); + partial void OnHandleUserChanging(string value); + partial void OnHandleUserChanged(); + partial void OnAdjustCompleteTimeChanging(System.Nullable value); + partial void OnAdjustCompleteTimeChanged(); + partial void OnSubInspectIdChanging(string value); + partial void OnSubInspectIdChanged(); #endregion public PreRun_InspectTailTerm() @@ -273520,22 +273687,22 @@ namespace Model } } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SubInspectId", DbType="VarChar(50)")] - public string SubInspectId + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_QuestionTechnologyId", DbType="VarChar(50)")] + public string QuestionTechnologyId { get { - return this._SubInspectId; + return this._QuestionTechnologyId; } set { - if ((this._SubInspectId != value)) + if ((this._QuestionTechnologyId != value)) { - this.OnSubInspectIdChanging(value); + this.OnQuestionTechnologyIdChanging(value); this.SendPropertyChanging(); - this._SubInspectId = value; - this.SendPropertyChanged("SubInspectId"); - this.OnSubInspectIdChanged(); + this._QuestionTechnologyId = value; + this.SendPropertyChanged("QuestionTechnologyId"); + this.OnQuestionTechnologyIdChanged(); } } } @@ -273660,26 +273827,6 @@ namespace Model } } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_HandleUser", DbType="VarChar(50)")] - public string HandleUser - { - get - { - return this._HandleUser; - } - set - { - if ((this._HandleUser != value)) - { - this.OnHandleUserChanging(value); - this.SendPropertyChanging(); - this._HandleUser = value; - this.SendPropertyChanged("HandleUser"); - this.OnHandleUserChanged(); - } - } - } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ApproveUser", DbType="VarChar(50)")] public string ApproveUser { @@ -273700,26 +273847,6 @@ namespace Model } } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_AdjustCompleteTime", DbType="DateTime")] - public System.Nullable AdjustCompleteTime - { - get - { - return this._AdjustCompleteTime; - } - set - { - if ((this._AdjustCompleteTime != value)) - { - this.OnAdjustCompleteTimeChanging(value); - this.SendPropertyChanging(); - this._AdjustCompleteTime = value; - this.SendPropertyChanged("AdjustCompleteTime"); - this.OnAdjustCompleteTimeChanged(); - } - } - } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ApproveState", DbType="Int")] public System.Nullable ApproveState { @@ -273780,6 +273907,66 @@ namespace Model } } + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_HandleUser", DbType="VarChar(50)")] + public string HandleUser + { + get + { + return this._HandleUser; + } + set + { + if ((this._HandleUser != value)) + { + this.OnHandleUserChanging(value); + this.SendPropertyChanging(); + this._HandleUser = value; + this.SendPropertyChanged("HandleUser"); + this.OnHandleUserChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_AdjustCompleteTime", DbType="DateTime")] + public System.Nullable AdjustCompleteTime + { + get + { + return this._AdjustCompleteTime; + } + set + { + if ((this._AdjustCompleteTime != value)) + { + this.OnAdjustCompleteTimeChanging(value); + this.SendPropertyChanging(); + this._AdjustCompleteTime = value; + this.SendPropertyChanged("AdjustCompleteTime"); + this.OnAdjustCompleteTimeChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SubInspectId", DbType="NVarChar(50)")] + public string SubInspectId + { + get + { + return this._SubInspectId; + } + set + { + if ((this._SubInspectId != value)) + { + this.OnSubInspectIdChanging(value); + this.SendPropertyChanging(); + this._SubInspectId = value; + this.SendPropertyChanged("SubInspectId"); + this.OnSubInspectIdChanged(); + } + } + } + public event PropertyChangingEventHandler PropertyChanging; public event PropertyChangedEventHandler PropertyChanged; @@ -273821,14 +274008,14 @@ namespace Model private string _ApproveUser; - private System.Nullable _ApproveType; - private System.Nullable _ApproveState; private string _AddUser; private System.Nullable _AddTime; + private System.Nullable _ApproveType; + #region 可扩展性方法定义 partial void OnLoaded(); partial void OnValidate(System.Data.Linq.ChangeAction action); @@ -273847,14 +274034,14 @@ namespace Model partial void OnApproveTimeChanged(); partial void OnApproveUserChanging(string value); partial void OnApproveUserChanged(); - partial void OnApproveTypeChanging(System.Nullable value); - partial void OnApproveTypeChanged(); partial void OnApproveStateChanging(System.Nullable value); partial void OnApproveStateChanged(); partial void OnAddUserChanging(string value); partial void OnAddUserChanged(); partial void OnAddTimeChanging(System.Nullable value); partial void OnAddTimeChanged(); + partial void OnApproveTypeChanging(System.Nullable value); + partial void OnApproveTypeChanged(); #endregion public PreRun_InspectTermApproveRecords() @@ -274002,26 +274189,6 @@ namespace Model } } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ApproveType", DbType="Int")] - public System.Nullable ApproveType - { - get - { - return this._ApproveType; - } - set - { - if ((this._ApproveType != value)) - { - this.OnApproveTypeChanging(value); - this.SendPropertyChanging(); - this._ApproveType = value; - this.SendPropertyChanged("ApproveType"); - this.OnApproveTypeChanged(); - } - } - } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ApproveState", DbType="Int")] public System.Nullable ApproveState { @@ -274082,6 +274249,26 @@ namespace Model } } + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ApproveType", DbType="Int")] + public System.Nullable ApproveType + { + get + { + return this._ApproveType; + } + set + { + if ((this._ApproveType != value)) + { + this.OnApproveTypeChanging(value); + this.SendPropertyChanging(); + this._ApproveType = value; + this.SendPropertyChanged("ApproveType"); + this.OnApproveTypeChanged(); + } + } + } + public event PropertyChangingEventHandler PropertyChanging; public event PropertyChangedEventHandler PropertyChanged; @@ -275014,7 +275201,7 @@ namespace Model } } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Remark", DbType="NVarChar(MAX)", UpdateCheck=UpdateCheck.Never)] + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Remark", DbType="VarChar(MAX)", UpdateCheck=UpdateCheck.Never)] public string Remark { get @@ -275137,6 +275324,12 @@ namespace Model private string _InspectResult; + private System.Nullable _InspectTime; + + private string _AddUser; + + private System.Nullable _AddTime; + private string _Subcontractor; private string _Contractor; @@ -275145,6 +275338,12 @@ namespace Model private string _Owner; + private System.Nullable _IsUnifyWanderAbout; + + private System.Nullable _UnifyWanderAboutData; + + private string _UnifyWanderAboutOpinion; + private System.Nullable _InspectionIsAllPass; private System.Nullable _SubcontractorIsAllPass; @@ -275155,9 +275354,7 @@ namespace Model private System.Nullable _OwnerIsAllPass; - private System.Nullable _WorkPackType; - - private string _PropertyTechnologyId; + private System.Nullable _WanderIsComplete; private System.Nullable _SubcontractorAllPassData; @@ -275167,35 +275364,25 @@ namespace Model private System.Nullable _OwnerAllPassData; - private System.Nullable _WanderIsComplete; - private System.Nullable _WanderCompleteData; + private System.Nullable _WorkPackType; + private System.Nullable _IsSiteImplement; - private string _SiteImplementUser; - - private System.Nullable _SiteImplementConfirmData; - - private System.Nullable _RecordUploadData; - private System.Nullable _InspectIsClose; - private string _InspectIsCloseUser; - private System.Nullable _InspectCloseData; - private System.Nullable _IsUnifyWanderAbout; + private string _InspectIsCloseUser; - private System.Nullable _UnifyWanderAboutData; + private string _PropertyTechnologyId; - private string _UnifyWanderAboutOpinion; + private System.Nullable _RecordUploadData; - private System.Nullable _InspectTime; + private System.Nullable _SiteImplementConfirmData; - private string _AddUser; - - private System.Nullable _AddTime; + private string _SiteImplementUser; #region 可扩展性方法定义 partial void OnLoaded(); @@ -275217,6 +275404,12 @@ namespace Model partial void OnWorkPackIdChanged(); partial void OnInspectResultChanging(string value); partial void OnInspectResultChanged(); + partial void OnInspectTimeChanging(System.Nullable value); + partial void OnInspectTimeChanged(); + partial void OnAddUserChanging(string value); + partial void OnAddUserChanged(); + partial void OnAddTimeChanging(System.Nullable value); + partial void OnAddTimeChanged(); partial void OnSubcontractorChanging(string value); partial void OnSubcontractorChanged(); partial void OnContractorChanging(string value); @@ -275225,6 +275418,12 @@ namespace Model partial void OnSupervisionChanged(); partial void OnOwnerChanging(string value); partial void OnOwnerChanged(); + partial void OnIsUnifyWanderAboutChanging(System.Nullable value); + partial void OnIsUnifyWanderAboutChanged(); + partial void OnUnifyWanderAboutDataChanging(System.Nullable value); + partial void OnUnifyWanderAboutDataChanged(); + partial void OnUnifyWanderAboutOpinionChanging(string value); + partial void OnUnifyWanderAboutOpinionChanged(); partial void OnInspectionIsAllPassChanging(System.Nullable value); partial void OnInspectionIsAllPassChanged(); partial void OnSubcontractorIsAllPassChanging(System.Nullable value); @@ -275235,10 +275434,8 @@ namespace Model partial void OnSupervisionIsAllPassChanged(); partial void OnOwnerIsAllPassChanging(System.Nullable value); partial void OnOwnerIsAllPassChanged(); - partial void OnWorkPackTypeChanging(System.Nullable value); - partial void OnWorkPackTypeChanged(); - partial void OnPropertyTechnologyIdChanging(string value); - partial void OnPropertyTechnologyIdChanged(); + partial void OnWanderIsCompleteChanging(System.Nullable value); + partial void OnWanderIsCompleteChanged(); partial void OnSubcontractorAllPassDataChanging(System.Nullable value); partial void OnSubcontractorAllPassDataChanged(); partial void OnContractorAllPassDataChanging(System.Nullable value); @@ -275247,36 +275444,26 @@ namespace Model partial void OnSupervisionAllPassDataChanged(); partial void OnOwnerAllPassDataChanging(System.Nullable value); partial void OnOwnerAllPassDataChanged(); - partial void OnWanderIsCompleteChanging(System.Nullable value); - partial void OnWanderIsCompleteChanged(); partial void OnWanderCompleteDataChanging(System.Nullable value); partial void OnWanderCompleteDataChanged(); + partial void OnWorkPackTypeChanging(System.Nullable value); + partial void OnWorkPackTypeChanged(); partial void OnIsSiteImplementChanging(System.Nullable value); partial void OnIsSiteImplementChanged(); - partial void OnSiteImplementUserChanging(string value); - partial void OnSiteImplementUserChanged(); - partial void OnSiteImplementConfirmDataChanging(System.Nullable value); - partial void OnSiteImplementConfirmDataChanged(); - partial void OnRecordUploadDataChanging(System.Nullable value); - partial void OnRecordUploadDataChanged(); partial void OnInspectIsCloseChanging(System.Nullable value); partial void OnInspectIsCloseChanged(); - partial void OnInspectIsCloseUserChanging(string value); - partial void OnInspectIsCloseUserChanged(); partial void OnInspectCloseDataChanging(System.Nullable value); partial void OnInspectCloseDataChanged(); - partial void OnIsUnifyWanderAboutChanging(System.Nullable value); - partial void OnIsUnifyWanderAboutChanged(); - partial void OnUnifyWanderAboutDataChanging(System.Nullable value); - partial void OnUnifyWanderAboutDataChanged(); - partial void OnUnifyWanderAboutOpinionChanging(string value); - partial void OnUnifyWanderAboutOpinionChanged(); - partial void OnInspectTimeChanging(System.Nullable value); - partial void OnInspectTimeChanged(); - partial void OnAddUserChanging(string value); - partial void OnAddUserChanged(); - partial void OnAddTimeChanging(System.Nullable value); - partial void OnAddTimeChanged(); + partial void OnInspectIsCloseUserChanging(string value); + partial void OnInspectIsCloseUserChanged(); + partial void OnPropertyTechnologyIdChanging(string value); + partial void OnPropertyTechnologyIdChanged(); + partial void OnRecordUploadDataChanging(System.Nullable value); + partial void OnRecordUploadDataChanged(); + partial void OnSiteImplementConfirmDataChanging(System.Nullable value); + partial void OnSiteImplementConfirmDataChanged(); + partial void OnSiteImplementUserChanging(string value); + partial void OnSiteImplementUserChanged(); #endregion public PreRun_SubInspectTerm() @@ -275444,6 +275631,66 @@ namespace Model } } + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_InspectTime", DbType="DateTime")] + public System.Nullable InspectTime + { + get + { + return this._InspectTime; + } + set + { + if ((this._InspectTime != value)) + { + this.OnInspectTimeChanging(value); + this.SendPropertyChanging(); + this._InspectTime = value; + this.SendPropertyChanged("InspectTime"); + this.OnInspectTimeChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_AddUser", DbType="VarChar(50)")] + public string AddUser + { + get + { + return this._AddUser; + } + set + { + if ((this._AddUser != value)) + { + this.OnAddUserChanging(value); + this.SendPropertyChanging(); + this._AddUser = value; + this.SendPropertyChanged("AddUser"); + this.OnAddUserChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_AddTime", DbType="DateTime")] + public System.Nullable AddTime + { + get + { + return this._AddTime; + } + set + { + if ((this._AddTime != value)) + { + this.OnAddTimeChanging(value); + this.SendPropertyChanging(); + this._AddTime = value; + this.SendPropertyChanged("AddTime"); + this.OnAddTimeChanged(); + } + } + } + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Subcontractor", DbType="VarChar(50)")] public string Subcontractor { @@ -275524,6 +275771,66 @@ namespace Model } } + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IsUnifyWanderAbout", DbType="Int")] + public System.Nullable IsUnifyWanderAbout + { + get + { + return this._IsUnifyWanderAbout; + } + set + { + if ((this._IsUnifyWanderAbout != value)) + { + this.OnIsUnifyWanderAboutChanging(value); + this.SendPropertyChanging(); + this._IsUnifyWanderAbout = value; + this.SendPropertyChanged("IsUnifyWanderAbout"); + this.OnIsUnifyWanderAboutChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UnifyWanderAboutData", DbType="DateTime")] + public System.Nullable UnifyWanderAboutData + { + get + { + return this._UnifyWanderAboutData; + } + set + { + if ((this._UnifyWanderAboutData != value)) + { + this.OnUnifyWanderAboutDataChanging(value); + this.SendPropertyChanging(); + this._UnifyWanderAboutData = value; + this.SendPropertyChanged("UnifyWanderAboutData"); + this.OnUnifyWanderAboutDataChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UnifyWanderAboutOpinion", DbType="VarChar(MAX)", UpdateCheck=UpdateCheck.Never)] + public string UnifyWanderAboutOpinion + { + get + { + return this._UnifyWanderAboutOpinion; + } + set + { + if ((this._UnifyWanderAboutOpinion != value)) + { + this.OnUnifyWanderAboutOpinionChanging(value); + this.SendPropertyChanging(); + this._UnifyWanderAboutOpinion = value; + this.SendPropertyChanged("UnifyWanderAboutOpinion"); + this.OnUnifyWanderAboutOpinionChanged(); + } + } + } + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_InspectionIsAllPass", DbType="Int")] public System.Nullable InspectionIsAllPass { @@ -275624,42 +275931,22 @@ namespace Model } } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_WorkPackType", DbType="Int")] - public System.Nullable WorkPackType + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_WanderIsComplete", DbType="Int")] + public System.Nullable WanderIsComplete { get { - return this._WorkPackType; + return this._WanderIsComplete; } set { - if ((this._WorkPackType != value)) + if ((this._WanderIsComplete != value)) { - this.OnWorkPackTypeChanging(value); + this.OnWanderIsCompleteChanging(value); this.SendPropertyChanging(); - this._WorkPackType = value; - this.SendPropertyChanged("WorkPackType"); - this.OnWorkPackTypeChanged(); - } - } - } - - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PropertyTechnologyId", DbType="VarChar(MAX)", UpdateCheck=UpdateCheck.Never)] - public string PropertyTechnologyId - { - get - { - return this._PropertyTechnologyId; - } - set - { - if ((this._PropertyTechnologyId != value)) - { - this.OnPropertyTechnologyIdChanging(value); - this.SendPropertyChanging(); - this._PropertyTechnologyId = value; - this.SendPropertyChanged("PropertyTechnologyId"); - this.OnPropertyTechnologyIdChanged(); + this._WanderIsComplete = value; + this.SendPropertyChanged("WanderIsComplete"); + this.OnWanderIsCompleteChanged(); } } } @@ -275744,26 +276031,6 @@ namespace Model } } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_WanderIsComplete", DbType="Int")] - public System.Nullable WanderIsComplete - { - get - { - return this._WanderIsComplete; - } - set - { - if ((this._WanderIsComplete != value)) - { - this.OnWanderIsCompleteChanging(value); - this.SendPropertyChanging(); - this._WanderIsComplete = value; - this.SendPropertyChanged("WanderIsComplete"); - this.OnWanderIsCompleteChanged(); - } - } - } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_WanderCompleteData", DbType="DateTime")] public System.Nullable WanderCompleteData { @@ -275784,6 +276051,26 @@ namespace Model } } + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_WorkPackType", DbType="Int")] + public System.Nullable WorkPackType + { + get + { + return this._WorkPackType; + } + set + { + if ((this._WorkPackType != value)) + { + this.OnWorkPackTypeChanging(value); + this.SendPropertyChanging(); + this._WorkPackType = value; + this.SendPropertyChanged("WorkPackType"); + this.OnWorkPackTypeChanged(); + } + } + } + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IsSiteImplement", DbType="Int")] public System.Nullable IsSiteImplement { @@ -275804,66 +276091,6 @@ namespace Model } } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SiteImplementUser", DbType="VarChar(50)")] - public string SiteImplementUser - { - get - { - return this._SiteImplementUser; - } - set - { - if ((this._SiteImplementUser != value)) - { - this.OnSiteImplementUserChanging(value); - this.SendPropertyChanging(); - this._SiteImplementUser = value; - this.SendPropertyChanged("SiteImplementUser"); - this.OnSiteImplementUserChanged(); - } - } - } - - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SiteImplementConfirmData", DbType="DateTime")] - public System.Nullable SiteImplementConfirmData - { - get - { - return this._SiteImplementConfirmData; - } - set - { - if ((this._SiteImplementConfirmData != value)) - { - this.OnSiteImplementConfirmDataChanging(value); - this.SendPropertyChanging(); - this._SiteImplementConfirmData = value; - this.SendPropertyChanged("SiteImplementConfirmData"); - this.OnSiteImplementConfirmDataChanged(); - } - } - } - - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_RecordUploadData", DbType="DateTime")] - public System.Nullable RecordUploadData - { - get - { - return this._RecordUploadData; - } - set - { - if ((this._RecordUploadData != value)) - { - this.OnRecordUploadDataChanging(value); - this.SendPropertyChanging(); - this._RecordUploadData = value; - this.SendPropertyChanged("RecordUploadData"); - this.OnRecordUploadDataChanged(); - } - } - } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_InspectIsClose", DbType="Int")] public System.Nullable InspectIsClose { @@ -275884,26 +276111,6 @@ namespace Model } } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_InspectIsCloseUser", DbType="VarChar(50)")] - public string InspectIsCloseUser - { - get - { - return this._InspectIsCloseUser; - } - set - { - if ((this._InspectIsCloseUser != value)) - { - this.OnInspectIsCloseUserChanging(value); - this.SendPropertyChanging(); - this._InspectIsCloseUser = value; - this.SendPropertyChanged("InspectIsCloseUser"); - this.OnInspectIsCloseUserChanged(); - } - } - } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_InspectCloseData", DbType="DateTime")] public System.Nullable InspectCloseData { @@ -275924,122 +276131,102 @@ namespace Model } } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IsUnifyWanderAbout", DbType="Int")] - public System.Nullable IsUnifyWanderAbout + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_InspectIsCloseUser", DbType="NVarChar(50)")] + public string InspectIsCloseUser { get { - return this._IsUnifyWanderAbout; + return this._InspectIsCloseUser; } set { - if ((this._IsUnifyWanderAbout != value)) + if ((this._InspectIsCloseUser != value)) { - this.OnIsUnifyWanderAboutChanging(value); + this.OnInspectIsCloseUserChanging(value); this.SendPropertyChanging(); - this._IsUnifyWanderAbout = value; - this.SendPropertyChanged("IsUnifyWanderAbout"); - this.OnIsUnifyWanderAboutChanged(); + this._InspectIsCloseUser = value; + this.SendPropertyChanged("InspectIsCloseUser"); + this.OnInspectIsCloseUserChanged(); } } } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UnifyWanderAboutData", DbType="DateTime")] - public System.Nullable UnifyWanderAboutData + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PropertyTechnologyId", DbType="NVarChar(500)")] + public string PropertyTechnologyId { get { - return this._UnifyWanderAboutData; + return this._PropertyTechnologyId; } set { - if ((this._UnifyWanderAboutData != value)) + if ((this._PropertyTechnologyId != value)) { - this.OnUnifyWanderAboutDataChanging(value); + this.OnPropertyTechnologyIdChanging(value); this.SendPropertyChanging(); - this._UnifyWanderAboutData = value; - this.SendPropertyChanged("UnifyWanderAboutData"); - this.OnUnifyWanderAboutDataChanged(); + this._PropertyTechnologyId = value; + this.SendPropertyChanged("PropertyTechnologyId"); + this.OnPropertyTechnologyIdChanged(); } } } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UnifyWanderAboutOpinion", DbType="VarChar(MAX)", UpdateCheck=UpdateCheck.Never)] - public string UnifyWanderAboutOpinion + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_RecordUploadData", DbType="DateTime")] + public System.Nullable RecordUploadData { get { - return this._UnifyWanderAboutOpinion; + return this._RecordUploadData; } set { - if ((this._UnifyWanderAboutOpinion != value)) + if ((this._RecordUploadData != value)) { - this.OnUnifyWanderAboutOpinionChanging(value); + this.OnRecordUploadDataChanging(value); this.SendPropertyChanging(); - this._UnifyWanderAboutOpinion = value; - this.SendPropertyChanged("UnifyWanderAboutOpinion"); - this.OnUnifyWanderAboutOpinionChanged(); + this._RecordUploadData = value; + this.SendPropertyChanged("RecordUploadData"); + this.OnRecordUploadDataChanged(); } } } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_InspectTime", DbType="DateTime")] - public System.Nullable InspectTime + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SiteImplementConfirmData", DbType="DateTime")] + public System.Nullable SiteImplementConfirmData { get { - return this._InspectTime; + return this._SiteImplementConfirmData; } set { - if ((this._InspectTime != value)) + if ((this._SiteImplementConfirmData != value)) { - this.OnInspectTimeChanging(value); + this.OnSiteImplementConfirmDataChanging(value); this.SendPropertyChanging(); - this._InspectTime = value; - this.SendPropertyChanged("InspectTime"); - this.OnInspectTimeChanged(); + this._SiteImplementConfirmData = value; + this.SendPropertyChanged("SiteImplementConfirmData"); + this.OnSiteImplementConfirmDataChanged(); } } } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_AddUser", DbType="VarChar(50)")] - public string AddUser + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SiteImplementUser", DbType="NVarChar(50)")] + public string SiteImplementUser { get { - return this._AddUser; + return this._SiteImplementUser; } set { - if ((this._AddUser != value)) + if ((this._SiteImplementUser != value)) { - this.OnAddUserChanging(value); + this.OnSiteImplementUserChanging(value); this.SendPropertyChanging(); - this._AddUser = value; - this.SendPropertyChanged("AddUser"); - this.OnAddUserChanged(); - } - } - } - - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_AddTime", DbType="DateTime")] - public System.Nullable AddTime - { - get - { - return this._AddTime; - } - set - { - if ((this._AddTime != value)) - { - this.OnAddTimeChanging(value); - this.SendPropertyChanging(); - this._AddTime = value; - this.SendPropertyChanged("AddTime"); - this.OnAddTimeChanged(); + this._SiteImplementUser = value; + this.SendPropertyChanged("SiteImplementUser"); + this.OnSiteImplementUserChanged(); } } } @@ -276107,22 +276294,6 @@ namespace Model private string _Owner; - private System.Nullable _SubcontractorIsPass; - - private System.Nullable _ContractorIsPass; - - private System.Nullable _SupervisionIsPass; - - private System.Nullable _OwnerIsPass; - - private string _SubcontractorRemark; - - private string _ContractorRemark; - - private string _SupervisionRemark; - - private string _OwnerRemark; - private System.Nullable _WorkPackType; private string _PropertyTechnologyId; @@ -276135,6 +276306,22 @@ namespace Model private System.Nullable _Sort; + private string _SubcontractorRemark; + + private string _ContractorRemark; + + private string _SupervisionRemark; + + private string _OwnerRemark; + + private System.Nullable _SubcontractorIsPass; + + private System.Nullable _ContractorIsPass; + + private System.Nullable _SupervisionIsPass; + + private System.Nullable _OwnerIsPass; + #region 可扩展性方法定义 partial void OnLoaded(); partial void OnValidate(System.Data.Linq.ChangeAction action); @@ -276175,22 +276362,6 @@ namespace Model partial void OnSupervisionChanged(); partial void OnOwnerChanging(string value); partial void OnOwnerChanged(); - partial void OnSubcontractorIsPassChanging(System.Nullable value); - partial void OnSubcontractorIsPassChanged(); - partial void OnContractorIsPassChanging(System.Nullable value); - partial void OnContractorIsPassChanged(); - partial void OnSupervisionIsPassChanging(System.Nullable value); - partial void OnSupervisionIsPassChanged(); - partial void OnOwnerIsPassChanging(System.Nullable value); - partial void OnOwnerIsPassChanged(); - partial void OnSubcontractorRemarkChanging(string value); - partial void OnSubcontractorRemarkChanged(); - partial void OnContractorRemarkChanging(string value); - partial void OnContractorRemarkChanged(); - partial void OnSupervisionRemarkChanging(string value); - partial void OnSupervisionRemarkChanged(); - partial void OnOwnerRemarkChanging(string value); - partial void OnOwnerRemarkChanged(); partial void OnWorkPackTypeChanging(System.Nullable value); partial void OnWorkPackTypeChanged(); partial void OnPropertyTechnologyIdChanging(string value); @@ -276203,6 +276374,22 @@ namespace Model partial void OnAddTimeChanged(); partial void OnSortChanging(System.Nullable value); partial void OnSortChanged(); + partial void OnSubcontractorRemarkChanging(string value); + partial void OnSubcontractorRemarkChanged(); + partial void OnContractorRemarkChanging(string value); + partial void OnContractorRemarkChanged(); + partial void OnSupervisionRemarkChanging(string value); + partial void OnSupervisionRemarkChanged(); + partial void OnOwnerRemarkChanging(string value); + partial void OnOwnerRemarkChanged(); + partial void OnSubcontractorIsPassChanging(System.Nullable value); + partial void OnSubcontractorIsPassChanged(); + partial void OnContractorIsPassChanging(System.Nullable value); + partial void OnContractorIsPassChanged(); + partial void OnSupervisionIsPassChanging(System.Nullable value); + partial void OnSupervisionIsPassChanged(); + partial void OnOwnerIsPassChanging(System.Nullable value); + partial void OnOwnerIsPassChanged(); #endregion public PreRun_SubInspectTermItem() @@ -276570,166 +276757,6 @@ namespace Model } } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SubcontractorIsPass", DbType="Int")] - public System.Nullable SubcontractorIsPass - { - get - { - return this._SubcontractorIsPass; - } - set - { - if ((this._SubcontractorIsPass != value)) - { - this.OnSubcontractorIsPassChanging(value); - this.SendPropertyChanging(); - this._SubcontractorIsPass = value; - this.SendPropertyChanged("SubcontractorIsPass"); - this.OnSubcontractorIsPassChanged(); - } - } - } - - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ContractorIsPass", DbType="Int")] - public System.Nullable ContractorIsPass - { - get - { - return this._ContractorIsPass; - } - set - { - if ((this._ContractorIsPass != value)) - { - this.OnContractorIsPassChanging(value); - this.SendPropertyChanging(); - this._ContractorIsPass = value; - this.SendPropertyChanged("ContractorIsPass"); - this.OnContractorIsPassChanged(); - } - } - } - - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SupervisionIsPass", DbType="Int")] - public System.Nullable SupervisionIsPass - { - get - { - return this._SupervisionIsPass; - } - set - { - if ((this._SupervisionIsPass != value)) - { - this.OnSupervisionIsPassChanging(value); - this.SendPropertyChanging(); - this._SupervisionIsPass = value; - this.SendPropertyChanged("SupervisionIsPass"); - this.OnSupervisionIsPassChanged(); - } - } - } - - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_OwnerIsPass", DbType="Int")] - public System.Nullable OwnerIsPass - { - get - { - return this._OwnerIsPass; - } - set - { - if ((this._OwnerIsPass != value)) - { - this.OnOwnerIsPassChanging(value); - this.SendPropertyChanging(); - this._OwnerIsPass = value; - this.SendPropertyChanged("OwnerIsPass"); - this.OnOwnerIsPassChanged(); - } - } - } - - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SubcontractorRemark", DbType="VarChar(1000)")] - public string SubcontractorRemark - { - get - { - return this._SubcontractorRemark; - } - set - { - if ((this._SubcontractorRemark != value)) - { - this.OnSubcontractorRemarkChanging(value); - this.SendPropertyChanging(); - this._SubcontractorRemark = value; - this.SendPropertyChanged("SubcontractorRemark"); - this.OnSubcontractorRemarkChanged(); - } - } - } - - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ContractorRemark", DbType="VarChar(1000)")] - public string ContractorRemark - { - get - { - return this._ContractorRemark; - } - set - { - if ((this._ContractorRemark != value)) - { - this.OnContractorRemarkChanging(value); - this.SendPropertyChanging(); - this._ContractorRemark = value; - this.SendPropertyChanged("ContractorRemark"); - this.OnContractorRemarkChanged(); - } - } - } - - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SupervisionRemark", DbType="VarChar(1000)")] - public string SupervisionRemark - { - get - { - return this._SupervisionRemark; - } - set - { - if ((this._SupervisionRemark != value)) - { - this.OnSupervisionRemarkChanging(value); - this.SendPropertyChanging(); - this._SupervisionRemark = value; - this.SendPropertyChanged("SupervisionRemark"); - this.OnSupervisionRemarkChanged(); - } - } - } - - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_OwnerRemark", DbType="VarChar(1000)")] - public string OwnerRemark - { - get - { - return this._OwnerRemark; - } - set - { - if ((this._OwnerRemark != value)) - { - this.OnOwnerRemarkChanging(value); - this.SendPropertyChanging(); - this._OwnerRemark = value; - this.SendPropertyChanged("OwnerRemark"); - this.OnOwnerRemarkChanged(); - } - } - } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_WorkPackType", DbType="Int")] public System.Nullable WorkPackType { @@ -276750,7 +276777,7 @@ namespace Model } } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PropertyTechnologyId", DbType="VarChar(MAX)", UpdateCheck=UpdateCheck.Never)] + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PropertyTechnologyId", DbType="VarChar(50)")] public string PropertyTechnologyId { get @@ -276850,6 +276877,166 @@ namespace Model } } + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SubcontractorRemark", DbType="VarChar(1000)")] + public string SubcontractorRemark + { + get + { + return this._SubcontractorRemark; + } + set + { + if ((this._SubcontractorRemark != value)) + { + this.OnSubcontractorRemarkChanging(value); + this.SendPropertyChanging(); + this._SubcontractorRemark = value; + this.SendPropertyChanged("SubcontractorRemark"); + this.OnSubcontractorRemarkChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ContractorRemark", DbType="VarChar(1000)")] + public string ContractorRemark + { + get + { + return this._ContractorRemark; + } + set + { + if ((this._ContractorRemark != value)) + { + this.OnContractorRemarkChanging(value); + this.SendPropertyChanging(); + this._ContractorRemark = value; + this.SendPropertyChanged("ContractorRemark"); + this.OnContractorRemarkChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SupervisionRemark", DbType="VarChar(1000)")] + public string SupervisionRemark + { + get + { + return this._SupervisionRemark; + } + set + { + if ((this._SupervisionRemark != value)) + { + this.OnSupervisionRemarkChanging(value); + this.SendPropertyChanging(); + this._SupervisionRemark = value; + this.SendPropertyChanged("SupervisionRemark"); + this.OnSupervisionRemarkChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_OwnerRemark", DbType="VarChar(1000)")] + public string OwnerRemark + { + get + { + return this._OwnerRemark; + } + set + { + if ((this._OwnerRemark != value)) + { + this.OnOwnerRemarkChanging(value); + this.SendPropertyChanging(); + this._OwnerRemark = value; + this.SendPropertyChanged("OwnerRemark"); + this.OnOwnerRemarkChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SubcontractorIsPass", DbType="Int")] + public System.Nullable SubcontractorIsPass + { + get + { + return this._SubcontractorIsPass; + } + set + { + if ((this._SubcontractorIsPass != value)) + { + this.OnSubcontractorIsPassChanging(value); + this.SendPropertyChanging(); + this._SubcontractorIsPass = value; + this.SendPropertyChanged("SubcontractorIsPass"); + this.OnSubcontractorIsPassChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ContractorIsPass", DbType="Int")] + public System.Nullable ContractorIsPass + { + get + { + return this._ContractorIsPass; + } + set + { + if ((this._ContractorIsPass != value)) + { + this.OnContractorIsPassChanging(value); + this.SendPropertyChanging(); + this._ContractorIsPass = value; + this.SendPropertyChanged("ContractorIsPass"); + this.OnContractorIsPassChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SupervisionIsPass", DbType="Int")] + public System.Nullable SupervisionIsPass + { + get + { + return this._SupervisionIsPass; + } + set + { + if ((this._SupervisionIsPass != value)) + { + this.OnSupervisionIsPassChanging(value); + this.SendPropertyChanging(); + this._SupervisionIsPass = value; + this.SendPropertyChanged("SupervisionIsPass"); + this.OnSupervisionIsPassChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_OwnerIsPass", DbType="Int")] + public System.Nullable OwnerIsPass + { + get + { + return this._OwnerIsPass; + } + set + { + if ((this._OwnerIsPass != value)) + { + this.OnOwnerIsPassChanging(value); + this.SendPropertyChanging(); + this._OwnerIsPass = value; + this.SendPropertyChanged("OwnerIsPass"); + this.OnOwnerIsPassChanged(); + } + } + } + public event PropertyChangingEventHandler PropertyChanging; public event PropertyChangedEventHandler PropertyChanged; @@ -277851,8 +278038,6 @@ namespace Model private string _RestrictCondition; - private System.Nullable _ResponsibilityProposeSatate; - private System.Nullable _ResponsibilityConfirm; private System.Nullable _ProposeConfirm; @@ -277863,11 +278048,9 @@ namespace Model private System.Nullable _OwnerConfirm; - private System.Nullable _ProposeConfirmData; - private System.Nullable _ResponsibilityConfirmData; - private System.Nullable _ProposeHandleData; + private System.Nullable _ProposeConfirmData; private System.Nullable _GeneraConfirmData; @@ -277883,6 +278066,10 @@ namespace Model private System.Nullable _Sort; + private System.Nullable _ResponsibilityProposeSatate; + + private System.Nullable _ProposeHandleData; + private string _FourDecisionCode; #region 可扩展性方法定义 @@ -277919,8 +278106,6 @@ namespace Model partial void OnRealityDestructionTimeChanged(); partial void OnRestrictConditionChanging(string value); partial void OnRestrictConditionChanged(); - partial void OnResponsibilityProposeSatateChanging(System.Nullable value); - partial void OnResponsibilityProposeSatateChanged(); partial void OnResponsibilityConfirmChanging(System.Nullable value); partial void OnResponsibilityConfirmChanged(); partial void OnProposeConfirmChanging(System.Nullable value); @@ -277931,12 +278116,10 @@ namespace Model partial void OnSupervisionConfirmChanged(); partial void OnOwnerConfirmChanging(System.Nullable value); partial void OnOwnerConfirmChanged(); - partial void OnProposeConfirmDataChanging(System.Nullable value); - partial void OnProposeConfirmDataChanged(); partial void OnResponsibilityConfirmDataChanging(System.Nullable value); partial void OnResponsibilityConfirmDataChanged(); - partial void OnProposeHandleDataChanging(System.Nullable value); - partial void OnProposeHandleDataChanged(); + partial void OnProposeConfirmDataChanging(System.Nullable value); + partial void OnProposeConfirmDataChanged(); partial void OnGeneraConfirmDataChanging(System.Nullable value); partial void OnGeneraConfirmDataChanged(); partial void OnSupervisionConfirmDataChanging(System.Nullable value); @@ -277951,6 +278134,10 @@ namespace Model partial void OnAddTimeChanged(); partial void OnSortChanging(System.Nullable value); partial void OnSortChanged(); + partial void OnResponsibilityProposeSatateChanging(System.Nullable value); + partial void OnResponsibilityProposeSatateChanged(); + partial void OnProposeHandleDataChanging(System.Nullable value); + partial void OnProposeHandleDataChanged(); partial void OnFourDecisionCodeChanging(string value); partial void OnFourDecisionCodeChanged(); #endregion @@ -278260,26 +278447,6 @@ namespace Model } } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResponsibilityProposeSatate", DbType="Int")] - public System.Nullable ResponsibilityProposeSatate - { - get - { - return this._ResponsibilityProposeSatate; - } - set - { - if ((this._ResponsibilityProposeSatate != value)) - { - this.OnResponsibilityProposeSatateChanging(value); - this.SendPropertyChanging(); - this._ResponsibilityProposeSatate = value; - this.SendPropertyChanged("ResponsibilityProposeSatate"); - this.OnResponsibilityProposeSatateChanged(); - } - } - } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResponsibilityConfirm", DbType="Int")] public System.Nullable ResponsibilityConfirm { @@ -278380,26 +278547,6 @@ namespace Model } } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProposeConfirmData", DbType="DateTime")] - public System.Nullable ProposeConfirmData - { - get - { - return this._ProposeConfirmData; - } - set - { - if ((this._ProposeConfirmData != value)) - { - this.OnProposeConfirmDataChanging(value); - this.SendPropertyChanging(); - this._ProposeConfirmData = value; - this.SendPropertyChanged("ProposeConfirmData"); - this.OnProposeConfirmDataChanged(); - } - } - } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResponsibilityConfirmData", DbType="DateTime")] public System.Nullable ResponsibilityConfirmData { @@ -278420,22 +278567,22 @@ namespace Model } } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProposeHandleData", DbType="DateTime")] - public System.Nullable ProposeHandleData + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProposeConfirmData", DbType="DateTime")] + public System.Nullable ProposeConfirmData { get { - return this._ProposeHandleData; + return this._ProposeConfirmData; } set { - if ((this._ProposeHandleData != value)) + if ((this._ProposeConfirmData != value)) { - this.OnProposeHandleDataChanging(value); + this.OnProposeConfirmDataChanging(value); this.SendPropertyChanging(); - this._ProposeHandleData = value; - this.SendPropertyChanged("ProposeHandleData"); - this.OnProposeHandleDataChanged(); + this._ProposeConfirmData = value; + this.SendPropertyChanged("ProposeConfirmData"); + this.OnProposeConfirmDataChanged(); } } } @@ -278580,6 +278727,46 @@ namespace Model } } + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResponsibilityProposeSatate", DbType="Int")] + public System.Nullable ResponsibilityProposeSatate + { + get + { + return this._ResponsibilityProposeSatate; + } + set + { + if ((this._ResponsibilityProposeSatate != value)) + { + this.OnResponsibilityProposeSatateChanging(value); + this.SendPropertyChanging(); + this._ResponsibilityProposeSatate = value; + this.SendPropertyChanged("ResponsibilityProposeSatate"); + this.OnResponsibilityProposeSatateChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProposeHandleData", DbType="DateTime")] + public System.Nullable ProposeHandleData + { + get + { + return this._ProposeHandleData; + } + set + { + if ((this._ProposeHandleData != value)) + { + this.OnProposeHandleDataChanging(value); + this.SendPropertyChanging(); + this._ProposeHandleData = value; + this.SendPropertyChanged("ProposeHandleData"); + this.OnProposeHandleDataChanged(); + } + } + } + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_FourDecisionCode", DbType="VarChar(20)")] public string FourDecisionCode { @@ -279292,7 +279479,7 @@ namespace Model } } - [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Remark", DbType="NVarChar(MAX)", UpdateCheck=UpdateCheck.Never)] + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Remark", DbType="VarChar(MAX)", UpdateCheck=UpdateCheck.Never)] public string Remark { get @@ -314177,6 +314364,164 @@ namespace Model } } + [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Report_CQMS_ProblemHandle")] + public partial class Report_CQMS_ProblemHandle : INotifyPropertyChanging, INotifyPropertyChanged + { + + private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty); + + private string _Id; + + private string _ReportId; + + private string _ReType; + + private string _UnitName; + + private string _ProblemDes; + + #region 可扩展性方法定义 + partial void OnLoaded(); + partial void OnValidate(System.Data.Linq.ChangeAction action); + partial void OnCreated(); + partial void OnIdChanging(string value); + partial void OnIdChanged(); + partial void OnReportIdChanging(string value); + partial void OnReportIdChanged(); + partial void OnReTypeChanging(string value); + partial void OnReTypeChanged(); + partial void OnUnitNameChanging(string value); + partial void OnUnitNameChanged(); + partial void OnProblemDesChanging(string value); + partial void OnProblemDesChanged(); + #endregion + + public Report_CQMS_ProblemHandle() + { + OnCreated(); + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", DbType="NVarChar(50) NOT NULL", CanBeNull=false, IsPrimaryKey=true)] + public string Id + { + get + { + return this._Id; + } + set + { + if ((this._Id != value)) + { + this.OnIdChanging(value); + this.SendPropertyChanging(); + this._Id = value; + this.SendPropertyChanged("Id"); + this.OnIdChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ReportId", DbType="NVarChar(50)")] + public string ReportId + { + get + { + return this._ReportId; + } + set + { + if ((this._ReportId != value)) + { + this.OnReportIdChanging(value); + this.SendPropertyChanging(); + this._ReportId = value; + this.SendPropertyChanged("ReportId"); + this.OnReportIdChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ReType", DbType="NChar(20)")] + public string ReType + { + get + { + return this._ReType; + } + set + { + if ((this._ReType != value)) + { + this.OnReTypeChanging(value); + this.SendPropertyChanging(); + this._ReType = value; + this.SendPropertyChanged("ReType"); + this.OnReTypeChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UnitName", DbType="NVarChar(100)")] + public string UnitName + { + get + { + return this._UnitName; + } + set + { + if ((this._UnitName != value)) + { + this.OnUnitNameChanging(value); + this.SendPropertyChanging(); + this._UnitName = value; + this.SendPropertyChanged("UnitName"); + this.OnUnitNameChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProblemDes", DbType="NVarChar(100)")] + public string ProblemDes + { + get + { + return this._ProblemDes; + } + set + { + if ((this._ProblemDes != value)) + { + this.OnProblemDesChanging(value); + this.SendPropertyChanging(); + this._ProblemDes = value; + this.SendPropertyChanged("ProblemDes"); + this.OnProblemDesChanged(); + } + } + } + + public event PropertyChangingEventHandler PropertyChanging; + + public event PropertyChangedEventHandler PropertyChanged; + + protected virtual void SendPropertyChanging() + { + if ((this.PropertyChanging != null)) + { + this.PropertyChanging(this, emptyChangingEventArgs); + } + } + + protected virtual void SendPropertyChanged(String propertyName) + { + if ((this.PropertyChanged != null)) + { + this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName)); + } + } + } + [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Report_CqmsTarget")] public partial class Report_CqmsTarget : INotifyPropertyChanging, INotifyPropertyChanged { @@ -315465,6 +315810,8 @@ namespace Model private string _CreateMan; + private string _ReportType; + #region 可扩展性方法定义 partial void OnLoaded(); partial void OnValidate(System.Data.Linq.ChangeAction action); @@ -315483,6 +315830,8 @@ namespace Model partial void OnCreateDateChanged(); partial void OnCreateManChanging(string value); partial void OnCreateManChanged(); + partial void OnReportTypeChanging(string value); + partial void OnReportTypeChanged(); #endregion public Report_WeekAndMonthReport_New() @@ -315630,6 +315979,26 @@ namespace Model } } + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ReportType", DbType="NVarChar(10)")] + public string ReportType + { + get + { + return this._ReportType; + } + set + { + if ((this._ReportType != value)) + { + this.OnReportTypeChanging(value); + this.SendPropertyChanging(); + this._ReportType = value; + this.SendPropertyChanged("ReportType"); + this.OnReportTypeChanged(); + } + } + } + public event PropertyChangingEventHandler PropertyChanging; public event PropertyChangedEventHandler PropertyChanged; @@ -350600,8 +350969,6 @@ namespace Model private EntitySet _Doc_DocManage; - private EntitySet _Doc_DocManageApprove; - private EntitySet _Driver_DriverProgress; private EntitySet _Driver_DriverReport; @@ -351317,7 +351684,6 @@ namespace Model this._DataBase_File = new EntitySet(new Action(this.attach_DataBase_File), new Action(this.detach_DataBase_File)); this._DataBase_StartWorkReport = new EntitySet(new Action(this.attach_DataBase_StartWorkReport), new Action(this.detach_DataBase_StartWorkReport)); this._Doc_DocManage = new EntitySet(new Action(this.attach_Doc_DocManage), new Action(this.detach_Doc_DocManage)); - this._Doc_DocManageApprove = new EntitySet(new Action(this.attach_Doc_DocManageApprove), new Action(this.detach_Doc_DocManageApprove)); this._Driver_DriverProgress = new EntitySet(new Action(this.attach_Driver_DriverProgress), new Action(this.detach_Driver_DriverProgress)); this._Driver_DriverReport = new EntitySet(new Action(this.attach_Driver_DriverReport), new Action(this.detach_Driver_DriverReport)); this._Driver_DriverScheme = new EntitySet(new Action(this.attach_Driver_DriverScheme), new Action(this.detach_Driver_DriverScheme)); @@ -353722,19 +354088,6 @@ namespace Model } } - [global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Doc_DocManageApprove_Sys_User", Storage="_Doc_DocManageApprove", ThisKey="UserId", OtherKey="ApproveMan", DeleteRule="NO ACTION")] - public EntitySet Doc_DocManageApprove - { - get - { - return this._Doc_DocManageApprove; - } - set - { - this._Doc_DocManageApprove.Assign(value); - } - } - [global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Driver_DriverProgress_Sys_User", Storage="_Driver_DriverProgress", ThisKey="UserId", OtherKey="CompileMan", DeleteRule="NO ACTION")] public EntitySet Driver_DriverProgress { @@ -358239,18 +358592,6 @@ namespace Model entity.Sys_User = null; } - private void attach_Doc_DocManageApprove(Doc_DocManageApprove entity) - { - this.SendPropertyChanging(); - entity.Sys_User = this; - } - - private void detach_Doc_DocManageApprove(Doc_DocManageApprove entity) - { - this.SendPropertyChanging(); - entity.Sys_User = null; - } - private void attach_Driver_DriverProgress(Driver_DriverProgress entity) { this.SendPropertyChanging(); From fc56b1f6c2003d11bded4fb1e1c48a5635352b4f Mon Sep 17 00:00:00 2001 From: wendy <408182087@qq.com> Date: Sun, 28 Apr 2024 17:40:20 +0800 Subject: [PATCH 4/5] =?UTF-8?q?20240428=20=E4=BF=AE=E6=94=B9=E8=B5=84?= =?UTF-8?q?=E6=96=99=E6=94=B6=E5=8F=91=E6=96=87=E7=99=BB=E8=AE=B0=E8=AE=B0?= =?UTF-8?q?=E5=BD=95=E5=AF=BC=E5=85=A5=E5=AF=BC=E5=87=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Comprehensive/DataReceivingDocService.cs | 14 ++------- SGGL/BLL/Common/Const.cs | 5 ---- .../Comprehensive/DataReceivingDoc.aspx.cs | 13 ++++++--- .../DataReceivingDocDataIn.aspx.cs | 10 +++---- .../Comprehensive/DataReceivingDocEdit.aspx | 11 +++++-- .../DataReceivingDocEdit.aspx.cs | 10 +++++++ .../DataReceivingDocEdit.aspx.designer.cs | 27 ++++++++++++++++++ .../Excel/CQMS/资料收发文登记记录模板.xls | Bin 19968 -> 0 bytes .../DataIn/资料收发文登记记录导入模板.xls | Bin 19968 -> 22528 bytes SGGL/FineUIPro.Web/Web.config | 2 +- 10 files changed, 63 insertions(+), 29 deletions(-) delete mode 100644 SGGL/FineUIPro.Web/File/Excel/CQMS/资料收发文登记记录模板.xls diff --git a/SGGL/BLL/CQMS/Comprehensive/DataReceivingDocService.cs b/SGGL/BLL/CQMS/Comprehensive/DataReceivingDocService.cs index d199e432..05c1201f 100644 --- a/SGGL/BLL/CQMS/Comprehensive/DataReceivingDocService.cs +++ b/SGGL/BLL/CQMS/Comprehensive/DataReceivingDocService.cs @@ -19,18 +19,7 @@ namespace BLL public static Model.Comprehensive_DataReceivingDoc GetDataReceivingDocById(string dataReceivingDocId) { return Funs.DB.Comprehensive_DataReceivingDoc.FirstOrDefault(e => e.DataReceivingDocId == dataReceivingDocId); - } - - /// - /// 根据编号和名称获取资料收发文登记记录 - /// - /// - /// - /// - public static Model.Comprehensive_DataReceivingDoc GetDataReceivingDocByCodeAndName(string fileCode, string fileName) - { - return Funs.DB.Comprehensive_DataReceivingDoc.FirstOrDefault(e => e.FileCode == fileCode && e.FileName == fileName); - } + } /// /// 添加资料收发文登记记录 @@ -103,6 +92,7 @@ namespace BLL newDoc.CompileDate = doc.CompileDate; newDoc.Status = doc.Status; newDoc.AuditMan = doc.AuditMan; + newDoc.RemarkCode = doc.RemarkCode; Funs.DB.SubmitChanges(); } } diff --git a/SGGL/BLL/Common/Const.cs b/SGGL/BLL/Common/Const.cs index feaed4ac..976bce8e 100644 --- a/SGGL/BLL/Common/Const.cs +++ b/SGGL/BLL/Common/Const.cs @@ -3322,11 +3322,6 @@ namespace BLL /// public const string InspectionMachineTempUrl = "File\\Excel\\CQMS\\机具报验模板.xls"; - /// - /// 资料收发文登记记录模板文件原始虚拟路径 - /// - public const string DataReceivingDocTempUrl = "File\\Excel\\CQMS\\资料收发文登记记录模板.xls"; - /// /// 培训记录模板文件原始虚拟路径 /// diff --git a/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDoc.aspx.cs b/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDoc.aspx.cs index 082d5b54..8c7227fe 100644 --- a/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDoc.aspx.cs +++ b/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDoc.aspx.cs @@ -330,7 +330,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive protected void btnOut_Click(object sender, EventArgs e) { string rootPath = Server.MapPath("~/"); - string initTemplatePath = Const.DataReceivingDocTempUrl; + string initTemplatePath = Const.CQMS_DataReceivingDocTempUrl; string uploadfilepath = string.Empty; string newUrl = string.Empty; uploadfilepath = rootPath + initTemplatePath; @@ -346,10 +346,11 @@ namespace FineUIPro.Web.CQMS.Comprehensive { lists = lists.Where(x => x.FileName.Contains(this.stxtFileName.Text.Trim())); } - lists = lists.OrderBy(x => x.FileCode); + lists = lists.OrderBy(x => x.RemarkCode); if (lists != null) { - newUrl = uploadfilepath.Replace("资料收发文登记记录模板.xls", "资料收发文登记记录.xls"); + string projectName = BLL.ProjectService.GetProjectNameByProjectId(this.CurrUser.LoginProjectId); + newUrl = uploadfilepath.Replace("资料收发文登记记录导入模板", "资料收发文登记记录(" + projectName + "" + DateTime.Now.ToString("yyyyMMdd") + ")"); File.Copy(uploadfilepath, newUrl); // 第一步:读取文件流 NPOI.SS.UserModel.IWorkbook workbook; @@ -384,7 +385,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive NPOI.SS.UserModel.ISheet sheet = workbook.GetSheetAt(0); NPOI.SS.UserModel.IRow row = sheet.GetRow(0); NPOI.SS.UserModel.ICell cell; - int i = 1; + int i = 3; foreach (var item in lists) { // 第二步:创建新数据行 @@ -511,6 +512,10 @@ namespace FineUIPro.Web.CQMS.Comprehensive } cell.SetCellValue(isO);//是否存档 + cell = row.CreateCell(19); + cell.CellStyle = cellStyle; + cell.SetCellValue(item.RemarkCode);//标志编号 + i++; } // 第三步:写入文件流 diff --git a/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDocDataIn.aspx.cs b/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDocDataIn.aspx.cs index 23d81ee1..443dbc9c 100644 --- a/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDocDataIn.aspx.cs +++ b/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDocDataIn.aspx.cs @@ -172,7 +172,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive var cns = from x in Funs.DB.Base_CNProfessional select x; - for (int i = 0; i < ir; i++) + for (int i = 2; i < ir; i++) { string row0 = pds.Rows[i][0].ToString(); if (string.IsNullOrEmpty(row0)) @@ -263,7 +263,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive string row9 = pds.Rows[i][9].ToString(); if (string.IsNullOrEmpty(row9)) { - result += (i + 2).ToString() + "," + "发出日期" + "," + "此项为必填项!" + "|"; + result += (i + 2).ToString() + "," + "上报日期" + "," + "此项为必填项!" + "|"; } else { @@ -273,7 +273,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive } catch (Exception) { - result += (i + 2).ToString() + "," + "发出日期" + "," + "格式错误!" + "|"; + result += (i + 2).ToString() + "," + "上报日期" + "," + "格式错误!" + "|"; } } @@ -286,7 +286,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive var unit = units.Where(x => x.UnitName == u.Trim()).FirstOrDefault(); if (unit == null) { - result += (i + 2).ToString() + "," + "接收单位" + "," + "[" + u.Trim() + "]不存在!" + "|"; + result += (i + 2).ToString() + "," + "上报接收单位" + "," + "[" + u.Trim() + "]不存在!" + "|"; } } } @@ -511,7 +511,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive var cns = from x in Funs.DB.Base_CNProfessional select x; - for (int i = 0; i < ir; i++) + for (int i = 2; i < ir; i++) { Model.Comprehensive_DataReceivingDoc oldViewInfo = new Model.Comprehensive_DataReceivingDoc(); var cn = cns.Where(y => y.ProfessionalName == pds.Rows[i][4].ToString().Trim()).FirstOrDefault(); diff --git a/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDocEdit.aspx b/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDocEdit.aspx index 5036a3d4..781bbfe9 100644 --- a/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDocEdit.aspx +++ b/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDocEdit.aspx @@ -60,10 +60,10 @@ - - + @@ -115,6 +115,13 @@ + + + + + + + <%-- diff --git a/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDocEdit.aspx.cs b/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDocEdit.aspx.cs index fbb814f9..578a207b 100644 --- a/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDocEdit.aspx.cs +++ b/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDocEdit.aspx.cs @@ -72,6 +72,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive this.txtIssueCopies.Readonly = true; this.txtIssueUnitReceiver.Readonly = true; this.rblIsOnFile.Readonly = true; + this.txtRemarkCode.Readonly = true; //this.drpAudit.Readonly = true; //this.btnAttach.Enabled = false; } @@ -152,6 +153,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive this.rblIsOnFile.SelectedValue = "false"; } } + this.txtRemarkCode.Text = dataReceivingDoc.RemarkCode; //var currApprove = DataReceivingDocApproveService.GetCurrentApprove(dataReceivingDoc.DataReceivingDocId); //if (currApprove != null) @@ -210,6 +212,13 @@ namespace FineUIPro.Web.CQMS.Comprehensive Alert.ShowInTop("请选择专业!", MessageBoxIcon.Warning); return; } + var q = Funs.DB.Comprehensive_DataReceivingDoc.FirstOrDefault(x => x.RemarkCode == this.txtRemarkCode.Text.Trim() && (x.DataReceivingDocId != this.DataReceivingDocId || (this.DataReceivingDocId == null && x.DataReceivingDocId != null))); + if (q != null) + { + Alert.ShowInTop("标志编号已存在!", MessageBoxIcon.Warning); + return; + } + Model.Comprehensive_DataReceivingDoc dataReceivingDoc = new Model.Comprehensive_DataReceivingDoc(); dataReceivingDoc.ProjectId = this.CurrUser.LoginProjectId; dataReceivingDoc.FileCode = this.txtFileCode.Text.Trim(); @@ -265,6 +274,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive { dataReceivingDoc.IsOnFile = Convert.ToBoolean(this.rblIsOnFile.SelectedValue); } + dataReceivingDoc.RemarkCode = this.txtRemarkCode.Text.Trim(); //if (!string.IsNullOrEmpty(this.drpAudit.SelectedValue)) //{ // dataReceivingDoc.AuditMan = drpAudit.SelectedValue; diff --git a/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDocEdit.aspx.designer.cs b/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDocEdit.aspx.designer.cs index fce3da22..ca61470e 100644 --- a/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDocEdit.aspx.designer.cs +++ b/SGGL/FineUIPro.Web/CQMS/Comprehensive/DataReceivingDocEdit.aspx.designer.cs @@ -264,6 +264,33 @@ namespace FineUIPro.Web.CQMS.Comprehensive { /// protected global::FineUIPro.RadioButtonList rblIsOnFile; + /// + /// txtRemarkCode 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtRemarkCode; + + /// + /// Label1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label Label1; + + /// + /// Label3 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label Label3; + /// /// Toolbar1 控件。 /// diff --git a/SGGL/FineUIPro.Web/File/Excel/CQMS/资料收发文登记记录模板.xls b/SGGL/FineUIPro.Web/File/Excel/CQMS/资料收发文登记记录模板.xls deleted file mode 100644 index aff72b9485beb8f37772e6b4d2ebdbc7762c2741..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19968 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 delta 1057 zcmZ9LPe>GD6u{p%J3ITw-JO};(XqmIUH_1kv;Lp8(qc)$1FynoC$zQD$3*qs_y z_@s7~v0}6f!`|PSOopE#04OmY2;J=NB`qah^>qHc)id>xg~=YpA#qG-sKqVu2D^?! z_F?8WHtj>qn03rByzS78O4koNb74@{nVU;Y$oY6sj$of$h|gu2$v96w1wWgT$EheQ z`aVD9-^?fgQ>wZgTn>Wh3ax_%0X$1y&GPp3WxXd&Z!QjyH*e4T4lYMSk$ix(>D6&g z(F26p%ui{8P&5Q$IX+QzTvsHvAHOS2B#)^&$tIQSlcxUYFWuqi_Va!o({JkYrY;9` z{N#_|8^w>Ifa+7s^g_0{gmVF%Ik?2xfK*DO9a7c3h!Lj-BTnkfdg4$vy%aP2+L9Mn z!U{eN>#PnJ!$<5fieZ>OkgJb6%VG4Nuj6|_7|sdq9*3qhAPHa%nz={?&rMi*lPdQ8|)XU@U{9$QG*L7&=x=JW)xB4 z0C;r@2hRP%vW5>bH)TI{3N$2EH5QERfSYU#>gWJuNgxs|vJu%V5{X2M>_m2pBqGTo z2NBiZ&FO>~@O@+}xQJYw#?10=Lf%H!nM0Igk%!1*k(bD8k&nn{kxV38q!7`NyE#=N z)gnI;|BZJb$jb(xo({l!>i(#?q%(pap3w@NxY1JTV`k@!Hbi^K;6iJO@v?c%mP! - + From 2f87f6af53a1264162d0abd83982482b70005522 Mon Sep 17 00:00:00 2001 From: gaofei1985 <181547018@qq.com> Date: Sun, 28 Apr 2024 17:48:09 +0800 Subject: [PATCH 5/5] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SGGL/FineUIPro.Web/Web.config | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/SGGL/FineUIPro.Web/Web.config b/SGGL/FineUIPro.Web/Web.config index eafda425..963148f2 100644 --- a/SGGL/FineUIPro.Web/Web.config +++ b/SGGL/FineUIPro.Web/Web.config @@ -12,7 +12,7 @@ - +