using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Web.Http; using Aspose.Words.Lists; using BLL; using Model.Customization._7HJ; using System; using System.Collections; using System.Globalization; using Model; using System.Web; namespace WebAPI.Controllers.Customization._7HJ { public class Api_7HJ_HsseController : ApiController { #region 安全人工时 /// /// 获取项目安全人工时数据列表 /// /// /// public Model.ResponeData getSecureHoursByProjectId(string projectId) { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { var responeData = new Model.ResponeData(); try { var getLists = (from x in db.SitePerson_DayReport join y in db.Base_Project on x.ProjectId equals y.ProjectId where (y.ProjectState == Const.ProjectState_1 && x.ProjectId == projectId && x.CompileDate > Funs.minSysDate) select new { x.DayReportId, x.CompileDate, SumCost = (from item in db.SitePerson_DayReportDetail where item.DayReportId == x.DayReportId select item.PersonWorkTime ?? 0m).Sum() }).OrderByDescending(x => x.CompileDate).ToList(); responeData.data = new { getLists }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } } /// /// 根据项目获取安全人工时明细 /// /// /// public Model.ResponeData getSecureHoursById(string id) { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { Model.ResponeData responeData = new Model.ResponeData(); try { var getLists = (from x in db.SitePerson_DayReportDetail join y in db.Base_Unit on x.UnitId equals y.UnitId where (x.DayReportId == id) select new { y.UnitName, x.PersonWorkTime, }).ToList(); responeData.data = new { getLists }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } } #endregion #region 安全费用 /// /// 根据项目获取安全费用支出数据列表 /// /// /// public Model.ResponeData getSecurityCostByProjectId(string projectId) { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { var responeData = new Model.ResponeData(); try { string timeString = "2023-01-01 00:00:00"; DateTime timeDate = DateTime.Parse(timeString); var getLists = ( from c in db.CostGoods_CostSmallDetail join p in db.Base_Project on c.ProjectId equals p.ProjectId into pGroup from p in pGroup.DefaultIfEmpty() join u in db.Base_Unit on c.UnitId equals u.UnitId into unitGroup from unit in unitGroup.DefaultIfEmpty() where (c.ProjectId == projectId && c.CompileDate > timeDate) let sumCost = ( from item in db.CostGoods_CostSmallDetailItem where (item.CostSmallDetailId == c.CostSmallDetailId) select item.CostMoney ?? 0m).Sum() * 1.0m / 10000 select new Model.Customization._7HJ.SecurityCostInfo { CostSmallDetailId = c.CostSmallDetailId, ProjectId = p.ProjectId, ProjectCode = p.ProjectCode, ProjectName = p.ProjectName, UnitId = c.UnitId, UnitName = unit.UnitName, Months = c.Months, SUMCost = sumCost, } ).ToList(); Debug.WriteLine(getLists.Count()); responeData.data = new { getLists }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } } /// /// 根据主键获取安全费用明细 /// /// /// public Model.ResponeData getSecurityCostById(string id) { var responeData = new Model.ResponeData(); try { Model.Customization._7HJ.SecurityCostData securityCostData = new Model.Customization._7HJ.SecurityCostData(); CostGoods_CostSmallDetail costSmallDetail = BLL.CostSmallDetailService.GetCostSmallDetailById(id); if (costSmallDetail != null) { securityCostData.CostSmallDetailId = costSmallDetail.CostSmallDetailId; securityCostData.CostSmallDetailCode = CodeRecordsService.ReturnCodeByDataId(id); if (costSmallDetail.Months != null) { securityCostData.Months = string.Format("{0:yyyy-MM}", costSmallDetail.Months); } if (!string.IsNullOrEmpty(costSmallDetail.UnitId)) { Model.Base_Unit unit = BLL.UnitService.GetUnitByUnitId(costSmallDetail.UnitId); if (unit != null) { securityCostData.UnitName = unit.UnitName; } } if (costSmallDetail.ReportDate != null) { securityCostData.ReportDate = string.Format("{0:yyyy-MM-dd}", costSmallDetail.ReportDate); } decimal totalA = 0, totalB = 0, totalProjectA = 0, totalProjectB = 0; Model.Base_Project project = BLL.ProjectService.GetProjectByProjectId(costSmallDetail.ProjectId); if (project != null && costSmallDetail.Months.HasValue) { List orderItems = new List(); List projectDetails = BLL.CostSmallDetailItemService.GetCostDetailsByUnitId(costSmallDetail.ProjectId, costSmallDetail.UnitId, project.StartDate, costSmallDetail.Months); List details = BLL.CostSmallDetailItemService.GetCostSmallDetailItemByCostSmallDetailId(id); Model.CostGoods_CostSmallDetailItem a1 = details.FirstOrDefault(x => x.CostType == "A1"); if (a1 != null) { Model.Customization._7HJ.SecurityCostData.OrderItem orderItem = new Model.Customization._7HJ.SecurityCostData.OrderItem(); orderItem.CostType = "A1"; orderItem.CostName = "基础管理"; orderItem.CostMoney = (a1.CostMoney ?? 0).ToString(); totalA += Funs.GetNewDecimalOrZero(orderItem.CostMoney); orderItem.ProjectCostMoney = ((from x in projectDetails where x.CostType == "A1" select x.CostMoney ?? 0).Sum() + a1.CostMoney ?? 0).ToString(); totalProjectA += Funs.GetNewDecimalOrZero(orderItem.ProjectCostMoney); orderItem.CostDef = a1.CostDef; orderItems.Add(orderItem); } Model.CostGoods_CostSmallDetailItem a2 = details.FirstOrDefault(x => x.CostType == "A2"); if (a2 != null) { Model.Customization._7HJ.SecurityCostData.OrderItem orderItem = new Model.Customization._7HJ.SecurityCostData.OrderItem(); orderItem.CostType = "A2"; orderItem.CostName = "安全技术"; orderItem.CostMoney = (a2.CostMoney ?? 0).ToString(); totalA += Funs.GetNewDecimalOrZero(orderItem.CostMoney); orderItem.ProjectCostMoney = ((from x in projectDetails where x.CostType == "A2" select x.CostMoney ?? 0).Sum() + a2.CostMoney ?? 0).ToString(); totalProjectA += Funs.GetNewDecimalOrZero(orderItem.ProjectCostMoney); orderItem.CostDef = a2.CostDef; orderItems.Add(orderItem); } Model.CostGoods_CostSmallDetailItem a3 = details.FirstOrDefault(x => x.CostType == "A3"); if (a3 != null) { Model.Customization._7HJ.SecurityCostData.OrderItem orderItem = new Model.Customization._7HJ.SecurityCostData.OrderItem(); orderItem.CostType = "A3"; orderItem.CostName = "职业健康"; orderItem.CostMoney = (a3.CostMoney ?? 0).ToString(); totalA += Funs.GetNewDecimalOrZero(orderItem.CostMoney); orderItem.ProjectCostMoney = ((from x in projectDetails where x.CostType == "A3" select x.CostMoney ?? 0).Sum() + a3.CostMoney ?? 0).ToString(); totalProjectA += Funs.GetNewDecimalOrZero(orderItem.ProjectCostMoney); orderItem.CostDef = a3.CostDef; orderItems.Add(orderItem); } Model.CostGoods_CostSmallDetailItem a4 = details.FirstOrDefault(x => x.CostType == "A4"); if (a4 != null) { Model.Customization._7HJ.SecurityCostData.OrderItem orderItem = new Model.Customization._7HJ.SecurityCostData.OrderItem(); orderItem.CostType = "A4"; orderItem.CostName = "安全防护"; orderItem.CostMoney = (a4.CostMoney ?? 0).ToString(); totalA += Funs.GetNewDecimalOrZero(orderItem.CostMoney); orderItem.ProjectCostMoney = ((from x in projectDetails where x.CostType == "A4" select x.CostMoney ?? 0).Sum() + a4.CostMoney ?? 0).ToString(); totalProjectA += Funs.GetNewDecimalOrZero(orderItem.ProjectCostMoney); orderItem.CostDef = a4.CostDef; orderItems.Add(orderItem); } Model.CostGoods_CostSmallDetailItem a5 = details.FirstOrDefault(x => x.CostType == "A5"); if (a5 != null) { Model.Customization._7HJ.SecurityCostData.OrderItem orderItem = new Model.Customization._7HJ.SecurityCostData.OrderItem(); orderItem.CostType = "A5"; orderItem.CostName = "化工试车"; orderItem.CostMoney = (a5.CostMoney ?? 0).ToString(); totalA += Funs.GetNewDecimalOrZero(orderItem.CostMoney); orderItem.ProjectCostMoney = ((from x in projectDetails where x.CostType == "A5" select x.CostMoney ?? 0).Sum() + a5.CostMoney ?? 0).ToString(); totalProjectA += Funs.GetNewDecimalOrZero(orderItem.ProjectCostMoney); orderItem.CostDef = a5.CostDef; orderItems.Add(orderItem); } Model.CostGoods_CostSmallDetailItem a6 = details.FirstOrDefault(x => x.CostType == "A6"); if (a6 != null) { Model.Customization._7HJ.SecurityCostData.OrderItem orderItem = new Model.Customization._7HJ.SecurityCostData.OrderItem(); orderItem.CostType = "A6"; orderItem.CostName = "教育培训"; orderItem.CostMoney = (a6.CostMoney ?? 0).ToString(); totalA += Funs.GetNewDecimalOrZero(orderItem.CostMoney); orderItem.ProjectCostMoney = ((from x in projectDetails where x.CostType == "A6" select x.CostMoney ?? 0).Sum() + a6.CostMoney ?? 0).ToString(); totalProjectA += Funs.GetNewDecimalOrZero(orderItem.ProjectCostMoney); orderItem.CostDef = a6.CostDef; orderItems.Add(orderItem); } securityCostData.nbA = totalA.ToString(); securityCostData.nbProjectA = totalProjectA.ToString(); Model.CostGoods_CostSmallDetailItem b1 = details.FirstOrDefault(x => x.CostType == "B1"); if (b1 != null) { Model.Customization._7HJ.SecurityCostData.OrderItem orderItem = new Model.Customization._7HJ.SecurityCostData.OrderItem(); orderItem.CostType = "B1"; orderItem.CostName = "文明施工"; orderItem.CostMoney = (b1.CostMoney ?? 0).ToString(); totalB += Funs.GetNewDecimalOrZero(orderItem.CostMoney); orderItem.ProjectCostMoney = ((from x in projectDetails where x.CostType == "B1" select x.CostMoney ?? 0).Sum() + b1.CostMoney ?? 0).ToString(); totalProjectB += Funs.GetNewDecimalOrZero(orderItem.ProjectCostMoney); orderItem.CostDef = b1.CostDef; orderItems.Add(orderItem); } Model.CostGoods_CostSmallDetailItem b2 = details.FirstOrDefault(x => x.CostType == "B2"); if (b2 != null) { Model.Customization._7HJ.SecurityCostData.OrderItem orderItem = new Model.Customization._7HJ.SecurityCostData.OrderItem(); orderItem.CostType = "B2"; orderItem.CostName = "临时设施"; orderItem.CostMoney = (b2.CostMoney ?? 0).ToString(); totalB += Funs.GetNewDecimalOrZero(orderItem.CostMoney); orderItem.ProjectCostMoney = ((from x in projectDetails where x.CostType == "B2" select x.CostMoney ?? 0).Sum() + b2.CostMoney ?? 0).ToString(); totalProjectB += Funs.GetNewDecimalOrZero(orderItem.ProjectCostMoney); orderItem.CostDef = b2.CostDef; orderItems.Add(orderItem); } Model.CostGoods_CostSmallDetailItem b3 = details.FirstOrDefault(x => x.CostType == "B3"); if (b3 != null) { Model.Customization._7HJ.SecurityCostData.OrderItem orderItem = new Model.Customization._7HJ.SecurityCostData.OrderItem(); orderItem.CostType = "B3"; orderItem.CostName = "环境保护"; orderItem.CostMoney = (b3.CostMoney ?? 0).ToString(); totalB += Funs.GetNewDecimalOrZero(orderItem.CostMoney); orderItem.ProjectCostMoney = ((from x in projectDetails where x.CostType == "B3" select x.CostMoney ?? 0).Sum() + b3.CostMoney ?? 0).ToString(); totalProjectB += Funs.GetNewDecimalOrZero(orderItem.ProjectCostMoney); orderItem.CostDef = b3.CostDef; orderItems.Add(orderItem); } securityCostData.nbB = totalB.ToString(); securityCostData.nbProjectB = totalProjectB.ToString(); securityCostData.nbAB = (totalA + totalB).ToString(); securityCostData.nbProjectAB = (totalProjectA + totalProjectB).ToString(); securityCostData.OrderItems = orderItems; } } responeData.data = new { securityCostData }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } #endregion #region 安全事故及事件 /// /// 根据项目获取HSSE事故(对人员记录)数据列表 /// /// /// public Model.ResponeData getAccidentPersonRecordByProjectId(string projectId) { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { var responeData = new Model.ResponeData(); try { var getLists = (from AccidentPersonRecord in db.Accident_AccidentPersonRecord join AccidentType in db.Base_AccidentType on AccidentPersonRecord.AccidentTypeId equals AccidentType.AccidentTypeId into accidentTypeJoin from AccidentType in accidentTypeJoin.DefaultIfEmpty() join WorkArea in db.WBS_UnitWork on AccidentPersonRecord.WorkAreaId equals WorkArea.UnitWorkId into workAreaJoin from WorkArea in workAreaJoin.DefaultIfEmpty() join Person in db.SitePerson_Person on AccidentPersonRecord.PersonId equals Person.PersonId into personJoin from Person in personJoin.DefaultIfEmpty() join WorkPost in db.Base_WorkPost on Person.WorkPostId equals WorkPost.WorkPostId into workPostJoin from WorkPost in workPostJoin.DefaultIfEmpty() join FlowOperate in db.Sys_FlowOperate on AccidentPersonRecord.AccidentPersonRecordId equals FlowOperate.DataId into flowOperateJoin from FlowOperate in flowOperateJoin.DefaultIfEmpty() join OperateUser in db.Sys_User on FlowOperate.OperaterId equals OperateUser.UserId into operateUserJoin from OperateUser in operateUserJoin.DefaultIfEmpty() join Users in db.Sys_User on AccidentPersonRecord.CompileMan equals Users.UserId into usersJoin from Users in usersJoin.DefaultIfEmpty() where AccidentPersonRecord.ProjectId == projectId select new { AccidentPersonRecord.AccidentPersonRecordId, AccidentPersonRecord.ProjectId, AccidentPersonRecord.AccidentTypeId, AccidentPersonRecord.WorkAreaId, AccidentPersonRecord.AccidentDate, AccidentPersonRecord.PersonId, AccidentPersonRecord.Injury, AccidentPersonRecord.InjuryPart, AccidentPersonRecord.HssePersons, AccidentPersonRecord.InjuryResult, AccidentPersonRecord.PreventiveAction, AccidentPersonRecord.HandleOpinion, AccidentPersonRecord.FileContent, AccidentPersonRecord.CompileMan, AccidentPersonRecord.CompileDate, AccidentPersonRecord.States, AccidentType.AccidentTypeName, WorkAreaName = WorkArea.UnitWorkName, Person.PersonName, Person.CardNo, Person.IdentityCard, WorkPost.WorkPostName, FlowOperateName = (AccidentPersonRecord.States == "0" || AccidentPersonRecord.States == null) ? "待[" + OperateUser.UserName + "]提交" : (AccidentPersonRecord.States == "2") ? "审核/审批完成" : "待[" + OperateUser.UserName + "]办理" } ).ToList(); Debug.WriteLine(getLists.Count()); responeData.data = new { getLists }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } } /// /// 根据主键获取HSSE事故(对人员记录)明细 /// /// /// public Model.ResponeData getAccidentPersonRecordById(string id) { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { var responeData = new Model.ResponeData(); try { Dictionary dictionary = new Dictionary(); Model.Accident_AccidentPersonRecord accidentPersonRecord = BLL.AccidentPersonRecordService.GetAccidentPersonRecordById(id); if (accidentPersonRecord != null) { dictionary.Add("AccidentPersonRecordId", accidentPersonRecord.AccidentPersonRecordId); if (!string.IsNullOrEmpty(accidentPersonRecord.ProjectId)) { var project = BLL.ProjectService.GetProjectByProjectId(accidentPersonRecord.ProjectId); if (project != null) { dictionary.Add("ProjectName", project.ProjectName); } } if (!string.IsNullOrEmpty(accidentPersonRecord.AccidentTypeId)) { var accidentType = BLL.AccidentTypeService.GetAccidentTypeById(accidentPersonRecord.AccidentTypeId); if (accidentType != null) { dictionary.Add("AccidentTypeName", accidentType.AccidentTypeName); } } if (!string.IsNullOrEmpty(accidentPersonRecord.WorkAreaId)) { dictionary.Add("WorkAreaName", BLL.UnitWorkService.GetNameById(accidentPersonRecord.WorkAreaId)); } if (accidentPersonRecord.AccidentDate != null) { dictionary.Add("AccidentDate", string.Format("{0:yyyy-MM-dd}", accidentPersonRecord.AccidentDate)); } if (!string.IsNullOrEmpty(accidentPersonRecord.PersonId)) { var person = BLL.PersonService.GetPersonById(accidentPersonRecord.PersonId); if (person != null) { dictionary.Add("PersonName", person.PersonName); } } if (!string.IsNullOrEmpty(accidentPersonRecord.Injury)) { if (accidentPersonRecord.Injury == "1") { dictionary.Add("Injury", "死亡"); } else if (accidentPersonRecord.Injury == "2") { dictionary.Add("Injury", "重伤"); } else if (accidentPersonRecord.Injury == "3") { dictionary.Add("Injury", "轻伤"); } } dictionary.Add("InjuryPart", accidentPersonRecord.InjuryPart); dictionary.Add("HssePersons", accidentPersonRecord.HssePersons); dictionary.Add("InjuryResult", accidentPersonRecord.InjuryResult); dictionary.Add("PreventiveAction", accidentPersonRecord.PreventiveAction); dictionary.Add("HandleOpinion", accidentPersonRecord.HandleOpinion); dictionary.Add("FileContent", HttpUtility.HtmlDecode(accidentPersonRecord.FileContent)); } responeData.data = new { dictionary }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } } /// /// 根据项目获取事故报告登记数据列表 /// /// /// public Model.ResponeData getAccidentReportByProjectId(string projectId) { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { var responeData = new Model.ResponeData(); try { var getLists = ( from AccidentReport in db.Accident_AccidentReport join Unit in db.Base_Unit on AccidentReport.UnitId equals Unit.UnitId into UnitJoin from Unit in UnitJoin.DefaultIfEmpty() join CodeRecords in db.Sys_CodeRecords on AccidentReport.AccidentReportId equals CodeRecords.DataId into CodeRecordsJoin from CodeRecords in CodeRecordsJoin.DefaultIfEmpty() join FlowOperate in db.Sys_FlowOperate on AccidentReport.AccidentReportId equals FlowOperate.DataId into flowOperateJoin from FlowOperate in flowOperateJoin.DefaultIfEmpty() join FlowOperate2 in db.Sys_FlowOperate on AccidentReport.AccidentReportId equals FlowOperate2.DataId into flowOperate2Join from FlowOperate2 in flowOperate2Join.DefaultIfEmpty() join OperateUser in db.Sys_User on FlowOperate.OperaterId equals OperateUser.UserId into operateUserJoin from OperateUser in operateUserJoin.DefaultIfEmpty() join AccidentType in db.Sys_Const on AccidentReport.AccidentTypeId equals AccidentType.ConstValue into AccidentTypeJoin from AccidentType in AccidentTypeJoin.DefaultIfEmpty() join Users in db.Sys_User on AccidentReport.CompileMan equals Users.UserId into usersJoin from Users in usersJoin.DefaultIfEmpty() where AccidentReport.ProjectId == projectId && FlowOperate.IsClosed == false && FlowOperate2.State == "2" && AccidentType.GroupId == "AccidentReportRegistration" select new { AccidentReport.AccidentReportId, AccidentReport.ProjectId, AccidentReportCode = CodeRecords.Code, AccidentReport.UnitId, AccidentReport.FileContent, AccidentReport.CompileMan, AccidentReport.CompileDate, AccidentReport.States, AccidentReport.Abstract, AccidentReport.AccidentDate, AccidentReport.PeopleNum, AccidentReport.WorkingHoursLoss, EconomicLoss = (AccidentReport.EconomicLoss + AccidentReport.EconomicOtherLoss), AccidentReport.ReportMan, AccidentReport.ReporterUnit, AccidentReport.ReportDate, AuditDate = FlowOperate2.OperaterTime, AccidentReport.ProcessDescription, AccidentReport.EmergencyMeasures, Unit.UnitName, CompileManName = Users.UserName, AccidentTypeName = AccidentType.ConstText, AccidentReport.WorkArea, FlowOperateName = (AccidentReport.States == "0" || AccidentReport.States == null) ? "待[" + OperateUser.UserName + "]提交" : (AccidentReport.States == "2") ? "审核/审批完成" : "待[" + OperateUser.UserName + "]办理" } ).ToList(); Debug.WriteLine(getLists.Count()); responeData.data = new { getLists }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } } /// /// 根据主键获取事故报告登记明细 /// /// /// public Model.ResponeData getAccidentReportById(string id) { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { var responeData = new Model.ResponeData(); try { Dictionary dictionary = new Dictionary(); Model.Accident_AccidentReport accidentReport = BLL.AccidentReportService.GetAccidentReportById(id); if (accidentReport != null) { dictionary.Add("AccidentReportId", accidentReport.AccidentReportId); dictionary.Add("AccidentReportCode", BLL.CodeRecordsService.ReturnCodeByDataId(id)); dictionary.Add("UnitName", BLL.UnitService.GetUnitNameByUnitId(accidentReport.UnitId)); dictionary.Add("CompileManName", BLL.UserService.GetUserNameByUserId(accidentReport.CompileMan)); Model.Base_Project project = BLL.ProjectService.GetProjectByProjectId(accidentReport.ProjectId); if (project != null) { dictionary.Add("ProjectName", project.ProjectName); dictionary.Add("ProjectCode", project.ProjectCode); } if (accidentReport.CompileDate != null) { dictionary.Add("CompileDate", string.Format("{0:yyyy-MM-dd}", accidentReport.CompileDate)); } if (!string.IsNullOrEmpty(accidentReport.AccidentTypeId)) { Model.Sys_Const c = BLL.ConstValue.drpConstItemList(BLL.ConstValue.Group_AccidentReportRegistration).FirstOrDefault(x => x.ConstValue == accidentReport.AccidentTypeId); if (c != null) { dictionary.Add("AccidentTypeName", c.ConstText); } if (accidentReport.IsNotConfirm != null) { dictionary.Add("IsNotConfirm", accidentReport.IsNotConfirm == true ? "是" : "否"); } } dictionary.Add("Abstract", accidentReport.Abstract); if (accidentReport.AccidentDate != null) { dictionary.Add("AccidentDate", string.Format("{0:yyyy-MM-dd}", accidentReport.AccidentDate)); } dictionary.Add("WorkAreaName", accidentReport.WorkArea); if (accidentReport.PeopleNum != null) { dictionary.Add("PeopleNum", Convert.ToString(accidentReport.PeopleNum)); } if (accidentReport.IsNotConfirm == true) //待定 { dictionary.Add("WorkingHoursLoss", accidentReport.NotConfirmWorkingHoursLoss); dictionary.Add("EconomicLoss", accidentReport.NotConfirmEconomicLoss); dictionary.Add("EconomicOtherLoss", accidentReport.NotConfirmEconomicOtherLoss); } else { if (accidentReport.WorkingHoursLoss != null) { dictionary.Add("WorkingHoursLoss", Convert.ToString(accidentReport.WorkingHoursLoss)); } if (accidentReport.EconomicLoss != null) { dictionary.Add("EconomicLoss", Convert.ToString(accidentReport.EconomicLoss)); } if (accidentReport.EconomicOtherLoss != null) { dictionary.Add("EconomicOtherLoss", Convert.ToString(accidentReport.EconomicOtherLoss)); } } dictionary.Add("ReportMan", accidentReport.ReportMan); dictionary.Add("ReporterUnit", accidentReport.ReporterUnit); if (accidentReport.ReportDate != null) { dictionary.Add("ReportDate", string.Format("{0:yyyy-MM-dd}", accidentReport.ReportDate)); } dictionary.Add("ProcessDescription", accidentReport.ProcessDescription); dictionary.Add("EmergencyMeasures", accidentReport.EmergencyMeasures); } responeData.data = new { dictionary }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } } #endregion #region 安全监督检查 /// /// 获取安全监督检查报告数据列表 /// /// public Model.ResponeData getSuperviseCheckReportList() { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { var responeData = new Model.ResponeData(); try { var getLists = (from s in db.Supervise_SuperviseCheckReport join p in db.Base_Project on s.ProjectId equals p.ProjectId into projectJoin from pj in projectJoin.DefaultIfEmpty() join u in db.Base_Unit on s.UnitId equals u.UnitId into unitJoin from uj in unitJoin.DefaultIfEmpty() select new { s.SuperviseCheckReportId, s.SuperviseCheckReportCode, s.CheckDate, s.ProjectId, pj.ProjectName, s.UnitId, uj.UnitName, s.CheckTeam, s.EvaluationResult, s.AttachUrl, s.IsIssued, CheckTypeName = GetCheckTypeName(s.CheckType) // 方法调用以获取检查类型的名称 }).ToList(); responeData.data = new { getLists }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } } public string GetCheckTypeName(string checkType) { switch (checkType) { case "1": return "企业负责人带班检查"; case "2": return "企业综合检查"; case "3": return "企业专项检查"; default: return string.Empty; } } /// /// 根据主键查询安全监督检查报告明细 /// /// /// public Model.ResponeData getSuperviseCheckReportById(string id) { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { Model.ResponeData responeData = new Model.ResponeData(); try { Hashtable tb = new Hashtable(); var superviseCheckReport = BLL.SuperviseCheckReportService.GetSuperviseCheckReportById(id); if (superviseCheckReport != null) { tb.Add("SuperviseCheckReportId", superviseCheckReport.SuperviseCheckReportId); tb.Add("SuperviseCheckReportCode", superviseCheckReport.SuperviseCheckReportCode); if (superviseCheckReport.CheckDate != null) { tb.Add("CheckDate", string.Format("{0:yyyy-MM-dd}", superviseCheckReport.CheckDate)); } if (!string.IsNullOrEmpty(superviseCheckReport.CheckType)) { tb.Add("CheckType", superviseCheckReport.CheckType); } if (!string.IsNullOrEmpty(superviseCheckReport.ProjectId)) { tb.Add("projectId", superviseCheckReport.ProjectId); if (!string.IsNullOrEmpty(superviseCheckReport.UnitId)) { tb.Add("UnitId", superviseCheckReport.UnitId); } } tb.Add("CheckTeam", superviseCheckReport.CheckTeam); // superviseCheckReportItems = (from x in Funs.DB.View_Supervise_SuperviseCheckReportItem where x.SuperviseCheckReportId == this.SuperviseCheckReportId orderby x.RectifyCode select x).ToList(); var report = BLL.SuperviseCheckReportService.GetSuperviseCheckReportById(id); if (report != null && report.IsIssued == "1") //已下发 { // this.btnSave.Hidden = true; // this.btnSelect.Hidden = true; // Grid1.Columns[10].Hidden = true; } } responeData.data = new { tb }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } } /// /// 根据项目获取领导待办检查数据列表 /// /// public Model.ResponeData getLeaderCheckByProjectId(string projectId) { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { var responeData = new Model.ResponeData(); try { IQueryable getDataList = from x in db.Check_ProjectLeaderCheck select x; if (!string.IsNullOrEmpty(projectId)) { getDataList = getDataList.Where(x => x.ProjectId == projectId); } if (getDataList.Count() == 0) { return null; } var getLists = (from x in getDataList join y in db.Base_Project on x.ProjectId equals y.ProjectId into ps from y in ps.DefaultIfEmpty() where (y.IsDelete == null || y.IsDelete == false) select new { x.ProjectLeaderCheckId, x.ProjectId, db.Base_Project.First(u => u.ProjectId == x.ProjectId).ProjectName, x.CheckCode, x.UnitIds, x.LeaderIds, x.LeaderNames, x.QuestionDef, x.CheckDate, x.IsHoldMeet, IsHoldMeetName = x.IsHoldMeet == true ? "是" : "否", x.Requirement, }).ToList(); responeData.data = new { getLists }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } } /// /// 根据主键查询领导待办检查明细 /// /// /// public Model.ResponeData getLeaderCheckById(string id) { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { Model.ResponeData responeData = new Model.ResponeData(); try { Dictionary dictionary = new Dictionary(); var getProjectLeaderCheck = BLL.Check_ProjectLeaderCheckService.GetProjectLeaderCheckById(id); if (getProjectLeaderCheck != null) { dictionary.Add("ProjectLeaderCheckId", getProjectLeaderCheck.ProjectLeaderCheckId); dictionary.Add("Units", UnitService.getUnitNamesUnitIds(getProjectLeaderCheck.UnitIds)); dictionary.Add("LeaderIds", UserService.getUserNamesUserIds(getProjectLeaderCheck.LeaderIds)); dictionary.Add("CheckCode", getProjectLeaderCheck.CheckCode); dictionary.Add("CheckDate", string.Format("{0:yyyy-MM-dd}", getProjectLeaderCheck.CheckDate)); dictionary.Add("IsHoldMeet", getProjectLeaderCheck.IsHoldMeet == true ? "是" : "否"); dictionary.Add("QuestionDef", getProjectLeaderCheck.QuestionDef); dictionary.Add("Requirement", getProjectLeaderCheck.Requirement); dictionary.Add("LeaderName", getProjectLeaderCheck.LeaderNames); } responeData.data = new { dictionary }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } } /// /// 根据项目获取日常巡检数据列表 /// /// public Model.ResponeData getDayCheckByProjectId(string projectId) { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { var responeData = new Model.ResponeData(); try { var getLists = (from x in db.View_Hazard_HazardRegister where x.ProblemTypes == "1" && x.ProjectId == projectId select x).ToList(); responeData.data = new { getLists }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } } /// /// 根据主键获取日常巡检明细 /// /// /// public Model.ResponeData getDayCheckById(string id) { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { Model.ResponeData responeData = new Model.ResponeData(); try { Dictionary dictionary = new Dictionary(); Model.View_Hazard_HazardRegister registration = (from x in Funs.DB.View_Hazard_HazardRegister where x.HazardRegisterId == id select x) .FirstOrDefault(); if (registration != null) { dictionary.Add("HazardRegisterId", registration.HazardRegisterId); dictionary.Add("WorkAreaName", registration.WorkAreaName); dictionary.Add("ResponsibilityUnitName", registration.ResponsibilityUnitName); dictionary.Add("RegisterTypesName", registration.RegisterTypesName); dictionary.Add("ProblemDescription", registration.RegisterDef); dictionary.Add("TakeSteps", registration.Rectification); dictionary.Add("ResponsibilityManName", registration.ResponsibilityManName); dictionary.Add("RectificationPeriod", string.Format("{0:yyyy-MM-dd HH:mm:ss}", registration.RectificationPeriod)); dictionary.Add("CheckManName", registration.CheckManName); dictionary.Add("CheckTime", string.Format("{0:yyyy-MM-dd HH:mm:ss}", registration.CheckTime)); dictionary.Add("RectificationTime", string.Format("{0:yyyy-MM-dd HH:mm:ss}", registration.RectificationTime)); dictionary.Add("States", registration.StatesStr); dictionary.Add("ImageUrl", registration.ImageUrl); dictionary.Add("RiskLevel", registration.Risk_Level); dictionary.Add("RectificationImageUrl", registration.RectificationImageUrl); } responeData.data = new { dictionary }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } } /// /// 根据项目获取专项检查数据列表 /// /// /// public Model.ResponeData getCheckSpecialByProjectId(string projectId) { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { var responeData = new Model.ResponeData(); try { var getLists = ( from CheckSpecial in db.Check_CheckSpecial join CodeRecords in db.Sys_CodeRecords on CheckSpecial.CheckSpecialId equals CodeRecords.DataId into CodeRecordsInfo from CodeRecords in CodeRecordsInfo.DefaultIfEmpty() join CheckItemSet in db.Technique_CheckItemSet on CheckSpecial.CheckItemSetId equals CheckItemSet.CheckItemSetId into CheckItemSetInfo from CheckItemSet in CheckItemSetInfo.DefaultIfEmpty() where (CheckSpecial.ProjectId == projectId) select new { CheckSpecial.CheckSpecialId, CheckSpecialCode = CodeRecords.Code, CheckItemSet.CheckItemName, CheckSpecial.CheckTime, CheckTypeName = CheckSpecial.CheckType == "1" ? "安全周检" : CheckSpecial.CheckType == "2" ? "安全月检" : CheckSpecial.CheckType == "3" ? "节假日安全检查" : CheckSpecial.CheckType == "0" ? "专项检查" : "专项检查", StatesName = CheckSpecial.States == "2" ? "已完成" : CheckSpecial.States == "1" ? "待整改" : "待提交", } ).ToList(); Debug.WriteLine(getLists.Count()); responeData.data = new { getLists }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } } /// /// 根据主键获取专项检查明细 /// /// /// public Model.ResponeData getCheckSpecialById(string id) { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { var responeData = new Model.ResponeData(); try { Dictionary dictionary = new Dictionary(); var checkSpecial = BLL.Check_CheckSpecialService.GetCheckSpecialByCheckSpecialId(id); if (checkSpecial != null) { dictionary.Add("CheckSpecialId", checkSpecial.CheckSpecialId); dictionary.Add("CheckSpecialCode", BLL.CodeRecordsService.ReturnCodeByDataId(id)); if (checkSpecial.CheckTime != null) { dictionary.Add("CheckDate", string.Format("{0:yyyy-MM-dd}", checkSpecial.CheckTime)); } if (!String.IsNullOrEmpty(checkSpecial.CheckType)) { dictionary.Add("Type", checkSpecial.CheckType); } dictionary.Add("PartInPersonNames", checkSpecial.PartInPersonNames); if (!string.IsNullOrEmpty(checkSpecial.CheckItemSetId)) { var getCheckItem = Funs.DB.Technique_CheckItemSet.FirstOrDefault(x => x.CheckItemSetId == checkSpecial.CheckItemSetId); dictionary.Add("SupCheckItemSet", getCheckItem.CheckItemName); } dictionary.Add("PartInPersons", checkSpecial.PartInPersons); List checkSpecialDetails = (from x in Funs.DB.View_CheckSpecialDetail where x.CheckSpecialId == id orderby x.UnitName, x.SortIndex select x).ToList(); dictionary.Add("CheckSpecialDetails", checkSpecialDetails); } responeData.data = new { dictionary }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } } #endregion #region 危大/超危大工程情况 /// /// 根据项目获取危大工程施工方案清单信息数据列表 /// /// /// public Model.ResponeData getLargerHazardByProjectId(string projectId) { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { var responeData = new Model.ResponeData(); try { var getLists = ( from LargerHazard in db.Solution_LargerHazard join FlowOperate in db.Sys_FlowOperate on LargerHazard.HazardId equals FlowOperate.DataId into fGroup from f in fGroup.DefaultIfEmpty() join OperateUser in db.Sys_User on f.OperaterId equals OperateUser.UserId into ouGroup from ou in ouGroup.DefaultIfEmpty() join Users in db.Sys_User on LargerHazard.RecardMan equals Users.UserId into uGroup from u in uGroup.DefaultIfEmpty() join Const in db.Sys_Const on LargerHazard.HazardType equals Const.ConstValue into cGroup from c in cGroup.DefaultIfEmpty() join CodeRecords in db.Sys_CodeRecords on LargerHazard.HazardId equals CodeRecords.DataId into crGroup from cr in crGroup.DefaultIfEmpty() where (LargerHazard.ProjectId == projectId && c.GroupId == "LargerHazardType" && f.IsClosed.Value) select new { LargerHazard.HazardName, LargerHazard.HazardId, LargerHazard.ProjectId, HazardCode = cr.Code, LargerHazard.Address, u.UserName, LargerHazard.ExpectedTime, LargerHazard.RecordTime, StatesStr = LargerHazard.States == "1" ? "审批完成" : LargerHazard.States == "2" ? "作业中" : LargerHazard.States == "3" ? "已关闭" : LargerHazard.States == "0" ? "已取消" : "", IsArgumentStr = LargerHazard.IsArgument.Value ? "是" : "否", TypeName = c.ConstText } ).ToList(); Debug.WriteLine(getLists.Count()); responeData.data = new { getLists }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } } /// /// 根据主键获取危大工程施工方案清单明细 /// /// /// public Model.ResponeData getLargerHazardById(string id) { var responeData = new Model.ResponeData(); try { Hashtable tb = new Hashtable(); var largerHazard = BLL.LargerHazardService.GetLargerHazardByHazardId(id); if (largerHazard != null) { tb.Add("HazardId", largerHazard.HazardId); tb.Add("LargerHazardCode", BLL.CodeRecordsService.ReturnCodeByDataId(id)); if (!string.IsNullOrEmpty(largerHazard.HazardType)) { var HazardType = ConstValue.drpConstItemList(ConstValue.Group_LargerHazardType) .FirstOrDefault(x => x.ConstValue == largerHazard.HazardType).ConstText; tb.Add("HazardType", HazardType); } tb.Add("Address", largerHazard.Address); if (largerHazard.ExpectedTime != null) { tb.Add("ExpectedTime", string.Format("{0:yyyy-MM-dd}", largerHazard.ExpectedTime)); } if (largerHazard.RecordTime != null) { tb.Add("RecordTime", string.Format("{0:yyyy-MM-dd}", largerHazard.RecordTime)); } if (largerHazard.IsArgument == true) { tb.Add("IsArgument", "是"); } else { tb.Add("IsArgument", "否"); } if (largerHazard.IsSuperLargerHazard == true) { tb.Add("IsSuperLargerHazard", "是"); } else { tb.Add("IsSuperLargerHazard", "否"); } if (largerHazard.TrainPersonNum != null) { tb.Add("TrainPersonNum", largerHazard.TrainPersonNum.ToString()); } tb.Add("States", largerHazard.States); tb.Add("Descriptions", largerHazard.Descriptions); tb.Add("Remark", HttpUtility.HtmlDecode(largerHazard.Remark)); tb.Add("HazardName", largerHazard.HazardName); } responeData.data = new { tb }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } #endregion #region 安全培训 /// /// 根据项目获取培训记录信息数据列表 /// /// /// public Model.ResponeData getTrainRecordByProjectId(string projectId) { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { var responeData = new Model.ResponeData(); try { string timeString = "2023-01-01 00:00:00"; DateTime timeDate = DateTime.Parse(timeString); var getLists = ( from t in db.EduTrain_TrainRecord join tt in db.Base_TrainType on t.TrainTypeId equals tt.TrainTypeId into ttGroup from tt in ttGroup.DefaultIfEmpty() join p in db.Base_Project on t.ProjectId equals p.ProjectId into pGroup from p in pGroup.DefaultIfEmpty() where (t.ProjectId == projectId && t.TrainStartDate > timeDate && p.ProjectState == "1" && (p.IsDelete.Value == null || !p.IsDelete.Value)) select new Model.Customization._7HJ.TrainRecordInfo { TrainingId = t.TrainingId, TrainTitle = t.TrainTitle, TrainTypeName = tt.TrainTypeName, ProjectId = p.ProjectId, ProjectCode = p.ProjectCode, ProjectName = p.ProjectName, TrainStartDate = t.TrainStartDate, TrainEndDate = t.TrainEndDate, TrainPersonNum = t.TrainPersonNum, UnitIds = t.UnitIds, IsDelete = p.IsDelete.Value, UnitNames = GetUnitNames(t.UnitIds, db.Base_Unit), } ).ToList(); Debug.WriteLine(getLists.Count()); responeData.data = new { getLists }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } } // 自定义函数模拟PATINDEX和STUFF private string GetUnitNames(string unitIds, IQueryable units) { // 使用String.Split分割UnitIds var unitIdParts = unitIds.Split(','); // 过滤出与unitIdParts匹配的UnitName var unitNames = units.Where(u => unitIdParts.Contains(u.UnitId.Trim())).Select(u => u.UnitName); // 使用String.Join拼接UnitNames return string.Join(",", unitNames); } /// /// 根据主键获取培训记录明细 /// /// /// public Model.ResponeData getTrainRecordById(string id) { var responeData = new Model.ResponeData(); try { var trainRecord = BLL.EduTrain_TrainRecordService.GetTrainingByTrainingId(id); Model.Customization._7HJ.TrainRecordData data = new Model.Customization._7HJ.TrainRecordData(); if (trainRecord != null) { data.TrainingId = trainRecord.TrainingId; data.TrainingCode = BLL.CodeRecordsService.ReturnCodeByDataId(id); Model.Base_TrainType trainType = BLL.TrainTypeService.GetTrainTypeById(trainRecord.TrainTypeId); if (trainType != null) { data.TrainType = trainType.TrainTypeName; } Model.Base_TrainLevel trainLevel = BLL.TrainLevelService.GetTrainLevelById(trainRecord.TrainLevelId); if (trainLevel != null) { data.TrainLevel = trainLevel.TrainLevelName; } data.TrainTitle = trainRecord.TrainTitle; if (!string.IsNullOrEmpty(trainRecord.UnitIds)) { string unitNames = string.Empty; string[] unitIds = trainRecord.UnitIds.Split(','); foreach (var item in unitIds) { Model.Base_Unit unit = BLL.UnitService.GetUnitByUnitId(item); if (unit != null) { unitNames += unit.UnitName + ","; } } if (!string.IsNullOrEmpty(unitNames)) { unitNames = unitNames.Substring(0, unitNames.LastIndexOf(",")); } data.UnitNames = unitNames; } if (!string.IsNullOrEmpty(trainRecord.WorkPostIds)) { string WorkPostNames = string.Empty; string[] WorkPostIds = trainRecord.WorkPostIds.Split(','); foreach (var item in WorkPostIds) { Model.Base_WorkPost WorkPost = BLL.WorkPostService.GetWorkPostById(item); if (WorkPost != null) { WorkPostNames += WorkPost.WorkPostName + ","; } } if (!string.IsNullOrEmpty(WorkPostNames)) { WorkPostNames = WorkPostNames.Substring(0, WorkPostNames.LastIndexOf(",")); } data.WorkPostIds = WorkPostNames; } data.TeachMan = trainRecord.TeachMan; data.TeachAddress = trainRecord.TeachAddress; if (trainRecord.TeachHour != null) { data.TeachHour = trainRecord.TeachHour.ToString(); } if (trainRecord.TrainStartDate != null) { data.TrainStartDate = string.Format("{0:yyyy-MM-dd}", trainRecord.TrainStartDate); } if (trainRecord.TrainPersonNum != null) { data.TrainPersonNum = Convert.ToString(trainRecord.TrainPersonNum); } data.TrainContent = trainRecord.TrainContent; data.trainRecordDetails = (from x in Funs.DB.View_EduTrain_TrainRecordDetail where x.TrainingId == id orderby x.UnitName, x.PersonName select x).ToList(); } responeData.data = new { data }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } #endregion #region 应急预案 /// /// 获取应急预案管理清单信息数据列表type=0公司应急预案,type=1项目应急预案 /// /// /// public Model.ResponeData getEmergencyPlanList(string type) { { var responeData = new Model.ResponeData(); try { var model = new List(); if (type == "0") { model = HSSEData_HSSEService.GetCompanyComprehensivePlan(); model.AddRange(HSSEData_HSSEService.GetCompanySpecialPlan()); model.AddRange(HSSEData_HSSEService.GetCompanyOnSiteDisposalPlan()); } else if (type == "1") { model = HSSEData_HSSEService.GetProjectComprehensivePlan(); model.AddRange(HSSEData_HSSEService.GetProjectSpecialPlan()); model.AddRange(HSSEData_HSSEService.GetProjectOnSiteDisposalPlan()); } responeData.data = new { model }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } } /// /// 根据主键获取应急预案管理清单明细 /// /// /// public Model.ResponeData getEmergencyPlanById(string type, string id) { { Model.ResponeData responeData = new Model.ResponeData(); try { Hashtable tb = new Hashtable(); if (type == "0") { //企业 Model.Emergency_EmergencyList_Unit EmergencyList = BLL.UnitEmergencyListService.GetEmergencyListById(id); if (EmergencyList != null) { ///读取编号 tb.Add("EmergencyCode", BLL.CodeRecordsService.ReturnCodeByDataId(id)); tb.Add("EmergencyName", EmergencyList.EmergencyName); tb.Add("EmergencyListId", EmergencyList.EmergencyListId); tb.Add("Unit", BLL.UnitService.GetUnitNameByUnitId(EmergencyList.UnitId)); var emergencyType = BLL.EmergencyTypeService.GetEmergencyTypeById(EmergencyList.EmergencyTypeId); if (emergencyType != null) { tb.Add("EmergencyType", emergencyType.EmergencyTypeName); } tb.Add("VersionCode", EmergencyList.VersionCode); tb.Add("CompileMan", BLL.UserService.GetUserNameByUserId(EmergencyList.CompileMan)); tb.Add("CompileDate", string.Format("{0:yyyy-MM-dd}", EmergencyList.CompileDate)); tb.Add("EmergencyContents", HttpUtility.HtmlDecode(EmergencyList.EmergencyContents)); } } else if (type == "1") { //项目 Model.Emergency_EmergencyList EmergencyList = BLL.EmergencyListService.GetEmergencyListById(id); if (EmergencyList != null) { ///读取编号 tb.Add("EmergencyCode", BLL.CodeRecordsService.ReturnCodeByDataId(id)); tb.Add("EmergencyName", EmergencyList.EmergencyName); tb.Add("EmergencyListId", EmergencyList.EmergencyListId); tb.Add("Unit", BLL.UnitService.GetUnitNameByUnitId(EmergencyList.UnitId)); var emergencyType1 = BLL.EmergencyTypeService.GetEmergencyTypeById(EmergencyList.EmergencyTypeId); if (emergencyType1 != null) { tb.Add("EmergencyType", emergencyType1.EmergencyTypeName); } tb.Add("VersionCode", EmergencyList.VersionCode); tb.Add("CompileMan", BLL.UserService.GetUserNameByUserId(EmergencyList.CompileMan)); tb.Add("CompileDate", string.Format("{0:yyyy-MM-dd}", EmergencyList.CompileDate)); tb.Add("EmergencyContents", HttpUtility.HtmlDecode(EmergencyList.EmergencyContents)); } } responeData.data = new { tb }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } } #endregion #region 应急演练 /// /// 获取应急演练开展情况信息数据列表type=0公司应急演练,type=1项目应急演练 /// /// /// public Model.ResponeData getEmergencyDrillList(string type) { { var responeData = new Model.ResponeData(); try { var model = new List(); if (type == "0") { model = HSSEData_HSSEService.GetCompanyDrill(); } else if (type == "1") { model = HSSEData_HSSEService.GetProjectDrill(); } responeData.data = new { model }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } } /// /// 根据主键获取应急演练开展情况明细 /// /// /// public Model.ResponeData getEmergencyDrillById(string type, string id) { { Model.ResponeData responeData = new Model.ResponeData(); try { Hashtable tb = new Hashtable(); if (type == "0") { //企业 Model.Emergency_DrillRecordList_Unit DrillRecordList = BLL.UnitDrillRecordListService.GetDrillRecordListById(id); if (DrillRecordList != null) { ///读取编号 tb.Add("DrillRecordName", DrillRecordList.DrillRecordName); tb.Add("DrillRecordListId", DrillRecordList.DrillRecordListId); tb.Add("DrillRecordDate", string.Format("{0:yyyy-MM-dd}", DrillRecordList.DrillRecordDate)); tb.Add("Units", DrillRecordList.UnitNames); tb.Add("DrillRecordCode", BLL.CodeRecordsService.ReturnCodeByDataId(id)); if (!string.IsNullOrEmpty(DrillRecordList.DrillRecordType)) { Model.Sys_Const c = BLL.ConstValue .drpConstItemList(BLL.ConstValue.Group_DrillRecordType) .FirstOrDefault(x => x.ConstValue == DrillRecordList.DrillRecordType); if (c != null) { tb.Add("DrillRecordType", c.ConstText); } } if (DrillRecordList.JointPersonNum != null) { tb.Add("JointPersonNum", DrillRecordList.JointPersonNum.ToString()); } if (DrillRecordList.DrillCost != null) { tb.Add("DrillCost", DrillRecordList.DrillCost.ToString()); } tb.Add("DrillRecordContents", HttpUtility.HtmlDecode(DrillRecordList.DrillRecordContents)); } } else if (type == "1") { //项目 Model.Emergency_DrillRecordList DrillRecordList = BLL.DrillRecordListService.GetDrillRecordListById(id); if (DrillRecordList != null) { ///读取编号 tb.Add("DrillRecordCode", BLL.CodeRecordsService.ReturnCodeByDataId(id)); tb.Add("DrillRecordName", DrillRecordList.DrillRecordName); tb.Add("DrillRecordListId", DrillRecordList.DrillRecordListId); tb.Add("DrillRecordDate", string.Format("{0:yyyy-MM-dd}", DrillRecordList.DrillRecordDate)); tb.Add("Units", DrillRecordList.UnitNames); if (!string.IsNullOrEmpty(DrillRecordList.DrillRecordType)) { Model.Sys_Const c = BLL.ConstValue .drpConstItemList(BLL.ConstValue.Group_DrillRecordType) .FirstOrDefault(x => x.ConstValue == DrillRecordList.DrillRecordType); if (c != null) { tb.Add("DrillRecordType", c.ConstText); } } if (DrillRecordList.JointPersonNum != null) { tb.Add("JointPersonNum", DrillRecordList.JointPersonNum.ToString()); } if (DrillRecordList.DrillCost != null) { tb.Add("DrillCost", DrillRecordList.DrillCost.ToString()); } tb.Add("DrillRecordContents", HttpUtility.HtmlDecode(DrillRecordList.DrillRecordContents)); } } responeData.data = new { tb }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } } #endregion #region 安全隐患整改情况 /// /// 获取项目隐患整改情况数据列表type=0重大,type=1一般 /// /// /// public Model.ResponeData getHiddenList(string type) { { var responeData = new Model.ResponeData(); try { var model = new List(); if (type == "0") { model = HSSEData_HSSEService.GetMajorHiddenRectificationOutputs(); } else if (type == "1") { model = HSSEData_HSSEService.GetGeneralHiddenRectificationOutputs(); } responeData.data = new { model }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } } /// /// 根据项目获取隐患整改明细 /// /// /// 0重大 1一般 /// 1待整改 2已整改待复查验收 3已闭环 /// public Model.ResponeData getHiddenById(string type, string projectId, string States) { using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) { Model.ResponeData responeData = new Model.ResponeData(); try { string timeString = "2023-01-01 00:00:00"; DateTime timeDate = DateTime.Parse(timeString); var query = db.View_Hazard_HazardRegister .Where(h => h.ProblemTypes == "1" && h.CheckTime > timeDate) .Where(h => h.ProjectId == projectId); if (!string.IsNullOrEmpty(States)) { var selectedState = "%" + States + "%"; query = query.Where(h => h.States.Contains(selectedState)); // 使用Contains替代LIKE } if (type == "0") { query = query.Where(h => h.Risk_Level == "重大"); } else if (type == "1") { query = query.Where(h => h.Risk_Level == "一般"); } var getLists = query.ToList(); // 执行查询并将结果转换为列表 responeData.data = new { getLists }; } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } } #endregion } }