using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using EmitMapper; using Microsoft.SqlServer.Dts.Runtime; using Model; namespace BLL.API { public class APIIndexService { #region 获取HSSE首页数据 /// /// 获取HSSE首页数据 /// /// /// public static Model.HSSEItem hsse() { //var hsseData= HSSEData_HSSEService.GetTodayHSSEData_HSSE().Result; var hsseData= HSSEData_HSSEService.GetTheLastData(); var hSSEDataItems =hsseData.HSSEDataItems.FirstOrDefault(); Model.HSSEItem item = new Model.HSSEItem(); item= ObjectMapperManager.DefaultInstance.GetMapper().Map(hSSEDataItems); return item; // using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) //{ // Model.HSSEItem item = new Model.HSSEItem(); // var hsse = db.HSSEData_HSSE.OrderByDescending(x => x.ReportDate).FirstOrDefault(); // if (hsse != null) // { // item.Id = hsse.Id; // item.UnitId = hsse.UnitId; // item.CollCropCode = hsse.CollCropCode; // item.UnitName = hsse.UnitName; // item.ReportDate = hsse.ReportDate; // item.BeUnderConstructionNum = hsse.BeUnderConstructionNum; // item.ShutdownNum = hsse.ShutdownNum; // item.JoinConstructionPersonNum = hsse.JoinConstructionPersonNum; // item.MajorProjectsUnderConstructionNum = hsse.MajorProjectsUnderConstructionNum; // item.TotalWorkingHour = hsse.TotalWorkingHour; // item.TotalWorkingHour = hsse.TotalWorkingHour; // item.SafeWorkingHour = hsse.SafeWorkingHour; // item.SafeTrainNum = hsse.SafeTrainNum; // item.SpecialTrainNum = hsse.SpecialTrainNum; // item.SpecialOperationTrainNum = hsse.SpecialOperationTrainNum; // item.EnvironmentalTrainNum = hsse.EnvironmentalTrainNum; // item.TotalEnergyConsumption = hsse.TotalEnergyConsumption; // item.IncomeComprehensiveEnergyConsumption = hsse.IncomeComprehensiveEnergyConsumption; // item.NewWaterConsumption = hsse.NewWaterConsumption; // item.HeadOfficeInspectorGeneralNum = hsse.HeadOfficeInspectorGeneralNum; // item.HeadOfficeFullTimeNum = hsse.HeadOfficeFullTimeNum; // item.BranchInspectorGeneralNum = hsse.BranchInspectorGeneralNum; // item.BranchFullTimeNum = hsse.BranchFullTimeNum; // item.ProjectInspectorGeneralNum = hsse.ProjectInspectorGeneralNum; // item.ProjectFullTimeNum = hsse.ProjectFullTimeNum; // item.ProjectSafetyMonitorNum = hsse.ProjectSafetyMonitorNum; // item.SafetyInjectionEngineer = hsse.SafetyInjectionEngineer; // item.CertificateANum = hsse.CertificateANum; // item.CertificateBNum = hsse.CertificateBNum; // item.CertificateCNum = hsse.CertificateCNum; // item.SafetyCommitteeMeetingNum = hsse.SafetyCommitteeMeetingNum; // item.EnterpriseTopicsMeetingNum = hsse.EnterpriseTopicsMeetingNum; // item.ProjectSafetyLeadingGroupMeetingNum = hsse.ProjectSafetyLeadingGroupMeetingNum; // item.ProjectSafetyMeetingNum = hsse.ProjectSafetyMeetingNum; // item.CompanyLeadShiftCheckNum = hsse.CompanyLeadShiftCheckNum; // item.CompanyComprehensiveCheckNum = hsse.CompanyComprehensiveCheckNum; // item.CompanySpecialCheckNum = hsse.CompanySpecialCheckNum; // item.ProjectLeadShiftCheckNum = hsse.ProjectLeadShiftCheckNum; // item.ProjectSpecialCheckNum = hsse.ProjectSpecialCheckNum; // item.ProjectMajorCheckNum = hsse.ProjectMajorCheckNum; // item.NearMissNum = hsse.NearMissNum; // item.RecordableEventNum = hsse.RecordableEventNum; // item.GeneralAccidentNum = hsse.GeneralAccidentNum; // item.MajorAccidentNum = hsse.MajorAccidentNum; // item.SeriousAccidentNum = hsse.SeriousAccidentNum; // item.SpecialSeriousAccidentNum = hsse.SpecialSeriousAccidentNum; // item.CompanyComprehensivePlanNum = hsse.CompanyComprehensivePlanNum; // item.CompanySpecialPlanNum = hsse.CompanySpecialPlanNum; // item.CompanyOnSiteDisposalPlan = hsse.CompanyOnSiteDisposalPlan; // item.CompanyDrillNum = hsse.CompanyDrillNum; // item.ProjectComprehensivePlanNum = hsse.ProjectComprehensivePlanNum; // item.ProjectSpecialPlanNum = hsse.ProjectSpecialPlanNum; // item.ProjectOnSiteDisposalPlan = hsse.ProjectOnSiteDisposalPlan; // item.ProjectDrillNum = hsse.ProjectDrillNum; // item.CostExtract = hsse.CostExtract; // item.CostUse = hsse.CostUse; // item.UseEquipmentNum = hsse.UseEquipmentNum; // item.SpecialEquipmentNum = hsse.SpecialEquipmentNum; // item.LicensesNum = hsse.LicensesNum; // item.LicensesCloseNum = hsse.LicensesCloseNum; // item.GeneralClosedNum = hsse.GeneralClosedNum; // item.GeneralNotClosedNum = hsse.GeneralNotClosedNum; // item.MajorClosedNum = hsse.MajorClosedNum; // item.MajorNotClosedNum = hsse.MajorNotClosedNum; // item.GeneralRiskNum = hsse.GeneralRiskNum; // item.LowRiskNum = hsse.LowRiskNum; // item.MediumRiskNum = hsse.MediumRiskNum; // item.HighRiskNum = hsse.HighRiskNum; // item.CompletedNum = hsse.CompletedNum; // item.TrainPersonNum = hsse.TrainPersonNum; // item.ConstructionNum = hsse.ConstructionNum; // item.FinishedNum = hsse.FinishedNum; // item.SuperCompletedNum = hsse.SuperCompletedNum; // item.SuperTrainPersonNum = hsse.SuperTrainPersonNum; // item.SuperConstructionNum = hsse.SuperConstructionNum; // item.SuperFinishedNum = hsse.SuperFinishedNum; // } // return item; //} } public static List GetRectificationOutputs() { var query = (from x in Funs.DB.Base_Project join y in Funs.DB.HSSE_Hazard_HazardRegister_Unit on x.ProjectId equals y.ProjectId into yGroup from y in yGroup.DefaultIfEmpty() where (x.ProjectState == null || x.ProjectState == BLL.Const.ProjectState_1) && (x.IsDelete == null || x.IsDelete == false) && y.ProblemTypes == "1" && y.CheckTime > Const.DtmarkTime group y by new { x.ProjectId, x.ProjectName,x.ShortName, x.ProjectCode } into gg select new HiddenRectificationOutput { ProjectId = gg.Key.ProjectId, ProjectName = gg.Key.ProjectName, ProjectCode = gg.Key.ProjectCode, ProjectShortName = gg.Key.ShortName, ProNum = gg.Count(y => y.States != "4" && y.States != "-1"), RecNum = gg.Count(y => y.States == "3"), NoRecNum = gg.Count(y => y.States != "3" && y.States != "-1"), RecRate = gg.Count(y => y.States != "4" && y.States != "-1") == 0 ? "0" : Math.Round((decimal)gg.Count(y => y.States == "3") / gg.Count(y => y.States != "4" && y.States != "-1") * 100, 2, MidpointRounding.AwayFromZero).ToString(), }).ToList(); return query; } #endregion #region 获取HSSE首页隐患排查治理数据明细 /// /// 获取HSSE首页隐患排查治理数据明细 /// /// /// public static List hiddenDanger() { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { List res = new List(); var reportDate = Funs.DB.HSSEData_HiddenDangerDetail.Max(x => x.ReportDate); if (reportDate.HasValue) { var details = Funs.DB.HSSEData_HiddenDangerDetail.Where(x => x.ReportDate == reportDate.Value).ToList(); if (details != null && details.Count > 0) { foreach (var d in details) { Model.HiddenDangerItem item = new Model.HiddenDangerItem(); item.Id = d.Id; item.UnitId = d.UnitId; item.CollCropCode = d.CollCropCode; item.UnitName = d.UnitName; item.ReportDate = d.ReportDate; item.TypeName = d.TypeName; item.TotalNum = d.TotalNum; item.NeedRectifyNum = d.NeedRectifyNum; res.Add(item); } } } return res; } } #endregion #region 获取CQMS首页 /// /// 获取CQMS首页 /// /// /// public static Model.CQMSItem cqms() { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { Model.CQMSItem item = new Model.CQMSItem(); var cqms = db.CQMSData_CQMS.OrderByDescending(x => x.ReportDate).FirstOrDefault(); if (cqms != null) { item.Id = cqms.Id; item.UnitId = cqms.UnitId; item.CollCropCode = cqms.CollCropCode; item.UnitName = cqms.UnitName; item.ReportDate = cqms.ReportDate.Value.ToShortDateString(); item.TrainPersonNum = cqms.TrainPersonNum; item.TechnicalDisclosePersonNum = cqms.TechnicalDisclosePersonNum; item.UseNum = cqms.UseNum; item.OKNum = cqms.OKNum; item.CompanyPersonNum = cqms.CompanyPersonNum; item.BranchPersonNum = cqms.BranchPersonNum; item.ProjectPersonNum = cqms.ProjectPersonNum; item.ProblemNum = cqms.ProblemNum; item.ProblemCompletedNum = cqms.ProblemCompletedNum; item.ProblemNotCompletedNum = cqms.ProblemNotCompletedNum; item.SNum = cqms.SNum; item.ANum = cqms.ANum; item.BNum = cqms.BNum; item.CNum = cqms.CNum; item.KeyProcessNum = cqms.KeyProcessNum; item.KeyProcessOKNum = cqms.KeyProcessOKNum; item.SpecialProcessNum = cqms.SpecialProcessNum; item.SpecialProcessOKNum = cqms.SpecialProcessOKNum; item.ConcealedWorksNum = cqms.ConcealedWorksNum; item.ConcealedWorksOKNum = cqms.ConcealedWorksOKNum; item.UnitProjectOnesNum = cqms.UnitProjectOnesNum; item.UnitProjectOnesOKNum = cqms.UnitProjectOnesOKNum; item.MaterialInRecheckNum = cqms.MaterialInRecheckNum; item.MaterialInRecheckOKNum = cqms.MaterialInRecheckOKNum; item.SingleProjectNum = cqms.SingleProjectNum; item.UnitProjectNum = cqms.UnitProjectNum; item.SubProjectNum = cqms.SubProjectNum; item.SubdivisionalWorksNum = cqms.SubdivisionalWorksNum; item.InspectionLotNum = cqms.InspectionLotNum; } return item; } } #endregion #region 获取HJGL首页 /// /// 获取HJGL首页 /// /// /// public static Model.HJGLItem hjgl() { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { Model.HJGLItem item = new Model.HJGLItem(); var hjgl = db.HJGLData_HJGL.OrderByDescending(x => x.ReportDate).FirstOrDefault(); if (hjgl != null) { item.Id = hjgl.Id; item.UnitId = hjgl.UnitId; item.CollCropCode = hjgl.CollCropCode; item.UnitName = hjgl.UnitName; item.ReportDate = hjgl.ReportDate; item.WelderNum = hjgl.WelderNum; item.TotalDineNum = hjgl.TotalDineNum; item.CompleteDineNum = hjgl.CompleteDineNum; item.TotalFilmNum = hjgl.TotalFilmNum; item.OKFilmNum = hjgl.OKFilmNum; } return item; } } #endregion #region 获取焊接缺陷 /// /// 获取焊接缺陷 /// /// /// public static List defect() { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { List res = new List(); var reportDate = Funs.DB.HJGLData_Defect.Max(x => x.ReportDate); if (reportDate.HasValue) { var defects = Funs.DB.HJGLData_Defect.Where(x => x.ReportDate == reportDate.Value).ToList(); if (defects != null && defects.Count > 0) { foreach (var d in defects) { Model.DefectItem item = new Model.DefectItem(); item.Id = d.Id; item.UnitId = d.UnitId; item.CollCropCode = d.CollCropCode; item.UnitName = d.UnitName; item.ReportDate = d.ReportDate; item.DefectName = d.DefectName; item.DefectNum = d.DefectNum; res.Add(item); } } } return res; } } #endregion #region 获取SHIYE首页 /// /// 获取SHIYE首页 /// /// /// public static Model.SYHSEItem shiye() { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { Model.SYHSEItem item = new Model.SYHSEItem(); var shiye = db.SYHSEData_SYHSE.OrderByDescending(x => x.ReportDate).FirstOrDefault(); if (shiye != null) { item.Id = shiye.Id; item.UnitId = shiye.UnitId; item.CollCropCode = shiye.CollCropCode; item.UnitName = shiye.UnitName; item.ReportDate = shiye.ReportDate; item.GeneralRiskNum = shiye.GeneralRiskNum; item.LowRiskNum = shiye.LowRiskNum; item.MediumRiskNum = shiye.MediumRiskNum; item.HighRiskNum = shiye.HighRiskNum; item.GradedResponsiblePersonNum = shiye.GradedResponsiblePersonNum; item.ChargeInsurancePersonNum = shiye.ChargeInsurancePersonNum; item.DesignQuantity = shiye.DesignQuantity; item.RunningCapacity = shiye.DesignQuantity; item.InterlockSettingValue = shiye.InterlockSettingValue; item.VideoSurveillanceNum = shiye.VideoSurveillanceNum; item.TotalWorkinghours = shiye.TotalWorkinghours; item.SafeWorkinghours = shiye.SafeWorkinghours; item.LostWorkinghours = shiye.LostWorkinghours; item.TotalEnergyConsumption = shiye.TotalEnergyConsumption; item.IncomeComprehensiveEnergyConsumption = shiye.IncomeComprehensiveEnergyConsumption; item.NewWaterConsumption = shiye.NewWaterConsumption; item.GeneralClosedNum = shiye.GeneralClosedNum; item.GeneralNotClosedNum = shiye.GeneralNotClosedNum; item.MajorClosedNum = shiye.MajorClosedNum; item.MajorNotClosedNum = shiye.MajorNotClosedNum; item.HotWorkPermitNum = shiye.HotWorkPermitNum; item.HotWorkClosedNum = shiye.HotWorkClosedNum; item.HighPermitNum = shiye.HighPermitNum; item.HighClosedNum = shiye.HighPermitNum; item.TemporaryElectricityPermitNum = shiye.TemporaryElectricityPermitNum; item.TemporaryElectricityClosedNum = shiye.TemporaryElectricityClosedNum; item.BlindPlatePermitNum = shiye.BlindPlatePermitNum; item.BlindPlateClosedNum = shiye.BlindPlateClosedNum; item.GroundbreakingPermitNum = shiye.GroundbreakingPermitNum; item.GroundbreakingClosedNum = shiye.GroundbreakingClosedNum; item.OpenCircuitPermitNum = shiye.OpenCircuitPermitNum; item.OpenCircuitClosedNum = shiye.OpenCircuitClosedNum; item.HoistingPermitNum = shiye.HoistingPermitNum; item.HoistingClosedNum = shiye.HoistingClosedNum; } return item; } } #endregion } }