using System; using System.Collections; using System.Collections.Generic; using System.Linq; using FineUIPro; using Model; using Newtonsoft.Json; namespace BLL { public static class HSSEData_HSSEService { public static SGGLDB Db = Funs.DB; public static void AddHSSEData_HSSE(HSSEData_HSSE newtable) { using (var db = new SGGLDB(Funs.ConnString)) { var table = new HSSEData_HSSE { Id = newtable.Id, UnitId = newtable.UnitId, CollCropCode = newtable.CollCropCode, UnitName = newtable.UnitName, ReportDate = newtable.ReportDate, BeUnderConstructionNum = newtable.BeUnderConstructionNum, ShutdownNum = newtable.ShutdownNum, JoinConstructionPersonNum = newtable.JoinConstructionPersonNum, MajorProjectsUnderConstructionNum = newtable.MajorProjectsUnderConstructionNum, TotalWorkingHour = newtable.TotalWorkingHour, LostWorkingHour = newtable.LostWorkingHour, SafeWorkingHour = newtable.SafeWorkingHour, SafeTrainNum = newtable.SafeTrainNum, SpecialTrainNum = newtable.SpecialTrainNum, SpecialOperationTrainNum = newtable.SpecialOperationTrainNum, TotalEnergyConsumption = newtable.TotalEnergyConsumption, IncomeComprehensiveEnergyConsumption = newtable.IncomeComprehensiveEnergyConsumption, NewWaterConsumption = newtable.NewWaterConsumption, HeadOfficeInspectorGeneralNum = newtable.HeadOfficeInspectorGeneralNum, HeadOfficeFullTimeNum = newtable.HeadOfficeFullTimeNum, BranchInspectorGeneralNum = newtable.BranchInspectorGeneralNum, BranchFullTimeNum = newtable.BranchFullTimeNum, ProjectInspectorGeneralNum = newtable.ProjectInspectorGeneralNum, ProjectFullTimeNum = newtable.ProjectFullTimeNum, ProjectSafetyMonitorNum = newtable.ProjectSafetyMonitorNum, SafetyInjectionEngineer = newtable.SafetyInjectionEngineer, CertificateANum = newtable.CertificateANum, CertificateBNum = newtable.CertificateBNum, CertificateCNum = newtable.CertificateCNum, SafetyCommitteeMeetingNum = newtable.SafetyCommitteeMeetingNum, EnterpriseTopicsMeetingNum = newtable.EnterpriseTopicsMeetingNum, ProjectSafetyLeadingGroupMeetingNum = newtable.ProjectSafetyLeadingGroupMeetingNum, ProjectSafetyMeetingNum = newtable.ProjectSafetyMeetingNum, CompanyLeadShiftCheckNum = newtable.CompanyLeadShiftCheckNum, CompanyComprehensiveCheckNum = newtable.CompanyComprehensiveCheckNum, CompanySpecialCheckNum = newtable.CompanySpecialCheckNum, ProjectLeadShiftCheckNum = newtable.ProjectLeadShiftCheckNum, ProjectSpecialCheckNum = newtable.ProjectSpecialCheckNum, ProjectMajorCheckNum = newtable.ProjectMajorCheckNum, NearMissNum = newtable.NearMissNum, RecordableEventNum = newtable.RecordableEventNum, GeneralAccidentNum = newtable.GeneralAccidentNum, MajorAccidentNum = newtable.MajorAccidentNum, SeriousAccidentNum = newtable.SeriousAccidentNum, SpecialSeriousAccidentNum = newtable.SpecialSeriousAccidentNum, CompanyComprehensivePlanNum = newtable.CompanyComprehensivePlanNum, CompanySpecialPlanNum = newtable.CompanySpecialPlanNum, CompanyOnSiteDisposalPlan = newtable.CompanyOnSiteDisposalPlan, CompanyDrillNum = newtable.CompanyDrillNum, ProjectComprehensivePlanNum = newtable.ProjectComprehensivePlanNum, ProjectSpecialPlanNum = newtable.ProjectSpecialPlanNum, ProjectOnSiteDisposalPlan = newtable.ProjectOnSiteDisposalPlan, ProjectDrillNum = newtable.ProjectDrillNum, CostExtract = newtable.CostExtract, CostUse = newtable.CostUse, UseEquipmentNum = newtable.UseEquipmentNum, SpecialEquipmentNum = newtable.SpecialEquipmentNum, LicensesNum = newtable.LicensesNum, LicensesCloseNum = newtable.LicensesCloseNum, GeneralClosedNum = newtable.GeneralClosedNum, GeneralNotClosedNum = newtable.GeneralNotClosedNum, MajorClosedNum = newtable.MajorClosedNum, MajorNotClosedNum = newtable.MajorNotClosedNum, GeneralRiskNum = newtable.GeneralRiskNum, LowRiskNum = newtable.LowRiskNum, MediumRiskNum = newtable.MediumRiskNum, HighRiskNum = newtable.HighRiskNum, CompletedNum = newtable.CompletedNum, TrainPersonNum = newtable.TrainPersonNum, ConstructionNum = newtable.ConstructionNum, FinishedNum = newtable.FinishedNum, SuperCompletedNum = newtable.SuperCompletedNum, SuperTrainPersonNum = newtable.SuperTrainPersonNum, SuperConstructionNum = newtable.SuperConstructionNum, SuperFinishedNum = newtable.SuperFinishedNum, State = newtable.State, CreateDate = newtable.CreateDate, CreateMan = newtable.CreateMan }; db.HSSEData_HSSE.InsertOnSubmit(table); db.SubmitChanges(); } } public static void DeleteHSSEData_HSSEById(string id) { using (var db = new SGGLDB(Funs.ConnString)) { var table = db.HSSEData_HSSE.FirstOrDefault(x => x.Id == id); if (table != null) { db.HSSEData_HSSE.DeleteOnSubmit(table); db.SubmitChanges(); } } } public static HSSEData_HSSE GetHSSEData_HSSEById(string id) { using (var db = new SGGLDB(Funs.ConnString)) { return db.HSSEData_HSSE.FirstOrDefault(x => x.Id == id); } } public static HSSEData GetItemById(string id) { var item = new HsseDataItem(); var data = new HSSEData(); var dataHsse = GetHSSEData_HSSEById(id); if (dataHsse != null) { item.BeUnderConstructionNum = dataHsse.BeUnderConstructionNum; item.BranchFullTimeNum = dataHsse.BranchFullTimeNum; item.BranchInspectorGeneralNum = dataHsse.BranchInspectorGeneralNum; item.CertificateANum = dataHsse.CertificateANum; item.CertificateBNum = dataHsse.CertificateBNum; item.CertificateCNum = dataHsse.CertificateCNum; item.CollCropCode = dataHsse.CollCropCode; item.CompanyComprehensiveCheckNum = dataHsse.CompanyComprehensiveCheckNum; item.CompanyComprehensivePlanNum = dataHsse.CompanyComprehensivePlanNum; item.CompanyDrillNum = dataHsse.CompanyDrillNum; item.CompanyLeadShiftCheckNum = dataHsse.CompanyLeadShiftCheckNum; item.CompanyOnSiteDisposalPlan = dataHsse.CompanyOnSiteDisposalPlan; item.CompanySpecialCheckNum = dataHsse.CompanySpecialCheckNum; item.CompanySpecialPlanNum = dataHsse.CompanySpecialPlanNum; item.CompletedNum = dataHsse.CompletedNum; item.ConstructionNum = dataHsse.ConstructionNum; item.CostExtract = dataHsse.CostExtract; item.CostUse = dataHsse.CostUse; item.EnterpriseTopicsMeetingNum = dataHsse.EnterpriseTopicsMeetingNum; item.FinishedNum = dataHsse.FinishedNum; item.GeneralAccidentNum = dataHsse.GeneralAccidentNum; item.GeneralClosedNum = dataHsse.GeneralClosedNum; item.GeneralNotClosedNum = dataHsse.GeneralNotClosedNum; item.GeneralRate = ""; item.GeneralRiskNum = dataHsse.GeneralRiskNum; item.HeadOfficeFullTimeNum = dataHsse.HeadOfficeFullTimeNum; item.HeadOfficeInspectorGeneralNum = dataHsse.HeadOfficeInspectorGeneralNum; item.HighRiskNum = dataHsse.HighRiskNum; item.Id = dataHsse.Id; item.IncomeComprehensiveEnergyConsumption = dataHsse.IncomeComprehensiveEnergyConsumption; item.JoinConstructionPersonNum = dataHsse.JoinConstructionPersonNum; item.LicensesCloseNum = dataHsse.LicensesCloseNum; item.LicensesNum = dataHsse.LicensesNum; item.LostWorkingHour = dataHsse.LostWorkingHour; item.LowRiskNum = dataHsse.LowRiskNum; item.MajorAccidentNum = dataHsse.MajorAccidentNum; item.MajorClosedNum = dataHsse.MajorClosedNum; item.MajorNotClosedNum = dataHsse.MajorNotClosedNum; item.MajorProjectsUnderConstructionNum = dataHsse.MajorProjectsUnderConstructionNum; item.MajorRate = ""; item.MediumRiskNum = dataHsse.MediumRiskNum; item.NearMissNum = dataHsse.NearMissNum; item.NewWaterConsumption = dataHsse.NewWaterConsumption; item.ProjectComprehensivePlanNum = dataHsse.ProjectComprehensivePlanNum; item.ProjectDrillNum = dataHsse.ProjectDrillNum; item.ProjectFullTimeNum = dataHsse.ProjectFullTimeNum; item.ProjectInspectorGeneralNum = dataHsse.ProjectInspectorGeneralNum; item.ProjectLeadShiftCheckNum = dataHsse.ProjectLeadShiftCheckNum; item.ProjectMajorCheckNum = dataHsse.ProjectMajorCheckNum; item.ProjectOnSiteDisposalPlan = dataHsse.ProjectOnSiteDisposalPlan; item.ProjectSafetyLeadingGroupMeetingNum = dataHsse.ProjectSafetyLeadingGroupMeetingNum; item.ProjectSafetyMeetingNum = dataHsse.ProjectSafetyMeetingNum; item.ProjectSafetyMonitorNum = dataHsse.ProjectSafetyMonitorNum; item.ProjectSpecialCheckNum = dataHsse.ProjectSpecialCheckNum; item.ProjectSpecialPlanNum = dataHsse.ProjectSpecialPlanNum; item.RecordableEventNum = dataHsse.RecordableEventNum; item.ReportDate = dataHsse.ReportDate.Value.ToShortDateString(); item.SafeTrainNum = dataHsse.SafeTrainNum; item.SafetyCommitteeMeetingNum = dataHsse.SafetyCommitteeMeetingNum; item.SafetyInjectionEngineer = dataHsse.SafetyInjectionEngineer; item.SafeWorkingHour = dataHsse.SafeWorkingHour; item.SeriousAccidentNum = dataHsse.SeriousAccidentNum; item.ShutdownNum = dataHsse.ShutdownNum; item.SpecialEquipmentNum = dataHsse.SpecialEquipmentNum; item.SpecialOperationTrainNum = dataHsse.SpecialOperationTrainNum; item.SpecialSeriousAccidentNum = dataHsse.SpecialSeriousAccidentNum; item.SpecialTrainNum = dataHsse.SpecialTrainNum; item.SuperCompletedNum = dataHsse.SuperCompletedNum; item.SuperConstructionNum = dataHsse.SuperConstructionNum; item.SuperFinishedNum = dataHsse.SuperFinishedNum; item.SuperTrainPersonNum = dataHsse.SuperTrainPersonNum; item.TotalEnergyConsumption = dataHsse.TotalEnergyConsumption; item.TotalWorkingHour = dataHsse.TotalWorkingHour; item.TrainPersonNum = dataHsse.TrainPersonNum; item.UnitId = dataHsse.UnitId; item.UseEquipmentNum = dataHsse.UseEquipmentNum; var hSseDataHiddens = HSSEData_HiddenDangerDetailService.GetHSSEData_HiddenDangerDetailByDate(dataHsse.ReportDate); if (hSseDataHiddens != null) { var list = hSseDataHiddens.Select(detail => new HSSEDataHiddenDangerDetailItem { Id = detail.Id, NeedRectifyNum = detail.NeedRectifyNum, TotalNum = detail.TotalNum, TypeName = detail.TypeName }).ToList(); item.HiddenDangerDetailItems = list; } } var hsseDataItems = new List { item }; data.HSSEDataItems = hsseDataItems; return data; } public static HSSEData GetItemByHSSEData_HSSE(HSSEData_HSSE dataHsse, List hSseDataHiddens) { var item = new HsseDataItem(); var data = new HSSEData(); if (dataHsse != null) { item.BeUnderConstructionNum = dataHsse.BeUnderConstructionNum; item.BranchFullTimeNum = dataHsse.BranchFullTimeNum; item.BranchInspectorGeneralNum = dataHsse.BranchInspectorGeneralNum; item.CertificateANum = dataHsse.CertificateANum; item.CertificateBNum = dataHsse.CertificateBNum; item.CertificateCNum = dataHsse.CertificateCNum; item.CollCropCode = dataHsse.CollCropCode; item.CompanyComprehensiveCheckNum = dataHsse.CompanyComprehensiveCheckNum; item.CompanyComprehensivePlanNum = dataHsse.CompanyComprehensivePlanNum; item.CompanyDrillNum = dataHsse.CompanyDrillNum; item.CompanyLeadShiftCheckNum = dataHsse.CompanyLeadShiftCheckNum; item.CompanyOnSiteDisposalPlan = dataHsse.CompanyOnSiteDisposalPlan; item.CompanySpecialCheckNum = dataHsse.CompanySpecialCheckNum; item.CompanySpecialPlanNum = dataHsse.CompanySpecialPlanNum; item.CompletedNum = dataHsse.CompletedNum; item.ConstructionNum = dataHsse.ConstructionNum; item.CostExtract = dataHsse.CostExtract; item.CostUse = dataHsse.CostUse; item.EnterpriseTopicsMeetingNum = dataHsse.EnterpriseTopicsMeetingNum; item.FinishedNum = dataHsse.FinishedNum; item.GeneralAccidentNum = dataHsse.GeneralAccidentNum; item.GeneralClosedNum = dataHsse.GeneralClosedNum; item.GeneralNotClosedNum = dataHsse.GeneralNotClosedNum; item.GeneralRate = ""; item.GeneralRiskNum = dataHsse.GeneralRiskNum; item.HeadOfficeFullTimeNum = dataHsse.HeadOfficeFullTimeNum; item.HeadOfficeInspectorGeneralNum = dataHsse.HeadOfficeInspectorGeneralNum; item.HighRiskNum = dataHsse.HighRiskNum; item.Id = dataHsse.Id; item.IncomeComprehensiveEnergyConsumption = dataHsse.IncomeComprehensiveEnergyConsumption; item.JoinConstructionPersonNum = dataHsse.JoinConstructionPersonNum; item.LicensesCloseNum = dataHsse.LicensesCloseNum; item.LicensesNum = dataHsse.LicensesNum; item.LostWorkingHour = dataHsse.LostWorkingHour; item.LowRiskNum = dataHsse.LowRiskNum; item.MajorAccidentNum = dataHsse.MajorAccidentNum; item.MajorClosedNum = dataHsse.MajorClosedNum; item.MajorNotClosedNum = dataHsse.MajorNotClosedNum; item.MajorProjectsUnderConstructionNum = dataHsse.MajorProjectsUnderConstructionNum; item.MajorRate = ""; item.MediumRiskNum = dataHsse.MediumRiskNum; item.NearMissNum = dataHsse.NearMissNum; item.NewWaterConsumption = dataHsse.NewWaterConsumption; item.ProjectComprehensivePlanNum = dataHsse.ProjectComprehensivePlanNum; item.ProjectDrillNum = dataHsse.ProjectDrillNum; item.ProjectFullTimeNum = dataHsse.ProjectFullTimeNum; item.ProjectInspectorGeneralNum = dataHsse.ProjectInspectorGeneralNum; item.ProjectLeadShiftCheckNum = dataHsse.ProjectLeadShiftCheckNum; item.ProjectMajorCheckNum = dataHsse.ProjectMajorCheckNum; item.ProjectOnSiteDisposalPlan = dataHsse.ProjectOnSiteDisposalPlan; item.ProjectSafetyLeadingGroupMeetingNum = dataHsse.ProjectSafetyLeadingGroupMeetingNum; item.ProjectSafetyMeetingNum = dataHsse.ProjectSafetyMeetingNum; item.ProjectSafetyMonitorNum = dataHsse.ProjectSafetyMonitorNum; item.ProjectSpecialCheckNum = dataHsse.ProjectSpecialCheckNum; item.ProjectSpecialPlanNum = dataHsse.ProjectSpecialPlanNum; item.RecordableEventNum = dataHsse.RecordableEventNum; item.ReportDate = dataHsse.ReportDate.Value.ToShortDateString(); item.SafeTrainNum = dataHsse.SafeTrainNum; item.SafetyCommitteeMeetingNum = dataHsse.SafetyCommitteeMeetingNum; item.SafetyInjectionEngineer = dataHsse.SafetyInjectionEngineer; item.SafeWorkingHour = dataHsse.SafeWorkingHour; item.SeriousAccidentNum = dataHsse.SeriousAccidentNum; item.ShutdownNum = dataHsse.ShutdownNum; item.SpecialEquipmentNum = dataHsse.SpecialEquipmentNum; item.SpecialOperationTrainNum = dataHsse.SpecialOperationTrainNum; item.SpecialSeriousAccidentNum = dataHsse.SpecialSeriousAccidentNum; item.SpecialTrainNum = dataHsse.SpecialTrainNum; item.SuperCompletedNum = dataHsse.SuperCompletedNum; item.SuperConstructionNum = dataHsse.SuperConstructionNum; item.SuperFinishedNum = dataHsse.SuperFinishedNum; item.SuperTrainPersonNum = dataHsse.SuperTrainPersonNum; item.TotalEnergyConsumption = dataHsse.TotalEnergyConsumption; item.TotalWorkingHour = dataHsse.TotalWorkingHour; item.TrainPersonNum = dataHsse.TrainPersonNum; item.UnitId = dataHsse.UnitId; item.UseEquipmentNum = dataHsse.UseEquipmentNum; if (hSseDataHiddens != null) { var list = hSseDataHiddens.Select(detail => new HSSEDataHiddenDangerDetailItem { Id = detail.Id, NeedRectifyNum = detail.NeedRectifyNum, TotalNum = detail.TotalNum, TypeName = detail.TypeName }).ToList(); item.HiddenDangerDetailItems = list; } } var hsseDataItems = new List { item }; data.HSSEDataItems = hsseDataItems; return data; } public static HSSEData GetTodayHSSEData_HSSE() { HSSEData data; var q = (from x in Funs.DB.HSSEData_HSSE where x.ReportDate < DateTime.Now.AddDays(1).Date && x.ReportDate >= DateTime.Now.Date select x).FirstOrDefault(); if (q != null && q.State == Const.CNCEC_State_S) // data = GetItemByHSSEData_HSSE(q, Project_HSSEData_HiddenDangerDetailService.GetTodayModel()); ; data = StatisticalData(); else data = StatisticalData(); return data; } public static HSSEData_HSSE GetTodayData() { var q = (from x in Funs.DB.HSSEData_HSSE where x.ReportDate < DateTime.Now.AddDays(1).Date && x.ReportDate >= DateTime.Now.Date select x).FirstOrDefault(); return q; } public static void UpdateTodyData_State() { var q = GetTodayData(); if (q != null) { q.State = Const.CNCEC_State_1; UpdateHSSEData_HSSE(q); } } public static bool IsReportByDate(DateTime dateTime) { var result = false; var q = (from x in Funs.DB.HSSEData_HSSE where x.ReportDate >= dateTime.Date && x.ReportDate < dateTime.Date.AddDays(1).Date select x).ToList(); if (q.Count > 0) result = true; return result; } /// /// 判断当天是否已上报 /// /// public static bool IsReportByToday() { var result = false; var q = (from x in Funs.DB.HSSEData_HSSE where x.ReportDate < DateTime.Now.AddDays(1).Date && x.ReportDate >= DateTime.Now.Date select x).ToList(); if (q.Count > 0) result = true; return result; } public static ReturnData PushCncec(string id) { var baseurl = "/api/HSSEData/SaveHSSEData"; var item = GetItemById(id); var str = JsonConvert.SerializeObject(item); var responeData = ServerService.PushCNCEC(str, baseurl); return responeData; } public static HSSEData StatisticalData() { var thisUnitId = string.Empty; var thisUnit = CommonService.GetIsThisUnit(); if (thisUnit != null) thisUnitId = thisUnit.UnitId; var baseUnit = UnitService.GetUnitByUnitId(thisUnitId); Project_HSSEData_HSSEService.StatisticalAllProjectData(); Project_HSSEData_HiddenDangerDetailService.StatisticalAllProjectData(); var projectData = (from x in Funs.DB.Project_HSSEData_HSSE where x.ReportDate < DateTime.Now.AddDays(1).Date && x.ReportDate >= DateTime.Now.Date select x).ToList(); var totalEnergyConsumption = ChemicalReportItemService.GetLatstTimeTotalEnergyConsumption(); var incomeComprehensiveEnergyConsumption = ChemicalReportItemService.GetLatstTimeIncomeComprehensiveEnergyConsumption(); var newWaterConsumption = ChemicalReportItemService.GetLatstTimeNewWaterConsumption(); var table = new HSSEData_HSSE { UnitId = thisUnitId, CollCropCode = baseUnit.CollCropCode, UnitName = baseUnit.UnitName, ReportDate = DateTime.Now.Date, BeUnderConstructionNum = projectData.Sum(x => x.BeUnderConstructionNum), ShutdownNum = projectData.Sum(x => x.ShutdownNum), JoinConstructionPersonNum = projectData.Sum(x => x.JoinConstructionPersonNum), MajorProjectsUnderConstructionNum = projectData.Sum(x => x.MajorProjectsUnderConstructionNum), TotalWorkingHour = projectData.Sum(x => x.TotalWorkingHour), LostWorkingHour = projectData.Sum(x => x.LostWorkingHour), SafeWorkingHour = projectData.Sum(x => x.SafeWorkingHour), SafeTrainNum = projectData.Sum(x => x.SafeTrainNum), SpecialTrainNum = projectData.Sum(x => x.SpecialTrainNum), SpecialOperationTrainNum = projectData.Sum(x => x.SpecialOperationTrainNum), TotalEnergyConsumption = totalEnergyConsumption, IncomeComprehensiveEnergyConsumption = incomeComprehensiveEnergyConsumption, NewWaterConsumption = newWaterConsumption, HeadOfficeInspectorGeneralNum = GetHeadOfficeInspectorGeneralNum(), HeadOfficeFullTimeNum = GetHeadOfficeFullTimeNum(), BranchInspectorGeneralNum = GetBranchInspectorGeneralNum(), BranchFullTimeNum = GetBranchFullTimeNum(), ProjectInspectorGeneralNum = projectData.Sum(x => x.ProjectInspectorGeneralNum), ProjectFullTimeNum = projectData.Sum(x => x.ProjectFullTimeNum), ProjectSafetyMonitorNum = projectData.Sum(x => x.ProjectSafetyMonitorNum), SafetyInjectionEngineer = projectData.Sum(x => x.SafetyInjectionEngineer), CertificateANum = projectData.Sum(x => x.CertificateANum), CertificateBNum = projectData.Sum(x => x.CertificateBNum), CertificateCNum = projectData.Sum(x => x.CertificateCNum), SafetyCommitteeMeetingNum = GetSafetyCommitteeMeetingNum(), EnterpriseTopicsMeetingNum = GetEnterpriseTopicsMeetingNum(), ProjectSafetyLeadingGroupMeetingNum = projectData.Sum(x => x.ProjectSafetyLeadingGroupMeetingNum), ProjectSafetyMeetingNum = projectData.Sum(x => x.ProjectSafetyMeetingNum), CompanyLeadShiftCheckNum = GetCompanyLeadShiftCheckNum(), CompanyComprehensiveCheckNum = GetCompanyComprehensiveCheckNum(), CompanySpecialCheckNum = GetCompanySpecialCheckNum(), ProjectLeadShiftCheckNum = projectData.Sum(x => x.ProjectLeadShiftCheckNum), ProjectSpecialCheckNum = projectData.Sum(x => x.ProjectSpecialCheckNum), ProjectMajorCheckNum = projectData.Sum(x => x.ProjectMajorCheckNum), NearMissNum = projectData.Sum(x => x.NearMissNum), RecordableEventNum = projectData.Sum(x => x.RecordableEventNum), GeneralAccidentNum = projectData.Sum(x => x.GeneralAccidentNum), MajorAccidentNum = projectData.Sum(x => x.MajorAccidentNum), SeriousAccidentNum = projectData.Sum(x => x.SeriousAccidentNum), SpecialSeriousAccidentNum = projectData.Sum(x => x.SpecialSeriousAccidentNum), CompanyComprehensivePlanNum = GetCompanyComprehensivePlanNum(), CompanySpecialPlanNum = GetCompanySpecialPlanNum(), CompanyOnSiteDisposalPlan = GetCompanyOnSiteDisposalPlan(), CompanyDrillNum = GetCompanyDrillNum(), ProjectComprehensivePlanNum = projectData.Sum(x => x.ProjectComprehensivePlanNum), ProjectSpecialPlanNum = projectData.Sum(x => x.ProjectSpecialPlanNum), ProjectOnSiteDisposalPlan = projectData.Sum(x => x.ProjectOnSiteDisposalPlan), ProjectDrillNum = projectData.Sum(x => x.ProjectDrillNum), CostExtract = projectData.Sum(x => x.CostExtract), CostUse = projectData.Sum(x => x.CostUse), UseEquipmentNum = projectData.Sum(x => x.UseEquipmentNum), SpecialEquipmentNum = projectData.Sum(x => x.SpecialEquipmentNum), LicensesNum = projectData.Sum(x => x.LicensesNum), LicensesCloseNum = projectData.Sum(x => x.LicensesCloseNum), GeneralClosedNum = projectData.Sum(x => x.GeneralClosedNum), GeneralNotClosedNum = projectData.Sum(x => x.GeneralNotClosedNum), MajorClosedNum = projectData.Sum(x => x.MajorClosedNum), MajorNotClosedNum = projectData.Sum(x => x.MajorNotClosedNum), GeneralRiskNum = projectData.Sum(x => x.GeneralRiskNum), LowRiskNum = projectData.Sum(x => x.LowRiskNum), MediumRiskNum = projectData.Sum(x => x.MediumRiskNum), HighRiskNum = projectData.Sum(x => x.HighRiskNum), CompletedNum = projectData.Sum(x => x.CompletedNum), TrainPersonNum = projectData.Sum(x => x.TrainPersonNum), ConstructionNum = projectData.Sum(x => x.ConstructionNum), FinishedNum = projectData.Sum(x => x.FinishedNum), SuperCompletedNum = projectData.Sum(x => x.SuperCompletedNum), SuperTrainPersonNum = projectData.Sum(x => x.SuperTrainPersonNum), SuperConstructionNum = projectData.Sum(x => x.SuperConstructionNum), SuperFinishedNum = projectData.Sum(x => x.SuperFinishedNum), CreateMan = Const.sysglyId, CreateDate = DateTime.Now }; if (IsReportByToday()) { table.Id = GetTodayData().Id; table.State = Const.CNCEC_State_1; UpdateHSSEData_HSSE(table); } else { table.Id = SQLHelper.GetNewID(); table.State = Const.CNCEC_State_0; AddHSSEData_HSSE(table); } var data = GetItemByHSSEData_HSSE(table, Project_HSSEData_HiddenDangerDetailService.GetTodayModel()); return data; } public static void UpdateHSSEData_HSSE(HSSEData_HSSE newtable) { using (var db = new SGGLDB(Funs.ConnString)) { var table = db.HSSEData_HSSE.FirstOrDefault(x => x.Id == newtable.Id); if (table != null) { table.Id = newtable.Id; table.UnitId = newtable.UnitId; table.CollCropCode = newtable.CollCropCode; table.UnitName = newtable.UnitName; table.ReportDate = newtable.ReportDate; table.BeUnderConstructionNum = newtable.BeUnderConstructionNum; table.ShutdownNum = newtable.ShutdownNum; table.JoinConstructionPersonNum = newtable.JoinConstructionPersonNum; table.MajorProjectsUnderConstructionNum = newtable.MajorProjectsUnderConstructionNum; table.TotalWorkingHour = newtable.TotalWorkingHour; table.LostWorkingHour = newtable.LostWorkingHour; table.SafeWorkingHour = newtable.SafeWorkingHour; table.SafeTrainNum = newtable.SafeTrainNum; table.SpecialTrainNum = newtable.SpecialTrainNum; table.SpecialOperationTrainNum = newtable.SpecialOperationTrainNum; table.TotalEnergyConsumption = newtable.TotalEnergyConsumption; table.IncomeComprehensiveEnergyConsumption = newtable.IncomeComprehensiveEnergyConsumption; table.NewWaterConsumption = newtable.NewWaterConsumption; table.HeadOfficeInspectorGeneralNum = newtable.HeadOfficeInspectorGeneralNum; table.HeadOfficeFullTimeNum = newtable.HeadOfficeFullTimeNum; table.BranchInspectorGeneralNum = newtable.BranchInspectorGeneralNum; table.BranchFullTimeNum = newtable.BranchFullTimeNum; table.ProjectInspectorGeneralNum = newtable.ProjectInspectorGeneralNum; table.ProjectFullTimeNum = newtable.ProjectFullTimeNum; table.ProjectSafetyMonitorNum = newtable.ProjectSafetyMonitorNum; table.SafetyInjectionEngineer = newtable.SafetyInjectionEngineer; table.CertificateANum = newtable.CertificateANum; table.CertificateBNum = newtable.CertificateBNum; table.CertificateCNum = newtable.CertificateCNum; table.SafetyCommitteeMeetingNum = newtable.SafetyCommitteeMeetingNum; table.EnterpriseTopicsMeetingNum = newtable.EnterpriseTopicsMeetingNum; table.ProjectSafetyLeadingGroupMeetingNum = newtable.ProjectSafetyLeadingGroupMeetingNum; table.ProjectSafetyMeetingNum = newtable.ProjectSafetyMeetingNum; table.CompanyLeadShiftCheckNum = newtable.CompanyLeadShiftCheckNum; table.CompanyComprehensiveCheckNum = newtable.CompanyComprehensiveCheckNum; table.CompanySpecialCheckNum = newtable.CompanySpecialCheckNum; table.ProjectLeadShiftCheckNum = newtable.ProjectLeadShiftCheckNum; table.ProjectSpecialCheckNum = newtable.ProjectSpecialCheckNum; table.ProjectMajorCheckNum = newtable.ProjectMajorCheckNum; table.NearMissNum = newtable.NearMissNum; table.RecordableEventNum = newtable.RecordableEventNum; table.GeneralAccidentNum = newtable.GeneralAccidentNum; table.MajorAccidentNum = newtable.MajorAccidentNum; table.SeriousAccidentNum = newtable.SeriousAccidentNum; table.SpecialSeriousAccidentNum = newtable.SpecialSeriousAccidentNum; table.CompanyComprehensivePlanNum = newtable.CompanyComprehensivePlanNum; table.CompanySpecialPlanNum = newtable.CompanySpecialPlanNum; table.CompanyOnSiteDisposalPlan = newtable.CompanyOnSiteDisposalPlan; table.CompanyDrillNum = newtable.CompanyDrillNum; table.ProjectComprehensivePlanNum = newtable.ProjectComprehensivePlanNum; table.ProjectSpecialPlanNum = newtable.ProjectSpecialPlanNum; table.ProjectOnSiteDisposalPlan = newtable.ProjectOnSiteDisposalPlan; table.ProjectDrillNum = newtable.ProjectDrillNum; table.CostExtract = newtable.CostExtract; table.CostUse = newtable.CostUse; table.UseEquipmentNum = newtable.UseEquipmentNum; table.SpecialEquipmentNum = newtable.SpecialEquipmentNum; table.LicensesNum = newtable.LicensesNum; table.LicensesCloseNum = newtable.LicensesCloseNum; table.GeneralClosedNum = newtable.GeneralClosedNum; table.GeneralNotClosedNum = newtable.GeneralNotClosedNum; table.MajorClosedNum = newtable.MajorClosedNum; table.MajorNotClosedNum = newtable.MajorNotClosedNum; table.GeneralRiskNum = newtable.GeneralRiskNum; table.LowRiskNum = newtable.LowRiskNum; table.MediumRiskNum = newtable.MediumRiskNum; table.HighRiskNum = newtable.HighRiskNum; table.CompletedNum = newtable.CompletedNum; table.TrainPersonNum = newtable.TrainPersonNum; table.ConstructionNum = newtable.ConstructionNum; table.FinishedNum = newtable.FinishedNum; table.SuperCompletedNum = newtable.SuperCompletedNum; table.SuperTrainPersonNum = newtable.SuperTrainPersonNum; table.SuperConstructionNum = newtable.SuperConstructionNum; table.SuperFinishedNum = newtable.SuperFinishedNum; table.State = newtable.State; table.CreateMan = newtable.CreateMan; table.CreateDate = newtable.CreateDate; db.SubmitChanges(); } } } /// /// 获取企业总部总监人数 /// /// public static int GetHeadOfficeInspectorGeneralNum() { var unitId = string.Empty; var thisUnit = CommonService.GetIsThisUnit(); if (thisUnit != null) unitId = thisUnit.UnitId; var result = (from x in Funs.DB.Person_CompanyBranchPerson where x.IsOnJob == true && x.WorkPostId == Const.WorkPost_HSSEDirector && x.UnitId == unitId select x).Count(); return result; } /// /// 获取企业总部专职人数 /// /// public static int GetHeadOfficeFullTimeNum() { var unitId = string.Empty; var thisUnit = CommonService.GetIsThisUnit(); if (thisUnit != null) unitId = thisUnit.UnitId; var result = (from x in Funs.DB.Person_CompanyBranchPerson join y in Funs.DB.Base_WorkPost on x.WorkPostId equals y.WorkPostId where x.IsOnJob == true && y.IsHsse == true && x.UnitId == unitId select x).Count(); return result; } /// /// 获取分支机构总监人数 /// /// public static int GetBranchInspectorGeneralNum() { var unitId = string.Empty; var thisUnit = CommonService.GetIsThisUnit(); if (thisUnit != null) unitId = thisUnit.UnitId; var result = (from x in Funs.DB.Person_CompanyBranchPerson where x.IsOnJob == true && x.WorkPostId == Const.WorkPost_HSSEDirector && x.UnitId != unitId select x).Count(); return result; } /// /// 获取分支机构专职人数 /// /// public static int GetBranchFullTimeNum() { var unitId = string.Empty; var thisUnit = CommonService.GetIsThisUnit(); if (thisUnit != null) unitId = thisUnit.UnitId; var result = (from x in Funs.DB.Person_CompanyBranchPerson join y in Funs.DB.Base_WorkPost on x.WorkPostId equals y.WorkPostId where x.IsOnJob == true && y.IsHsse == true && x.UnitId != unitId select x).Count(); return result; } /// /// 获取企业安委会会议数 /// /// public static int GetSafetyCommitteeMeetingNum() { var result = (from x in Funs.DB.Meeting_CompanySafetyMeeting where x.CompileDate > Const.DtmarkTime select x) .Count(); return result; } /// /// 获取企业专题会议数 /// /// public static int GetEnterpriseTopicsMeetingNum() { var result = (from x in Funs.DB.Meeting_CompanySpecialMeeting where x.CompileDate > Const.DtmarkTime select x).Count(); return result; } /// /// 获取企业负责人带班检查次数 /// /// public static int GetCompanyLeadShiftCheckNum() { var result = (from x in Funs.DB.Supervise_SuperviseCheckReport where x.CheckType == "1" && x.CheckDate > Const.DtmarkTime select x).Count(); return result; } /// /// 获取企业综合检查次数 /// /// public static int GetCompanyComprehensiveCheckNum() { var result = (from x in Funs.DB.Supervise_SuperviseCheckReport where x.CheckType == "2" && x.CheckDate > Const.DtmarkTime select x).Count(); return result; } /// /// 获取企业专项检查次数 /// /// public static int GetCompanySpecialCheckNum() { var result = (from x in Funs.DB.Supervise_SuperviseCheckReport where x.CheckType == "3" && x.CheckDate > Const.DtmarkTime select x).Count(); return result; } /// /// 获取企业级综合预案数 /// /// public static int GetCompanyComprehensivePlanNum() { var result = (from x in Funs.DB.Emergency_EmergencyList_Unit join y in Funs.DB.Base_EmergencyType on x.EmergencyTypeId equals y.EmergencyTypeId where y.EmergencyTypeName.Contains("综合") && x.CompileDate > Const.DtmarkTime select x).Count(); return result; } /// /// 获取企业级专项预案数 /// /// public static int GetCompanySpecialPlanNum() { var result = (from x in Funs.DB.Emergency_EmergencyList_Unit join y in Funs.DB.Base_EmergencyType on x.EmergencyTypeId equals y.EmergencyTypeId where y.EmergencyTypeName.Contains("专项") && x.CompileDate > Const.DtmarkTime select x).Count(); return result; } /// /// 获取企业级现场处置预案 /// /// public static int GetCompanyOnSiteDisposalPlan() { var result = (from x in Funs.DB.Emergency_EmergencyList_Unit join y in Funs.DB.Base_EmergencyType on x.EmergencyTypeId equals y.EmergencyTypeId where y.EmergencyTypeName.Contains("现场处置") && x.CompileDate > Const.DtmarkTime select x).Count(); return result; } /// /// 获取企业级演练次数 /// /// public static int GetCompanyDrillNum() { var result = (from x in Funs.DB.Emergency_DrillRecordList_Unit where x.CompileDate > Const.DtmarkTime select x).Count(); return result; } #region 获取列表 /// /// 记录数 /// public static int Count { get; set; } public static List GetHSSEData_HSSEByModle(HSSEData_HSSE table) { var db = Funs.DB; var q = from x in db.HSSEData_HSSE where (string.IsNullOrEmpty(table.Id) || x.Id.Contains(table.Id)) && (string.IsNullOrEmpty(table.UnitId) || x.UnitId.Contains(table.UnitId)) && (string.IsNullOrEmpty(table.CollCropCode) || x.CollCropCode.Contains(table.CollCropCode)) && (string.IsNullOrEmpty(table.UnitName) || x.UnitName.Contains(table.UnitName)) orderby x.ReportDate descending select x ; return q.ToList(); } // ReSharper disable once InvalidXmlDocComment /// /// public static IEnumerable GetListData(HSSEData_HSSE table, Grid Grid1) { var q = GetHSSEData_HSSEByModle(table); Count = q.Count(); if (Count == 0) return null; // q = SortConditionHelper.SortingAndPaging(q, Grid1.SortField, Grid1.SortDirection, Grid1.PageIndex, Grid1.PageSize); return from x in q select new { x.Id, x.UnitId, x.CollCropCode, x.UnitName, x.ReportDate, x.BeUnderConstructionNum, x.ShutdownNum, x.JoinConstructionPersonNum, x.MajorProjectsUnderConstructionNum, x.TotalWorkingHour, x.LostWorkingHour, x.SafeWorkingHour, x.SafeTrainNum, x.SpecialTrainNum, x.SpecialOperationTrainNum, x.TotalEnergyConsumption, x.IncomeComprehensiveEnergyConsumption, x.NewWaterConsumption, x.HeadOfficeInspectorGeneralNum, x.HeadOfficeFullTimeNum, x.BranchInspectorGeneralNum, x.BranchFullTimeNum, x.ProjectInspectorGeneralNum, x.ProjectFullTimeNum, x.ProjectSafetyMonitorNum, x.SafetyInjectionEngineer, x.CertificateANum, x.CertificateBNum, x.CertificateCNum, x.SafetyCommitteeMeetingNum, x.EnterpriseTopicsMeetingNum, x.ProjectSafetyLeadingGroupMeetingNum, x.ProjectSafetyMeetingNum, x.CompanyLeadShiftCheckNum, x.CompanyComprehensiveCheckNum, x.CompanySpecialCheckNum, x.ProjectLeadShiftCheckNum, x.ProjectSpecialCheckNum, x.ProjectMajorCheckNum, x.NearMissNum, x.RecordableEventNum, x.GeneralAccidentNum, x.MajorAccidentNum, x.SeriousAccidentNum, x.SpecialSeriousAccidentNum, x.CompanyComprehensivePlanNum, x.CompanySpecialPlanNum, x.CompanyOnSiteDisposalPlan, x.CompanyDrillNum, x.ProjectComprehensivePlanNum, x.ProjectSpecialPlanNum, x.ProjectOnSiteDisposalPlan, x.ProjectDrillNum, x.CostExtract, x.CostUse, x.UseEquipmentNum, x.SpecialEquipmentNum, x.LicensesNum, x.LicensesCloseNum, x.GeneralClosedNum, x.GeneralNotClosedNum, x.MajorClosedNum, x.MajorNotClosedNum, x.GeneralRiskNum, x.LowRiskNum, x.MediumRiskNum, x.HighRiskNum, x.CompletedNum, x.TrainPersonNum, x.ConstructionNum, x.FinishedNum, x.SuperCompletedNum, x.SuperTrainPersonNum, x.SuperConstructionNum, x.SuperFinishedNum, x.State, x.CreateDate, x.CreateMan }; } #endregion 获取列表 } }