From 4e579c7a68197c548655182012d3cec92ec2e38f Mon Sep 17 00:00:00 2001
From: xiaju <1784803958@qq.com>
Date: Thu, 4 Jun 2026 10:14:15 +0800
Subject: [PATCH] =?UTF-8?q?=E5=AE=89=E5=85=A8=E4=B8=8D=E7=AC=A6=E5=90=88?=
=?UTF-8?q?=E9=A1=B9=E6=B8=85=E5=8D=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
...GGLDB_V2026-05-13-xiaj(安全不符合项清单).sql | 106 +++
SGGL/BLL/BLL.csproj | 5 +-
.../SafetyProblemClassifyItemService.cs | 8 +-
.../BaseInfo/SafetyProblemClassifyService.cs | 4 +-
.../SafetyProblemNatureItemService.cs | 18 +-
.../BaseInfo/SafetyProblemNatureService.cs | 2 +-
.../Check/HSE/CheckProblemSafetyService.cs | 213 ++++++
SGGL/BLL/Common/Const.cs | 23 +
SGGL/BLL/LoginService.cs | 2 -
.../ProjectData/ProjectPageDataService.cs | 3 -
SGGL/BLL/ProjectData/ProjectService.cs | 26 +
SGGL/BLL/ProjectData/ProjectUserService.cs | 31 +-
.../InterFaceService/InterFaceTaskService .cs | 4 +-
SGGL/BLL/ZHGL/DataSync/CQMSDataService.cs | 3 -
.../BLL/ZHGL/DataSync/HJGLData_HJGLService.cs | 2 -
.../Project_HJGLData_DefectService.cs | 110 +--
.../FineUIPro.Web/Check/HSE/CheckProblem.aspx | 223 ++++++
.../Check/HSE/CheckProblem.aspx.cs | 491 ++++++++++++
.../Check/HSE/CheckProblem.aspx.designer.cs | 278 +++++++
.../Check/HSE/CheckProblemEdit.aspx | 193 +++++
.../Check/HSE/CheckProblemEdit.aspx.cs | 387 ++++++++++
.../HSE/CheckProblemEdit.aspx.designer.cs | 314 ++++++++
.../Check/HSE/CheckProblemIn.aspx | 73 ++
.../Check/HSE/CheckProblemIn.aspx.cs | 716 +++++++++++++++++
.../Check/HSE/CheckProblemIn.aspx.designer.cs | 125 +++
.../Check/HSE/CheckProblemView.aspx | 170 +++++
.../Check/HSE/CheckProblemView.aspx.cs | 134 ++++
.../HSE/CheckProblemView.aspx.designer.cs | 278 +++++++
.../DataIn/安全不符合项清单导入模板.xlsx | Bin 0 -> 24396 bytes
SGGL/FineUIPro.Web/FineUIPro.Web.csproj | 33 +
SGGL/FineUIPro.Web/common/PageBase.cs | 12 +-
SGGL/Model/Model.cs | 721 ++++++++++++++++++
32 files changed, 4611 insertions(+), 97 deletions(-)
create mode 100644 DataBase/版本日志/SGGLDB_V2026-05-13-xiaj(安全不符合项清单).sql
create mode 100644 SGGL/BLL/Check/HSE/CheckProblemSafetyService.cs
create mode 100644 SGGL/FineUIPro.Web/Check/HSE/CheckProblem.aspx
create mode 100644 SGGL/FineUIPro.Web/Check/HSE/CheckProblem.aspx.cs
create mode 100644 SGGL/FineUIPro.Web/Check/HSE/CheckProblem.aspx.designer.cs
create mode 100644 SGGL/FineUIPro.Web/Check/HSE/CheckProblemEdit.aspx
create mode 100644 SGGL/FineUIPro.Web/Check/HSE/CheckProblemEdit.aspx.cs
create mode 100644 SGGL/FineUIPro.Web/Check/HSE/CheckProblemEdit.aspx.designer.cs
create mode 100644 SGGL/FineUIPro.Web/Check/HSE/CheckProblemIn.aspx
create mode 100644 SGGL/FineUIPro.Web/Check/HSE/CheckProblemIn.aspx.cs
create mode 100644 SGGL/FineUIPro.Web/Check/HSE/CheckProblemIn.aspx.designer.cs
create mode 100644 SGGL/FineUIPro.Web/Check/HSE/CheckProblemView.aspx
create mode 100644 SGGL/FineUIPro.Web/Check/HSE/CheckProblemView.aspx.cs
create mode 100644 SGGL/FineUIPro.Web/Check/HSE/CheckProblemView.aspx.designer.cs
create mode 100644 SGGL/FineUIPro.Web/File/Excel/DataIn/安全不符合项清单导入模板.xlsx
diff --git a/DataBase/版本日志/SGGLDB_V2026-05-13-xiaj(安全不符合项清单).sql b/DataBase/版本日志/SGGLDB_V2026-05-13-xiaj(安全不符合项清单).sql
new file mode 100644
index 00000000..616e93b6
--- /dev/null
+++ b/DataBase/版本日志/SGGLDB_V2026-05-13-xiaj(安全不符合项清单).sql
@@ -0,0 +1,106 @@
+
+
+delete Sys_Menu
+where MenuName='HSE' and MenuId='D1B06551-1BA3-4E18-952A-58E24A6328E0'
+GO
+
+--ȫHSE嵥
+UPDATE Sys_Menu
+SET Url='Check/HSE/CheckProblem.aspx'
+WHERE MenuId='664ACF2F-6750-4389-AF11-F429010FC9A7'
+GO
+
+--ȫHSE嵥˵Ȩ
+IF NOT EXISTS (SELECT * FROM Sys_ButtonToMenu WHERE MenuId = '664ACF2F-6750-4389-AF11-F429010FC9A7')
+BEGIN
+INSERT INTO [dbo].[Sys_ButtonToMenu] ([ButtonToMenuId], [MenuId], [ButtonName], [SortIndex])
+VALUES (N'AF673368-2D45-4415-AA7C-C67882635801', N'664ACF2F-6750-4389-AF11-F429010FC9A7', N'', 1);
+INSERT INTO [dbo].[Sys_ButtonToMenu] ([ButtonToMenuId], [MenuId], [ButtonName], [SortIndex])
+VALUES (N'AF673368-2D45-4415-AA7C-C67882635802', N'664ACF2F-6750-4389-AF11-F429010FC9A7', N'', 2);
+INSERT INTO [dbo].[Sys_ButtonToMenu] ([ButtonToMenuId], [MenuId], [ButtonName], [SortIndex])
+VALUES (N'AF673368-2D45-4415-AA7C-C67882635803', N'664ACF2F-6750-4389-AF11-F429010FC9A7', N'ɾ', 3);
+INSERT INTO [dbo].[Sys_ButtonToMenu] ([ButtonToMenuId], [MenuId], [ButtonName], [SortIndex])
+VALUES (N'AF673368-2D45-4415-AA7C-C67882635804', N'664ACF2F-6750-4389-AF11-F429010FC9A7', N'', 4);
+END
+GO
+
+--drop table CheckProblem_Safety
+
+--ȫ嵥
+IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'CheckProblem_Safety') AND type = N'U')
+BEGIN
+CREATE TABLE [dbo].[CheckProblem_Safety](
+ [CheckId] [nvarchar](50) NOT NULL,
+ [UnitId] [nvarchar](50) NULL,
+ [UnitName] [nvarchar](200) NULL,
+ [ProjectId] [nvarchar](50) NULL,
+ [ProjectName] [nvarchar](200) NULL,
+ [State] [int] NOT NULL,
+ [Address] [nvarchar](200) NULL,
+ [Description] [nvarchar](max) NULL,
+ [UnitType] [nvarchar](20) NULL,
+ [AssemblyName] [nvarchar](100) NULL,
+ --[CheckUserId] [nvarchar](50) NULL,
+ [CheckTeamUser] [nvarchar](500) NULL,
+ [CheckDate] [datetime] NOT NULL,
+ [LimitDate] [datetime] NULL,
+ [CloseTime] [datetime] NULL,
+ [RectificationUserId] [nvarchar](50) NULL,
+ [RectificationUserName] [nvarchar](100) NULL,
+ [PMUserId] [nvarchar](50) NULL,
+ [PMUserName] [nvarchar](100) NULL,
+ [ClassifyId] [nvarchar](50) NULL,
+ [ClassifyItemId] [nvarchar](50) NULL,
+ [NatureId] [nvarchar](50) NULL,
+ [NatureItemId] [nvarchar](50) NULL,
+ [AttachUrl] [nvarchar](1000) NULL,
+ [RectificationUrl] [nvarchar](1000) NULL,
+ [Remark] [nvarchar](50) NULL,
+ [CompileMan] [nvarchar](50) NULL,
+ [CompileManName] [nvarchar](100) NULL,
+ [CompileDate] [datetime] NOT NULL,
+ CONSTRAINT [PK_CheckProblem_Safety] PRIMARY KEY CLUSTERED
+(
+ [CheckId] ASC
+)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
+) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
+ALTER TABLE [dbo].[CheckProblem_Safety] ADD CONSTRAINT [DF_CheckProblem_Safety_State] DEFAULT ((1)) FOR [State]
+ALTER TABLE [dbo].[CheckProblem_Safety] ADD CONSTRAINT [DF_CheckProblem_Safety_CheckDate] DEFAULT (getdate()) FOR [CheckDate]
+ALTER TABLE [dbo].[CheckProblem_Safety] ADD CONSTRAINT [DF_CheckProblem_Safety_CompileDate] DEFAULT (getdate()) FOR [CompileDate]
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'CheckId'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ܼ쵥λId' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'UnitId'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ܼ쵥λ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'UnitName'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ܼĿId' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'ProjectId'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ܼĿ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'ProjectName'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'״̬0ѱջ1У' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'State'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Ŀڵַ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'Address'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'Description'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'λͣа̡Ŀ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'UnitType'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ƣа̵дְƣ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'AssemblyName'
+--EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'CheckUserId'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'顢' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'CheckTeamUser'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'CheckDate'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ֹ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'LimitDate'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ջʱ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'CloseTime'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'RectificationUserId'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'RectificationUserName'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ĿId' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'PMUserId'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Ŀ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'PMUserName'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'ClassifyId'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'ClassifyItemId'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'NatureId'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'NatureItemId'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ƬǰƬ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'AttachUrl'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ĺƬ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'RectificationUrl'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ע' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'Remark'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'CompileMan'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'CompileManName'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ʱ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety', @level2type=N'COLUMN',@level2name=N'CompileDate'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ȫ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CheckProblem_Safety'
+
+END
+
+GO
+
+
diff --git a/SGGL/BLL/BLL.csproj b/SGGL/BLL/BLL.csproj
index 02e610d7..2a2e64fa 100644
--- a/SGGL/BLL/BLL.csproj
+++ b/SGGL/BLL/BLL.csproj
@@ -301,6 +301,7 @@
+
@@ -1206,7 +1207,9 @@
-
+
+
+
diff --git a/SGGL/BLL/BaseInfo/SafetyProblemClassifyItemService.cs b/SGGL/BLL/BaseInfo/SafetyProblemClassifyItemService.cs
index c48482b5..115e1887 100644
--- a/SGGL/BLL/BaseInfo/SafetyProblemClassifyItemService.cs
+++ b/SGGL/BLL/BaseInfo/SafetyProblemClassifyItemService.cs
@@ -91,16 +91,16 @@ namespace BLL
///
- /// 教材库下拉框
+ /// 问题分类明细项下拉框
///
/// 下拉框名字
- /// 职务Id
+ /// 分类Id
/// 是否显示请选择
- public static void InitClassifyItemDownList(FineUIPro.DropDownList dropName, string workPostId, bool isShowPlease)
+ public static void InitClassifyItemDownList(FineUIPro.DropDownList dropName, string classifyId, bool isShowPlease)
{
dropName.DataValueField = "ClassifyItemId";
dropName.DataTextField = "ClassifyItemName";
- dropName.DataSource = GetClassifyItemList(workPostId);
+ dropName.DataSource = GetClassifyItemList(classifyId);
dropName.DataBind();
if (isShowPlease)
{
diff --git a/SGGL/BLL/BaseInfo/SafetyProblemClassifyService.cs b/SGGL/BLL/BaseInfo/SafetyProblemClassifyService.cs
index e5b767d6..3fe57ae7 100644
--- a/SGGL/BLL/BaseInfo/SafetyProblemClassifyService.cs
+++ b/SGGL/BLL/BaseInfo/SafetyProblemClassifyService.cs
@@ -85,12 +85,12 @@ namespace BLL
}
///
- /// 类型下拉框(末级)
+ /// 类型下拉框
///
///
///
///
- public static void InitClassifyIsEndDropDownList(FineUIPro.DropDownList dropName, bool isShowPlease)
+ public static void InitClassifyDropDownList(FineUIPro.DropDownList dropName, bool isShowPlease)
{
dropName.DataValueField = "ClassifyId";
dropName.DataTextField = "ClassifyName";
diff --git a/SGGL/BLL/BaseInfo/SafetyProblemNatureItemService.cs b/SGGL/BLL/BaseInfo/SafetyProblemNatureItemService.cs
index f2e42c37..608dd954 100644
--- a/SGGL/BLL/BaseInfo/SafetyProblemNatureItemService.cs
+++ b/SGGL/BLL/BaseInfo/SafetyProblemNatureItemService.cs
@@ -95,16 +95,16 @@ namespace BLL
///
- /// 教材库下拉框
+ /// 问题性质明细下拉框
///
/// 下拉框名字
- /// 职务Id
+ /// 性质Id
/// 是否显示请选择
- public static void InitNatureItemDownList(FineUIPro.DropDownList dropName, string workPostId, bool isShowPlease)
+ public static void InitNatureItemDownList(FineUIPro.DropDownList dropName, string natureId, bool isShowPlease)
{
dropName.DataValueField = "NatureItemId";
- dropName.DataTextField = "NatureItemName";
- dropName.DataSource = GetNatureItemList(workPostId);
+ dropName.DataTextField = "NatureItemContent";
+ dropName.DataSource = GetNatureItemList(natureId);
dropName.DataBind();
if (isShowPlease)
{
@@ -115,14 +115,14 @@ namespace BLL
///
/// 获取下拉项
///
- ///
+ ///
///
- public static List GetNatureItemList(string classifyId)
+ public static List GetNatureItemList(string natureId)
{
var lst = (from x in Funs.DB.Base_SafetyProblemNatureItem orderby x.NatureItemCode select x).ToList();
- if (!string.IsNullOrWhiteSpace(classifyId))
+ if (!string.IsNullOrWhiteSpace(natureId))
{
- lst = lst.Where(x => x.NatureId == classifyId).ToList();
+ lst = lst.Where(x => x.NatureId == natureId).ToList();
}
return lst;
}
diff --git a/SGGL/BLL/BaseInfo/SafetyProblemNatureService.cs b/SGGL/BLL/BaseInfo/SafetyProblemNatureService.cs
index 716c0635..df18c421 100644
--- a/SGGL/BLL/BaseInfo/SafetyProblemNatureService.cs
+++ b/SGGL/BLL/BaseInfo/SafetyProblemNatureService.cs
@@ -90,7 +90,7 @@ namespace BLL
///
///
///
- public static void InitNatureIsEndDropDownList(FineUIPro.DropDownList dropName, bool isShowPlease)
+ public static void InitNatureDropDownList(FineUIPro.DropDownList dropName, bool isShowPlease)
{
dropName.DataValueField = "NatureId";
dropName.DataTextField = "NatureName";
diff --git a/SGGL/BLL/Check/HSE/CheckProblemSafetyService.cs b/SGGL/BLL/Check/HSE/CheckProblemSafetyService.cs
new file mode 100644
index 00000000..78d1523d
--- /dev/null
+++ b/SGGL/BLL/Check/HSE/CheckProblemSafetyService.cs
@@ -0,0 +1,213 @@
+using System;
+using Model;
+using System.Collections.Generic;
+using System.Linq;
+
+namespace BLL
+{
+ ///
+ /// 安全不符合项清单
+ ///
+ public static class CheckProblemSafetyService
+ {
+ #region Fields
+
+ public static Dictionary StateMap = new Dictionary
+ {
+ { "整改中" ,(int)StateInt.整改中},
+ { "已闭环" ,(int)StateInt.已闭环},
+ };
+
+ #endregion Fields
+
+ #region Enums
+
+ public enum StateInt : int
+ {
+ 整改中 = 1,
+ 已闭环 = 0
+ }
+
+ #endregion Enums
+
+ #region Methods
+
+ ///
+ /// 根据ID获取检查记录
+ ///
+ /// 检查记录ID
+ /// 检查记录
+ public static Model.CheckProblem_Safety GetCheckProblemById(string checkId)
+ {
+ return Funs.DB.CheckProblem_Safety.FirstOrDefault(e => e.CheckId == checkId);
+ }
+
+ ///
+ /// 添加检查记录
+ ///
+ /// 检查记录
+ public static void AddCheckProblem(Model.CheckProblem_Safety model)
+ {
+ using (Model.CNPCDB db = new Model.CNPCDB(Funs.ConnString))
+ {
+ Model.CheckProblem_Safety newModel = new Model.CheckProblem_Safety
+ {
+ CheckId = model.CheckId,
+ UnitId = model.UnitId,
+ UnitName = model.UnitName,
+ ProjectId = model.ProjectId,
+ ProjectName = model.ProjectName,
+ State = model.State,
+ Address = model.Address,
+ Description = model.Description,
+ UnitType = model.UnitType,
+ AssemblyName = model.AssemblyName,
+ //CheckUserId = model.CheckUserId,
+ //CheckUserName = model.CheckUserName,
+ CheckTeamUser = model.CheckTeamUser,
+ CheckDate = model.CheckDate,
+ LimitDate = model.LimitDate,
+ CloseTime = model.CloseTime,
+ RectificationUserId = model.RectificationUserId,
+ RectificationUserName = model.RectificationUserName,
+ PMUserId = model.PMUserId,
+ PMUserName = model.PMUserName,
+ ClassifyId = model.ClassifyId,
+ ClassifyItemId = model.ClassifyItemId,
+ NatureId = model.NatureId,
+ NatureItemId = model.NatureItemId,
+ AttachUrl = model.AttachUrl,
+ RectificationUrl = model.RectificationUrl,
+ Remark = model.Remark,
+ CompileMan = model.CompileMan,
+ CompileManName = model.CompileManName,
+ CompileDate = DateTime.Now
+ };
+ db.CheckProblem_Safety.InsertOnSubmit(newModel);
+ db.SubmitChanges();
+ }
+ }
+
+ ///
+ /// 更新检查记录
+ ///
+ /// 检查记录
+ public static void UpdateCheckProblem(Model.CheckProblem_Safety model)
+ {
+ using (Model.CNPCDB db = new Model.CNPCDB(Funs.ConnString))
+ {
+ Model.CheckProblem_Safety newModel = db.CheckProblem_Safety.FirstOrDefault(e => e.CheckId == model.CheckId);
+ if (newModel != null)
+ {
+ newModel.CheckDate = model.CheckDate;
+ newModel.UnitId = model.UnitId;
+ newModel.UnitName = model.UnitName;
+ newModel.ProjectId = model.ProjectId;
+ newModel.ProjectName = model.ProjectName;
+ newModel.State = model.State;
+ newModel.Address = model.Address;
+ newModel.Description = model.Description;
+ newModel.UnitType = model.UnitType;
+ newModel.AssemblyName = model.AssemblyName;
+ //newModel.CheckUserId = model.CheckUserId;
+ //newModel.CheckUserName = model.CheckUserName;
+ newModel.CheckTeamUser = model.CheckTeamUser;
+ newModel.CheckDate = model.CheckDate;
+ newModel.LimitDate = model.LimitDate;
+ newModel.CloseTime = model.CloseTime;
+ newModel.RectificationUserId = model.RectificationUserId;
+ newModel.RectificationUserName = model.RectificationUserName;
+ newModel.PMUserId = model.PMUserId;
+ newModel.PMUserName = model.PMUserName;
+ newModel.ClassifyId = model.ClassifyId;
+ newModel.ClassifyItemId = model.ClassifyItemId;
+ newModel.NatureId = model.NatureId;
+ newModel.NatureItemId = model.NatureItemId;
+ newModel.AttachUrl = model.AttachUrl;
+ newModel.RectificationUrl = model.RectificationUrl;
+ newModel.Remark = model.Remark;
+ db.SubmitChanges();
+ }
+ }
+ }
+
+ public static string ConvertState(int state)
+ {
+ string result = string.Empty;
+ result = StateMap.First(c => c.Value == state).Key;
+ return result;
+ }
+
+ ///
+ /// 删除检查记录
+ ///
+ /// 检查记录ID
+ public static void DeleteCheckProblemById(string checkId)
+ {
+ using (Model.CNPCDB db = new Model.CNPCDB(Funs.ConnString))
+ {
+ var model = db.CheckProblem_Safety.FirstOrDefault(e => e.CheckId == checkId);
+ if (model != null)
+ {
+ // 删除附件
+ if (!string.IsNullOrEmpty(model.AttachUrl))
+ {
+ BLL.UploadFileService.DeleteFile(Funs.RootPath, model.AttachUrl);
+ }
+ // 删除附件
+ if (!string.IsNullOrEmpty(model.RectificationUrl))
+ {
+ BLL.UploadFileService.DeleteFile(Funs.RootPath, model.RectificationUrl);
+ }
+ //// 删除编码记录
+ //BLL.CodeRecordsService.DeleteCodeRecordsByDataId(checkId);
+ // 删除附件
+ BLL.CommonService.DeleteAttachFileById(checkId);
+
+ db.CheckProblem_Safety.DeleteOnSubmit(model);
+ db.SubmitChanges();
+ }
+ }
+ }
+
+ ///
+ /// 根据项目和时间段获取检查数量
+ ///
+ /// 项目ID
+ /// 开始时间
+ /// 结束时间
+ /// 检查数量
+ public static int GetCount(string projectId, DateTime startTime, DateTime endTime)
+ {
+ return (from x in Funs.DB.CheckProblem_Safety
+ where x.ProjectId == projectId && x.CheckDate >= startTime && x.CheckDate <= endTime
+ select x).Count();
+ }
+ //public static int GetCount(string checkMainType)
+ //{
+ // return (from x in Funs.DB.CheckProblem_Safety
+ // where x.CheckMainType == checkMainType
+ // select x.CheckProblemId).Count();
+ //}
+
+
+ ///
+ /// 判断是否可以删除检查记录
+ ///
+ /// 检查记录ID
+ /// true=可以删除,false=不能删除
+ public static bool CanDeleteCheckProblem(string checkId)
+ {
+ var model = GetCheckProblemById(checkId);
+ if (model == null)
+ {
+ return false;
+ }
+ // 只有"整改中"状态可以删除,其他状态不能删除
+ return model.State == (int)StateInt.整改中;
+ }
+
+
+ #endregion Methods
+ }
+}
diff --git a/SGGL/BLL/Common/Const.cs b/SGGL/BLL/Common/Const.cs
index 1697a864..ae9be174 100644
--- a/SGGL/BLL/Common/Const.cs
+++ b/SGGL/BLL/Common/Const.cs
@@ -1806,8 +1806,29 @@ namespace BLL
public const string ProjectProjectMapMenuId = "F266456A-991F-45A3-BCD6-CF2515D71E39";
#endregion
+
#region 不符合项
+ #region 不符合项导入模版
+
+ ///
+ /// 安全危害因素数据导入模板
+ ///
+ public const string CheckProblemSafetyDataInTemplateUrl = "File\\Excel\\DataIn\\安全不符合项清单导入模板.xlsx";
+
+ #endregion
+
+ #region 不符合项菜单
+
+ ///
+ /// HSE不符合清单
+ ///
+ public const string SafetyCheckProblemMenuId = "664ACF2F-6750-4389-AF11-F429010FC9A7";
+
+ #endregion
+
+ #region 不符合项基础字典
+
///
/// 安全问题分类
///
@@ -1827,6 +1848,8 @@ namespace BLL
#endregion
+ #endregion
+
#region 岗位培训
///
diff --git a/SGGL/BLL/LoginService.cs b/SGGL/BLL/LoginService.cs
index 7fededfd..4a4c868c 100644
--- a/SGGL/BLL/LoginService.cs
+++ b/SGGL/BLL/LoginService.cs
@@ -10,8 +10,6 @@ namespace BLL
public static class LoginService
{
- public static CNPCDB db = Funs.DB;
-
///
/// û¼ɹ
///
diff --git a/SGGL/BLL/PZHGL/ProjectData/ProjectPageDataService.cs b/SGGL/BLL/PZHGL/ProjectData/ProjectPageDataService.cs
index f47dfd62..8bef2369 100644
--- a/SGGL/BLL/PZHGL/ProjectData/ProjectPageDataService.cs
+++ b/SGGL/BLL/PZHGL/ProjectData/ProjectPageDataService.cs
@@ -1,14 +1,11 @@
namespace BLL
{
- using System.Collections.Generic;
using System.Linq;
using Model;
using System;
public static class ProjectPageDataService
{
- public static CNPCDB db = Funs.DB;
-
///
///获取移动端首页
///
diff --git a/SGGL/BLL/ProjectData/ProjectService.cs b/SGGL/BLL/ProjectData/ProjectService.cs
index d1bbc3cf..07beec47 100644
--- a/SGGL/BLL/ProjectData/ProjectService.cs
+++ b/SGGL/BLL/ProjectData/ProjectService.cs
@@ -202,6 +202,7 @@
select x).ToList();
return list;
}
+
///
/// 项目属性下拉框
///
@@ -458,6 +459,31 @@
}
#region 项目表下拉框
+
+ ///
+ /// 项目表下拉框
+ ///
+ /// 下拉框名字
+ /// 是否显示请选择
+ public static void InitProjectDropDownList(FineUIPro.DropDownList dropName, string unitId, bool isShowPlease)
+ {
+ var IsThisUnit = CommonService.GetThisUnitId() == unitId ? true : false;
+ dropName.DataValueField = "ProjectId";
+ dropName.DataTextField = "ProjectName";
+ if (IsThisUnit)
+ {
+ dropName.DataSource = GetProjectWorkList();
+ }
+ else
+ {
+ dropName.DataSource =GetProjectWorkList(unitId);
+ }
+ dropName.DataBind();
+ if (isShowPlease)
+ {
+ Funs.FineUIPleaseSelect(dropName);
+ }
+ }
///
/// 项目表下拉框
///
diff --git a/SGGL/BLL/ProjectData/ProjectUserService.cs b/SGGL/BLL/ProjectData/ProjectUserService.cs
index 2d9166d8..11bf3c67 100644
--- a/SGGL/BLL/ProjectData/ProjectUserService.cs
+++ b/SGGL/BLL/ProjectData/ProjectUserService.cs
@@ -6,8 +6,6 @@
public static class ProjectUserService
{
- public static CNPCDB db = Funs.DB;
-
///
///获取项目用户信息
///
@@ -59,8 +57,8 @@
UnitId = projectUser.UnitId,
RoleId = projectUser.RoleId,
IsPost = projectUser.IsPost,
- MainCNProfessionalId=projectUser.MainCNProfessionalId,
- ViceCNProfessionalId=projectUser.ViceCNProfessionalId
+ MainCNProfessionalId = projectUser.MainCNProfessionalId,
+ ViceCNProfessionalId = projectUser.ViceCNProfessionalId
};
//newProjectUser.RoleName = projectUser.RoleName;
db.Project_ProjectUser.InsertOnSubmit(newProjectUser);
@@ -154,7 +152,7 @@
public static List GetProjectUserByUnitidAndProjectId(string ProjectId, string UnitId, string RoleId)
{
- var ids = Funs.DB.Project_ProjectUser.Where(e => e.ProjectId == ProjectId &&( UnitId==""|| e.UnitId == UnitId)&&(RoleId==""||e.RoleId.Contains(RoleId)) ).Select(u => u.UserId).ToList();
+ var ids = Funs.DB.Project_ProjectUser.Where(e => e.ProjectId == ProjectId && (UnitId == "" || e.UnitId == UnitId) && (RoleId == "" || e.RoleId.Contains(RoleId))).Select(u => u.UserId).ToList();
return Funs.DB.Sys_User.Where(u => ids.Contains(u.UserId)).ToList();
}
@@ -170,5 +168,28 @@
where x.ProjectId == ProjectId && y.IdentityCard == IdentityCard
select x).FirstOrDefault();
}
+
+ ///
+ /// 根据项目Id获取项目所有在岗用户
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static List GetProjectUserByProjectId(string ProjectId, string UnitId, string RoleId)
+ {
+ var pUsers = Funs.DB.Project_ProjectUser.Where(e => e.ProjectId == ProjectId && e.IsPost == true).ToList();
+ if (!string.IsNullOrWhiteSpace(UnitId))
+ {
+ pUsers = pUsers.Where(x => x.UnitId == UnitId).ToList();
+ }
+ if (!string.IsNullOrWhiteSpace(RoleId))
+ {
+ pUsers = pUsers.Where(x => x.RoleId == RoleId).ToList();
+ }
+ var ids = pUsers.Select(u => u.UserId).ToList();
+ return Funs.DB.Sys_User.Where(u => ids.Contains(u.UserId)).ToList();
+ }
+
}
}
\ No newline at end of file
diff --git a/SGGL/BLL/TaskScheduling/InterFaceService/InterFaceTaskService .cs b/SGGL/BLL/TaskScheduling/InterFaceService/InterFaceTaskService .cs
index 28fe5cdf..61f786b9 100644
--- a/SGGL/BLL/TaskScheduling/InterFaceService/InterFaceTaskService .cs
+++ b/SGGL/BLL/TaskScheduling/InterFaceService/InterFaceTaskService .cs
@@ -124,13 +124,11 @@ namespace BLL
#region 执行任务
public static void ExecuteTasks(string InterFaceTaskId)
{
-
var model = GetInterFaceTaskById(InterFaceTaskId);
var InterFaceSetlIds = model.InterFaceSetLists.Split(',');
foreach (var item in InterFaceSetlIds)
{
ExecuteTasksByInterFaceSetlId(item);
-
}
}
///
@@ -149,7 +147,7 @@ namespace BLL
if (InterfaceSetModel.IsSingleRequest == true)
{
var taskData = GetSingleRequestData(InterfaceSetModel.InterFaceUrl, InterfaceSetModel.RequestJsonBody, InterfaceSetModel.UrlReqMethod);
- bool taskSuccess = taskData.code == 1;
+ bool taskSuccess = taskData != null && taskData.code == 1;
InterFaceLogService.WriteInterFaceLog(InterFaceSetlId, InterfaceSetModel.RequestJsonBody, JsonConvert.SerializeObject(taskData), InterFaceLogService.Type1, taskSuccess);
return;
}
diff --git a/SGGL/BLL/ZHGL/DataSync/CQMSDataService.cs b/SGGL/BLL/ZHGL/DataSync/CQMSDataService.cs
index 714bf12d..48b10be4 100644
--- a/SGGL/BLL/ZHGL/DataSync/CQMSDataService.cs
+++ b/SGGL/BLL/ZHGL/DataSync/CQMSDataService.cs
@@ -1,7 +1,6 @@
using FineUIPro;
using Model;
using Newtonsoft.Json;
-using NPOI.POIFS.Crypt.Dsig;
using System;
using System.Collections;
using System.Collections.Generic;
@@ -11,8 +10,6 @@ namespace BLL
{
public static class CQMSDataService
{
- public static CNPCDB db = Funs.DB;
-
#region 获取列表
///
diff --git a/SGGL/BLL/ZHGL/DataSync/HJGLData_HJGLService.cs b/SGGL/BLL/ZHGL/DataSync/HJGLData_HJGLService.cs
index 6708a07c..3abc0b40 100644
--- a/SGGL/BLL/ZHGL/DataSync/HJGLData_HJGLService.cs
+++ b/SGGL/BLL/ZHGL/DataSync/HJGLData_HJGLService.cs
@@ -11,8 +11,6 @@ namespace BLL
{
public static class HJGLData_HJGLService
{
- public static CNPCDB db = Funs.DB;
-
#region 获取列表
///
diff --git a/SGGL/BLL/ZHGL/DataSync/ProjectDataSync/Project_HJGLData_DefectService.cs b/SGGL/BLL/ZHGL/DataSync/ProjectDataSync/Project_HJGLData_DefectService.cs
index a44de353..cc460382 100644
--- a/SGGL/BLL/ZHGL/DataSync/ProjectDataSync/Project_HJGLData_DefectService.cs
+++ b/SGGL/BLL/ZHGL/DataSync/ProjectDataSync/Project_HJGLData_DefectService.cs
@@ -4,16 +4,12 @@ using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
-using System.Text;
using Model;
namespace BLL
{
public static class Project_HJGLData_DefectService
{
- public static CNPCDB db = Funs.DB;
-
-
#region 获取列表
///
@@ -23,6 +19,7 @@ namespace BLL
public static List GetProject_HJGLData_DefectByModle(Project_HJGLData_Defect table)
{
+ var db = Funs.DB;
var q = from x in db.Project_HJGLData_Defect
where
(string.IsNullOrEmpty(table.Id) || x.Id.Contains(table.Id)) &&
@@ -49,23 +46,24 @@ namespace BLL
if (count == 0) return null;
// q = SortConditionHelper.SortingAndPaging(q, Grid1.SortField, Grid1.SortDirection, Grid1.PageIndex, Grid1.PageSize);
return from x in q
- select new
- {
- x.Id,
- x.ProjectId,
- x.UnitId,
- x.CollCropCode,
- x.UnitName,
- x.ReportDate,
- x.DefectName,
- x.DefectNum
- };
+ select new
+ {
+ x.Id,
+ x.ProjectId,
+ x.UnitId,
+ x.CollCropCode,
+ x.UnitName,
+ x.ReportDate,
+ x.DefectName,
+ x.DefectNum
+ };
}
#endregion
public static Project_HJGLData_Defect GetProject_HJGLData_DefectById(string Id)
{
+ var db = Funs.DB;
return db.Project_HJGLData_Defect.FirstOrDefault(x => x.Id == Id);
}
@@ -75,17 +73,18 @@ namespace BLL
///
///
///
- public static List GetProject_HJGLData_DefectByDate(DateTime? reportDate,
- string projectid)
+ public static List GetProject_HJGLData_DefectByDate(DateTime? reportDate, string projectid)
{
+ var db = Funs.DB;
var q = from x in db.Project_HJGLData_Defect
- where x.ReportDate.Value.Date.CompareTo(reportDate.Value.Date) == 0 && x.ProjectId == projectid
- select x;
+ where x.ReportDate.Value.Date.CompareTo(reportDate.Value.Date) == 0 && x.ProjectId == projectid
+ select x;
return q.ToList();
}
public static void AddProject_HJGLData_Defect(Project_HJGLData_Defect newtable)
{
+ var db = Funs.DB;
var table = new Project_HJGLData_Defect
{
Id = newtable.Id,
@@ -103,12 +102,14 @@ namespace BLL
public static void AddBulkProject_HJGLData_Defect(List newtables)
{
+ var db = Funs.DB;
db.Project_HJGLData_Defect.InsertAllOnSubmit(newtables);
db.SubmitChanges();
}
public static void UpdateProject_HJGLData_Defect(Project_HJGLData_Defect newtable)
{
+ var db = Funs.DB;
var table = db.Project_HJGLData_Defect.FirstOrDefault(x => x.Id == newtable.Id);
if (table != null)
{
@@ -126,6 +127,7 @@ namespace BLL
public static void DeleteProject_HJGLData_DefectById(string Id)
{
+ var db = Funs.DB;
var table = db.Project_HJGLData_Defect.FirstOrDefault(x => x.Id == Id);
if (table != null)
{
@@ -136,8 +138,8 @@ namespace BLL
public static void DeleteProject_HJGLData_DefectByDate(DateTime? reportDate)
{
- var table = db.Project_HJGLData_Defect.Where(x =>
- x.ReportDate.Value.Date.CompareTo(reportDate.Value.Date) == 0);
+ var db = Funs.DB;
+ var table = db.Project_HJGLData_Defect.Where(x => x.ReportDate.Value.Date.CompareTo(reportDate.Value.Date) == 0);
if (table != null)
{
db.Project_HJGLData_Defect.DeleteAllOnSubmit(table);
@@ -147,8 +149,8 @@ namespace BLL
public static void DeleteProject_HJGLData_DefectByDate(DateTime? reportDate, string projectid)
{
- var table = db.Project_HJGLData_Defect.Where(x =>
- x.ReportDate.Value.Date.CompareTo(reportDate.Value.Date) == 0 && x.ProjectId == projectid);
+ var db = Funs.DB;
+ var table = db.Project_HJGLData_Defect.Where(x => x.ReportDate.Value.Date.CompareTo(reportDate.Value.Date) == 0 && x.ProjectId == projectid);
if (table != null)
{
db.Project_HJGLData_Defect.DeleteAllOnSubmit(table);
@@ -162,11 +164,12 @@ namespace BLL
///
public static bool IsReportByToday(string projectid, string type)
{
+ var db = Funs.DB;
var result = false;
var q = (from x in Funs.DB.Project_HJGLData_Defect
- where x.ReportDate < DateTime.Now.AddDays(1).Date && x.ReportDate >= DateTime.Now.Date &&
- x.ProjectId == projectid && x.DefectName == type
- select x).ToList();
+ where x.ReportDate < DateTime.Now.AddDays(1).Date && x.ReportDate >= DateTime.Now.Date &&
+ x.ProjectId == projectid && x.DefectName == type
+ select x).ToList();
if (q != null && q.Count > 0) result = true;
return result;
}
@@ -178,25 +181,27 @@ namespace BLL
///
public static Project_HJGLData_Defect getTodayProject_HJGLData_Defect(string projectid, string type)
{
+ var db = Funs.DB;
var q = (from x in Funs.DB.Project_HJGLData_Defect
- where x.ReportDate < DateTime.Now.AddDays(1).Date && x.ReportDate >= DateTime.Now.Date &&
- x.ProjectId == projectid && x.DefectName == type
- select x).FirstOrDefault();
+ where x.ReportDate < DateTime.Now.AddDays(1).Date && x.ReportDate >= DateTime.Now.Date &&
+ x.ProjectId == projectid && x.DefectName == type
+ select x).FirstOrDefault();
return q;
}
public static List getTodayProject_HJGLData_Defect()
{
+ var db = Funs.DB;
var q = (from x in Funs.DB.Project_HJGLData_Defect
- where x.ReportDate < DateTime.Now.AddDays(1).Date && x.ReportDate >= DateTime.Now.Date
- group x by x.DefectName
+ where x.ReportDate < DateTime.Now.AddDays(1).Date && x.ReportDate >= DateTime.Now.Date
+ group x by x.DefectName
into g
- select new HJGLDataDefectItems
- {
- Id = SQLHelper.GetNewID(),
- DefectName = g.Key,
- DefectNum = g.Sum(p => p.DefectNum)
- }).ToList();
+ select new HJGLDataDefectItems
+ {
+ Id = SQLHelper.GetNewID(),
+ DefectName = g.Key,
+ DefectNum = g.Sum(p => p.DefectNum)
+ }).ToList();
return q;
}
@@ -214,19 +219,19 @@ namespace BLL
var baseUnit = UnitService.GetUnitByUnitId(thisUnitId);
var data = (from x in db.CH_CheckItem
join y in db.CH_Check on x.CHT_CheckID equals y.CHT_CheckID
- where projectids.Contains(y.ProjectId)
- group x by new { x.Defects_Definition, y.ProjectId }
+ where projectids.Contains(y.ProjectId)
+ group x by new { x.Defects_Definition, y.ProjectId }
into g
- select new
- {
- UnitId = thisUnitId,
- CollCropCode = baseUnit.CollCropCode,
- UnitName = baseUnit.UnitName,
- ProjectId = g.Key.ProjectId,
- ReportDate = DateTime.Now.Date,
- DefectName = g.Key.Defects_Definition,
- DefectNum = g.Count(x => x.Defects_Definition == g.Key.Defects_Definition)
- }).ToList();
+ select new
+ {
+ UnitId = thisUnitId,
+ CollCropCode = baseUnit.CollCropCode,
+ UnitName = baseUnit.UnitName,
+ ProjectId = g.Key.ProjectId,
+ ReportDate = DateTime.Now.Date,
+ DefectName = g.Key.Defects_Definition,
+ DefectNum = g.Count(x => x.Defects_Definition == g.Key.Defects_Definition)
+ }).ToList();
DeleteProject_HJGLData_DefectByDate(DateTime.Now.Date); //删除当前所有
var projectHjglDataDefect = new List();
foreach (var item in data
@@ -255,14 +260,15 @@ namespace BLL
///
public static void StatisticalData(string projectid)
{
+ var db = Funs.DB;
var thisUnitId = string.Empty;
var thisUnit = CommonService.GetIsThisUnit();
if (thisUnit != null) thisUnitId = thisUnit.UnitId;
var base_Unit = UnitService.GetUnitByUnitId(thisUnitId);
var list = from x in db.CH_CheckItem
- join y in db.CH_Check on x.CHT_CheckID equals y.CHT_CheckID
- where y.ProjectId == projectid
- select x;
+ join y in db.CH_Check on x.CHT_CheckID equals y.CHT_CheckID
+ where y.ProjectId == projectid
+ select x;
var types = (from x in list select x.Defects_Definition).Distinct().ToList();
foreach (var t in types)
if (!string.IsNullOrEmpty(t))
diff --git a/SGGL/FineUIPro.Web/Check/HSE/CheckProblem.aspx b/SGGL/FineUIPro.Web/Check/HSE/CheckProblem.aspx
new file mode 100644
index 00000000..dce528ba
--- /dev/null
+++ b/SGGL/FineUIPro.Web/Check/HSE/CheckProblem.aspx
@@ -0,0 +1,223 @@
+<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="CheckProblem.aspx.cs" Inherits="FineUIPro.Web.Check.HSE.CheckProblem" %>
+
+
+
+
+
+
+
+
+ 安全不符合项清单
+
+
+
+
+
+
+
diff --git a/SGGL/FineUIPro.Web/Check/HSE/CheckProblem.aspx.cs b/SGGL/FineUIPro.Web/Check/HSE/CheckProblem.aspx.cs
new file mode 100644
index 00000000..73f6b2f9
--- /dev/null
+++ b/SGGL/FineUIPro.Web/Check/HSE/CheckProblem.aspx.cs
@@ -0,0 +1,491 @@
+using BLL;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Data.SqlClient;
+using System.Linq;
+using System.Text;
+namespace FineUIPro.Web.Check.HSE
+{
+ public partial class CheckProblem : PageBase
+ {
+ ///
+ /// 项目id
+ ///
+ public string ProjectId
+ {
+ get
+ {
+ return (string)ViewState["ProjectId"];
+ }
+ set
+ {
+ ViewState["ProjectId"] = value;
+ }
+ }
+
+ #region 加载页面
+ ///
+ /// 加载页面
+ ///
+ ///
+ ///
+ protected void Page_Load(object sender, EventArgs e)
+ {
+ if (!IsPostBack)
+ {
+ Funs.DropDownPageSize(this.ddlPageSize);
+ this.ProjectId = this.CurrUser.LoginProjectId;
+ if (!string.IsNullOrEmpty(Request.Params["projectId"]) && Request.Params["projectId"] != this.CurrUser.LoginProjectId)
+ {
+ this.ProjectId = Request.Params["projectId"];
+ }
+ //权限按钮方法
+ GetButtonPower();
+ InitDropDownList();
+
+ //Funs.FineUIPleaseSelect(this.dpState);
+ btnNew.OnClientClick = Window1.GetShowReference("CheckProblemEdit.aspx") + "return false;";
+ ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
+
+ // 绑定表格
+ BindGrid();
+ }
+ }
+
+ ///
+ /// 初始化下拉框
+ ///
+ private void InitDropDownList()
+ {
+ ////受检单位
+ //UnitService.InitBranchUnitDropDownList(this.drpUnit, true);
+ ////受检项目
+ //ProjectService.InitProjectDropDownList(this.drpProject, true);
+ //问题分类
+ SafetyProblemClassifyService.InitClassifyDropDownList(this.drpClassify, true);
+ //问题性质
+ SafetyProblemNatureService.InitNatureDropDownList(this.drpNature, true);
+ }
+
+ #endregion
+
+
+ #region 查询
+
+ ///
+ /// 查询
+ ///
+ ///
+ ///
+ protected void TextBox_TextChanged(object sender, EventArgs e)
+ {
+ this.BindGrid();
+ }
+
+ ///
+ /// 绑定数据
+ ///
+
+ public void BindGrid()
+ {
+ DataTable tb = ChecklistData();
+
+ // 2.获取当前分页数据
+ //var table = this.GetPagedDataTable(Grid1, tb1);
+
+ Grid1.RecordCount = tb.Rows.Count;
+ tb = GetFilteredTable(Grid1.FilteredData, tb);
+ var table = this.GetPagedDataTable(Grid1, tb);
+
+ Grid1.DataSource = table;
+ Grid1.DataBind();
+
+ for (int i = 0; i < Grid1.Rows.Count; i++)
+ {
+ var state = table.Rows[i]["State"].ToString().Trim();
+ var limitDate = table.Rows[i]["LimitDate"].ToString();
+ DateTime dtLimitDate = Convert.ToDateTime(limitDate);
+ if (Grid1.Rows[i].DataKeys[0] != null && !string.IsNullOrWhiteSpace(state) && state == "1")
+ {
+ if (dtLimitDate.AddDays(1) < DateTime.Now) //延期未整改
+ {
+ Grid1.Rows[i].CellCssClasses[7] = "Red";
+ }
+ else//期内未整改
+ {
+ Grid1.Rows[i].CellCssClasses[7] = " Yellow ";
+ }
+ }
+ }
+ }
+
+ ///
+ /// 数据加载
+ ///
+ ///
+ protected DataTable ChecklistData()
+ {
+ StringBuilder sb = new StringBuilder();
+ sb.Append("SELECT spc.ClassifyName,spcItem.ClassifyItemName,spn.NatureName,spnItem.NatureItemContent,tba.* ");
+ sb.Append("FROM CheckProblem_Safety AS tba WITH(NOLOCK) ");
+ sb.Append("LEFT JOIN Base_SafetyProblemClassify AS spc ON spc.ClassifyId=tba.ClassifyId ");
+ sb.Append("LEFT JOIN Base_SafetyProblemClassifyItem AS spcItem ON spcItem.ClassifyItemId=tba.ClassifyItemId ");
+ sb.Append("LEFT JOIN Base_SafetyProblemNature AS spn ON spn.NatureId=tba.NatureId ");
+ sb.Append("LEFT JOIN Base_SafetyProblemNatureItem AS spnItem ON spnItem.NatureItemId=tba.NatureItemId ");
+ sb.Append("WHERE 1=1 ");
+
+ List listStr = new List();
+ //listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
+
+ if (!string.IsNullOrWhiteSpace(this.txtSearch.Text.Trim()))
+ {
+ sb.Append("AND (tba.UnitName LIKE @SearchTxt OR tba.ProjectName LIKE @SearchTxt OR tba.Description LIKE @SearchTxt OR tba.CheckTeamUser LIKE @SearchTxt) ");
+ listStr.Add(new SqlParameter("@SearchTxt", "%" + this.txtSearch.Text.Trim() + "%"));
+ }
+ if (!string.IsNullOrWhiteSpace(this.drpClassify.SelectedValue) && this.drpClassify.SelectedValue != Const._Null)
+ {
+ sb.Append("AND tba.ClassifyId=@ClassifyId ");
+ listStr.Add(new SqlParameter("@ClassifyId", this.drpClassify.SelectedValue));
+ }
+ if (!string.IsNullOrWhiteSpace(this.drpNature.SelectedValue) && this.drpNature.SelectedValue != Const._Null)
+ {
+ sb.Append("AND tba.NatureId=@NatureId ");
+ listStr.Add(new SqlParameter("@NatureId", this.drpNature.SelectedValue));
+ }
+ if (!string.IsNullOrWhiteSpace(this.rblState.SelectedValue))
+ {
+ sb.Append("AND tba.State=@State ");
+ listStr.Add(new SqlParameter("@State", this.rblState.SelectedValue));
+ }
+ if (!string.IsNullOrWhiteSpace(this.rblUnitType.SelectedValue))
+ {
+ sb.Append("AND tba.UnitType=@UnitType ");
+ listStr.Add(new SqlParameter("@UnitType", this.rblUnitType.SelectedValue));
+ }
+ string startDate = this.txtStartTime.Text.Trim();
+ string endDate = this.txtEndTime.Text.Trim();
+ if (!string.IsNullOrWhiteSpace(startDate))
+ {
+ sb.Append("AND tba.CheckDate >= @StartDate ");
+ listStr.Add(new SqlParameter("@StartDate", startDate));
+ }
+ if (!string.IsNullOrWhiteSpace(endDate))
+ {
+ sb.Append("AND tba.CheckDate <= @EndDate ");
+ listStr.Add(new SqlParameter("@EndDate", $"{endDate} 23:59:59"));
+ }
+ SqlParameter[] parameter = listStr.ToArray();
+ DataTable tb = SQLHelper.GetDataTableRunText(sb.ToString(), parameter);
+ return tb;
+ }
+
+ #endregion
+
+ /***整改前、后照片***
+
+ protected string ConvertImageUrlByImage(object registrationId)
+ {
+ string url = string.Empty;
+ if (registrationId != null)
+ {
+ IList sourlist = AttachFileService.GetBeforeFileList(registrationId.ToString(), BLL.Const.SafetyCheckProblemMenuId);
+
+ if (sourlist != null&& sourlist.Count>0)
+ {
+ string AttachUrl = "";
+ foreach(var item in sourlist)
+ { if(!string.IsNullOrEmpty(item.AttachUrl)&& item.AttachUrl.ToLower().EndsWith(".jpg")|| item.AttachUrl.ToLower().EndsWith(".jpeg")|| item.AttachUrl.ToLower().EndsWith(".png"))
+ AttachUrl += item.AttachUrl.TrimEnd(',')+",";
+ }
+ url = BLL.UploadAttachmentService.ShowImage(ConfigurationManager.AppSettings["CEMS_IMG_URL"], AttachUrl.TrimEnd(','));
+ }
+ }
+ return url;
+ }
+ protected string ConvertImgUrlByImage(object registrationId)
+ {
+ string url = string.Empty;
+ if (registrationId != null)
+ {
+ IList sourlist = AttachFileService.Getfilelist(registrationId.ToString()+"r", BLL.Const.SafetyCheckProblemMenuId);
+
+ if (sourlist != null && sourlist.Count > 0)
+ {
+ string AttachUrl = "";
+ foreach (var item in sourlist)
+ {
+ if (!string.IsNullOrEmpty(item.AttachUrl) && item.AttachUrl.ToLower().EndsWith(".jpg") || item.AttachUrl.ToLower().EndsWith(".jpeg") || item.AttachUrl.ToLower().EndsWith(".png"))
+ AttachUrl += item.AttachUrl.TrimEnd(',') + ",";
+ }
+ url = BLL.UploadAttachmentService.ShowImage(ConfigurationManager.AppSettings["CEMS_IMG_URL"], AttachUrl.TrimEnd(','));
+ }
+ }
+ return url;
+ }
+
+ ******/
+
+ ///
+ /// 检查问题状态
+ ///
+ ///
+ ///
+ public string ConvertStates(Object obj)
+ {
+ string result = "整改中";
+ string state = obj.ToString();
+ if (state == "0")
+ {
+ result = "已闭环";
+ }
+ else
+ { //闭环
+ result = "整改中";
+ }
+ return result;
+ }
+
+
+ #region 过滤表头、排序、分页、关闭窗口
+ ///
+ /// 过滤表头
+ ///
+ ///
+ ///
+ protected void Grid1_FilterChange(object sender, EventArgs e)
+ {
+ BindGrid();
+ }
+
+ ///
+ /// 分页
+ ///
+ ///
+ ///
+ protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
+ {
+ Grid1.PageIndex = e.NewPageIndex;
+ BindGrid();
+ }
+
+ ///
+ /// 排序
+ ///
+ ///
+ ///
+ protected void Grid1_Sort(object sender, GridSortEventArgs e)
+ {
+ //Grid1.SortDirection = e.SortDirection;
+ //Grid1.SortField = e.SortField;
+ BindGrid();
+ }
+
+ ///
+ /// 分页显示条数下拉框
+ ///
+ ///
+ ///
+ protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
+ BindGrid();
+ }
+
+ ///
+ /// 关闭弹出窗
+ ///
+ ///
+ ///
+ protected void Window1_Close(object sender, WindowCloseEventArgs e)
+ {
+ BindGrid();
+ }
+ #endregion
+
+ #region 鼠标操作事件
+
+ ///
+ /// Grid行双击事件
+ ///
+ ///
+ ///
+ protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
+ {
+ btnMenuModify_Click(null, null);
+ }
+
+ ///
+ /// 编辑按钮
+ ///
+ ///
+ ///
+ protected void btnMenuModify_Click(object sender, EventArgs e)
+ {
+ if (Grid1.SelectedRowIndexArray.Length == 0)
+ {
+ Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
+ return;
+ }
+ string checkId = Grid1.SelectedRowID;
+ var model = CheckProblemSafetyService.GetCheckProblemById(checkId);
+ if (model != null)
+ {
+ if (model.State == (int)CheckProblemSafetyService.StateInt.已闭环) //双击事件 已闭环
+ {
+ Alert.ShowInTop("当前隐患已闭环,无法编辑,请右键查看!", MessageBoxIcon.Warning);
+ return;
+ }
+ PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("CheckProblemEdit.aspx?CheckId={0}", checkId), "编辑安全不符合项"));
+ return;
+ }
+ }
+
+ ///
+ /// 右键删除
+ ///
+ ///
+ ///
+ protected void btnMenuDel_Click(object sender, EventArgs e)
+ {
+ if (Grid1.SelectedRowIndexArray.Length == 0)
+ {
+ Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
+ return;
+ }
+ string checkId = Grid1.SelectedRowID;
+ var model = CheckProblemSafetyService.GetCheckProblemById(checkId);
+ if (model != null)
+ {
+ if (model.State == (int)CheckProblemSafetyService.StateInt.已闭环)//双击事件 已闭环
+ {
+ Alert.ShowInTop("当前隐患已闭环,无法删除!", MessageBoxIcon.Warning);
+ return;
+ }
+ else
+ {
+ BLL.CheckProblemSafetyService.DeleteCheckProblemById(checkId);
+ BLL.LogService.AddSys_Log(this.CurrUser, model.CheckId, model.CheckId, BLL.Const.SafetyCheckProblemMenuId, "删除HSE不符合记录");
+ Grid1.DataBind();
+ BindGrid();
+ Alert.ShowInTop("删除数据成功!", MessageBoxIcon.Success);
+ }
+ }
+ }
+
+ ///
+ /// 右击查看明细
+ ///
+ ///
+ ///
+ protected void btnMenuView_Click(object sender, EventArgs e)
+ {
+ if (Grid1.SelectedRowIndexArray.Length == 0)
+ {
+ Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
+ return;
+ }
+ string checkId = Grid1.SelectedRowID;
+ var model = CheckProblemSafetyService.GetCheckProblemById(checkId);
+ if (model != null)
+ {
+ PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("CheckProblemView.aspx?CheckId={0}", checkId), "查看安全不符合项"));
+ }
+ }
+ ///
+ /// 查询按钮
+ ///
+ ///
+ ///
+ protected void btnQuery_Click(object sender, EventArgs e)
+ {
+ BindGrid();
+ }
+ ///
+ /// 条件重置
+ ///
+ ///
+ ///
+ protected void btnRset_Click(object sender, EventArgs e)
+ {
+ rblUnitType.SelectedIndex = 0;
+ drpClassify.SelectedIndex = 0;
+ drpNature.SelectedIndex = 0;
+ rblState.SelectedIndex = 0;
+ txtSearch.Text = "";
+ txtStartTime.Text = "";
+ txtEndTime.Text = "";
+ BindGrid();
+ }
+ #endregion
+
+ #region 获取按钮权限
+ ///
+ /// 获取按钮权限
+ ///
+ ///
+ ///
+ private void GetButtonPower()
+ {
+ if (Request.Params["value"] == "0")
+ {
+ return;
+ }
+ var buttonList = BLL.CommonService.GetAllButtonList(this.ProjectId, this.CurrUser.UserId, BLL.Const.SafetyCheckProblemMenuId);
+ if (buttonList.Count() > 0)
+ {
+ if (buttonList.Contains(BLL.Const.BtnAdd))
+ {
+ this.btnNew.Hidden = false;
+ this.btnImport.Hidden = false;
+ }
+ if (buttonList.Contains(BLL.Const.BtnModify))
+ {
+ this.btnMenuModify.Hidden = false;
+ }
+ if (buttonList.Contains(BLL.Const.BtnDelete))
+ {
+ this.btnMenuDel.Hidden = false;
+ }
+ }
+ }
+ #endregion
+
+ #region 导入
+
+ ///
+ /// 导入按钮
+ ///
+ ///
+ ///
+ protected void btnImport_Click(object sender, EventArgs e)
+ {
+ PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("CheckProblemIn.aspx"), "导入安全不符合项"));
+ }
+
+ #endregion
+
+ #region 导出
+
+
+ ///
+ /// 导出
+ ///
+ ///
+ ///
+ protected void btnOut_Click(object sender, EventArgs e)
+ {
+ Response.ClearContent();
+ string filename = Funs.GetNewFileName();
+ Response.AddHeader("content-disposition", "attachment; filename=" + System.Web.HttpUtility.UrlEncode("安全不符合项清单" + filename, System.Text.Encoding.UTF8) + ".xls");
+ Response.ContentType = "application/excel";
+ Response.ContentEncoding = System.Text.Encoding.UTF8;
+ this.Grid1.PageSize = 100000;
+ this.BindGrid();
+ Response.Write(GetGridTableHtml(Grid1));
+ Response.End();
+ }
+
+ #endregion
+ }
+}
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/Check/HSE/CheckProblem.aspx.designer.cs b/SGGL/FineUIPro.Web/Check/HSE/CheckProblem.aspx.designer.cs
new file mode 100644
index 00000000..04c27815
--- /dev/null
+++ b/SGGL/FineUIPro.Web/Check/HSE/CheckProblem.aspx.designer.cs
@@ -0,0 +1,278 @@
+//------------------------------------------------------------------------------
+// <自动生成>
+// 此代码由工具生成。
+//
+// 对此文件的更改可能导致不正确的行为,如果
+// 重新生成代码,则所做更改将丢失。
+// 自动生成>
+//------------------------------------------------------------------------------
+
+namespace FineUIPro.Web.Check.HSE
+{
+
+
+ public partial class CheckProblem
+ {
+
+ ///
+ /// 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;
+
+ ///
+ /// txtSearch 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtSearch;
+
+ ///
+ /// rblUnitType 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.RadioButtonList rblUnitType;
+
+ ///
+ /// drpClassify 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList drpClassify;
+
+ ///
+ /// drpNature 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList drpNature;
+
+ ///
+ /// btnRset 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnRset;
+
+ ///
+ /// btnQuery 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnQuery;
+
+ ///
+ /// btnOut 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnOut;
+
+ ///
+ /// Toolbar2 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Toolbar Toolbar2;
+
+ ///
+ /// txtStartTime 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DatePicker txtStartTime;
+
+ ///
+ /// Label5 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Label Label5;
+
+ ///
+ /// txtEndTime 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DatePicker txtEndTime;
+
+ ///
+ /// rblState 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.RadioButtonList rblState;
+
+ ///
+ /// btnNew 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnNew;
+
+ ///
+ /// btnImport 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnImport;
+
+ ///
+ /// lblNumber 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::System.Web.UI.WebControls.Label lblNumber;
+
+ ///
+ /// lbState 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::System.Web.UI.WebControls.Label lbState;
+
+ ///
+ /// ToolbarSeparator1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
+
+ ///
+ /// ToolbarText1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.ToolbarText ToolbarText1;
+
+ ///
+ /// ddlPageSize 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList ddlPageSize;
+
+ ///
+ /// Window1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Window Window1;
+
+ ///
+ /// Menu1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Menu Menu1;
+
+ ///
+ /// btnMenuModify 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.MenuButton btnMenuModify;
+
+ ///
+ /// btnMenuView 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.MenuButton btnMenuView;
+
+ ///
+ /// btnMenuDel 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.MenuButton btnMenuDel;
+ }
+}
diff --git a/SGGL/FineUIPro.Web/Check/HSE/CheckProblemEdit.aspx b/SGGL/FineUIPro.Web/Check/HSE/CheckProblemEdit.aspx
new file mode 100644
index 00000000..facda7a6
--- /dev/null
+++ b/SGGL/FineUIPro.Web/Check/HSE/CheckProblemEdit.aspx
@@ -0,0 +1,193 @@
+<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="CheckProblemEdit.aspx.cs" Inherits="FineUIPro.Web.Check.HSE.CheckProblemEdit" %>
+
+
+
+
+
+ 安全不符合项清单
+
+
+
+
+
+ <%----%>
+
+
diff --git a/SGGL/FineUIPro.Web/Check/HSE/CheckProblemEdit.aspx.cs b/SGGL/FineUIPro.Web/Check/HSE/CheckProblemEdit.aspx.cs
new file mode 100644
index 00000000..254e8242
--- /dev/null
+++ b/SGGL/FineUIPro.Web/Check/HSE/CheckProblemEdit.aspx.cs
@@ -0,0 +1,387 @@
+using BLL;
+using Model;
+using System;
+
+namespace FineUIPro.Web.Check.HSE
+{
+ public partial class CheckProblemEdit : PageBase
+ {
+ #region 公共字段
+ ///
+ /// 主键
+ ///
+ public string CheckId
+ {
+ get
+ {
+ return (string)ViewState["CheckId"];
+ }
+ set
+ {
+ ViewState["CheckId"] = value;
+ }
+ }
+
+ #endregion
+
+ ///
+ /// 图片是否可以编辑 -1查看 0编辑
+ ///
+ public int QuestionImg
+ {
+ get
+ {
+ return Convert.ToInt32(ViewState["QuestionImg"]);
+ }
+ set
+ {
+ ViewState["QuestionImg"] = value;
+ }
+ }
+
+ ///
+ /// 页面初始化加载
+ ///
+ ///
+ ///
+ protected void Page_Load(object sender, EventArgs e)
+ {
+ if (!IsPostBack)
+ {
+ CheckId = Request.Params["CheckId"];
+ this.InitDropDownList();
+
+ var model = CheckProblemSafetyService.GetCheckProblemById(this.CheckId);
+ if (model != null)
+ {
+ this.drpUnit.SelectedValue = model.UnitId;
+ BLL.ProjectService.InitProjectDropDownList(this.drpProject, model.UnitId, true);
+ if (!string.IsNullOrWhiteSpace(model.ProjectId))
+ {
+ this.drpProject.SelectedValue = model.ProjectId;
+ }
+ else if (!string.IsNullOrWhiteSpace(model.ProjectName))
+ {
+ this.drpProject.Text = model.ProjectName;
+ }
+ this.drpClassify.SelectedValue = model.ClassifyId;
+ BLL.SafetyProblemClassifyItemService.InitClassifyItemDownList(this.drpClassifyItem, model.ClassifyId, true);
+ if (!string.IsNullOrWhiteSpace(model.ClassifyItemId))
+ {
+ this.drpClassifyItem.SelectedValue = model.ClassifyItemId;
+ }
+ this.drpNature.SelectedValue = model.NatureId;
+ BLL.SafetyProblemNatureItemService.InitNatureItemDownList(this.drpNatureItem, model.NatureId, true);
+ if (!string.IsNullOrWhiteSpace(model.NatureItemId))
+ {
+ this.drpNatureItem.SelectedValue = model.NatureItemId;
+ }
+ this.txtAddress.Text = model.Address;
+ this.rblUnitType.SelectedValue = model.UnitType;
+ this.txtAssemblyName.Text = model.AssemblyName;
+ this.txtDescription.Text = model.Description;
+ this.txtRemark.Text = model.Remark;
+ this.txtCheckTeamUser.Text = model.CheckTeamUser;
+ //if (!string.IsNullOrWhiteSpace(model.CheckUserId))
+ //{
+ // this.drpCheckUser.SelectedValue = model.CheckUserId;
+ //}
+ if (!string.IsNullOrWhiteSpace(model.RectificationUserId))
+ {
+ this.drpRectificationUser.SelectedValue = model.RectificationUserId;
+ }
+ if (!string.IsNullOrWhiteSpace(model.PMUserId))
+ {
+ this.drpPMUser.SelectedValue = model.PMUserId;
+ }
+ this.txtCompileManName.Text = model.CompileManName;
+ if (model.CheckDate != null)
+ {
+ this.txtCheckDate.Text = string.Format("{0:yyyy-MM-dd}", model.CheckDate);
+ }
+ if (model.LimitDate != null)
+ {
+ this.txtLimitDate.Text = string.Format("{0:yyyy-MM-dd}", model.LimitDate);
+ }
+ if (model.CloseTime != null)
+ {
+ this.txtCloseTime.Text = string.Format("{0:yyyy-MM-dd}", model.CloseTime);
+ }
+ if (model.CompileDate != null)
+ {
+ this.txtCompileDate.Text = string.Format("{0:yyyy-MM-dd}", model.CompileDate);
+ }
+ }
+ else
+ {
+ this.txtCompileManName.Text = this.CurrUser.UserName;
+ this.txtCompileDate.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now);
+ }
+ }
+ }
+
+ #region 下拉数据加载
+
+ ///
+ /// 初始化下拉框
+ ///
+ private void InitDropDownList()
+ {
+ //受检单位
+ UnitService.InitBranchUnitDropDownList(this.drpUnit, false);
+ //受检项目
+ ProjectService.InitProjectDropDownList(this.drpProject, true);
+ //问题分类
+ SafetyProblemClassifyService.InitClassifyDropDownList(this.drpClassify, false);
+ //问题性质
+ SafetyProblemNatureService.InitNatureDropDownList(this.drpNature, false);
+ }
+
+ ///
+ /// 受检单位下拉触发事件
+ ///
+ ///
+ ///
+ protected void drpUnit_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ //this.drpProject.Items.Clear();
+ ////受检项目
+ //BLL.ProjectService.InitProjectDropDownList(this.drpProject, this.drpUnit.SelectedValue, true);
+
+ this.drpRectificationUser.Items.Clear();
+ BLL.UserService.InitUserUnitIdDropDownList(this.drpRectificationUser, this.drpUnit.SelectedValue, true);
+ this.drpPMUser.Items.Clear();
+ BLL.UserService.InitUserUnitIdDropDownList(this.drpPMUser, this.drpUnit.SelectedValue, true);
+ }
+
+ ///
+ /// 受检项目下拉触发事件
+ ///
+ ///
+ ///
+ protected void drpProject_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ string proId = this.drpProject.SelectedValue;
+ if (!string.IsNullOrWhiteSpace(proId) && proId != Const._Null)
+ {
+ var pro = BLL.ProjectService.GetProjectByProjectId(proId);
+ if (pro != null)
+ {
+ this.txtAddress.Text = pro.ProjectAddress;
+ this.drpPMUser.Items.Clear();
+ BLL.UserService.InitUserDropDownList(this.drpPMUser, proId, true);
+ }
+ }
+ }
+
+ ///
+ /// 问题分类下拉触发事件
+ ///
+ ///
+ ///
+ protected void drpClassify_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ if (!string.IsNullOrWhiteSpace(this.drpClassify.SelectedValue))
+ {
+ this.drpClassifyItem.Items.Clear();
+ BLL.SafetyProblemClassifyItemService.InitClassifyItemDownList(this.drpClassifyItem, this.drpClassify.SelectedValue, true);
+ }
+ }
+ ///
+ /// 问题性质下拉触发事件
+ ///
+ ///
+ ///
+ protected void drpNature_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ if (!string.IsNullOrWhiteSpace(this.drpNature.SelectedValue))
+ {
+ this.drpNatureItem.Items.Clear();
+ BLL.SafetyProblemNatureItemService.InitNatureItemDownList(this.drpNatureItem, this.drpNature.SelectedValue, true);
+ }
+ }
+
+ #endregion
+
+
+ #region 附件上传
+ ///
+ /// 上传附件
+ ///
+ ///
+ ///
+ protected void btnAttach_Click(object sender, EventArgs e)
+ {
+ PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?toKeyId={0}&path=FileUpload/CheckProblemSafety&menuId={1}", this.CheckId, BLL.Const.SafetyCheckProblemMenuId)));
+ }
+ #endregion
+
+
+
+ //protected void imgBtnFile_Click(object sender, EventArgs e)
+ //{
+ // PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/CheckProblemSafety&menuId={2}", QuestionImg, this.hdCheckControlCode.Text, BLL.Const.SafetyCheckProblemMenuId)));
+ //}
+
+ ///
+ /// 保存
+ ///
+ ///
+ ///
+ protected void btnSave_Click(object sender, EventArgs e)
+ {
+ //if (this.drpUnit.SelectedValue == BLL.Const._Null)
+ //{
+ // Alert.ShowInTop("请选择受检单位!", MessageBoxIcon.Warning);
+ // return;
+ //}
+ //if (string.IsNullOrWhiteSpace(this.drpClassify.SelectedValue) || this.drpClassify.SelectedValue == BLL.Const._Null)
+ //{
+ // Alert.ShowInTop("请选择问题分类!", MessageBoxIcon.Warning);
+ // return;
+ //}
+ //if (string.IsNullOrWhiteSpace(this.drpNature.SelectedValue) || this.drpNature.SelectedValue == BLL.Const._Null)
+ //{
+ // Alert.ShowInTop("请选择问题性质!", MessageBoxIcon.Warning);
+ // return;
+ //}
+ //if (string.IsNullOrWhiteSpace(this.txtDescription.Text.Trim()))
+ //{
+ // Alert.ShowInTop("请填写问题描述!", MessageBoxIcon.Warning);
+ // return;
+ //}
+ //if (string.IsNullOrWhiteSpace(this.txtCheckTeamUser.Text.Trim()))
+ //{
+ // Alert.ShowInTop("请填写检查组/检查人!", MessageBoxIcon.Warning);
+ // return;
+ //}
+ //if (string.IsNullOrWhiteSpace(this.drpRectificationUser.SelectedValue) || this.drpRectificationUser.SelectedValue == BLL.Const._Null)
+ //{
+ // Alert.ShowInTop("请选择整改人!", MessageBoxIcon.Warning);
+ // return;
+ //}
+ //if (string.IsNullOrWhiteSpace(this.drpPMUser.SelectedValue) || this.drpPMUser.SelectedValue == BLL.Const._Null)
+ //{
+ // Alert.ShowInTop("请选择项目经理!", MessageBoxIcon.Warning);
+ // return;
+ //}
+ //if (string.IsNullOrWhiteSpace(this.txtCheckDate.Text.Trim()))
+ //{
+ // Alert.ShowInTop("请选择检查日期!", MessageBoxIcon.Warning);
+ // return;
+ //}
+ //if (string.IsNullOrWhiteSpace(this.txtLimitDate.Text.Trim()))
+ //{
+ // Alert.ShowInTop("请选择整改期限!", MessageBoxIcon.Warning);
+ // return;
+ //}
+ SaveData();
+
+ ShowNotify("保存成功!", MessageBoxIcon.Success);
+ PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
+ }
+
+ /////
+ ///// 提交
+ /////
+ /////
+ /////
+ //protected void btnSubmit_Click(object sender, EventArgs e)
+ //{
+ // if (BLL.CommonService.GetAllButtonPowerList(CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.SafetyCheckProblemMenuId, BLL.Const.BtnSubmit))
+ // {
+
+ // if (string.IsNullOrEmpty(Request.Params["Main"]))
+ // {
+ // PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
+ // }
+ // else
+ // {
+ // PageContext.RegisterStartupScript(String.Format("window.close();"));
+ // }
+ // }
+ // else
+ // {
+ // Alert.ShowInTop("您没有这个权限,请与管理员联系!", MessageBoxIcon.Warning);
+ // }
+ //}
+
+ ///
+ /// 保存数据
+ ///
+ protected void SaveData()
+ {
+ CheckProblem_Safety model = new CheckProblem_Safety();
+ model.UnitId = this.drpUnit.SelectedValue;
+ model.UnitName = this.drpUnit.SelectedText;
+ string proId = this.drpProject.SelectedValue;
+ if (!string.IsNullOrWhiteSpace(proId) && proId != Const._Null)
+ {
+ model.ProjectId = this.drpProject.SelectedValue;
+ model.ProjectName = this.drpProject.SelectedText;
+ }
+ //else
+ //{
+ // model.ProjectName = this.drpUnit.SelectedText;
+ //}
+ model.Address = this.txtAddress.Text.Trim();
+ model.Description = this.txtDescription.Text.Trim();
+ model.UnitType = this.rblUnitType.SelectedValue;
+ model.AssemblyName = this.txtAssemblyName.Text.Trim();
+ model.CheckTeamUser = this.txtCheckTeamUser.Text.Trim();
+ model.CheckDate = Funs.GetNewDateTimeOrNow(this.txtCheckDate.Text.Trim());
+ model.LimitDate = Funs.GetNewDateTime(this.txtLimitDate.Text.Trim());
+ if (!string.IsNullOrWhiteSpace(this.txtCloseTime.Text.Trim()))
+ {
+ model.CloseTime = Funs.GetNewDateTime(this.txtCloseTime.Text.Trim());
+ model.State = (int)CheckProblemSafetyService.StateInt.已闭环;
+ }
+ else
+ {
+ model.State = (int)CheckProblemSafetyService.StateInt.整改中;
+ }
+ model.RectificationUserId = this.drpRectificationUser.SelectedValue;
+ model.RectificationUserName = this.drpRectificationUser.SelectedText;
+ model.PMUserId = this.drpPMUser.SelectedValue;
+ model.PMUserName = this.drpPMUser.SelectedText;
+ model.ClassifyId = this.drpClassify.SelectedValue;
+ string classifyItemId = this.drpClassifyItem.SelectedValue;
+ if (!string.IsNullOrWhiteSpace(classifyItemId) && classifyItemId != Const._Null)
+ {
+ model.ClassifyItemId = classifyItemId;
+ }
+ model.NatureId = this.drpNature.SelectedValue;
+ string natureItemId = this.drpNatureItem.SelectedValue;
+ if (!string.IsNullOrWhiteSpace(natureItemId) && natureItemId != Const._Null)
+ {
+ model.NatureItemId = natureItemId;
+ }
+ model.Remark = this.txtRemark.Text.Trim();
+ if (string.IsNullOrWhiteSpace(this.CheckId))
+ {
+ //新增
+ model.CheckId = SQLHelper.GetNewID(typeof(CheckProblem_Safety));
+ this.CheckId = model.CheckId;
+ model.CompileMan = this.CurrUser.UserId;
+ model.CompileManName = this.CurrUser.UserName;
+ model.CompileDate = DateTime.Now;
+ BLL.CheckProblemSafetyService.AddCheckProblem(model);
+
+ ////增加一条编码记录
+ //BLL.CodeRecordsService.InsertCodeRecordsByMenuIdProjectIdUnitId(BLL.Const.SafetyCheckProblemMenuId, model.ProjectId, null, model.CheckId, model.CheckDate);
+ }
+ else
+ {
+ //更新
+ model.CheckId = this.CheckId;
+ BLL.CheckProblemSafetyService.UpdateCheckProblem(model);
+ }
+ }
+
+
+ protected void WindowAtt_Close(object sender, WindowCloseEventArgs e)
+ {
+
+ }
+ }
+}
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/Check/HSE/CheckProblemEdit.aspx.designer.cs b/SGGL/FineUIPro.Web/Check/HSE/CheckProblemEdit.aspx.designer.cs
new file mode 100644
index 00000000..8103f4e9
--- /dev/null
+++ b/SGGL/FineUIPro.Web/Check/HSE/CheckProblemEdit.aspx.designer.cs
@@ -0,0 +1,314 @@
+//------------------------------------------------------------------------------
+// <自动生成>
+// 此代码由工具生成。
+//
+// 对此文件的更改可能导致不正确的行为,如果
+// 重新生成代码,则所做更改将丢失。
+// 自动生成>
+//------------------------------------------------------------------------------
+
+namespace FineUIPro.Web.Check.HSE
+{
+
+
+ public partial class CheckProblemEdit
+ {
+
+ ///
+ /// form1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::System.Web.UI.HtmlControls.HtmlForm form1;
+
+ ///
+ /// PageManager1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.PageManager PageManager1;
+
+ ///
+ /// SimpleForm1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Form SimpleForm1;
+
+ ///
+ /// drpUnit 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList drpUnit;
+
+ ///
+ /// drpProject 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList drpProject;
+
+ ///
+ /// rblUnitType 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.RadioButtonList rblUnitType;
+
+ ///
+ /// txtAddress 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtAddress;
+
+ ///
+ /// txtAssemblyName 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtAssemblyName;
+
+ ///
+ /// drpClassify 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList drpClassify;
+
+ ///
+ /// drpClassifyItem 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList drpClassifyItem;
+
+ ///
+ /// drpNature 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList drpNature;
+
+ ///
+ /// drpNatureItem 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList drpNatureItem;
+
+ ///
+ /// txtDescription 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextArea txtDescription;
+
+ ///
+ /// txtCheckTeamUser 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtCheckTeamUser;
+
+ ///
+ /// txtCheckDate 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DatePicker txtCheckDate;
+
+ ///
+ /// drpRectificationUser 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList drpRectificationUser;
+
+ ///
+ /// txtLimitDate 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DatePicker txtLimitDate;
+
+ ///
+ /// drpPMUser 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList drpPMUser;
+
+ ///
+ /// txtCloseTime 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DatePicker txtCloseTime;
+
+ ///
+ /// txtCompileManName 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtCompileManName;
+
+ ///
+ /// txtCompileDate 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DatePicker txtCompileDate;
+
+ ///
+ /// txtRemark 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextArea txtRemark;
+
+ ///
+ /// Toolbar1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Toolbar Toolbar1;
+
+ ///
+ /// btnAttach 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnAttach;
+
+ ///
+ /// ToolbarFill1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.ToolbarFill ToolbarFill1;
+
+ ///
+ /// btnSave 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnSave;
+
+ ///
+ /// hdId 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.HiddenField hdId;
+
+ ///
+ /// hdAttachUrl 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.HiddenField hdAttachUrl;
+
+ ///
+ /// Window1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Window Window1;
+
+ ///
+ /// WindowAtt 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Window WindowAtt;
+
+ ///
+ /// Menu1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Menu Menu1;
+
+ ///
+ /// btnMenuEdit 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.MenuButton btnMenuEdit;
+
+ ///
+ /// btnMenuDelete 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.MenuButton btnMenuDelete;
+ }
+}
diff --git a/SGGL/FineUIPro.Web/Check/HSE/CheckProblemIn.aspx b/SGGL/FineUIPro.Web/Check/HSE/CheckProblemIn.aspx
new file mode 100644
index 00000000..84559e9c
--- /dev/null
+++ b/SGGL/FineUIPro.Web/Check/HSE/CheckProblemIn.aspx
@@ -0,0 +1,73 @@
+<%@ Page Language="C#" CodeBehind="CheckProblemIn.aspx.cs" Inherits="FineUIPro.Web.Check.HSE.CheckProblemIn" %>
+
+
+
+
+
+
+
+ 导入
+
+
+
+
+
diff --git a/SGGL/FineUIPro.Web/Check/HSE/CheckProblemIn.aspx.cs b/SGGL/FineUIPro.Web/Check/HSE/CheckProblemIn.aspx.cs
new file mode 100644
index 00000000..c3d16867
--- /dev/null
+++ b/SGGL/FineUIPro.Web/Check/HSE/CheckProblemIn.aspx.cs
@@ -0,0 +1,716 @@
+using BLL;
+using Model;
+using System;
+using System.Collections.Generic;
+using System.Configuration;
+using System.Data;
+using System.IO;
+using System.Linq;
+
+namespace FineUIPro.Web.Check.HSE
+{
+ public partial class CheckProblemIn : PageBase
+ {
+ #region 定义变量
+
+ ///
+ /// 上传预设的虚拟路径
+ ///
+ private string initPath = Const.ExcelUrl;
+
+
+ ///
+ /// 错误集合
+ ///
+ public static List errorInfos = new List();
+ ///
+ /// 问题分类
+ ///
+ public static List classifys = new List();
+ ///
+ /// 问题分类明细
+ ///
+ public static List classifyItems = new List();
+ ///
+ /// 问题性质
+ ///
+ public static List natures = new List();
+ ///
+ /// 问题性质明细
+ ///
+ public static List natureItems = new List();
+
+ /////
+ ///// 项目id
+ /////
+ //public string ProjectId
+ //{
+ // get
+ // {
+ // return (string)ViewState["ProjectId"];
+ // }
+ // set
+ // {
+ // ViewState["ProjectId"] = value;
+ // }
+ //}
+ /////
+ ///// 单位id
+ /////
+ //public string UnitId
+ //{
+ // get
+ // {
+ // return (string)ViewState["UnitId"];
+ // }
+ // set
+ // {
+ // ViewState["UnitId"] = value;
+ // }
+ //}
+
+ ///
+ /// 操作人
+ ///
+ public string CompileMan
+ {
+ get
+ {
+ return (string)ViewState["CompileMan"];
+ }
+ set
+ {
+ ViewState["CompileMan"] = value;
+ }
+ }
+ public string CompileManName
+ {
+ get
+ {
+ return (string)ViewState["CompileManName"];
+ }
+ set
+ {
+ ViewState["CompileManName"] = value;
+ }
+ }
+
+ ///
+ /// 导入表格列数
+ ///
+ public static int Cols = 17;
+
+ ///
+ /// 单位类型
+ ///
+ public static List validUnitTypeStrings = new List { "承包商", "项目部" };
+ ///
+ /// 在岗用户
+ ///
+ public static List users = new List();
+
+ #endregion
+
+ protected void Page_Load(object sender, EventArgs e)
+ {
+ if (!IsPostBack)
+ {
+ //users = BLL.ProjectUserService.GetProjectUserByProjectId(this.ProjectId,null,null);
+ //获取所有在岗用户
+ users = BLL.UserService.GetProjectUserListByProjectId(null);
+
+ classifys = SafetyProblemClassifyService.GetClassify();
+ classifyItems = SafetyProblemClassifyItemService.GetClassifyItemList("");
+ natures = SafetyProblemNatureService.GetNature();
+ natureItems = SafetyProblemNatureItemService.GetNatureItemList("");
+
+ this.CompileMan = this.CurrUser.UserId;
+ this.CompileManName = this.CurrUser.UserName;
+ this.hdFileName.Text = string.Empty;
+ if (errorInfos != null)
+ {
+ errorInfos.Clear();
+ }
+
+ //if (this.CurrUser.UserId == Const.AdminId)
+ //{
+ // this.btnFastImport.Hidden = false;
+ //}
+ }
+ }
+
+ #region 下载模板
+
+ ///
+ /// 下载模板按钮
+ ///
+ ///
+ ///
+ protected void btnDownLoad_Click(object sender, EventArgs e)
+ {
+ //这里要注意了,如果传过来的没有记录
+ PageContext.RegisterStartupScript(Confirm.GetShowReference("确定下载导入模板吗?", String.Empty,
+ MessageBoxIcon.Question, PageManager1.GetCustomEventReference(false, "Confirm_OK"),
+ PageManager1.GetCustomEventReference("Confirm_Cancel")));
+ }
+
+ ///
+ /// 下载导入模板
+ ///
+ ///
+ ///
+ protected void PageManager1_CustomEvent(object sender, CustomEventArgs e)
+ {
+ if (e.EventArgument == "Confirm_OK")
+ {
+ string rootPath = Server.MapPath("~/");
+ string uploadfilepath = rootPath + Const.CheckProblemSafetyDataInTemplateUrl;
+ string filePath = Const.CheckProblemSafetyDataInTemplateUrl;
+ string fileName = Path.GetFileName(filePath);
+ FileInfo info = new FileInfo(uploadfilepath);
+ long fileSize = info.Length;
+ Response.ClearContent();
+ Response.AddHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));
+ Response.ContentType = "excel/plain";
+ Response.ContentEncoding = System.Text.Encoding.UTF8;
+ Response.AddHeader("Content-Length", fileSize.ToString().Trim());
+ Response.TransmitFile(uploadfilepath, 0, fileSize);
+ Response.End();
+ }
+ }
+
+ #endregion
+
+ #region 审核
+ ///
+ /// 审核
+ ///
+ ///
+ ///
+ protected void btnAudit_Click(object sender, EventArgs e)
+ {
+ try
+ {
+ if (this.fuAttachUrl.HasFile == false)
+ {
+ ShowNotify("请您选择Excel文件!", MessageBoxIcon.Warning);
+ return;
+ }
+ string IsXls = Path.GetExtension(this.fuAttachUrl.FileName).ToString().Trim().ToLower();
+ if (IsXls != ".xls" && IsXls != ".xlsx")
+ {
+ ShowNotify("只可以选择Excel文件!", MessageBoxIcon.Warning);
+ return;
+ }
+ if (errorInfos != null)
+ {
+ errorInfos.Clear();
+ }
+ string rootPath = Server.MapPath("~/");
+ string initFullPath = rootPath + initPath;
+ if (!Directory.Exists(initFullPath))
+ {
+ Directory.CreateDirectory(initFullPath);
+ }
+
+ this.hdFileName.Text = BLL.Funs.GetNewFileName() + IsXls;
+ string filePath = initFullPath + this.hdFileName.Text;
+ this.fuAttachUrl.PostedFile.SaveAs(filePath);
+ AuditExcelAndShowResult(filePath);
+ }
+ catch (Exception ex)
+ {
+ ShowNotify("'" + ex.Message + "'", MessageBoxIcon.Warning);
+ }
+ }
+
+ ///
+ /// 审核Excel并展示校验结果
+ ///
+ private void AuditExcelAndShowResult(string fileName)
+ {
+ try
+ {
+ string msg = string.Empty;
+ var dt = BLL.Common.NPOIHelper.ExcelToDataSet(fileName, out msg, true);
+ if (dt != null)
+ {
+ //string rootPath = Server.MapPath("~/");
+ //var localPath = ConfigurationManager.AppSettings["localRoot"];
+ //imgDic = NPOIHelper.ExtractDispimgImagesFromXml(rootPath + initPath + this.hdFileName.Text, localPath + "FileUpload/CheckSpecial");
+ ValidateExcelData(dt.Tables[0], false);
+ hdCheckResult.Text = "1";
+ }
+ }
+ catch (Exception exc)
+ {
+ BLL.ErrLogInfo.WriteLog("", exc);
+ Response.Write(exc);
+ }
+ }
+
+ ///
+ /// 校验Excel数据(仅校验)
+ ///
+ ///
+ /// true:导入;false:审核
+ ///
+ private bool ValidateExcelData(DataTable pds, bool import)
+ {
+ int ic = pds.Columns.Count;
+ if (ic < Cols)
+ {
+ ShowNotify($"导入Excel格式错误!Excel只有{ic}列", MessageBoxIcon.Warning);
+ return false;
+ }
+ int ir = pds.Rows.Count;
+ if (pds == null || ir <= 0)
+ {
+ ShowNotify("导入数据为空!", MessageBoxIcon.Warning);
+ return false;
+ }
+ var errors = new List();
+ for (int i = 0; i < ir; i++)
+ {
+ var (error, _) = ValidateRowAndBuildEntity(pds.Rows[i], (i + 2).ToString(), import);
+ if (error.Any()) { errors.AddRange(error); }
+ }
+ errorInfos.Clear();
+ errorInfos.AddRange(errors);
+ this.gvErrorInfo.DataSource = errorInfos;
+ this.gvErrorInfo.DataBind();
+ if (errors.Count > 0)
+ {
+ ShowNotify("存在校验错误,请查看错误列表并修正后再次导入。", MessageBoxIcon.Warning);
+ return false;
+ }
+ ShowNotify("审核完成,请点击导入!", MessageBoxIcon.Success);
+ return true;
+ }
+
+
+ ///
+ /// 校验单行并生成实体(字段顺序与新模板一致)
+ ///
+ private (List lstError, Model.CheckProblem_Safety entity) ValidateRowAndBuildEntity(DataRow row, string displayRow, bool import)
+ {
+ List lstError = new List();
+ // 新模板字段顺序
+ string rData0 = row[0]?.ToString().Trim(); // 受检单位
+ string rData1 = row[1]?.ToString().Trim(); // 受检项目
+ string rData2 = row[2]?.ToString().Trim(); // 项目所在地(省市)
+ string rData3 = row[3]?.ToString().Trim(); // 不符合项描述
+ string rData4 = row[4]?.ToString().Trim(); // 单位类型
+ string rData5 = row[5]?.ToString().Trim(); // 机组名称
+ string rData6 = row[6]?.ToString().Trim(); // 提出人
+ string rData7 = row[7]?.ToString().Trim(); // 提出日期
+ string rData8 = row[8]?.ToString().Trim(); // 截止日期
+ string rData9 = row[9]?.ToString().Trim(); // 整改人
+ string rData10 = row[10]?.ToString().Trim(); // 闭合日期
+ string rData11 = row[11]?.ToString().Trim(); // 项目经理
+ string rData12 = row[12]?.ToString().Trim(); // 问题分类
+ string rData13 = row[13]?.ToString().Trim(); // 分类明细
+ string rData14 = row[14]?.ToString().Trim(); // 问题性质
+ string rData15 = row[15]?.ToString().Trim(); // 性质明细
+ string rData16 = row[16]?.ToString().Trim(); // 备注
+
+
+ string UnitId = string.Empty;
+ string UnitName = string.Empty;
+ string ProjectId = null;
+ string ProjectName = null;
+ int State = 1;
+ string Address = string.Empty;
+ string Description = string.Empty;
+ string UnitType = string.Empty;
+ string AssemblyName = string.Empty;
+ //string CheckUserId = string.Empty;
+ //string CheckUserName = string.Empty;
+ string CheckTeamUser = string.Empty;
+ DateTime CheckDate = DateTime.Now;
+ DateTime LimitDate = DateTime.Now;
+ DateTime? CloseTime = null;
+ string RectificationUserId = string.Empty;
+ string RectificationUserName = string.Empty;
+ string PMUserId = string.Empty;
+ string PMUserName = string.Empty;
+ string ClassifyId = string.Empty;
+ string ClassifyItemId = string.Empty;
+ string NatureId = string.Empty;
+ string NatureItemId = string.Empty;
+ string Remark = string.Empty;
+
+ // 校验并转换
+ if (!string.IsNullOrWhiteSpace(rData0))
+ {
+ var unit = BLL.UnitService.getUnitByUnitName(rData0);
+ if (unit != null)
+ {
+ UnitId = unit.UnitId;
+ UnitName = unit.UnitName;
+ }
+ else
+ {
+ lstError.Add(new ErrorInfo { Row = displayRow, Column = "受检单位", Reason = $"未找到单位:{rData0};请确认单位名称是否有误!" });
+ }
+ }
+ else
+ {
+ lstError.Add(new ErrorInfo { Row = displayRow, Column = "受检单位", Reason = "受检单位必填" });
+ }
+ if (!string.IsNullOrWhiteSpace(rData1))
+ {
+ var project = BLL.ProjectService.GetProjectByProjectName(rData1);
+ if (project != null)
+ {
+ ProjectId = project.ProjectId;
+ ProjectName = project.ProjectName;
+ }
+ else
+ {
+ lstError.Add(new ErrorInfo { Row = displayRow, Column = "受检项目", Reason = $"未找到项目:{rData1};请确认项目名称是否有误!" });
+ }
+ }
+ //else
+ //{
+ // lstError.Add(new ErrorInfo { Row = displayRow, Column = "受检项目", Reason = "受检项目必填" });
+ //}
+
+ if (!string.IsNullOrEmpty(rData2))
+ {
+ Address = rData2;
+ }
+ if (!string.IsNullOrEmpty(rData3))
+ {
+ Description = rData3;
+ }
+ else
+ {
+ lstError.Add(new ErrorInfo { Row = displayRow, Column = "不符合描述", Reason = "不符合描述必填!" });
+ }
+ if (!string.IsNullOrEmpty(rData4))
+ {
+ if (!validUnitTypeStrings.Any(x => x == rData4))
+ {
+ lstError.Add(new ErrorInfo { Row = displayRow, Column = "单位类型", Reason = "只能是[承包商/项目部]!" });
+ }
+ else
+ {
+ UnitType = rData4;
+ }
+ }
+ else
+ {
+ lstError.Add(new ErrorInfo { Row = displayRow, Column = "单位类型", Reason = "单位类型必选!" });
+ }
+ if (!string.IsNullOrEmpty(rData5))
+ {
+ AssemblyName = rData5;
+ }
+ //else
+ //{
+ // lstError.Add(new ErrorInfo { Row = displayRow, Column = "机组名称", Reason = "机组名称必填!" });
+ //}
+
+ if (!string.IsNullOrEmpty(rData6))
+ {
+ CheckTeamUser = rData6;
+ //var user = users.Where(x => x.UserName == rData6).FirstOrDefault();
+ //if (user != null)
+ //{
+ // CheckUserId = user.UserId;
+ // CheckUserName = rData6;
+ //}
+ //else
+ //{
+ // lstError.Add(new ErrorInfo { Row = displayRow, Column = "提出人", Reason = $"系统不存在人员[{rData6}]!" });
+ //}
+ }
+ else
+ {
+ lstError.Add(new ErrorInfo { Row = displayRow, Column = "提出人", Reason = "提出人必填!" });
+ }
+ if (!string.IsNullOrEmpty(rData7))
+ {
+ if (!DateTime.TryParse(rData7, out DateTime ct))
+ {
+ lstError.Add(new ErrorInfo { Row = displayRow, Column = "提出日期", Reason = "提出日期格式错误[正确格式:yyyy-MM-dd,2026-06-01]" });
+ }
+ else
+ {
+ CheckDate = ct;
+ }
+ }
+ else
+ {
+ lstError.Add(new ErrorInfo { Row = displayRow, Column = "提出日期", Reason = "不能为空" });
+ }
+ if (!string.IsNullOrEmpty(rData8))
+ {
+ if (!DateTime.TryParse(rData8, out DateTime ct))
+ {
+ lstError.Add(new ErrorInfo { Row = displayRow, Column = "截止日期", Reason = "截止日期格式错误[正确格式:yyyy-MM-dd,2026-06-01]" });
+ }
+ else
+ {
+ LimitDate = ct;
+ }
+ }
+ else
+ {
+ lstError.Add(new ErrorInfo { Row = displayRow, Column = "截止日期", Reason = "不能为空" });
+ }
+ if (!string.IsNullOrEmpty(rData9))
+ {
+ var user = users.Where(x => x.UserName == rData9).FirstOrDefault();
+ if (user != null)
+ {
+ RectificationUserId = user.UserId;
+ RectificationUserName = rData9;
+ }
+ else
+ {
+ lstError.Add(new ErrorInfo { Row = displayRow, Column = "整改人", Reason = $"系统不存在人员[{rData9}]!" });
+ }
+ }
+ else
+ {
+ lstError.Add(new ErrorInfo { Row = displayRow, Column = "整改人", Reason = "整改人必填!" });
+ }
+ if (!string.IsNullOrEmpty(rData10))
+ {
+ if (!DateTime.TryParse(rData10, out DateTime ct))
+ {
+ lstError.Add(new ErrorInfo { Row = displayRow, Column = "闭合日期", Reason = "闭合日期格式错误[正确格式:yyyy-MM-dd,2026-06-01]" });
+ }
+ else
+ {
+ CloseTime = ct;
+ State = (int)CheckProblemSafetyService.StateInt.已闭环;
+ }
+ }
+ //else
+ //{
+ // lstError.Add(new ErrorInfo { Row = displayRow, Column = "闭合日期", Reason = "不能为空" });
+ //}
+ if (!string.IsNullOrEmpty(rData11))
+ {
+ var user = users.Where(x => x.UserName == rData11).FirstOrDefault();
+ if (user != null)
+ {
+ PMUserId = user.UserId;
+ PMUserName = rData11;
+ }
+ else
+ {
+ lstError.Add(new ErrorInfo { Row = displayRow, Column = "项目经理", Reason = $"系统不存在人员[{rData11}]!" });
+ }
+ }
+ else
+ {
+ lstError.Add(new ErrorInfo { Row = displayRow, Column = "项目经理", Reason = "项目经理必填!" });
+ }
+ if (!string.IsNullOrEmpty(rData12))
+ {//问题分类
+ var classify = classifys.Where(x => x.ClassifyName == rData12).FirstOrDefault();
+ if (classify != null)
+ {
+ ClassifyId = classify.ClassifyId;
+ if (!string.IsNullOrEmpty(rData13))
+ {//问题分类明细
+ var classifyItem = classifyItems.Where(x => x.ClassifyItemName == rData13).FirstOrDefault();
+ if (classifyItem != null)
+ {
+ ClassifyItemId = classifyItem.ClassifyItemId;
+ }
+ else
+ {
+ lstError.Add(new ErrorInfo { Row = displayRow, Column = "问题分类明细", Reason = $"系统不存在问题分类明细[{rData13}],请检查名称是否正确!" });
+ }
+ }
+ }
+ else
+ {
+ lstError.Add(new ErrorInfo { Row = displayRow, Column = "问题分类", Reason = $"系统不存在问题分类[{rData12}],请检查名称是否正确!" });
+ }
+ }
+ else
+ {
+ lstError.Add(new ErrorInfo { Row = displayRow, Column = "问题分类", Reason = "问题分类必填!" });
+ }
+ if (!string.IsNullOrEmpty(rData14))
+ {//问题性质
+ var nature = natures.Where(x => x.NatureName == rData14).FirstOrDefault();
+ if (nature != null)
+ {
+ NatureId = nature.NatureId;
+ if (!string.IsNullOrEmpty(rData15))
+ {//问题性质明细
+ var natureItem = natureItems.Where(x => x.NatureItemContent == rData15).FirstOrDefault();
+ if (natureItem != null)
+ {
+ NatureItemId = natureItem.NatureItemId;
+ }
+ else
+ {
+ lstError.Add(new ErrorInfo { Row = displayRow, Column = "问题性质明细", Reason = $"系统不存在问题性质明细[{rData15}],请检查名称是否正确!" });
+ }
+ }
+ }
+ else
+ {
+ lstError.Add(new ErrorInfo { Row = displayRow, Column = "问题性质", Reason = $"系统不存在问题性质[{rData14}],请检查名称是否正确!" });
+ }
+ }
+ else
+ {
+ lstError.Add(new ErrorInfo { Row = displayRow, Column = "问题性质", Reason = "问题性质必填!" });
+ }
+ if (!string.IsNullOrEmpty(rData16))
+ {
+ Remark = rData16;
+ }
+ // 其余字段可根据实际业务映射到实体
+ var entity = new Model.CheckProblem_Safety
+ {
+ CheckId = SQLHelper.GetNewID(typeof(Model.CheckProblem_Safety)),
+ CompileDate = DateTime.Now,
+ CompileMan = this.CompileMan,
+ CompileManName = this.CompileManName,
+ UnitId = UnitId,
+ UnitName = UnitName,
+ ProjectId = ProjectId,
+ ProjectName = ProjectName,
+ State = State,//状态(0:已闭环,1:整改中)
+ Address = Address,
+ Description = Description,
+ UnitType = UnitType,
+ AssemblyName = AssemblyName,
+ CheckTeamUser = CheckTeamUser,
+ CheckDate = CheckDate,
+ LimitDate = LimitDate,
+ CloseTime = CloseTime,
+ RectificationUserId = RectificationUserId,
+ RectificationUserName = RectificationUserName,
+ PMUserId = PMUserId,
+ PMUserName = PMUserName,
+ ClassifyId = ClassifyId,
+ ClassifyItemId = ClassifyItemId,
+ NatureId = NatureId,
+ NatureItemId = NatureItemId,
+ Remark = Remark
+ };
+ return (lstError, entity);
+ }
+
+ #endregion
+
+ #region 导入
+
+ ///
+ /// 导入
+ ///
+ ///
+ ///
+ protected void btnImport_Click(object sender, EventArgs e)
+ {
+ if (hdCheckResult.Text == "1")
+ {
+ if (errorInfos.Count <= 0)
+ {
+ string rootPath = Server.MapPath("~/");
+ var localPath = ConfigurationManager.AppSettings["localRoot"];
+ //imgDic = NPOIHelper.ExtractDispimgImagesFromXml(rootPath + initPath + this.hdFileName.Text, localPath + "FileUpload/CheckSpecial");
+ ImportExcelToDatabase(rootPath + initPath + this.hdFileName.Text, true);
+
+ hdCheckResult.Text = string.Empty;
+ ShowNotify("导入成功!", MessageBoxIcon.Success);
+ PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
+ }
+ else
+ {
+ ShowNotify("请先将错误数据修正,再重新导入提交!", MessageBoxIcon.Warning);
+ }
+ }
+ else
+ {
+ ShowNotify("请先审核要导入的文件!", MessageBoxIcon.Warning);
+ }
+ }
+ ///
+ /// 导入Excel到数据库
+ ///
+ private void ImportExcelToDatabase(string fileName, bool import)
+ {
+ try
+ {
+ string msg = string.Empty;
+ var dt = BLL.Common.NPOIHelper.ExcelToDataSet(fileName, out msg, true);
+ BLL.ErrLogInfo.WriteLog(msg);
+ SaveExcelDataToDatabase(fileName, dt.Tables[0], import);
+ }
+ catch (Exception ex)
+ {
+ ErrLogInfo.WriteLog("", ex);
+ }
+ }
+
+ ///
+ /// 校验并保存数据到数据库
+ ///
+ private bool SaveExcelDataToDatabase(string fileName, DataTable pds, bool import)
+ {
+ int ic = pds.Columns.Count;
+ if (ic < Cols)
+ {
+ ShowNotify($"导入Excel格式错误!Excel只有{ic}列", MessageBoxIcon.Warning);
+ return false;
+ }
+ int ir = pds.Rows.Count;
+ if (pds == null || ir <= 0)
+ {
+ ShowNotify("导入数据为空!", MessageBoxIcon.Warning);
+ return false;
+ }
+ var errors = new List();
+ var toInsert = new List();
+
+ for (int i = 0; i < ir; i++)
+ {
+ var (error, entity) = ValidateRowAndBuildEntity(pds.Rows[i], (i + 2).ToString(), import);
+ if (error.Any())
+ errors.AddRange(error);
+ else
+ toInsert.Add(entity);
+ }
+ if (errors.Count > 0)
+ {
+ errorInfos.Clear();
+ errorInfos.AddRange(errors);
+ this.gvErrorInfo.DataSource = errorInfos;
+ this.gvErrorInfo.DataBind();
+ ShowNotify("存在校验错误,请先审核并修正后再导入。", MessageBoxIcon.Warning);
+ return false;
+ }
+ try
+ {
+ if (toInsert.Any())
+ {
+ Funs.DB.CheckProblem_Safety.InsertAllOnSubmit(toInsert);
+ Funs.DB.SubmitChanges();
+ }
+ ShowNotify($"成功导入 {toInsert.Count} 条记录。", MessageBoxIcon.Success);
+ PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
+ return true;
+ }
+ catch (Exception ex)
+ {
+ ErrLogInfo.WriteLog("导入 安全不符合项(CheckProblem_Safety) 失败", ex);
+ ShowNotify("导入失败:" + ex.Message, MessageBoxIcon.Error);
+ return false;
+ }
+ }
+
+ #endregion // 导入
+ }
+}
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/Check/HSE/CheckProblemIn.aspx.designer.cs b/SGGL/FineUIPro.Web/Check/HSE/CheckProblemIn.aspx.designer.cs
new file mode 100644
index 00000000..872722ff
--- /dev/null
+++ b/SGGL/FineUIPro.Web/Check/HSE/CheckProblemIn.aspx.designer.cs
@@ -0,0 +1,125 @@
+//------------------------------------------------------------------------------
+// <自动生成>
+// 此代码由工具生成。
+//
+// 对此文件的更改可能导致不正确的行为,如果
+// 重新生成代码,则所做更改将丢失。
+// 自动生成>
+//------------------------------------------------------------------------------
+
+namespace FineUIPro.Web.Check.HSE
+{
+
+
+ public partial class CheckProblemIn
+ {
+
+ ///
+ /// form1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::System.Web.UI.HtmlControls.HtmlForm form1;
+
+ ///
+ /// PageManager1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.PageManager PageManager1;
+
+ ///
+ /// SimpleForm1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Form SimpleForm1;
+
+ ///
+ /// Toolbar2 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Toolbar Toolbar2;
+
+ ///
+ /// hdFileName 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.HiddenField hdFileName;
+
+ ///
+ /// btnAudit 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnAudit;
+
+ ///
+ /// btnImport 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnImport;
+
+ ///
+ /// btnDownLoad 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnDownLoad;
+
+ ///
+ /// hdCheckResult 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.HiddenField hdCheckResult;
+
+ ///
+ /// fuAttachUrl 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.FileUpload fuAttachUrl;
+
+ ///
+ /// gvErrorInfo 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Grid gvErrorInfo;
+
+ ///
+ /// lblPageIndex 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::System.Web.UI.WebControls.Label lblPageIndex;
+ }
+}
diff --git a/SGGL/FineUIPro.Web/Check/HSE/CheckProblemView.aspx b/SGGL/FineUIPro.Web/Check/HSE/CheckProblemView.aspx
new file mode 100644
index 00000000..123b6d59
--- /dev/null
+++ b/SGGL/FineUIPro.Web/Check/HSE/CheckProblemView.aspx
@@ -0,0 +1,170 @@
+<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="CheckProblemView.aspx.cs" Inherits="FineUIPro.Web.Check.HSE.CheckProblemView" %>
+
+
+
+
+
+ 安全不符合项清单
+
+
+
+
+
+ <%----%>
+
+
diff --git a/SGGL/FineUIPro.Web/Check/HSE/CheckProblemView.aspx.cs b/SGGL/FineUIPro.Web/Check/HSE/CheckProblemView.aspx.cs
new file mode 100644
index 00000000..2135f532
--- /dev/null
+++ b/SGGL/FineUIPro.Web/Check/HSE/CheckProblemView.aspx.cs
@@ -0,0 +1,134 @@
+using BLL;
+using Model;
+using System;
+
+namespace FineUIPro.Web.Check.HSE
+{
+ public partial class CheckProblemView : PageBase
+ {
+ #region 公共字段
+ ///
+ /// 主键
+ ///
+ public string CheckId
+ {
+ get
+ {
+ return (string)ViewState["CheckId"];
+ }
+ set
+ {
+ ViewState["CheckId"] = value;
+ }
+ }
+
+ #endregion
+
+ ///
+ /// 图片是否可以编辑 -1查看 0编辑
+ ///
+ public int QuestionImg
+ {
+ get
+ {
+ return Convert.ToInt32(ViewState["QuestionImg"]);
+ }
+ set
+ {
+ ViewState["QuestionImg"] = value;
+ }
+ }
+
+ ///
+ /// 页面初始化加载
+ ///
+ ///
+ ///
+ protected void Page_Load(object sender, EventArgs e)
+ {
+ if (!IsPostBack)
+ {
+ CheckId = Request.Params["CheckId"];
+
+ var model = CheckProblemSafetyService.GetCheckProblemById(this.CheckId);
+ if (model != null)
+ {
+ this.txtUnitName.Text = model.UnitName;
+ this.txtProjectName.Text = model.ProjectName;
+ var classify = SafetyProblemClassifyService.GetClassifyById(model.ClassifyId);
+ if (classify != null)
+ {
+ this.txtClassifyName.Text = classify.ClassifyName;
+ }
+ var classifyItem = SafetyProblemClassifyItemService.GetClassifyItemById(model.ClassifyItemId);
+ if (classifyItem != null)
+ {
+ this.txtClassifyItemName.Text = classifyItem.ClassifyItemName;
+ }
+ var nature = SafetyProblemNatureService.GetNatureById(model.NatureId);
+ if (nature != null)
+ {
+ this.txtNatureName.Text = nature.NatureName;
+ }
+ var natureItem = SafetyProblemNatureItemService.GetNatureItemById(model.NatureItemId);
+ if (natureItem != null)
+ {
+ this.txtNatureItemContent.Text = natureItem.NatureItemContent;
+ }
+ this.txtAddress.Text = model.Address;
+ this.rblUnitType.SelectedValue = model.UnitType;
+ this.txtAssemblyName.Text = model.AssemblyName;
+ this.txtDescription.Text = model.Description;
+ this.txtRemark.Text = model.Remark;
+ this.txtCheckTeamUser.Text = model.CheckTeamUser;
+ this.txtRectificationUserName.Text = model.RectificationUserName;
+ this.txtPMUserName.Text = model.PMUserName;
+ this.txtCompileManName.Text = model.CompileManName;
+ if (model.CheckDate != null)
+ {
+ this.txtCheckDate.Text = string.Format("{0:yyyy-MM-dd}", model.CheckDate);
+ }
+ if (model.LimitDate != null)
+ {
+ this.txtLimitDate.Text = string.Format("{0:yyyy-MM-dd}", model.LimitDate);
+ }
+ if (model.CloseTime != null)
+ {
+ this.txtCloseTime.Text = string.Format("{0:yyyy-MM-dd}", model.CloseTime);
+ }
+ if (model.CompileDate != null)
+ {
+ this.txtCompileDate.Text = string.Format("{0:yyyy-MM-dd}", model.CompileDate);
+ }
+ }
+ }
+ }
+
+
+ #region 附件上传
+ ///
+ /// 上传附件
+ ///
+ ///
+ ///
+ protected void btnAttach_Click(object sender, EventArgs e)
+ {
+ PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type=-1&toKeyId={0}&path=FileUpload/CheckProblemSafety&menuId={1}", this.CheckId, BLL.Const.SafetyCheckProblemMenuId)));
+ }
+ #endregion
+
+
+
+ //protected void imgBtnFile_Click(object sender, EventArgs e)
+ //{
+ // PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type=-1&toKeyId={1}&path=FileUpload/CheckProblemSafety&menuId={2}", QuestionImg, this.hdCheckControlCode.Text, BLL.Const.SafetyCheckProblemMenuId)));
+ //}
+
+
+
+ protected void WindowAtt_Close(object sender, WindowCloseEventArgs e)
+ {
+
+ }
+ }
+}
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/Check/HSE/CheckProblemView.aspx.designer.cs b/SGGL/FineUIPro.Web/Check/HSE/CheckProblemView.aspx.designer.cs
new file mode 100644
index 00000000..b2bf3adf
--- /dev/null
+++ b/SGGL/FineUIPro.Web/Check/HSE/CheckProblemView.aspx.designer.cs
@@ -0,0 +1,278 @@
+//------------------------------------------------------------------------------
+// <自动生成>
+// 此代码由工具生成。
+//
+// 对此文件的更改可能导致不正确的行为,如果
+// 重新生成代码,则所做更改将丢失。
+// 自动生成>
+//------------------------------------------------------------------------------
+
+namespace FineUIPro.Web.Check.HSE
+{
+
+
+ public partial class CheckProblemView
+ {
+
+ ///
+ /// form1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::System.Web.UI.HtmlControls.HtmlForm form1;
+
+ ///
+ /// PageManager1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.PageManager PageManager1;
+
+ ///
+ /// SimpleForm1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Form SimpleForm1;
+
+ ///
+ /// txtUnitName 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtUnitName;
+
+ ///
+ /// rblUnitType 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.RadioButtonList rblUnitType;
+
+ ///
+ /// txtProjectName 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtProjectName;
+
+ ///
+ /// txtAddress 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtAddress;
+
+ ///
+ /// txtAssemblyName 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtAssemblyName;
+
+ ///
+ /// txtClassifyName 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtClassifyName;
+
+ ///
+ /// txtNatureName 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtNatureName;
+
+ ///
+ /// txtClassifyItemName 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextArea txtClassifyItemName;
+
+ ///
+ /// txtNatureItemContent 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextArea txtNatureItemContent;
+
+ ///
+ /// txtDescription 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextArea txtDescription;
+
+ ///
+ /// txtCheckTeamUser 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtCheckTeamUser;
+
+ ///
+ /// txtCheckDate 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DatePicker txtCheckDate;
+
+ ///
+ /// txtRectificationUserName 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtRectificationUserName;
+
+ ///
+ /// txtLimitDate 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DatePicker txtLimitDate;
+
+ ///
+ /// txtPMUserName 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtPMUserName;
+
+ ///
+ /// txtCloseTime 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DatePicker txtCloseTime;
+
+ ///
+ /// txtCompileManName 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtCompileManName;
+
+ ///
+ /// txtCompileDate 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DatePicker txtCompileDate;
+
+ ///
+ /// txtRemark 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextArea txtRemark;
+
+ ///
+ /// Toolbar1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Toolbar Toolbar1;
+
+ ///
+ /// btnAttach 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnAttach;
+
+ ///
+ /// ToolbarFill1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.ToolbarFill ToolbarFill1;
+
+ ///
+ /// hdId 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.HiddenField hdId;
+
+ ///
+ /// hdAttachUrl 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.HiddenField hdAttachUrl;
+
+ ///
+ /// Window1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Window Window1;
+
+ ///
+ /// WindowAtt 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Window WindowAtt;
+ }
+}
diff --git a/SGGL/FineUIPro.Web/File/Excel/DataIn/安全不符合项清单导入模板.xlsx b/SGGL/FineUIPro.Web/File/Excel/DataIn/安全不符合项清单导入模板.xlsx
new file mode 100644
index 0000000000000000000000000000000000000000..c01013894f22a73eb40089e6f9b42562a163c0c0
GIT binary patch
literal 24396
zcmZ^KV|ZrIvTtnLw(W_niEZ1qZQFJxwryu(PmGCulmEWwJZJBF&-(JNUR7OPUB9aC
zwW|7+lL7{T0{Ff{W%u~MfB)-({JJr+HI#F(wR5DG`(i`+dI0ec+Z`O-yeA+4Kp_wS
z0K)%d)3>vubF;R}PUw&XVMGb>>~n=Uac#J)7-eE6(y5EzG-!%VXU0mC5JU>qrp6Y5
z?vsVa2Bi;%2*@Mqj;`#m)i)7!>eSPBP57Mg?RE@f-;^;(3SiTM!jDz9#PHW+Ixv_T
znaBugSeYCP17i$oY6Ia{tEBMhk)5|mjQ>!*xgglxJj
zTM3IIn%0y36%7(Zdaq%fz`qgzL0DB5%dbVkrue!&EB7mErpn1<91wgfN`cXIv7IuI
zbh?p+>6cme1c7J+lf0~YG$7)l!(zosw0t3#O7^w*bAAg1i>7p@gEbI+(-cZtG8Sg{
ziHhQgSu)nB#tTPrhN8aq*`x~2UoMs5(>!0-hc_o4j<&n7g~*Oh8qEn-e0Z$3K2+Uk
zb^gBHpxPi@8$*WbGMT1#&{lb{X-udM*TJ){kB7tC_m8tB_fI`nx4&{G?|FE5I`BVZ
zUplyJ*<*b%beieFTKGz*9{;rV#3#&bqjm!RJ5Z2RejTb`K#GPHFt{zl3>
zp-*yv0b}GU;7ZQnDxu2C?3hdL_n5z)$PHS8t!BN95Ynd0ZB=MjQ1<|y88H4pgF6zm
zjPUv1Xi8R$RDW0=33akNfT^qn7(;3kIlJ{6*uwz{bEwO=(sYBVA>>@3OQiV`P!77b
z{Z^omcG3b|g$T6rTp1nUqTVfLur9}L~?WmQ;ahF)#+go}|=%X_r_z-kLG&K8?<@*iXT
zIy8w>FWwD4n>Dw{2RatYp+i-B-{Uv0uMyGoA4J3L0>2!{~HRb56dV>Sd=(#P&e`uC(V5#
z@Pqaj;+;`xbLPI8)4~(5Pve?^s|=7%1Oa^n04N)sgiXijl+|8*a5PbnUC3=j)r6{E
zbm<6&S|^_L*~%k3*t)cmsp1N|CK>EYUh4Z(QKK{?RNaNa$mDF_R|FY6DM#)8-i>A3
z`h7&T{Sih^)&SKYBI2<3Du73*u*3AXUNyv$F9J{djb89Wouby0>%NIC(uw`vD&_1A
zrE4T(;1RQT0etE#vHKs_|Nk##z+Xmpv-*!k3}aymc=ZdFUa)^HVqXk~w$|3hHcpO=
z-;iu3%}8zVql{byf57WQbuCG(5nW^qt_$Y#@f_nbOvRWGrmLF_4?U1HVmBYt394(;
zD&6H#9~aCIoSyn7N@OH{3Yuo0qZNbp%@6b=9KCL3+LGn+VS
zk>=5$N(2R;oI=a(1OP)1OOoS}!0z_P>~87!!bG?P&<&FW6uf-q5cUdC
zVUSOE9~UG^GJ=j%#SkUEG^FVV;ANeXz$jn>tcgYo{)vfivtjhkp&gsB!2Fx9C4V|5
z0g$Xw(l_+BlPg>I#5p}Oo&h7rm46N>q}g5B!LMA0@;ZUaz+$Rw#PfLVtx#UXA6N&7
zR4pDUzv;YYFjW^^U`8xzpU3KlCvRBa+3ntNGBlggmYrVC>-K~ve`_!GsNxfY{
zXYpFqV=6_^4!_NYQeoB4ie5(wYyGg$CZD$qUXQ>uq2D~4Ut&MSD&9@t8t{tAz1lW2VVjI
zk@|36y;iRrY0|RT+ionB)nP>j`wRWtE5r$whIkD4=;%F4CmSdtm9Qw322;j=-9Byh
z4L;9x)Bza{qA3$vC6sHe>C_}b(M;B*^3&E2n^PFzfxdHW?{8AF7)A!e*RSHB@EFX4}Ep4M|snVf}mkn?5
z;W@G897$}C44zPM=ZaocMxH%`a_>z~1yCwqa&`L4!vhD@gQTtAVn~%FNJ$Z;0B39IBG%3fFqW^NeT9y$RcuRI^?X;W?E0t)$ydr|})?_UW
z1V#ywyEAWvykg}yin(Csm25S3U|ykOnvmoO0XhUc)Zu~iABpyrevwEr0+ZTIMrt)*NshF(JF2TDHT6RP&HnB=7}q;Y58<8JC}KJ<>4
zV`Y5&8S1kG?{yhEz>IaXFVTZoss8s3ti^su+GfWAS;-wSHp`sVCNwi)%|P>x{r#DH
zYBB3E^ZMBgZotlN5Vsc|(fb@LfB*UX;P7^%pqt*~WY}T${SQd!Ae}9uOW}2p8k{EA
z=a}7SF3^phErR3pHi1tK^;0lE&jvrw-_TuR3_PCT-Q6t=yr4epf!e6uxgR0;u88no
z>}IwI@ZjXO2t7<;vFr%BPj7dK=r=Y!VXt>Rd>^3ydo;rRE5=-H9V{KqjE$ZCGae88
zos*8f;xYLvm@)nz-haCMvyLaLOvJ3Sp=_cb^FavCDHDe`o4%D@5Ts+0FBq+zP-{Dq
ztf7e_p(fx>RYjsu%v!6e8?Puosvla;6Zy^wMI_L;=aC^;DIByt;%#{fJA7QT$z)-Z
z8BI0>OLg`-tD*g+m}Y~1{FAE!PgX;WIz^Om9YwprO|}_2F~gUMuBA0WYdG#7DowXh
zt?)egXxwT{nT$819+J+APO0pMimiJTFgJ=(9L@(3V8~Z&f0Tk}vS;XZea{8=n-boY
zazg1uxGsq5I(3~RHMwQ|xbRIR08Pzu$TW7(oKx|YxDeRK90!W-S;L+1=X=81E>-DA
zW79MXkDb%cUkX$;uFt?6)Ag;D9N|mZ>NX-_<-4stVL?)ryR$NiKUgAk>v&8_k2A!`3FBu8ZdA7#S;rRab||$QYN${(HbM
zZI6Ak$mQ>1LB7v+@P;>91p9o%Fx?pKW|Ga{>5MZ!cHtOle%PG20UhZdg3XtG?qkUq
zXC8QR@W>tM4~Hd9-j|97e8QS08)CnFB5C2ymPR(hYov-RQVd62b^|J7(D>568|0PR
zm%wjzK`FL**h)iMuT&$H7=#{+oS}^kIYCQ5-QZP9mzLxNoL1uB$4uC22AlF{|2Mi(
zh%Q40PIN4yq;9#(*S<@yd)fN(lDoa#^|`JOw4U
z;cQ_Fbdy;P32}WeI1E$Aq1Cd-gPpw5)ul-N{EzRRD@l1|eGmWu(67Dve_0!tzTfep
zQ`c?w*$_gmpwGD>+I1(mIKT%Uh-48Od(qTTtRFSv%{9YFDv+#6ZMQKMkXVl()Ih>6
zbO&rhLUl>lw|U3=J0eP^jGOKUhUOoIlgET~vYS8ne0zMnue(%=mk4Q%NSi-O&E9Q0
z=zFZWes{K*5+;EMRcyYP7N0sJH2zjkGVh3MD%%;8XEUzYF?EDmYezg0V5f>C(4e~t
zV49-dMp&MzWjMG=Gu;z0NmWo9=f{#Sf;zRGao>b%j2)oAfsEGzZc#MHnhSSpJA*zwz>O*8{)S%PmjnV@hO2
zw%b#3d3#9yM`S^-o*Gsw)K-z#$Sfb6rf;~Ld>G810jb@6D(NTQ&d}t$-08q=LJ07
zkTncR>iEA*1@{<9{2C2ys(#D(pDu^))=}aOKeR`5LHZ}_3E_<(Bmk9!OZZcj^oIA@
zTtqW~ib~-@Fi!%=lkyWI=#2vB7s4PY1F--Bit->FHC!-79j?pNQ-Y4j9
zgv*oO65QR%xA%X9(w|l%JNQv(T(yuv*Nn%=c4}CnzL#zsTPtb9f{dqyFikXrK~cNQvvV@Q4Y$(>)qZKHex>76c
zXEJWrRAAaC=83f1H`ikR&E`y?ojVp4OSC1XQR3Xr`wts;VhZKLW@Z8=zK9w8N~VTr
ziT5k%GV6OeNami|4rOANqZ__RU@V#RSw@bzftJbStM~-Fv&PC@D6ZA`66P)M{9o9G
z_7YRL>GliHZ(>s0ubPwezy=($tHRY*6D~38ub!M76Z(I7BSPOtr{~81;dV&tjNSQV
zxHX1c;w&@6!kFmJ{)p!2LNDSt&z`kBaZucU%bhhO*3_daaz?)TkYBbAuHWecl&IIX
zPu!Zlcp~wZ&Q{uK(FJ6qWmm7UA%q*`GQTR
z>a$GBZ^$=NUr36Hz1quQ%)mhDp{2#Wy;j%I_1dbUM#LngchbF_G;7D=;@{rA#$J>>
zc5&jYT-eAb!3P$soU2?+csw>!e7x7v_e@1>-861=(Xe0CsH5;@8s5C#>VE!pvVq@@
zxsq`_orCDuFL2|_eu#blu)p83N*xJx**-U$u=HG|`+2uAp!wO#$1;KbG3&B`4+pmJ
z;nKE+Y92K5_0~7n-Cd(P^~dGD-rA*JE}kLoK=n;3c#4$mK{7^udAP;z*pw>x+|IY
zC*<^xO!-Gn*nhlu`LZ5ILYHJs=6(wpFWJiO?z>sE
zY~{OaqvVc{$ffKDG}}%2E>AtLK6jzRzpOOBqp`oe8_UD&nN5|b4{dI1&c|NKn6YJw
zAdVAebA0aW?_aSPeR7#RK2AL8J_$eX&w85cq~d2Pnz4Us_hfCM51r>@xqM)wrY7*M
z-)?8zufK-NZrIOR^2ui2*F1~ecKx0$MF&+>y$C_LGqvrAF?E|;r}Mp@am4Dz*?qe4
z`fSTr%$8K`TsOiq)*5ss(7=Ni=A#FO#Wykj)1!+MwmbklH#5PXSiw!YM!-yzk|WPo
z9p`Gp(>wDs^kJhgG55%KgWk|GC6<^=t`fs1;-nyt(YzLy^8JGclkdJ~flysS!a7O1
zj-&`_?W9G%WF>)DW``@%4eMBaFzHCdp$%3}8+<2yx!h!)HeFvroRlH@xe25M(X}8)
zR2qFK2;ORg+Ziti#R+o3UnUPL5J8dPKtLSu-F*{zVV-QZh5>>RRPc)qpl^m;LPl7^
zKN=VZL=a^qXpCe46~qHU3DAGh7)*>yul6E7f&$@=pa2lGt_~m6CJ{!7@Ry(n077;l
z$qADUt&fpG35f)7yt+XTx7aXjaU;8Cr=Kph2B}jcZzBVlach
zRvm@k@ujm7J9}T6W2rhm(XJ?L?Qkt(sT#G7OkBp5DtSTrCc_AK5Mw{!mgHK@zAt$}
z&iLHMyW24eY_F`Af%$1tTG(;cT+VOnuNM$p8|5#|$g8$Us95St`f`C&~s*
z`~Z%So70*ZtC)C)HpQ?<(;FtdA~1>;Sai_I$+P#blNzh+XVxY4kkw(Pj;o`9J
zIN&hW;J)V2h8nO4Fl665+HJmrLGh&pz|hHi{N^hTF=}CF|V^{LIXQF_H|3zp|a@Y~q
zv)Tr*i%Qc17qCFsclunt^oc<%Y}fs2G=8R4L@h)a4i5I)AQgcz%6`UPeEezUHmgn`
zfHc4XjIsu_i^3oUC>Mw_^kZaw$bMaG#dJ~rrtaaOMwJg-?K%K1-T*WBe?K6PvL?5S
z;+E(99!Ff?K+4~+_e-Gwj1eg0btoKSQFQ?e07Wj9v{jWI490ONg~0zwLD*N*7gTng
zZf(V!uGJtFKpNz9Nn3TYLMwq29We(I5%-Yf3S&B}ReVrdk_OrdeOU6XsaO&{W;aSS9&2LN5$1
zwX`+$*A$IGzo!^nZVmb+qv~5m6+yuaFk9_eM_lG`j#S_
zsoc!MAsUqsvPdv&-Vjj%WB!HeKQ2UYv>blj+gPB|=^FJHJCw_ZV4xVpz9mN#XKWvj
zuE)QulIKh7>3SjKb^rZKy2^hPF$^7V1|A6;^G5tO6E4+vK$1O*#9{SD;c`z}aofRQ
zeCdd=zp8JtE%`Ol2J$zqYWgOc{$D6i|6}(_tN&p=Ol8b(VE@Zt!Rl7#-m#PRuCxE3
z$-$QPy9Mdn3;4gq=$UBx84i|t{$pGJbZfvb!_#~lo`#`;_8UCVA}|Kz5g^BPARJ)P
zZ+GB8OIt_#b{wE@$N7iw-@jXVnK5q6i1`!#$Ln03AyH_IUrB>Cx2}Y-i
zL>!2H4D3-eEXQR{{&(xkJ-%C_QNR4Zj9TB9mBDk#^QYc*BkQ7*2T~!BV+6|a%XPmH
zK>bo@%hLYN>GP7aZ{1#-tDq&LKr;n0ukbJ~1#-LWWPs2EE1WVHY%4)l`9
zQEKrGF%7huNttk-QH+y-cthl9n7{}Rkx3-XiADjgY;sn7e79&0F@LZ0*6=v32xpZY
zg>pu&O$8#ENGsVe-a*fjw>
z%t=NG-Ylt*lb<9_r|fsynF;=hMbpJjyc8MdOm#7TQY|t-l&$*4l;m9~U(rGcS$v`2
zNvPg#3-y;ecDP=lRuG8_9kP17F66a6?=j%u{%~YMN-1c*nL)>whI$5V3p(zv3vuVW
zwhB995xDP7B*aO;iu+&HO%IMA&mBrPsc7>zQrpbpwf(l41K7UAyQ`W__}uO7vM1S(
zmQ=c)7`#3O-r~?R>`8?qKktebR++NrP0ehNW$v#TyZbGy^5*sul?F4Eys{j`w>`vtIh#B^A~f#0o5^2dz&~GPw;RllMOyoS
zQG1#%PX3|;6Wu?@H@e^})%^*xL9%iWEUFuP{%b007-zU$Nh%
zqyJ|6hxwoU)`j|1EH*1j5Ah9O)X~-@$<&C;l2z05si5n+a$@u8oJ3X>_KcemcgGZL
zlNbq!uz*%vt35w|vC5vpM@BFag~BIj&c)cEEKUJhP@aV>bI!J>4}Q<%TRgQYJ_!rQ
zkQPD;TmSqJ1&ke+5pjYn*6xMRW4{dsMEE>n0nJdfU5tpE^XL0xP2La8eGqVh+=w5G
z5QdZuUD>#dLHZserFe?h==g*LYDH02T!PV{t6o)b)i<5_hTa#
zo$Vv_itppObmonpqM%rWzT55ZSpzwJ_uD~>ExzXtI1a3pTP}$j2>Z3VT_ovFCR~&y
zC*Ji+;_*lr2NDI?Cf*V*CU-Bkqp)`?nMLP
z+5Q%Qma3yV;^oYIxUU0mgMAAE*ZtI{V0q%&G)-WQgcp@2qst^uK1H%wfFcd>eY6bY
zgPUtC0(s4d(P+A!A?60L05YPj_>0jFf;pv=IMV3EhABbOTKLpWcHUUo%o!W6bG#fv
zm`Bu=;c3tfR)$2#>c4o!aEPvsvCZ
zbH0+>K@kUu65edFFh=a(CJQQ236r50@hr{t_+gZCD4^uhFFPZX)d=@+?))diPTPd5
z5|0m}cGz5{*7FGjrxQ`04(_nbp*>xkxWrW*Fiy^;y5uCAYn@XtS8FcBJUfG$JfYN6
z9>|xzs|D+3DLHy&5%;90+Mzxx`2#K8Lber$zTNcnnv727O_(g})?LrCZ=P3-`Hkd%
zQ1BtU-qGq_qS_hCg6;&6(ZTC!Ld2AZ^EUfrIH-)sh*nq-1%^Rz;0K~B7QwlsY+^=^
z+|(;n3(Xk)c@z4BJlex~%juL-Cc_;Ibqos<0HvS<^@tIAAMz1X&P4HK!Nd0AnHW>+
z-s^I87fRhipmXVxD(z4{V_S>O>J#iT)=o;z?Z8}7s08&Hgw=_02K-_05@Gg87EM6s
zAhir(NZH-Jk-LqwM%j?+$J$F0)NzrB7~v@-uy$+4;w4~YSe3V^_CI9jI6x}Rd}uke
z7SDU+*hznGcFNoMr_#aSxJ8A|o0PB?wCd^HstlO$XX@~9L4!FB+Y;tkP*N?Sgo+9G
z-t=GrW-mf(sVY;u-_wWV*pXc!VLlop^(7Ca!~~n65esRj83-Aplbx`rEeBNUs5aJG
z=GgO;AV9Qo22u9|ABJThT*8Z8J5c)a$Xly;HeI(=Wog~3PGau{cRC*_^Y}TgR$P_r
zZLRM0-x$+X+$%JRi<~$Z>FAK7J}hNN0C1EF8k+(I$S3*vpN*m)Sxp3Hre>)HhHF4s
zV{x77$XkZMVy}!`2##a7J|>9H87G@8Ac7{0SQ&*#d2Ehb)}(22A5GRB(@>Ywo}{5p
z>>4m`_Pb0}h=l3iw^TD_fvokqMTv4e3b5Mk1Jm3{;S()Yck;GccFt8K)42e-B&h;5
zXH7E7sCPmX8Lv4kvRdyF*!98ITCO!;j7XALKsQm_zn)nGuF4fvthS+aS>8^A9;m28
z3+)d*{A>{Utk(Mk?FDNq}PT2Bd>$9FX11rKYyRYy_`6YWf~Di**9LN
zZV&(XzHe`TwEyYB`+PWI-~REur?V~A_2_}e_x$YI^K>*u-_!a?&-eP8>*Z1V=cJ)F
z_igV?*Z1+@2L18l&&`6T@B3ly$Jn2rxx8n69Y1q??5|X3a^8>VueN<(ZgqcrJe-x{
zdp~B5{IvVC-Sc|UqRTh1viWqoh!fDxWphHEkFFdTTadTC+
zMUOpr`cz{rg=jOP~B3m`*toIZh8Hl(JrA`)#4$`DTj_QkgrBS6r%bBM|s`YiR`xd
zHqFh5an0z=!eI&UNpJl7$ERSao*!G?9@}E@9=(@kY+&85(Yt&`U|6;x-c83QC2##|
zT`qIa!vi_PvrU<5Lk%{!zvQ`&8U}(Fzq+$Xvh(A9zV|z``Fbg9%<
zu}Gq-a-4viF64L|f({PIWOalW9?e_w)vr7+n*OM%J5Zh21UNanuwUZL{q1U4=!X^7
z_8X_hsb+Cy1(@_9^VN;4!sdBjJJ%NwWj*(;0v~;I-CJPWrv?AqGHbHq&8X$|{YMSQ
z+$!#g%csE4+rxx)>`RwVefUvC*v@m8PkDHA`L6rl>aNKr4~rvt>jsW(7(Z&+&?h!?
zfMThPd)yGGa77$#+kf1f$L4BWKNs6P@|~G0LD@Kr^`u+Hptk=2m3_YWW78msr>(rX
zC9y)@S3X3WyH3)x+$9>M^DpHEzjq=K!>OMBkV7^jVXn;R*%Oq{V?H)_9btH>SIPas(NfpGGEA&
z86BUiBJ|}`?-ZO9&$UEhD?I%^6tW)GV#~h&Pi$aCIdS&7s|s80OCPk0&BfaGi>;M)
zoC%S@)X%4-pT?MV(J&&ff=qEtRdY)L)J|5(UPPNgWK+MeaqWvI9<)6?U)SjUD|me|
zlwI?1E*^K#U%Pw8$yj4cOg+YGyTYa|iP|c0iaJ+fAM@tqA2>;b3+nw+4OJ1
zu$P2vSYX-~`#k{U2`DyNH^PfC$<-d7Esarlo=73fu>c%WB@gS@v7Jotkc40d&RJjr
z9Yd*CgO9U}3~TB4)f&IQxj7oc^^O^p(BDE#jIt;YZc78Xab@il&wv>&bMRj8GZz4_
zLd|ZDx+iG)j>0@_FxFZhl&k(-6DSBhESFqbf4OMS#X>;Gwp{_F;9sOomq?uo?{z~`
z3g8YZmLy7vnI9p!#?o4p-+#$_ek<{5OFBTyew!mXH2r+>Cc1-!$!zQMlaaOUlz#bR_DduOY1{(e{IwPK(=ny6U;Cp$m_
zvs1R`LNf%&3_Z@i$J+9u0ng6#10Z>ndY3|=Q^!1%&}Mw3hc%%_HGhRquDaA(;I`>9
zAQ(L!zsSR0tsjDxz+yNx6HAbV7a)S@l90$IoQrX#APtR|*+z{2$^CdewRGU=D!cj2
zX|hGvub-N2KqvTC8#Nt*HEmp{Dy|!&)T+H)$gO7&aD{C$tu!}KRA+z0GN?uPTF-|2
zdQp2=L&A>W(4kVN=6}HwQ45=!uGs9HX?A%B+UJN&A>?oqZN`fJQ#Ln!2HWq
zmU1F|?*VK8bpQg2`b_BsSopYsv=vsBTA6>luoKIC1TDi;~$wpf3pj_4QM-c!v&)7oE?pFqLUqnGY+w|u*+cSo7&_t
zU`?|}TAGKsnS_sSon!Zd($kx&Y3(gnt(-e$aroM;bIl}_daI26>S&8Zj_9vT?2w{i
z$Gm_Ixmpu3-^7}qFZWLJsk?(-g{IHhBh>Ite!p%fke99Kv>p=ML}-Yc2WxfWE||J2
zpg{PgWUd-Dx4DMo$j
z6hyv}gYu*_C|d9Qgs?dnSu`ZVOQd(pkGE4q_n@XgRvZXLU
zTXM|xELwArI`;dn2RAV=f_IZs;Qp+X3r80*z{d(1!5rhX83mTW%I|7G4r!m6Mi`_ox)eIIf
zcJ4JK`t0|k#|jMR0gR}FYD_h)s8MU34+}?P>^mdaGg^i0i#A7i^pfo@!<kKqa?jzAP+|du7rVP(3iYzfKEhds?xc_tp^xY`FKYP
zg45bYA@<83M23l5ayq(r0r(X!G{*u;ztyNj77B<O4S8{9VR|%{!9~0OJ+2`2X#j?`kmpyak
z3SN%7-$jMl8;^h1ofowez)$Nc$)8Z^8J{xb=uqd3J=W)k#<(}z%U^$4nu@|-j@L;fV9i;8c
zq|)$|)z|PSU2b_aakym*ire;^KPuaX?f&f~M!-@0)hNBayoGy1lLq@hGb6ubIAo{+
zG13CW;Ugr*Fm=tQt9O85RIy^ss$`T(u-O}&q8)AHve~zCNTl%UbwWoM{yGzTLUFfS
z8JXC4!u4;v-J;P!hLh;o(BYBR0z5s{Y;&S66D@k41E1J2_NxsO;d-H3*_SOj^qWwp
zSVqsAx3?XeW@Lc?JOzCCE&PmW*8*+hZsu1&OqxCyH7q=BF$tg0DzVolBbKDD!`M2|
z;)3|9SEJo$Obqnxq}9|TFx8{CR%vY|s6fObK(eqi0uX1ch@ddGMh;m%`9+~3k`e@&
zCXL3su7LYo7BMO3m<^4d-oH&(QYOJy-Lf92{UdrPFr^40F%!}}H`(zrX&)`#v7x%?
z1NWM$60`(Zg6^>$){>c>zT92~@_AL1lxZ(c
zze^>NK#8(#KX`I30j4$!o7y}Ag%)aEcAmi=aK=^_Q8r-lWM>Ey8jx6sa4@o~L-0zb
zkl18{o@AW$WUQ3`=W{7QXXI)oq)0popZQGG0_Xv`aR)!ZvFE-EmS=wE^2P0*O>Cj@~vtk76`KzhY)c_%f)C6J+m_!c8X1INYg3u+Q>%E*l&CRz$Q
znF%Zy$C5U+KHqTGBsHfpRk<;-qqF3G+_?Fbg22>wc7IWbGt|-FuY8J3p0ZVP44MpXPyCQIf#|^nX&Z18bK&
zQx_?vN(68*L&1oxKr(DtzzGG;f^s9>^Cg5bw}rbYP>v~L=9=3Tr+RPaA~E^w1T}V5
zDvuRwWeko1>B%ge%N#9@K?s1zPUbAFqsz$R}Yt!_~dj-D^b^i4!
zOVF&uza5}00lxzzpnsIigWQe`8q39#98U0qG!f+@rf4@b>Gx1)vqG?I%)0+<#NvP}
z=f|P_MbhQXKmK6w;g90^GLA}pjh_cry*VcBh+7S?urbNI#xH*oWf55;;vAF3q!`!;
ztcbhkma(I*Tv8aiFsve6B?qgm1PMBf!9`bRoNv5W7mw2_tlA_PZs3Yh#k2ql7Bpig
zAh6g%=S_FFxeX7NK~-U5uy8cp=-ZSX6xx)|ekE^otB1>K?(EF(HJ49HC{+f9#DjLc
zIxMd%k|ghXn4OQOHV~JnV+(0LO`kOnlQUI0UrC8);xj5@S6P^_ksJkIoo?cu7O}TR
zaR-284O^h64d%f?GP``(YXlQgb!RXsd1~U5P@FVh4DwS~sM*v-0Y0>B%A!VV8BB8?
zI4JbaW=#o=sja*ftk(Znj7=;`%3v`Y$jPE#;~_EKgEbZqmlh}z1vS*qXWfG0dZ&H6
zn*jM|d|%QHRANQ2)CH(L)Li23(w27!r8rBTdb^YzV3=@aZM?I&!1?7&DC2d$DFfvn
zC<->Xr*ViH0v}L@ag%GJsBi=U!U$3aKlBigUnc_FLbu7|L-o*9Tsw2m3~eqRWJJP;
zLW^ukxCVV@ZUIAStEd^S$P5BLG@E@~RA6ST;`AAb;&Xmj!>CJGrr9u5aySt&rh7Ow
zO9Z}znK+BrHu~+6S+ltTWMRnr%iORfRMUT&%9_hrizW3B-=es?z9|FT9&WqM#@
zk5Z9eCaSMCN~`IO6Gr#&_ZfFE+5@`3x8JLPEAj?UHH+*u;ew=YHH5v-d+Bdtp}iWL
z(|xrr)Q@|L9088n8HVIC%~c{iKfvVKx1|0Mw4!;|Gs9B(SYEmkyrsc1F|CqWQvGxu
zIR##W%V9!|28F(Cm8@{;!uaqm4k(~&8=Al&d|}fvl9qM=S{41+R<+Y*M>s_yQJL}M
zHOd0%q2QuaHE!=94Qg64i#Z7Tssjiza}QZ>xm7Zymaw1q{525A#d+^xya__?)qqtP
zX$V!=WKcy#5fU5xWcNUj%wE8xfxs9JwrRU90xvjH
zUsBQ$;{FZwA6ZuPlVkFzBh%KRKMjD}L~>ACv?VR{JqKVq9X>gAgTJe7xINFM7k=u$z|Nk{&HD)
zC9ii(pR5ET?aTsJkaQ%i727JI{kTGS-QO<>wz{FA+rCuI&!;o_Mc9rqCP-xk_|Idk
znL<=inr{(v4c@hWKbsikp!#!TILt+~{XbfEHQvqcZhg>8N&JJkIc
zcP@3S!O7q`s3&vaZipmZMR&gQ7Xm~TIMH!0IC?nOA{7mJQ#IU(O
z(G1J5yhNia0qQv$VyN?i*}{c(TM5@kvs-D%N8C8R&dwsnRfDe#69v)Fkx&1g+|@-><@=&Pt4&SfzpzBgOv0XhuDZYa!`
z_3)=2Xg_2E6{|SmvfuX@H98$k$N*Q1^u=q^1-xB9p8AeSMbD7`3O@(5z7N8$&+Yk;
zq{KGRNdp`U3?~k^l`>$16$6#lILiFbbK>+8BboCKbC6MF
zE&o8?N(3MATz<;R+&XV
z_ffP+;+GB49TwKiwT0I=dKi`H;CmD2ny40K|FABqtccfCsn3oE2jp(wzpDC#Ca>^M
zwz4s>qPYUPs|Nq5RNkkaRAFg6xn+L(DY@1c_cBGbf&B=&OQU
zIBgY*ZILXW)W<(LsS)&{2BrTuaP%a?Q61|-prFb7UjiJLI{zyK1Sjg-NA+@@_Nc~>
zIH4LGd|O`;l8~^%+QJAwA
zT|%#DSjLYd98
zh!(lqC3u9stX&Wy>fFv@Y?Vy-zJ-Wme~V
z#>rClh@InC!NeFazTx9ti;CR!AEI@Vk_!Y#rA&OlL?n!GF=*`f81MZcDtWhqmMRv1
zVx*$rmdHf*DsaDW@^1u0#4IS<&vR%RFZQARLso|6ick-{)^|@XO^PsBB7u=$!mP#q
zvpR~STS|oCwdD806Ia}YG;;I`D9%yj3@~}MCAvI}4w%AbxcI7vd4o@IugCTwcr}9(
z>BO(Tm9zAs-NP~C)urWKqZ1Q5U&(npAmd}KECX9W{g4g+7(PRSr5L_fVMkP92$}{Z
zhCvM43EHa`varM;dWqSur9P;oi70Ry>fPqNwZX*HS8$crAodfy
z*I9(54PJxhAo&37+G{ZvKWDd9u+;@+?GJw+U#J}g&N0x9K>uZ&lN|6R!?q)ZyCq*W
z_HN;hQQ;OV$rZn@*HHLzgDTG)a7M6xM3dIk^vfsP8|kh5*#}*{z!wE@_ng5bsOa~m
z^d27#0Go2AEMtQeQ1h%8k|5b~ryYN0Y0s~k2$nDvSy02S;~Bk@G^JvU2Olm;>xyLi
z01S1MF^oaR?*JI)A
zuL3!QebV@iePJ`$Xr9EL`ttdU@{zE*;gMxZA+9OE7~Z@vK7_-_lTmg#FDF!Yguz)h
zg!+C$LQNhAK#%gkL>>@+h!-)Z-pDi?ic)YDYrh9W96M8wu$#336^ND_xKbx;@Kw9f
z5UK{XUrzLF1E~RN0Zt`_(cEHA3G1b5gUH*K&bAQNj}C+shgP6Ldkx}xpX=-=ho0IL
z-}#W3#&0*gvrB)$f=CFWJr7<%j$$2{Ug!q1eOifaV0t!$ZVsg}Nc=;eYInm72
z?Ec1dQew7X0HZiR!$d$6%iQ!}Tuqo@8g?}v<8@9op7-{IvSb}8iNiV*^|kF{3SqA9
z3^_%ewn=h%`_0P#j`-JXIssX+r*#2e|7&qT^qCYpqUuEIpgJ%AN;DtM$n|mvEnY_1
z>(|ja0?%Hj%$UkQn>U>?p#ECmr@Xn)q>I$Gr@(hmH%u9X=oB_8=$iLy^zaT)O0zHu
z4{u1sTwJ1%MnzjCFile)`VFtzEO_yk?E-**Xcr14^(cygy^zaHKd3X@#?pdl)#A+@
zDV#EVts)Rg$t+$625emEUF?^nAnP3-!TuSC)EyiO4XiSN*QmZ;zMjX9UnP%<%9efE+d?r^`%XFwLoWO
z%PQXxJw?_uVJiXQBss%D3r2*%c(!A#lMRO_W^^7|$BrrjhmiygVETyFJuPA50Jk)0
zLz=Sn)GFz+03%YvQU&iG3sp0)_kKfl_*vFf$%Qp*-rlIJJ=(+9X-bl6_qE^z7}O>>
zjhOMuUWkz5hjnR#W-@4JTp?Ao<7z0@%#LD`{GC4Ms2(o%Qdd~e|I^2H$HTd_Q8kGm
ziwLqrCwlL_txFI+dRR4t#j-l9msq_7A%rN=6J2x?HF_7(Ya~j95anCkdnJ4Ccju4Y
zcX#KUXXcrAXMXSe=A4$>B;_)a4E7nTE-Q0-X!+|WAN;14yYQJXu`#qV+{sNca^c@d
z=E>`u1~#no2>Zh5IQo
zUY46wpiS_QOLH8LV7~DjDWG@zURE7uV{V_{*3xyqv0jSV`0Sn(;
zZjAM01pi&9&lLK~8W&B-Nc=2@mKH;RUq=Qe7{4Z3JsW02=|$4*>(eBS(6kOb4*Qtg
za+{z2Xt$KS#ZQ7lz)jaJF0dk0Pwx{eArU*#+Tv+3sADEA3
zv7Q(b`-hf)C$k*ke3~WALfdIZcLaf9CSOVRs>^aj>&KzJNhR3q$mHhsV9rh#t-PHu
zdb!6*E`7U(qT-EWhl2o9gc#tqd^7C*!YDh(cMJw~rKi>2w-nea6>W9n4L-33Q3qgc
z9J)JMwtq1aV7$*Y5Moy7paYjSfbR!SbC}}j=hN^_k;zFx-5NH5k_B<6A&tko3nw96
z!0qvwS$W{2cc|@p_~!>AD&dhScpetyvbjd_qP!a
z36ZaS5!4C0t!@LKK@rX|TkC
z&GXg8!vTYRhgaT8N`FxavJH3L8Zw%u)Ei|YbZQ(&HbBtc=|E-m!H*dkNol(#GjR9C@PrTNS*ERp3yPHV*2c9E)
z&sKxz^4*5OlL}zcD8~RyrOWIN9+;tZbulGV`v*u=RD=nWSV^Rs)8d{?wwtJwHkn*H
zF5fU~kvldfkCA#Ir%6u)t{!)!0<0fO6d(iB$4QAKOyqnaE)6u07YMtL=aQl};3P-R
zyW5rPe$qJI1_!x9?|-rXz9(VZ7#JFxyYMB%@zeC%sF{H>Br6MD7#T4ZfaGY{data5n
zoBC+LtV)STzj%lLtn~J0-7z0rtJoX^y_i(S#;5zAj!qb+k1Z&eRS7JT=t=t5S=7|#
z390Tn;ff^*RgkEWx!#c8ou*Hf?02=W-biX9cw7Ry)jA#K<2HzYik169Hj*y%RRX>;>o!F|HMH7sCIIr-=_f9pVM%8QDT6g$C)6k!M8@^b+pvXtI3
zXr0m;nQg8C#0VjNj||6cnvR<-acT6EHG5J)OgE`kp;L)LHH?1Uwx6AhxG85EZq$Dp
zV9reb{WNs{-3sxGC+1fAF>VfGDF_y5RB&8-?tN`2+#GN?a&Wv|efo&UOZOrA>4X}S
zB?n1usu8$C`puW{o$I0`KnoNY&Jz$C{koZ7t5vGff+Qj+)ZFbsE`rYEt75
z2)*4NRX5q`ESmhfe9-@aO-wYJ_Vc#n*ADZA3-QSy1~
zD>ooh@Ek?n^dF=``-d=ySDG7Ovr>gNVp~%nG_SqOfW$30a$iANdAYKC3
zi@j1LTlN@FAgy5{fb~xM7a--4GvKB441dI)F9FO>kvV}yW31F8vu_Ssl@O#j<^UJk
zurE)A%xo2UcURV#btw_o7IoWG?oy16S4of1RZ&8NTd_VDk3iG>hPDO#5*D3B9&{@|
zV$z`>tFs{79Detu=u>HdYrS7TG+4ZZCNWFXAHMX#MRwR+eJcVYVyCu{vxPr5D9CBV
zGEH0@y|8INYita+T6NPAIO6nZCl|z4zYYR7bnzLduQv8k9bVN{o+nC7sa{R*co`^C
zBu5P^46|CHr=2ly2&
zw(G7IKQuB&%fV_4!&h^=0l}=u0DZ;O(1885*++JGt^^DIE_^}M_NW>DK8mXD$GouH
z*QJS0ycNZ9RoQu!`&t;!LP539I~i>bj+%N1bus-aZ149lIRwKS^eWX*{j`+I(4A-1mKU
zl_WUiJnT(4gn1+(aWAEg^el0kOBd^LY3gPh)>%kbKce2bXZKtk)PzwL`CZvgvp<|WD?)7wB%~&fNv5b@c}GP^
zOQbT8cgle4U|YE=w-rDm)Zq9rB*p@;Y%OONrgpf?`&Ggr!t8c%VKUB@NV|&8Yx@~t
z?PXk$eKwxEEOvu5pM4xA)+;{H-OK^q^3a#DvC?+bH|0B_U$~w5!^WKdSwZZG?I^S9
z1CytjtycUlMyzpt$gf#FJ)G?M-#FLn8Ko80r+Ewr;Y|)@4ha$68Z4jQPBwN^*nVJV7}r{Z31KVr;jaaiXTA-RHUfkAj`ys6EHhierJrxk{-?u
z&XMiL5RFGuQRBi5L4S!F1tuKf*0%rn=NX)>~6*L|pr4V4^RK$xFETwxyHO#XT`w#Om
zwZUJDGA#3!K6-kak(4teO>Z(S%6gR5kT5VWk0;P4SsBIB7DSk!aSpx!ytSMHx@1Yo
zJ7Gv3Vcq;TU7Zoiw8GExWiVg=RenOklg)31%Rw$&4tRC9O4`lwX)-%VWaOf`14C&6
zyng#xrsYz1ij5yoAwRdo~g2XLYbIxOv}WHJWOW4Jq|
z(?LTV86eyEc^htPf4dUa|2ai`Jk6x``3S8ix&GGBt{^=HEN9%txk>@uYmFo3=%7U^
zgFvwVj`Tr6!2t608|V>rWG^m$D7%*I6O-^#+$Zhh+Gv}k?>Gh%H!xV5aJa(Q{MnWD
zpO`2?16HtL!ZR)X)npCyD{hB2O6$+wKgHXA+LWXW749c}L-(FTZ`&Z4)7l@i!FM6a
z-a@e<&%)#fM**h|kXqW*y8sDDY^z{6$g$vFGkY3Fe$Pw@aa_vQt47%hhIrkIZ>L8}
zR1icr_SBa<$Sf#28;yedU)JvlJ$hBa|3pmh4r#Y}j++Im>AHP*&Nokq-cp0p-nBtz~SezVU6odTq
z9{DviDCO+RA=TKQS|`uJ5bq58)-G;iMaoTA!X)K;poR$Fo!2W*b{B%)5U=&|<&}h=KD}>qv!X!FR8^8Qv_+%!#sH<-5Yj@d)(P
zs4pT%7{h%up9c951QV0DV#&KkQ=&23gzqoFxzWK3rSds~-f&SOaAh
ztAtcF57%jc8s=fy1IKT0Qs6Vfjr+DopF>_yXh?=xAFZV3e&jmb80wt(_U)$?r=*uX
zkBVv+J-7Juh#Uc}?S&J=
z?hS3X=dPq5NxaOc@Q`bPoh}YwszJPVLKEb>x4G?-!vV&r1PmhV74337f;Q-c8J+2L
z9c=REkZ}y!YJO_dIdo0$NK(x6>+LzoAnrSbon@X`qJ$z%SR1gsX6Pb8>`)&aGaD^2
zB!kfk?&0ntNekvihiOK}ZwJI}Q&B~JJ%Ko{?EP5aq|+xMy)LLGv3Rq*{3S)Z(%kay
z531aSI8GTylN$>J969oUbou?VqTrUGw$-w-RUZ=k>!kQAcO^Zy7aiqVOr_^c!MjT<
zag8%q5K)vflBbJVot%;pVB9DL9s$QVU1o2UaRSRX;MW-1viFHA4s3Og@(ho(mdn80
z*teu31t^>{>$G%DUKyHXdoY;FhUap>KiZd8zH5}PV=BP*br!4_Dg5eT*hCYd4MKoptRnlgw+mmnDljFf)*-ERkL@PML%1usE10=1XD3oI_=rSdF7}pkd
z|D4GZ3?L3sIlqL0bAe}o
ztERGus78=rwCrxc+fS7cVM>buf`x^uj@BzDYPc+0_V}|n=s!q;i$@6Hbyb>0n_t(u
zeM+mHz4s9%e`NVA96BhFRN1XEVA1_jWV};E%+*7U1J(PMb1{;F}dW2
zziHrvX@kMYBAjsMq}@<4_x4RvKJ90`8LRiDp{vl%b*x8&2*54m$9>-=Hr{!;cGE)D8iUT(V6{tAWlBbe@54lP)3*LO^R
z1_msP#ZPk3#~68O^z(#>GRIjDtZAu9rHk@|a)l+$=mG@lA!?AW9r^d^lxiws?>@1F
zdcM8lC=^t8U~ixQxp!7PIZL*WmvvDqCJkmAeG3ubl{MZ-@EvsJif|tkCegj=dM~7~
z$dVl&WEhmB`Q+o0VWT5ka=YPuswWH?9}c93hE`gdV+IV$yA?zN88Sbg((|;pEhf54
z@Ea>Yci0PD|9>w36yyC{Izeusu%E~@4kKNsfXH{G#^R#dnMc)M55DKwt&eNAY30HT
z-VA6681QzCg;>Ok)FY%z4EE3%)#v-$ZX{On+e^ktKa=U?ctP6AId^)>HaC4TTrp2B
z&fm+TkV%F$*^&@ZbjxemK8lk%w1OS>nT>@k+9bV*(q(hp=ElhM#0SIl)1H$l__ekv2beL+yNl
zY_}jS{dRxw)lkEqK)vSlNDR7;sqMb-_vBw*ADK|)h-N1xu9!Se44f;at3#N^L&f5R
zgTKe(N%m58Qtt#U7}5&6j5=|xrGW>9lNNiqR`@#$8k3GO{(olwl%@P)==E<&wx&{i
z*N04QHPV`q?jp(mKwO%8UEIsjoi>=z#cVQxG1O$C~=oP+aBP@br=7GG%VEM=;DM0TGbv0e<^KQ|s9A#MdL2$;O)!uwACV
z4efRCCWz24#LH>lBfvCcUc05f(eYfaz3s(=!zA$p;4=En2>_66Or@;ZtIrqGtaa6j
zn(8BPcr9gpxpCt4=H2d}k0ixIc1*CJAJ_HmYDX1lbzzcX>Sz7z>@=z$sUY2Yt@$(k
zzQEzLVm5?NTv74qTkF~RnQ6h_pMYB;=GMcJxj07t$GV?SBRxOzEM*fne3d*u7)D=e2MGT$~dL84yX#B$}!TRk8WF8w
zv4ruhW#P_}m<*F@$Vinz_gGXKKGU~VWc9=3DG-jMXCJo0S{@5PDQQ`&?nmDCe+T``u^1JOYOZ?;e}J5(
zFX4Y%?fzG%k%&LbS*N>^Tbsx^{=WdfXK5cPzWaMoKy4`M>Twq6B1@Fozrg;nmZ0*W
z`qp0ZY+SVWHy7LgYW$hs=|wr~?GEzxLN@*v_tW1;8P)&v40+LhimSgPQQS~bJAf)x
zydaKZ5R9^rrW|M$VOxpNNvONIY?=TUX|zeM~McB#ro
zZ8GY1`6U6X{CV78$Nj$=eP)Y!QO*X<7dcZPGxp00`Cr(x75Ji@Vbvd?V*gr?fA2f$
zihRa!G4KKZhXG}MM$HAPbLS;t;Xk@_NrlRS>hX8U(t*s;?@2jlId}X+WkI#%x@0j%
euD1Wea&FM2ri6Vy8IvL11y_*v461r(xc>o0VjWQc
literal 0
HcmV?d00001
diff --git a/SGGL/FineUIPro.Web/FineUIPro.Web.csproj b/SGGL/FineUIPro.Web/FineUIPro.Web.csproj
index 3288e4ac..39cfe764 100644
--- a/SGGL/FineUIPro.Web/FineUIPro.Web.csproj
+++ b/SGGL/FineUIPro.Web/FineUIPro.Web.csproj
@@ -299,6 +299,10 @@
+
+
+
+
@@ -8158,6 +8162,34 @@
WorkStage.aspx
+
+ CheckProblemView.aspx
+ ASPXCodeBehind
+
+
+ CheckProblemView.aspx
+
+
+ CheckProblemEdit.aspx
+ ASPXCodeBehind
+
+
+ CheckProblemEdit.aspx
+
+
+ CheckProblem.aspx
+ ASPXCodeBehind
+
+
+ CheckProblem.aspx
+
+
+ CheckProblemIn.aspx
+ ASPXCodeBehind
+
+
+ CheckProblemIn.aspx
+
mainMenu_FiveStarts.aspx
ASPXCodeBehind
@@ -20201,6 +20233,7 @@
+
diff --git a/SGGL/FineUIPro.Web/common/PageBase.cs b/SGGL/FineUIPro.Web/common/PageBase.cs
index 10a536f2..79847ebf 100644
--- a/SGGL/FineUIPro.Web/common/PageBase.cs
+++ b/SGGL/FineUIPro.Web/common/PageBase.cs
@@ -974,22 +974,14 @@ namespace FineUIPro.Web
{
html = (row.FindControl("lblNumber") as AspNet.Label).Text;
}
- if (column.ColumnID == "tfTeamType" && (row.FindControl("lbTeamType") as AspNet.Label) != null)
+ if (column.ColumnID == "tfState")
{
- html = (row.FindControl("lbTeamType") as AspNet.Label).Text;
- }
- if (column.ColumnID == "tfI" && (row.FindControl("tfI") as AspNet.Label) != null)
- {
- html = (row.FindControl("lbI") as AspNet.Label).Text;
+ html = (row.FindControl("lbState") as AspNet.Label).Text;
}
if (column.ColumnID == "tfCompileMan" && (row.FindControl("lblCompileMan") as AspNet.Label) != null)
{
html = (row.FindControl("lblCompileMan") as AspNet.Label).Text;
}
- if (column.ColumnID == "tfSpecialEquipmentId")
- {
- html = (row.FindControl("lblSpecialEquipmentId") as AspNet.Label).Text;
- }
// 处理CheckBox
if (html.Contains("f-grid-static-checkbox"))
{
diff --git a/SGGL/Model/Model.cs b/SGGL/Model/Model.cs
index 2392503c..5498255e 100644
--- a/SGGL/Model/Model.cs
+++ b/SGGL/Model/Model.cs
@@ -536,6 +536,9 @@ namespace Model
partial void InsertCheck_ViolationPerson(Check_ViolationPerson instance);
partial void UpdateCheck_ViolationPerson(Check_ViolationPerson instance);
partial void DeleteCheck_ViolationPerson(Check_ViolationPerson instance);
+ partial void InsertCheckProblem_Safety(CheckProblem_Safety instance);
+ partial void UpdateCheckProblem_Safety(CheckProblem_Safety instance);
+ partial void DeleteCheckProblem_Safety(CheckProblem_Safety instance);
partial void InsertCL_MatchingM(CL_MatchingM instance);
partial void UpdateCL_MatchingM(CL_MatchingM instance);
partial void DeleteCL_MatchingM(CL_MatchingM instance);
@@ -4122,6 +4125,14 @@ namespace Model
}
}
+ public System.Data.Linq.Table CheckProblem_Safety
+ {
+ get
+ {
+ return this.GetTable();
+ }
+ }
+
public System.Data.Linq.Table CL_MatchingM
{
get
@@ -88019,6 +88030,716 @@ namespace Model
}
}
+ [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.CheckProblem_Safety")]
+ public partial class CheckProblem_Safety : INotifyPropertyChanging, INotifyPropertyChanged
+ {
+
+ private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
+
+ private string _CheckId;
+
+ private string _UnitId;
+
+ private string _UnitName;
+
+ private string _ProjectId;
+
+ private string _ProjectName;
+
+ private int _State;
+
+ private string _Address;
+
+ private string _Description;
+
+ private string _UnitType;
+
+ private string _AssemblyName;
+
+ private string _CheckTeamUser;
+
+ private System.DateTime _CheckDate;
+
+ private System.Nullable _LimitDate;
+
+ private System.Nullable _CloseTime;
+
+ private string _RectificationUserId;
+
+ private string _RectificationUserName;
+
+ private string _PMUserId;
+
+ private string _PMUserName;
+
+ private string _ClassifyId;
+
+ private string _ClassifyItemId;
+
+ private string _NatureId;
+
+ private string _NatureItemId;
+
+ private string _AttachUrl;
+
+ private string _RectificationUrl;
+
+ private string _Remark;
+
+ private string _CompileMan;
+
+ private string _CompileManName;
+
+ private System.DateTime _CompileDate;
+
+ #region 可扩展性方法定义
+ partial void OnLoaded();
+ partial void OnValidate(System.Data.Linq.ChangeAction action);
+ partial void OnCreated();
+ partial void OnCheckIdChanging(string value);
+ partial void OnCheckIdChanged();
+ partial void OnUnitIdChanging(string value);
+ partial void OnUnitIdChanged();
+ partial void OnUnitNameChanging(string value);
+ partial void OnUnitNameChanged();
+ partial void OnProjectIdChanging(string value);
+ partial void OnProjectIdChanged();
+ partial void OnProjectNameChanging(string value);
+ partial void OnProjectNameChanged();
+ partial void OnStateChanging(int value);
+ partial void OnStateChanged();
+ partial void OnAddressChanging(string value);
+ partial void OnAddressChanged();
+ partial void OnDescriptionChanging(string value);
+ partial void OnDescriptionChanged();
+ partial void OnUnitTypeChanging(string value);
+ partial void OnUnitTypeChanged();
+ partial void OnAssemblyNameChanging(string value);
+ partial void OnAssemblyNameChanged();
+ partial void OnCheckTeamUserChanging(string value);
+ partial void OnCheckTeamUserChanged();
+ partial void OnCheckDateChanging(System.DateTime value);
+ partial void OnCheckDateChanged();
+ partial void OnLimitDateChanging(System.Nullable value);
+ partial void OnLimitDateChanged();
+ partial void OnCloseTimeChanging(System.Nullable value);
+ partial void OnCloseTimeChanged();
+ partial void OnRectificationUserIdChanging(string value);
+ partial void OnRectificationUserIdChanged();
+ partial void OnRectificationUserNameChanging(string value);
+ partial void OnRectificationUserNameChanged();
+ partial void OnPMUserIdChanging(string value);
+ partial void OnPMUserIdChanged();
+ partial void OnPMUserNameChanging(string value);
+ partial void OnPMUserNameChanged();
+ partial void OnClassifyIdChanging(string value);
+ partial void OnClassifyIdChanged();
+ partial void OnClassifyItemIdChanging(string value);
+ partial void OnClassifyItemIdChanged();
+ partial void OnNatureIdChanging(string value);
+ partial void OnNatureIdChanged();
+ partial void OnNatureItemIdChanging(string value);
+ partial void OnNatureItemIdChanged();
+ partial void OnAttachUrlChanging(string value);
+ partial void OnAttachUrlChanged();
+ partial void OnRectificationUrlChanging(string value);
+ partial void OnRectificationUrlChanged();
+ partial void OnRemarkChanging(string value);
+ partial void OnRemarkChanged();
+ partial void OnCompileManChanging(string value);
+ partial void OnCompileManChanged();
+ partial void OnCompileManNameChanging(string value);
+ partial void OnCompileManNameChanged();
+ partial void OnCompileDateChanging(System.DateTime value);
+ partial void OnCompileDateChanged();
+ #endregion
+
+ public CheckProblem_Safety()
+ {
+ OnCreated();
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CheckId", DbType="NVarChar(50) NOT NULL", CanBeNull=false, IsPrimaryKey=true)]
+ public string CheckId
+ {
+ get
+ {
+ return this._CheckId;
+ }
+ set
+ {
+ if ((this._CheckId != value))
+ {
+ this.OnCheckIdChanging(value);
+ this.SendPropertyChanging();
+ this._CheckId = value;
+ this.SendPropertyChanged("CheckId");
+ this.OnCheckIdChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UnitId", DbType="NVarChar(50)")]
+ public string UnitId
+ {
+ get
+ {
+ return this._UnitId;
+ }
+ set
+ {
+ if ((this._UnitId != value))
+ {
+ this.OnUnitIdChanging(value);
+ this.SendPropertyChanging();
+ this._UnitId = value;
+ this.SendPropertyChanged("UnitId");
+ this.OnUnitIdChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UnitName", DbType="NVarChar(50)")]
+ 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="_ProjectId", DbType="NVarChar(50)")]
+ public string ProjectId
+ {
+ get
+ {
+ return this._ProjectId;
+ }
+ set
+ {
+ if ((this._ProjectId != value))
+ {
+ this.OnProjectIdChanging(value);
+ this.SendPropertyChanging();
+ this._ProjectId = value;
+ this.SendPropertyChanged("ProjectId");
+ this.OnProjectIdChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProjectName", DbType="NVarChar(50)")]
+ public string ProjectName
+ {
+ get
+ {
+ return this._ProjectName;
+ }
+ set
+ {
+ if ((this._ProjectName != value))
+ {
+ this.OnProjectNameChanging(value);
+ this.SendPropertyChanging();
+ this._ProjectName = value;
+ this.SendPropertyChanged("ProjectName");
+ this.OnProjectNameChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_State", DbType="Int NOT NULL")]
+ public int State
+ {
+ get
+ {
+ return this._State;
+ }
+ set
+ {
+ if ((this._State != value))
+ {
+ this.OnStateChanging(value);
+ this.SendPropertyChanging();
+ this._State = value;
+ this.SendPropertyChanged("State");
+ this.OnStateChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Address", DbType="NVarChar(200)")]
+ public string Address
+ {
+ get
+ {
+ return this._Address;
+ }
+ set
+ {
+ if ((this._Address != value))
+ {
+ this.OnAddressChanging(value);
+ this.SendPropertyChanging();
+ this._Address = value;
+ this.SendPropertyChanged("Address");
+ this.OnAddressChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Description", DbType="NVarChar(MAX)", UpdateCheck=UpdateCheck.Never)]
+ public string Description
+ {
+ get
+ {
+ return this._Description;
+ }
+ set
+ {
+ if ((this._Description != value))
+ {
+ this.OnDescriptionChanging(value);
+ this.SendPropertyChanging();
+ this._Description = value;
+ this.SendPropertyChanged("Description");
+ this.OnDescriptionChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UnitType", DbType="NVarChar(20)")]
+ public string UnitType
+ {
+ get
+ {
+ return this._UnitType;
+ }
+ set
+ {
+ if ((this._UnitType != value))
+ {
+ this.OnUnitTypeChanging(value);
+ this.SendPropertyChanging();
+ this._UnitType = value;
+ this.SendPropertyChanged("UnitType");
+ this.OnUnitTypeChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_AssemblyName", DbType="NVarChar(100)")]
+ public string AssemblyName
+ {
+ get
+ {
+ return this._AssemblyName;
+ }
+ set
+ {
+ if ((this._AssemblyName != value))
+ {
+ this.OnAssemblyNameChanging(value);
+ this.SendPropertyChanging();
+ this._AssemblyName = value;
+ this.SendPropertyChanged("AssemblyName");
+ this.OnAssemblyNameChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CheckTeamUser", DbType="NVarChar(500)")]
+ public string CheckTeamUser
+ {
+ get
+ {
+ return this._CheckTeamUser;
+ }
+ set
+ {
+ if ((this._CheckTeamUser != value))
+ {
+ this.OnCheckTeamUserChanging(value);
+ this.SendPropertyChanging();
+ this._CheckTeamUser = value;
+ this.SendPropertyChanged("CheckTeamUser");
+ this.OnCheckTeamUserChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CheckDate", DbType="DateTime NOT NULL")]
+ public System.DateTime CheckDate
+ {
+ get
+ {
+ return this._CheckDate;
+ }
+ set
+ {
+ if ((this._CheckDate != value))
+ {
+ this.OnCheckDateChanging(value);
+ this.SendPropertyChanging();
+ this._CheckDate = value;
+ this.SendPropertyChanged("CheckDate");
+ this.OnCheckDateChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_LimitDate", DbType="DateTime")]
+ public System.Nullable LimitDate
+ {
+ get
+ {
+ return this._LimitDate;
+ }
+ set
+ {
+ if ((this._LimitDate != value))
+ {
+ this.OnLimitDateChanging(value);
+ this.SendPropertyChanging();
+ this._LimitDate = value;
+ this.SendPropertyChanged("LimitDate");
+ this.OnLimitDateChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CloseTime", DbType="DateTime")]
+ public System.Nullable CloseTime
+ {
+ get
+ {
+ return this._CloseTime;
+ }
+ set
+ {
+ if ((this._CloseTime != value))
+ {
+ this.OnCloseTimeChanging(value);
+ this.SendPropertyChanging();
+ this._CloseTime = value;
+ this.SendPropertyChanged("CloseTime");
+ this.OnCloseTimeChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_RectificationUserId", DbType="NVarChar(50)")]
+ public string RectificationUserId
+ {
+ get
+ {
+ return this._RectificationUserId;
+ }
+ set
+ {
+ if ((this._RectificationUserId != value))
+ {
+ this.OnRectificationUserIdChanging(value);
+ this.SendPropertyChanging();
+ this._RectificationUserId = value;
+ this.SendPropertyChanged("RectificationUserId");
+ this.OnRectificationUserIdChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_RectificationUserName", DbType="NVarChar(100)")]
+ public string RectificationUserName
+ {
+ get
+ {
+ return this._RectificationUserName;
+ }
+ set
+ {
+ if ((this._RectificationUserName != value))
+ {
+ this.OnRectificationUserNameChanging(value);
+ this.SendPropertyChanging();
+ this._RectificationUserName = value;
+ this.SendPropertyChanged("RectificationUserName");
+ this.OnRectificationUserNameChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PMUserId", DbType="NVarChar(50)")]
+ public string PMUserId
+ {
+ get
+ {
+ return this._PMUserId;
+ }
+ set
+ {
+ if ((this._PMUserId != value))
+ {
+ this.OnPMUserIdChanging(value);
+ this.SendPropertyChanging();
+ this._PMUserId = value;
+ this.SendPropertyChanged("PMUserId");
+ this.OnPMUserIdChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PMUserName", DbType="NVarChar(100)")]
+ public string PMUserName
+ {
+ get
+ {
+ return this._PMUserName;
+ }
+ set
+ {
+ if ((this._PMUserName != value))
+ {
+ this.OnPMUserNameChanging(value);
+ this.SendPropertyChanging();
+ this._PMUserName = value;
+ this.SendPropertyChanged("PMUserName");
+ this.OnPMUserNameChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ClassifyId", DbType="NVarChar(50)")]
+ public string ClassifyId
+ {
+ get
+ {
+ return this._ClassifyId;
+ }
+ set
+ {
+ if ((this._ClassifyId != value))
+ {
+ this.OnClassifyIdChanging(value);
+ this.SendPropertyChanging();
+ this._ClassifyId = value;
+ this.SendPropertyChanged("ClassifyId");
+ this.OnClassifyIdChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ClassifyItemId", DbType="NVarChar(50)")]
+ public string ClassifyItemId
+ {
+ get
+ {
+ return this._ClassifyItemId;
+ }
+ set
+ {
+ if ((this._ClassifyItemId != value))
+ {
+ this.OnClassifyItemIdChanging(value);
+ this.SendPropertyChanging();
+ this._ClassifyItemId = value;
+ this.SendPropertyChanged("ClassifyItemId");
+ this.OnClassifyItemIdChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_NatureId", DbType="NVarChar(50)")]
+ public string NatureId
+ {
+ get
+ {
+ return this._NatureId;
+ }
+ set
+ {
+ if ((this._NatureId != value))
+ {
+ this.OnNatureIdChanging(value);
+ this.SendPropertyChanging();
+ this._NatureId = value;
+ this.SendPropertyChanged("NatureId");
+ this.OnNatureIdChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_NatureItemId", DbType="NVarChar(50)")]
+ public string NatureItemId
+ {
+ get
+ {
+ return this._NatureItemId;
+ }
+ set
+ {
+ if ((this._NatureItemId != value))
+ {
+ this.OnNatureItemIdChanging(value);
+ this.SendPropertyChanging();
+ this._NatureItemId = value;
+ this.SendPropertyChanged("NatureItemId");
+ this.OnNatureItemIdChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_AttachUrl", DbType="NVarChar(1000)")]
+ public string AttachUrl
+ {
+ get
+ {
+ return this._AttachUrl;
+ }
+ set
+ {
+ if ((this._AttachUrl != value))
+ {
+ this.OnAttachUrlChanging(value);
+ this.SendPropertyChanging();
+ this._AttachUrl = value;
+ this.SendPropertyChanged("AttachUrl");
+ this.OnAttachUrlChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_RectificationUrl", DbType="NVarChar(1000)")]
+ public string RectificationUrl
+ {
+ get
+ {
+ return this._RectificationUrl;
+ }
+ set
+ {
+ if ((this._RectificationUrl != value))
+ {
+ this.OnRectificationUrlChanging(value);
+ this.SendPropertyChanging();
+ this._RectificationUrl = value;
+ this.SendPropertyChanged("RectificationUrl");
+ this.OnRectificationUrlChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Remark", DbType="NVarChar(50)")]
+ public string Remark
+ {
+ get
+ {
+ return this._Remark;
+ }
+ set
+ {
+ if ((this._Remark != value))
+ {
+ this.OnRemarkChanging(value);
+ this.SendPropertyChanging();
+ this._Remark = value;
+ this.SendPropertyChanged("Remark");
+ this.OnRemarkChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CompileMan", DbType="NVarChar(50)")]
+ public string CompileMan
+ {
+ get
+ {
+ return this._CompileMan;
+ }
+ set
+ {
+ if ((this._CompileMan != value))
+ {
+ this.OnCompileManChanging(value);
+ this.SendPropertyChanging();
+ this._CompileMan = value;
+ this.SendPropertyChanged("CompileMan");
+ this.OnCompileManChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CompileManName", DbType="NVarChar(100)")]
+ public string CompileManName
+ {
+ get
+ {
+ return this._CompileManName;
+ }
+ set
+ {
+ if ((this._CompileManName != value))
+ {
+ this.OnCompileManNameChanging(value);
+ this.SendPropertyChanging();
+ this._CompileManName = value;
+ this.SendPropertyChanged("CompileManName");
+ this.OnCompileManNameChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CompileDate", DbType="DateTime NOT NULL")]
+ public System.DateTime CompileDate
+ {
+ get
+ {
+ return this._CompileDate;
+ }
+ set
+ {
+ if ((this._CompileDate != value))
+ {
+ this.OnCompileDateChanging(value);
+ this.SendPropertyChanging();
+ this._CompileDate = value;
+ this.SendPropertyChanged("CompileDate");
+ this.OnCompileDateChanged();
+ }
+ }
+ }
+
+ 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.CL_MatchingM")]
public partial class CL_MatchingM : INotifyPropertyChanging, INotifyPropertyChanged
{