diff --git a/DataBase/版本日志/SUBQHSE_V2025-07-16-xiaj(IDP设计图纸管理).sql b/DataBase/版本日志/SUBQHSE_V2025-07-16-xiaj(IDP设计图纸管理).sql
new file mode 100644
index 00000000..1525ca20
--- /dev/null
+++ b/DataBase/版本日志/SUBQHSE_V2025-07-16-xiaj(IDP设计图纸管理).sql
@@ -0,0 +1,109 @@
+
+
+
+--ͼֽ
+IF NOT EXISTS (SELECT * FROM Sys_Menu WHERE MenuId = 'A334796C-1D85-47F9-A9B2-E36BE49FADC2')
+BEGIN
+insert into Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
+values('A334796C-1D85-47F9-A9B2-E36BE49FADC2','ͼֽ','',100,'0','Menu_CQMS',0,0,1)
+insert into Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
+values('13E3544E-AC56-48F9-9BC0-EB14EF4620FF','ļ','CQMS/DesignDrawing/ArchivesLib.aspx',10,'A334796C-1D85-47F9-A9B2-E36BE49FADC2','Menu_CQMS',0,1,1)
+END
+GO
+
+
+IF NOT EXISTS (SELECT * FROM Sys_ButtonToMenu WHERE MenuId = '13E3544E-AC56-48F9-9BC0-EB14EF4620FF')
+BEGIN
+insert into Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex)
+values('54020202-29E6-4B9D-91A7-A2438DDCBD14','13E3544E-AC56-48F9-9BC0-EB14EF4620FF','',1)
+insert into Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex)
+values('F4F906B1-6DFD-440B-A515-0213BE7A3567','13E3544E-AC56-48F9-9BC0-EB14EF4620FF','',2)
+insert into Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex)
+values('5C5EE954-F1F6-4F56-B4B6-0C9AD5672A82','13E3544E-AC56-48F9-9BC0-EB14EF4620FF','ɾ',3)
+insert into Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex)
+values('6621B07E-F6FA-4C8C-BECD-E684FBFCB49D','13E3544E-AC56-48F9-9BC0-EB14EF4620FF','',4)
+END
+GO
+
+
+--ͼֽ
+IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'IDP_DesignDrawing') AND type = N'U')
+BEGIN
+CREATE TABLE [dbo].[IDP_DesignDrawing](
+ [Id] [nvarchar](50) NOT NULL,
+ [idpfileId] [nvarchar](50) NULL,
+ [stockId] [nvarchar](50) NULL,
+ [thirdId] [nvarchar](50) NULL,
+ [projectId] [nvarchar](50) NULL,
+ [projectCode] [nvarchar](50) NULL,
+ [displayProjectName] [nvarchar](500) NULL,
+ [projectDeviceProcedureSubjectCode] [nvarchar](50) NULL,
+ [wbsFullPath] [nvarchar](200) NULL,
+ [formatFileCode] [nvarchar](50) NULL,
+ [formatFileName] [nvarchar](200) NULL,
+ [fileVersion] [nvarchar](50) NULL,
+ [majorNo] [nvarchar](50) NULL,
+ [majorName] [nvarchar](50) NULL,
+ [status] [nvarchar](50) NULL,
+ [designUserName] [nvarchar](50) NULL,
+ [jiaoheUserName] [nvarchar](50) NULL,
+ [shenheUserName] [nvarchar](50) NULL,
+ [shendingUserName] [nvarchar](50) NULL,
+ [majorResponsibleUserName] [nvarchar](50) NULL,
+ [classificationLevelInProject] [nvarchar](50) NULL,
+ [updateTime] [datetime] NULL,
+ [remark] [nvarchar](500) NULL,
+ [RdpId] [nvarchar](50) NULL,
+ [fileid] [nvarchar](50) NULL,
+ [upfileid] [nvarchar](50) NULL,
+ [maintitle] [nvarchar](200) NULL,
+ [doc_no] [nvarchar](50) NULL,
+ [bc] [nvarchar](50) NULL,
+ [archnumber] [nvarchar](50) NULL,
+ [sendtime] [datetime] NULL,
+ [printtime] [datetime] NULL,
+ [ifmail] [nvarchar](50) NULL,
+ CONSTRAINT [PK_IDP_DesignDrawing] PRIMARY KEY CLUSTERED
+(
+ [id] ASC
+)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
+) ON [PRIMARY]
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'Id'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'idpļfileId' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'idpfileId'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'id(IDPId)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'stockId'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ļid' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'thirdId'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ĿID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @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'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'projectCode'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ĿϢ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'displayProjectName'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'װ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'projectDeviceProcedureSubjectCode'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'װ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'wbsFullPath'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ļ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'formatFileCode'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ļ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'formatFileName'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'fileVersion'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'רҵ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'majorNo'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'רҵ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'majorName'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'״̬' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'status'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'designUserName'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'У' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'jiaoheUserName'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'shenheUserName'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'shendingUserName'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'רҵ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'majorResponsibleUserName'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ܵȼ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'classificationLevelInProject'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'updateTime'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ע' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'remark'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ֵRdpId' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'RdpId'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ǰļid' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'fileid'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ºļid' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'upfileid'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ļ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'maintitle'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ļ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'doc_no'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'bc'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'archnumber'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'sendtime'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ͼӡ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'printtime'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ͼǷijǡ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing', @level2type=N'COLUMN',@level2name=N'ifmail'
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ͼֽ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'IDP_DesignDrawing'
+END
+
+GO
+
+
diff --git a/SGGL/BLL/BLL.csproj b/SGGL/BLL/BLL.csproj
index 0d63caf2..1741cc60 100644
--- a/SGGL/BLL/BLL.csproj
+++ b/SGGL/BLL/BLL.csproj
@@ -178,6 +178,7 @@
+
@@ -292,6 +293,7 @@
+
diff --git a/SGGL/BLL/CQMS/DesignDrawing/DesignDrawingService.cs b/SGGL/BLL/CQMS/DesignDrawing/DesignDrawingService.cs
new file mode 100644
index 00000000..4f724174
--- /dev/null
+++ b/SGGL/BLL/CQMS/DesignDrawing/DesignDrawingService.cs
@@ -0,0 +1,281 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Collections;
+using System.Web.UI.WebControls;
+using Model;
+using RestSharp.Extensions;
+
+namespace BLL
+{
+ public class DesignDrawingService
+ {
+
+ ///
+ /// 获取IDP文件
+ ///
+ ///
+ public static List GetIDPDesignDrawingFile()
+ {
+ return (from x in Funs.DB.IDP_DesignDrawing select x).ToList();
+ }
+ ///
+ /// 获取IDP文件id
+ ///
+ ///
+ public static List GetIDPDesignDrawingFileId()
+ {
+ return (from x in Funs.DB.IDP_DesignDrawing select x.IdpfileId).ToList();
+ }
+
+ /////
+ ///// 添加分项
+ /////
+ /////
+ //public static void AddBreakdown(Model.WBS_Breakdown breakdown)
+ //{
+ // Model.SGGLDB db = Funs.DB;
+ // Model.WBS_Breakdown newBreakdown = new Model.WBS_Breakdown();
+
+ // newBreakdown.BreakdownId = breakdown.BreakdownId;
+ // newBreakdown.BreakdownCode = breakdown.BreakdownCode;
+ // newBreakdown.BreakdownName = breakdown.BreakdownName;
+ // newBreakdown.DivisionId = breakdown.DivisionId;
+ // newBreakdown.Basis = breakdown.Basis;
+ // newBreakdown.CheckPoints = breakdown.CheckPoints;
+ // newBreakdown.RecordAndCode = breakdown.RecordAndCode;
+ // newBreakdown.Class = breakdown.Class;
+ // newBreakdown.SortIndex = breakdown.SortIndex;
+ // newBreakdown.Remark = breakdown.Remark;
+ // newBreakdown.ModelURL = breakdown.ModelURL;
+ // newBreakdown.IsAcceptance = breakdown.IsAcceptance;
+ // newBreakdown.FenBao = breakdown.FenBao;
+ // newBreakdown.WuHuan = breakdown.WuHuan;
+ // newBreakdown.JianLi = breakdown.JianLi;
+ // newBreakdown.YeZhu = breakdown.YeZhu;
+ // newBreakdown.CheckAcceptType = breakdown.CheckAcceptType;
+
+ // db.WBS_Breakdown.InsertOnSubmit(newBreakdown);
+ // db.SubmitChanges();
+ //}
+
+ /////
+ ///// 修改分项
+ /////
+ /////
+ //public static void UpdateBreakdown(Model.WBS_Breakdown breakdown)
+ //{
+ // Model.SGGLDB db = Funs.DB;
+ // Model.WBS_Breakdown newBreakdown = db.WBS_Breakdown.First(e => e.BreakdownId == breakdown.BreakdownId);
+ // newBreakdown.BreakdownCode = breakdown.BreakdownCode;
+ // newBreakdown.BreakdownName = breakdown.BreakdownName;
+ // newBreakdown.DivisionId = breakdown.DivisionId;
+ // newBreakdown.Basis = breakdown.Basis;
+ // newBreakdown.CheckPoints = breakdown.CheckPoints;
+ // newBreakdown.RecordAndCode = breakdown.RecordAndCode;
+ // newBreakdown.Class = breakdown.Class;
+ // newBreakdown.SortIndex = breakdown.SortIndex;
+ // newBreakdown.Remark = breakdown.Remark;
+ // newBreakdown.ModelURL = breakdown.ModelURL;
+ // newBreakdown.FenBao = breakdown.FenBao;
+ // newBreakdown.WuHuan = breakdown.WuHuan;
+ // newBreakdown.JianLi = breakdown.JianLi;
+ // newBreakdown.YeZhu = breakdown.YeZhu;
+ // newBreakdown.CheckAcceptType = breakdown.CheckAcceptType;
+ // db.SubmitChanges();
+ //}
+
+
+
+ ///
+ /// 装工主名称下拉框
+ ///
+ /// 项目id
+ /// 下拉框名字
+ /// 是否显示请选择
+ public static void InitWbsFullPathDropDownList(FineUIPro.DropDownList dropName, string projectId, bool isShowPlease)
+ {
+ dropName.DataValueField = "string";
+ dropName.DataTextField = "string";
+ dropName.DataSource = GetWbsFullPathDropDownList(projectId);
+ dropName.DataBind();
+ if (isShowPlease)
+ {
+ Funs.FineUIPleaseSelect(dropName);
+ }
+ }
+
+ ///
+ /// 装工主名称下拉框
+ ///
+ /// 项目id
+ ///
+ public static List GetWbsFullPathDropDownList(string projectId)
+ {
+ var list = (from x in Funs.DB.IDP_DesignDrawing
+ where x.ProjectId == projectId && x.WbsFullPath != null
+ select x.WbsFullPath).Distinct().OrderBy(x => x).ToList();
+ return list;
+ }
+
+
+ ///
+ /// 版次下拉框
+ ///
+ /// 项目id
+ /// 下拉框名字
+ /// 是否显示请选择
+ public static void InitFileVersionDropDownList(FineUIPro.DropDownList dropName, string projectId, bool isShowPlease)
+ {
+ dropName.DataValueField = "string";
+ dropName.DataTextField = "string";
+ dropName.DataSource = GetFileVersionDropDownList(projectId);
+ dropName.DataBind();
+ if (isShowPlease)
+ {
+ Funs.FineUIPleaseSelect(dropName);
+ }
+ }
+
+ ///
+ /// 版次下拉框
+ ///
+ /// 项目id
+ ///
+ public static List GetFileVersionDropDownList(string projectId)
+ {
+ var list = (from x in Funs.DB.IDP_DesignDrawing
+ where x.ProjectId == projectId && x.FileVersion != null
+ select x.FileVersion).Distinct().OrderBy(x => x).ToList();
+ return list;
+ }
+
+
+ ///
+ /// 专业编码下拉框
+ ///
+ /// 项目id
+ /// 下拉框名字
+ /// 是否显示请选择
+ public static void InitMajorNoDropDownList(FineUIPro.DropDownList dropName, string projectId, bool isShowPlease)
+ {
+ dropName.DataValueField = "string";
+ dropName.DataTextField = "string";
+ dropName.DataSource = GetMajorNoDropDownList(projectId);
+ dropName.DataBind();
+ if (isShowPlease)
+ {
+ Funs.FineUIPleaseSelect(dropName);
+ }
+ }
+
+ ///
+ /// 专业编码下拉框
+ ///
+ /// 项目id
+ ///
+ public static List GetMajorNoDropDownList(string projectId)
+ {
+ var list = (from x in Funs.DB.IDP_DesignDrawing
+ where x.ProjectId == projectId && x.MajorNo != null
+ select x.MajorNo).Distinct().OrderBy(x => x).ToList();
+ return list;
+ }
+
+ ///
+ /// 专业名称下拉框
+ ///
+ /// 项目id
+ /// 下拉框名字
+ /// 是否显示请选择
+ public static void InitMajorNameDropDownList(FineUIPro.DropDownList dropName, string projectId, bool isShowPlease)
+ {
+ dropName.DataValueField = "string";
+ dropName.DataTextField = "string";
+ dropName.DataSource = GetMajorNameDropDownList(projectId);
+ dropName.DataBind();
+ if (isShowPlease)
+ {
+ Funs.FineUIPleaseSelect(dropName);
+ }
+ }
+
+ ///
+ /// 专业名称下拉框
+ ///
+ /// 项目id
+ ///
+ public static List GetMajorNameDropDownList(string projectId)
+ {
+ var list = (from x in Funs.DB.IDP_DesignDrawing
+ where x.ProjectId == projectId && x.MajorName != null
+ select x.MajorName).Distinct().OrderBy(x => x).ToList();
+ return list;
+ }
+
+
+ ///
+ /// 发布状态下拉框
+ ///
+ /// 项目id
+ /// 下拉框名字
+ /// 是否显示请选择
+ public static void InitStatusNameDropDownList(FineUIPro.DropDownList dropName, string projectId, bool isShowPlease)
+ {
+ dropName.DataValueField = "string";
+ dropName.DataTextField = "string";
+ dropName.DataSource = GetStatusDropDownList(projectId);
+ dropName.DataBind();
+ if (isShowPlease)
+ {
+ Funs.FineUIPleaseSelect(dropName);
+ }
+ }
+
+ ///
+ /// 发布状态下拉框
+ ///
+ /// 项目id
+ ///
+ public static List GetStatusDropDownList(string projectId)
+ {
+ var list = (from x in Funs.DB.IDP_DesignDrawing
+ where x.ProjectId == projectId && x.Status != null
+ select x.Status).Distinct().OrderBy(x => x).ToList();
+ return list;
+ }
+
+ /////
+ // /// 装工主名称下拉框
+ // ///
+ // /// 项目id
+ // ///
+ //public static List GetWbsFullPathDropDownList(string projectId)
+ //{
+ // var list = (from x in Funs.DB.Transfer_PunchlistFrom
+ // where x.ProjectId == projectId
+ // select x.Action_By).Distinct().OrderBy(x => x).ToList();
+ // return list;
+ //}
+
+ /////
+ ///// 装工主名称下拉框
+ /////
+ ///// 项目id
+ ///// 下拉框名字
+ ///// 是否显示请选择
+ //public static void InitActionByUnitDropDownList(FineUIPro.DropDownList dropName, string projectId, bool isShowPlease)
+ //{
+ // dropName.DataValueField = "string";
+ // dropName.DataTextField = "string";
+ // dropName.DataSource = GetActionByUnitDropDownList(projectId);
+ // dropName.DataBind();
+ // if (isShowPlease)
+ // {
+ // Funs.FineUIPleaseSelect(dropName);
+ // }
+ //}
+
+ }
+}
diff --git a/SGGL/BLL/Common/Const.cs b/SGGL/BLL/Common/Const.cs
index b30e620e..06a3ca78 100644
--- a/SGGL/BLL/Common/Const.cs
+++ b/SGGL/BLL/Common/Const.cs
@@ -3925,6 +3925,14 @@ namespace BLL
public const string CheckListMenuId = "B3E99BD9-FDC7-4F15-8C3C-A7821AC9E306";
#endregion
+
+ #region 质量设计图纸管理
+ ///
+ /// 档案文件库
+ ///
+ public const string ArchivesLibMenuId = "13E3544E-AC56-48F9-9BC0-EB14EF4620FF";
+ #endregion
+
#region 质量共检
///
/// 质量共检
diff --git a/SGGL/BLL/Common/Funs.cs b/SGGL/BLL/Common/Funs.cs
index 1cfd69fd..b2715e7a 100644
--- a/SGGL/BLL/Common/Funs.cs
+++ b/SGGL/BLL/Common/Funs.cs
@@ -39,13 +39,13 @@ namespace BLL
get;
set;
}
- public static DictionaryWebEditList= new Dictionary();
+ public static Dictionary WebEditList = new Dictionary();
///
/// ݿַ
///
private static string connString;
-
+
///
/// ݿַ
///
@@ -294,7 +294,7 @@ namespace BLL
DDL.Items.Insert(0, new FineUIPro.ListItem("- ѡ -", BLL.Const._Null));
return;
}
-
+
///
/// ΪĿѡ
///
@@ -623,11 +623,64 @@ namespace BLL
Random rm = new Random(System.Environment.TickCount);
if (dateTime.HasValue)
{
- str= dateTime.Value.ToString("yyyyMMddhhmmss") + rm.Next(1000, 9999).ToString();
+ str = dateTime.Value.ToString("yyyyMMddhhmmss") + rm.Next(1000, 9999).ToString();
}
return str;
}
+
+ #region ʱ
+
+ ///
+ /// ȡǰʱʱ
+ ///
+ /// ʱȣĬ10λ
+ ///
+ public static long GetNowTimeStamp(int size = 10)
+ {
+ long result = 0;
+ // ȡǰʱ
+ DateTimeOffset now = DateTimeOffset.Now;
+ // ȡUnixԪʱ䣨1970-01-01ڵʱ
+ TimeSpan timeSpan = now - new DateTimeOffset(1970, 1, 1, 0, 0, 0, TimeSpan.Zero);
+ if (size == 13)
+ {
+ // תΪ͵ĺ
+ result = (long)timeSpan.TotalMilliseconds;
+ }
+ else
+ {
+ result = (long)timeSpan.TotalSeconds;
+ }
+ return result;
+ }
+
+ ///
+ /// ȡָʱʱ
+ ///
+ ///
+ ///
+ ///
+ public static long GetDateTimeStamp(DateTimeOffset dateOffset, int size = 10)
+ {
+ long result = 0;
+ DateTimeOffset epochStart = new DateTimeOffset(1970, 1, 1, 0, 0, 0, TimeSpan.Zero);
+ // ȡUnixԪʱ䣨1970-01-01ڵʱ
+ TimeSpan timeSpan = dateOffset - epochStart;
+ if (size == 13)
+ {
+ // תΪ͵ĺ
+ result = (long)timeSpan.TotalMilliseconds;
+ }
+ else
+ {
+ result = (long)timeSpan.TotalSeconds;
+ }
+ return result;
+ }
+
+ #endregion
+
#region ʱת
///
/// ıתʱ
@@ -639,7 +692,7 @@ namespace BLL
{
if (!String.IsNullOrEmpty(time))
{
- DateTime dateTime = DateTime.Parse(time);
+ DateTime dateTime = DateTime.Parse(time);
if (dateTime.Year > 1753 && dateTime.Year < 9999)
{
return dateTime;
@@ -950,7 +1003,7 @@ namespace BLL
}
#region ȡд¼
- public static string NumericCapitalization(decimal num)
+ public static string NumericCapitalization(decimal num)
{
string str1 = "Ҽ½ƾ"; //0-9Ӧĺ
string str2 = "ǪʰǪʰǪʰԪǷ"; //λӦĺ
@@ -1081,7 +1134,7 @@ namespace BLL
return str.ToArray();
}
- public static string GetStringByArray(string[] array)
+ public static string GetStringByArray(string[] array)
{
string str = string.Empty;
foreach (var item in array)
diff --git a/SGGL/BLL/Common/HttpHelper.cs b/SGGL/BLL/Common/HttpHelper.cs
new file mode 100644
index 00000000..00c0401e
--- /dev/null
+++ b/SGGL/BLL/Common/HttpHelper.cs
@@ -0,0 +1,72 @@
+using System;
+using System.Collections.Generic;
+using System.Net;
+using RestSharp;
+
+namespace BLL
+{
+ public static class HttpHelper
+ {
+ ///
+ /// GET请求
+ ///
+ ///
+ ///
+ ///
+
+ public static string Get(string url, Dictionary token)
+ {
+ ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3 | SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12;
+
+ var client = new RestClient(url);
+ client.Timeout = -1;
+ var request = new RestRequest(Method.GET);
+ if (token != null)
+ {
+ foreach (var item in token)
+ {
+ request.AddHeader(item.Key, item.Value);
+ }
+ }
+ request.AddHeader("ClientId", SysConstSetService.ClientId);
+ request.AddHeader("OperationCode", url.Substring(url.LastIndexOf("/", StringComparison.Ordinal) + 1));
+ IRestResponse response = client.Execute(request);
+ return response.Content;
+ }
+
+
+ ///
+ /// POST请求
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static string Post(string url, Dictionary token, string jsonBody)
+ {
+ ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
+
+ var client = new RestClient(url);
+ client.Timeout = -1;
+ var request = new RestRequest(Method.POST);
+ if (token != null)
+ {
+ foreach (var item in token)
+ {
+ request.AddHeader(item.Key, item.Value);
+ }
+ }
+ request.AddHeader("ClientId", SysConstSetService.ClientId);
+ request.AddHeader("OperationCode", url.Substring(url.LastIndexOf("/", StringComparison.Ordinal) + 1));
+ if (!string.IsNullOrEmpty(jsonBody))
+ {
+ request.AddJsonBody(jsonBody);
+ }
+
+ IRestResponse response = client.Execute(request);
+ return response.Content;
+ }
+
+
+ }
+}
\ No newline at end of file
diff --git a/SGGL/BLL/IDP/IDPDataService.cs b/SGGL/BLL/IDP/IDPDataService.cs
index 57b8f5eb..e3d21101 100644
--- a/SGGL/BLL/IDP/IDPDataService.cs
+++ b/SGGL/BLL/IDP/IDPDataService.cs
@@ -1,4 +1,5 @@
using Apache.NMS.ActiveMQ.Commands;
+using Aspose.Words.Lists;
using Microsoft.SqlServer.Dts.Runtime;
using Model;
using Newtonsoft.Json;
@@ -8,20 +9,39 @@ using SgManager.AI;
using System;
using System.Collections;
using System.Collections.Generic;
+using System.Globalization;
using System.IO;
using System.Linq;
using System.Net;
using System.Security.Cryptography;
+using System.Security.Policy;
+using System.ServiceModel.Channels;
using System.Text;
namespace BLL
{
+ ///
+ /// IDP平台接口服务
+ ///
public static class IDPDataService
{
+ ///
+ /// 测试环境api地址
+ ///
+ private static readonly string IDPApiUrl = "http://10.5.6.151:8100/";
+ /////
+ ///// 正式环境api地址
+ /////
//private static readonly string IDPApiUrl = "https://idp.cwcec.com/";
- private static readonly string IDPApiUrl = SysConstSetService.WuHuanIDPPath;
- ////private static readonly string publicKey = "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQChnc2YD0YzJPx6QTh+/n7XzjR1ugFzrsmPolJhpCfWMKrSGbT7iX/Kgcm1AI+T95K4Jzv3KS42QTecZ1ziJ4Rr9Luzw+9ZCSjMZgrmAUbY5IeBaA6GzaSk8UWHZ4n5PL+GUGq+2f+COL7+KCS2AxEpaqDZVrJrIfg/UektdgNyzwIDAQAB";
+ //private static readonly string IDPApiUrl = SysConstSetService.WuHuanIDPPath;
+
+ #region 接口授权认证
+
+ ///
+ /// 加密公钥
+ ///
private static readonly string publicKey = "g1sk7Xtc1TJouHdY4+FAe5atGCu2n17NhoKVDV57pki1IL+9+S7BY4gxAjmMkUU2/cbCCdbPoUJLBrCBCjX7yI3UJW6FZwQWkn3kVoeulLEwdPCIq/GUjMXaWf3Iaaad5wBUFbfXAzv15VN6z48Nt1IY/O8YEzhIpuZdtEgDdos=AQAB";
+ //private static readonly string publicKey = "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQChnc2YD0YzJPx6QTh+/n7XzjR1ugFzrsmPolJhpCfWMKrSGbT7iX/Kgcm1AI+T95K4Jzv3KS42QTecZ1ziJ4Rr9Luzw+9ZCSjMZgrmAUbY5IeBaA6GzaSk8UWHZ4n5PL+GUGq+2f+COL7+KCS2AxEpaqDZVrJrIfg/UektdgNyzwIDAQAB";
///
/// 第三方加密认证接口
@@ -30,48 +50,60 @@ namespace BLL
///
public static SessionItem GetAuthenticationSession()
{
- //// 创建RSA加密服务提供者
- ////using (RSA rsa = RSA.Create())
- //using (RSACryptoServiceProvider rsa = new RSACryptoServiceProvider())
- //{
- //// 获取公钥false表示只导出公钥
- //string publicKey = rsa.ToXmlString(false);
- //// 获取私钥true表示导出公钥和私钥
- //string privateKey = rsa.ToXmlString(true);
-
SessionItem session = new SessionItem();
-
- ////用户名加密
- //string encryptedUsername = EncryptData("dataviewer", publicKey);
- ////密码加密
- //string encryptedPassword = EncryptData("a3365$!", publicKey);
-
- //用户名加密后的密文
- string encryptedUsername = "k0N0tx/hfRPY0v2lq1G8eH6hCO+UiMqlSZi1PD6bhGf4YpP/koJq5hfMsDSzdn3dZjzExrwyrjFWp/1jZLde0+gRbQ0D7tzm0R5D6AmriodD2cJvrEiwtDy7SeGNloSaNmpTEMuycpuueiOeGhMkKnTwWfRkEw73lxEpTmaahq4=";
- //密码加密后的密文
- string encryptedPassword = "HLLroiNJJzyTWJt9td1xgChbVzyQkoxWCGGXqdwI2cvlUF/A30FAPaInszSwEhNRQlJZZ01EODElemkgv36DMF+XGwfDi0BfIq9jKG+/+wq0TVOHNhiu2NPzpn5Ji2X3yXIXpH1zv6XEtkvx/qiLToZYfRQCufsl5vH1cZxk2fQ=";
-
- string url = $"{IDPApiUrl}UAMS/authEncrypt";
- string contenttype = "application/json;charset=utf-8";
- var body = new
+ try
{
- encryptedUsername = encryptedUsername,
- encryptedPassword = encryptedPassword
- };
+ //// 创建RSA加密服务提供者
+ ////using (RSA rsa = RSA.Create())
+ //using (RSACryptoServiceProvider rsa = new RSACryptoServiceProvider())
+ //{
+ //// 获取公钥false表示只导出公钥
+ //string publicKey = rsa.ToXmlString(false);
+ //// 获取私钥true表示导出公钥和私钥
+ //string privateKey = rsa.ToXmlString(true);
- string pushContent = JsonConvert.SerializeObject(body);
- //var returndata = BLL.APIGetHttpService.OutsideHttp(url, "POST", null, null, pushContent);
- string strJosn = APIGetHttpService.Http(url, "POST", contenttype, null, pushContent);
- JObject obj = JObject.Parse(strJosn);
- if (!string.IsNullOrEmpty(strJosn))
+
+ ////用户名加密
+ //string encryptedUsername = EncryptData("dataviewer", publicKey);
+ ////密码加密
+ //string encryptedPassword = EncryptData("a3365$!", publicKey);
+
+ //用户名加密后的密文
+ string encryptedUsername = "k0N0tx/hfRPY0v2lq1G8eH6hCO+UiMqlSZi1PD6bhGf4YpP/koJq5hfMsDSzdn3dZjzExrwyrjFWp/1jZLde0+gRbQ0D7tzm0R5D6AmriodD2cJvrEiwtDy7SeGNloSaNmpTEMuycpuueiOeGhMkKnTwWfRkEw73lxEpTmaahq4=";
+ //密码加密后的密文
+ string encryptedPassword = "HLLroiNJJzyTWJt9td1xgChbVzyQkoxWCGGXqdwI2cvlUF/A30FAPaInszSwEhNRQlJZZ01EODElemkgv36DMF+XGwfDi0BfIq9jKG+/+wq0TVOHNhiu2NPzpn5Ji2X3yXIXpH1zv6XEtkvx/qiLToZYfRQCufsl5vH1cZxk2fQ=";
+
+ string url = $"{IDPApiUrl}UAMS/authEncrypt";
+ //string url = $"http://10.5.6.151:8100/UAMS/authEncrypt";
+ string contenttype = "application/json;charset=utf-8";
+ var body = new
+ {
+ encryptedUsername = encryptedUsername,
+ encryptedPassword = encryptedPassword
+ };
+
+ string pushContent = JsonConvert.SerializeObject(body);
+ string strJosn = APIGetHttpService.Http(url, "POST", contenttype, null, pushContent);
+ //string strJosn = HttpHelper.Post(url, null, pushContent);
+ JObject obj = JObject.Parse(strJosn);
+ if (!string.IsNullOrEmpty(strJosn))
+ {
+ string value = obj["value"].ToString();
+ string name = obj["name"].ToString();
+ session.value = value;
+ session.name = name;
+ }
+ //}
+ }
+ catch (WebException ex)
{
- string value = obj["value"].ToString();
- string name = obj["name"].ToString();
- session.value = value;
- session.name = name;
+ return null;
+ }
+ finally
+ {
+
}
return session;
- //}
}
///
@@ -100,6 +132,247 @@ namespace BLL
}
}
+ #endregion
+
+ #region 质量管理设计图纸
+
+ #region IDP
+
+ ///
+ /// 质量管理设计图纸
+ ///
+ /// 项目Id
+ /// 获取指定日期之后到现在的异动数据
+ public static void GetIDPProjectDesignDrawingData(string projectId = "", string startDate = "")
+ {
+ try
+ {
+ //五环主数据项目Code
+ string projectCode = string.Empty;
+ if (!string.IsNullOrWhiteSpace(projectId))
+ {//根据施工平台项目Id获取主数据项目Code
+ var getPro = ProjectService.GetProjectByProjectId(projectId);
+ projectCode = getPro.ProjectCode;
+ }
+
+ string timeStampStr = string.Empty;
+ if (!string.IsNullOrWhiteSpace(startDate))
+ {
+ string format = "yyyy-MM-dd";
+ DateTimeOffset dateTimeOffset = DateTimeOffset.ParseExact(startDate, format, CultureInfo.InvariantCulture);
+ long timeStamp = Funs.GetDateTimeStamp(dateTimeOffset, 13);
+ timeStampStr = timeStamp.ToString();
+ }
+
+ var session = GetAuthenticationSession();
+ //ErrLogInfo.WriteLog($"【Session】name:{session.name};value:{session.value}");
+ Hashtable newToken = new Hashtable { { "Cookie", $"{session.name}={session.value}" } };
+
+ List listAdd = new List();
+ List listModify = new List();
+
+ int pageSize = 1000;//一次性最多返回1000条数据
+ int maxPageNum = 100;
+ List idpFileIds = DesignDrawingService.GetIDPDesignDrawingFileId();
+ List idpFiles = DesignDrawingService.GetIDPDesignDrawingFile();
+ for (int pageNum = 1; pageNum < 100000; pageNum++)
+ {
+ if (pageNum > maxPageNum) { break; }
+ string url = $"{IDPApiUrl}EDC/third/workitems?pageNum={pageNum}&pageSize={pageSize}";
+ if (!string.IsNullOrWhiteSpace(timeStampStr)) { url = $"{url}&lastTimestamp={timeStampStr}"; }
+ if (!string.IsNullOrWhiteSpace(projectCode)) { url = $"{url}&projectCode={projectCode}"; }
+
+ var returndata = BLL.APIGetHttpService.OutsideHttp(url, "GET", null, newToken, null);
+ if (!string.IsNullOrEmpty(returndata))
+ {
+ IDPDesignDrawingResponseData responseData = IDPDesignDrawingResponseData.FromJson(returndata);
+ maxPageNum = responseData.page.pages;
+ foreach (var item in responseData.page.results)
+ {
+ IDP_DesignDrawing newItem = new IDP_DesignDrawing();
+ if (!string.IsNullOrWhiteSpace(projectId))
+ {
+ newItem.ProjectId = projectId;
+ }
+ else
+ {
+ if (string.IsNullOrWhiteSpace(item.projectCode))
+ {
+ continue;
+ }
+ var getProject = ProjectService.GetProjectByProjectCode(item.projectCode);
+ if (getProject == null)
+ {
+ continue;
+ }
+ newItem.ProjectId = getProject.ProjectId;
+ }
+ newItem.IdpfileId = item.fileId;
+ newItem.StockId = item.stockId;
+ newItem.ThirdId = item.thirdId;
+ newItem.ProjectCode = item.projectCode;
+ newItem.DisplayProjectName = item.displayProjectName;
+ newItem.ProjectDeviceProcedureSubjectCode = item.projectDeviceProcedureSubjectCode;
+ newItem.WbsFullPath = item.wbsFullPath;
+ newItem.FormatFileName = item.formatFileName;
+ newItem.FileVersion = item.fileVersion;
+ newItem.MajorNo = item.majorNo;
+ newItem.MajorName = item.majorName;
+ newItem.Status = item.status;
+ newItem.DesignUserName = item.designUserName;
+ newItem.JiaoheUserName = item.jiaoheUserName;
+ newItem.ShenheUserName = item.shenheUserName;
+ newItem.ShendingUserName = item.shendingUserName;
+ newItem.MajorResponsibleUserName = item.majorResponsibleUserName;
+ newItem.ClassificationLevelInProject = item.classificationLevelInProject;
+ newItem.UpdateTime = item.updateTime;
+ newItem.Remark = item.remark;
+
+ if (!string.IsNullOrWhiteSpace(item.fileId) && idpFileIds.Contains(item.fileId))
+ {//编辑
+ newItem.Id = idpFiles.Where(x => x.IdpfileId == item.fileId).FirstOrDefault().Id;
+ listModify.Add(newItem);
+ }
+ else
+ {//新增
+ newItem.Id = SQLHelper.GetNewID(typeof(IDP_DesignDrawing));
+ listAdd.Add(newItem);
+ }
+ }
+ }
+ else
+ {
+ break;
+ }
+ }
+
+
+ if (listAdd.Any())
+ {
+ AddIDP_DesignDrawing(listAdd);
+ }
+ if (listModify.Any())
+ {
+ ModifyIDP_DesignDrawing(listModify);
+ }
+ }
+ catch (WebException ex)
+ {
+
+ }
+ }
+
+ ///
+ /// 批量插入数据
+ ///
+ ///
+ public static void AddIDP_DesignDrawing(List list)
+ {
+ Model.SGGLDB db = Funs.DB;
+ db.IDP_DesignDrawing.InsertAllOnSubmit(list);
+ db.SubmitChanges();
+ }
+
+ ///
+ /// 更新数据
+ ///
+ ///
+ public static void ModifyIDP_DesignDrawing(List list)
+ {
+ Model.SGGLDB db = Funs.DB;
+ foreach (var obj in list)
+ {
+ IDP_DesignDrawing newItem = db.IDP_DesignDrawing.FirstOrDefault(x => x.Id == obj.Id);
+ if (newItem != null)
+ {
+ newItem.StockId = obj.StockId;
+ newItem.ThirdId = obj.ThirdId;
+ newItem.ProjectId = obj.ProjectId;
+ newItem.ProjectCode = obj.ProjectCode;
+ newItem.DisplayProjectName = obj.DisplayProjectName;
+ newItem.ProjectDeviceProcedureSubjectCode = obj.ProjectDeviceProcedureSubjectCode;
+ newItem.WbsFullPath = obj.WbsFullPath;
+ newItem.FormatFileName = obj.FormatFileName;
+ newItem.FileVersion = obj.FileVersion;
+ newItem.MajorNo = obj.MajorNo;
+ newItem.MajorName = obj.MajorName;
+ newItem.Status = obj.Status;
+ newItem.DesignUserName = obj.DesignUserName;
+ newItem.JiaoheUserName = obj.JiaoheUserName;
+ newItem.ShenheUserName = obj.ShenheUserName;
+ newItem.ShendingUserName = obj.ShendingUserName;
+ newItem.MajorResponsibleUserName = obj.MajorResponsibleUserName;
+ newItem.ClassificationLevelInProject = obj.ClassificationLevelInProject;
+ newItem.UpdateTime = obj.UpdateTime;
+ newItem.Remark = obj.Remark;
+ db.SubmitChanges();
+ }
+ }
+ }
+
+ #endregion
+
+ #region 数字档案馆
+
+ ///
+ /// 接收保存数据
+ ///
+ ///
+ public static string SaveDesignDrawingData(List items)
+ {
+ try
+ {
+ string message = string.Empty;
+ int succ = 0;
+ int err = 0;
+ using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
+ {
+ foreach (var item in items)
+ {
+ if (!string.IsNullOrWhiteSpace(item.RdpId) && !string.IsNullOrWhiteSpace(item.fileid))
+ {
+ IDP_DesignDrawing newItem = db.IDP_DesignDrawing.FirstOrDefault(x => x.StockId == item.RdpId && x.ThirdId == item.fileid);
+ if (newItem != null)
+ {
+ newItem.RdpId = item.RdpId;
+ newItem.Fileid = item.fileid;
+ newItem.Upfileid = item.upfileid;
+ newItem.Maintitle = item.maintitle;
+ newItem.Doc_no = item.doc_no;
+ newItem.Bc = item.bc;
+ newItem.Archnumber = item.archnumber;
+ newItem.Sendtime = item.sendtime;
+ newItem.Printtime = item.printtime;
+ newItem.Ifmail = item.ifmail;
+ db.SubmitChanges();
+ succ++;
+ }
+ else
+ {
+ err++;
+ }
+ }
+ else
+ {
+ err++;
+ }
+ }
+ message = $"总数{(succ + err)}条;失败{err}条,成功{succ}条!";
+ }
+ return message;
+ }
+ catch (WebException ex)
+ {
+ return ex.Message;
+ }
+ }
+
+
+ #endregion
+
+ #endregion
+
+ #region 试车工作包
///
/// 获取工作包结构化数据
@@ -114,6 +387,9 @@ namespace BLL
//string url = $"{IDPApiUrl}/OSS/projects/{projectId}/wbs/{wbsCode}/workitems/{workitemCode}/objects/latest";
string url = $"{IDPApiUrl}/OSS/projects/9100168/wbs/000000/workitems/CP2100/objects/latest";
+
+ //测试环境接口地址
+ var testApiUrl = "http://10.5.6.151:8100/OSS/projects/9100168/wbs/000000/workitems/CP2100/objects/latest";
try
{
var session = GetAuthenticationSession();
@@ -131,7 +407,6 @@ namespace BLL
{
}
-
}
@@ -153,6 +428,7 @@ namespace BLL
//}
+ #endregion
}
diff --git a/SGGL/BLL/PMP/PMPDataService.cs b/SGGL/BLL/PMP/PMPDataService.cs
index f87b1968..40993ab5 100644
--- a/SGGL/BLL/PMP/PMPDataService.cs
+++ b/SGGL/BLL/PMP/PMPDataService.cs
@@ -85,7 +85,7 @@ namespace BLL
string data = string.Empty;
string rows = string.Empty;
- List list = new List();
+ List list = new List();
int pageSize = 1000;//一次性最多返回1000条数据
List searchCond = new List();
diff --git a/SGGL/FineUIPro.Web/CQMS/DesignDrawing/ArchivesLib.aspx b/SGGL/FineUIPro.Web/CQMS/DesignDrawing/ArchivesLib.aspx
new file mode 100644
index 00000000..b2a7c7fd
--- /dev/null
+++ b/SGGL/FineUIPro.Web/CQMS/DesignDrawing/ArchivesLib.aspx
@@ -0,0 +1,172 @@
+<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ArchivesLib.aspx.cs" Inherits="FineUIPro.Web.CQMS.DesignDrawing.ArchivesLib" %>
+
+
+
+
+
+
+
+
+ 档案文件库
+
+
+
+
+
+
+
diff --git a/SGGL/FineUIPro.Web/CQMS/DesignDrawing/ArchivesLib.aspx.cs b/SGGL/FineUIPro.Web/CQMS/DesignDrawing/ArchivesLib.aspx.cs
new file mode 100644
index 00000000..a492dca5
--- /dev/null
+++ b/SGGL/FineUIPro.Web/CQMS/DesignDrawing/ArchivesLib.aspx.cs
@@ -0,0 +1,332 @@
+using BLL;
+using FineUIPro.Web.DataShow;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Data.SqlClient;
+using System.IO;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using NPOI.SS.UserModel;
+
+namespace FineUIPro.Web.CQMS.DesignDrawing
+{
+ public partial class ArchivesLib : 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)
+ {
+ this.ProjectId = this.CurrUser.LoginProjectId;
+ this.InitDropDownList();
+
+ ////权限按钮方法
+ //UnitService.InitUnitByProjectIdUnitTypeDropDownList(drpSponsorUnit, this.CurrUser.LoginProjectId, BLL.Const.ProjectUnitType_2, true);
+ //UnitWorkService.InitUnitWorkDownList(drpUnitWork, this.CurrUser.LoginProjectId, true);
+ //CNProfessionalService.InitCNProfessionalDownList(drpCNProfessional, true);
+ //QualityQuestionTypeService.InitQualityQuestionTypeDownList(drpQuestionType, true);
+ //Funs.FineUIPleaseSelect(this.dpHandelStatus);
+ //btnNew.OnClientClick = Window1.GetShowReference("ChecklistEdit.aspx") + "return false;";
+ ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
+ //if (ProjectUnitService.GetProjectUnitTypeByProjectIdUnitId(this.CurrUser.LoginProjectId, CurrUser.UnitId))
+ //{
+ // drpSponsorUnit.SelectedValue = CurrUser.UnitId;
+ // drpSponsorUnit.Readonly = true;
+ //}
+ // 绑定表格
+ BindGrid();
+
+ }
+
+ }
+
+ ///
+ /// 下拉加载
+ ///
+ private void InitDropDownList()
+ {
+ BLL.DesignDrawingService.InitWbsFullPathDropDownList(this.ddlWbsFullPath, this.CurrUser.LoginProjectId, false);
+ BLL.DesignDrawingService.InitFileVersionDropDownList(this.ddlFileVersion, this.CurrUser.LoginProjectId, false);
+ BLL.DesignDrawingService.InitMajorNameDropDownList(this.ddlMajorName, this.CurrUser.LoginProjectId, false);
+ //BLL.DesignDrawingService.InitMajorNoDropDownList(this.ddlMajorNo, this.CurrUser.LoginProjectId, false);
+ BLL.DesignDrawingService.InitStatusNameDropDownList(this.ddlStatus, this.CurrUser.LoginProjectId, false);
+ }
+
+ #endregion
+
+
+ ///
+ /// 获取数据
+ ///
+ ///
+ protected DataTable BindData()
+ {
+ string strSql = $@"SELECT * FROM IDP_DesignDrawing as lib WHERE lib.ProjectId=@ProjectId ";
+ //ORDER BY lib.updatetime DESC
+ List listStr = new List();
+ listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
+ //strSql += " AND (chec.CheckDate>=@startTime or @startTime='') and (chec.CheckDate<=@endTime or @endTime='') ";
+ //listStr.Add(new SqlParameter("@startTime", !string.IsNullOrEmpty(txtStartTime.Text.Trim()) ? txtStartTime.Text.Trim() + " 00:00:00" : ""));
+ //listStr.Add(new SqlParameter("@endTime", !string.IsNullOrEmpty(txtEndTime.Text.Trim()) ? txtEndTime.Text.Trim() + " 23:59:59" : ""));
+
+ if (this.ddlWbsFullPath.SelectedItemArray.Count() > 1 || (this.ddlWbsFullPath.SelectedValue != BLL.Const._Null && this.ddlWbsFullPath.SelectedItemArray.Count() == 1))
+ {
+ strSql += " AND (1=2 ";
+ int i = 0;
+ foreach (var item in this.ddlWbsFullPath.SelectedValueArray)
+ {
+ if (!string.IsNullOrEmpty(item) && item != BLL.Const._Null)
+ {
+ strSql += " OR WbsFullPath = @WbsFullPath" + i.ToString();
+ listStr.Add(new SqlParameter("@WbsFullPath" + i.ToString(), item));
+ }
+ i++;
+ }
+ strSql += ")";
+ }
+ if (this.ddlFileVersion.SelectedItemArray.Count() > 1 || (this.ddlFileVersion.SelectedValue != BLL.Const._Null && this.ddlFileVersion.SelectedItemArray.Count() == 1))
+ {
+ strSql += " AND (1=2 ";
+ int i = 0;
+ foreach (var item in this.ddlFileVersion.SelectedValueArray)
+ {
+ if (!string.IsNullOrEmpty(item) && item != BLL.Const._Null)
+ {
+ strSql += " OR FileVersion = @FileVersion" + i.ToString();
+ listStr.Add(new SqlParameter("@FileVersion" + i.ToString(), item));
+ }
+ i++;
+ }
+ strSql += ")";
+ }
+ if (this.ddlMajorName.SelectedItemArray.Count() > 1 || (this.ddlMajorName.SelectedValue != BLL.Const._Null && this.ddlMajorName.SelectedItemArray.Count() == 1))
+ {
+ strSql += " AND (1=2 ";
+ int i = 0;
+ foreach (var item in this.ddlMajorName.SelectedValueArray)
+ {
+ if (!string.IsNullOrEmpty(item) && item != BLL.Const._Null)
+ {
+ strSql += " OR MajorName = @MajorName" + i.ToString();
+ listStr.Add(new SqlParameter("@MajorName" + i.ToString(), item));
+ }
+ i++;
+ }
+ strSql += ")";
+ }
+ if (this.ddlStatus.SelectedItemArray.Count() > 1 || (this.ddlStatus.SelectedValue != BLL.Const._Null && this.ddlStatus.SelectedItemArray.Count() == 1))
+ {
+ strSql += " AND (1=2 ";
+ int i = 0;
+ foreach (var item in this.ddlStatus.SelectedValueArray)
+ {
+ if (!string.IsNullOrEmpty(item) && item != BLL.Const._Null)
+ {
+ strSql += " OR Status = @Status" + i.ToString();
+ listStr.Add(new SqlParameter("@Status" + i.ToString(), item));
+ }
+ i++;
+ }
+ strSql += ")";
+ }
+
+ SqlParameter[] parameter = listStr.ToArray();
+ DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
+ return tb;
+ }
+
+ ///
+ /// 绑定数据
+ ///
+
+ public void BindGrid()
+ {
+ DataTable tb = BindData();
+
+ // 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++)
+ //{
+ // string rowID = Grid1.Rows[i].DataKeys[0].ToString();
+ // if (rowID.Count() > 0)
+ // {
+ // Model.Check_CheckControl checkControl = BLL.CheckControlService.GetCheckControl(rowID);
+ // if (checkControl.State.Equals("5") || checkControl.State.Equals("6"))
+ // {
+ // Grid1.Rows[i].CellCssClasses[11] = "LightGreen";//未确认
+ // }
+ // else if (checkControl.State == Const.CheckControl_Complete)
+ // { //闭环
+ // Grid1.Rows[i].CellCssClasses[11] = "Green";
+
+ // }
+ // else if (Convert.ToDateTime(checkControl.LimitDate).AddDays(1) < DateTime.Now) //延期未整改
+ // {
+ // Grid1.Rows[i].CellCssClasses[11] = "Red";
+ // }
+ // else //期内未整改
+ // {
+ // Grid1.Rows[i].CellCssClasses[11] = " Yellow ";
+ // }
+ // }
+ //}
+ }
+
+ #region 获取按钮权限
+ ///
+ /// 获取按钮权限
+ ///
+ ///
+ ///
+ private void GetButtonPower()
+ {
+ if (Request.Params["value"] == "0")
+ {
+ return;
+ }
+ var buttonList = BLL.CommonService.GetAllButtonList(this.ProjectId, this.CurrUser.UserId, BLL.Const.ArchivesLibMenuId);
+ if (buttonList.Count() > 0)
+ {
+ if (buttonList.Contains(BLL.Const.BtnAdd))
+ {
+ //this.btnNew.Hidden = false;
+ }
+ //if (buttonList.Contains(BLL.Const.BtnModify))
+ //{
+ // this.btnMenuModify.Hidden = false;
+ //}
+ //if (buttonList.Contains(BLL.Const.BtnDelete))
+ //{
+ // this.btnMenuDel.Hidden = false;
+ //}
+ }
+ }
+ #endregion
+
+ #region 查询
+
+ protected void btnQuery_Click(object sender, EventArgs e)
+ {
+ BindGrid();
+ }
+
+ ///
+ /// 查询
+ ///
+ ///
+ ///
+ protected void TextBox_TextChanged(object sender, EventArgs e)
+ {
+ this.BindGrid();
+ }
+ #endregion
+
+ #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双击事件
+ ///
+ /// Grid行双击事件
+ ///
+ ///
+ ///
+ protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
+ {
+ //btnMenuModify_Click(null, null);
+ }
+ #endregion
+
+
+ #region 编辑
+
+
+ #endregion
+
+
+
+ }
+}
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/CQMS/DesignDrawing/ArchivesLib.aspx.designer.cs b/SGGL/FineUIPro.Web/CQMS/DesignDrawing/ArchivesLib.aspx.designer.cs
new file mode 100644
index 00000000..32386bb9
--- /dev/null
+++ b/SGGL/FineUIPro.Web/CQMS/DesignDrawing/ArchivesLib.aspx.designer.cs
@@ -0,0 +1,152 @@
+//------------------------------------------------------------------------------
+// <自动生成>
+// 此代码由工具生成。
+//
+// 对此文件的更改可能导致不正确的行为,如果
+// 重新生成代码,则所做更改将丢失。
+// 自动生成>
+//------------------------------------------------------------------------------
+
+namespace FineUIPro.Web.CQMS.DesignDrawing
+{
+
+
+ public partial class ArchivesLib
+ {
+
+ ///
+ /// 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;
+
+ ///
+ /// ddlWbsFullPath 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList ddlWbsFullPath;
+
+ ///
+ /// ddlFileVersion 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList ddlFileVersion;
+
+ ///
+ /// ddlMajorName 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList ddlMajorName;
+
+ ///
+ /// ddlStatus 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList ddlStatus;
+
+ ///
+ /// btnQuery 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnQuery;
+
+ ///
+ /// lblPageIndex 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::System.Web.UI.WebControls.Label lblPageIndex;
+
+ ///
+ /// ToolbarSeparator1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
+
+ ///
+ /// ToolbarText1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.ToolbarText ToolbarText1;
+
+ ///
+ /// ddlPageSize 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.DropDownList ddlPageSize;
+
+ ///
+ /// Window1 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Window Window1;
+ }
+}
diff --git a/SGGL/FineUIPro.Web/FineUIPro.Web.csproj b/SGGL/FineUIPro.Web/FineUIPro.Web.csproj
index f841ead8..9e63843c 100644
--- a/SGGL/FineUIPro.Web/FineUIPro.Web.csproj
+++ b/SGGL/FineUIPro.Web/FineUIPro.Web.csproj
@@ -577,6 +577,7 @@
+
@@ -8481,6 +8482,13 @@
WBSFileEdit.aspx
+
+ ArchivesLib.aspx
+ ASPXCodeBehind
+
+
+ ArchivesLib.aspx
+
ControlPointCheck.aspx
ASPXCodeBehind
diff --git a/SGGL/FineUIPro.Web/common/Menu_CQMS.xml b/SGGL/FineUIPro.Web/common/Menu_CQMS.xml
index 641c523f..0909b3f1 100644
--- a/SGGL/FineUIPro.Web/common/Menu_CQMS.xml
+++ b/SGGL/FineUIPro.Web/common/Menu_CQMS.xml
@@ -68,4 +68,6 @@
+
+
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/indexProject.aspx b/SGGL/FineUIPro.Web/indexProject.aspx
index d365ac13..b4001e4d 100644
--- a/SGGL/FineUIPro.Web/indexProject.aspx
+++ b/SGGL/FineUIPro.Web/indexProject.aspx
@@ -6,7 +6,7 @@
项目概况
- <%----%>
+
@@ -235,6 +235,7 @@
}
+<%--