diff --git a/DataBase/版本日志/SGGLDB_WH_2023-09-27.sql b/DataBase/版本日志/SGGLDB_WH_2023-09-27.sql
index 426ff131..81a2ba2f 100644
Binary files a/DataBase/版本日志/SGGLDB_WH_2023-09-27.sql and b/DataBase/版本日志/SGGLDB_WH_2023-09-27.sql differ
diff --git a/DataBase/版本日志/SGGLDB_WH_2023-09-30.sql b/DataBase/版本日志/SGGLDB_WH_2023-09-30.sql
new file mode 100644
index 00000000..8c9b1c05
--- /dev/null
+++ b/DataBase/版本日志/SGGLDB_WH_2023-09-30.sql
@@ -0,0 +1,47 @@
+--ר¼
+alter table Check_CheckSpecial add ReceiveMan nvarchar(2000) null;
+
+--States0- 1-ύ 2-ͨ 3-ȷ
+
+
+--רϸͼ
+/****** Object: View [dbo].[View_CheckSpecialDetail] Script Date: 2023/9/30 11:19:54 ******/
+SET ANSI_NULLS ON
+GO
+
+SET QUOTED_IDENTIFIER ON
+GO
+/*LEFT JOIN Sys_Const AS const ON const.ConstValue = detail.HandleStep and const.GroupId='HandleStep'*/
+ALTER VIEW [dbo].[View_CheckSpecialDetail]
+AS
+SELECT detail.CheckSpecialDetailId, detail.CheckSpecialId, detail.CheckItem, checkItemSet.CheckItemName, detail.Unqualified,
+ detail.SortIndex, detail.UnitId, detail.HandleStep, detail.CompleteStatus,
+ (CASE WHEN detail.CompleteStatus = 1 THEN 'ϸ' ELSE 'ϸ' END) AS CompleteStatusName, detail.LimitedDate,
+ detail.CompletedDate, detail.CheckContent, detail.CheckArea,
+ workArea.UnitWorkName + (CASE WHEN workArea.ProjectType = '1' THEN '()' WHEN workArea.ProjectType = '2' THEN '(װ)'
+ ELSE '' END) AS CheckAreaName, detail.DataId, detail.DataType, unit.UnitName,
+ dbo.GetConstTextByIds(detail.HandleStep) AS HandleStepStr,
+ (CASE WHEN detail.DataType LIKE '%1%' THEN '·ĵ:' +
+ (SELECT RectifyNoticesCode
+ FROM Check_RectifyNotices
+ WHERE detail.DataId LIKE '%' + RectifyNoticesId + '%') ELSE '' END)
+ + (CASE WHEN detail.DataType LIKE '%2%' THEN '·:' +
+ (SELECT PunishNoticeCode
+ FROM Check_PunishNotice
+ WHERE detail.DataId LIKE '%' + PunishNoticeId + '%') ELSE '' END)
+ + (CASE WHEN detail.DataType = '3' THEN '·ͣ:' +
+ (SELECT PauseNoticeCode
+ FROM Check_PauseNotice
+ WHERE detail.DataId LIKE '%' + PauseNoticeId + '%') ELSE '' END) AS HandleStepLink, detail.HiddenHazardType,
+ (CASE WHEN detail.HiddenHazardType = '3' THEN 'ش' WHEN detail.HiddenHazardType = '2' THEN 'ϴ' WHEN detail.HiddenHazardType
+ = '1' THEN 'һ' ELSE '' END) AS HiddenHazardTypeName, detail.CheckItemSetId, detail.CheckItemSetContent,
+ detail.Rectification_Date
+FROM dbo.Check_CheckSpecialDetail AS detail LEFT OUTER JOIN
+ dbo.Technique_CheckItemSet AS checkItemSet ON checkItemSet.CheckItemSetId = detail.CheckItem LEFT OUTER JOIN
+ dbo.Base_Unit AS unit ON unit.UnitId = detail.UnitId LEFT OUTER JOIN
+ dbo.WBS_UnitWork AS workArea ON detail.CheckArea = workArea.UnitWorkId
+
+
+GO
+
+
diff --git a/DataBase/版本日志/SGGLDB_WH_2023-10-07.sql b/DataBase/版本日志/SGGLDB_WH_2023-10-07.sql
new file mode 100644
index 00000000..990bad7f
--- /dev/null
+++ b/DataBase/版本日志/SGGLDB_WH_2023-10-07.sql
@@ -0,0 +1,4 @@
+alter table Base_Project add ProjType nvarchar(50) null
+GO
+alter table Base_Project add ProjPhase nvarchar(50) null
+GO
\ No newline at end of file
diff --git a/DataBase/版本日志/SGGLDB_WH_2023-10-08.sql b/DataBase/版本日志/SGGLDB_WH_2023-10-08.sql
new file mode 100644
index 00000000..3b5aaea3
--- /dev/null
+++ b/DataBase/版本日志/SGGLDB_WH_2023-10-08.sql
@@ -0,0 +1,31 @@
+Create VIEW [dbo].[View_QualityAudit_GeneralEquipmentQuality] AS
+/*豸Ϣбͼ*/
+SELECT equ.GeneralEquipmentQualityId
+ ,equ.ProjectId
+ ,equ.GeneralEquipmentQualityCode
+ ,equ.UnitId
+ ,Unit.UnitName
+ ,equ.SpecialEquipmentId
+ ,sp.SpecialEquipmentName
+ ,equ.[IsQualified]
+ ,equ.EquipmentCount
+ ,equ.InDate
+ ,equ.Remark
+ ,equ.CompileMan
+ ,U.UserName AS CompileManName
+ ,equ.CompileDate
+ ,equ.QRCodeAttachUrl
+ ,REPLACE(a.AttachUrl,'\', '/') AS AttachUrl
+FROM QualityAudit_GeneralEquipmentQuality AS equ
+LEFT JOIN Base_Unit AS Unit ON Unit.UnitId=equ.UnitId
+LEFT JOIN Base_SpecialEquipment AS sp ON equ.SpecialEquipmentId = sp.SpecialEquipmentId
+LEFT JOIN Sys_User AS U ON U.UserId = equ.CompileMan
+LEFT JOIN AttachFile AS a ON a.ToKeyId = equ.GeneralEquipmentQualityId
+
+
+
+GO
+
+
+update QualityAudit_GeneralEquipmentQuality set QRCodeAttachUrl =NULL
+GO
\ No newline at end of file
diff --git a/SGGL/BLL/API/APIPersonService.cs b/SGGL/BLL/API/APIPersonService.cs
index 7000b083..c89257b8 100644
--- a/SGGL/BLL/API/APIPersonService.cs
+++ b/SGGL/BLL/API/APIPersonService.cs
@@ -58,7 +58,7 @@ namespace BLL
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
{
var getPerson = from x in db.View_SitePerson_Person
- where x.PersonId == personId || x.IdentityCard == personId
+ where (x.PersonId == personId || x.IdentityCard == personId)
select new Model.PersonItem
{
PersonId = x.PersonId,
@@ -1752,5 +1752,83 @@ namespace BLL
return message;
}
+
+ #region 二维码扫码获取人员
+ ///
+ /// 二维码扫码获取人员
+ ///
+ ///
+ ///
+ public static Model.PersonItem getPersonByPersonIdQrcode(string personId)
+ {
+ using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
+ {
+ var getPerson = from x in db.View_SitePerson_Person
+ where (x.PersonId == personId || x.IdentityCard == personId) && x.IsUsed == true
+ select new Model.PersonItem
+ {
+ PersonId = x.PersonId,
+ CardNo = x.CardNo,
+ PersonName = x.PersonName,
+ Sex = x.Sex,
+ SexName = x.SexName,
+ IdentityCard = x.IdentityCard,
+ Address = x.Address,
+ ProjectId = x.ProjectId,
+ ProjectCode = x.ProjectCode,
+ ProjectName = x.ProjectName,
+ UnitId = x.UnitId,
+ UnitCode = x.UnitCode,
+ UnitName = x.UnitName,
+ TeamGroupId = x.TeamGroupId,
+ TeamGroupName = x.TeamGroupName,
+ WorkPostId = x.WorkPostId,
+ WorkPostName = x.WorkPostName,
+ InTime = string.Format("{0:yyyy-MM-dd}", x.InTime),
+ OutTime = string.Format("{0:yyyy-MM-dd}", x.OutTime),
+ OutResult = x.OutResult,
+ Telephone = x.Telephone,
+ PhotoUrl = x.PhotoUrl,
+ DepartName = x.DepartName,
+ IsUsed = x.IsUsed,
+ IsUsedName = x.IsUsed == false ? "不启用" : "启用",
+ AuditorId = x.AuditorId,
+ AuditorName = db.Sys_User.First(z => z.UserId == x.AuditorId).UserName,
+ IsForeign = x.IsForeign.HasValue ? x.IsForeign : false,
+ IsOutside = x.IsOutside.HasValue ? x.IsOutside : false,
+ AuditorDate = string.Format("{0:yyyy-MM-dd}", x.AuditorDate),
+ AttachUrl1 = x.IDCardUrl == null ? APIUpLoadFileService.getFileUrl(personId + "#1", null) : x.IDCardUrl.Replace('\\', '/'),
+ AttachUrl2 = APIUpLoadFileService.getFileUrl(personId + "#2", null),
+ AttachUrl3 = APIUpLoadFileService.getFileUrl(personId + "#3", null),
+ AttachUrl4 = getAttachUrl4(x.PersonId),
+ AttachUrl5 = APIUpLoadFileService.getFileUrl(personId + "#5", null),
+ IdcardType = x.IdcardType,
+ IdcardTypeName = x.IdcardTypeName,
+ IdcardStartDate = string.Format("{0:yyyy-MM-dd}", x.IdcardStartDate),
+ IdcardEndDate = string.Format("{0:yyyy-MM-dd}", x.IdcardEndDate),
+ IdcardForever = x.IdcardForever,
+ IdcardForeverStr = x.IdcardForeverStr,
+ PoliticsStatus = x.PoliticsStatus,
+ PoliticsStatusName = x.PoliticsStatusName,
+ IdcardAddress = x.IdcardAddress,
+ Nation = x.Nation,
+ NationName = x.NationName,
+ EduLevel = x.EduLevel,
+ EduLevelName = x.EduLevelName,
+ MaritalStatus = x.MaritalStatus,
+ MaritalStatusName = x.MaritalStatusName,
+ CountryCode = x.CountryCode,
+ CountryName = x.CountryName,
+ ProvinceCode = x.ProvinceCode,
+ ProvinceName = x.ProvinceName,
+ MainCNProfessionalId = x.MainCNProfessionalId,
+ MainCNProfessionalName = x.MainCNProfessionalName,
+ ViceCNProfessionalId = x.ViceCNProfessionalId,
+ ViceCNProfessionalName = x.ViceCNProfessionalName
+ };
+ return getPerson.FirstOrDefault();
+ }
+ }
+ #endregion
}
}
diff --git a/SGGL/BLL/API/HSSE/APICheckSpecialService.cs b/SGGL/BLL/API/HSSE/APICheckSpecialService.cs
index 03c4a833..3c15b020 100644
--- a/SGGL/BLL/API/HSSE/APICheckSpecialService.cs
+++ b/SGGL/BLL/API/HSSE/APICheckSpecialService.cs
@@ -14,37 +14,96 @@ namespace BLL
///
///
///
- public static Model.CheckSpecialItem getCheckSpecialById(string CheckSpecialId)
+ public static Model.CheckSpecialItem getCheckSpecialById(string CheckSpecialId,string state="0")
{
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
{
- var getInfo = from x in db.Check_CheckSpecial
- where x.CheckSpecialId == CheckSpecialId
- select new Model.CheckSpecialItem
- {
- CheckSpecialId = x.CheckSpecialId,
- ProjectId = x.ProjectId,
- CheckSpecialCode = x.CheckSpecialCode,
- CheckTypeName = (x.CheckType == "1" ? "联合" : "专项"),
- CheckType = x.CheckType,
- CheckItemSetId = x.CheckItemSetId,
- CheckItemSetName = db.Technique_CheckItemSet.First(y => y.CheckItemSetId == x.CheckItemSetId).CheckItemName,
- CheckPersonId = x.CheckPerson,
- CheckPersonName = db.Sys_User.First(u => u.UserId == x.CheckPerson).UserName,
- CheckTime = string.Format("{0:yyyy-MM-dd}", x.CheckTime),
- DaySummary = x.DaySummary,
- PartInUnitIds = x.PartInUnits,
- PartInUnitNames = UnitService.getUnitNamesUnitIds(x.PartInUnits),
- PartInPersonIds = x.PartInPersonIds,
- PartInPersonNames = UserService.getUserNamesUserIds(x.PartInPersonIds),
- PartInPersonNames2 = x.PartInPersonNames,
- CompileManId = x.CompileMan,
- CompileManName = db.Sys_User.First(u => u.UserId == x.CompileMan).UserName,
- States = x.States,
- AttachUrl1 = APIUpLoadFileService.getFileUrl(x.CheckSpecialId, null),
- CheckSpecialDetailItems = getCheckSpecialDetailList(x.CheckSpecialId),
- };
- return getInfo.FirstOrDefault();
+ if (state == "0")
+ {
+ //状态是0的时候查看所有
+ var getInfo = from x in db.Check_CheckSpecial
+ where x.CheckSpecialId == CheckSpecialId
+ select new Model.CheckSpecialItem
+ {
+ CheckSpecialId = x.CheckSpecialId,
+ ProjectId = x.ProjectId,
+ CheckSpecialCode = x.CheckSpecialCode,
+ CheckTypeName = (x.CheckType == "1" ? "联合" : "专项"),
+ CheckType = x.CheckType,
+ CheckItemSetId = x.CheckItemSetId,
+ CheckItemSetName = db.Technique_CheckItemSet.First(y => y.CheckItemSetId == x.CheckItemSetId).CheckItemName,
+ CheckPersonId = x.CheckPerson,
+ CheckPersonName = db.Sys_User.First(u => u.UserId == x.CheckPerson).UserName,
+ CheckTime = string.Format("{0:yyyy-MM-dd}", x.CheckTime),
+ DaySummary = x.DaySummary,
+ PartInUnitIds = x.PartInUnits,
+ PartInUnitNames = UnitService.getUnitNamesUnitIds(x.PartInUnits),
+ PartInPersonIds = x.PartInPersonIds,
+ PartInPersonNames = UserService.getUserNamesUserIds(x.PartInPersonIds),
+ PartInPersonNames2 = x.PartInPersonNames,
+ CompileManId = x.CompileMan,
+ CompileManName = db.Sys_User.First(u => u.UserId == x.CompileMan).UserName,
+ States = x.States,
+ AttachUrl1 = APIUpLoadFileService.getFileUrl(x.CheckSpecialId, null),
+ CheckSpecialDetailItems = getCheckSpecialDetailList(x.CheckSpecialId,"0"),
+
+ ResponsibleUnit = x.ResponsibleUnit,
+ ResponsibleUnitName = UnitService.GetUnitNameByUnitId(x.ResponsibleUnit),
+ WorkAreaId = x.WorkAreaId,
+ WorkAreaName = UnitWorkService.GetUnitWorkName(x.WorkAreaId),
+ QuestionType = x.QuestionType,
+ QuestionTypeName = UnitService.GetQuestionTypeId(x.QuestionType),
+
+ ResponsibleMan = x.ResponsibleMan,
+ ReceiveMan = x.ReceiveMan,
+ ReceiveManName = UserService.getUserNamesUserIds(x.ReceiveMan)
+
+ };
+ return getInfo.FirstOrDefault();
+ }
+ else {
+ //状态是1的时候查看不合格的子项
+ var getInfo = from x in db.Check_CheckSpecial
+ where x.CheckSpecialId == CheckSpecialId
+ select new Model.CheckSpecialItem
+ {
+ CheckSpecialId = x.CheckSpecialId,
+ ProjectId = x.ProjectId,
+ CheckSpecialCode = x.CheckSpecialCode,
+ CheckTypeName = (x.CheckType == "1" ? "联合" : "专项"),
+ CheckType = x.CheckType,
+ CheckItemSetId = x.CheckItemSetId,
+ CheckItemSetName = db.Technique_CheckItemSet.First(y => y.CheckItemSetId == x.CheckItemSetId).CheckItemName,
+ CheckPersonId = x.CheckPerson,
+ CheckPersonName = db.Sys_User.First(u => u.UserId == x.CheckPerson).UserName,
+ CheckTime = string.Format("{0:yyyy-MM-dd}", x.CheckTime),
+ DaySummary = x.DaySummary,
+ PartInUnitIds = x.PartInUnits,
+ PartInUnitNames = UnitService.getUnitNamesUnitIds(x.PartInUnits),
+ PartInPersonIds = x.PartInPersonIds,
+ PartInPersonNames = UserService.getUserNamesUserIds(x.PartInPersonIds),
+ PartInPersonNames2 = x.PartInPersonNames,
+ CompileManId = x.CompileMan,
+ CompileManName = db.Sys_User.First(u => u.UserId == x.CompileMan).UserName,
+ States = x.States,
+ AttachUrl1 = APIUpLoadFileService.getFileUrl(x.CheckSpecialId, null),
+ CheckSpecialDetailItems = getCheckSpecialDetailList(x.CheckSpecialId,"1"),
+
+ ResponsibleUnit = x.ResponsibleUnit,
+ ResponsibleUnitName = UnitService.GetUnitNameByUnitId(x.ResponsibleUnit),
+ WorkAreaId = x.WorkAreaId,
+ WorkAreaName = UnitWorkService.GetUnitWorkName(x.WorkAreaId),
+ QuestionType = x.QuestionType,
+ QuestionTypeName = UnitService.GetQuestionTypeId(x.QuestionType),
+
+ ResponsibleMan = x.ResponsibleMan,
+ ReceiveMan = x.ReceiveMan,
+ ReceiveManName = UserService.getUserNamesUserIds(x.ReceiveMan)
+
+ };
+ return getInfo.FirstOrDefault();
+ }
+
}
}
#endregion
@@ -56,12 +115,14 @@ namespace BLL
///
///
///
- public static List getCheckSpecialList(string projectId, string states)
+ public static List getCheckSpecialList(string projectId, string states,string userid)
{
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
{
var getCheckSpecial = from x in db.Check_CheckSpecial
where x.ProjectId == projectId && x.States ==states
+ //当前保存人、审核人、确认人能看到
+ &&(x.CompileMan==userid || x.ResponsibleMan==userid || userid.Split(',').Contains(x.ReceiveMan))
orderby x.CheckSpecialCode descending
select new Model.CheckSpecialItem
{
@@ -85,6 +146,8 @@ namespace BLL
CompileManName = db.Sys_User.First(u => u.UserId == x.CompileMan).UserName,
States = x.States,
AttachUrl1 = APIUpLoadFileService.getFileUrl(x.CheckSpecialId, null),
+ ReceiveMan=x.ReceiveMan,
+ ReceiveManName= UserService.getUserNamesUserIds(x.ReceiveMan)
};
return getCheckSpecial.ToList();
}
@@ -117,18 +180,39 @@ namespace BLL
PartInPersons = UserService.getUserNamesUserIds(newItem.PartInPersonIds),
PartInPersonNames = newItem.PartInPersonNames2,
CompileMan = newItem.CompileManId,
- States = Const.State_0,
+ States = newItem.States,
+
+ ResponsibleUnit=newItem.ResponsibleUnit,
+ WorkAreaId=newItem.WorkAreaId,
+ QuestionType=newItem.QuestionType,
+ //审核人
+ ResponsibleMan=newItem.ResponsibleMan,
+ ReceiveMan=newItem.ReceiveMan
};
//if (newItem.States != Const.State_1)
//{
// newCheckSpecial.States = Const.State_0;
//}
- if (newItem.CheckSpecialDetailItems == null || newItem.CheckSpecialDetailItems.Count() == 0)
+ //if (newItem.CheckSpecialDetailItems == null || newItem.CheckSpecialDetailItems.Count() == 0)
+ //{
+ // if (newItem.States == Const.State_1)
+ // {
+ // newCheckSpecial.States = Const.State_2;
+ // }
+ //}
+
+ //如果审核状态不为空
+ if (!string.IsNullOrEmpty(newItem.AuditState))
{
- if (newItem.States == Const.State_1)
+ //不同意的话
+ if (newItem.AuditState=="0")
{
- newCheckSpecial.States = Const.State_2;
+ newCheckSpecial.States = "0";
+ }
+ else if (newItem.AuditState=="1")
+ {
+ newCheckSpecial.States = "2";
}
}
@@ -167,31 +251,32 @@ namespace BLL
SaveCheckSpecialDetail(item);
}
//// 单据完成后 系统自动按照单位 整改要求生成隐患整改单
- if (newItem.States == Const.State_1)
- {
- var getC = newItem.CheckSpecialDetailItems.FirstOrDefault(x => x.CompleteStatus == false);
- if (getC == null)
- {
- newCheckSpecial.States = Const.State_2;
- Check_CheckSpecialService.UpdateCheckSpecial(newCheckSpecial);
- }
- else
- {
- var getNA = newItem.CheckSpecialDetailItems.FirstOrDefault(x => x.CompleteStatus == false && (x.HandleStep== null || x.HandleStep==""));
- if (getNA == null)
- {
- var detailLists = db.Check_CheckSpecialDetail.Where(x => x.CheckSpecialId == newCheckSpecial.CheckSpecialId && x.CompleteStatus == false);
- if (detailLists.Count() > 0)
- {
- message = Check_CheckSpecialService.IssueRectification(detailLists.ToList(), newCheckSpecial);
- }
- }
- else
- {
- message += "存在待整改,没有处理措施的记录!";
- }
- }
- }
+ ///五环不需要
+ //if (newItem.States == Const.State_1)
+ //{
+ // var getC = newItem.CheckSpecialDetailItems.FirstOrDefault(x => x.CompleteStatus == false);
+ // if (getC == null)
+ // {
+ // newCheckSpecial.States = Const.State_2;
+ // Check_CheckSpecialService.UpdateCheckSpecial(newCheckSpecial);
+ // }
+ // else
+ // {
+ // var getNA = newItem.CheckSpecialDetailItems.FirstOrDefault(x => x.CompleteStatus == false && (x.HandleStep== null || x.HandleStep==""));
+ // if (getNA == null)
+ // {
+ // var detailLists = db.Check_CheckSpecialDetail.Where(x => x.CheckSpecialId == newCheckSpecial.CheckSpecialId && x.CompleteStatus == false);
+ // if (detailLists.Count() > 0)
+ // {
+ // message = Check_CheckSpecialService.IssueRectification(detailLists.ToList(), newCheckSpecial);
+ // }
+ // }
+ // else
+ // {
+ // message += "存在待整改,没有处理措施的记录!";
+ // }
+ // }
+ //}
}
return message;
}
@@ -204,42 +289,83 @@ namespace BLL
///
///
///
- public static List getCheckSpecialDetailList(string checkSpecialId)
+ public static List getCheckSpecialDetailList(string checkSpecialId,string CompleteStatus="0")
{
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
{
- var getInfo = from x in db.Check_CheckSpecialDetail
- where x.CheckSpecialId == checkSpecialId
- orderby x.SortIndex
- select new Model.CheckSpecialDetailItem
- {
- CheckSpecialDetailId = x.CheckSpecialDetailId,
- CheckSpecialId = x.CheckSpecialId,
- CheckItemSetId = x.CheckItem,
- CheckItemSetName = db.Technique_CheckItemSet.First(y => y.CheckItemSetId == x.CheckItem).CheckItemName,
- CheckContent = x.CheckContent,
- SortIndex = x.SortIndex,
- Unqualified = x.Unqualified,
- Suggestions = x.Suggestions,
- WorkArea = db.WBS_UnitWork.First(y=>y.UnitWorkId ==x.CheckArea).UnitWorkName,
- WorkAreaId=x.CheckArea,
- UnitId = x.UnitId,
- UnitName = db.Base_Unit.First(y => y.UnitId == x.UnitId).UnitName,
- HandleStep = x.HandleStep,
- HandleStepName = getNames(x.HandleStep),
- HiddenHazardType = x.HiddenHazardType,
- HiddenHazardTypeName = x.HiddenHazardType == "3" ? "重大" : (x.HiddenHazardType == "2" ? "较大" : "一般"),
- LimitedDate = string.Format("{0:yyyy-MM-dd}", x.LimitedDate),
- CompleteStatus = x.CompleteStatus,
- CompleteStatusName = x.CompleteStatus == true ? "已整改" : "待整改",
- CompletedDate = string.Format("{0:yyyy-MM-dd}", x.CompletedDate),
- AttachUrl1 = APIUpLoadFileService.getFileUrl(x.CheckSpecialDetailId, null),
+ if (CompleteStatus == "0")
+ {
+ var getInfo = from x in db.Check_CheckSpecialDetail
+ where x.CheckSpecialId == checkSpecialId
+ orderby x.SortIndex
+ select new Model.CheckSpecialDetailItem
+ {
+ CheckSpecialDetailId = x.CheckSpecialDetailId,
+ CheckSpecialId = x.CheckSpecialId,
+ CheckItemSetId = x.CheckItem,
+ CheckItemSetName = db.Technique_CheckItemSet.First(y => y.CheckItemSetId == x.CheckItem).CheckItemName,
+ CheckContent = x.CheckContent,
+ SortIndex = x.SortIndex,
+ Unqualified = x.Unqualified,
+ Suggestions = x.Suggestions,
+ WorkArea = db.WBS_UnitWork.First(y => y.UnitWorkId == x.CheckArea).UnitWorkName,
+ WorkAreaId = x.CheckArea,
+ UnitId = x.UnitId,
+ UnitName = db.Base_Unit.First(y => y.UnitId == x.UnitId).UnitName,
+ HandleStep = x.HandleStep,
+ HandleStepName = getNames(x.HandleStep),
+ HiddenHazardType = x.HiddenHazardType,
+ HiddenHazardTypeName = x.HiddenHazardType == "3" ? "重大" : (x.HiddenHazardType == "2" ? "较大" : "一般"),
+ LimitedDate = string.Format("{0:yyyy-MM-dd}", x.LimitedDate),
+ CompleteStatus = x.CompleteStatus,
+ CompleteStatusName = x.CompleteStatus == true ? "已整改" : "待整改",
+ CompletedDate = string.Format("{0:yyyy-MM-dd}", x.CompletedDate),
+ AttachUrl1 = APIUpLoadFileService.getFileUrl(x.CheckSpecialDetailId, null),
- CheckItemDetailSetId = x.CheckItemSetId,
- CheckItemDetailContent = x.CheckItemSetContent,
- Rectification_Date = string.Format("{0:yyyy-MM-dd}", x.Rectification_Date),
- };
- return getInfo.ToList();
+ CheckItemDetailSetId = x.CheckItemSetId,
+ CheckItemDetailContent = x.CheckItemSetContent,
+ Rectification_Date = string.Format("{0:yyyy-MM-dd}", x.Rectification_Date),
+ CheckOpinions = x.CheckOpinions,
+ };
+ return getInfo.ToList();
+ }
+ else {
+ //查询不合格子项
+ var getInfo = from x in db.Check_CheckSpecialDetail
+ where x.CheckSpecialId == checkSpecialId && x.CompleteStatus==false
+ orderby x.SortIndex
+ select new Model.CheckSpecialDetailItem
+ {
+ CheckSpecialDetailId = x.CheckSpecialDetailId,
+ CheckSpecialId = x.CheckSpecialId,
+ CheckItemSetId = x.CheckItem,
+ CheckItemSetName = db.Technique_CheckItemSet.First(y => y.CheckItemSetId == x.CheckItem).CheckItemName,
+ CheckContent = x.CheckContent,
+ SortIndex = x.SortIndex,
+ Unqualified = x.Unqualified,
+ Suggestions = x.Suggestions,
+ WorkArea = db.WBS_UnitWork.First(y => y.UnitWorkId == x.CheckArea).UnitWorkName,
+ WorkAreaId = x.CheckArea,
+ UnitId = x.UnitId,
+ UnitName = db.Base_Unit.First(y => y.UnitId == x.UnitId).UnitName,
+ HandleStep = x.HandleStep,
+ HandleStepName = getNames(x.HandleStep),
+ HiddenHazardType = x.HiddenHazardType,
+ HiddenHazardTypeName = x.HiddenHazardType == "3" ? "重大" : (x.HiddenHazardType == "2" ? "较大" : "一般"),
+ LimitedDate = string.Format("{0:yyyy-MM-dd}", x.LimitedDate),
+ CompleteStatus = x.CompleteStatus,
+ CompleteStatusName = x.CompleteStatus == true ? "已整改" : "待整改",
+ CompletedDate = string.Format("{0:yyyy-MM-dd}", x.CompletedDate),
+ AttachUrl1 = APIUpLoadFileService.getFileUrl(x.CheckSpecialDetailId, null),
+
+ CheckItemDetailSetId = x.CheckItemSetId,
+ CheckItemDetailContent = x.CheckItemSetContent,
+ Rectification_Date = string.Format("{0:yyyy-MM-dd}", x.Rectification_Date),
+ CheckOpinions = x.CheckOpinions,
+ };
+ return getInfo.ToList();
+ }
+
}
}
///
@@ -290,6 +416,7 @@ namespace BLL
CheckItemDetailSetId=x.CheckItemSetId,
CheckItemDetailContent=x.CheckItemSetContent,
Rectification_Date= string.Format("{0:yyyy-MM-dd}", x.Rectification_Date),
+ CheckOpinions=x.CheckOpinions
};
return getInfo.First();
}
@@ -316,7 +443,7 @@ namespace BLL
UnitId = newDetail.UnitId,
HandleStep = newDetail.HandleStep,
HiddenHazardType = newDetail.HiddenHazardType,
- CompleteStatus = newDetail.CompleteStatus ?? false,
+ CompleteStatus = newDetail.CompleteStatus,
RectifyNoticeId = newDetail.RectifyNoticeId,
LimitedDate = Funs.GetNewDateTime(newDetail.LimitedDate),
CompletedDate = Funs.GetNewDateTime(newDetail.CompletedDate),
@@ -325,10 +452,11 @@ namespace BLL
CheckArea = newDetail.WorkAreaId,
CheckContent = newDetail.CheckContent,
- //整改日期、检查内容、检查内容id
+ //整改日期、检查内容、检查内容id、处理意见
CheckItemSetId= newDetail.CheckItemDetailSetId,
CheckItemSetContent= newDetail.CheckItemDetailContent,
- Rectification_Date = Funs.GetNewDateTime(newDetail.Rectification_Date)
+ Rectification_Date = Funs.GetNewDateTime(newDetail.Rectification_Date),
+ CheckOpinions=newDetail.CheckOpinions,
};
if (newCheckSpecialDetail.CompleteStatus == false && newCheckSpecialDetail.HandleStep.Contains("1") && string.IsNullOrEmpty(newCheckSpecialDetail.HiddenHazardType))
{
@@ -371,10 +499,11 @@ namespace BLL
updateDetail.CheckArea = newCheckSpecialDetail.CheckArea;
updateDetail.CheckContent = newCheckSpecialDetail.CheckContent;
- //整改日期、检查内容、检查内容id
+ //整改日期、检查内容、检查内容id、处理意见
updateDetail.CheckItemSetId = newDetail.CheckItemDetailSetId;
updateDetail.CheckItemSetContent = newDetail.CheckItemDetailContent;
updateDetail.Rectification_Date = Funs.GetNewDateTime(newDetail.Rectification_Date);
+ updateDetail.CheckOpinions = newDetail.CheckOpinions;
db.SubmitChanges();
}
////保存附件
diff --git a/SGGL/BLL/API/HSSE/APIGeneralEquipmentQualityService.cs b/SGGL/BLL/API/HSSE/APIGeneralEquipmentQualityService.cs
new file mode 100644
index 00000000..458e6492
--- /dev/null
+++ b/SGGL/BLL/API/HSSE/APIGeneralEquipmentQualityService.cs
@@ -0,0 +1,148 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using EmitMapper;
+
+namespace BLL
+{
+ public static class APIGeneralEquipmentQualityService
+ {
+ #region 根据equipmentQualityId获取机具设备信息
+ ///
+ /// 根据equipmentQualityId获取机具设备信息
+ ///
+ ///
+ ///
+ public static Model.EquipmentQualityItem getEquipmentQualityByEquipmentQualityIdFactoryCode(string equipmentQualityId)
+ {
+ using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
+ {
+ var getEquipmentQuality = (from x in db.View_QualityAudit_GeneralEquipmentQuality
+ where x.GeneralEquipmentQualityId == equipmentQualityId
+ select new Model.EquipmentQualityItem
+ {
+ EquipmentQualityId = x.GeneralEquipmentQualityId,
+ ProjectId = x.ProjectId,
+ EquipmentQualityCode = x.GeneralEquipmentQualityCode,
+ EquipmentCount = x.EquipmentCount.HasValue? x.EquipmentCount.Value.ToString():"",
+ UnitId = x.UnitId,
+ IsQualified =x.IsQualified.HasValue? x.IsQualified.Value?"是":"否":"",
+ UnitName = x.UnitName,
+ SpecialEquipmentName = x.SpecialEquipmentName,
+ InDate = string.Format("{0:yyyy-MM-dd}", x.InDate),
+ Remark = x.Remark,
+ CompileManId = x.CompileMan,
+ CompileManName = x.CompileManName,
+ CompileDate = string.Format("{0:yyyy-MM-dd}", x.CompileDate),
+ AttachUrl = x.AttachUrl.Replace('\\', '/')
+ }); ;
+ return getEquipmentQuality.FirstOrDefault();
+ }
+ }
+ #endregion
+
+ #region 获取机具设备列表信息
+ ///
+ /// 获取机具设备列表信息
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static List getEquipmentQualityList(string projectId, string unitId, string strParam)
+ {
+ using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
+ {
+ var getEquipmentQuality = from x in db.View_QualityAudit_GeneralEquipmentQuality
+ where x.ProjectId == projectId && (x.UnitId == unitId || unitId == null)
+ && (strParam == null || x.SpecialEquipmentName.Contains(strParam) )
+ orderby x.GeneralEquipmentQualityCode descending
+ select new Model.EquipmentQualityItem
+ {
+ EquipmentQualityId = x.GeneralEquipmentQualityId,
+ ProjectId = x.ProjectId,
+ EquipmentQualityCode = x.GeneralEquipmentQualityCode,
+ EquipmentCount = x.EquipmentCount.HasValue ? x.EquipmentCount.Value.ToString() : "",
+ UnitId = x.UnitId,
+ IsQualified = x.IsQualified.HasValue ? x.IsQualified.Value ? "是" : "否" : "",
+ UnitName = x.UnitName,
+ SpecialEquipmentName = x.SpecialEquipmentName,
+ InDate = string.Format("{0:yyyy-MM-dd}", x.InDate),
+ Remark = x.Remark,
+ CompileManId = x.CompileMan,
+ CompileManName = x.CompileManName,
+ CompileDate = string.Format("{0:yyyy-MM-dd}", x.CompileDate),
+ AttachUrl = x.AttachUrl.Replace('\\', '/')
+ };
+ return getEquipmentQuality.ToList();
+ }
+ }
+ #endregion
+
+ #region 保存QualityAudit_EquipmentQuality
+ ///
+ /// 保存QualityAudit_EquipmentQuality
+ ///
+ /// 机具设备资质
+ ///
+ public static void SaveEquipmentQuality(Model.EquipmentQualityItem newItem)
+ {
+ Model.SGGLDB db = Funs.DB;
+ Model.QualityAudit_GeneralEquipmentQuality newEquipmentQuality = new Model.QualityAudit_GeneralEquipmentQuality
+ {
+ GeneralEquipmentQualityId = newItem.EquipmentQualityId,
+ ProjectId = newItem.ProjectId,
+ GeneralEquipmentQualityCode = newItem.EquipmentQualityCode,
+ UnitId = newItem.UnitId,
+ SpecialEquipmentId = newItem.SpecialEquipmentId,
+ InDate = Funs.GetNewDateTime(newItem.InDate),
+ Remark = newItem.Remark,
+ CompileMan = newItem.CompileManId,
+ };
+ if (!string.IsNullOrEmpty(newItem.IsQualified))
+ {
+ if ("1".Equals(newItem.IsQualified))
+ {
+ newEquipmentQuality.IsQualified = true;
+ }
+ else
+ {
+ newEquipmentQuality.IsQualified = false;
+
+ }
+ }
+ if (!string.IsNullOrEmpty(newItem.EquipmentCount))
+ {
+ try
+ {
+ newEquipmentQuality.EquipmentCount = int.Parse(newItem.EquipmentCount);
+ }
+ catch (Exception e) { }
+ }
+ var updateEquipmentQuality = db.QualityAudit_GeneralEquipmentQuality.FirstOrDefault(x => x.GeneralEquipmentQualityId == newItem.EquipmentQualityId);
+ if (updateEquipmentQuality == null)
+ {
+ newEquipmentQuality.CompileDate = DateTime.Now;
+ newEquipmentQuality.GeneralEquipmentQualityId = SQLHelper.GetNewID();
+ newEquipmentQuality.GeneralEquipmentQualityCode = BLL.CodeRecordsService.ReturnCodeByMenuIdProjectId(BLL.Const.GeneralEquipmentQualityMenuId, newItem.ProjectId, newItem.UnitId);
+ GeneralEquipmentQualityService.AddGeneralEquipmentQuality(newEquipmentQuality);
+ }
+ else
+ {
+ GeneralEquipmentQualityService.UpdateGeneralEquipmentQuality(newEquipmentQuality);
+ }
+ if (!string.IsNullOrEmpty(newItem.AttachUrl))
+ {
+ ////保存附件
+ UploadFileService.SaveAttachUrl(UploadFileService.GetSourceByAttachUrl(newItem.AttachUrl, 10, null), newItem.AttachUrl, Const.GeneralEquipmentQualityMenuId, newEquipmentQuality.GeneralEquipmentQualityId);
+ }
+ else
+ {
+ CommonService.DeleteAttachFileById(newEquipmentQuality.GeneralEquipmentQualityId);
+ }
+ }
+ #endregion
+ }
+}
diff --git a/SGGL/BLL/API/HSSE/APIResourcesService.cs b/SGGL/BLL/API/HSSE/APIResourcesService.cs
index 1aab6df0..21ccacce 100644
--- a/SGGL/BLL/API/HSSE/APIResourcesService.cs
+++ b/SGGL/BLL/API/HSSE/APIResourcesService.cs
@@ -357,22 +357,42 @@ namespace BLL
///
/// 1-checkType;2-专项检查;3-综合检查
///
- public static List getCheckItemSetListBySupCheckItemId(string supTypeId, string checkType)
+ public static List getCheckItemSetListBySupCheckItemId(string supTypeId, string checkType,string supName="")
{
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
{
- var getDataLists = from x in db.Technique_CheckItemSet
- where x.CheckType == checkType && (x.SupCheckItem == supTypeId || (supTypeId == null && x.SupCheckItem == "0"))
- orderby x.SortIndex
- select new Model.ResourcesItem
- {
- ResourcesId = x.CheckItemSetId,
- ResourcesCode = x.MapCode,
- ResourcesName = x.CheckItemName,
- SupResourcesId = x.SupCheckItem,
- IsEndLever = x.IsEndLever,
- };
- return getDataLists.ToList();
+ if (!string.IsNullOrEmpty(supName))
+ {
+ var getDataLists = from x in db.Technique_CheckItemSet
+ where x.CheckType == checkType && (x.SupCheckItem == supTypeId || (supTypeId == null && x.SupCheckItem == "0"))
+ && x.CheckItemName.Contains(supName)
+ orderby x.SortIndex
+ select new Model.ResourcesItem
+ {
+ ResourcesId = x.CheckItemSetId,
+ ResourcesCode = x.MapCode,
+ ResourcesName = x.CheckItemName,
+ SupResourcesId = x.SupCheckItem,
+ IsEndLever = x.IsEndLever,
+ };
+ return getDataLists.ToList();
+ }
+ else {
+ var getDataLists = from x in db.Technique_CheckItemSet
+ where x.CheckType == checkType && (x.SupCheckItem == supTypeId || (supTypeId == null && x.SupCheckItem == "0"))
+ orderby x.SortIndex
+ select new Model.ResourcesItem
+ {
+ ResourcesId = x.CheckItemSetId,
+ ResourcesCode = x.MapCode,
+ ResourcesName = x.CheckItemName,
+ SupResourcesId = x.SupCheckItem,
+ IsEndLever = x.IsEndLever,
+ };
+ return getDataLists.ToList();
+ }
+
+
}
}
diff --git a/SGGL/BLL/BLL.csproj b/SGGL/BLL/BLL.csproj
index f8b66252..81372eff 100644
--- a/SGGL/BLL/BLL.csproj
+++ b/SGGL/BLL/BLL.csproj
@@ -103,6 +103,7 @@
+
@@ -174,6 +175,7 @@
+
diff --git a/SGGL/BLL/Common/NPOIExcel.cs b/SGGL/BLL/Common/NPOIExcel.cs
new file mode 100644
index 00000000..62868551
--- /dev/null
+++ b/SGGL/BLL/Common/NPOIExcel.cs
@@ -0,0 +1,1559 @@
+using NPOI.HSSF.UserModel;
+using NPOI.SS.UserModel;
+using NPOI.SS.Util;
+using NPOI.XSSF.UserModel;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Data.OleDb;
+using System.IO;
+using System.Linq;
+using System.Text;
+
+namespace BLL.Common
+{
+ public class NPOIExcel
+ {
+ internal IWorkbook Book { get; set; }
+
+ private int sheetID = 0;
+ ///
+ /// 当前活动的SheetID,所有的操作将指向这个Sheet
+ ///
+ public int ActiveSheetID
+ {
+ get
+ {
+ return sheetID;
+ }
+ set
+ {
+ sheetID = value;
+ }
+ }
+
+ ///
+ /// 当前活动的SheetName,所有的操作将指向这个Sheet
+ ///
+ public String ActiveSheetName
+ {
+ get
+ {
+ return Book.GetSheetAt(sheetID).SheetName;
+ }
+ set
+ {
+ sheetID = Book.GetSheetIndex(value);
+ }
+ }
+ ///
+ /// 当前活动的Sheet,所有的操作将指向这个Sheet
+ ///
+ public ISheet ActiveSheet
+ {
+ get
+ {
+ return Book.GetSheetAt(sheetID);
+ }
+ }
+
+ ///
+ /// 第一行非空行的行号
+ ///
+ public int FirstRowNum
+ {
+ get
+ {
+ return Book.GetSheetAt(sheetID).FirstRowNum;
+ }
+ }
+
+ ///
+ /// 最后一行非空行的行号
+ ///
+ public int LastRostNum
+ {
+ get
+ {
+ return Book.GetSheetAt(sheetID).LastRowNum;
+ }
+ }
+
+ ///
+ /// 无模板的Excel生成或操作
+ ///
+ public NPOIExcel()
+ {
+ Book = new HSSFWorkbook();
+ Book.CreateSheet();
+ }
+
+ public NPOIExcel(Stream fileStream, String fileName)
+ {
+ if (fileName.Substring(fileName.LastIndexOf(".")) == ".xls")
+ {
+ Book = new HSSFWorkbook(fileStream);
+ }
+ else
+ {
+ Book = new XSSFWorkbook(fileStream);
+ }
+ }
+ ///
+ /// 带模板或数据的Excel生成或操作
+ ///
+ ///
+ public NPOIExcel(String fileName)
+ {
+ Book = CreateBook(fileName);
+ }
+
+ ///
+ /// 创建Excel Book
+ ///
+ /// 模板文件名
+ ///
+ private IWorkbook CreateBook(String fileName)
+ {
+ FileInfo file = new FileInfo(fileName);
+ if (!file.Exists)
+ {
+ File.Create(fileName).Close();
+ }
+ FileStream fs = new FileStream(fileName, FileMode.Open, FileAccess.Read);
+ IWorkbook book;
+ if (file.Extension == ".xls")
+ {
+ book = new HSSFWorkbook(fs);
+ }
+ else
+ {
+ book = new XSSFWorkbook(fs);
+ }
+ fs.Close();
+ if (book.NumberOfSheets == 0)
+ {
+ book.CreateSheet();
+ }
+ return book;
+ }
+
+ ///
+ /// 新建Sheet
+ ///
+ /// 新建Sheet
+ public ISheet CreateSheet()
+ {
+ return Book.CreateSheet();
+ }
+
+ ///
+ /// 新建Sheet
+ ///
+ /// 新建Sheet的名称
+ /// 新建Sheet
+ public ISheet CreateSheet(String sheetName)
+ {
+ return Book.CreateSheet(sheetName);
+ }
+
+ ///
+ /// 设置行高
+ /// 注:只对当前ActiveSheet有效
+ ///
+ /// 行号
+ /// 高度
+ public void SetRowHeight(int rowIndex, float height)
+ {
+ IRow row = Book.GetSheetAt(sheetID).GetRow(rowIndex);
+ if (row == null)
+ {
+ row = Book.GetSheetAt(sheetID).CreateRow(rowIndex);
+ }
+ row.Height = (short)(height * 20);
+ }
+
+ ///
+ /// 设置列宽
+ /// 注:只对当前ActiveSheet有效
+ ///
+ /// 列号
+ /// 宽度
+ public void SetColumnWidth(int columnIndex, short width)
+ {
+ Book.GetSheetAt(sheetID).SetColumnWidth(columnIndex, width * 256);
+ }
+
+ ///
+ /// 获取或设置默认行高
+ /// 注:只对当前ActiveSheet有效
+ ///
+ public short DefaultRowHeight
+ {
+ get
+ {
+ return (short)(Book.GetSheetAt(sheetID).DefaultRowHeight / 20);
+ }
+ set
+ {
+ Book.GetSheetAt(sheetID).DefaultRowHeight = (short)(value * 20);
+
+ }
+ }
+
+ ///
+ /// 获取或设置默认列宽
+ /// 注:只对当前ActiveSheet有效
+ ///
+ public int DefaultColWidth
+ {
+ get
+ {
+ return Book.GetSheetAt(sheetID).DefaultColumnWidth;
+ }
+ set
+ {
+ Book.GetSheetAt(sheetID).DefaultColumnWidth = value;
+ }
+ }
+
+ ///
+ /// 某一列的列宽自动调整大小
+ /// 注:只对当前ActiveSheet有效
+ ///
+ /// 列号
+ public void AutoColWidth(int colIndex)
+ {
+ Book.GetSheetAt(sheetID).AutoSizeColumn(colIndex, true);
+ }
+
+ ///
+ /// 隐藏一行
+ /// 注:只对当前ActiveSheet有效
+ ///
+ /// 行号
+ public void HiddenRow(int rowIndex)
+ {
+ IRow row = Book.GetSheetAt(sheetID).GetRow(rowIndex);
+ if (row == null)
+ {
+ row = Book.GetSheetAt(sheetID).CreateRow(rowIndex);
+ }
+ row.ZeroHeight = true;
+ }
+
+ ///
+ /// 删除一行
+ /// 注:只对当前ActiveSheet有效
+ ///
+ /// 行号
+ public void RemoveRow(int rowIndex)
+ {
+ IRow row = Book.GetSheetAt(sheetID).GetRow(rowIndex);
+ if (row != null)
+ {
+ ActiveSheet.RemoveRow(row);
+ }
+ }
+
+ ///
+ /// 读取单元格的值
+ /// 注:只对当前ActiveSheet有效
+ ///
+ /// 行号
+ /// 列号
+ /// 单元格的值
+ public object ReadValue(int rowIndex, int columnIndex, bool? isDateTime = null)
+ {
+ try
+ {
+ ICell cell = Book.GetSheetAt(sheetID).GetRow(rowIndex).GetCell(columnIndex);
+ short df = cell.CellStyle.DataFormat;
+
+ //return cell.ToString();
+ switch (cell.CellType)
+ {
+ case CellType.Blank:
+ return null;
+ case CellType.Boolean:
+ return cell.BooleanCellValue;
+ case CellType.Error:
+ throw new Exception("Cell Value Error");
+ case CellType.Formula:
+ {
+ switch (cell.CachedFormulaResultType)
+ {
+ case CellType.Blank:
+ return "";
+ case CellType.Boolean:
+ return cell.BooleanCellValue;
+ case CellType.Error:
+ throw new Exception("Cell Value Error");
+ case CellType.Formula:
+ throw new Exception("The Formula of this cell is too complex!");
+ case CellType.Numeric:
+ if (isDateTime == null)
+ {
+ if (DateUtil.IsCellDateFormatted(cell))
+ {
+ return cell.DateCellValue;
+ }
+ else
+ {
+ return cell.NumericCellValue;
+ }
+ }
+ else if (isDateTime == true)
+ {
+ return cell.DateCellValue;
+ }
+ else
+ {
+ return cell.NumericCellValue;
+ }
+ case CellType.String:
+ return cell.StringCellValue;
+ case CellType.Unknown:
+ return cell.ToString();
+ default:
+ return cell.ToString();
+ }
+ }
+ case CellType.Numeric:
+ {
+ if (isDateTime == null)
+ {
+ if (DateUtil.IsCellDateFormatted(cell))
+ {
+ return cell.DateCellValue;
+ }
+ else
+ {
+ return cell.NumericCellValue;
+ }
+ }
+ else if (isDateTime == true)
+ {
+ return cell.DateCellValue;
+ }
+ else
+ {
+ return cell.NumericCellValue;
+ }
+ }
+ case CellType.String:
+ return cell.StringCellValue;
+ case CellType.Unknown:
+ return cell.ToString();
+ default:
+ return cell.ToString();
+ }
+ }
+ catch (System.NullReferenceException)
+ {
+ return null;
+ }
+ catch (Exception ex)
+ {
+ throw ex;
+ }
+ }
+
+ ///
+ /// 设置单元格的值
+ /// 注:只对当前ActiveSheet有效
+ ///
+ /// 行号
+ /// 列号
+ /// 单元格的值
+ public void SetValue(int rowIndex, int columnIndex, object value)
+ {
+ SetValue(rowIndex, columnIndex, value, false);
+ }
+ public void SetPicValue(int rowIndex, int columnIndex, string value)
+ {
+ byte[] bytes = System.IO.File.ReadAllBytes(value);
+ int pictureIdx = Book.AddPicture(bytes, PictureType.JPEG);
+
+ // 第三步:创建画部
+ IDrawing patriarch = ActiveSheet.CreateDrawingPatriarch();
+ // 第四步:设置锚点
+ int rowline = 1; // y方向
+ // 参数说明:(在起始单元格的X坐标0-1023,Y的坐标0-255,在终止单元格的X坐标0-1023,Y的坐标0-255,起始单元格列数,行数,终止单元格列数,行数)
+ IClientAnchor anchor = patriarch.CreateAnchor(0, 0, 0, 0, columnIndex, rowIndex, columnIndex+1, rowIndex + 1);
+ // 第五步:把图片插到相应的位置+1
+ IPicture pict = patriarch.CreatePicture(anchor, pictureIdx);
+
+
+ }
+ ///
+ /// 设置单元格的值
+ /// 注:只对当前ActiveSheet有效
+ ///
+ /// 行号
+ /// 列号
+ /// 单元格的值
+ /// 是否是公式
+ public void SetValue(int rowIndex, int columnIndex, object value, bool isFormula)
+ {
+ IRow row = Book.GetSheetAt(sheetID).GetRow(rowIndex);
+ if (row == null)
+ {
+ row = Book.GetSheetAt(sheetID).CreateRow(rowIndex);
+ }
+ ICell cell = row.GetCell(columnIndex);
+ if (cell == null)
+ {
+ cell = row.CreateCell(columnIndex);
+ }
+ if (value == null)
+ {
+ cell.SetCellValue("");
+ }
+ if (isFormula)
+ {
+ cell.SetCellFormula(value.ToString());
+ }
+ else
+ {
+ if (value is short)
+ {
+ cell.SetCellValue((short)value);
+ }
+ else if (value is int)
+ {
+ cell.SetCellValue((int)value);
+ }
+ else if (value is long)
+ {
+ cell.SetCellValue((long)value);
+ }
+ else if (value is float)
+ {
+ cell.SetCellValue((float)value);
+ }
+ else if (value is double)
+ {
+ cell.SetCellValue((double)value);
+ }
+ else if (value is bool)
+ {
+ cell.SetCellValue((bool)value);
+ }
+ else if (value is DateTime)
+ {
+ cell.SetCellValue((DateTime)value);
+ }
+ else if (value == null)
+ {
+ }
+ else
+ {
+ cell.SetCellValue(value.ToString());
+ }
+ }
+
+ }
+
+ ///
+ /// 设置一个区域内的单元格的值范围
+ /// 注:只对当前ActiveSheet有效
+ ///
+ /// 开始行
+ /// 结束行
+ /// 开始列
+ /// 结束列
+ /// 验证类型
+ /// 验证方式
+ /// 最小值
+ /// 最大值
+ public void SetValueRange(int startRowIndex, int EndRowIndex, int startColInex, int endColIndex, NPOIDataType type, OperatorTypes operatorType, String minValue, String maxValue)
+ {
+ SetValueRange(startRowIndex, EndRowIndex, startColInex, endColIndex, type, operatorType, minValue, maxValue, "", "");
+ }
+
+ ///
+ /// 设置一个区域内的单元格的值范围
+ /// 注:只对当前ActiveSheet有效
+ ///
+ /// 开始行
+ /// 结束行
+ /// 开始列
+ /// 结束列
+ /// 验证类型
+ /// 验证方式
+ /// 最小值
+ /// 最大值
+ /// 数据格式
+ public void SetValueRange(int startRowIndex, int EndRowIndex, int startColInex, int endColIndex, NPOIDataType type, OperatorTypes operatorType, String minValue, String maxValue, String formate)
+ {
+ SetValueRange(startRowIndex, EndRowIndex, startColInex, endColIndex, type, operatorType, minValue, maxValue, formate, "");
+ }
+
+ ///
+ /// 设置一个区域内的单元格的值范围
+ /// 注:只对当前ActiveSheet有效
+ ///
+ /// 开始行
+ /// 结束行
+ /// 开始列
+ /// 结束列
+ /// 验证类型
+ /// 验证方式
+ /// 最小值
+ /// 最大值
+ /// 数据格式
+ /// 报错信息
+ public void SetValueRange(int startRowIndex, int EndRowIndex, int startColInex, int endColIndex, NPOIDataType type, OperatorTypes operatorType, String minValue, String maxValue, String formate, String AlertMassage)
+ {
+ CellRangeAddressList regions = new CellRangeAddressList(startRowIndex, EndRowIndex, startColInex, endColIndex);
+ DVConstraint constraint = DVConstraint.CreateNumericConstraint(ValidationType.ANY, 0, null, null);
+ switch (type)
+ {
+ case NPOIDataType.Integer:
+ constraint = DVConstraint.CreateNumericConstraint(ValidationType.INTEGER, (int)operatorType, minValue, maxValue);
+ break;
+ case NPOIDataType.Float:
+ constraint = DVConstraint.CreateNumericConstraint(ValidationType.DECIMAL, (int)operatorType, minValue, maxValue);
+ break;
+ case NPOIDataType.Date:
+ if (formate == "")
+ {
+ formate = "yyyy/MM/dd";
+ }
+ constraint = DVConstraint.CreateDateConstraint((int)operatorType, minValue, maxValue, formate);
+ break;
+ case NPOIDataType.Time:
+ constraint = DVConstraint.CreateTimeConstraint((int)operatorType, minValue, maxValue);
+ break;
+ case NPOIDataType.TextLength:
+ constraint = DVConstraint.CreateNumericConstraint(ValidationType.TEXT_LENGTH, (int)operatorType, minValue, maxValue);
+ break;
+ default:
+ break;
+ }
+
+ HSSFDataValidation dataValidate1 = new HSSFDataValidation(regions, constraint);
+ if (!String.IsNullOrEmpty(AlertMassage))
+ {
+ dataValidate1.CreateErrorBox("Error", AlertMassage);
+ }
+ ActiveSheet.AddValidationData(dataValidate1);
+
+ }
+
+ ///
+ /// 设置一个区域内的单元格的值范围
+ /// 注:只对当前ActiveSheet有效
+ ///
+ /// 开始行
+ /// 结束行
+ /// 开始列
+ /// 结束列
+ /// 值系列
+ public void SetValueRange(int startRowIndex, int EndRowIndex, int startColInex, int endColIndex, String[] dataRange)
+ {
+
+ SetValueRange(startRowIndex, EndRowIndex, startColInex, endColIndex, dataRange, "");
+ }
+
+ ///
+ /// 设置一个区域内的单元格的值范围
+ /// 注:只对当前ActiveSheet有效
+ ///
+ /// 开始行
+ /// 结束行
+ /// 开始列
+ /// 结束列
+ /// 值系列
+ /// 报错信息
+ public void SetValueRange(int startRowIndex, int endRowIndex, int startColInex, int endColIndex, String[] dataRange, String alertMassage)
+ {
+ ISheetConditionalFormatting hscf = ActiveSheet.SheetConditionalFormatting;
+ CellRangeAddress[] regions = {
+ new CellRangeAddress(startRowIndex, endRowIndex,startColInex,endColIndex)
+ };
+
+ CellRangeAddressList rangeList = new CellRangeAddressList();
+ rangeList.AddCellRangeAddress(new CellRangeAddress(startRowIndex, endRowIndex, startColInex, endColIndex));
+ DVConstraint dvconstraint = DVConstraint.CreateExplicitListConstraint(dataRange);
+ HSSFDataValidation dataValidation = new HSSFDataValidation(rangeList, dvconstraint);
+
+ if (!String.IsNullOrEmpty(alertMassage))
+ {
+ dataValidation.CreateErrorBox("Error", alertMassage);
+ }
+
+ ActiveSheet.AddValidationData(dataValidation);
+ }
+
+ ///
+ /// 设置一个区域内的单元格的值范围
+ /// 注:只对当前ActiveSheet有效
+ ///
+ /// 开始行
+ /// 结束行
+ /// 开始列
+ /// 结束列
+ /// 计算公式
+ /// 报错信息
+ public void SetValueRange(int startRowIndex, int endRowIndex, int startColInex, int endColIndex, String Formula, String alertMassage)
+ {
+ ISheetConditionalFormatting hscf = ActiveSheet.SheetConditionalFormatting;
+ CellRangeAddress[] regions = {
+ new CellRangeAddress(startRowIndex, endRowIndex,startColInex,endColIndex)
+ };
+
+ CellRangeAddressList rangeList = new CellRangeAddressList();
+ rangeList.AddCellRangeAddress(new CellRangeAddress(startRowIndex, endRowIndex, startColInex, endColIndex));
+ DVConstraint dvconstraint = DVConstraint.CreateFormulaListConstraint(Formula);
+ HSSFDataValidation dataValidation = new HSSFDataValidation(rangeList, dvconstraint);
+
+ if (!String.IsNullOrEmpty(alertMassage))
+ {
+ dataValidation.CreateErrorBox("Error", alertMassage);
+ }
+
+ ActiveSheet.AddValidationData(dataValidation);
+ }
+
+ ///
+ /// 设置一个区域内的单元格的值范围
+ /// 注:只对当前ActiveSheet有效
+ ///
+ /// 开始行
+ /// 结束行
+ /// 开始列
+ /// 结束列
+ /// 计算公式
+ public void SetValueRange(int startRowIndex, int endRowIndex, int startColInex, int endColIndex, String Formula)
+ {
+ SetValueRange(startRowIndex, endColIndex, startRowIndex, endColIndex, Formula, "");
+ }
+
+ ///
+ /// 生成单元格样式
+ ///
+ /// 与当前Excel相关的单元格样式
+ public ICellStyle CreateCellStyle()
+ {
+ return Book.CreateCellStyle();
+ }
+
+ ///
+ /// 生成字体
+ ///
+ /// 与当前Excel相关的字体
+ public IFont CreateFont()
+ {
+ return Book.CreateFont();
+ }
+
+ ///
+ /// 设置单元格样式
+ /// 注:只对当前ActiveSheet有效
+ ///
+ /// 行号
+ /// 列号
+ /// 样式
+ public void SetStyle(int rowIndex, int columnIndex, ICellStyle style)
+ {
+ IRow row = Book.GetSheetAt(sheetID).GetRow(rowIndex);
+ if (row == null)
+ {
+ row = Book.GetSheetAt(sheetID).CreateRow(rowIndex);
+ }
+ ICell cell = row.GetCell(columnIndex);
+ if (cell == null)
+ {
+ cell = row.CreateCell(columnIndex);
+ }
+ cell.CellStyle = style;
+ }
+
+ ///
+ /// 合并单元格
+ /// 注:只对当前ActiveSheet有效
+ ///
+ /// 开始行号
+ /// 开始列号
+ /// 结束行号
+ /// 结束列号
+ public void MergeCells(int startRowIndex, int startColumnIndex, int endRowIndex, int endColumnIndex)
+ {
+ int Index = Book.GetSheetAt(sheetID).AddMergedRegion(new CellRangeAddress(startRowIndex, endRowIndex, startColumnIndex, endColumnIndex));
+ }
+
+ ///
+ /// 拆分单元格
+ /// 注1:只对当前ActiveSheet有效
+ /// 注2:只有合并的单元格才能拆分
+ ///
+ /// 开始行号
+ /// 开始列号
+ public void UnMergeCells(int startRowIndex, int startColumnIndex)
+ {
+ int merges = Book.GetSheetAt(sheetID).NumMergedRegions;
+ CellRangeAddress merge;
+ for (int i = 0; i < merges; i++)
+ {
+ merge = Book.GetSheetAt(sheetID).GetMergedRegion(i);
+ if (merge.FirstRow == startRowIndex && merge.FirstColumn == startColumnIndex)
+ {
+ Book.GetSheetAt(sheetID).RemoveMergedRegion(i);
+ break;
+ }
+ }
+ }
+
+ ///
+ /// 保存到文件
+ /// 注:有模板的,文件扩展名与模板一样;没有模板的,文件扩展名为“.xls”;
+ ///
+ /// 保存文件名
+ public void Save(String fileName)
+ {
+ FileStream file = new FileStream(fileName, FileMode.Create);
+ Book.Write(file);
+ file.Close();
+ }
+
+ ///
+ /// 保存到流
+ /// 注:保存或下载时,有模板的,文件扩展名与模板一样;没有模板的,文件扩展名为“.xls”;
+ ///
+ /// 内存流
+ public MemoryStream Save()
+ {
+ MemoryStream ms = new MemoryStream();
+ Book.Write(ms);
+ return ms;
+ }
+
+ ///
+ /// 把Excel读成DataSet
+ /// 注:必须是正规表格式
+ ///
+ /// 读出的Excel
+ public DataSet ReadAsDataSet()
+ {
+ DataSet rtn = new DataSet();
+ for (int i = 0; i < SheetCount; i++)
+ {
+ ISheet sheet = Book.GetSheetAt(i);
+ rtn.Tables.Add(GetDataTableBySheet(sheet));
+ }
+ return rtn;
+ }
+
+ private DataTable GetDataTableBySheet(ISheet sheet)
+ {
+ DataTable dt = new DataTable(sheet.SheetName);
+ int maxCols = 0;
+ object value;
+ while ((value = ReadValue(sheet, 0, maxCols)) != null)
+ {
+ dt.Columns.Add(value.ToString());
+ maxCols++;
+ }
+
+ int row = 1;
+
+ bool emptyRow = false;
+ int emptyRowCount = 0;
+ while (emptyRowCount < 10)
+ {
+ emptyRow = true;
+ DataRow dr = dt.NewRow();
+ for (int i = 0; i < maxCols; i++)
+ {
+ value = ReadValue(sheet, row, i);
+ if (value != null)
+ {
+ dr[i] = value;
+ emptyRow = false;
+ }
+ }
+ if (!emptyRow)
+ {
+ dt.Rows.Add(dr);
+ emptyRowCount = 0;
+ }
+ else
+ {
+ emptyRowCount++;
+ }
+ row++;
+ }
+
+ return dt;
+ }
+
+ ///
+ /// 根据SheetName导出数据为DataTable
+ ///
+ /// Sheet名称
+ ///
+ public DataTable GetDataTableBySheet(String sheetName)
+ {
+
+ ISheet sheet = Book.GetSheet(sheetName);
+ if (sheet != null)
+ {
+ return GetDataTableBySheet(sheet);
+ }
+ return null;
+
+ }
+
+ ///
+ /// 根据SheetName导出数据为DataTable
+ ///
+ /// Sheet编号
+ ///
+ public DataTable GetDataTableBySheet(int sheetIndex)
+ {
+
+ ISheet sheet = Book.GetSheetAt(sheetIndex);
+ if (sheet != null)
+ {
+ return GetDataTableBySheet(sheet);
+ }
+ return null;
+
+ }
+
+ ///
+ /// 写入表格
+ ///
+ /// 表格数据
+ /// 写入的起始列
+ /// 写入的起始行
+ /// 标题颜色
+ /// 是否需要四周边框
+ public void WriteDataTable(DataTable Data, int col = 1, int row = 1, short? titleColor = null, bool fullBorder = true)
+ {
+ if (Data == null)
+ {
+ return;
+ }
+
+ var titleStyle = CreateCellStyle();
+ var rowStyle = CreateCellStyle();
+ if (titleColor != null)
+ titleStyle.FillForegroundColor = titleColor.Value;
+
+ titleStyle.FillPattern = FillPattern.SolidForeground;
+ if (fullBorder)
+ {
+ titleStyle.BorderBottom = BorderStyle.Thin;
+ titleStyle.BorderLeft = BorderStyle.Thin;
+ titleStyle.BorderRight = BorderStyle.Thin;
+ titleStyle.BorderTop = BorderStyle.Thin;
+ titleStyle.BottomBorderColor = NPOIColor.BLACK;
+ titleStyle.LeftBorderColor = NPOIColor.BLACK;
+ titleStyle.RightBorderColor = NPOIColor.BLACK;
+ titleStyle.TopBorderColor = NPOIColor.BLACK;
+ rowStyle.BorderBottom = BorderStyle.Thin;
+ rowStyle.BorderLeft = BorderStyle.Thin;
+ rowStyle.BorderRight = BorderStyle.Thin;
+ rowStyle.BorderTop = BorderStyle.Thin;
+ rowStyle.BottomBorderColor = NPOIColor.BLACK;
+ rowStyle.LeftBorderColor = NPOIColor.BLACK;
+ rowStyle.RightBorderColor = NPOIColor.BLACK;
+ rowStyle.TopBorderColor = NPOIColor.BLACK;
+ }
+
+ int iCol = 0, iRow = 1;
+
+ foreach (DataColumn dc in Data.Columns)
+ {
+ SetValue(row, col + iCol, dc.ColumnName);
+ SetStyle(row, col + iCol, titleStyle);
+ iCol++;
+ }
+
+ rowStyle.FillForegroundColor = NPOIColor.WHITE;
+
+ foreach (DataRow dr in Data.Rows)
+ {
+ iCol = 0;
+ foreach (DataColumn dc in Data.Columns)
+ {
+ SetValue(row + iRow, col + iCol, dr[dc]);
+ SetStyle(row + iRow, col + iCol, rowStyle);
+ iCol++;
+ }
+ iRow++;
+ }
+
+ for (int i = 0; i < iCol; i++)
+ {
+ this.AutoColWidth(i);
+ }
+ }
+
+ ///
+ /// 读取单元格的值
+ /// 注:只对当前ActiveSheet有效
+ ///
+ /// 行号
+ /// 列号
+ /// 单元格的值
+ public object ReadValue(ISheet sheet, int rowIndex, int columnIndex, bool? isDateTime = null)
+ {
+ try
+ {
+ ICell cell = sheet.GetRow(rowIndex).GetCell(columnIndex);
+ short df = cell.CellStyle.DataFormat;
+
+ //return cell.ToString();
+ switch (cell.CellType)
+ {
+ case CellType.Blank:
+ return null;
+ case CellType.Boolean:
+ return cell.BooleanCellValue;
+ case CellType.Error:
+ throw new Exception("Cell Value Error");
+ case CellType.Formula:
+ {
+ switch (cell.CachedFormulaResultType)
+ {
+ case CellType.Blank:
+ return "";
+ case CellType.Boolean:
+ return cell.BooleanCellValue;
+ case CellType.Error:
+ throw new Exception("Cell Value Error");
+ case CellType.Formula:
+ throw new Exception("The Formula of this cell is too complex!");
+ case CellType.Numeric:
+ if (isDateTime == null)
+ {
+ if (DateUtil.IsCellDateFormatted(cell))
+ {
+ return cell.DateCellValue;
+ }
+ else
+ {
+ return cell.NumericCellValue;
+ }
+ }
+ else if (isDateTime == true)
+ {
+ return cell.DateCellValue;
+ }
+ else
+ {
+ return cell.NumericCellValue;
+ }
+ case CellType.String:
+ return cell.StringCellValue;
+ case CellType.Unknown:
+ return cell.ToString();
+ default:
+ return cell.ToString();
+ }
+ }
+ case CellType.Numeric:
+ {
+ if (isDateTime == null)
+ {
+ if (DateUtil.IsCellDateFormatted(cell))
+ {
+ return cell.DateCellValue;
+ }
+ else
+ {
+ return cell.NumericCellValue;
+ }
+ }
+ else if (isDateTime == true)
+ {
+ return cell.DateCellValue;
+ }
+ else
+ {
+ return cell.NumericCellValue;
+ }
+ }
+ case CellType.String:
+ return cell.StringCellValue;
+ case CellType.Unknown:
+ return cell.ToString();
+ default:
+ return cell.ToString();
+ }
+ }
+ catch (System.NullReferenceException)
+ {
+ return null;
+ }
+ catch (Exception ex)
+ {
+ throw ex;
+ }
+ }
+
+ public int SheetCount
+ {
+ get
+ {
+ return Book.NumberOfSheets;
+ }
+ }
+
+ public String GetSheetName(int Index)
+ {
+ return Book.GetSheetName(Index);
+ }
+
+ public void AddPicture(byte[] data, int row, int col)
+ {
+ int picIndex = Book.AddPicture(data, PictureType.PNG);
+
+ IDrawing draw = ActiveSheet.CreateDrawingPatriarch();
+
+ IClientAnchor anchor = draw.CreateAnchor(0, 0, 255, 255, col, row, col + 5, col + 5);
+ IPicture pic = draw.CreatePicture(anchor, picIndex);
+ pic.Resize();
+ }
+ }
+
+ public enum OperatorTypes
+ {
+ ///
+ /// 介于最大值与小值之间
+ ///
+ BETWEEN = OperatorType.BETWEEN,
+ ///
+ /// 等于最小值
+ ///
+ EQUAL = OperatorType.EQUAL,
+ ///
+ /// 大于或等于最小值
+ ///
+ GREATER_OR_EQUAL = OperatorType.GREATER_OR_EQUAL,
+ ///
+ /// 大于最小值
+ ///
+ GREATER_THAN = OperatorType.GREATER_THAN,
+ ///
+ /// 忽略
+ ///
+ NO_COMPARISON = OperatorType.IGNORED,
+ ///
+ /// 小于或等于最小值
+ ///
+ LESS_OR_EQUAL = OperatorType.LESS_OR_EQUAL,
+ ///
+ /// 小于最小值
+ ///
+ LESS_THAN = OperatorType.LESS_THAN,
+ ///
+ /// 不在最小值与最大值之间
+ ///
+ NOT_BETWEEN = OperatorType.NOT_BETWEEN,
+ ///
+ /// 不等于最小值
+ ///
+ NOT_EQUAL = OperatorType.NOT_EQUAL
+ }
+
+ public enum NPOIDataType
+ {
+ ///
+ /// 验证整数
+ ///
+ Integer,
+ ///
+ /// 验证符点数
+ ///
+ Float,
+ ///
+ /// 验证日期
+ ///
+ Date,
+ ///
+ /// 验证时间
+ ///
+ Time,
+ ///
+ /// 验证字符长度
+ ///
+ TextLength
+ }
+
+ public static class NPOIColor
+ {
+
+ ///
+ /// 红色
+ ///
+ public static short RED { get { return NPOI.HSSF.Util.HSSFColor.Red.Index; } }
+
+ ///
+ /// 蓝色
+ ///
+ public static short BLUE { get { return NPOI.HSSF.Util.HSSFColor.Blue.Index; } }
+
+ ///
+ /// 浅绿色
+ ///
+ public static short AQUA { get { return NPOI.HSSF.Util.HSSFColor.Aqua.Index; } }
+
+ ///
+ /// 自动
+ ///
+ public static short AUTOMATIC { get { return NPOI.HSSF.Util.HSSFColor.Automatic.Index; } }
+
+ ///
+ /// 黑色
+ ///
+ public static short BLACK { get { return NPOI.HSSF.Util.HSSFColor.Black.Index; } }
+
+ ///
+ /// 蓝灰色
+ ///
+ public static short BLUE_GREY { get { return NPOI.HSSF.Util.HSSFColor.BlueGrey.Index; } }
+
+ ///
+ /// 明绿色
+ ///
+ public static short BRIGHT_GREEN { get { return NPOI.HSSF.Util.HSSFColor.BrightGreen.Index; } }
+
+ ///
+ /// 棕色
+ ///
+ public static short BROWN { get { return NPOI.HSSF.Util.HSSFColor.Brown.Index; } }
+
+ ///
+ /// 正常
+ ///
+ public static short COLOR_NORMAL { get { return NPOI.HSSF.Util.HSSFColor.COLOR_NORMAL; } }
+
+ ///
+ /// 珊瑚色
+ ///
+ public static short CORAL { get { return NPOI.HSSF.Util.HSSFColor.Coral.Index; } }
+
+ ///
+ /// 亮蓝色
+ ///
+ public static short CORNFLOWER_BLUE { get { return NPOI.HSSF.Util.HSSFColor.CornflowerBlue.Index; } }
+
+ ///
+ /// 深蓝色
+ ///
+ public static short DARK_BLUE { get { return NPOI.HSSF.Util.HSSFColor.DarkBlue.Index; } }
+
+ ///
+ /// 深绿色
+ ///
+ public static short DARK_GREEN { get { return NPOI.HSSF.Util.HSSFColor.DarkGreen.Index; } }
+
+ ///
+ /// 深红色
+ ///
+ public static short DARK_RED { get { return NPOI.HSSF.Util.HSSFColor.DarkRed.Index; } }
+
+ ///
+ /// 深茶色
+ ///
+ public static short DARK_TEAL { get { return NPOI.HSSF.Util.HSSFColor.DarkTeal.Index; } }
+
+ ///
+ /// 深黄
+ ///
+ public static short DARK_YELLOW { get { return NPOI.HSSF.Util.HSSFColor.DarkYellow.Index; } }
+
+ ///
+ /// 金色
+ ///
+ public static short GOLD { get { return NPOI.HSSF.Util.HSSFColor.Gold.Index; } }
+
+ ///
+ /// 绿色
+ ///
+ public static short GREEN { get { return NPOI.HSSF.Util.HSSFColor.Green.Index; } }
+
+ ///
+ /// 25%灰色
+ ///
+ public static short GREY_25_PERCENT { get { return NPOI.HSSF.Util.HSSFColor.Grey25Percent.Index; } }
+
+ ///
+ /// 40%灰色
+ ///
+ public static short GREY_40_PERCENT { get { return NPOI.HSSF.Util.HSSFColor.Grey40Percent.Index; } }
+
+ ///
+ /// 50%灰色
+ ///
+ public static short GREY_50_PERCENT { get { return NPOI.HSSF.Util.HSSFColor.Grey50Percent.Index; } }
+
+ ///
+ /// 80%灰色
+ ///
+ public static short GREY_80_PERCENT { get { return NPOI.HSSF.Util.HSSFColor.Grey80Percent.Index; } }
+
+ ///
+ /// 靛蓝色
+ ///
+ public static short INDIGO { get { return NPOI.HSSF.Util.HSSFColor.Indigo.Index; } }
+
+ ///
+ /// 淡紫色
+ ///
+ public static short LAVENDER { get { return NPOI.HSSF.Util.HSSFColor.Lavender.Index; } }
+
+ ///
+ /// 粉黄色
+ ///
+ public static short LEMON_CHIFFON { get { return NPOI.HSSF.Util.HSSFColor.LemonChiffon.Index; } }
+
+ ///
+ /// 淡蓝色
+ ///
+ public static short LIGHT_BLUE { get { return NPOI.HSSF.Util.HSSFColor.LightBlue.Index; } }
+
+ ///
+ /// 淡亮蓝色
+ ///
+ public static short LIGHT_CORNFLOWER_BLUE { get { return NPOI.HSSF.Util.HSSFColor.LightCornflowerBlue.Index; } }
+
+ ///
+ /// 淡绿色
+ ///
+ public static short LIGHT_GREEN { get { return NPOI.HSSF.Util.HSSFColor.LightGreen.Index; } }
+
+ ///
+ /// 淡桔黄色
+ ///
+ public static short LIGHT_ORANGE { get { return NPOI.HSSF.Util.HSSFColor.LightOrange.Index; } }
+
+ ///
+ /// 淡蓝绿色
+ ///
+ public static short LIGHT_TURQUOISE { get { return NPOI.HSSF.Util.HSSFColor.LightTurquoise.Index; } }
+
+ ///
+ /// 淡黄色
+ ///
+ public static short LIGHT_YELLOW { get { return NPOI.HSSF.Util.HSSFColor.LightYellow.Index; } }
+
+ ///
+ /// 绿黄色
+ ///
+ public static short LIME { get { return NPOI.HSSF.Util.HSSFColor.Lime.Index; } }
+
+ ///
+ /// 栗色
+ ///
+ public static short MAROON { get { return NPOI.HSSF.Util.HSSFColor.Maroon.Index; } }
+
+ ///
+ /// 橄榄绿色
+ ///
+ public static short OLIVE_GREEN { get { return NPOI.HSSF.Util.HSSFColor.OliveGreen.Index; } }
+
+ ///
+ /// 桔色
+ ///
+ public static short ORANGE { get { return NPOI.HSSF.Util.HSSFColor.Orange.Index; } }
+
+ ///
+ /// 白灰蓝色
+ ///
+ public static short PALE_BLUE { get { return NPOI.HSSF.Util.HSSFColor.PaleBlue.Index; } }
+
+ ///
+ /// 粉红色
+ ///
+ public static short PINK { get { return NPOI.HSSF.Util.HSSFColor.Pink.Index; } }
+
+ ///
+ /// 紫红色
+ ///
+ public static short PLUM { get { return NPOI.HSSF.Util.HSSFColor.Plum.Index; } }
+
+ ///
+ /// 玫瑰红色
+ ///
+ public static short ROSE { get { return NPOI.HSSF.Util.HSSFColor.Rose.Index; } }
+
+ ///
+ /// 高贵蓝
+ ///
+ public static short ROYAL_BLUE { get { return NPOI.HSSF.Util.HSSFColor.RoyalBlue.Index; } }
+
+ ///
+ /// 海绿色
+ ///
+ public static short SEA_GREEN { get { return NPOI.HSSF.Util.HSSFColor.SeaGreen.Index; } }
+
+ ///
+ /// 天空蓝
+ ///
+ public static short SKY_BLUE { get { return NPOI.HSSF.Util.HSSFColor.SkyBlue.Index; } }
+
+ ///
+ /// 棕褐色
+ ///
+ public static short TAN { get { return NPOI.HSSF.Util.HSSFColor.Tan.Index; } }
+
+ ///
+ /// 茶色
+ ///
+ public static short TEAL { get { return NPOI.HSSF.Util.HSSFColor.Teal.Index; } }
+
+ ///
+ /// 蓝绿色
+ ///
+ public static short TURQUOISE { get { return NPOI.HSSF.Util.HSSFColor.Turquoise.Index; } }
+
+ ///
+ /// 紫色
+ ///
+ public static short VIOLET { get { return NPOI.HSSF.Util.HSSFColor.Violet.Index; } }
+
+ ///
+ /// 白色
+ ///
+ public static short WHITE { get { return NPOI.HSSF.Util.HSSFColor.White.Index; } }
+
+ ///
+ /// 黄色
+ ///
+ public static short YELLOW { get { return NPOI.HSSF.Util.HSSFColor.Yellow.Index; } }
+
+ }
+
+ ///
+ /// 针对excel的Oledb
+ ///
+ public class OleDbExcel
+ {
+ ///
+ /// OLEDB连接
+ ///
+ public OleDbConnection Connection
+ {
+ get;
+ set;
+ }
+
+ ///
+ /// 用Oledb对Excel进行操作
+ /// 注:必须是标准表形式Excel内容
+ ///
+ /// Excel文件
+ public OleDbExcel(String excelFile)
+ {
+ String conStr = String.Empty;
+ FileInfo file = new FileInfo(excelFile);
+ if (!file.Exists) { throw new Exception("文件不存在"); }
+ String extension = file.Extension;
+ switch (extension)
+ {
+ case ".xls":
+ conStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + excelFile + ";Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'";
+ break;
+ case ".xlsx":
+ conStr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + excelFile + ";Extended Properties='Excel 12.0;HDR=Yes;IMEX=1;'";
+ break;
+ default:
+ conStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + excelFile + ";Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'";
+ break;
+ }
+
+ //链接Excel
+ Connection = new OleDbConnection(conStr);
+ }
+
+ private List tableNames;
+
+ ///
+ /// 获取Excel内的Sheet名称
+ ///
+ public List Sheets
+ {
+ get
+ {
+ if (tableNames == null)
+ {
+ try
+ {
+ tableNames = new List();
+ //读取Excel里面的sheet名
+ Connection.Open();
+
+ DataTable schemaTable = Connection.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });
+
+ for (int i = 0; i < schemaTable.Rows.Count; i++)
+ {
+ DataRow dr = schemaTable.Rows[i];
+ String tbName = dr["table_name"].ToString();
+ if (tbName[tbName.Length - 1] == '$')
+ {
+ tableNames.Add(tbName);
+ }
+ }
+ Connection.Close();
+ }
+ catch (Exception ex)
+ {
+ if (Connection.State != ConnectionState.Closed)
+ {
+ Connection.Close();
+ }
+ throw new Exception(ex.Message, ex);
+ }
+ }
+ return tableNames;
+ }
+ }
+
+ ///
+ /// 查询出所有数据
+ ///
+ /// Sheet名称
+ /// sheet内的所有数据
+ public DataSet QueryAll(String tableName)
+ {
+ try
+ {
+ DataSet excelData = new DataSet();
+ OleDbDataAdapter adapter = new OleDbDataAdapter();
+ adapter.SelectCommand = new OleDbCommand();
+ adapter.SelectCommand.Connection = Connection;
+ adapter.SelectCommand.CommandText = String.Format("SELECT * FROM {0}", "[" + tableName + "]");
+ adapter.Fill(excelData);
+ return excelData;
+ }
+ catch (Exception ex)
+ {
+ if (Connection.State != ConnectionState.Closed)
+ {
+ Connection.Close();
+ }
+ throw new Exception(ex.Message, ex);
+ }
+ }
+
+ ///
+ /// 查询出所有数据
+ ///
+ /// Sheet序号(从0开始)
+ /// sheet内的所有数据
+ public DataSet QueryAll(int tableIndex)
+ {
+ return QueryAll(Sheets[tableIndex]);
+ }
+
+ ///
+ /// 利用Sql进行查询
+ ///
+ /// Sql语句
+ /// 查询出的数据
+ public DataSet Query(String sql)
+ {
+ try
+ {
+ DataSet excelData = new DataSet();
+ OleDbDataAdapter adapter = new OleDbDataAdapter(sql, Connection);
+ adapter.Fill(excelData);
+ return excelData;
+ }
+ catch (Exception ex)
+ {
+ if (Connection.State != ConnectionState.Closed)
+ {
+ Connection.Close();
+ }
+ throw new Exception(ex.Message, ex);
+ }
+ }
+
+ ///
+ /// 利用Sql进行查询
+ ///
+ /// Sql语句
+ /// 查询参数
+ /// 查询出的数据
+ public DataSet Query(String sql, params OleDbParameter[] param)
+ {
+ try
+ {
+ DataSet excelData = new DataSet();
+ OleDbDataAdapter adapter = new OleDbDataAdapter(sql, Connection);
+ adapter.SelectCommand.Parameters.AddRange(param);
+ adapter.Fill(excelData);
+ return excelData;
+ }
+ catch (Exception ex)
+ {
+ if (Connection.State != ConnectionState.Closed)
+ {
+ Connection.Close();
+ }
+ throw new Exception(ex.Message, ex);
+ }
+ }
+
+ ///
+ /// 利用Sql进行数据操作
+ ///
+ /// sql语句
+ /// 影响的行数
+ public int ExecuteSql(String sql)
+ {
+ try
+ {
+ Connection.Open();
+ OleDbCommand cmd = Connection.CreateCommand();
+ cmd.CommandText = sql;
+ int rtn = cmd.ExecuteNonQuery();
+ Connection.Close();
+ return rtn;
+ }
+ catch (Exception ex)
+ {
+ if (Connection.State != ConnectionState.Closed)
+ {
+ Connection.Close();
+ }
+ throw new Exception(ex.Message, ex);
+ }
+ }
+
+ ///
+ /// 利用Sql进行数据操作
+ ///
+ /// sql语句
+ /// 执行参数
+ /// 影响的行数
+ public int ExecuteSql(String sql, params OleDbParameter[] param)
+ {
+ try
+ {
+ Connection.Open();
+ OleDbCommand cmd = Connection.CreateCommand();
+ cmd.CommandText = sql;
+ cmd.Parameters.AddRange(param);
+ int rtn = cmd.ExecuteNonQuery();
+ Connection.Close();
+ return rtn;
+ }
+ catch (Exception ex)
+ {
+ if (Connection.State != ConnectionState.Closed)
+ {
+ Connection.Close();
+ }
+ throw new Exception(ex.Message, ex);
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/SGGL/BLL/HSSE/Check/Check_CheckSpecialService.cs b/SGGL/BLL/HSSE/Check/Check_CheckSpecialService.cs
index f349d0ac..621af157 100644
--- a/SGGL/BLL/HSSE/Check/Check_CheckSpecialService.cs
+++ b/SGGL/BLL/HSSE/Check/Check_CheckSpecialService.cs
@@ -244,7 +244,8 @@ namespace BLL
{
Model.RectifyNoticesItemItem newRItem = new Model.RectifyNoticesItemItem
{
- WrongContent = item.Unqualified
+ //WrongContent = item.Unqualified
+ WrongContent = item.CheckItemSetContent
};
if (string.IsNullOrEmpty(rectifyNotices.CheckSpecialDetailId))
{
@@ -298,7 +299,8 @@ namespace BLL
foreach (var item in getUnitDItem)
{
Model.PunishNoticeItemItem newPItem = new Model.PunishNoticeItemItem();
- newPItem.PunishContent = item.Unqualified;
+ //newPItem.PunishContent = item.Unqualified;
+ newPItem.PunishContent = item.CheckItemSetContent;
newPItem.SortIndex = item.SortIndex;
punishNotice.PunishNoticeItemItem.Add(newPItem);
if (string.IsNullOrEmpty(punishNotice.CheckSpecialDetailId))
@@ -335,7 +337,8 @@ namespace BLL
foreach (var item in getUnitDItem)
{
Model.RectifyNoticesItemItem newRItem = new Model.RectifyNoticesItemItem();
- pauseNotice.ThirdContent += item.Unqualified;
+ //pauseNotice.ThirdContent += item.Unqualified;
+ pauseNotice.ThirdContent += item.CheckItemSetContent;
string checkAreaName= UnitWorkService.GetNameById(item.CheckArea);
if (!string.IsNullOrEmpty(checkAreaName))
{
diff --git a/SGGL/BLL/ProjectData/ProjectService.cs b/SGGL/BLL/ProjectData/ProjectService.cs
index a7b50ff4..2db27732 100644
--- a/SGGL/BLL/ProjectData/ProjectService.cs
+++ b/SGGL/BLL/ProjectData/ProjectService.cs
@@ -138,6 +138,8 @@
HJProjectCode = project.HJProjectCode,
KZProjectCode = project.KZProjectCode,
Progress = project.Progress,
+ ProjType = project.ProjType,
+ ProjPhase = project.ProjPhase,
};
db.Base_Project.InsertOnSubmit(newProject);
db.SubmitChanges();
@@ -186,6 +188,8 @@
newProject.HJProjectCode = project.HJProjectCode;
newProject.KZProjectCode = project.KZProjectCode;
newProject.Progress = project.Progress;
+ newProject.ProjType = project.ProjType;
+ newProject.ProjPhase = project.ProjPhase;
db.SubmitChanges();
HSEDataCollectService.ProjectHSEDataCollectSubmission(newProject);
}
diff --git a/SGGL/BLL/SysManage/UnitService.cs b/SGGL/BLL/SysManage/UnitService.cs
index dbe2aed1..647c8449 100644
--- a/SGGL/BLL/SysManage/UnitService.cs
+++ b/SGGL/BLL/SysManage/UnitService.cs
@@ -761,5 +761,21 @@ namespace BLL
return q;
}
}
+
+ ///
+ /// 获取问题类型名称
+ ///
+ ///
+ ///
+ public static string GetQuestionTypeId(string RegisterTypesId)
+ {
+ string name = string.Empty;
+ var unit = Funs.DB.HSSE_Hazard_HazardRegisterTypes.FirstOrDefault(x => x.RegisterTypesId == RegisterTypesId);
+ if (unit != null)
+ {
+ name = unit.RegisterTypesName;
+ }
+ return name;
+ }
}
}
diff --git a/SGGL/FineUIPro.Web/ErrLog.txt b/SGGL/FineUIPro.Web/ErrLog.txt
index 76e939ac..b012a6c2 100644
--- a/SGGL/FineUIPro.Web/ErrLog.txt
+++ b/SGGL/FineUIPro.Web/ErrLog.txt
@@ -3193,3 +3193,25 @@ IP地址:::1
出错时间:09/26/2023 18:55:14
+
+错误信息开始=====>
+错误类型:JsonReaderException
+错误信息:Error reading JArray from JsonReader. Current JsonReader item is not an array: StartObject. Path '', line 1, position 1.
+错误堆栈:
+ 在 Newtonsoft.Json.Linq.JArray.Load(JsonReader reader, JsonLoadSettings settings)
+ 在 Newtonsoft.Json.Linq.JArray.Parse(String json, JsonLoadSettings settings)
+ 在 Newtonsoft.Json.Linq.JArray.Parse(String json)
+ 在 FineUIPro.Web.ProjectData.Installation.btnMenuDown_Click(Object sender, EventArgs e) 位置 E:\工作\五环施工平台\SGGL_CWCEC\SGGL\FineUIPro.Web\ProjectData\Installation.aspx.cs:行号 257
+ 在 FineUIPro.MenuButton.OnClick(EventArgs e)
+ 在 (MenuButton , EventArgs )
+ 在 FineUIPro.MenuButton.RaisePostBackEvent(String eventArgument)
+ 在 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
+ 在 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
+ 在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
+出错时间:10/07/2023 16:42:46
+出错文件:http://localhost:8579/ProjectData/Installation.aspx
+IP地址:::1
+操作人员:JT
+
+出错时间:10/07/2023 16:42:46
+
diff --git a/SGGL/FineUIPro.Web/File/Word/HSSE/专项检查.doc b/SGGL/FineUIPro.Web/File/Word/HSSE/专项检查.doc
index 84c6efe3..90ca6147 100644
--- a/SGGL/FineUIPro.Web/File/Word/HSSE/专项检查.doc
+++ b/SGGL/FineUIPro.Web/File/Word/HSSE/专项检查.doc
@@ -1,9 +0,0 @@
-
- 专项检查
-项目名称: 编号:
-
-|检查类别 | |检查日期 | |
-|参检人员 | |
-
-
-序号 |单位工程 |受检单位 |问题描述 |问题类型 |处理结果 |隐患类别 | |
diff --git a/SGGL/FineUIPro.Web/HSSE/Check/CheckSpecial.aspx.cs b/SGGL/FineUIPro.Web/HSSE/Check/CheckSpecial.aspx.cs
index 29002a1c..c178df09 100644
--- a/SGGL/FineUIPro.Web/HSSE/Check/CheckSpecial.aspx.cs
+++ b/SGGL/FineUIPro.Web/HSSE/Check/CheckSpecial.aspx.cs
@@ -1,4 +1,5 @@
using Aspose.Words;
+using Aspose.Words.Tables;
using BLL;
using System;
using System.Collections.Generic;
@@ -45,7 +46,7 @@ namespace FineUIPro.Web.HSSE.Check
Technique_CheckItemSetService.InitCheckItemSetDropDownList(this.drpSupCheckItemSet, "2", "0", true);
////权限按钮方法
this.GetButtonPower();
- btnNew.OnClientClick = Window1.GetShowReference("CheckSpecialEdit.aspx") + "return false;";
+ //btnNew.OnClientClick = Window1.GetShowReference("CheckSpecialEdit.aspx") + "return false;";
ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
// 绑定表格
BindGrid();
@@ -203,7 +204,9 @@ namespace FineUIPro.Web.HSSE.Check
}
else
{
- PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("CheckSpecialEdit.aspx?CheckSpecialId={0}", CheckSpecialId, "编辑 - ")));
+ //PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("CheckSpecialEdit.aspx?CheckSpecialId={0}", CheckSpecialId, "编辑 - ")));
+ //pc端只有台账
+ PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("CheckSpecialView.aspx?CheckSpecialId={0}", CheckSpecialId, "查看 - ")));
}
}
}
@@ -254,7 +257,7 @@ namespace FineUIPro.Web.HSSE.Check
{
if (buttonList.Contains(BLL.Const.BtnAdd))
{
- this.btnNew.Hidden = false;
+ //this.btnNew.Hidden = false;
}
if (buttonList.Contains(BLL.Const.BtnModify))
{
@@ -357,7 +360,7 @@ namespace FineUIPro.Web.HSSE.Check
initTemplatePath = "File\\Word\\HSSE\\专项检查.doc";
uploadfilepath = rootPath + initTemplatePath;
newUrl = uploadfilepath.Replace(".doc", string.Format("{0:yyyy-MM}", DateTime.Now) + ".doc");
- filePath = initTemplatePath.Replace(".doc", string.Format("{0:yyyy-MM}", DateTime.Now) + ".pdf");
+ //filePath = initTemplatePath.Replace(".doc", string.Format("{0:yyyy-MM}", DateTime.Now) + ".pdf");
if (File.Exists(newUrl)) {
File.Delete(newUrl);
}
@@ -427,6 +430,65 @@ namespace FineUIPro.Web.HSSE.Check
}
}
+ Bookmark bookmarkWorkAreaName = doc.Range.Bookmarks["WorkAreaName"];
+ if (bookmarkWorkAreaName != null)
+ {
+ if (checkSpecial != null)
+ {
+ if (!string.IsNullOrEmpty(checkSpecial.WorkAreaId))
+ {
+ bookmarkWorkAreaName.Text = UnitWorkService.GetUnitWorkName(checkSpecial.WorkAreaId);
+ }
+
+ }
+
+ }
+
+ Bookmark bookmarkResponsibleName = doc.Range.Bookmarks["ResponsibleName"];
+ if (bookmarkResponsibleName != null)
+ {
+ if (checkSpecial != null)
+ {
+ if (!string.IsNullOrEmpty(checkSpecial.ResponsibleUnit))
+ {
+ bookmarkResponsibleName.Text = UnitService.GetUnitNameByUnitId(checkSpecial.ResponsibleUnit);
+ }
+
+ }
+
+ }
+
+ Bookmark bookmarkQuestionName = doc.Range.Bookmarks["QuestionName"];
+ if (bookmarkQuestionName != null)
+ {
+ if (checkSpecial != null)
+ {
+ if (!string.IsNullOrEmpty(checkSpecial.QuestionType))
+ {
+ bookmarkQuestionName.Text = UnitService.GetQuestionTypeId(checkSpecial.QuestionType);
+ }
+
+ }
+
+ }
+
+ Bookmark bookmarkPartInPersonNames = doc.Range.Bookmarks["PartInPersonNames"];
+ if (bookmarkPartInPersonNames != null)
+ {
+ if (checkSpecial != null)
+ {
+ if (!string.IsNullOrEmpty(checkSpecial.PartInPersonNames))
+ {
+ bookmarkPartInPersonNames.Text = checkSpecial.PartInPersonNames;
+ }
+
+ }
+
+ }
+ //WorkAreaName
+ // ResponsibleName
+ // QuestionName
+ // PartInPersonNames
//专项检查列表
Aspose.Words.DocumentBuilder builder = new Aspose.Words.DocumentBuilder(doc);
builder.MoveToBookmark("tab");
@@ -443,6 +505,57 @@ namespace FineUIPro.Web.HSSE.Check
orderby x.SortIndex
select x).ToList();
int num = 1;
+ #region 插入表头
+ builder.InsertCell();
+ builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None;
+ builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First;
+ builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐
+ builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐
+ builder.CellFormat.Width = 40;
+ builder.Write("序号");
+
+ builder.InsertCell();
+ builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None;
+ builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First;
+ builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐
+ builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐
+ builder.CellFormat.Width = 100;
+ builder.Write("问题描述");
+
+ builder.InsertCell();
+ builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None;
+ builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First;
+ builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐
+ builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐
+ builder.CellFormat.Width = 250;
+ builder.CellFormat.WrapText = true;
+ builder.Write("检查内容");
+
+ //builder.InsertCell();
+ //builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None;
+ //builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First;
+ //builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐
+ //builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐
+ //builder.CellFormat.Width = 60;
+ //builder.Write("处理结果");
+
+ builder.InsertCell();
+ builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None;
+ builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First;
+ builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐
+ builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐
+ builder.CellFormat.Width = 60;
+ builder.Write("整改期限");
+
+ builder.InsertCell();
+ builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None;
+ builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First;
+ builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐
+ builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐
+ builder.CellFormat.Width = 60;
+ builder.Write("处理措施");
+ builder.EndRow();
+ #endregion
foreach (Model.View_CheckSpecialDetail detail in checkSpecialDetails)
{
//序号
@@ -451,80 +564,89 @@ namespace FineUIPro.Web.HSSE.Check
builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First;
builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐
builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐
- builder.CellFormat.Width = 20;
+ builder.CellFormat.Width = 40;
builder.Write(num.ToString());
- //单位工程
- builder.InsertCell();
- builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None;
- builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First;
- builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐
- builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐
- builder.CellFormat.Width = 55;
- builder.Write(string.IsNullOrEmpty(detail.CheckAreaName) ? "" : detail.CheckAreaName);
- //单位
- builder.InsertCell();
- builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None;
- builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First;
- builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐
- builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐
- builder.CellFormat.Width = 120;
- builder.Write(string.IsNullOrEmpty(detail.UnitName) ? "" : detail.UnitName);
+ ////单位工程
+ //builder.InsertCell();
+ //builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None;
+ //builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First;
+ //builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐
+ //builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐
+ //builder.CellFormat.Width = 60;
+ //builder.Write(string.IsNullOrEmpty(detail.CheckAreaName) ? "" : detail.CheckAreaName);
+ ////单位
+ //builder.InsertCell();
+ //builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None;
+ //builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First;
+ //builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐
+ //builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐
+ //builder.CellFormat.Width = 120;
+ //builder.Write(string.IsNullOrEmpty(detail.UnitName) ? "" : detail.UnitName);
//问题描述
builder.InsertCell();
builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None;
builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First;
builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐
builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐
- builder.CellFormat.Width = 40;
- builder.Write(string.IsNullOrEmpty(detail.Unqualified) ? "" : detail.Unqualified);
- //问题类型
- builder.InsertCell();
- builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None;
- builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First;
- builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐
- builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐
builder.CellFormat.Width = 100;
- builder.Write(string.IsNullOrEmpty(detail.CheckItemName)?"": detail.CheckItemName);
+ builder.Write(string.IsNullOrEmpty(detail.Unqualified) ? "" : detail.Unqualified);
+ //问题内容
+ builder.InsertCell();
+ builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None;
+ builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First;
+ builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐
+ builder.ParagraphFormat.Alignment = ParagraphAlignment.Left;//水平居中对齐
+ builder.CellFormat.Width = 250;
+ builder.CellFormat.WrapText = true;
+ builder.Write(string.IsNullOrEmpty(detail.CheckItemSetContent)?"": detail.CheckItemSetContent);
- //处理结果
+ ////处理结果
+ //builder.InsertCell();
+ //builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None;
+ //builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First;
+ //builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐
+ //builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐
+ //builder.CellFormat.Width = 60;
+ //builder.Write(string.IsNullOrEmpty(detail.CompleteStatusName) ? "" : detail.CompleteStatusName);
+ //整改期限
builder.InsertCell();
builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None;
builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First;
builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐
builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐
- builder.CellFormat.Width = 50;
- builder.Write(string.IsNullOrEmpty(detail.CompleteStatusName) ? "" : detail.CompleteStatusName);
+ builder.CellFormat.Width = 60;
+ builder.Write(string.Format("{0:yyyy-MM-dd}", detail.Rectification_Date));
//隐患类别
builder.InsertCell();
builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None;
builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First;
builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐
builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐
- builder.CellFormat.Width = 50;
- builder.Write(string.IsNullOrEmpty(detail.HiddenHazardTypeName) ? "" : detail.HiddenHazardTypeName);
+ builder.CellFormat.Width = 60;
+ builder.Write(string.IsNullOrEmpty(detail.HandleStepLink) ? "" : detail.HandleStepLink);
builder.EndRow();
num++;
}
builder.EndTable();
doc.Save(newUrl);
//生成PDF文件
- string pdfUrl = newUrl.Replace(".doc", ".pdf");
+ //string pdfUrl = newUrl.Replace(".doc", ".pdf");
Document doc1 = new Aspose.Words.Document(newUrl);
//验证参数
- if (doc1 == null) { throw new Exception("Word文件无效"); }
- doc1.Save(pdfUrl, Aspose.Words.SaveFormat.Pdf);//还可以改成其它格式
- string fileName = Path.GetFileName(filePath);
- FileInfo info = new FileInfo(pdfUrl);
+ //if (doc1 == null) { throw new Exception("Word文件无效"); }
+ //doc1.Save(pdfUrl, Aspose.Words.SaveFormat.Pdf);//还可以改成其它格式
+ string fileName = Path.GetFileName(newUrl);
+ FileInfo info = new FileInfo(newUrl);
long fileSize = info.Length;
Response.Clear();
Response.ContentType = "application/x-zip-compressed";
Response.AddHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));
Response.AddHeader("Content-Length", fileSize.ToString());
- Response.TransmitFile(pdfUrl, 0, fileSize);
+ Response.TransmitFile(newUrl, 0, fileSize);
Response.Flush();
Response.Close();
File.Delete(newUrl);
- File.Delete(pdfUrl);
+ //File.Delete(pdfUrl);
}
#endregion
}
diff --git a/SGGL/FineUIPro.Web/HSSE/Check/CheckSpecialView.aspx b/SGGL/FineUIPro.Web/HSSE/Check/CheckSpecialView.aspx
index 3e87226e..08a475e7 100644
--- a/SGGL/FineUIPro.Web/HSSE/Check/CheckSpecialView.aspx
+++ b/SGGL/FineUIPro.Web/HSSE/Check/CheckSpecialView.aspx
@@ -33,6 +33,18 @@
+
+
+
+
+
+
+
+
+
+
+
+
@@ -50,28 +62,28 @@
-
-
- --%>
+ <%--
-
- --%>
+
-
-
- --%>
+
-
-
+
//------------------------------------------------------------------------------
-namespace FineUIPro.Web.HSSE.Check {
-
-
- public partial class CheckSpecialView {
-
+namespace FineUIPro.Web.HSSE.Check
+{
+
+
+ public partial class CheckSpecialView
+ {
+
///
/// form1 控件。
///
@@ -20,7 +22,7 @@ namespace FineUIPro.Web.HSSE.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
-
+
///
/// PageManager1 控件。
///
@@ -29,7 +31,7 @@ namespace FineUIPro.Web.HSSE.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.PageManager PageManager1;
-
+
///
/// SimpleForm1 控件。
///
@@ -38,7 +40,7 @@ namespace FineUIPro.Web.HSSE.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Form SimpleForm1;
-
+
///
/// txtCheckSpecialCode 控件。
///
@@ -47,7 +49,7 @@ namespace FineUIPro.Web.HSSE.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.TextBox txtCheckSpecialCode;
-
+
///
/// rbType 控件。
///
@@ -56,7 +58,7 @@ namespace FineUIPro.Web.HSSE.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.RadioButtonList rbType;
-
+
///
/// txtSupCheckItemSet 控件。
///
@@ -65,7 +67,7 @@ namespace FineUIPro.Web.HSSE.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.TextBox txtSupCheckItemSet;
-
+
///
/// txtCheckDate 控件。
///
@@ -74,7 +76,34 @@ namespace FineUIPro.Web.HSSE.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.TextBox txtCheckDate;
-
+
+ ///
+ /// txtResponsibleUnit 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtResponsibleUnit;
+
+ ///
+ /// txtWorkAreaId 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtWorkAreaId;
+
+ ///
+ /// txtQuestionType 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtQuestionType;
+
///
/// txtPartInPersons 控件。
///
@@ -83,7 +112,7 @@ namespace FineUIPro.Web.HSSE.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.TextBox txtPartInPersons;
-
+
///
/// txtPartInPersonNames 控件。
///
@@ -92,7 +121,7 @@ namespace FineUIPro.Web.HSSE.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.TextBox txtPartInPersonNames;
-
+
///
/// Grid1 控件。
///
@@ -101,7 +130,7 @@ namespace FineUIPro.Web.HSSE.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Grid Grid1;
-
+
///
/// Toolbar1 控件。
///
@@ -110,7 +139,7 @@ namespace FineUIPro.Web.HSSE.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Toolbar Toolbar1;
-
+
///
/// lbTemp 控件。
///
@@ -119,7 +148,7 @@ namespace FineUIPro.Web.HSSE.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Label lbTemp;
-
+
///
/// btnAttachUrl 控件。
///
@@ -128,7 +157,7 @@ namespace FineUIPro.Web.HSSE.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Button btnAttachUrl;
-
+
///
/// ToolbarFill1 控件。
///
@@ -137,7 +166,7 @@ namespace FineUIPro.Web.HSSE.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.ToolbarFill ToolbarFill1;
-
+
///
/// btnClose 控件。
///
@@ -146,7 +175,7 @@ namespace FineUIPro.Web.HSSE.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Button btnClose;
-
+
///
/// hdId 控件。
///
@@ -155,7 +184,7 @@ namespace FineUIPro.Web.HSSE.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.HiddenField hdId;
-
+
///
/// hdAttachUrl 控件。
///
@@ -164,7 +193,7 @@ namespace FineUIPro.Web.HSSE.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.HiddenField hdAttachUrl;
-
+
///
/// WindowAtt 控件。
///
@@ -173,7 +202,7 @@ namespace FineUIPro.Web.HSSE.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Window WindowAtt;
-
+
///
/// Window1 控件。
///
diff --git a/SGGL/FineUIPro.Web/HSSE/InformationAnalysis/CheckAnalysis.aspx.cs b/SGGL/FineUIPro.Web/HSSE/InformationAnalysis/CheckAnalysis.aspx.cs
index 7ca15220..e1888b58 100644
--- a/SGGL/FineUIPro.Web/HSSE/InformationAnalysis/CheckAnalysis.aspx.cs
+++ b/SGGL/FineUIPro.Web/HSSE/InformationAnalysis/CheckAnalysis.aspx.cs
@@ -59,37 +59,66 @@ namespace FineUIPro.Web.HSSE.InformationAnalysis
dtCheck.Columns.Add("检查类型", typeof(string));
dtCheck.Columns.Add("数量", typeof(string));
- List newCheckAnalyseView = new List();
- var checkAnalyseView = from x in Funs.DB.View_CheckAnalysis
- where x.ProjectId == this.ProjectId
- select x;
- if (!string.IsNullOrEmpty(this.txtStarTime.Text))
- {
- checkAnalyseView = checkAnalyseView.Where(x => x.CheckTime >= Funs.GetNewDateTime(this.txtStarTime.Text));
- }
- if (!string.IsNullOrEmpty(this.txtEndTime.Text))
- {
- checkAnalyseView = checkAnalyseView.Where(x => x.CheckTime <= Funs.GetNewDateTime(this.txtEndTime.Text));
- }
- if (checkAnalyseView.Count() > 0)
- {
- foreach (var item in checkAnalyseView)
- {
- Model.SpResourceCollection view = new Model.SpResourceCollection
- {
- UnitName = BLL.Check_ProjectCheckItemSetService.ConvertCheckItemType(item.CheckItem),
- TotalCount = 1
- };
- newCheckAnalyseView.Add(view);
- }
- }
+ //List newCheckAnalyseView = new List();
+ //var checkAnalyseView = from x in Funs.DB.View_CheckAnalysis
+ // where x.ProjectId == this.ProjectId
+ // select x;
+ //if (!string.IsNullOrEmpty(this.txtStarTime.Text))
+ //{
+ // checkAnalyseView = checkAnalyseView.Where(x => x.CheckTime >= Funs.GetNewDateTime(this.txtStarTime.Text));
+ //}
+ //if (!string.IsNullOrEmpty(this.txtEndTime.Text))
+ //{
+ // checkAnalyseView = checkAnalyseView.Where(x => x.CheckTime <= Funs.GetNewDateTime(this.txtEndTime.Text));
+ //}
+ //if (checkAnalyseView.Count() > 0)
+ //{
+ // foreach (var item in checkAnalyseView)
+ // {
+ // Model.SpResourceCollection view = new Model.SpResourceCollection
+ // {
+ // UnitName = BLL.Check_ProjectCheckItemSetService.ConvertCheckItemType(item.CheckItem),
+ // TotalCount = 1
+ // };
+ // newCheckAnalyseView.Add(view);
+ // }
+ //}
- var checkType = newCheckAnalyseView.Select(x => x.UnitName).Distinct();
- foreach (var itemType in checkType)
+ //var checkType = newCheckAnalyseView.Select(x => x.UnitName).Distinct();
+ string[] TypeArray = { "HSE巡检", "专项检查", "综合检查", "开工前检查", "季节性/节假日前检查" };
+ #region 加载各项数据的子数据
+ var count1 = Funs.DB.View_Hazard_HazardRegister.Where(x => x.ProjectId == this.ProjectId).ToList().Count();
+
+ var count2 = (from x in Funs.DB.Check_CheckSpecialDetail
+ join y in Funs.DB.Check_CheckSpecial on x.CheckSpecialId equals y.CheckSpecialId
+ select x).ToList().Count();
+
+ var count3 = (from x in Funs.DB.Check_CheckColligationDetail
+ join y in Funs.DB.Check_CheckColligation on x.CheckColligationId equals y.CheckColligationId
+ where y.ProjectId == this.ProjectId
+ select x).ToList().Count();
+
+ var count4 = (from x in Funs.DB.Check_CheckWorkDetail
+ join y in Funs.DB.Check_CheckWork on x.CheckWorkId equals y.CheckWorkId
+ where y.ProjectId == this.ProjectId
+ select x).ToList().Count;
+
+ var count5 = (from x in Funs.DB.Check_CheckHolidayDetail
+ join y in Funs.DB.Check_CheckHoliday on x.CheckHolidayId equals y.CheckHolidayId
+ select x).ToList().Count();
+
+ List list = new List();
+ list.Add(new CheckAnalysisModel() { itemType = TypeArray[0], count = count1 });
+ list.Add(new CheckAnalysisModel() { itemType = TypeArray[1], count = count2 });
+ list.Add(new CheckAnalysisModel() { itemType = TypeArray[2], count = count3 });
+ list.Add(new CheckAnalysisModel() { itemType = TypeArray[3], count = count4 });
+ list.Add(new CheckAnalysisModel() { itemType = TypeArray[4], count = count5 });
+ #endregion
+ foreach (var itemType in list)
{
DataRow rowUnit = dtCheck.NewRow();
- rowUnit["检查类型"] = itemType;
- rowUnit["数量"] = newCheckAnalyseView.Where(x => x.UnitName == itemType).Count();
+ rowUnit["检查类型"] = itemType.itemType;
+ rowUnit["数量"] = itemType.count;
dtCheck.Rows.Add(rowUnit);
}
@@ -97,6 +126,11 @@ namespace FineUIPro.Web.HSSE.InformationAnalysis
this.gvCheck.DataBind();
this.ChartCostTime.CreateChart(BLL.ChartControlService.GetDataSourceChart(dtCheck, "危险因素分析", this.drpChartType.SelectedValue, 1150, 450, this.ckbShow.Checked));
}
+
+ public class CheckAnalysisModel {
+ public string itemType { get; set; }
+ public int count { get; set; }
+ }
#endregion
#region 统计查询
diff --git a/SGGL/FineUIPro.Web/HSSE/QualityAudit/EquipmentQuality.aspx b/SGGL/FineUIPro.Web/HSSE/QualityAudit/EquipmentQuality.aspx
index 9cf6fddb..08f3b06f 100644
--- a/SGGL/FineUIPro.Web/HSSE/QualityAudit/EquipmentQuality.aspx
+++ b/SGGL/FineUIPro.Web/HSSE/QualityAudit/EquipmentQuality.aspx
@@ -36,7 +36,8 @@
-
+
+
diff --git a/SGGL/FineUIPro.Web/HSSE/QualityAudit/EquipmentQuality.aspx.cs b/SGGL/FineUIPro.Web/HSSE/QualityAudit/EquipmentQuality.aspx.cs
index 14616a04..6506bee0 100644
--- a/SGGL/FineUIPro.Web/HSSE/QualityAudit/EquipmentQuality.aspx.cs
+++ b/SGGL/FineUIPro.Web/HSSE/QualityAudit/EquipmentQuality.aspx.cs
@@ -1,10 +1,13 @@
using BLL;
+using BLL.Common;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
+using System.IO;
using System.Linq;
using System.Text;
+using ThoughtWorks.QRCode.Codec;
using AspNet = System.Web.UI.WebControls;
namespace FineUIPro.Web.HSSE.QualityAudit
@@ -294,5 +297,120 @@ namespace FineUIPro.Web.HSSE.QualityAudit
}
}
#endregion
+
+ protected void btnQR_Click(object sender, EventArgs e)
+ {
+ string strSql = @"SELECT EquipmentQuality.EquipmentQualityId, CodeRecords.Code AS EquipmentQualityCode,
+ EquipmentQuality.FactoryCode ,EquipmentQuality.QRCodeAttachUrl
+ FROM QualityAudit_EquipmentQuality AS EquipmentQuality
+ LEFT JOIN Sys_CodeRecords AS CodeRecords ON EquipmentQuality.EquipmentQualityId = CodeRecords.DataId
+ LEFT JOIN Base_SpecialEquipment AS SpecialEquipment ON SpecialEquipment.SpecialEquipmentId = EquipmentQuality.SpecialEquipmentId WHERE 1=1 ";
+ List listStr = new List();
+ if (!string.IsNullOrEmpty(this.CurrUser.LoginProjectId))
+ {
+ strSql += " AND EquipmentQuality.ProjectId = @ProjectId";
+ listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
+ }
+ if (!string.IsNullOrEmpty(this.txtEquipmentQualityCode.Text.Trim()))
+ {
+ strSql += " AND EquipmentQualityCode LIKE @EquipmentQualityCode";
+ listStr.Add(new SqlParameter("@EquipmentQualityCode", "%" + this.txtEquipmentQualityCode.Text.Trim() + "%"));
+ }
+ if (this.drpUnitId.SelectedValue != BLL.Const._Null)
+ {
+ strSql += " AND EquipmentQuality.UnitId = @UnitId";
+ listStr.Add(new SqlParameter("@UnitId", this.drpUnitId.SelectedValue.Trim()));
+ }
+ if (!string.IsNullOrEmpty(this.txtSpecialEquipmentName.Text.Trim()))
+ {
+ strSql += " AND SpecialEquipmentName LIKE @SpecialEquipmentName";
+ listStr.Add(new SqlParameter("@SpecialEquipmentName", "%" + this.txtSpecialEquipmentName.Text.Trim() + "%"));
+ }
+ SqlParameter[] parameter = listStr.ToArray();
+ DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
+
+ NPOIExcel excel = new NPOIExcel();
+ excel.SetColumnWidth(0, 50);
+ excel.SetColumnWidth(1, 50);
+ excel.SetColumnWidth(2, 50);
+ for (int i = 0; i < tb.Rows.Count; i++)
+ {
+ if (i % 3 == 0)
+ {
+ excel.SetRowHeight(2 * (int)(i / 3), 200);
+ }
+ string QRCodeAttachUrl = tb.Rows[i]["QRCodeAttachUrl"].ToString();
+ string EquipmentQualityCode = tb.Rows[i]["EquipmentQualityCode"].ToString();
+ if (string.IsNullOrEmpty(QRCodeAttachUrl))
+ {
+ try
+ {
+ var equipmentQuality = Funs.DB.QualityAudit_EquipmentQuality.FirstOrDefault(x => x.EquipmentQualityId == tb.Rows[i]["EquipmentQualityId"].ToString());
+ equipmentQuality.QRCodeAttachUrl = CreateCode_Simple("equipment$" + tb.Rows[i]["FactoryCode"].ToString());
+ QRCodeAttachUrl = equipmentQuality.QRCodeAttachUrl;
+ Funs.DB.SubmitChanges();
+ }
+ catch (Exception e1) { }
+
+ }
+ //add picture data to this workbook.
+ excel.SetPicValue(2 * (int)(i / 3), i % 3, Server.MapPath("~/") + QRCodeAttachUrl);
+ excel.SetValue(2 * (int)(i / 3) + 1, i % 3, EquipmentQualityCode);
+ }
+ string initTemplatePath = Const.ExcelUrl + Funs.GetNewFileName() + ".xls";
+ string uploadfilepath = Server.MapPath("~/") + initTemplatePath;
+ string fileName = Path.GetFileName(initTemplatePath);
+ excel.Save(uploadfilepath);
+ FileInfo info = new FileInfo(uploadfilepath);
+
+ long fileSize = info.Length;
+ Response.ClearContent();
+ Response.ContentType = "application/x-zip-compressed";
+ Response.AddHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));
+ Response.AddHeader("Content-Length", fileSize.ToString());
+ Response.TransmitFile(uploadfilepath, 0, fileSize);
+ Response.Flush();
+ Response.End();
+
+
+
+ }
+
+ private string CreateCode_Simple(string nr)
+ {
+ try
+ {
+ string imageUrl = string.Empty;
+ QRCodeEncoder qrCodeEncoder = new QRCodeEncoder
+ {
+ QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE,
+ QRCodeScale = nr.Length,
+ QRCodeVersion = 0,
+ QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M
+ };
+ System.Drawing.Image image = qrCodeEncoder.Encode(nr, Encoding.UTF8);
+ string filepath = Server.MapPath("~/") + UploadFileService.QRCodeImageFilePath;
+ //如果文件夹不存在,则创建
+ if (!Directory.Exists(filepath))
+ {
+ Directory.CreateDirectory(filepath);
+ }
+ string filename = DateTime.Now.ToString("yyyymmddhhmmssfff").ToString() + ".jpg";
+ imageUrl = filepath + filename;
+ FileStream fs = new FileStream(imageUrl, FileMode.OpenOrCreate, FileAccess.Write);
+ image.Save(fs, System.Drawing.Imaging.ImageFormat.Jpeg);
+ fs.Close();
+ image.Dispose();
+ return UploadFileService.QRCodeImageFilePath + filename;
+ }
+
+ catch (Exception ex)
+
+ {
+ }
+ return "";
+ }
+
+
}
}
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/HSSE/QualityAudit/EquipmentQuality.aspx.designer.cs b/SGGL/FineUIPro.Web/HSSE/QualityAudit/EquipmentQuality.aspx.designer.cs
index 1b1a9e21..d1027b11 100644
--- a/SGGL/FineUIPro.Web/HSSE/QualityAudit/EquipmentQuality.aspx.designer.cs
+++ b/SGGL/FineUIPro.Web/HSSE/QualityAudit/EquipmentQuality.aspx.designer.cs
@@ -7,11 +7,13 @@
// 自动生成>
//------------------------------------------------------------------------------
-namespace FineUIPro.Web.HSSE.QualityAudit {
-
-
- public partial class EquipmentQuality {
-
+namespace FineUIPro.Web.HSSE.QualityAudit
+{
+
+
+ public partial class EquipmentQuality
+ {
+
///
/// form1 控件。
///
@@ -20,7 +22,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
-
+
///
/// PageManager1 控件。
///
@@ -29,7 +31,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.PageManager PageManager1;
-
+
///
/// Panel1 控件。
///
@@ -38,7 +40,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Panel Panel1;
-
+
///
/// Grid1 控件。
///
@@ -47,7 +49,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Grid Grid1;
-
+
///
/// Toolbar2 控件。
///
@@ -56,7 +58,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Toolbar Toolbar2;
-
+
///
/// txtEquipmentQualityCode 控件。
///
@@ -65,7 +67,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.TextBox txtEquipmentQualityCode;
-
+
///
/// drpUnitId 控件。
///
@@ -74,7 +76,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.DropDownList drpUnitId;
-
+
///
/// txtSpecialEquipmentName 控件。
///
@@ -83,7 +85,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.TextBox txtSpecialEquipmentName;
-
+
///
/// ToolbarFill1 控件。
///
@@ -92,7 +94,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.ToolbarFill ToolbarFill1;
-
+
///
/// btnNew 控件。
///
@@ -101,7 +103,16 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Button btnNew;
-
+
+ ///
+ /// btnQR 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnQR;
+
///
/// btnOut 控件。
///
@@ -110,7 +121,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Button btnOut;
-
+
///
/// lblNumber 控件。
///
@@ -119,7 +130,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::System.Web.UI.WebControls.Label lblNumber;
-
+
///
/// ToolbarSeparator1 控件。
///
@@ -128,7 +139,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
-
+
///
/// ToolbarText1 控件。
///
@@ -137,7 +148,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.ToolbarText ToolbarText1;
-
+
///
/// ddlPageSize 控件。
///
@@ -146,7 +157,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.DropDownList ddlPageSize;
-
+
///
/// Window1 控件。
///
@@ -155,7 +166,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Window Window1;
-
+
///
/// WindowAtt 控件。
///
@@ -164,7 +175,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Window WindowAtt;
-
+
///
/// Menu1 控件。
///
@@ -173,7 +184,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Menu Menu1;
-
+
///
/// btnMenuEdit 控件。
///
@@ -182,7 +193,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.MenuButton btnMenuEdit;
-
+
///
/// btnMenuDelete 控件。
///
diff --git a/SGGL/FineUIPro.Web/HSSE/QualityAudit/GeneralEquipmentQuality.aspx b/SGGL/FineUIPro.Web/HSSE/QualityAudit/GeneralEquipmentQuality.aspx
index 79b9f6df..015698e7 100644
--- a/SGGL/FineUIPro.Web/HSSE/QualityAudit/GeneralEquipmentQuality.aspx
+++ b/SGGL/FineUIPro.Web/HSSE/QualityAudit/GeneralEquipmentQuality.aspx
@@ -38,7 +38,8 @@
-
+
+
diff --git a/SGGL/FineUIPro.Web/HSSE/QualityAudit/GeneralEquipmentQuality.aspx.cs b/SGGL/FineUIPro.Web/HSSE/QualityAudit/GeneralEquipmentQuality.aspx.cs
index 0532f26f..999410a1 100644
--- a/SGGL/FineUIPro.Web/HSSE/QualityAudit/GeneralEquipmentQuality.aspx.cs
+++ b/SGGL/FineUIPro.Web/HSSE/QualityAudit/GeneralEquipmentQuality.aspx.cs
@@ -1,10 +1,13 @@
using BLL;
+using BLL.Common;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
+using System.IO;
using System.Linq;
using System.Text;
+using ThoughtWorks.QRCode.Codec;
using AspNet = System.Web.UI.WebControls;
namespace FineUIPro.Web.HSSE.QualityAudit
@@ -50,7 +53,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit
if (this.CurrUser != null && this.CurrUser.PageSize.HasValue)
{
Grid1.PageSize = this.CurrUser.PageSize.Value;
- }
+ }
this.ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
// 绑定表格
this.BindGrid();
@@ -109,7 +112,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
Grid1.RecordCount = tb.Rows.Count;
-
+
var table = this.GetPagedDataTable(Grid1, tb);
Grid1.DataSource = table;
Grid1.DataBind();
@@ -265,11 +268,134 @@ namespace FineUIPro.Web.HSSE.QualityAudit
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 = this.Grid1.RecordCount;
+ this.Grid1.PageSize = this.Grid1.RecordCount;
BindGrid();
Response.Write(GetGridTableHtml(Grid1));
Response.End();
}
#endregion
+
+
+
+
+
+ protected void btnQR_Click(object sender, EventArgs e)
+ {
+ string strSql = @"SELECT GeneralEquipmentQuality.GeneralEquipmentQualityId,"
+ + @"CodeRecords.Code AS GeneralEquipmentQualityCode,"
+ + @"GeneralEquipmentQuality.GeneralEquipmentQualityCode,"
+ + @"GeneralEquipmentQuality.QRCodeAttachUrl,"
+ + @"SpecialEquipment.SpecialEquipmentName"
+ + @" FROM QualityAudit_GeneralEquipmentQuality AS GeneralEquipmentQuality "
+ + @" LEFT JOIN Base_SpecialEquipment AS SpecialEquipment ON SpecialEquipment.SpecialEquipmentId = GeneralEquipmentQuality.SpecialEquipmentId "
+ + @" LEFT JOIN Sys_CodeRecords AS CodeRecords ON GeneralEquipmentQuality.GeneralEquipmentQualityId = CodeRecords.DataId WHERE 1=1 ";
+ List listStr = new List();
+ if (!string.IsNullOrEmpty(this.CurrUser.LoginProjectId))
+ {
+ strSql += " AND GeneralEquipmentQuality.ProjectId = @ProjectId";
+ listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
+ }
+ if (BLL.ProjectUnitService.GetProjectUnitTypeByProjectIdUnitId(this.ProjectId, this.CurrUser.UnitId))
+ {
+ strSql += " AND GeneralEquipmentQuality.UnitId = @UnitId"; ///状态为已完成
+ listStr.Add(new SqlParameter("@UnitId", this.CurrUser.UnitId));
+ }
+ if (!string.IsNullOrEmpty(this.txtGeneralEquipmentQualityCode.Text.Trim()))
+ {
+ strSql += " AND GeneralEquipmentQualityCode LIKE @GeneralEquipmentQualityCode";
+ listStr.Add(new SqlParameter("@GeneralEquipmentQualityCode", "%" + this.txtGeneralEquipmentQualityCode.Text.Trim() + "%"));
+ }
+ if (!string.IsNullOrEmpty(this.txtUnitName.Text.Trim()))
+ {
+ strSql += " AND UnitName LIKE @UnitName";
+ listStr.Add(new SqlParameter("@UnitName", "%" + this.txtUnitName.Text.Trim() + "%"));
+ }
+ if (!string.IsNullOrEmpty(this.txtSpecialEquipmentName.Text.Trim()))
+ {
+ strSql += " AND SpecialEquipmentName LIKE @SpecialEquipmentName";
+ listStr.Add(new SqlParameter("@SpecialEquipmentName", "%" + this.txtSpecialEquipmentName.Text.Trim() + "%"));
+ }
+ SqlParameter[] parameter = listStr.ToArray();
+ DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
+
+ NPOIExcel excel = new NPOIExcel();
+ excel.SetColumnWidth(0, 50);
+ excel.SetColumnWidth(1, 50);
+ excel.SetColumnWidth(2, 50);
+ for (int i = 0; i < tb.Rows.Count; i++)
+ {
+ if (i % 3 == 0)
+ {
+ excel.SetRowHeight(2 * (int)(i / 3), 200);
+ }
+ string QRCodeAttachUrl = tb.Rows[i]["QRCodeAttachUrl"].ToString();
+ string GeneralEquipmentQualityCode = tb.Rows[i]["GeneralEquipmentQualityCode"].ToString();
+ if (string.IsNullOrEmpty(QRCodeAttachUrl))
+ {
+ try
+ {
+ var equipmentQuality = Funs.DB.QualityAudit_GeneralEquipmentQuality.FirstOrDefault(x => x.GeneralEquipmentQualityId == tb.Rows[i]["GeneralEquipmentQualityId"].ToString());
+ equipmentQuality.QRCodeAttachUrl = CreateCode_Simple("equipments$" + tb.Rows[i]["GeneralEquipmentQualityId"].ToString());
+ QRCodeAttachUrl = equipmentQuality.QRCodeAttachUrl;
+ Funs.DB.SubmitChanges();
+ }
+ catch (Exception e1) { }
+ }
+ //add picture data to this workbook.
+ excel.SetPicValue(2 * (int)(i / 3), i % 3, Server.MapPath("~/") + QRCodeAttachUrl);
+ excel.SetValue(2 * (int)(i / 3) + 1, i % 3, GeneralEquipmentQualityCode);
+ }
+ string initTemplatePath = Const.ExcelUrl + Funs.GetNewFileName() + ".xls";
+ string uploadfilepath = Server.MapPath("~/") + initTemplatePath;
+ string fileName = Path.GetFileName(initTemplatePath);
+ excel.Save(uploadfilepath);
+ FileInfo info = new FileInfo(uploadfilepath);
+
+ long fileSize = info.Length;
+ Response.ClearContent();
+ Response.ContentType = "application/x-zip-compressed";
+ Response.AddHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));
+ Response.AddHeader("Content-Length", fileSize.ToString());
+ Response.TransmitFile(uploadfilepath, 0, fileSize);
+ Response.Flush();
+ Response.End();
+
+
+
+ }
+ private string CreateCode_Simple(string nr)
+ {
+ try
+ {
+ string imageUrl = string.Empty;
+ QRCodeEncoder qrCodeEncoder = new QRCodeEncoder
+ {
+ QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE,
+ QRCodeScale = nr.Length,
+ QRCodeVersion = 0,
+ QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M
+ };
+ System.Drawing.Image image = qrCodeEncoder.Encode(nr, Encoding.UTF8);
+ string filepath = Server.MapPath("~/") + UploadFileService.QRCodeImageFilePath;
+ //如果文件夹不存在,则创建
+ if (!Directory.Exists(filepath))
+ {
+ Directory.CreateDirectory(filepath);
+ }
+ string filename = DateTime.Now.ToString("yyyymmddhhmmssfff").ToString() + ".jpg";
+ imageUrl = filepath + filename;
+ FileStream fs = new FileStream(imageUrl, FileMode.OpenOrCreate, FileAccess.Write);
+ image.Save(fs, System.Drawing.Imaging.ImageFormat.Jpeg);
+ fs.Close();
+ image.Dispose();
+ return UploadFileService.QRCodeImageFilePath + filename;
+ }
+
+ catch (Exception ex)
+
+ {
+ }
+ return "";
+ }
}
}
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/HSSE/QualityAudit/GeneralEquipmentQuality.aspx.designer.cs b/SGGL/FineUIPro.Web/HSSE/QualityAudit/GeneralEquipmentQuality.aspx.designer.cs
index ec16217b..fcba2593 100644
--- a/SGGL/FineUIPro.Web/HSSE/QualityAudit/GeneralEquipmentQuality.aspx.designer.cs
+++ b/SGGL/FineUIPro.Web/HSSE/QualityAudit/GeneralEquipmentQuality.aspx.designer.cs
@@ -7,11 +7,13 @@
// 自动生成>
//------------------------------------------------------------------------------
-namespace FineUIPro.Web.HSSE.QualityAudit {
-
-
- public partial class GeneralEquipmentQuality {
-
+namespace FineUIPro.Web.HSSE.QualityAudit
+{
+
+
+ public partial class GeneralEquipmentQuality
+ {
+
///
/// form1 控件。
///
@@ -20,7 +22,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
-
+
///
/// PageManager1 控件。
///
@@ -29,7 +31,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.PageManager PageManager1;
-
+
///
/// Panel1 控件。
///
@@ -38,7 +40,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Panel Panel1;
-
+
///
/// Grid1 控件。
///
@@ -47,7 +49,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Grid Grid1;
-
+
///
/// Toolbar2 控件。
///
@@ -56,7 +58,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Toolbar Toolbar2;
-
+
///
/// txtGeneralEquipmentQualityCode 控件。
///
@@ -65,7 +67,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.TextBox txtGeneralEquipmentQualityCode;
-
+
///
/// txtUnitName 控件。
///
@@ -74,7 +76,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.TextBox txtUnitName;
-
+
///
/// txtSpecialEquipmentName 控件。
///
@@ -83,7 +85,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.TextBox txtSpecialEquipmentName;
-
+
///
/// ToolbarFill1 控件。
///
@@ -92,7 +94,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.ToolbarFill ToolbarFill1;
-
+
///
/// btnNew 控件。
///
@@ -101,7 +103,16 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Button btnNew;
-
+
+ ///
+ /// btnQR 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.Button btnQR;
+
///
/// btnOut 控件。
///
@@ -110,7 +121,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Button btnOut;
-
+
///
/// lblNumber 控件。
///
@@ -119,7 +130,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::System.Web.UI.WebControls.Label lblNumber;
-
+
///
/// ToolbarSeparator1 控件。
///
@@ -128,7 +139,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
-
+
///
/// ToolbarText1 控件。
///
@@ -137,7 +148,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.ToolbarText ToolbarText1;
-
+
///
/// ddlPageSize 控件。
///
@@ -146,7 +157,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.DropDownList ddlPageSize;
-
+
///
/// Window1 控件。
///
@@ -155,7 +166,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Window Window1;
-
+
///
/// WindowAtt 控件。
///
@@ -164,7 +175,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Window WindowAtt;
-
+
///
/// Menu1 控件。
///
@@ -173,7 +184,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Menu Menu1;
-
+
///
/// btnMenuEdit 控件。
///
@@ -182,7 +193,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.MenuButton btnMenuEdit;
-
+
///
/// btnMenuDelete 控件。
///
diff --git a/SGGL/FineUIPro.Web/HSSE/QualityAudit/GeneralEquipmentQualityEdit.aspx.cs b/SGGL/FineUIPro.Web/HSSE/QualityAudit/GeneralEquipmentQualityEdit.aspx.cs
index ffed5d21..ed67f390 100644
--- a/SGGL/FineUIPro.Web/HSSE/QualityAudit/GeneralEquipmentQualityEdit.aspx.cs
+++ b/SGGL/FineUIPro.Web/HSSE/QualityAudit/GeneralEquipmentQualityEdit.aspx.cs
@@ -215,7 +215,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit
this.SaveData(false);
}
- PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("~/Controls/SeeQRImage.aspx?GeneralEquipmentQualityId={0}&strCode={1}", this.GeneralEquipmentQualityId, "equipment$" + this.GeneralEquipmentQualityId), "二维码查看", 400, 400));
+ PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("~/Controls/SeeQRImage.aspx?GeneralEquipmentQualityId={0}&strCode={1}", this.GeneralEquipmentQualityId, "equipments$" + this.GeneralEquipmentQualityId), "二维码查看", 400, 400));
}
}
}
\ No newline at end of file
diff --git a/SGGL/FineUIPro.Web/ProjectData/Installation.aspx.cs b/SGGL/FineUIPro.Web/ProjectData/Installation.aspx.cs
index 14cc5194..2d7c855c 100644
--- a/SGGL/FineUIPro.Web/ProjectData/Installation.aspx.cs
+++ b/SGGL/FineUIPro.Web/ProjectData/Installation.aspx.cs
@@ -249,384 +249,401 @@ namespace FineUIPro.Web.ProjectData
}
Model.Base_Project project = BLL.ProjectService.GetProjectByProjectId(this.CurrUser.LoginProjectId);
string contenttype = "application/json;charset=utf-8";
- var returndata = BLL.APIGetHttpService.ControlHttp(Funs.ControlApiUrl + "/Projects/GetConstructionWbsList?ProjId=" + project.KZProjectCode, "GET", contenttype, null, null);
- if (!string.IsNullOrEmpty(returndata))
+ var returndata0 = BLL.APIGetHttpService.ControlHttp(Funs.ControlApiUrl + "/Projects/GetProjectList?Code=" + project.KZProjectCode, "GET", contenttype, null, null);
+ //string returndata0 = "{'result':{'items':[{'code':'22373','name':'甘肃能化金昌能源化工开发有限公司低阶煤高效利用制氢及50万吨尿基复合肥项目','shortName':'金昌能化50万吨尿基复合肥项目','projTypeId':1,'projType':'工程咨询','projPhaseId':65,'projPhase':'工程咨询','ownerName':'甘肃能化金昌能源化工开发有限公司','address':'境内','nature':'新建','level':'3级','productId':0,'productName':'','productSize':'','initiationDate':'2023-01-19T00:00:00','planStart':'2023-01-19T00:00:00','planFinish':'2023-02-10T00:00:00','realStart':null,'realFinish':null,'contractAmount':0.0000,'contractNumber':'','basicProcess':'','remark':'','isFinished':false,'communityArea':'2亿Nm3/年氢气,30万吨/年合成氨,50万吨/年尿基复合肥','isBreakdown':false,'isSpecial':false,'isKey':false,'status':'COMPLETION','guid':'73c4f36d-1ed2-41ba-9c6e-04619de214de','createdAt':'2023-01-19T09:21:20.213','updatedAt':'2023-01-19T09:21:20.213','id':34961},{'code':'22373','name':'甘肃能化金昌能源化工开发有限公司低阶煤高效利用制氢及50万吨尿基复合肥项目','shortName':'低阶煤高效利用制氢及50 万吨/年高浓度尿基复合肥项目','projTypeId':5,'projType':'工程总承包','projPhaseId':14,'projPhase':'EPC','ownerName':'甘肃能化金昌能源化工开发有限公司','address':'境内','nature':'新建','level':'1级','productId':0,'productName':'合成氨、尿素(中间产品)、尿基复合肥、氢气','productSize':'合成氨40万吨/年; 尿素30万吨/年; 氢气2亿m3/年; 尿基复合肥50万吨/年','initiationDate':'2023-04-23T00:00:00','planStart':'2023-04-23T00:00:00','planFinish':'2025-06-30T00:00:00','realStart':null,'realFinish':null,'contractAmount':0.0000,'contractNumber':'','basicProcess':'氨合成采用南京聚拓专利,尿素装置采用中国五环自有尿素专利技术。','remark':'','isFinished':false,'communityArea':'1.总体院;\n2.40万吨/年合成氨装置:合成气压缩、冷冻、氨合成、氨回收、PSA制氢(2亿m3/年氢气)、尾气压缩、输煤CO2压缩、尿素CO2压缩;\n3.30万吨/年尿素装置:主装置、原料贮运、成品包装贮运;\n4.50万吨/年尿基复合肥装置;\n5.公用工程:循环水、脱盐水、污水、中水回用、零排放、变电所、机柜间、中控室、综合泵站、生产消防水池等;\n6.辅助生产设施:生产分析室、维修车间、综合仓库、危废暂存库、化学品库、火炬等;\n7.储运系统:液氨常压罐、事故甲醇罐、液氨球罐、装车栈台、泡沫站等。','isBreakdown':true,'isSpecial':false,'isKey':false,'status':'EXECUTION','guid':'10142090-f850-47ae-be6c-43597e6dc4d1','createdAt':'2023-04-23T14:39:53.98','updatedAt':'2023-08-16T18:45:05.997','id':35120},{'code':'22373','name':'甘肃能化金昌能源化工开发有限公司低阶煤高效利用制氢及50万吨尿基复合肥项目','shortName':'甘肃能化金昌能化阶煤高效利用制氢及尿基复合肥项目','projTypeId':6,'projType':'投标','projPhaseId':18,'projPhase':'EPC投标','ownerName':'甘肃能化金昌能源化工开发有限公司','address':'境内','nature':'新建','level':'','productId':0,'productName':'合成氨及尿基复合肥','productSize':'合成氨30万吨/年(其中17.4万吨生产尿素)、尿素30万吨/年(中间产品)、尿基复合肥50万吨/年','initiationDate':'2023-02-01T00:00:00','planStart':'2023-02-01T00:00:00','planFinish':'2023-04-15T00:00:00','realStart':null,'realFinish':null,'contractAmount':0.0000,'contractNumber':'','basicProcess':'合成氨采用国有专利,尿素采用五环公司高效合成、低能耗尿素工艺技术。\n','remark':'','isFinished':true,'communityArea':'一、气化采用航天粉煤气化技术,生产氢气2亿Nm3/年、合成氨30万吨/年(其中17.4万吨生产尿素)、尿素30万吨/年、尿基复合肥50万吨/年、硫磺2.24万吨/年。\n二、本次投标范围为:空分装置,净化装置,合成氨装置,罐区,尿素装置,尿基复合肥装置,硫回收装置,锅炉装置(2x220t/h循环流化床锅炉)、水处理系统装置等全厂公辅,全厂总图、外线、地管、道路、控制室、变电所等,总体院。','isBreakdown':false,'isSpecial':false,'isKey':false,'status':'COMPLETION','guid':'9ffcd266-7196-4df1-9432-b818a5c91a6f','createdAt':'2023-02-01T15:30:18.013','updatedAt':'2023-07-27T16:58:14.37','id':34964}]},'targetUrl':null,'success':true,'error':null,'unAuthorizedRequest':false,'__abp':true}";
+ if (!string.IsNullOrEmpty(returndata0))
{
- JObject obj = JObject.Parse(returndata);
- JArray arr = JArray.Parse(obj["result"].ToString());
- Model.SGGLDB db = Funs.DB;
- //专业
- var cnProfessionInits = from x in db.WBS_CnProfessionInit select x;
- //单位工程及子单位工程
- var unitProjectInits = from x in db.Wbs_UnitProjectInit orderby x.SuperUnitProject select x;
- //分部/子分部/分项/子分项
- var wbsSetInits = (from x in db.WBS_WbsSetInit orderby x.SuperWbsSetCode select x).ToList();
- //费用清单对应关系
- var wbsSetMatchCostControlInits = from x in db.WBS_WbsSetMatchCostControlInit orderby x.WbsSetCode select x;
- //费用清单项
- var totalCostControlInits = from x in db.WBS_CostControlInit orderby x.CostControlInitCode select x;
- string sgId = string.Empty;
- foreach (var item in arr)
+ JObject obj0 = JObject.Parse(returndata0);
+ JArray arr0 = JArray.Parse(obj0["result"]["items"].ToString());
+ string proId = string.Empty;
+ foreach (var item in arr0)
{
- string id = item["id"].ToString(); //记录Id,主键
- string parentId = item["parentId"].ToString(); //上一级记录Id
- string code = item["code"].ToString(); //WBS编码
- string name = item["name"].ToString(); //WBS名称
- string level = item["level"].ToString(); //级别,0-7依次表示:项目、阶段(施工)、装置、工序、主项、专业、分部工程、分项工程
- string isLeaf = item["isLeaf"].ToString(); //是否末级
- string ppsId = item["ppsId"].ToString(); //阶段ID,3代表施工
- string projId = item["projId"].ToString(); //项目ID
- string planStart = item["planStart"].ToString(); //计划开始日期
- string planFinish = item["planFinish"].ToString(); //计划完成日期
- string remark = item["remark"].ToString(); //备注
- if (level == "0" || level == "1" || level == "2" || level == "3" || level == "4")
+ string projType = item["projType"].ToString();
+ string projPhase = item["projPhase"].ToString();
+ if (project.ProjType == projType && project.ProjPhase == projPhase)
{
- Model.Project_Installation installation = new Model.Project_Installation();
- installation.InstallationId = id;
- installation.ProjectId = this.CurrUser.LoginProjectId;
- installation.InstallationCode = code;
- installation.InstallationName = name;
- installation.SuperInstallationId = parentId == "-1" ? "0" : parentId;
- installation.StartDate = Funs.GetNewDateTime(planStart);
- installation.EndDate = Funs.GetNewDateTime(planFinish);
- installation.IsEnd = Convert.ToBoolean(isLeaf);
- installation.Def = remark;
- db.Project_Installation.InsertOnSubmit(installation);
- db.SubmitChanges();
- if (name == "施工")
- {
- sgId = id;
- }
- }
- else if (level == "5")
- {
- var cn = cnProfessionInits.FirstOrDefault(x => x.CnProfessionName.Contains(name.Substring(0, 2)));
- //拷贝专业
- if (cn != null)
- {
- if (cn.CnProfessionName != "防腐绝热" && cn.CnProfessionName != "地勘" && cn.CnProfessionName != "全厂地下主管网" && cn.CnProfessionName != "临时设施" && cn.CnProfessionName != "总图")
- {
- Model.WBS_CnProfession cnProfession = new Model.WBS_CnProfession();
- cnProfession.CnProfessionId = id;
- cnProfession.CnProfessionName = cn.CnProfessionName;
- cnProfession.CnProfessionCode = cn.CnProfessionCode;
- cnProfession.InstallationId = parentId;
- cnProfession.ProjectId = this.CurrUser.LoginProjectId;
- cnProfession.StartDate = Funs.GetNewDateTime(planStart);
- cnProfession.EndDate = Funs.GetNewDateTime(planFinish);
- cnProfession.OldId = cn.CnProfessionId;
- db.WBS_CnProfession.InsertOnSubmit(cnProfession);
- db.SubmitChanges();
- //单位工程
- var unitProjects = unitProjectInits.Where(x => x.CnProfessionId == cn.CnProfessionId);
- foreach (var unitProjectInit in unitProjects)
- {
- Model.Wbs_UnitProject unitProject = new Model.Wbs_UnitProject();
- unitProject.UnitProjectId = SQLHelper.GetNewID(typeof(Model.Wbs_UnitProject));
- unitProject.UnitProjectCode = unitProjectInit.UnitProjectCode;
- unitProject.UnitProjectName = unitProjectInit.UnitProjectName;
- unitProject.InstallationId = parentId;
- unitProject.SortIndex = unitProjectInit.SortIndex;
- unitProject.SuperUnitProjectId = null;
- unitProject.ProjectId = this.CurrUser.LoginProjectId;
- unitProject.CnProfessionId = id;
- unitProject.StartDate = Funs.GetNewDateTime(planStart);
- unitProject.EndDate = Funs.GetNewDateTime(planFinish);
- unitProject.Remark = unitProjectInit.Remark;
- unitProject.IsIn = true;
- db.Wbs_UnitProject.InsertOnSubmit(unitProject);
- db.SubmitChanges();
- }
- //分部分项
- var wbsSets = wbsSetInits.Where(x => x.CnProfessionId == cn.CnProfessionId);
- foreach (var wbsSetInit in wbsSets)
- {
- Model.Wbs_WbsSet wbsSet = new Model.Wbs_WbsSet();
- wbsSet.WbsSetId = SQLHelper.GetNewID(typeof(Model.Wbs_WbsSet));
- wbsSet.WbsSetCode = wbsSetInit.WbsSetCode;
- wbsSet.WbsSetName = wbsSetInit.WbsSetName;
- wbsSet.InstallationId = parentId;
- wbsSet.CnProfessionId = id;
- wbsSet.UnitProjectId = (from x in db.Wbs_UnitProject where x.UnitProjectCode == wbsSetInit.UnitProjectCode && x.CnProfessionId == id select x.UnitProjectId).FirstOrDefault();
- if (wbsSetInit.SuperWbsSetCode == null)
- {
- wbsSet.SuperWbsSetId = null;
- }
- else
- {
- wbsSet.SuperWbsSetId = (from x in db.Wbs_WbsSet
- where x.WbsSetCode == wbsSetInit.SuperWbsSetCode && x.InstallationId == parentId && x.CnProfessionId == id
- select x.WbsSetId).FirstOrDefault();
- }
- wbsSet.ProjectId = this.CurrUser.LoginProjectId;
- wbsSet.StartDate = Funs.GetNewDateTime(planStart);
- wbsSet.EndDate = Funs.GetNewDateTime(planFinish);
- wbsSet.Flag = wbsSetInit.Flag;
- wbsSet.Way = wbsSetInit.Way;
- wbsSet.Weights = wbsSetInit.Weights;
- wbsSet.ControlItemDef = wbsSetInit.ControlItemDef;
- wbsSet.ControlPoint = wbsSetInit.ControlPoint;
- wbsSet.Remark = wbsSetInit.Remark;
- wbsSet.IsIn = true;
- db.Wbs_WbsSet.InsertOnSubmit(wbsSet);
- db.SubmitChanges();
- var wbsSetMatchCostControls = wbsSetMatchCostControlInits.Where(x => x.WbsSetCode == wbsSetInit.WbsSetCode);
- foreach (var wbsSetMatchCostControlInit in wbsSetMatchCostControls)
- {
- Model.WBS_WbsSetMatchCostControl wbsSetMatchCostControl = new Model.WBS_WbsSetMatchCostControl();
- wbsSetMatchCostControl.WbsSetMatchCostControlId = SQLHelper.GetNewID();
- wbsSetMatchCostControl.WbsSetId = wbsSet.WbsSetId;
- wbsSetMatchCostControl.CostControlCode = wbsSetMatchCostControlInit.CostControlInitCode;
- if (wbsSetMatchCostControl.WbsSetId != null)
- {
- db.WBS_WbsSetMatchCostControl.InsertOnSubmit(wbsSetMatchCostControl);
- db.SubmitChanges();
- //拷贝费用清单项
- var costControlInits = from x in totalCostControlInits where x.CostControlInitCode == wbsSetMatchCostControlInit.CostControlInitCode orderby x.CostControlInitCode select x;
- foreach (var costControlInit in costControlInits)
- {
- Model.WBS_CostControl costControl = new Model.WBS_CostControl();
- costControl.CostControlId = SQLHelper.GetNewID();
- costControl.ProjectId = this.CurrUser.LoginProjectId;
- costControl.WbsSetId = wbsSetMatchCostControl.WbsSetId;
- costControl.CostControlCode = costControlInit.CostControlInitCode;
- costControl.CostControlName = costControlInit.CostControlInitName;
- costControl.Unit = costControlInit.Unit;
- db.WBS_CostControl.InsertOnSubmit(costControl);
- db.SubmitChanges();
- }
- }
- }
- }
- }
- else
- {
- var oldInstallation = Funs.DB.Project_Installation.FirstOrDefault(x => x.InstallationName == name);
- if (oldInstallation == null)
- {
- Model.Project_Installation installation = new Model.Project_Installation();
- installation.InstallationId = id;
- installation.ProjectId = this.CurrUser.LoginProjectId;
- installation.InstallationCode = code;
- installation.InstallationName = name;
- installation.SuperInstallationId = sgId;
- installation.StartDate = Funs.GetNewDateTime(planStart);
- installation.EndDate = Funs.GetNewDateTime(planFinish);
- installation.IsEnd = true;
- installation.Def = remark;
- db.Project_Installation.InsertOnSubmit(installation);
- db.SubmitChanges();
- // 拷贝总图等专业下WBS内容
- //拷贝单位工程及子单位工程
- var unitProjects = unitProjectInits.Where(x => x.CnProfessionId == cn.CnProfessionId);
- foreach (var unitProjectInit in unitProjects)
- {
- Model.Wbs_UnitProject unitProject = new Model.Wbs_UnitProject();
- unitProject.UnitProjectId = SQLHelper.GetNewID(typeof(Model.Wbs_UnitProject));
- unitProject.UnitProjectCode = unitProjectInit.UnitProjectCode;
- unitProject.UnitProjectName = unitProjectInit.UnitProjectName;
- if (unitProjectInit.SuperUnitProject == null)
- {
- unitProject.SuperUnitProjectId = null;
- }
- else
- {
- unitProject.SuperUnitProjectId = (from x in Funs.DB.Wbs_UnitProject
- where x.UnitProjectCode == unitProjectInit.SuperUnitProject && x.InstallationId == id
- select x.UnitProjectId).FirstOrDefault();
- }
- unitProject.InstallationId = id;
- unitProject.SortIndex = unitProjectInit.SortIndex;
- unitProject.ProjectId = this.CurrUser.LoginProjectId;
- unitProject.StartDate = Funs.GetNewDateTime(planStart);
- unitProject.EndDate = Funs.GetNewDateTime(planFinish);
- unitProject.Remark = unitProjectInit.Remark;
- unitProject.IsIn = true;
- db.Wbs_UnitProject.InsertOnSubmit(unitProject);
- db.SubmitChanges();
- }
- //拷贝分部/子分部/分项/子分项
- var wbsSets = wbsSetInits.Where(x => x.CnProfessionId == cn.CnProfessionId);
- foreach (var wbsSetInit in wbsSets)
- {
- Model.Wbs_WbsSet wbsSet = new Model.Wbs_WbsSet();
- wbsSet.WbsSetId = SQLHelper.GetNewID(typeof(Model.Wbs_WbsSet));
- wbsSet.WbsSetCode = wbsSetInit.WbsSetCode;
- wbsSet.WbsSetName = wbsSetInit.WbsSetName;
- wbsSet.InstallationId = id;
- wbsSet.UnitProjectId = (from x in Funs.DB.Wbs_UnitProject where x.UnitProjectCode == wbsSetInit.UnitProjectCode && x.InstallationId == id select x.UnitProjectId).FirstOrDefault();
- if (wbsSetInit.SuperWbsSetCode == null)
- {
- wbsSet.SuperWbsSetId = null;
- }
- else
- {
- wbsSet.SuperWbsSetId = (from x in Funs.DB.Wbs_WbsSet
- where x.WbsSetCode == wbsSetInit.SuperWbsSetCode && x.InstallationId == id
- select x.WbsSetId).FirstOrDefault();
- }
- wbsSet.ProjectId = this.CurrUser.LoginProjectId;
- wbsSet.StartDate = Funs.GetNewDateTime(planStart);
- wbsSet.EndDate = Funs.GetNewDateTime(planFinish);
- wbsSet.Flag = wbsSetInit.Flag;
- wbsSet.Way = wbsSetInit.Way;
- wbsSet.Weights = wbsSetInit.Weights;
- wbsSet.ControlItemDef = wbsSetInit.ControlItemDef;
- wbsSet.ControlPoint = wbsSetInit.ControlPoint;
- wbsSet.Remark = wbsSetInit.Remark;
- wbsSet.IsIn = true;
- db.Wbs_WbsSet.InsertOnSubmit(wbsSet);
- db.SubmitChanges();
- var wbsSetMatchCostControls = wbsSetMatchCostControlInits.Where(x => x.WbsSetCode == wbsSetInit.WbsSetCode);
- foreach (var wbsSetMatchCostControlInit in wbsSetMatchCostControls)
- {
- Model.WBS_WbsSetMatchCostControl wbsSetMatchCostControl = new Model.WBS_WbsSetMatchCostControl();
- wbsSetMatchCostControl.WbsSetMatchCostControlId = SQLHelper.GetNewID();
- wbsSetMatchCostControl.WbsSetId = wbsSet.WbsSetId;
- wbsSetMatchCostControl.CostControlCode = wbsSetMatchCostControlInit.CostControlInitCode;
- if (wbsSetMatchCostControl.WbsSetId != null)
- {
- db.WBS_WbsSetMatchCostControl.InsertOnSubmit(wbsSetMatchCostControl);
- db.SubmitChanges();
- //拷贝费用清单项
- var costControlInits = from x in totalCostControlInits where x.CostControlInitCode == wbsSetMatchCostControlInit.CostControlInitCode orderby x.CostControlInitCode select x;
- foreach (var costControlInit in costControlInits)
- {
- Model.WBS_CostControl costControl = new Model.WBS_CostControl();
- costControl.CostControlId = SQLHelper.GetNewID();
- costControl.ProjectId = this.CurrUser.LoginProjectId;
- costControl.WbsSetId = wbsSetMatchCostControl.WbsSetId;
- costControl.CostControlCode = costControlInit.CostControlInitCode;
- costControl.CostControlName = costControlInit.CostControlInitName;
- costControl.Unit = costControlInit.Unit;
- db.WBS_CostControl.InsertOnSubmit(costControl);
- db.SubmitChanges();
- }
- }
- }
- }
- }
- }
- }
- }
- else if (level == "6" || level == "7")
- {
- if (name.Contains("防腐绝热") || name.Contains("地勘") || name.Contains("全厂地下主管网") || name.Contains("临时设施") || name.Contains("总图"))
- {
- var cn = cnProfessionInits.FirstOrDefault(x => x.CnProfessionName.Contains(name.Substring(0, 2)));
- if (cn != null)
- {
- var oldInstallation = Funs.DB.Project_Installation.FirstOrDefault(x => x.InstallationName == name);
- if (oldInstallation == null)
- {
- Model.Project_Installation installation = new Model.Project_Installation();
- installation.InstallationId = id;
- installation.ProjectId = this.CurrUser.LoginProjectId;
- installation.InstallationCode = code;
- installation.InstallationName = name;
- installation.SuperInstallationId = sgId;
- installation.StartDate = Funs.GetNewDateTime(planStart);
- installation.EndDate = Funs.GetNewDateTime(planFinish);
- installation.IsEnd = true;
- installation.Def = remark;
- db.Project_Installation.InsertOnSubmit(installation);
- db.SubmitChanges();
- // 拷贝总图等专业下WBS内容
- //拷贝单位工程及子单位工程
- var unitProjects = unitProjectInits.Where(x => x.CnProfessionId == cn.CnProfessionId);
- foreach (var unitProjectInit in unitProjects)
- {
- Model.Wbs_UnitProject unitProject = new Model.Wbs_UnitProject();
- unitProject.UnitProjectId = SQLHelper.GetNewID(typeof(Model.Wbs_UnitProject));
- unitProject.UnitProjectCode = unitProjectInit.UnitProjectCode;
- unitProject.UnitProjectName = unitProjectInit.UnitProjectName;
- if (unitProjectInit.SuperUnitProject == null)
- {
- unitProject.SuperUnitProjectId = null;
- }
- else
- {
- unitProject.SuperUnitProjectId = (from x in Funs.DB.Wbs_UnitProject
- where x.UnitProjectCode == unitProjectInit.SuperUnitProject && x.InstallationId == id
- select x.UnitProjectId).FirstOrDefault();
- }
- unitProject.InstallationId = id;
- unitProject.SortIndex = unitProjectInit.SortIndex;
- unitProject.ProjectId = this.CurrUser.LoginProjectId;
- unitProject.StartDate = Funs.GetNewDateTime(planStart);
- unitProject.EndDate = Funs.GetNewDateTime(planFinish);
- unitProject.Remark = unitProjectInit.Remark;
- unitProject.IsIn = true;
- db.Wbs_UnitProject.InsertOnSubmit(unitProject);
- db.SubmitChanges();
- }
- //拷贝分部/子分部/分项/子分项
- var wbsSets = wbsSetInits.Where(x => x.CnProfessionId == cn.CnProfessionId);
- foreach (var wbsSetInit in wbsSets)
- {
- Model.Wbs_WbsSet wbsSet = new Model.Wbs_WbsSet();
- wbsSet.WbsSetId = SQLHelper.GetNewID(typeof(Model.Wbs_WbsSet));
- wbsSet.WbsSetCode = wbsSetInit.WbsSetCode;
- wbsSet.WbsSetName = wbsSetInit.WbsSetName;
- wbsSet.InstallationId = id;
- wbsSet.UnitProjectId = (from x in Funs.DB.Wbs_UnitProject where x.UnitProjectCode == wbsSetInit.UnitProjectCode && x.InstallationId == id select x.UnitProjectId).FirstOrDefault();
- if (wbsSetInit.SuperWbsSetCode == null)
- {
- wbsSet.SuperWbsSetId = null;
- }
- else
- {
- wbsSet.SuperWbsSetId = (from x in Funs.DB.Wbs_WbsSet
- where x.WbsSetCode == wbsSetInit.SuperWbsSetCode && x.InstallationId == id
- select x.WbsSetId).FirstOrDefault();
- }
- wbsSet.ProjectId = this.CurrUser.LoginProjectId;
- wbsSet.StartDate = Funs.GetNewDateTime(planStart);
- wbsSet.EndDate = Funs.GetNewDateTime(planFinish);
- wbsSet.Flag = wbsSetInit.Flag;
- wbsSet.Way = wbsSetInit.Way;
- wbsSet.Weights = wbsSetInit.Weights;
- wbsSet.ControlItemDef = wbsSetInit.ControlItemDef;
- wbsSet.ControlPoint = wbsSetInit.ControlPoint;
- wbsSet.Remark = wbsSetInit.Remark;
- wbsSet.IsIn = true;
- db.Wbs_WbsSet.InsertOnSubmit(wbsSet);
- db.SubmitChanges();
- var wbsSetMatchCostControls = wbsSetMatchCostControlInits.Where(x => x.WbsSetCode == wbsSetInit.WbsSetCode);
- foreach (var wbsSetMatchCostControlInit in wbsSetMatchCostControls)
- {
- Model.WBS_WbsSetMatchCostControl wbsSetMatchCostControl = new Model.WBS_WbsSetMatchCostControl();
- wbsSetMatchCostControl.WbsSetMatchCostControlId = SQLHelper.GetNewID();
- wbsSetMatchCostControl.WbsSetId = wbsSet.WbsSetId;
- wbsSetMatchCostControl.CostControlCode = wbsSetMatchCostControlInit.CostControlInitCode;
- if (wbsSetMatchCostControl.WbsSetId != null)
- {
- db.WBS_WbsSetMatchCostControl.InsertOnSubmit(wbsSetMatchCostControl);
- db.SubmitChanges();
- //拷贝费用清单项
- var costControlInits = from x in totalCostControlInits where x.CostControlInitCode == wbsSetMatchCostControlInit.CostControlInitCode orderby x.CostControlInitCode select x;
- foreach (var costControlInit in costControlInits)
- {
- Model.WBS_CostControl costControl = new Model.WBS_CostControl();
- costControl.CostControlId = SQLHelper.GetNewID();
- costControl.ProjectId = this.CurrUser.LoginProjectId;
- costControl.WbsSetId = wbsSetMatchCostControl.WbsSetId;
- costControl.CostControlCode = costControlInit.CostControlInitCode;
- costControl.CostControlName = costControlInit.CostControlInitName;
- costControl.Unit = costControlInit.Unit;
- db.WBS_CostControl.InsertOnSubmit(costControl);
- db.SubmitChanges();
- }
- }
- }
- }
- }
- }
- }
+ proId= item["id"].ToString();
}
}
- ShowNotify("抽取成功!", MessageBoxIcon.Success);
- InitTreeMenu();
+ var returndata = BLL.APIGetHttpService.ControlHttp(Funs.ControlApiUrl + "/Projects/GetConstructionWbsList?ProjId=" + proId, "GET", contenttype, null, null);
+ if (!string.IsNullOrEmpty(returndata))
+ {
+ JObject obj = JObject.Parse(returndata);
+ JArray arr = JArray.Parse(obj["result"].ToString());
+ Model.SGGLDB db = Funs.DB;
+ //专业
+ var cnProfessionInits = from x in db.WBS_CnProfessionInit select x;
+ //单位工程及子单位工程
+ var unitProjectInits = from x in db.Wbs_UnitProjectInit orderby x.SuperUnitProject select x;
+ //分部/子分部/分项/子分项
+ var wbsSetInits = (from x in db.WBS_WbsSetInit orderby x.SuperWbsSetCode select x).ToList();
+ //费用清单对应关系
+ var wbsSetMatchCostControlInits = from x in db.WBS_WbsSetMatchCostControlInit orderby x.WbsSetCode select x;
+ //费用清单项
+ var totalCostControlInits = from x in db.WBS_CostControlInit orderby x.CostControlInitCode select x;
+ string sgId = string.Empty;
+ foreach (var item in arr)
+ {
+ string id = item["id"].ToString(); //记录Id,主键
+ string parentId = item["parentId"].ToString(); //上一级记录Id
+ string code = item["code"].ToString(); //WBS编码
+ string name = item["name"].ToString(); //WBS名称
+ string level = item["level"].ToString(); //级别,0-7依次表示:项目、阶段(施工)、装置、工序、主项、专业、分部工程、分项工程
+ string isLeaf = item["isLeaf"].ToString(); //是否末级
+ string ppsId = item["ppsId"].ToString(); //阶段ID,3代表施工
+ string projId = item["projId"].ToString(); //项目ID
+ string planStart = item["planStart"].ToString(); //计划开始日期
+ string planFinish = item["planFinish"].ToString(); //计划完成日期
+ string remark = item["remark"].ToString(); //备注
+ if (level == "0" || level == "1" || level == "2" || level == "3" || level == "4")
+ {
+ Model.Project_Installation installation = new Model.Project_Installation();
+ installation.InstallationId = id;
+ installation.ProjectId = this.CurrUser.LoginProjectId;
+ installation.InstallationCode = code;
+ installation.InstallationName = name;
+ installation.SuperInstallationId = parentId == "-1" ? "0" : parentId;
+ installation.StartDate = Funs.GetNewDateTime(planStart);
+ installation.EndDate = Funs.GetNewDateTime(planFinish);
+ installation.IsEnd = Convert.ToBoolean(isLeaf);
+ installation.Def = remark;
+ db.Project_Installation.InsertOnSubmit(installation);
+ db.SubmitChanges();
+ if (name == "施工")
+ {
+ sgId = id;
+ }
+ }
+ else if (level == "5")
+ {
+ var cn = cnProfessionInits.FirstOrDefault(x => x.CnProfessionName.Contains(name.Substring(0, 2)));
+ //拷贝专业
+ if (cn != null)
+ {
+ if (cn.CnProfessionName != "防腐绝热" && cn.CnProfessionName != "地勘" && cn.CnProfessionName != "全厂地下主管网" && cn.CnProfessionName != "临时设施" && cn.CnProfessionName != "总图")
+ {
+ Model.WBS_CnProfession cnProfession = new Model.WBS_CnProfession();
+ cnProfession.CnProfessionId = id;
+ cnProfession.CnProfessionName = cn.CnProfessionName;
+ cnProfession.CnProfessionCode = cn.CnProfessionCode;
+ cnProfession.InstallationId = parentId;
+ cnProfession.ProjectId = this.CurrUser.LoginProjectId;
+ cnProfession.StartDate = Funs.GetNewDateTime(planStart);
+ cnProfession.EndDate = Funs.GetNewDateTime(planFinish);
+ cnProfession.OldId = cn.CnProfessionId;
+ db.WBS_CnProfession.InsertOnSubmit(cnProfession);
+ db.SubmitChanges();
+ //单位工程
+ var unitProjects = unitProjectInits.Where(x => x.CnProfessionId == cn.CnProfessionId);
+ foreach (var unitProjectInit in unitProjects)
+ {
+ Model.Wbs_UnitProject unitProject = new Model.Wbs_UnitProject();
+ unitProject.UnitProjectId = SQLHelper.GetNewID(typeof(Model.Wbs_UnitProject));
+ unitProject.UnitProjectCode = unitProjectInit.UnitProjectCode;
+ unitProject.UnitProjectName = unitProjectInit.UnitProjectName;
+ unitProject.InstallationId = parentId;
+ unitProject.SortIndex = unitProjectInit.SortIndex;
+ unitProject.SuperUnitProjectId = null;
+ unitProject.ProjectId = this.CurrUser.LoginProjectId;
+ unitProject.CnProfessionId = id;
+ unitProject.StartDate = Funs.GetNewDateTime(planStart);
+ unitProject.EndDate = Funs.GetNewDateTime(planFinish);
+ unitProject.Remark = unitProjectInit.Remark;
+ unitProject.IsIn = true;
+ db.Wbs_UnitProject.InsertOnSubmit(unitProject);
+ db.SubmitChanges();
+ }
+ //分部分项
+ var wbsSets = wbsSetInits.Where(x => x.CnProfessionId == cn.CnProfessionId);
+ foreach (var wbsSetInit in wbsSets)
+ {
+ Model.Wbs_WbsSet wbsSet = new Model.Wbs_WbsSet();
+ wbsSet.WbsSetId = SQLHelper.GetNewID(typeof(Model.Wbs_WbsSet));
+ wbsSet.WbsSetCode = wbsSetInit.WbsSetCode;
+ wbsSet.WbsSetName = wbsSetInit.WbsSetName;
+ wbsSet.InstallationId = parentId;
+ wbsSet.CnProfessionId = id;
+ wbsSet.UnitProjectId = (from x in db.Wbs_UnitProject where x.UnitProjectCode == wbsSetInit.UnitProjectCode && x.CnProfessionId == id select x.UnitProjectId).FirstOrDefault();
+ if (wbsSetInit.SuperWbsSetCode == null)
+ {
+ wbsSet.SuperWbsSetId = null;
+ }
+ else
+ {
+ wbsSet.SuperWbsSetId = (from x in db.Wbs_WbsSet
+ where x.WbsSetCode == wbsSetInit.SuperWbsSetCode && x.InstallationId == parentId && x.CnProfessionId == id
+ select x.WbsSetId).FirstOrDefault();
+ }
+ wbsSet.ProjectId = this.CurrUser.LoginProjectId;
+ wbsSet.StartDate = Funs.GetNewDateTime(planStart);
+ wbsSet.EndDate = Funs.GetNewDateTime(planFinish);
+ wbsSet.Flag = wbsSetInit.Flag;
+ wbsSet.Way = wbsSetInit.Way;
+ wbsSet.Weights = wbsSetInit.Weights;
+ wbsSet.ControlItemDef = wbsSetInit.ControlItemDef;
+ wbsSet.ControlPoint = wbsSetInit.ControlPoint;
+ wbsSet.Remark = wbsSetInit.Remark;
+ wbsSet.IsIn = true;
+ db.Wbs_WbsSet.InsertOnSubmit(wbsSet);
+ db.SubmitChanges();
+ var wbsSetMatchCostControls = wbsSetMatchCostControlInits.Where(x => x.WbsSetCode == wbsSetInit.WbsSetCode);
+ foreach (var wbsSetMatchCostControlInit in wbsSetMatchCostControls)
+ {
+ Model.WBS_WbsSetMatchCostControl wbsSetMatchCostControl = new Model.WBS_WbsSetMatchCostControl();
+ wbsSetMatchCostControl.WbsSetMatchCostControlId = SQLHelper.GetNewID();
+ wbsSetMatchCostControl.WbsSetId = wbsSet.WbsSetId;
+ wbsSetMatchCostControl.CostControlCode = wbsSetMatchCostControlInit.CostControlInitCode;
+ if (wbsSetMatchCostControl.WbsSetId != null)
+ {
+ db.WBS_WbsSetMatchCostControl.InsertOnSubmit(wbsSetMatchCostControl);
+ db.SubmitChanges();
+ //拷贝费用清单项
+ var costControlInits = from x in totalCostControlInits where x.CostControlInitCode == wbsSetMatchCostControlInit.CostControlInitCode orderby x.CostControlInitCode select x;
+ foreach (var costControlInit in costControlInits)
+ {
+ Model.WBS_CostControl costControl = new Model.WBS_CostControl();
+ costControl.CostControlId = SQLHelper.GetNewID();
+ costControl.ProjectId = this.CurrUser.LoginProjectId;
+ costControl.WbsSetId = wbsSetMatchCostControl.WbsSetId;
+ costControl.CostControlCode = costControlInit.CostControlInitCode;
+ costControl.CostControlName = costControlInit.CostControlInitName;
+ costControl.Unit = costControlInit.Unit;
+ db.WBS_CostControl.InsertOnSubmit(costControl);
+ db.SubmitChanges();
+ }
+ }
+ }
+ }
+ }
+ else
+ {
+ var oldInstallation = Funs.DB.Project_Installation.FirstOrDefault(x => x.InstallationName == name);
+ if (oldInstallation == null)
+ {
+ Model.Project_Installation installation = new Model.Project_Installation();
+ installation.InstallationId = id;
+ installation.ProjectId = this.CurrUser.LoginProjectId;
+ installation.InstallationCode = code;
+ installation.InstallationName = name;
+ installation.SuperInstallationId = sgId;
+ installation.StartDate = Funs.GetNewDateTime(planStart);
+ installation.EndDate = Funs.GetNewDateTime(planFinish);
+ installation.IsEnd = true;
+ installation.Def = remark;
+ db.Project_Installation.InsertOnSubmit(installation);
+ db.SubmitChanges();
+ // 拷贝总图等专业下WBS内容
+ //拷贝单位工程及子单位工程
+ var unitProjects = unitProjectInits.Where(x => x.CnProfessionId == cn.CnProfessionId);
+ foreach (var unitProjectInit in unitProjects)
+ {
+ Model.Wbs_UnitProject unitProject = new Model.Wbs_UnitProject();
+ unitProject.UnitProjectId = SQLHelper.GetNewID(typeof(Model.Wbs_UnitProject));
+ unitProject.UnitProjectCode = unitProjectInit.UnitProjectCode;
+ unitProject.UnitProjectName = unitProjectInit.UnitProjectName;
+ if (unitProjectInit.SuperUnitProject == null)
+ {
+ unitProject.SuperUnitProjectId = null;
+ }
+ else
+ {
+ unitProject.SuperUnitProjectId = (from x in Funs.DB.Wbs_UnitProject
+ where x.UnitProjectCode == unitProjectInit.SuperUnitProject && x.InstallationId == id
+ select x.UnitProjectId).FirstOrDefault();
+ }
+ unitProject.InstallationId = id;
+ unitProject.SortIndex = unitProjectInit.SortIndex;
+ unitProject.ProjectId = this.CurrUser.LoginProjectId;
+ unitProject.StartDate = Funs.GetNewDateTime(planStart);
+ unitProject.EndDate = Funs.GetNewDateTime(planFinish);
+ unitProject.Remark = unitProjectInit.Remark;
+ unitProject.IsIn = true;
+ db.Wbs_UnitProject.InsertOnSubmit(unitProject);
+ db.SubmitChanges();
+ }
+ //拷贝分部/子分部/分项/子分项
+ var wbsSets = wbsSetInits.Where(x => x.CnProfessionId == cn.CnProfessionId);
+ foreach (var wbsSetInit in wbsSets)
+ {
+ Model.Wbs_WbsSet wbsSet = new Model.Wbs_WbsSet();
+ wbsSet.WbsSetId = SQLHelper.GetNewID(typeof(Model.Wbs_WbsSet));
+ wbsSet.WbsSetCode = wbsSetInit.WbsSetCode;
+ wbsSet.WbsSetName = wbsSetInit.WbsSetName;
+ wbsSet.InstallationId = id;
+ wbsSet.UnitProjectId = (from x in Funs.DB.Wbs_UnitProject where x.UnitProjectCode == wbsSetInit.UnitProjectCode && x.InstallationId == id select x.UnitProjectId).FirstOrDefault();
+ if (wbsSetInit.SuperWbsSetCode == null)
+ {
+ wbsSet.SuperWbsSetId = null;
+ }
+ else
+ {
+ wbsSet.SuperWbsSetId = (from x in Funs.DB.Wbs_WbsSet
+ where x.WbsSetCode == wbsSetInit.SuperWbsSetCode && x.InstallationId == id
+ select x.WbsSetId).FirstOrDefault();
+ }
+ wbsSet.ProjectId = this.CurrUser.LoginProjectId;
+ wbsSet.StartDate = Funs.GetNewDateTime(planStart);
+ wbsSet.EndDate = Funs.GetNewDateTime(planFinish);
+ wbsSet.Flag = wbsSetInit.Flag;
+ wbsSet.Way = wbsSetInit.Way;
+ wbsSet.Weights = wbsSetInit.Weights;
+ wbsSet.ControlItemDef = wbsSetInit.ControlItemDef;
+ wbsSet.ControlPoint = wbsSetInit.ControlPoint;
+ wbsSet.Remark = wbsSetInit.Remark;
+ wbsSet.IsIn = true;
+ db.Wbs_WbsSet.InsertOnSubmit(wbsSet);
+ db.SubmitChanges();
+ var wbsSetMatchCostControls = wbsSetMatchCostControlInits.Where(x => x.WbsSetCode == wbsSetInit.WbsSetCode);
+ foreach (var wbsSetMatchCostControlInit in wbsSetMatchCostControls)
+ {
+ Model.WBS_WbsSetMatchCostControl wbsSetMatchCostControl = new Model.WBS_WbsSetMatchCostControl();
+ wbsSetMatchCostControl.WbsSetMatchCostControlId = SQLHelper.GetNewID();
+ wbsSetMatchCostControl.WbsSetId = wbsSet.WbsSetId;
+ wbsSetMatchCostControl.CostControlCode = wbsSetMatchCostControlInit.CostControlInitCode;
+ if (wbsSetMatchCostControl.WbsSetId != null)
+ {
+ db.WBS_WbsSetMatchCostControl.InsertOnSubmit(wbsSetMatchCostControl);
+ db.SubmitChanges();
+ //拷贝费用清单项
+ var costControlInits = from x in totalCostControlInits where x.CostControlInitCode == wbsSetMatchCostControlInit.CostControlInitCode orderby x.CostControlInitCode select x;
+ foreach (var costControlInit in costControlInits)
+ {
+ Model.WBS_CostControl costControl = new Model.WBS_CostControl();
+ costControl.CostControlId = SQLHelper.GetNewID();
+ costControl.ProjectId = this.CurrUser.LoginProjectId;
+ costControl.WbsSetId = wbsSetMatchCostControl.WbsSetId;
+ costControl.CostControlCode = costControlInit.CostControlInitCode;
+ costControl.CostControlName = costControlInit.CostControlInitName;
+ costControl.Unit = costControlInit.Unit;
+ db.WBS_CostControl.InsertOnSubmit(costControl);
+ db.SubmitChanges();
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ else if (level == "6" || level == "7")
+ {
+ if (name.Contains("防腐绝热") || name.Contains("地勘") || name.Contains("全厂地下主管网") || name.Contains("临时设施") || name.Contains("总图"))
+ {
+ var cn = cnProfessionInits.FirstOrDefault(x => x.CnProfessionName.Contains(name.Substring(0, 2)));
+ if (cn != null)
+ {
+ var oldInstallation = Funs.DB.Project_Installation.FirstOrDefault(x => x.InstallationName == name);
+ if (oldInstallation == null)
+ {
+ Model.Project_Installation installation = new Model.Project_Installation();
+ installation.InstallationId = id;
+ installation.ProjectId = this.CurrUser.LoginProjectId;
+ installation.InstallationCode = code;
+ installation.InstallationName = name;
+ installation.SuperInstallationId = sgId;
+ installation.StartDate = Funs.GetNewDateTime(planStart);
+ installation.EndDate = Funs.GetNewDateTime(planFinish);
+ installation.IsEnd = true;
+ installation.Def = remark;
+ db.Project_Installation.InsertOnSubmit(installation);
+ db.SubmitChanges();
+ // 拷贝总图等专业下WBS内容
+ //拷贝单位工程及子单位工程
+ var unitProjects = unitProjectInits.Where(x => x.CnProfessionId == cn.CnProfessionId);
+ foreach (var unitProjectInit in unitProjects)
+ {
+ Model.Wbs_UnitProject unitProject = new Model.Wbs_UnitProject();
+ unitProject.UnitProjectId = SQLHelper.GetNewID(typeof(Model.Wbs_UnitProject));
+ unitProject.UnitProjectCode = unitProjectInit.UnitProjectCode;
+ unitProject.UnitProjectName = unitProjectInit.UnitProjectName;
+ if (unitProjectInit.SuperUnitProject == null)
+ {
+ unitProject.SuperUnitProjectId = null;
+ }
+ else
+ {
+ unitProject.SuperUnitProjectId = (from x in Funs.DB.Wbs_UnitProject
+ where x.UnitProjectCode == unitProjectInit.SuperUnitProject && x.InstallationId == id
+ select x.UnitProjectId).FirstOrDefault();
+ }
+ unitProject.InstallationId = id;
+ unitProject.SortIndex = unitProjectInit.SortIndex;
+ unitProject.ProjectId = this.CurrUser.LoginProjectId;
+ unitProject.StartDate = Funs.GetNewDateTime(planStart);
+ unitProject.EndDate = Funs.GetNewDateTime(planFinish);
+ unitProject.Remark = unitProjectInit.Remark;
+ unitProject.IsIn = true;
+ db.Wbs_UnitProject.InsertOnSubmit(unitProject);
+ db.SubmitChanges();
+ }
+ //拷贝分部/子分部/分项/子分项
+ var wbsSets = wbsSetInits.Where(x => x.CnProfessionId == cn.CnProfessionId);
+ foreach (var wbsSetInit in wbsSets)
+ {
+ Model.Wbs_WbsSet wbsSet = new Model.Wbs_WbsSet();
+ wbsSet.WbsSetId = SQLHelper.GetNewID(typeof(Model.Wbs_WbsSet));
+ wbsSet.WbsSetCode = wbsSetInit.WbsSetCode;
+ wbsSet.WbsSetName = wbsSetInit.WbsSetName;
+ wbsSet.InstallationId = id;
+ wbsSet.UnitProjectId = (from x in Funs.DB.Wbs_UnitProject where x.UnitProjectCode == wbsSetInit.UnitProjectCode && x.InstallationId == id select x.UnitProjectId).FirstOrDefault();
+ if (wbsSetInit.SuperWbsSetCode == null)
+ {
+ wbsSet.SuperWbsSetId = null;
+ }
+ else
+ {
+ wbsSet.SuperWbsSetId = (from x in Funs.DB.Wbs_WbsSet
+ where x.WbsSetCode == wbsSetInit.SuperWbsSetCode && x.InstallationId == id
+ select x.WbsSetId).FirstOrDefault();
+ }
+ wbsSet.ProjectId = this.CurrUser.LoginProjectId;
+ wbsSet.StartDate = Funs.GetNewDateTime(planStart);
+ wbsSet.EndDate = Funs.GetNewDateTime(planFinish);
+ wbsSet.Flag = wbsSetInit.Flag;
+ wbsSet.Way = wbsSetInit.Way;
+ wbsSet.Weights = wbsSetInit.Weights;
+ wbsSet.ControlItemDef = wbsSetInit.ControlItemDef;
+ wbsSet.ControlPoint = wbsSetInit.ControlPoint;
+ wbsSet.Remark = wbsSetInit.Remark;
+ wbsSet.IsIn = true;
+ db.Wbs_WbsSet.InsertOnSubmit(wbsSet);
+ db.SubmitChanges();
+ var wbsSetMatchCostControls = wbsSetMatchCostControlInits.Where(x => x.WbsSetCode == wbsSetInit.WbsSetCode);
+ foreach (var wbsSetMatchCostControlInit in wbsSetMatchCostControls)
+ {
+ Model.WBS_WbsSetMatchCostControl wbsSetMatchCostControl = new Model.WBS_WbsSetMatchCostControl();
+ wbsSetMatchCostControl.WbsSetMatchCostControlId = SQLHelper.GetNewID();
+ wbsSetMatchCostControl.WbsSetId = wbsSet.WbsSetId;
+ wbsSetMatchCostControl.CostControlCode = wbsSetMatchCostControlInit.CostControlInitCode;
+ if (wbsSetMatchCostControl.WbsSetId != null)
+ {
+ db.WBS_WbsSetMatchCostControl.InsertOnSubmit(wbsSetMatchCostControl);
+ db.SubmitChanges();
+ //拷贝费用清单项
+ var costControlInits = from x in totalCostControlInits where x.CostControlInitCode == wbsSetMatchCostControlInit.CostControlInitCode orderby x.CostControlInitCode select x;
+ foreach (var costControlInit in costControlInits)
+ {
+ Model.WBS_CostControl costControl = new Model.WBS_CostControl();
+ costControl.CostControlId = SQLHelper.GetNewID();
+ costControl.ProjectId = this.CurrUser.LoginProjectId;
+ costControl.WbsSetId = wbsSetMatchCostControl.WbsSetId;
+ costControl.CostControlCode = costControlInit.CostControlInitCode;
+ costControl.CostControlName = costControlInit.CostControlInitName;
+ costControl.Unit = costControlInit.Unit;
+ db.WBS_CostControl.InsertOnSubmit(costControl);
+ db.SubmitChanges();
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ ShowNotify("抽取成功!", MessageBoxIcon.Success);
+ InitTreeMenu();
+ }
}
}
else
diff --git a/SGGL/FineUIPro.Web/ProjectData/ProjectSetSave.aspx b/SGGL/FineUIPro.Web/ProjectData/ProjectSetSave.aspx
index 4e4516d0..5c73709e 100644
--- a/SGGL/FineUIPro.Web/ProjectData/ProjectSetSave.aspx
+++ b/SGGL/FineUIPro.Web/ProjectData/ProjectSetSave.aspx
@@ -147,6 +147,12 @@
+
+
+
+
+
+
diff --git a/SGGL/FineUIPro.Web/ProjectData/ProjectSetSave.aspx.cs b/SGGL/FineUIPro.Web/ProjectData/ProjectSetSave.aspx.cs
index 871a857f..5d257036 100644
--- a/SGGL/FineUIPro.Web/ProjectData/ProjectSetSave.aspx.cs
+++ b/SGGL/FineUIPro.Web/ProjectData/ProjectSetSave.aspx.cs
@@ -168,6 +168,8 @@ namespace FineUIPro.Web.ProjectData
this.txtEnglishRemark.Text = project.EnglishRemark;
this.txtHJProjectCode.Text = project.HJProjectCode;
this.txtKZProjectCode.Text = project.KZProjectCode;
+ this.txtProjType.Text = project.ProjType;
+ this.txtProjPhase.Text = project.ProjPhase;
if (project.Progress != null)
{
this.txtProgress.Text = project.Progress.ToString();
@@ -209,6 +211,8 @@ namespace FineUIPro.Web.ProjectData
City = this.txtCity.Text.Trim(),
EnglishRemark = this.txtEnglishRemark.Text.Trim(),
Progress = Funs.GetNewDecimal(this.txtProgress.Text),
+ ProjType = this.txtProjType.Text.Trim(),
+ ProjPhase = this.txtProjPhase.Text.Trim(),
};
if (string.IsNullOrEmpty(project.JTProjectCode))
{
diff --git a/SGGL/FineUIPro.Web/ProjectData/ProjectSetSave.aspx.designer.cs b/SGGL/FineUIPro.Web/ProjectData/ProjectSetSave.aspx.designer.cs
index 0429f13e..feb4f79d 100644
--- a/SGGL/FineUIPro.Web/ProjectData/ProjectSetSave.aspx.designer.cs
+++ b/SGGL/FineUIPro.Web/ProjectData/ProjectSetSave.aspx.designer.cs
@@ -7,13 +7,11 @@
// 自动生成>
//------------------------------------------------------------------------------
-namespace FineUIPro.Web.ProjectData
-{
-
-
- public partial class ProjectSetSave
- {
-
+namespace FineUIPro.Web.ProjectData {
+
+
+ public partial class ProjectSetSave {
+
///
/// form1 控件。
///
@@ -22,7 +20,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
-
+
///
/// PageManager1 控件。
///
@@ -31,7 +29,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.PageManager PageManager1;
-
+
///
/// SimpleForm1 控件。
///
@@ -40,7 +38,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Form SimpleForm1;
-
+
///
/// txtProjectName 控件。
///
@@ -49,7 +47,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.TextBox txtProjectName;
-
+
///
/// txtProjectCode 控件。
///
@@ -58,7 +56,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.TextBox txtProjectCode;
-
+
///
/// txtShortName 控件。
///
@@ -67,7 +65,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.TextBox txtShortName;
-
+
///
/// drpProjectType 控件。
///
@@ -76,7 +74,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.DropDownList drpProjectType;
-
+
///
/// drpProjectState 控件。
///
@@ -85,7 +83,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.DropDownList drpProjectState;
-
+
///
/// drpProjectState2 控件。
///
@@ -94,7 +92,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.DropDownList drpProjectState2;
-
+
///
/// txtStartDate 控件。
///
@@ -103,7 +101,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.DatePicker txtStartDate;
-
+
///
/// txtEndDate 控件。
///
@@ -112,7 +110,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.DatePicker txtEndDate;
-
+
///
/// txtContractNo 控件。
///
@@ -121,7 +119,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.TextBox txtContractNo;
-
+
///
/// txtDuration 控件。
///
@@ -130,7 +128,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.NumberBox txtDuration;
-
+
///
/// drpProjectManager 控件。
///
@@ -139,7 +137,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.DropDownList drpProjectManager;
-
+
///
/// drpConstructionManager 控件。
///
@@ -148,7 +146,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.DropDownList drpConstructionManager;
-
+
///
/// drpQAManager 控件。
///
@@ -157,7 +155,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.DropDownList drpQAManager;
-
+
///
/// drpHSSEManager 控件。
///
@@ -166,7 +164,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.DropDownList drpHSSEManager;
-
+
///
/// drpDriveManager 控件。
///
@@ -175,7 +173,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.DropDownList drpDriveManager;
-
+
///
/// drpUnit 控件。
///
@@ -184,7 +182,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.DropDownList drpUnit;
-
+
///
/// txtProjectAddress 控件。
///
@@ -193,7 +191,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.TextBox txtProjectAddress;
-
+
///
/// txtJTProjectCode 控件。
///
@@ -202,7 +200,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.TextBox txtJTProjectCode;
-
+
///
/// ckbIsForeign 控件。
///
@@ -211,7 +209,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.CheckBox ckbIsForeign;
-
+
///
/// txtWorkRange 控件。
///
@@ -220,7 +218,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.TextArea txtWorkRange;
-
+
///
/// txtRemark 控件。
///
@@ -229,7 +227,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.TextArea txtRemark;
-
+
///
/// txtProjectMoney 控件。
///
@@ -238,7 +236,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.NumberBox txtProjectMoney;
-
+
///
/// txtConstructionMoney 控件。
///
@@ -247,7 +245,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.NumberBox txtConstructionMoney;
-
+
///
/// txtTelephone 控件。
///
@@ -256,7 +254,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.TextBox txtTelephone;
-
+
///
/// drpCountry 控件。
///
@@ -265,7 +263,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.DropDownList drpCountry;
-
+
///
/// drpProvince 控件。
///
@@ -274,7 +272,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.DropDownList drpProvince;
-
+
///
/// txtCity 控件。
///
@@ -283,7 +281,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.TextBox txtCity;
-
+
///
/// txtMapCoordinates 控件。
///
@@ -292,7 +290,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.TextBox txtMapCoordinates;
-
+
///
/// bottomPanel 控件。
///
@@ -301,7 +299,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.ContentPanel bottomPanel;
-
+
///
/// txtEnglishRemark 控件。
///
@@ -310,7 +308,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.TextBox txtEnglishRemark;
-
+
///
/// txtHJProjectCode 控件。
///
@@ -319,7 +317,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.TextBox txtHJProjectCode;
-
+
///
/// txtKZProjectCode 控件。
///
@@ -328,7 +326,25 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.TextBox txtKZProjectCode;
-
+
+ ///
+ /// txtProjType 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtProjType;
+
+ ///
+ /// txtProjPhase 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtProjPhase;
+
///
/// txtProgress 控件。
///
@@ -337,7 +353,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.NumberBox txtProgress;
-
+
///
/// Toolbar1 控件。
///
@@ -346,7 +362,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Toolbar Toolbar1;
-
+
///
/// ckIsUpTotalMonth 控件。
///
@@ -355,7 +371,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.CheckBox ckIsUpTotalMonth;
-
+
///
/// btnAttachUrl 控件。
///
@@ -364,7 +380,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Button btnAttachUrl;
-
+
///
/// btnSave 控件。
///
@@ -373,7 +389,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Button btnSave;
-
+
///
/// btnClose 控件。
///
@@ -382,7 +398,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.Button btnClose;
-
+
///
/// hdCompileMan 控件。
///
@@ -391,7 +407,7 @@ namespace FineUIPro.Web.ProjectData
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
///
protected global::FineUIPro.HiddenField hdCompileMan;
-
+
///
/// WindowAtt 控件。
///
diff --git a/SGGL/FineUIPro.Web/ProjectData/ProjectSetView.aspx b/SGGL/FineUIPro.Web/ProjectData/ProjectSetView.aspx
index 91db6d71..686dee6f 100644
--- a/SGGL/FineUIPro.Web/ProjectData/ProjectSetView.aspx
+++ b/SGGL/FineUIPro.Web/ProjectData/ProjectSetView.aspx
@@ -106,6 +106,12 @@
+
+
+
+
+
+
diff --git a/SGGL/FineUIPro.Web/ProjectData/ProjectSetView.aspx.cs b/SGGL/FineUIPro.Web/ProjectData/ProjectSetView.aspx.cs
index a9b1e359..92b46111 100644
--- a/SGGL/FineUIPro.Web/ProjectData/ProjectSetView.aspx.cs
+++ b/SGGL/FineUIPro.Web/ProjectData/ProjectSetView.aspx.cs
@@ -102,6 +102,8 @@ namespace FineUIPro.Web.ProjectData
this.txtEnglishRemark.Text = project.EnglishRemark;
this.txtHJProjectCode.Text = project.HJProjectCode;
this.txtKZProjectCode.Text = project.KZProjectCode;
+ this.txtProjType.Text = project.ProjType;
+ this.txtProjPhase.Text = project.ProjPhase;
if (project.Progress != null)
{
this.txtProgress.Text = project.Progress.ToString();
diff --git a/SGGL/FineUIPro.Web/ProjectData/ProjectSetView.aspx.designer.cs b/SGGL/FineUIPro.Web/ProjectData/ProjectSetView.aspx.designer.cs
index cbd49494..0dddc5da 100644
--- a/SGGL/FineUIPro.Web/ProjectData/ProjectSetView.aspx.designer.cs
+++ b/SGGL/FineUIPro.Web/ProjectData/ProjectSetView.aspx.designer.cs
@@ -300,6 +300,24 @@ namespace FineUIPro.Web.ProjectData {
///
protected global::FineUIPro.TextBox txtKZProjectCode;
+ ///
+ /// txtProjType 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtProjType;
+
+ ///
+ /// txtProjPhase 控件。
+ ///
+ ///
+ /// 自动生成的字段。
+ /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
+ ///
+ protected global::FineUIPro.TextBox txtProjPhase;
+
///
/// txtEnglishRemark 控件。
///
diff --git a/SGGL/Model/APIItem/HSSE/CheckSpecialDetailItem.cs b/SGGL/Model/APIItem/HSSE/CheckSpecialDetailItem.cs
index b5539e84..8d6f8c13 100644
--- a/SGGL/Model/APIItem/HSSE/CheckSpecialDetailItem.cs
+++ b/SGGL/Model/APIItem/HSSE/CheckSpecialDetailItem.cs
@@ -203,5 +203,9 @@ namespace Model
///
public string Rectification_Date { get; set; }
+ ///
+ /// 处理意见
+ ///
+ public string CheckOpinions { get; set; }
}
}
diff --git a/SGGL/Model/APIItem/HSSE/CheckSpecialItem.cs b/SGGL/Model/APIItem/HSSE/CheckSpecialItem.cs
index 91f4f824..0bcae846 100644
--- a/SGGL/Model/APIItem/HSSE/CheckSpecialItem.cs
+++ b/SGGL/Model/APIItem/HSSE/CheckSpecialItem.cs
@@ -180,5 +180,71 @@ namespace Model
get;
set;
}
+
+ ///
+ /// 受检单位
+ ///
+ public string ResponsibleUnit
+ {
+ get;
+ set;
+ }
+ ///
+ /// 受检单位
+ ///
+ public string ResponsibleUnitName
+ {
+ get;
+ set;
+ }
+ ///
+ /// 单位工程ID
+ ///
+ public string WorkAreaId
+ {
+ get;
+ set;
+ }
+ ///
+ /// 单位工程ID
+ ///
+ public string WorkAreaName
+ {
+ get;
+ set;
+ }
+ ///
+ /// 问题类型
+ ///
+ public string QuestionType
+ {
+ get;
+ set;
+ }
+ ///
+ /// 问题类型
+ ///
+ public string QuestionTypeName
+ {
+ get;
+ set;
+ }
+
+ ///
+ /// 审核人
+ ///
+ public string ResponsibleMan { get; set; }
+
+ ///
+ /// 审核状态
+ ///
+ public string AuditState { get; set; }
+
+ ///
+ /// 接收人
+ ///
+ public string ReceiveMan { get; set; }
+
+ public string ReceiveManName { get; set; }
}
}
diff --git a/SGGL/Model/APIItem/HSSE/EquipmentQualityItem.cs b/SGGL/Model/APIItem/HSSE/EquipmentQualityItem.cs
index 16689aae..8b1b84da 100644
--- a/SGGL/Model/APIItem/HSSE/EquipmentQualityItem.cs
+++ b/SGGL/Model/APIItem/HSSE/EquipmentQualityItem.cs
@@ -95,5 +95,13 @@ namespace Model
/// 附件
///
public string AttachUrl { get; set; }
+ ///
+ /// 是否合格
+ ///
+ public string IsQualified { get; set; }
+ ///
+ /// 数量
+ ///
+ public string EquipmentCount { get; set; }
}
}
diff --git a/SGGL/Model/Model.cs b/SGGL/Model/Model.cs
index f3139172..8db11614 100644
--- a/SGGL/Model/Model.cs
+++ b/SGGL/Model/Model.cs
@@ -9179,6 +9179,14 @@ namespace Model
}
}
+ public System.Data.Linq.Table View_QualityAudit_GeneralEquipmentQuality
+ {
+ get
+ {
+ return this.GetTable();
+ }
+ }
+
public System.Data.Linq.Table View_QualityAudit_PersonQuality
{
get
@@ -25021,6 +25029,10 @@ namespace Model
private string _ProjectAttribute;
+ private string _ProjType;
+
+ private string _ProjPhase;
+
private EntitySet _Accident_AccidentHandle;
private EntitySet _Accident_AccidentPersonRecord;
@@ -25675,6 +25687,10 @@ namespace Model
partial void OnCLProjectCodeChanged();
partial void OnProjectAttributeChanging(string value);
partial void OnProjectAttributeChanged();
+ partial void OnProjTypeChanging(string value);
+ partial void OnProjTypeChanged();
+ partial void OnProjPhaseChanging(string value);
+ partial void OnProjPhaseChanged();
#endregion
public Base_Project()
@@ -26699,6 +26715,46 @@ namespace Model
}
}
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProjType", DbType="NVarChar(50)")]
+ public string ProjType
+ {
+ get
+ {
+ return this._ProjType;
+ }
+ set
+ {
+ if ((this._ProjType != value))
+ {
+ this.OnProjTypeChanging(value);
+ this.SendPropertyChanging();
+ this._ProjType = value;
+ this.SendPropertyChanged("ProjType");
+ this.OnProjTypeChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProjPhase", DbType="NVarChar(50)")]
+ public string ProjPhase
+ {
+ get
+ {
+ return this._ProjPhase;
+ }
+ set
+ {
+ if ((this._ProjPhase != value))
+ {
+ this.OnProjPhaseChanging(value);
+ this.SendPropertyChanging();
+ this._ProjPhase = value;
+ this.SendPropertyChanged("ProjPhase");
+ this.OnProjPhaseChanged();
+ }
+ }
+ }
+
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Accident_AccidentHandle_Base_Project", Storage="_Accident_AccidentHandle", ThisKey="ProjectId", OtherKey="ProjectId", DeleteRule="NO ACTION")]
public EntitySet Accident_AccidentHandle
{
@@ -59583,6 +59639,16 @@ namespace Model
private string _CheckItemSetId;
+ private string _ResponsibleUnit;
+
+ private string _WorkAreaId;
+
+ private string _QuestionType;
+
+ private string _ResponsibleMan;
+
+ private string _ReceiveMan;
+
private EntityRef _Base_Project;
private EntityRef _Technique_CheckItemSet;
@@ -59623,6 +59689,16 @@ namespace Model
partial void OnPartInPersonNamesChanged();
partial void OnCheckItemSetIdChanging(string value);
partial void OnCheckItemSetIdChanged();
+ partial void OnResponsibleUnitChanging(string value);
+ partial void OnResponsibleUnitChanged();
+ partial void OnWorkAreaIdChanging(string value);
+ partial void OnWorkAreaIdChanged();
+ partial void OnQuestionTypeChanging(string value);
+ partial void OnQuestionTypeChanged();
+ partial void OnResponsibleManChanging(string value);
+ partial void OnResponsibleManChanged();
+ partial void OnReceiveManChanging(string value);
+ partial void OnReceiveManChanged();
#endregion
public Check_CheckSpecial()
@@ -59960,6 +60036,106 @@ namespace Model
}
}
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResponsibleUnit", DbType="NVarChar(50)")]
+ public string ResponsibleUnit
+ {
+ get
+ {
+ return this._ResponsibleUnit;
+ }
+ set
+ {
+ if ((this._ResponsibleUnit != value))
+ {
+ this.OnResponsibleUnitChanging(value);
+ this.SendPropertyChanging();
+ this._ResponsibleUnit = value;
+ this.SendPropertyChanged("ResponsibleUnit");
+ this.OnResponsibleUnitChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_WorkAreaId", DbType="NVarChar(50)")]
+ public string WorkAreaId
+ {
+ get
+ {
+ return this._WorkAreaId;
+ }
+ set
+ {
+ if ((this._WorkAreaId != value))
+ {
+ this.OnWorkAreaIdChanging(value);
+ this.SendPropertyChanging();
+ this._WorkAreaId = value;
+ this.SendPropertyChanged("WorkAreaId");
+ this.OnWorkAreaIdChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_QuestionType", DbType="NVarChar(50)")]
+ public string QuestionType
+ {
+ get
+ {
+ return this._QuestionType;
+ }
+ set
+ {
+ if ((this._QuestionType != value))
+ {
+ this.OnQuestionTypeChanging(value);
+ this.SendPropertyChanging();
+ this._QuestionType = value;
+ this.SendPropertyChanged("QuestionType");
+ this.OnQuestionTypeChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResponsibleMan", DbType="NVarChar(50)")]
+ public string ResponsibleMan
+ {
+ get
+ {
+ return this._ResponsibleMan;
+ }
+ set
+ {
+ if ((this._ResponsibleMan != value))
+ {
+ this.OnResponsibleManChanging(value);
+ this.SendPropertyChanging();
+ this._ResponsibleMan = value;
+ this.SendPropertyChanged("ResponsibleMan");
+ this.OnResponsibleManChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ReceiveMan", DbType="NVarChar(2000)")]
+ public string ReceiveMan
+ {
+ get
+ {
+ return this._ReceiveMan;
+ }
+ set
+ {
+ if ((this._ReceiveMan != value))
+ {
+ this.OnReceiveManChanging(value);
+ this.SendPropertyChanging();
+ this._ReceiveMan = value;
+ this.SendPropertyChanged("ReceiveMan");
+ this.OnReceiveManChanged();
+ }
+ }
+ }
+
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Check_CheckSpecial_Base_Project", Storage="_Base_Project", ThisKey="ProjectId", OtherKey="ProjectId", IsForeignKey=true)]
public Base_Project Base_Project
{
@@ -60099,6 +60275,8 @@ namespace Model
private System.Nullable _Rectification_Date;
+ private string _CheckOpinions;
+
private EntityRef _Base_Unit;
private EntityRef _WBS_UnitWork;
@@ -60151,6 +60329,8 @@ namespace Model
partial void OnCheckItemSetContentChanged();
partial void OnRectification_DateChanging(System.Nullable value);
partial void OnRectification_DateChanged();
+ partial void OnCheckOpinionsChanging(string value);
+ partial void OnCheckOpinionsChanged();
#endregion
public Check_CheckSpecialDetail()
@@ -60608,6 +60788,26 @@ namespace Model
}
}
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CheckOpinions", DbType="NVarChar(2000)")]
+ public string CheckOpinions
+ {
+ get
+ {
+ return this._CheckOpinions;
+ }
+ set
+ {
+ if ((this._CheckOpinions != value))
+ {
+ this.OnCheckOpinionsChanging(value);
+ this.SendPropertyChanging();
+ this._CheckOpinions = value;
+ this.SendPropertyChanged("CheckOpinions");
+ this.OnCheckOpinionsChanged();
+ }
+ }
+ }
+
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Check_CheckSpecialDetail_Base_Unit", Storage="_Base_Unit", ThisKey="UnitId", OtherKey="UnitId", IsForeignKey=true)]
public Base_Unit Base_Unit
{
@@ -392840,6 +393040,303 @@ namespace Model
}
}
+ [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.View_QualityAudit_GeneralEquipmentQuality")]
+ public partial class View_QualityAudit_GeneralEquipmentQuality
+ {
+
+ private string _GeneralEquipmentQualityId;
+
+ private string _ProjectId;
+
+ private string _GeneralEquipmentQualityCode;
+
+ private string _UnitId;
+
+ private string _UnitName;
+
+ private string _SpecialEquipmentId;
+
+ private string _SpecialEquipmentName;
+
+ private System.Nullable _IsQualified;
+
+ private System.Nullable _EquipmentCount;
+
+ private System.Nullable _InDate;
+
+ private string _Remark;
+
+ private string _CompileMan;
+
+ private string _CompileManName;
+
+ private System.Nullable _CompileDate;
+
+ private string _QRCodeAttachUrl;
+
+ private string _AttachUrl;
+
+ public View_QualityAudit_GeneralEquipmentQuality()
+ {
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_GeneralEquipmentQualityId", DbType="NVarChar(50) NOT NULL", CanBeNull=false)]
+ public string GeneralEquipmentQualityId
+ {
+ get
+ {
+ return this._GeneralEquipmentQualityId;
+ }
+ set
+ {
+ if ((this._GeneralEquipmentQualityId != value))
+ {
+ this._GeneralEquipmentQualityId = value;
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProjectId", DbType="NVarChar(50) NOT NULL", CanBeNull=false)]
+ public string ProjectId
+ {
+ get
+ {
+ return this._ProjectId;
+ }
+ set
+ {
+ if ((this._ProjectId != value))
+ {
+ this._ProjectId = value;
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_GeneralEquipmentQualityCode", DbType="NVarChar(50) NOT NULL", CanBeNull=false)]
+ public string GeneralEquipmentQualityCode
+ {
+ get
+ {
+ return this._GeneralEquipmentQualityCode;
+ }
+ set
+ {
+ if ((this._GeneralEquipmentQualityCode != value))
+ {
+ this._GeneralEquipmentQualityCode = value;
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UnitId", DbType="NVarChar(50) NOT NULL", CanBeNull=false)]
+ public string UnitId
+ {
+ get
+ {
+ return this._UnitId;
+ }
+ set
+ {
+ if ((this._UnitId != value))
+ {
+ this._UnitId = value;
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UnitName", DbType="NVarChar(200)")]
+ public string UnitName
+ {
+ get
+ {
+ return this._UnitName;
+ }
+ set
+ {
+ if ((this._UnitName != value))
+ {
+ this._UnitName = value;
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SpecialEquipmentId", DbType="NVarChar(50) NOT NULL", CanBeNull=false)]
+ public string SpecialEquipmentId
+ {
+ get
+ {
+ return this._SpecialEquipmentId;
+ }
+ set
+ {
+ if ((this._SpecialEquipmentId != value))
+ {
+ this._SpecialEquipmentId = value;
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SpecialEquipmentName", DbType="NVarChar(50)")]
+ public string SpecialEquipmentName
+ {
+ get
+ {
+ return this._SpecialEquipmentName;
+ }
+ set
+ {
+ if ((this._SpecialEquipmentName != value))
+ {
+ this._SpecialEquipmentName = value;
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IsQualified", DbType="Bit")]
+ public System.Nullable IsQualified
+ {
+ get
+ {
+ return this._IsQualified;
+ }
+ set
+ {
+ if ((this._IsQualified != value))
+ {
+ this._IsQualified = value;
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_EquipmentCount", DbType="Int")]
+ public System.Nullable EquipmentCount
+ {
+ get
+ {
+ return this._EquipmentCount;
+ }
+ set
+ {
+ if ((this._EquipmentCount != value))
+ {
+ this._EquipmentCount = value;
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_InDate", DbType="DateTime")]
+ public System.Nullable InDate
+ {
+ get
+ {
+ return this._InDate;
+ }
+ set
+ {
+ if ((this._InDate != value))
+ {
+ this._InDate = value;
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Remark", DbType="NVarChar(500)")]
+ public string Remark
+ {
+ get
+ {
+ return this._Remark;
+ }
+ set
+ {
+ if ((this._Remark != value))
+ {
+ this._Remark = value;
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CompileMan", DbType="NVarChar(50)")]
+ public string CompileMan
+ {
+ get
+ {
+ return this._CompileMan;
+ }
+ set
+ {
+ if ((this._CompileMan != value))
+ {
+ this._CompileMan = value;
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CompileManName", DbType="NVarChar(50)")]
+ public string CompileManName
+ {
+ get
+ {
+ return this._CompileManName;
+ }
+ set
+ {
+ if ((this._CompileManName != value))
+ {
+ this._CompileManName = value;
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CompileDate", DbType="DateTime")]
+ public System.Nullable CompileDate
+ {
+ get
+ {
+ return this._CompileDate;
+ }
+ set
+ {
+ if ((this._CompileDate != value))
+ {
+ this._CompileDate = value;
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_QRCodeAttachUrl", DbType="NVarChar(200)")]
+ public string QRCodeAttachUrl
+ {
+ get
+ {
+ return this._QRCodeAttachUrl;
+ }
+ set
+ {
+ if ((this._QRCodeAttachUrl != value))
+ {
+ this._QRCodeAttachUrl = value;
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_AttachUrl", DbType="NVarChar(MAX)", UpdateCheck=UpdateCheck.Never)]
+ public string AttachUrl
+ {
+ get
+ {
+ return this._AttachUrl;
+ }
+ set
+ {
+ if ((this._AttachUrl != value))
+ {
+ this._AttachUrl = value;
+ }
+ }
+ }
+ }
+
[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.View_QualityAudit_PersonQuality")]
public partial class View_QualityAudit_PersonQuality
{
diff --git a/SGGL/WebAPI/Controllers/HSSE/CheckSpecialController.cs b/SGGL/WebAPI/Controllers/HSSE/CheckSpecialController.cs
index 98d016f0..66405e52 100644
--- a/SGGL/WebAPI/Controllers/HSSE/CheckSpecialController.cs
+++ b/SGGL/WebAPI/Controllers/HSSE/CheckSpecialController.cs
@@ -16,12 +16,12 @@ namespace WebAPI.Controllers
///
///
///
- public Model.ResponeData getCheckSpecialById(string CheckSpecialId)
+ public Model.ResponeData getCheckSpecialById(string CheckSpecialId,string state="0")
{
var responeData = new Model.ResponeData();
try
{
- responeData.data = APICheckSpecialService.getCheckSpecialById(CheckSpecialId);
+ responeData.data = APICheckSpecialService.getCheckSpecialById(CheckSpecialId, state);
}
catch (Exception ex)
{
@@ -41,12 +41,12 @@ namespace WebAPI.Controllers
///
///
///
- public Model.ResponeData getCheckSpecialList(string projectId, string states, int pageIndex)
+ public Model.ResponeData getCheckSpecialList(string projectId, string states, int pageIndex,string userid)
{
var responeData = new Model.ResponeData();
try
{
- var getDataList = APICheckSpecialService.getCheckSpecialList(projectId, states);
+ var getDataList = APICheckSpecialService.getCheckSpecialList(projectId, states, userid);
int pageCount = getDataList.Count();
if (pageCount > 0 && pageIndex > 0)
{
@@ -133,5 +133,24 @@ namespace WebAPI.Controllers
return responeData;
}
#endregion
+
+ ///
+ /// 加载措施
+ ///
+ ///
+ public Model.ResponeData getGroup_HandleStep()
+ {
+ var responeData = new Model.ResponeData();
+ try
+ {
+ responeData.data = ConstValue.drpConstItemList(BLL.ConstValue.Group_HandleStep);
+ }
+ catch (Exception ex)
+ {
+ responeData.code = 0;
+ responeData.message = ex.Message;
+ }
+ return responeData;
+ }
}
}
diff --git a/SGGL/WebAPI/Controllers/HSSE/GeneralEquipmentQualityController.cs b/SGGL/WebAPI/Controllers/HSSE/GeneralEquipmentQualityController.cs
new file mode 100644
index 00000000..30335139
--- /dev/null
+++ b/SGGL/WebAPI/Controllers/HSSE/GeneralEquipmentQualityController.cs
@@ -0,0 +1,160 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Net;
+using System.Net.Http;
+using System.Web.Http;
+using BLL;
+
+namespace WebAPI.Controllers
+{
+ ///
+ /// 一般机具设备资质
+ ///
+ public class GeneralEquipmentQualityController : ApiController
+ {
+ #region 根据equipmentQualityId获取机具设备资质信息
+ ///
+ /// 根据equipmentQualityId获取机具设备资质信息
+ ///
+ ///
+ ///
+ public Model.ResponeData getEquipmentQualityByEquipmentQualityId(string equipmentQualityId)
+ {
+ var responeData = new Model.ResponeData();
+ try
+ {
+ responeData.data = APIGeneralEquipmentQualityService.getEquipmentQualityByEquipmentQualityIdFactoryCode(equipmentQualityId);
+ }
+ catch (Exception ex)
+ {
+ responeData.code = 0;
+ responeData.message = ex.Message;
+ }
+
+ return responeData;
+ }
+ #endregion
+
+
+
+ #region 根据projectId、unitid获取机具设备资质信息
+ ///
+ /// 根据projectId、unitid获取机具设备资质信息
+ ///
+ ///
+ ///
+ ///
+ ///
+ public Model.ResponeData getEquipmentQualityByProjectIdUnitId(string projectId, string unitId, int pageIndex)
+ {
+ var responeData = new Model.ResponeData();
+ try
+ {
+ var getDataList = APIGeneralEquipmentQualityService.getEquipmentQualityList(projectId, unitId, null);
+ int pageCount = getDataList.Count();
+ if (pageCount > 0 && pageIndex > 0)
+ {
+ getDataList = getDataList.Skip(Funs.PageSize * (pageIndex - 1)).Take(Funs.PageSize).ToList();
+ }
+ responeData.data = new { pageCount, getDataList };
+ }
+ catch (Exception ex)
+ {
+ responeData.code = 0;
+ responeData.message = ex.Message;
+ }
+ return responeData;
+ }
+ #endregion
+
+ #region 根据projectId、unitid获取机具设备资质信息-查询
+ ///
+ /// 根据projectId、unitid获取机具设备资质信息
+ ///
+ ///
+ ///
+ ///
+ /// 查询条件
+ ///
+ public Model.ResponeData getEquipmentQualityByProjectIdUnitIdQuery(string projectId, string unitId, string strParam, int pageIndex)
+ {
+ var responeData = new Model.ResponeData();
+ try
+ {
+ var getDataList = APIGeneralEquipmentQualityService.getEquipmentQualityList(projectId, unitId, strParam);
+ int pageCount = getDataList.Count();
+ if (pageCount > 0 && pageIndex > 0)
+ {
+ getDataList = getDataList.Skip(Funs.PageSize * (pageIndex - 1)).Take(Funs.PageSize).ToList();
+ }
+ responeData.data = new { pageCount, getDataList };
+ }
+ catch (Exception ex)
+ {
+ responeData.code = 0;
+ responeData.message = ex.Message;
+ }
+ return responeData;
+ }
+ #endregion
+
+ #region 根据projectId、unitid获取特岗机具设备资质资质各状态数
+ ///
+ /// 根据projectId、unitid获取特岗机具设备资质资质各状态数
+ ///
+ ///
+ ///
+ ///
+ public Model.ResponeData getEquipmentQualityCount(string projectId, string unitId)
+ {
+ var responeData = new Model.ResponeData();
+ try
+ {
+ var getDataList = new Model.SGGLDB(Funs.ConnString).QualityAudit_GeneralEquipmentQuality.Where(x => x.ProjectId == projectId);
+ if (ProjectUnitService.GetProjectUnitTypeByProjectIdUnitId(projectId, unitId))
+ {
+ getDataList = getDataList.Where(x => x.UnitId == unitId);
+ }
+ ////总数
+ int tatalCount = getDataList.Count();
+
+ responeData.data = new { tatalCount };
+ }
+ catch (Exception ex)
+ {
+ responeData.code = 0;
+ responeData.message = ex.Message;
+ }
+
+ return responeData;
+ }
+ #endregion
+
+
+
+ #region 保存QualityAudit_EquipmentQuality
+ ///
+ /// 保存QualityAudit_EquipmentQuality
+ ///
+ /// 机具设备资质
+ ///
+ [HttpPost]
+ public Model.ResponeData SaveEquipmentQuality([FromBody] Model.EquipmentQualityItem newitem)
+ {
+ var responeData = new Model.ResponeData();
+ try
+ {
+ APIGeneralEquipmentQualityService.SaveEquipmentQuality(newitem);
+ }
+ catch (Exception ex)
+ {
+ responeData.code = 0;
+ responeData.message = ex.Message;
+ }
+
+ return responeData;
+ }
+ #endregion
+ }
+}
diff --git a/SGGL/WebAPI/Controllers/PersonController.cs b/SGGL/WebAPI/Controllers/PersonController.cs
index 71118084..a146cd00 100644
--- a/SGGL/WebAPI/Controllers/PersonController.cs
+++ b/SGGL/WebAPI/Controllers/PersonController.cs
@@ -1083,5 +1083,28 @@ namespace WebAPI.Controllers
return responeData;
}
#endregion
+
+ #region 二维码扫码获取人员
+ ///
+ /// 二维码扫码获取人员
+ ///
+ ///
+ ///
+ public Model.ResponeData getPersonByPersonIdQrcode(string personId)
+ {
+ var responeData = new Model.ResponeData();
+ try
+ {
+ responeData.data = APIPersonService.getPersonByPersonIdQrcode(personId);
+ }
+ catch (Exception ex)
+ {
+ responeData.code = 0;
+ responeData.message = ex.Message;
+ }
+
+ return responeData;
+ }
+ #endregion
}
}
\ No newline at end of file
diff --git a/SGGL/WebAPI/WebAPI.csproj b/SGGL/WebAPI/WebAPI.csproj
index 43dc784e..47f019c7 100644
--- a/SGGL/WebAPI/WebAPI.csproj
+++ b/SGGL/WebAPI/WebAPI.csproj
@@ -153,6 +153,7 @@
+