提交定制会内容

This commit is contained in:
2025-06-19 18:59:39 +08:00
parent 6be8d160e0
commit e1eb091f3b
150 changed files with 24036 additions and 582 deletions
+179
View File
@@ -0,0 +1,179 @@
using Model;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace BLL
{
public static class BaseDataService
{
public static List<string> BeUnderConstructionList = GetBeUnderConstruction().Select(p => p.ProjectId).ToList();
/// <summary>
/// 获取在建项目数
/// </summary>
/// <returns></returns>
public static List<Model.ProjectOutput> GetBeUnderConstruction()
{
var projectInfos = from project in Funs.DB.Base_Project
join unit in Funs.DB.Base_Unit on project.UnitId equals unit.UnitId into unitJoin
from unit in unitJoin.DefaultIfEmpty()
join projectType in Funs.DB.Base_ProjectType on project.ProjectType equals projectType.ProjectTypeId into projectTypeJoin
from projectType in projectTypeJoin.DefaultIfEmpty()
join sysConst in Funs.DB.Sys_Const on new { ProjectState2 = project.ProjectState, GroupId = BLL.ConstValue.GroupId_ProjectState } equals new { ProjectState2 = sysConst.ConstValue, GroupId = sysConst.GroupId } into sysConstJoin
from sysConst in sysConstJoin.DefaultIfEmpty()
where project.ProjectState == "1"
select new ProjectOutput
{
ProjectId = project.ProjectId,
ProjectCode = project.ProjectCode,
ProjectName = project.ProjectName,
UnitId = project.UnitId,
UnitName = unit.UnitName,
StartDate = project.StartDate,
EndDate = project.EndDate,
ProjectAddress = project.ProjectAddress,
ShortName = project.ShortName,
ConstructionMoney = project.ConstructionMoney,
ProjectStateName = project.ProjectState == BLL.Const.ProjectState_2 ? "暂停中" : (project.ProjectState == BLL.Const.ProjectState_3 ? "已完工" : "施工中"),
ProjectState = project.ProjectState,
ProjectAttributeName = "工程",
ProjectMoney = project.ProjectMoney,
DayCount = DateTime.Now.Subtract(project.StartDate.Value).Days,
ProjectTypeName = projectType.ProjectTypeName,
ProjectStateName2 = sysConst.ConstText
};
var result = projectInfos.ToList();
return result;
}
/// <summary>
/// 获取在建项目数(异步)
/// </summary>
/// <returns></returns>
public static async Task<List<Model.ProjectOutput>> GetBeUnderConstructionAsync()
{
return await Task.Run(GetBeUnderConstruction);
}
/// <summary>
/// 获取停工项目数
/// </summary>
/// <returns></returns>
public static List<Model.ProjectOutput> GetShutdown()
{
var projectInfos = from project in Funs.DB.Base_Project
join unit in Funs.DB.Base_Unit on project.UnitId equals unit.UnitId into unitJoin
from unit in unitJoin.DefaultIfEmpty()
join projectType in Funs.DB.Base_ProjectType on project.ProjectType equals projectType.ProjectTypeId into projectTypeJoin
from projectType in projectTypeJoin.DefaultIfEmpty()
join sysConst in Funs.DB.Sys_Const on new { ProjectState2 = project.ProjectState, GroupId = BLL.ConstValue.GroupId_ProjectState } equals new { ProjectState2 = sysConst.ConstValue, GroupId = sysConst.GroupId } into sysConstJoin
from sysConst in sysConstJoin.DefaultIfEmpty()
where project.ProjectState == "2"
select new ProjectOutput
{
ProjectId = project.ProjectId,
ProjectCode = project.ProjectCode,
ProjectName = project.ProjectName,
UnitId = project.UnitId,
UnitName = unit.UnitName,
StartDate = project.StartDate,
EndDate = project.EndDate,
ProjectAddress = project.ProjectAddress,
ShortName = project.ShortName,
ConstructionMoney = project.ConstructionMoney,
ProjectStateName = project.ProjectState == BLL.Const.ProjectState_2 ? "暂停中" : (project.ProjectState == BLL.Const.ProjectState_3 ? "已完工" : "施工中"),
ProjectState = project.ProjectState,
ProjectAttributeName = "工程",
ProjectMoney = project.ProjectMoney,
DayCount = DateTime.Now.Subtract(project.StartDate.Value).Days,
ProjectTypeName = projectType.ProjectTypeName,
ProjectStateName2 = sysConst.ConstText
};
var result = projectInfos.ToList();
return result;
}
/// <summary>
/// 获取停工项目数(异步)
/// </summary>
/// <returns></returns>
public static async Task<List<Model.ProjectOutput>> GetShutdownAsync()
{
return await Task.Run(GetShutdown);
}
/// <summary>
/// 获取完工项目数
/// </summary>
/// <returns></returns>
public static List<Model.ProjectOutput> GetCompletedProject()
{
var projectInfos = from project in Funs.DB.Base_Project
join unit in Funs.DB.Base_Unit on project.UnitId equals unit.UnitId into unitJoin
from unit in unitJoin.DefaultIfEmpty()
join projectType in Funs.DB.Base_ProjectType on project.ProjectType equals projectType.ProjectTypeId into projectTypeJoin
from projectType in projectTypeJoin.DefaultIfEmpty()
join sysConst in Funs.DB.Sys_Const on new { ProjectState2 = project.ProjectState, GroupId = BLL.ConstValue.GroupId_ProjectState } equals new { ProjectState2 = sysConst.ConstValue, GroupId = sysConst.GroupId } into sysConstJoin
from sysConst in sysConstJoin.DefaultIfEmpty()
where project.ProjectState == "3"
select new ProjectOutput
{
ProjectId = project.ProjectId,
ProjectCode = project.ProjectCode,
ProjectName = project.ProjectName,
UnitId = project.UnitId,
UnitName = unit.UnitName,
StartDate = project.StartDate,
EndDate = project.EndDate,
ProjectAddress = project.ProjectAddress,
ShortName = project.ShortName,
ConstructionMoney = project.ConstructionMoney,
ProjectStateName = project.ProjectState == BLL.Const.ProjectState_2 ? "暂停中" : (project.ProjectState == BLL.Const.ProjectState_3 ? "已完工" : "施工中"),
ProjectState = project.ProjectState,
ProjectAttributeName = "工程",
ProjectMoney = project.ProjectMoney,
DayCount = DateTime.Now.Subtract(project.StartDate.Value).Days,
ProjectTypeName = projectType.ProjectTypeName,
ProjectStateName2 = sysConst.ConstText
};
var result = projectInfos.ToList();
return result;
}
/// <summary>
/// 获取所有项目数
/// </summary>
/// <returns></returns>
public static List<Model.ProjectOutput> GetALLProject()
{
var projectInfos = from project in Funs.DB.Base_Project
join unit in Funs.DB.Base_Unit on project.UnitId equals unit.UnitId into unitJoin
from unit in unitJoin.DefaultIfEmpty()
join projectType in Funs.DB.Base_ProjectType on project.ProjectType equals projectType.ProjectTypeId into projectTypeJoin
from projectType in projectTypeJoin.DefaultIfEmpty()
join sysConst in Funs.DB.Sys_Const on new { ProjectState2 = project.ProjectState, GroupId = BLL.ConstValue.GroupId_ProjectState } equals new { ProjectState2 = sysConst.ConstValue, GroupId = sysConst.GroupId } into sysConstJoin
from sysConst in sysConstJoin.DefaultIfEmpty()
select new ProjectOutput
{
ProjectId = project.ProjectId,
ProjectCode = project.ProjectCode,
ProjectName = project.ProjectName,
UnitId = project.UnitId,
UnitName = unit.UnitName,
StartDate = project.StartDate,
EndDate = project.EndDate,
ProjectAddress = project.ProjectAddress,
ShortName = project.ShortName,
ConstructionMoney = project.ConstructionMoney,
ProjectStateName = project.ProjectState == BLL.Const.ProjectState_2 ? "暂停中" : (project.ProjectState == BLL.Const.ProjectState_3 ? "已完工" : "施工中"),
ProjectState = project.ProjectState,
ProjectAttributeName = "工程",
ProjectMoney = project.ProjectMoney,
DayCount = DateTime.Now.Subtract(project.StartDate.Value).Days,
ProjectTypeName = projectType.ProjectTypeName,
ProjectStateName2 = sysConst.ConstText
};
var result = projectInfos.ToList();
return result;
}
}
}
+280 -13
View File
@@ -113,11 +113,15 @@ namespace BLL
ReportDate = newtable.ReportDate,
TrainPersonNum = newtable.TrainPersonNum,
TechnicalDisclosePersonNum = newtable.TechnicalDisclosePersonNum,
ComprehensiveConTechnologyDisclosureNum = newtable.ComprehensiveConTechnologyDisclosureNum,
ComprehensiveConTechnologyDisclosurePersonNum = newtable.ComprehensiveConTechnologyDisclosurePersonNum,
ComprehensiveReviewDrawingsNum = newtable.ComprehensiveReviewDrawingsNum,
UseNum = newtable.UseNum,
OKNum = newtable.OKNum,
CompanyPersonNum = newtable.CompanyPersonNum,
BranchPersonNum = newtable.BranchPersonNum,
ProjectPersonNum = newtable.ProjectPersonNum,
ProjectSubPersonNum = newtable.ProjectSubPersonNum,
ProblemNum = newtable.ProblemNum,
ProblemCompletedNum = newtable.ProblemCompletedNum,
ProblemNotCompletedNum = newtable.ProblemNotCompletedNum,
@@ -159,12 +163,15 @@ namespace BLL
SubProjectAcceptOKNum = newtable.SubProjectAcceptOKNum,
SubdivisionalWorksAcceptNum = newtable.SubdivisionalWorksAcceptNum,
SubdivisionalWorksAcceptOKNum = newtable.SubdivisionalWorksAcceptOKNum,
InspectionMachineNum = newtable.InspectionMachineNum,
InspectionMachineQualifiedNum = newtable.InspectionMachineQualifiedNum,
State = newtable.State,
CreateDate = newtable.CreateDate,
CreateMan = newtable.CreateMan
};
db.CQMSData_CQMS.InsertOnSubmit(table);
db.SubmitChanges();
}
}
@@ -182,14 +189,24 @@ namespace BLL
table.ReportDate = newtable.ReportDate;
table.TrainPersonNum = newtable.TrainPersonNum;
table.TechnicalDisclosePersonNum = newtable.TechnicalDisclosePersonNum;
table.ComprehensiveConTechnologyDisclosureNum = newtable.ComprehensiveConTechnologyDisclosureNum;
table.ComprehensiveConTechnologyDisclosurePersonNum = newtable.ComprehensiveConTechnologyDisclosurePersonNum;
table.ComprehensiveReviewDrawingsNum = newtable.ComprehensiveReviewDrawingsNum;
table.UseNum = newtable.UseNum;
table.OKNum = newtable.OKNum;
table.CompanyPersonNum = newtable.CompanyPersonNum;
table.BranchPersonNum = newtable.BranchPersonNum;
table.ProjectPersonNum = newtable.ProjectPersonNum;
table.ProjectSubPersonNum = newtable.ProjectSubPersonNum;
table.ProblemNum = newtable.ProblemNum;
table.ProblemCompletedNum = newtable.ProblemCompletedNum;
table.ProblemNotCompletedNum = newtable.ProblemNotCompletedNum;
table.UnitCheckNum = newtable.UnitCheckNum;
table.UnitCheckClosedNum = newtable.UnitCheckClosedNum;
table.UnitCheckNotClosedNum = newtable.UnitCheckNotClosedNum;
table.BranchCheckNum = newtable.BranchCheckNum;
table.BranchCheckClosedNum = newtable.BranchCheckClosedNum;
table.BranchCheckNotClosedNum = newtable.BranchCheckNotClosedNum;
table.SNum = newtable.SNum;
table.ANum = newtable.ANum;
table.BNum = newtable.BNum;
@@ -228,11 +245,14 @@ namespace BLL
table.SubProjectAcceptOKNum = newtable.SubProjectAcceptOKNum;
table.SubdivisionalWorksAcceptNum = newtable.SubdivisionalWorksAcceptNum;
table.SubdivisionalWorksAcceptOKNum = newtable.SubdivisionalWorksAcceptOKNum;
table.InspectionMachineNum = newtable.InspectionMachineNum;
table.InspectionMachineQualifiedNum = newtable.InspectionMachineQualifiedNum;
table.State = newtable.State;
table.CreateMan = newtable.CreateMan;
table.CreateDate = newtable.CreateDate;
db.SubmitChanges();
}
}
}
@@ -371,6 +391,9 @@ namespace BLL
ReportDate = DateTime.Now.Date,
TrainPersonNum = ProjectData.Sum(x => x.TrainPersonNum),
TechnicalDisclosePersonNum = ProjectData.Sum(x => x.TechnicalDisclosePersonNum),
ComprehensiveConTechnologyDisclosureNum = ProjectData.Sum(x => x.ComprehensiveConTechnologyDisclosureNum),
ComprehensiveConTechnologyDisclosurePersonNum = ProjectData.Sum(x => x.ComprehensiveConTechnologyDisclosurePersonNum),
ComprehensiveReviewDrawingsNum = ProjectData.Sum(x => x.ComprehensiveReviewDrawingsNum),
UseNum = ProjectData.Sum(x => x.UseNum),
OKNum = ProjectData.Sum(x => x.OKNum),
CompanyPersonNum = GetCompanyPersonNum(),
@@ -398,10 +421,14 @@ namespace BLL
SubProjectNum = ProjectData.Sum(x => x.SubProjectNum),
SubdivisionalWorksNum = ProjectData.Sum(x => x.SubdivisionalWorksNum),
InspectionLotNum = ProjectData.Sum(x => x.InspectionLotNum),
InspectionMachineNum = ProjectData.Sum(x => x.InspectionMachineNum),
InspectionMachineQualifiedNum = ProjectData.Sum(x => x.InspectionMachineQualifiedNum),
SpecialEquipmentQualityAssuranceSystemNum = ProjectData.Sum(x => x.SpecialEquipmentQualityAssuranceSystemNum),
CreateMan = Const.sysglyId,
CreateDate = DateTime.Now
};
return result;
}
public static void UpdateTodyData_State()
{
@@ -547,11 +574,15 @@ namespace BLL
var branchPersonNumTask = CQMSDataService.GetBranchPersonNumAsync(); //获取分支机构人数
var projectPersonNumTask = CQMSDataService.GetProjectPersonNumAsync(); //获取项目专职人数
var trainPersonNumTask = CQMSDataService.GetTrainPersonNumAsync(); //获取质量培训人次数
var technicalDisclosePersonTask = CQMSDataService.GetTechnicalDisclosePersonNumAsync(); //获取技术交底人次数
var technicalDisclosePersonTask = CQMSDataService.GetTechnicalDisclosePersonNumAsync(); //获取设计交底人次数
var qualityAssuranceNumTask = CQMSDataService.GetQualityAssuranceNumAsync(); //获取特设质保体系数量
var comprehensiveConTechnologyDisclosureTask = CQMSDataService.GetComprehensiveConTechnologyDisclosureAsync(); //获取施工技术交底
var comprehensiveReviewDrawingsTask = CQMSDataService.GetComprehensiveReviewDrawingsAsync(); //获取图纸会审
var inspectionEquipmentTask = CQMSDataService.GetComprehensive_InspectionEquipmentAsync(); //获取设备报验
var inspectionPersonTask = CQMSDataService.GetComprehensive_InspectionPersonAsync(); //获取人员报验
var inspectionMachineTask = CQMSDataService.GetComprehensive_InspectionMachineAsync(); //获取机具报验
var inspectionMachineEquipmentTask = CQMSDataService.GetComprehensive_InspectionMachineEquipmentAsync(); //获取设备报验报检
var useNumTask = CQMSDataService.GetUseNumAsync(); //获取在用计量器具数
var okNumTask = CQMSDataService.GetOkNumAsync(); //获取校准合格数
@@ -562,6 +593,8 @@ namespace BLL
var inspectionLotNumTask = CQMSDataService.GetInspectionLotNumAsync(); //获取检验批个数
var constructSolutionTask = CQMSDataService.GetConstructSolutionAsync(); //施工方案数量
var cqmsProblemTask = CQMSDataService.GetCQMSProblemAsync(); //获取企业级、项目级质量问题
var cqmsBranchMajorCheckTask = CQMSDataService.GetBranchMajorCheckAsync(); //获取分支机构质量大检查次数
var cqmsCompanyMajorCheckTask = CQMSDataService.GetCompanyMajorCheckAsync(); //获取企业质量大检查次数
//质量验收数据
var keyProcessNumTask = CQMSDataService.GetKeyProcessNumAsync(); //获取关键工序验收数
@@ -584,14 +617,16 @@ namespace BLL
await Task.WhenAll(
companyPersonNumTask, branchPersonNumTask, projectPersonNumTask,
trainPersonNumTask, technicalDisclosePersonTask,
comprehensiveConTechnologyDisclosureTask, comprehensiveReviewDrawingsTask,
inspectionEquipmentTask, inspectionPersonTask, inspectionMachineTask,
useNumTask, okNumTask,
singleProjectNumTask, unitProjectNumTask, subProjectNuTask, subdivisionalWorksNuTask, inspectionLotNumTask,
constructSolutionTask,
cqmsProblemTask,
cqmsProblemTask, cqmsBranchMajorCheckTask, cqmsCompanyMajorCheckTask,
keyProcessNumTask, keyProcessOKNumTask, specialProcessNumTask, specialProcessOKNumTask, concealedWorksNumTask, concealedWorksOKNumTask,
unitProjectAcceptNumTask, unitProjectAcceptOKNumTask, subProjectAcceptNumTask, subProjectAcceptOKNumTask, subdivisionalWorksAcceptNumTask, subdivisionalWorksAcceptOKNumTask,
materialInRecheckNumTask, materialInRecheckOKNumTask
materialInRecheckNumTask, materialInRecheckOKNumTask, inspectionMachineEquipmentTask,
qualityAssuranceNumTask
);
// 统一获取异步方法的返回值
@@ -600,10 +635,13 @@ namespace BLL
var projectPersonNumList = await projectPersonNumTask;
var trainPersonNumList = await trainPersonNumTask;
var technicalDisclosePersonList = await technicalDisclosePersonTask;
var comprehensiveConTechnologyDisclosureList = await comprehensiveConTechnologyDisclosureTask;
var comprehensiveReviewDrawingsList = await comprehensiveReviewDrawingsTask;
var inspectionEquipmentList = await inspectionEquipmentTask;
var inspectionPersonList = await inspectionPersonTask;
var inspectionMachineList = await inspectionMachineTask;
var inspectionMachineEquipmentList = await inspectionMachineEquipmentTask;
var useNum = await useNumTask;
var okNum = await okNumTask;
var singleProjectNum = await singleProjectNumTask;
@@ -614,6 +652,8 @@ namespace BLL
var constructSolutionList = await constructSolutionTask;
var cqmsProblemList = await cqmsProblemTask;
var cqmsBranchMajorCheckList = await cqmsBranchMajorCheckTask;
var cqmsCompanyMajorCheckList = await cqmsCompanyMajorCheckTask;
var keyProcessNum = await keyProcessNumTask;
var keyProcessOKNum = await keyProcessOKNumTask;
@@ -630,6 +670,7 @@ namespace BLL
var subdivisionalWorksAcceptOKNum = await subdivisionalWorksAcceptOKNumTask;
var materialInRecheckNum = await materialInRecheckNumTask;
var materialInRecheckOKNum = await materialInRecheckOKNumTask;
var qualityAssuranceNum = await qualityAssuranceNumTask;
// 构造结果对象
var table = new CQMSData_CQMS
@@ -640,15 +681,21 @@ namespace BLL
ReportDate = DateTime.Now.Date,
CompanyPersonNum = companyPersonNum,//
BranchPersonNum = branchPersonNum,//
ProjectPersonNum = projectPersonNumList.Count(),
ProjectPersonNum = projectPersonNumList.Count(x => x.IsOffice == true),
ProjectSubPersonNum = projectPersonNumList.Count(x => x.IsOffice == false),
TrainPersonNum = trainPersonNumList.Count(),
TechnicalDisclosePersonNum = technicalDisclosePersonList.Sum(x => x.TrainPersonNum),
ComprehensiveConTechnologyDisclosureNum = comprehensiveConTechnologyDisclosureList.Count(),
ComprehensiveConTechnologyDisclosurePersonNum = comprehensiveConTechnologyDisclosureList.Sum(x => x.TrainPersonNum),
ComprehensiveReviewDrawingsNum = comprehensiveReviewDrawingsList.Count(),
EquipmentInspectionNum = inspectionEquipmentList.Count(),
EquipmentInspectionQualifiedNum = inspectionEquipmentList.Where(x => x.IsCheckCertificate == true).Count(),
EquipmentInspectionQualifiedNum = inspectionEquipmentList.Count(),
PersonInspectionNum = inspectionPersonList.Count(),
PersonInspectionQualifiedNum = inspectionPersonList.Where(x => x.IsOnSite.HasValue && x.IsOnSite == true).Count(),
MachineInspectionNum = inspectionMachineList.Count(),
MachineInspectionQualifiedNum = inspectionMachineList.Where(x => x.IsCheckOK.HasValue && x.IsCheckOK == true).Count(),
MaterialInspectionNum = 0,
MaterialInspectionQualifiedNum = 0,
UseNum = useNum.Count(),
@@ -662,12 +709,18 @@ namespace BLL
ConstructSolutionNum = constructSolutionList.Count(),
ConstructSolutionProjectApproveNum = constructSolutionList.Where(x => x.State == "1").Count(),
ConstructSolutionUnitApproveNum = 0,//
SpecialEquipmentQualityAssuranceSystemNum = 0,//
SpecialEquipmentQualityAssuranceSystemNum = qualityAssuranceNum.Count(),
DesignDetailsNum = technicalDisclosePersonList.Sum(x => x.TrainPersonNum),
ProblemNum = cqmsProblemList.Count(),
ProblemCompletedNum = cqmsProblemList.Where(x => x.State == "7").Count(),
ProblemNotCompletedNum = cqmsProblemList.Where(x => x.State != "7").Count(),
BranchCheckNum = cqmsBranchMajorCheckList.Count(),
BranchCheckClosedNum = cqmsBranchMajorCheckList.Count(),
BranchCheckNotClosedNum = 0,
UnitCheckNum = cqmsCompanyMajorCheckList.Count(),
UnitCheckClosedNum = cqmsCompanyMajorCheckList.Count(),
UnitCheckNotClosedNum = 0,
KeyProcessNum = keyProcessNum.Count(),
KeyProcessOKNum = keyProcessOKNum.Count(),
@@ -682,7 +735,10 @@ namespace BLL
SubdivisionalWorksAcceptNum = subdivisionalWorksAcceptNum.Count(),
SubdivisionalWorksAcceptOKNum = subdivisionalWorksAcceptOKNum.Count(),
MaterialInRecheckNum = materialInRecheckNum.Count(),
MaterialInRecheckOKNum = materialInRecheckOKNum.Count()
MaterialInRecheckOKNum = materialInRecheckOKNum.Count(),
InspectionMachineNum = inspectionMachineEquipmentList.Count(),
InspectionMachineQualifiedNum = inspectionMachineEquipmentList.Where(x => x.IsCheckOK.HasValue && x.IsCheckOK == true).Count(),
};
#region
@@ -699,11 +755,15 @@ namespace BLL
ReportDate = DateTime.Now.Date,
CompanyPersonNum = companyPersonNum,//
BranchPersonNum = branchPersonNum,//
ProjectPersonNum = projectPersonNumList.Count(x => x.ProjectId == projectid),
ProjectPersonNum = projectPersonNumList.Count(x => x.ProjectId == projectid && x.IsOffice == true),
ProjectSubPersonNum = projectPersonNumList.Count(x => x.ProjectId == projectid && x.IsOffice == false),
TrainPersonNum = trainPersonNumList.Count(x => x.ProjectId == projectid),
TechnicalDisclosePersonNum = technicalDisclosePersonList.Where(x => x.ProjectId == projectid).Sum(x => x.TrainPersonNum),
ComprehensiveConTechnologyDisclosureNum = comprehensiveConTechnologyDisclosureList.Count(x => x.ProjectId == projectid),
ComprehensiveConTechnologyDisclosurePersonNum = comprehensiveConTechnologyDisclosureList.Where(x => x.ProjectId == projectid).Sum(x => x.TrainPersonNum),
ComprehensiveReviewDrawingsNum = comprehensiveReviewDrawingsList.Count(x => x.ProjectId == projectid),
EquipmentInspectionNum = inspectionEquipmentList.Count(x => x.ProjectId == projectid),
EquipmentInspectionQualifiedNum = inspectionEquipmentList.Where(x => x.IsCheckCertificate == true && x.ProjectId == projectid).Count(),
EquipmentInspectionQualifiedNum = inspectionEquipmentList.Where(x => x.ProjectId == projectid).Count(),
PersonInspectionNum = inspectionPersonList.Count(x => x.ProjectId == projectid),
PersonInspectionQualifiedNum = inspectionPersonList.Where(x => x.IsOnSite.HasValue && x.IsOnSite == true && x.ProjectId == projectid).Count(),
MachineInspectionNum = inspectionMachineList.Count(x => x.ProjectId == projectid),
@@ -721,7 +781,7 @@ namespace BLL
ConstructSolutionNum = constructSolutionList.Count(x => x.ProjectId == projectid),
ConstructSolutionProjectApproveNum = constructSolutionList.Where(x => x.State == "1" && x.ProjectId == projectid).Count(),
ConstructSolutionUnitApproveNum = 0,//
SpecialEquipmentQualityAssuranceSystemNum = 0,//
SpecialEquipmentQualityAssuranceSystemNum = qualityAssuranceNum.Count(x => x.ProjectId == projectid),
DesignDetailsNum = technicalDisclosePersonList.Where(x => x.ProjectId == projectid).Sum(x => x.TrainPersonNum),
ProblemNum = cqmsProblemList.Count(x => x.ProjectId == projectid),
@@ -741,9 +801,13 @@ namespace BLL
SubdivisionalWorksAcceptNum = subdivisionalWorksAcceptNum.Count(x => x.ProjectId == projectid),
SubdivisionalWorksAcceptOKNum = subdivisionalWorksAcceptOKNum.Count(x => x.ProjectId == projectid),
MaterialInRecheckNum = materialInRecheckNum.Count(x => x.ProjectId == projectid),
MaterialInRecheckOKNum = materialInRecheckOKNum.Count(x => x.ProjectId == projectid)
MaterialInRecheckOKNum = materialInRecheckOKNum.Count(x => x.ProjectId == projectid),
InspectionMachineNum = inspectionMachineEquipmentList.Count(x => x.ProjectId == projectid),
InspectionMachineQualifiedNum = inspectionMachineEquipmentList.Where(x => x.IsCheckOK.HasValue && x.IsCheckOK == true && x.ProjectId == projectid).Count(),
};
Project_CQMSDataService.AddProject_CQMSData_CQMS(projectCqmsData);
}
#endregion
@@ -765,6 +829,7 @@ namespace BLL
data = GetDataByCQMSData_CQMS(table);
return data;
}
public static CQMSData GetDataByCQMSData_CQMS(CQMSData_CQMS table)
@@ -777,15 +842,25 @@ namespace BLL
item.CollCropCode = table.CollCropCode;
item.TrainPersonNum = table.TrainPersonNum;
item.TechnicalDisclosePersonNum = table.TechnicalDisclosePersonNum;
item.ComprehensiveConTechnologyDisclosureNum = table.ComprehensiveConTechnologyDisclosureNum;
item.ComprehensiveConTechnologyDisclosurePersonNum = table.ComprehensiveConTechnologyDisclosurePersonNum;
item.ComprehensiveReviewDrawingsNum = table.ComprehensiveReviewDrawingsNum;
item.UseNum = table.UseNum;
item.OKNum = table.OKNum;
item.CompanyPersonNum = table.CompanyPersonNum;
item.BranchPersonNum = table.BranchPersonNum;
item.ProjectPersonNum = table.ProjectPersonNum;
item.ProjectSubPersonNum = table.ProjectSubPersonNum;
item.ProblemNum = table.ProblemNum;
item.ProblemCompletedNum = table.ProblemCompletedNum;
item.ProblemNotCompletedNum = table.ProblemNotCompletedNum;
item.ProblemRate = "";
item.UnitCheckNum = table.UnitCheckNum;
item.UnitCheckClosedNum = table.UnitCheckClosedNum;
item.UnitCheckNotClosedNum = table.UnitCheckNotClosedNum;
item.BranchCheckNum = table.BranchCheckNum;
item.BranchCheckClosedNum = table.BranchCheckClosedNum;
item.BranchCheckNotClosedNum = table.BranchCheckNotClosedNum;
item.SNum = table.SNum;
item.ANum = table.ANum;
item.BNum = table.BNum;
@@ -829,10 +904,13 @@ namespace BLL
item.SubProjectAcceptOKNum = table.SubProjectAcceptOKNum;
item.SubdivisionalWorksAcceptNum = table.SubdivisionalWorksAcceptNum;
item.SubdivisionalWorksAcceptOKNum = table.SubdivisionalWorksAcceptOKNum;
item.InspectionMachineNum = table.InspectionMachineNum;
item.InspectionMachineQualifiedNum = table.InspectionMachineQualifiedNum;
var cqmsDataItems = new List<CqmsDataItem>();
cqmsDataItems.Add(item);
data.CQMSDataItems = cqmsDataItems;
return data;
}
/// <summary>
@@ -898,18 +976,20 @@ namespace BLL
from p in pGroup.DefaultIfEmpty()
join u in Funs.DB.Base_Unit on x.UnitId equals u.UnitId into uGroup
from u in uGroup.DefaultIfEmpty()
where BeUnderConstructionList.Contains(p.ProjectId) && y.IsCQMS == true
where BeUnderConstructionList.Contains(p.ProjectId) && y.IsCQMS == true
select new Model.OfSafetySupervisorsOutput
{
ProjectId = x.ProjectId,
ProjectName = p.ProjectName,
ProjectFromUnitId = p.UnitId,
UnitId = u.UnitId,
UnitName = u.UnitName,
Name = x.PersonName,
Sex = z.Sex == null ? "" : (z.Sex == "1" ? "男" : "女"),
IdentityCard = x.IdentityCard,
WorkPostName = y.WorkPostName == null ? "" : y.WorkPostName,
Phone = z.Telephone
Phone = z.Telephone,
IsOffice = (u.UnitId == BLL.Const.UnitId_SEDIN ? true : false)
}).ToList();
result = result
.GroupBy(x => x.IdentityCard)
@@ -926,6 +1006,110 @@ namespace BLL
return await Task.Run(GetProjectPersonNum);
}
/// <summary>
/// 特设质保体系数量
/// </summary>
/// <returns></returns>
public static List<Comprehensive_QualityAssurance> GetQualityAssuranceNum()
{
var result = (from x in Funs.DB.Comprehensive_QualityAssurance
where BeUnderConstructionList.Contains(x.ProjectId)
select x).ToList();
return result;
}
/// <summary>
/// 特设质保体系数量(异步)
/// </summary>
/// <returns></returns>
public static async Task<List<Comprehensive_QualityAssurance>> GetQualityAssuranceNumAsync()
{
return await Task.Run(GetQualityAssuranceNum);
}
#region
#region -
/// <summary>
/// 获取企业质量大检查次数
/// </summary>
/// <returns></returns>
public static List<CheckOutput> GetCompanyMajorCheck()
{
var result = (from x in Funs.DB.Supervise_SuperviseCheckReport
join p in Funs.DB.Base_Project on x.ProjectId equals p.ProjectId into pGroup
from p in pGroup.DefaultIfEmpty()
join u in Funs.DB.Base_Unit on x.UnitId equals u.UnitId into uGroup
from u in uGroup.DefaultIfEmpty()
join cu in Funs.DB.Base_Unit on x.CheckUnitId equals cu.UnitId into cuGroup
from cu in cuGroup.DefaultIfEmpty()
where cu.UnitId == BLL.Const.UnitId_SEDIN && x.CheckMainType == "1" && x.CheckDate > Const.DtmarkTime //&& x.CheckType == "1"
select new Model.CheckOutput()
{
ProjectId = x.ProjectId,
ProjectName = p.ProjectName,
UnitId = x.UnitId,
UnitName = u.UnitName,
Id = x.SuperviseCheckReportId,
CheckTeam = x.CheckTeam,
CheckDate = x.CheckDate,
});
return result.ToList();
}
/// <summary>
/// 获取企业质量大检查次数(异步)
/// </summary>
/// <returns></returns>
public static async Task<List<CheckOutput>> GetCompanyMajorCheckAsync()
{
return await Task.Run(GetCompanyMajorCheck);
}
#endregion
#region
/// <summary>
/// 获取分支机构质量大检查次数
/// </summary>
/// <returns></returns>
public static List<CheckOutput> GetBranchMajorCheck()
{
var result = (from x in Funs.DB.Supervise_SuperviseCheckReport
join p in Funs.DB.Base_Project on x.ProjectId equals p.ProjectId into pGroup
from p in pGroup.DefaultIfEmpty()
join u in Funs.DB.Base_Unit on x.UnitId equals u.UnitId into uGroup
from u in uGroup.DefaultIfEmpty()
join cu in Funs.DB.Base_Unit on x.CheckUnitId equals cu.UnitId into cuGroup
from cu in cuGroup.DefaultIfEmpty()
where cu.IsBranch == true && x.CheckMainType == "1" && x.CheckDate > Const.DtmarkTime//&& x.CheckType == "1"
select new Model.CheckOutput()
{
ProjectId = x.ProjectId,
ProjectName = p.ProjectName,
UnitId = x.UnitId,
UnitName = u.UnitName,
Id = x.SuperviseCheckReportId,
CheckTeam = x.CheckTeam,
CheckDate = x.CheckDate,
});
return result.ToList();
}
/// <summary>
/// 获取分支机构质量大检查次数(异步)
/// </summary>
/// <returns></returns>
public static async Task<List<CheckOutput>> GetBranchMajorCheckAsync()
{
return await Task.Run(GetBranchMajorCheck);
}
#endregion
#endregion
/// <summary>
/// 获取质量培训人次数
/// </summary>
@@ -1248,6 +1432,89 @@ namespace BLL
return await Task.Run(GetConstructSolution);
}
/// <summary>
/// 获取施工技术交底
/// </summary>
/// <returns></returns>
public static List<Model.EduTrainOutput> GetComprehensiveConTechnologyDisclosure()
{
var result = (from x in Funs.DB.Comprehensive_ConTechnologyDisclosure
join p in Funs.DB.Base_Project on x.ProjectId equals p.ProjectId into pGroup
from p in pGroup.DefaultIfEmpty()
where BeUnderConstructionList.Contains(p.ProjectId) && x.CompileDate > Const.DtmarkTime
select new Model.EduTrainOutput()
{
ProjectId = x.ProjectId,
ProjectName = p.ProjectName,
UnitName = "",
Id = x.ConTechnologyDisclosureId,
TrainTitle = "",
TrainStartDate = null,
TrainEndDate = null,
TrainPersonNum = x.DisclosurePersonNum ?? 0,
}).ToList();
return result;
}
/// <summary>
/// 获取施工技术交底(异步)
/// </summary>
/// <returns></returns>
public static async Task<List<EduTrainOutput>> GetComprehensiveConTechnologyDisclosureAsync()
{
return await Task.Run(GetComprehensiveConTechnologyDisclosure);
}
/// <summary>
/// 获取图纸会审
/// </summary>
/// <returns></returns>
public static List<Model.EduTrainOutput> GetComprehensiveReviewDrawings()
{
var result = (from x in Funs.DB.Comprehensive_ReviewDrawings
join p in Funs.DB.Base_Project on x.ProjectId equals p.ProjectId into pGroup
from p in pGroup.DefaultIfEmpty()
where BeUnderConstructionList.Contains(p.ProjectId) && x.CreateDate > Const.DtmarkTime
select new Model.EduTrainOutput()
{
ProjectId = x.ProjectId,
ProjectName = p.ProjectName,
UnitName = "",
Id = x.Id
}).ToList();
return result;
}
/// <summary>
/// 获取图纸会审(异步)
/// </summary>
/// <returns></returns>
public static async Task<List<EduTrainOutput>> GetComprehensiveReviewDrawingsAsync()
{
return await Task.Run(GetComprehensiveReviewDrawings);
}
/// <summary>
/// 获取设备报验
/// </summary>
/// <returns></returns>
public static List<Model.Comprehensive_InspectionMachine> GetComprehensive_InspectionMachineEquipment()
{
var result = (from x in Funs.DB.Comprehensive_InspectionMachine
where BeUnderConstructionList.Contains(x.ProjectId) && x.SType == "设备" && x.CompileDate > Const.DtmarkTime
select x).ToList();
return result;
}
/// <summary>
/// 获取设备报验(异步)
/// </summary>
/// <returns></returns>
public static async Task<List<Comprehensive_InspectionMachine>> GetComprehensive_InspectionMachineEquipmentAsync()
{
return await Task.Run(GetComprehensive_InspectionMachineEquipment);
}
/// <summary>
/// 获取质量问题
/// </summary>
File diff suppressed because it is too large Load Diff
@@ -58,6 +58,10 @@ namespace BLL
/// </summary>
SpecialEquipmentAndDesignDetails,
/// <summary>
/// 设备报验报检
/// </summary>
InspectionMachineEquipment,
/// <summary>
/// 全部数据
/// </summary>
All
@@ -178,11 +182,15 @@ namespace BLL
ReportDate = newtable.ReportDate,
TrainPersonNum = newtable.TrainPersonNum,
TechnicalDisclosePersonNum = newtable.TechnicalDisclosePersonNum,
ComprehensiveReviewDrawingsNum = newtable.ComprehensiveReviewDrawingsNum,
ComprehensiveConTechnologyDisclosureNum = newtable.ComprehensiveConTechnologyDisclosureNum,
ComprehensiveConTechnologyDisclosurePersonNum = newtable.ComprehensiveConTechnologyDisclosurePersonNum,
UseNum = newtable.UseNum,
OKNum = newtable.OKNum,
CompanyPersonNum = newtable.CompanyPersonNum,
BranchPersonNum = newtable.BranchPersonNum,
ProjectPersonNum = newtable.ProjectPersonNum,
ProjectSubPersonNum = newtable.ProjectSubPersonNum,
ProblemNum = newtable.ProblemNum,
ProblemCompletedNum = newtable.ProblemCompletedNum,
ProblemNotCompletedNum = newtable.ProblemNotCompletedNum,
@@ -223,7 +231,9 @@ namespace BLL
SubProjectAcceptNum = newtable.SubProjectAcceptNum,
SubProjectAcceptOKNum = newtable.SubProjectAcceptOKNum,
SubdivisionalWorksAcceptNum = newtable.SubdivisionalWorksAcceptNum,
SubdivisionalWorksAcceptOKNum = newtable.SubdivisionalWorksAcceptOKNum
SubdivisionalWorksAcceptOKNum = newtable.SubdivisionalWorksAcceptOKNum,
InspectionMachineNum = newtable.InspectionMachineNum,
InspectionMachineQualifiedNum = newtable.InspectionMachineQualifiedNum,
};
db.Project_CQMSData_CQMS.InsertOnSubmit(table);
db.SubmitChanges();
@@ -249,11 +259,15 @@ namespace BLL
table.ReportDate = newtable.ReportDate;
table.TrainPersonNum = newtable.TrainPersonNum;
table.TechnicalDisclosePersonNum = newtable.TechnicalDisclosePersonNum;
table.ComprehensiveConTechnologyDisclosureNum = newtable.ComprehensiveConTechnologyDisclosureNum;
table.ComprehensiveConTechnologyDisclosurePersonNum = newtable.ComprehensiveConTechnologyDisclosurePersonNum;
table.ComprehensiveReviewDrawingsNum = newtable.ComprehensiveReviewDrawingsNum;
table.UseNum = newtable.UseNum;
table.OKNum = newtable.OKNum;
table.CompanyPersonNum = newtable.CompanyPersonNum;
table.BranchPersonNum = newtable.BranchPersonNum;
table.ProjectPersonNum = newtable.ProjectPersonNum;
table.ProjectSubPersonNum = newtable.ProjectSubPersonNum;
table.ProblemNum = newtable.ProblemNum;
table.ProblemCompletedNum = newtable.ProblemCompletedNum;
table.ProblemNotCompletedNum = newtable.ProblemNotCompletedNum;
@@ -295,8 +309,11 @@ namespace BLL
table.SubProjectAcceptOKNum = newtable.SubProjectAcceptOKNum;
table.SubdivisionalWorksAcceptNum = newtable.SubdivisionalWorksAcceptNum;
table.SubdivisionalWorksAcceptOKNum = newtable.SubdivisionalWorksAcceptOKNum;
table.InspectionMachineNum = newtable.InspectionMachineNum;
table.InspectionMachineQualifiedNum = newtable.InspectionMachineQualifiedNum;
db.SubmitChanges();
}
}
}
@@ -492,6 +509,14 @@ namespace BLL
{
table.SpecialEquipmentQualityAssuranceSystemNum = GetSpecialEquipmentQualityAssuranceSystemNum(projectid);
table.DesignDetailsNum = GetTechnicalDisclosePersonNum(projectid);
table.ComprehensiveConTechnologyDisclosureNum = GetComprehensiveConTechnologyDisclosureNum(projectid);
table.ComprehensiveConTechnologyDisclosurePersonNum = GetComprehensiveConTechnologyDisclosurePersonNum(projectid);
table.ComprehensiveReviewDrawingsNum = GetComprehensiveReviewDrawings(projectid);
}
if (cQMSDateType == CQMSDateType.InspectionMachineEquipment || cQMSDateType == CQMSDateType.All)
{
table.InspectionMachineNum = GetInspectionMachineEquipmentNum(projectid);
table.InspectionMachineQualifiedNum = GetInspectionMachineEquipmentQualifiedNum(projectid);
}
if (IsReportByToday(projectid))
@@ -503,6 +528,7 @@ namespace BLL
AddProject_CQMSData_CQMS(table);
}
CQMSDataService.UpdateTodyData_State();
}
/// <summary>
/// 获取质量培训人次数
@@ -516,6 +542,65 @@ namespace BLL
return result;
}
/// <summary>
/// 获取机具设备报验-设备报验数
/// </summary>
/// <param name="projectid"></param>
/// <returns></returns>
public static int GetInspectionMachineEquipmentNum(string projectid)
{
int result = (from x in Funs.DB.Comprehensive_InspectionMachine
where x.ProjectId == projectid && x.CompileDate > Const.DtmarkTime
&& x.SType == "设备"
select x).Count();
return result;
}
/// <summary>
/// 获取机具设备报验-设备报验合格数
/// </summary>
/// <param name="projectid"></param>
/// <returns></returns>
public static int GetInspectionMachineEquipmentQualifiedNum(string projectid)
{
int result = (from x in Funs.DB.Comprehensive_InspectionMachine
where x.ProjectId == projectid && x.SType == "设备" && x.IsCheckOK.HasValue && x.IsCheckOK == true && x.CompileDate > Const.DtmarkTime
select x).Count();
return result;
}
/// <summary>
/// 获取施工技术交底数
/// </summary>
/// <returns></returns>
public static int GetComprehensiveConTechnologyDisclosureNum(string projectid)
{
var result = (from x in Funs.DB.Comprehensive_ConTechnologyDisclosure
where x.ProjectId == projectid && x.CompileDate > Const.DtmarkTime
select x).ToList().Count();
return result;
}
/// <summary>
/// 获取施工技术交底人数
/// </summary>
/// <returns></returns>
public static int GetComprehensiveConTechnologyDisclosurePersonNum(string projectid)
{
var result = (from x in Funs.DB.Comprehensive_ConTechnologyDisclosure
where x.ProjectId == projectid && x.CompileDate > Const.DtmarkTime
select x.DisclosurePersonNum).ToList().Sum(x => x.Value);
var q = Funs.GetNewIntOrZero(result.ToString());
return q;
}
/// <summary>
/// 获取图纸会审
/// </summary>
/// <returns></returns>
public static int GetComprehensiveReviewDrawings(string projectid)
{
var result = (from x in Funs.DB.Comprehensive_ReviewDrawings
where x.ProjectId == projectid && x.CreateDate > Const.DtmarkTime
select x).ToList().Count();
return result;
}
/// <summary>
/// 获取技术交底人次数
/// </summary>
/// <returns></returns>
@@ -1037,5 +1122,347 @@ namespace BLL
}
#endregion
#region
/// <summary>
/// 推送项目质量巡检数据
/// </summary>
/// <returns></returns>
public static ReturnData PushProjectHazardRegisterData()
{
var thisUnit = CommonService.GetIsThisUnit();
Model.SGGLDB db = Funs.DB;
var items = (from x in db.View_Hazard_HazardRegister
where x.IsUpdate == null || x.IsUpdate == false
select new Model.Hazard_HazardRegisterItem
{
HazardRegisterId = x.HazardRegisterId,
SourceUnitId = thisUnit.UnitId,
RegisterDate = x.RegisterDate,
RegisterDef = x.RegisterDef,
Rectification = x.Rectification,
WorkAreaName = x.WorkAreaName,
ResponsibilityUnitName = x.ResponsibilityUnitName,
ResponsibilityUnitCollCropCode = x.ResponsibilityUnitCollCropCode,
Risk_Level = "一般",
ProjectId = x.ProjectId,
ProjectName = x.ProjectName,
States = x.States,
StatesStr = x.StatesStr,
ResponsibilityManName = x.ResponsibilityManName,
CheckManName = x.CheckManName,
CheckTime = x.CheckTime,
RectificationPeriod = x.RectificationPeriod,
ImageUrl = x.ImageUrl,
//ImageUrlFileContext = AttachFileService.GetMoreFileStructByAttachUrl(x.ImageUrl),
RectificationImageUrl = x.RectificationImageUrl,
//RectificationImageUrlFileContext = AttachFileService.GetMoreFileStructByAttachUrl(x.RectificationImageUrl),
RectificationTime = x.RectificationTime,
ConfirmManName = x.ConfirmManName,
ConfirmDate = x.ConfirmDate,
HandleIdea = x.HandleIdea,
CutPayment = x.CutPayment,
CheckCycle = x.CheckCycle,
RegisterTypesName = x.RegisterTypesName,
Requirements = x.Requirements
}).ToList();
Model.ReturnData responeData = new Model.ReturnData();
if (items.Count() > 0)
{
var newItem = new { CollCropCode = thisUnit.CollCropCode, Items = items };
var str = JsonConvert.SerializeObject(newItem);
var baseurl = "/api/HSSEData/SaveProjectHazardRegisterData";
responeData = ServerService.PushCNCEC(str, baseurl);
if (responeData.code == 1)
{
var list = from x in db.HSSE_Hazard_HazardRegister
where x.IsUpdate == null || x.IsUpdate == false
select x;
foreach (var item in list)
{
item.IsUpdate = true;
}
db.SubmitChanges();
}
}
else
{
responeData.code = 0;
responeData.message = "当前没有项目质量巡检数据";
}
return responeData;
}
#endregion
#region
/// <summary>
/// 推送项目质量隐患数据
/// </summary>
/// <returns></returns>
public static ReturnData PushProjectQualityProblemData(int pushNum)
{
var thisUnit = CommonService.GetIsThisUnit();
Model.SGGLDB db = Funs.DB;
var items = (from x in db.Check_CheckControl
join unit in db.Base_Unit on x.UnitId equals unit.UnitId into unitJ
from unit in unitJ.DefaultIfEmpty()
join cNProfessional in db.Base_CNProfessional on x.CNProfessionalCode equals cNProfessional.CNProfessionalId into cNProfessionalJ
from cNProfessional in cNProfessionalJ.DefaultIfEmpty()
join unitWork in db.WBS_UnitWork on x.UnitWorkId equals unitWork.UnitWorkId into unitWorkJ
from unitWork in unitWorkJ.DefaultIfEmpty()
join QualityQuestionType in db.Base_QualityQuestionType on x.QuestionType equals QualityQuestionType.QualityQuestionTypeId
where (x.IsUpdate == null || x.IsUpdate == false) && x.CheckDate > BLL.Const.DtmarkTime
select new Model.QualityProblemItem
{
Id = x.CheckControlCode,
SourceUnitId = thisUnit.UnitId,
ProjectId = x.ProjectId,
CollCropCode = thisUnit.CollCropCode,
DataDate = x.CheckDate,
CheckDate = x.CheckDate,
UnitWorkName = unitWork.UnitWorkName + (unitWork.ProjectType == "1" ? "(建筑)" : "(安装)"),
UnitName = unit.UnitName,
ProfessionalName = cNProfessional.ProfessionalName,
QuestionType = QualityQuestionType.QualityQuestionType,
ImageUrl = AttachFileService.getFileUrl(x.CheckControlCode.ToString()),
RectificationImageUrl = AttachFileService.getFileUrl(x.CheckControlCode.ToString() + "r"),
CheckSite = x.CheckSite,
States = x.State,
StatesStr = x.State == "5" || x.State == "6" ? "未确认" :
x.State == "7" ? "已闭环" :
Convert.ToDateTime(x.LimitDate).AddDays(1) < DateTime.Now ? "超期未整改" : "未整改",
}).Take(pushNum).ToList();
Model.ReturnData responeData = new Model.ReturnData();
if (items.Count() > 0)
{
var newItem = new { CollCropCode = thisUnit.CollCropCode, Items = items };
var str = JsonConvert.SerializeObject(newItem);
var baseurl = "/api/CQMSData/SaveProjectQualityProblemData";
responeData = ServerService.PushCNCEC(str, baseurl);
if (responeData.code == 1)
{
foreach (var item in items)
{
var data = db.Check_CheckControl.FirstOrDefault(x =>
x.CheckControlCode == item.Id && (x.IsUpdate == null || x.IsUpdate == false));
data.IsUpdate = true;
db.SubmitChanges();
}
}
}
else
{
responeData.code = 0;
responeData.message = "当前没有项目质量隐患数据";
}
return responeData;
}
#endregion
#region
/// <summary>
/// 删除项目质量隐患数据
/// </summary>
/// <returns></returns>
public static ReturnData DeleteProjectQualityProblemData(string Id)
{
Model.ReturnData responeData = new Model.ReturnData();
try
{
var thisUnit = CommonService.GetIsThisUnit();
Model.SGGLDB db = Funs.DB;
var items = (from x in db.Check_CheckControl
join unit in db.Base_Unit on x.UnitId equals unit.UnitId into unitJ
from unit in unitJ.DefaultIfEmpty()
join cNProfessional in db.Base_CNProfessional on x.CNProfessionalCode equals cNProfessional.CNProfessionalId into cNProfessionalJ
from cNProfessional in cNProfessionalJ.DefaultIfEmpty()
join unitWork in db.WBS_UnitWork on x.UnitWorkId equals unitWork.UnitWorkId into unitWorkJ
from unitWork in unitWorkJ.DefaultIfEmpty()
join QualityQuestionType in db.Base_QualityQuestionType on x.QuestionType equals QualityQuestionType.QualityQuestionTypeId
where x.CheckControlCode == Id
select new Model.QualityProblemItem
{
Id = x.CheckControlCode,
SourceUnitId = thisUnit.UnitId,
ProjectId = x.ProjectId,
CollCropCode = thisUnit.CollCropCode,
DataDate = x.CheckDate,
CheckDate = x.CheckDate,
UnitWorkName = unitWork.UnitWorkName + (unitWork.ProjectType == "1" ? "(建筑)" : "(安装)"),
UnitName = unit.UnitName,
ProfessionalName = cNProfessional.ProfessionalName,
QuestionType = QualityQuestionType.QualityQuestionType,
ImageUrl = AttachFileService.getFileUrl(x.CheckControlCode.ToString()),
RectificationImageUrl = AttachFileService.getFileUrl(x.CheckControlCode.ToString() + "r"),
CheckSite = x.CheckSite,
States = x.State,
StatesStr = x.State == "5" || x.State == "6" ? "未确认" :
x.State == "7" ? "已闭环" :
Convert.ToDateTime(x.LimitDate).AddDays(1) < DateTime.Now ? "超期未整改" : "未整改",
}).ToList();
if (items.Count() > 0)
{
var newItem = new { CollCropCode = thisUnit.CollCropCode, Items = items };
var str = JsonConvert.SerializeObject(newItem);
var baseurl = "/api/CQMSData/DeleteProjectQualityProblemData";
responeData = ServerService.PushCNCEC(str, baseurl);
}
else
{
responeData.code = 0;
responeData.message = "集团数据删除失败";
}
}
catch (Exception)
{
responeData.code = 0;
responeData.message = "集团数据删除失败";
}
return responeData;
}
#endregion
#region QC活动注册数据
/// <summary>
/// 推送质量QC活动注册数据
/// </summary>
/// <returns></returns>
public static ReturnData PushQCRegistrationData(int pushNum)
{
var thisUnit = CommonService.GetIsThisUnit();
Model.SGGLDB db = Funs.DB;
var items = (from x in db.QCManage_QCGroupRegistration
join unit in db.Base_Unit on x.UnitId equals unit.UnitId into unitJ
from u in unitJ.DefaultIfEmpty()
join s in db.Person_Persons on x.CompileMan equals s.PersonId into userJ
from s in userJ.DefaultIfEmpty()
where (x.IsUpdate == null || x.IsUpdate == false) && x.CompileDate > BLL.Const.DtmarkTime
select new Model.QCRegistrationItem
{
Id = x.QCGroupRegistrationId,
SourceUnitId = thisUnit.UnitId,
ProjectId = x.ProjectId,
CollCropCode = thisUnit.CollCropCode,
DataDate = x.CompileDate,
AttachFile = AttachFileService.getFileUrl(x.QCGroupRegistrationId.ToString()),
Code = x.Code,
Name = x.Name,
CompileManName = s.PersonName,
CompileDate = x.CompileDate,
UnitName = u.UnitName,
UnitCollCropCode = Funs.DB.Base_Unit.FirstOrDefault(e => e.UnitId == x.UnitId).CollCropCode,
Subjects = x.Subjects,
Process = x.Process,
Achievement = x.Achievement,
AwardName = x.AwardName,
AwardType = x.AwardType,
AwardLevel = x.AwardLevel,
AwardingUnit = x.AwardingUnit,
}).Take(pushNum).ToList();
Model.ReturnData responeData = new Model.ReturnData();
if (items.Count() > 0)
{
var newItem = new { CollCropCode = thisUnit.CollCropCode, Items = items };
var str = JsonConvert.SerializeObject(newItem);
var baseurl = "/api/CQMSData/SaveQCRegistrationData";
responeData = ServerService.PushCNCEC(str, baseurl);
if (responeData.code == 1)
{
foreach (var item in items)
{
var data = db.QCManage_QCGroupRegistration.FirstOrDefault(x =>
x.QCGroupRegistrationId == item.Id && (x.IsUpdate == null || x.IsUpdate == false));
data.IsUpdate = true;
db.SubmitChanges();
}
}
}
else
{
responeData.code = 0;
responeData.message = "当前没有质量QC活动注册数据";
}
return responeData;
}
#endregion
#region QC活动注册数据
/// <summary>
/// 删除质量QC活动注册数据
/// </summary>
/// <returns></returns>
public static ReturnData DeleteQCRegistrationData(string Id)
{
Model.ReturnData responeData = new Model.ReturnData();
try
{
var thisUnit = CommonService.GetIsThisUnit();
Model.SGGLDB db = Funs.DB;
var items = (from x in db.QCManage_QCGroupRegistration
join unit in db.Base_Unit on x.UnitId equals unit.UnitId into unitJ
from u in unitJ.DefaultIfEmpty()
join s in db.Person_Persons on x.CompileMan equals s.PersonId into userJ
from s in userJ.DefaultIfEmpty()
where x.QCGroupRegistrationId == Id
select new Model.QCRegistrationItem
{
Id = x.QCGroupRegistrationId,
SourceUnitId = thisUnit.UnitId,
ProjectId = x.ProjectId,
CollCropCode = thisUnit.CollCropCode,
DataDate = x.CompileDate,
AttachFile = AttachFileService.getFileUrl(x.QCGroupRegistrationId.ToString()),
Code = x.Code,
Name = x.Name,
CompileManName = s.PersonName,
CompileDate = x.CompileDate,
UnitName = u.UnitName,
UnitCollCropCode = Funs.DB.Base_Unit.FirstOrDefault(e => e.UnitId == x.UnitId).CollCropCode,
Subjects = x.Subjects,
Process = x.Process,
Achievement = x.Achievement,
AwardName = x.AwardName,
AwardLevel = x.AwardLevel,
AwardingUnit = x.AwardingUnit,
}).ToList();
if (items.Count() > 0)
{
var newItem = new { CollCropCode = thisUnit.CollCropCode, Items = items };
var str = JsonConvert.SerializeObject(newItem);
var baseurl = "/api/CQMSData/DeleteQCRegistrationData";
responeData = ServerService.PushCNCEC(str, baseurl);
}
else
{
responeData.code = 0;
responeData.message = "集团数据删除失败";
}
}
catch (Exception)
{
responeData.code = 0;
responeData.message = "集团数据删除失败";
}
return responeData;
}
#endregion
}
}
@@ -129,6 +129,7 @@ namespace BLL
SafeTrainNum = newtable.SafeTrainNum,
SpecialTrainNum = newtable.SpecialTrainNum,
SpecialOperationTrainNum = newtable.SpecialOperationTrainNum,
HseTechnicalNum = newtable.HseTechnicalNum,
TotalEnergyConsumption = newtable.TotalEnergyConsumption,
IncomeComprehensiveEnergyConsumption = newtable.IncomeComprehensiveEnergyConsumption,
NewWaterConsumption = newtable.NewWaterConsumption,
@@ -143,6 +144,7 @@ namespace BLL
CertificateANum = newtable.CertificateANum,
CertificateBNum = newtable.CertificateBNum,
CertificateCNum = newtable.CertificateCNum,
QualityPersonNum = newtable.QualityPersonNum,
SafetyCommitteeMeetingNum = newtable.SafetyCommitteeMeetingNum,
EnterpriseTopicsMeetingNum = newtable.EnterpriseTopicsMeetingNum,
ProjectSafetyLeadingGroupMeetingNum = newtable.ProjectSafetyLeadingGroupMeetingNum,
@@ -150,6 +152,9 @@ namespace BLL
CompanyLeadShiftCheckNum = newtable.CompanyLeadShiftCheckNum,
CompanyComprehensiveCheckNum = newtable.CompanyComprehensiveCheckNum,
CompanySpecialCheckNum = newtable.CompanySpecialCheckNum,
BranchLeadShiftCheckNum = newtable.BranchLeadShiftCheckNum,
BranchComprehensiveCheckNum = newtable.BranchComprehensiveCheckNum,
BranchSpecialCheckNum = newtable.BranchSpecialCheckNum,
ProjectLeadShiftCheckNum = newtable.ProjectLeadShiftCheckNum,
ProjectSpecialCheckNum = newtable.ProjectSpecialCheckNum,
ProjectMajorCheckNum = newtable.ProjectMajorCheckNum,
@@ -162,11 +167,18 @@ namespace BLL
CompanyComprehensivePlanNum = newtable.CompanyComprehensivePlanNum,
CompanySpecialPlanNum = newtable.CompanySpecialPlanNum,
CompanyOnSiteDisposalPlan = newtable.CompanyOnSiteDisposalPlan,
BranchComprehensivePlanNum = newtable.BranchComprehensivePlanNum,
BranchSpecialPlanNum = newtable.BranchSpecialPlanNum,
BranchOnSiteDisposalPlan = newtable.BranchOnSiteDisposalPlan,
CompanyDrillNum = newtable.CompanyDrillNum,
CompanyDrillPersonNum = newtable.CompanyDrillPersonNum,
BranchDrillNum = newtable.BranchDrillNum,
BranchDrillPersonNum = newtable.BranchDrillPersonNum,
ProjectComprehensivePlanNum = newtable.ProjectComprehensivePlanNum,
ProjectSpecialPlanNum = newtable.ProjectSpecialPlanNum,
ProjectOnSiteDisposalPlan = newtable.ProjectOnSiteDisposalPlan,
ProjectDrillNum = newtable.ProjectDrillNum,
ProjectDrillPersonNum = newtable.ProjectDrillPersonNum,
CostExtract = newtable.CostExtract,
CostUse = newtable.CostUse,
UseEquipmentNum = newtable.UseEquipmentNum,
@@ -183,12 +195,16 @@ namespace BLL
HighRiskNum = newtable.HighRiskNum,
CompletedNum = newtable.CompletedNum,
TrainPersonNum = newtable.TrainPersonNum,
OperativesNum = newtable.OperativesNum,
ConstructionNum = newtable.ConstructionNum,
FinishedNum = newtable.FinishedNum,
ArgumentNum = newtable.ArgumentNum,
SuperCompletedNum = newtable.SuperCompletedNum,
SuperTrainPersonNum = newtable.SuperTrainPersonNum,
SuperOperativesNum = newtable.SuperOperativesNum,
SuperConstructionNum = newtable.SuperConstructionNum,
SuperFinishedNum = newtable.SuperFinishedNum
SuperFinishedNum = newtable.SuperFinishedNum,
SuperArgumentNum = newtable.SuperArgumentNum
};
db.Project_HSSEData_HSSE.InsertOnSubmit(table);
db.SubmitChanges();
@@ -270,6 +286,7 @@ namespace BLL
table.CertificateANum = newtable.CertificateANum;
table.CertificateBNum = newtable.CertificateBNum;
table.CertificateCNum = newtable.CertificateCNum;
table.QualityPersonNum = newtable.QualityPersonNum;
table.SafetyCommitteeMeetingNum = newtable.SafetyCommitteeMeetingNum;
table.EnterpriseTopicsMeetingNum = newtable.EnterpriseTopicsMeetingNum;
table.ProjectSafetyLeadingGroupMeetingNum = newtable.ProjectSafetyLeadingGroupMeetingNum;
@@ -289,7 +306,13 @@ namespace BLL
table.CompanyComprehensivePlanNum = newtable.CompanyComprehensivePlanNum;
table.CompanySpecialPlanNum = newtable.CompanySpecialPlanNum;
table.CompanyOnSiteDisposalPlan = newtable.CompanyOnSiteDisposalPlan;
table.BranchComprehensivePlanNum = newtable.BranchComprehensivePlanNum;
table.BranchSpecialPlanNum = newtable.BranchSpecialPlanNum;
table.BranchOnSiteDisposalPlan = newtable.BranchOnSiteDisposalPlan;
table.CompanyDrillNum = newtable.CompanyDrillNum;
table.CompanyDrillPersonNum = newtable.CompanyDrillPersonNum;
table.BranchDrillNum = newtable.BranchDrillNum;
table.BranchDrillPersonNum = newtable.BranchDrillPersonNum;
table.ProjectComprehensivePlanNum = newtable.ProjectComprehensivePlanNum;
table.ProjectSpecialPlanNum = newtable.ProjectSpecialPlanNum;
table.ProjectOnSiteDisposalPlan = newtable.ProjectOnSiteDisposalPlan;
@@ -310,14 +333,17 @@ namespace BLL
table.HighRiskNum = newtable.HighRiskNum;
table.CompletedNum = newtable.CompletedNum;
table.TrainPersonNum = newtable.TrainPersonNum;
table.OperativesNum = newtable.OperativesNum;
table.ConstructionNum = newtable.ConstructionNum;
table.FinishedNum = newtable.FinishedNum;
table.SuperCompletedNum = newtable.SuperCompletedNum;
table.SuperTrainPersonNum = newtable.SuperTrainPersonNum;
table.SuperOperativesNum = newtable.SuperOperativesNum;
table.SuperConstructionNum = newtable.SuperConstructionNum;
table.SuperFinishedNum = newtable.SuperFinishedNum;
db.SubmitChanges();
}
}
}
@@ -452,6 +478,7 @@ namespace BLL
table.CertificateANum = GetCertificateANum(projectid);
table.CertificateBNum = GetCertificateBNum(projectid);
table.CertificateCNum = GetCertificateCNum(projectid);
table.QualityPersonNum = GetQualityPersonNum(projectid);
}
if (hSseDateType == HSSEDateType.SafetyMeeting || hSseDateType == HSSEDateType.All)
@@ -487,11 +514,18 @@ namespace BLL
table.CompanyComprehensivePlanNum = GetCompanyComprehensivePlanNum(projectid);
table.CompanySpecialPlanNum = GetCompanySpecialPlanNum(projectid);
table.CompanyOnSiteDisposalPlan = GetCompanyOnSiteDisposalPlan(projectid);
table.BranchComprehensivePlanNum = GetBranchComprehensivePlanNum(projectid);
table.BranchSpecialPlanNum = GetBranchSpecialPlanNum(projectid);
table.BranchOnSiteDisposalPlan = GetBranchOnSiteDisposalPlan(projectid);
table.CompanyDrillNum = GetCompanyDrillNum(projectid);
table.CompanyDrillPersonNum = GetCompanyDrillPersonNum(projectid);
table.BranchDrillNum = GetBranchDrillNum(projectid);
table.BranchDrillPersonNum = GetBranchDrillPersonNum(projectid);
table.ProjectComprehensivePlanNum = GetProjectComprehensivePlanNum(projectid);
table.ProjectSpecialPlanNum = GetProjectSpecialPlanNum(projectid);
table.ProjectOnSiteDisposalPlan = GetProjectOnSiteDisposalPlan(projectid);
table.ProjectDrillNum = GetProjectDrillNum(projectid);
table.ProjectDrillNum = GetProjectDrillNum(projectid);
}
if (hSseDateType == HSSEDateType.SecurityCost || hSseDateType == HSSEDateType.All)
@@ -574,10 +608,12 @@ namespace BLL
{
table.CompletedNum = GetCompletedNum(projectid);
table.TrainPersonNum = GetTrainPersonNum(projectid);
table.OperativesNum = GetOperativesNum(projectid);
table.ConstructionNum = GetConstructionNum(projectid);
table.FinishedNum = GetFinishedNum(projectid);
table.SuperCompletedNum = GetSuperCompletedNum(projectid);
table.SuperTrainPersonNum = GetSuperTrainPersonNum(projectid);
table.SuperOperativesNum = GetSuperOperativesNum(projectid);
table.SuperConstructionNum = GetSuperConstructionNum(projectid);
table.SuperFinishedNum = GetSuperFinishedNum(projectid);
}
@@ -587,6 +623,7 @@ namespace BLL
else
AddProject_HSSEData_HSSE(table);
HSSEData_HSSEService.UpdateTodyData_State();
}
/// <summary>
@@ -600,7 +637,42 @@ namespace BLL
select x).Count();
return result;
}
/// <summary>
/// 获取分支机构现场处置预案
/// </summary>
/// <returns></returns>
public static int GetBranchOnSiteDisposalPlan(string projectid)
{
var result = 0;
return result;
}
/// <summary>
/// 获取企业级演练人次数
/// </summary>
/// <returns></returns>
public static int GetCompanyDrillPersonNum(string projectid)
{
var result = 0;
return result;
}
/// <summary>
/// 获取分支机构演练次数
/// </summary>
/// <returns></returns>
public static int GetBranchDrillNum(string projectid)
{
var result = 0;
return result;
}
/// <summary>
/// 获取分支机构演练人次数
/// </summary>
/// <returns></returns>
public static int GetBranchDrillPersonNum(string projectid)
{
var result = 0;
return result;
}
/// <summary>
/// 获取停工项目数
/// </summary>
@@ -624,7 +696,29 @@ namespace BLL
select x).Count();
return result;
}
/// <summary>
/// 获取危大工程作业人次数
/// </summary>
/// <returns></returns>
public static int GetOperativesNum(string projectid)
{
var result = (from x in Funs.DB.Solution_LargerHazard
where x.ProjectId == projectid && x.IsSuperLargerHazard == false && x.RecordTime > Const.DtmarkTime
select x.OperativesNum).ToList().Sum(x => x.Value);
return result;
}
/// <summary>
/// 获取超危大工程作业人员数
/// </summary>
/// <returns></returns>
public static int GetSuperOperativesNum(string projectid)
{
var result =
(from x in Funs.DB.Solution_LargerHazard
where x.ProjectId == projectid && x.IsSuperLargerHazard == true && x.RecordTime > Const.DtmarkTime
select x.OperativesNum).ToList().Sum(x => x.Value);
return result;
}
/// <summary>
/// 获取在施危大工程数
/// </summary>
@@ -709,7 +803,15 @@ namespace BLL
select x.TrainPersonNum ?? 0).ToList().Sum();
return result;
}
/// <summary>
/// 获取分支机构专项预案数
/// </summary>
/// <returns></returns>
public static int GetBranchSpecialPlanNum(string projectid)
{
var result = 0;
return result;
}
/// <summary>
/// 获取专项培训数
/// </summary>
@@ -805,7 +907,19 @@ namespace BLL
var result = 0;
return result;
}
/// <summary>
/// 获取在岗特种作业人员数量
/// </summary>
/// <returns></returns>
public static int GetQualityPersonNum(string projectid)
{
var result = (from x in Funs.DB.SitePerson_Person
join y in Funs.DB.QualityAudit_PersonQuality on x.PersonId equals y.PersonId
join m in Funs.DB.Base_WorkPost on x.WorkPostId equals m.WorkPostId
where x.ProjectId == projectid && m.PostType == Const.PostType_2 && (y.LimitDate == null || y.LimitDate < DateTime.Now)
select x).Count();
return result;
}
/// <summary>
/// 获取项目总监人数
/// </summary>
@@ -955,7 +1069,15 @@ namespace BLL
var result = 0;
return result;
}
/// <summary>
/// 获取分支机构综合预案数
/// </summary>
/// <returns></returns>
public static int GetBranchComprehensivePlanNum(string projectid)
{
var result = 0;
return result;
}
/// <summary>
/// 获取企业综合检查次数
/// </summary>
@@ -1615,5 +1737,648 @@ namespace BLL
}
#endregion
#region
/// <summary>
/// 推送项目安全隐患数据
/// </summary>
/// <returns></returns>
public static ReturnData PushProjectHazardRegisterData(int pushNum)
{
var thisUnit = CommonService.GetIsThisUnit();
Model.SGGLDB db = Funs.DB;
var items = (from x in db.View_Hazard_HazardRegister
where (x.IsUpdate == null || x.IsUpdate == false) && x.CheckTime > BLL.Const.DtmarkTime
&& x.ProblemTypes == "1"
&& x.ProjectState == "1"
// && x.IsBranch.Value == true
select new Model.Hazard_HazardRegisterItem
{
HazardRegisterId = x.HazardRegisterId,
SourceUnitId = thisUnit.UnitId,
RegisterDate = x.RegisterDate,
RegisterDef = x.RegisterDef,
Rectification = x.Rectification,
WorkAreaName = x.WorkAreaName,
ResponsibilityUnitName = x.ResponsibilityUnitName,
ResponsibilityUnitCollCropCode = x.ResponsibilityUnitCollCropCode,
Risk_Level = "一般",
ProjectId = x.ProjectId,
ProjectName = x.ProjectName,
States = x.States,
StatesStr = x.StatesStr,
ResponsibilityManName = x.ResponsibilityManName,
CheckManName = x.CheckManName,
CheckTime = x.CheckTime,
RectificationPeriod = x.RectificationPeriod,
ImageUrl = x.ImageUrl,
// ImageUrlFileContext = AttachFileService.GetMoreFileStructByAttachUrl(x.ImageUrl),
RectificationImageUrl = x.RectificationImageUrl,
// RectificationImageUrlFileContext = AttachFileService.GetMoreFileStructByAttachUrl(x.RectificationImageUrl),
RectificationTime = x.RectificationTime,
ConfirmManName = x.ConfirmManName,
ConfirmDate = x.ConfirmDate,
HandleIdea = x.HandleIdea,
CutPayment = x.CutPayment,
CheckCycle = x.CheckCycle,
RegisterTypesName = x.RegisterTypesName,
Requirements = x.Requirements
}).Take(pushNum).ToList();
Model.ReturnData responeData = new Model.ReturnData();
if (items.Count() > 0)
{
var newItem = new { CollCropCode = thisUnit.CollCropCode, Items = items };
var str = JsonConvert.SerializeObject(newItem);
var baseurl = "/api/HSSEData/SaveProjectHazardRegisterData";
responeData = ServerService.PushCNCEC(str, baseurl);
if (responeData.code == 1)
{
foreach (var item in items)
{
var data = db.HSSE_Hazard_HazardRegister.FirstOrDefault(x =>
x.HazardRegisterId == item.HazardRegisterId && (x.IsUpdate == null || x.IsUpdate == false));
data.IsUpdate = true;
db.SubmitChanges();
}
// var list = from x in db.HSSE_Hazard_HazardRegister
// where x.IsUpdate == null || x.IsUpdate == false
// select x;
// foreach (var item in list)
// {
// item.IsUpdate = true;
// }
// db.SubmitChanges();
}
}
else
{
responeData.code = 0;
responeData.message = "当前没有项目安全隐患数据";
}
return responeData;
}
#endregion
#region
/// <summary>
/// 删除项目安全隐患数据
/// </summary>
/// <returns></returns>
public static ReturnData DeleteProjectHazardRegisterData(string hazardRegisterId)
{
Model.ReturnData responeData = new Model.ReturnData();
try
{
var thisUnit = CommonService.GetIsThisUnit();
Model.SGGLDB db = Funs.DB;
var items = (from x in db.View_Hazard_HazardRegister
where x.HazardRegisterId == hazardRegisterId
select new Model.Hazard_HazardRegisterItem
{
HazardRegisterId = x.HazardRegisterId,
SourceUnitId = thisUnit.UnitId,
RegisterDate = x.RegisterDate,
RegisterDef = x.RegisterDef,
Rectification = x.Rectification,
WorkAreaName = x.WorkAreaName,
ResponsibilityUnitName = x.ResponsibilityUnitName,
ResponsibilityUnitCollCropCode = x.ResponsibilityUnitCollCropCode,
Risk_Level = "一般",
ProjectId = x.ProjectId,
ProjectName = x.ProjectName,
States = x.States,
StatesStr = x.StatesStr,
ResponsibilityManName = x.ResponsibilityManName,
CheckManName = x.CheckManName,
CheckTime = x.CheckTime,
RectificationPeriod = x.RectificationPeriod,
ImageUrl = x.ImageUrl,
//ImageUrlFileContext = AttachFileService.GetMoreFileStructByAttachUrl(x.ImageUrl),
RectificationImageUrl = x.RectificationImageUrl,
//RectificationImageUrlFileContext = AttachFileService.GetMoreFileStructByAttachUrl(x.RectificationImageUrl),
RectificationTime = x.RectificationTime,
ConfirmManName = x.ConfirmManName,
ConfirmDate = x.ConfirmDate,
HandleIdea = x.HandleIdea,
CutPayment = x.CutPayment,
CheckCycle = x.CheckCycle,
RegisterTypesName = x.RegisterTypesName,
Requirements = x.Requirements
}).ToList();
if (items.Count() > 0)
{
var newItem = new { CollCropCode = thisUnit.CollCropCode, Items = items };
var str = JsonConvert.SerializeObject(newItem);
var baseurl = "/api/HSSEData/DeleteProjectHazardRegisterData";
responeData = ServerService.PushCNCEC(str, baseurl);
}
else
{
responeData.code = 0;
responeData.message = "集团数据删除失败";
}
}
catch (Exception)
{
responeData.code = 0;
responeData.message = "集团数据删除失败";
}
return responeData;
}
#endregion
#region
/// <summary>
/// 推送危大工程业务明细数据
/// </summary>
/// <returns></returns>
public static ReturnData PushProjectLargeEngineeringData(int pushNum)
{
var thisUnit = CommonService.GetIsThisUnit();
Model.SGGLDB db = Funs.DB;
var items = (from x in db.Solution_LargerHazard
where (x.IsUpdate == null || x.IsUpdate == false) && x.RecordTime > BLL.Const.DtmarkTime
select new Model.LargeEngineeringItem
{
Id = x.HazardId,
SourceUnitId = thisUnit.UnitId,
ProjectId = x.ProjectId,
CollCropCode = thisUnit.CollCropCode,
DataDate = x.RecordTime,
AttachFile = AttachFileService.getFileUrl(x.HazardId.ToString()),
HazardName = "危大工程",
TypeName = db.Sys_Const.FirstOrDefault(y =>
y.ConstValue == x.HazardType && y.GroupId == ConstValue.Group_LargerHazardType).ConstText,
IsSuperLargerHazard = x.IsSuperLargerHazard,
IsArgument = x.IsArgument,
Address = x.Address,
Descriptions = x.Descriptions,
TrainPersonNum = x.TrainPersonNum,
RecordTime = x.RecordTime,
ExpectedTime = x.ExpectedTime,
States = x.States,
StatesStr = x.States == "0" ? "已取消" :
x.States == "1" ? "未开始" :
x.States == "2" ? "作业中" :
x.States == "3" ? "已完工" : "",
}).Take(pushNum).ToList();
Model.ReturnData responeData = new Model.ReturnData();
if (items.Count() > 0)
{
var newItem = new { CollCropCode = thisUnit.CollCropCode, Items = items };
var str = JsonConvert.SerializeObject(newItem);
var baseurl = "/api/HSSEData/SaveProjectLargeEngineeringData";
responeData = ServerService.PushCNCEC(str, baseurl);
if (responeData.code == 1)
{
foreach (var item in items)
{
var data = db.Solution_LargerHazard.FirstOrDefault(x =>
x.HazardId == item.Id && (x.IsUpdate == null || x.IsUpdate == false));
data.IsUpdate = true;
db.SubmitChanges();
}
}
}
else
{
responeData.code = 0;
responeData.message = "当前没有项目危大工程业务明细数据";
}
return responeData;
}
#endregion
#region
/// <summary>
/// 删除危大工程业务明细数据
/// </summary>
/// <returns></returns>
public static ReturnData DeleteProjectLargeEngineeringData(string Id)
{
Model.ReturnData responeData = new Model.ReturnData();
try
{
var thisUnit = CommonService.GetIsThisUnit();
Model.SGGLDB db = Funs.DB;
var items = (from x in db.Solution_LargerHazard
where x.HazardId == Id
select new Model.LargeEngineeringItem
{
Id = x.HazardId,
SourceUnitId = thisUnit.UnitId,
ProjectId = x.ProjectId,
CollCropCode = thisUnit.CollCropCode,
DataDate = x.RecordTime,
AttachFile = AttachFileService.getFileUrl(x.HazardId.ToString()),
HazardName = "危大工程",
TypeName = db.Sys_Const.FirstOrDefault(y =>
y.ConstValue == x.HazardType && y.GroupId == ConstValue.Group_LargerHazardType).ConstText,
IsSuperLargerHazard = x.IsSuperLargerHazard,
IsArgument = x.IsArgument,
Address = x.Address,
Descriptions = x.Descriptions,
TrainPersonNum = x.TrainPersonNum,
OperativesNum = x.OperativesNum,
RecordTime = x.RecordTime,
ExpectedTime = x.ExpectedTime,
States = x.States,
StatesStr = x.States == "0" ? "已取消" :
x.States == "1" ? "未开始" :
x.States == "2" ? "作业中" :
x.States == "3" ? "已完工" : "",
}).ToList();
if (items.Count() > 0)
{
var newItem = new { CollCropCode = thisUnit.CollCropCode, Items = items };
var str = JsonConvert.SerializeObject(newItem);
var baseurl = "/api/HSSEData/DeleteProjectLargeEngineeringData";
responeData = ServerService.PushCNCEC(str, baseurl);
}
else
{
responeData.code = 0;
responeData.message = "集团数据删除失败";
}
}
catch (Exception)
{
responeData.code = 0;
responeData.message = "集团数据删除失败";
}
return responeData;
}
#endregion
#region
/// <summary>
/// 推送安全作业许可业务明细数据
/// </summary>
/// <returns></returns>
public static ReturnData PushProjectLicenseData(int pushNum)
{
var thisUnit = CommonService.GetIsThisUnit();
Model.SGGLDB db = Funs.DB;
var items = (from x in db.View_License_LicenseManager
where (x.IsUpdate == null || x.IsUpdate == false) && x.CompileDate > BLL.Const.DtmarkTime
select new Model.ProjectLicenseItem
{
Id = x.LicenseManagerId,
SourceUnitId = thisUnit.UnitId,
ProjectId = x.ProjectId,
CollCropCode = thisUnit.CollCropCode,
DataDate = x.CompileDate,
AttachFile = AttachFileService.getFileUrl(x.LicenseManagerId.ToString()),
LicenseManagerCode = x.LicenseManagerCode,
UnitId = x.UnitId,
UnitName = x.UnitName,
LicenseTypeName = x.LicenseTypeName,
UnitTypeName = x.UnitTypeName,
IsHighRisk = x.IsHighRisk,
WorkAreaName = x.WorkAreaName,
CompileDate = x.CompileDate,
StartDate = x.StartDate,
EndDate = x.EndDate,
WorkStatesStr = x.WorkStatesStr,
}).Take(pushNum).ToList();
Model.ReturnData responeData = new Model.ReturnData();
if (items.Count() > 0)
{
var newItem = new { CollCropCode = thisUnit.CollCropCode, Items = items };
var str = JsonConvert.SerializeObject(newItem);
var baseurl = "/api/HSSEData/SaveProjectLicenseData";
responeData = ServerService.PushCNCEC(str, baseurl);
if (responeData.code == 1)
{
foreach (var item in items)
{
var data = db.License_LicenseManager.FirstOrDefault(x =>
x.LicenseManagerId == item.Id && (x.IsUpdate == null || x.IsUpdate == false));
data.IsUpdate = true;
db.SubmitChanges();
}
}
}
else
{
responeData.code = 0;
responeData.message = "当前没有项目安全作业许可业务明细数据";
}
return responeData;
}
#endregion
#region
/// <summary>
/// 删除安全作业许可业务明细数据
/// </summary>
/// <returns></returns>
public static ReturnData DeleteProjectLicenseData(string Id)
{
Model.ReturnData responeData = new Model.ReturnData();
try
{
var thisUnit = CommonService.GetIsThisUnit();
Model.SGGLDB db = Funs.DB;
var items = (from x in db.View_License_LicenseManager
where x.LicenseManagerId == Id
select new Model.ProjectLicenseItem
{
Id = x.LicenseManagerId,
SourceUnitId = thisUnit.UnitId,
ProjectId = x.ProjectId,
CollCropCode = thisUnit.CollCropCode,
DataDate = x.CompileDate,
AttachFile = AttachFileService.getFileUrl(x.LicenseManagerId.ToString()),
LicenseManagerCode = x.LicenseManagerCode,
UnitId = x.UnitId,
UnitName = x.UnitName,
LicenseTypeName = x.LicenseTypeName,
UnitTypeName = x.UnitTypeName,
IsHighRisk = x.IsHighRisk,
WorkAreaName = x.WorkAreaName,
CompileDate = x.CompileDate,
StartDate = x.StartDate,
EndDate = x.EndDate,
WorkStatesStr = x.WorkStatesStr,
}).ToList();
if (items.Count() > 0)
{
var newItem = new { CollCropCode = thisUnit.CollCropCode, Items = items };
var str = JsonConvert.SerializeObject(newItem);
var baseurl = "/api/HSSEData/DeleteProjectLicenseData";
responeData = ServerService.PushCNCEC(str, baseurl);
}
else
{
responeData.code = 0;
responeData.message = "集团数据删除失败";
}
}
catch (Exception)
{
responeData.code = 0;
responeData.message = "集团数据删除失败";
}
return responeData;
}
#endregion
#region
/// <summary>
/// 推送安全风险数据
/// </summary>
/// <returns></returns>
public static ReturnData PushProjectSecurityRiskData(int pushNum)
{
var thisUnit = CommonService.GetIsThisUnit();
Model.SGGLDB db = Funs.DB;
var items = (from x in db.Hazard_HazardSelectedItem
join List in db.Hazard_HazardList on x.HazardListId equals List.HazardListId into ListJ
from list in ListJ.DefaultIfEmpty()
join Level in db.Base_RiskLevel on x.HazardLevel equals Level.RiskLevelId into LevelJ
from level in LevelJ.DefaultIfEmpty()
where (x.IsUpdate == null || x.IsUpdate == false) && level.RiskLevelName != "" && list.States == BLL.Const.State_2
select new Model.ProjectSecurityRiskItem
{
Id = x.HazardId,
SourceUnitId = thisUnit.UnitId,
ProjectId = x.ProjectId,
CollCropCode = thisUnit.CollCropCode,
DataDate = list.CompileDate,
// AttachFile = AttachFileService.getFileUrl(x.HazardListId.ToString()),
WorkAreaName = list.WorkAreaName,
WorkStageName = ConvertWorkStage(x.WorkStage),
SupHazardListType = ConvertSupHazardListTypeId(x.HazardListTypeId),
HazardListType = ConvertHazardListTypeId(x.HazardListTypeId),
Hazard = ConvertHazardCode(x.HazardId),
HazardItems = x.HazardItems,
DefectsType = x.DefectsType,
MayLeadAccidents = x.MayLeadAccidents,
HelperMethod = x.HelperMethod,
HazardJudge_L = x.HazardJudge_L,
HazardJudge_E = x.HazardJudge_E,
HazardJudge_C = x.HazardJudge_C,
HazardJudge_D = x.HazardJudge_D,
RiskLevelName = level.RiskLevelName,
RiskLevel = level.RiskLevel,
ControlMeasures = x.ControlMeasures,
}).Take(pushNum).ToList();
Model.ReturnData responeData = new Model.ReturnData();
if (items.Count() > 0)
{
var newItem = new { CollCropCode = thisUnit.CollCropCode, Items = items };
var str = JsonConvert.SerializeObject(newItem);
var baseurl = "/api/HSSEData/SaveProjectSecurityRiskData";
responeData = ServerService.PushCNCEC(str, baseurl);
if (responeData.code == 1)
{
foreach (var item in items)
{
var data = db.Hazard_HazardSelectedItem.FirstOrDefault(x =>
x.HazardId == item.Id && (x.IsUpdate == null || x.IsUpdate == false));
data.IsUpdate = true;
db.SubmitChanges();
}
}
}
else
{
responeData.code = 0;
responeData.message = "当前没有项目安全风险数据";
}
return responeData;
}
#region
/// <summary>
/// 转换工作阶段
/// </summary>
/// <param name="workStage"></param>
/// <returns></returns>
public static string ConvertWorkStage(object workStage)
{
if (workStage != null)
{
string workStages = string.Empty;
string[] strList = workStage.ToString().Split(',');
foreach (string str in strList)
{
Model.Base_WorkStage c = BLL.WorkStageService.GetWorkStageById(str);
if (c != null)
{
workStages += c.WorkStageName + ",";
}
}
if (!string.IsNullOrEmpty(workStages))
{
workStages = workStages.Substring(0, workStages.LastIndexOf(","));
}
return workStages;
}
return "";
}
/// <summary>
/// 获取危险源编号
/// </summary>
/// <param name="WorkStage"></param>
/// <returns></returns>
public static string ConvertHazardCode(object HazardId)
{
string hazardCode = string.Empty;
if (HazardId != null)
{
Model.Technique_HazardList hazardList = BLL.HazardListService.GetHazardListById(HazardId.ToString());
if (hazardList != null)
{
hazardCode = hazardList.HazardCode;
}
}
return hazardCode;
}
/// <summary>
/// 获取危险源类别
/// </summary>
/// <param name="hazardListTypeId"></param>
/// <returns></returns>
public static string ConvertSupHazardListTypeId(object hazardListTypeId)
{
if (hazardListTypeId != null)
{
Model.Technique_HazardListType hazardListType =
BLL.HazardListTypeService.GetHazardListTypeById(hazardListTypeId.ToString());
if (hazardListType != null)
{
var hazard = BLL.HazardListTypeService.GetHazardListTypeById(hazardListType.SupHazardListTypeId);
if (hazard != null)
{
return hazard.HazardListTypeName;
}
}
}
return null;
}
/// <summary>
/// 获取危险源项
/// </summary>
/// <param name="hazardListTypeId"></param>
/// <returns></returns>
public static string ConvertHazardListTypeId(object hazardListTypeId)
{
if (hazardListTypeId != null)
{
Model.Technique_HazardListType hazardListType =
BLL.HazardListTypeService.GetHazardListTypeById(hazardListTypeId.ToString());
if (hazardListType != null)
{
return hazardListType.HazardListTypeName;
}
}
return null;
}
#endregion
#endregion
#region
/// <summary>
/// 删除安全风险数据
/// </summary>
/// <returns></returns>
public static ReturnData DeleteProjectSecurityRiskData(string Id)
{
Model.ReturnData responeData = new Model.ReturnData();
try
{
var thisUnit = CommonService.GetIsThisUnit();
Model.SGGLDB db = Funs.DB;
var items = (from x in db.Hazard_HazardSelectedItem
join List in db.Hazard_HazardList on x.HazardListId equals List.HazardListId into ListJ
from list in ListJ.DefaultIfEmpty()
join Level in db.Base_RiskLevel on x.HazardLevel equals Level.RiskLevelId into LevelJ
from level in LevelJ.DefaultIfEmpty()
where x.HazardId == Id
select new Model.ProjectSecurityRiskItem
{
Id = x.HazardId,
SourceUnitId = thisUnit.UnitId,
ProjectId = x.ProjectId,
CollCropCode = thisUnit.CollCropCode,
DataDate = list.CompileDate,
// AttachFile = AttachFileService.getFileUrl(x.HazardListId.ToString()),
WorkAreaName = list.WorkAreaName,
WorkStageName = ConvertWorkStage(x.WorkStage),
SupHazardListType = ConvertSupHazardListTypeId(x.HazardListTypeId),
HazardListType = ConvertHazardListTypeId(x.HazardListTypeId),
Hazard = ConvertHazardCode(x.HazardId),
HazardItems = x.HazardItems,
DefectsType = x.DefectsType,
MayLeadAccidents = x.MayLeadAccidents,
HelperMethod = x.HelperMethod,
HazardJudge_L = x.HazardJudge_L,
HazardJudge_E = x.HazardJudge_E,
HazardJudge_C = x.HazardJudge_C,
HazardJudge_D = x.HazardJudge_D,
RiskLevelName = level.RiskLevelName,
RiskLevel = level.RiskLevel,
ControlMeasures = x.ControlMeasures,
}).ToList();
if (items.Count() > 0)
{
var newItem = new { CollCropCode = thisUnit.CollCropCode, Items = items };
var str = JsonConvert.SerializeObject(newItem);
var baseurl = "/api/HSSEData/DeleteProjectSecurityRiskData";
responeData = ServerService.PushCNCEC(str, baseurl);
}
else
{
responeData.code = 0;
responeData.message = "集团数据删除失败";
}
}
catch (Exception)
{
responeData.code = 0;
responeData.message = "集团数据删除失败";
}
return responeData;
}
#endregion
}
}