using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Web.UI; using System.Web.UI.WebControls; using BLL; using Newtonsoft.Json.Linq; using System.Threading; using Model; namespace FineUIPro.Web.HSSE.Manager { public partial class ManagerMonthCEdit : PageBase { #region 定义项 /// /// 主键 /// public string MonthReportId { get { return (string)ViewState["MonthReportId"]; } set { ViewState["MonthReportId"] = value; } } public string AddOrUpdate { get { return (string)ViewState["AddOrUpdate"]; } set { ViewState["AddOrUpdate"] = value; } } public string ProjectId { get; set; } private static DateTime months; private static DateTime startTime; private static DateTime endTime; private static DateTime yearStartTime; private static DateTime projectStartTime; #endregion #region list集合 public List unitList = new List(); /// /// 培训情况集合 /// private static List trainSorts = new List(); /// /// 4.2检查情况集合 /// private static List checkSorts = new List(); /// /// HSE奖励与处罚 /// private static List rewardAndPunishSortCs = new List(); /// /// 4.5项目本月危大工程管理数据 /// private static List monthHazardousList = new List(); /// /// 4.6.1 应急预案发布情况 /// private static List emergencyPlanList = new List(); /// /// 4.6.2 应急演练工作情况说明 /// private static List drillRecordList = new List(); /// /// 4.10 HSE现场其他管理情况集合 /// private static List otherManagements = new List(); /// /// 5.1 五环HSE费用投入集合 /// private static List fiveExpenses = new List(); /// /// 6.3HSE目标实现情况 /// private static List galachList = new List(); /// /// 7.1 其他HSE工作计划 /// private static List otherWorkPlanCs = new List(); /// /// 8 HSE合规义务识别与评价表 /// private static List complianceObligationsCs = new List(); /// /// 本月伤害事故统计 /// private static List injuryAccidents = new List(); #endregion public List units = new List(); public Model.SGGLDB db = Funs.DB; #region 实体类 /// /// 项目本月危大工程管理数据 /// public class MonthHazardous { public string Id { get; set; } public string Category { get; set; } public int ExpertCount { get; set; } } /// /// 6.3 实体类 /// public class Galach { public string Id { get; set; } public string GoName { get; set; } public decimal GoTarget { get; set; } public string GoValue { get; set; } } #endregion #region 加载页面 protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { ProjectId = CurrUser.LoginProjectId; units = (from x in db.Project_ProjectUnit where x.ProjectId == this.ProjectId && (x.UnitType == "1" || x.UnitType == "2") orderby x.UnitType select x).ToList(); //1为总包,2为施工分包 rewardAndPunishSortCs.Clear(); trainSorts.Clear(); checkSorts.Clear(); otherManagements.Clear(); fiveExpenses.Clear(); otherWorkPlanCs.Clear(); complianceObligationsCs.Clear(); monthHazardousList.Clear(); emergencyPlanList.Clear(); drillRecordList.Clear(); injuryAccidents.Clear(); galachList.Clear(); unitList = db.Base_Unit.ToList(); MonthReportId = Request.Params["MonthReportId"]; var project = BLL.ProjectService.GetProjectByProjectId(this.CurrUser.LoginProjectId); if (!string.IsNullOrEmpty(MonthReportId)) { var model = db.Manager_MonthReportC.FirstOrDefault(x => x.MonthReportId == MonthReportId); if (model != null) { if (model.MonthReportCode != null) { this.txtPeriod.Text = Convert.ToString(model.MonthReportCode); } if (model.Months != null) { txtReportMonths.Text = string.Format("{0:yyyy-MM}", model.Months); months = Convert.ToDateTime(model.Months); } if (model.StartDate != null) { this.txtStartDate.Text = string.Format("{0:yyyy-MM-dd}", model.StartDate); } if (model.EndDate != null) { this.txtEndDate.Text = string.Format("{0:yyyy-MM-dd}", model.EndDate); } } AddOrUpdate = "update"; #region 3.本月项目现场HSE人工日统计 //本月项目现场HSE人工日统计 Model.MonthReportCHSEDay hseDay = new Model.MonthReportCHSEDay { MonthHSEDay = model.MonthHSEDay ?? 0, SumHSEDay = model.SumHSEDay ?? 0, MonthHSEWorkDay = model.MonthHSEWorkDay ?? 0, YearHSEWorkDay = model.YearHSEWorkDay ?? 0, SumHSEWorkDay = model.SumHSEWorkDay ?? 0, HseManhours = model.HseManhours ?? 0, SubcontractManHours = model.SubcontractManHours ?? 0, TotalHseManhoursYear = model.TotalHseManhoursYear ?? 0, TotalHseManhours = model.TotalHseManhours ?? 0 }; List list = new List(); list.Add(hseDay); this.gvHSEDay.DataSource = list; this.gvHSEDay.DataBind(); #endregion #region 4.1 培训情况 //培训情况 var trainSorts = BLL.TrainSortCService.GetTrainSortsByMonthReportId(MonthReportId); if (trainSorts.Count > 0) { this.gvTrainSort.DataSource = trainSorts; this.gvTrainSort.DataBind(); if (this.gvTrainSort.Rows.Count > 0) { JObject summary = new JObject(); summary.Add("TrainType", "培训人数合计:"); summary.Add("TotalPersonNum", trainSorts.Sum(x => x.TotalPersonNum)); this.gvTrainSort.SummaryData = summary; } else { this.gvTrainSort.SummaryData = null; } } #endregion #region 4.2现场HSE会议及检查统计 //检查情况 checkSorts = BLL.CheckSortCService.GetCheckSortsByMonthReportId(MonthReportId); if (checkSorts.Count > 0) { this.gvCheckSort.DataSource = checkSorts; this.gvCheckSort.DataBind(); } #endregion #region 4.3隐患 txtMonthHdangerCount.Text = model.MonthHdangerCount.ToString(); txtYearHdangerCount.Text = model.YearHdangerCount.ToString(); #endregion #region 4.4 本月项目作业许可管理数据 var PModel = db.Manager_ProjectAssignment.FirstOrDefault(x => x.MonthReportId == MonthReportId); if (PModel != null) { nbFireWorkCount.Text = PModel.FireWorkCount.ToString(); nbBreakGroundCount.Text = PModel.BreakGroundCount.ToString(); nbLimitedSpaceCount.Text = PModel.LimitedSpaceCount.ToString(); nbElectricityCount.Text = PModel.ElectricityCount.ToString(); nbHeightWorkCount.Text = PModel.HeightWorkCount.ToString(); nbRadialWork.Text = PModel.RadialWork.ToString(); nbLiftingWorkCount.Text = PModel.LiftingWorkCount.ToString(); nbNightWork.Text = PModel.NightWork.ToString(); nbMonthCount.Text = PModel.MonthCount.ToString(); nbYearCount.Text = PModel.YearCount.ToString(); nbProCount.Text = PModel.ProCount.ToString(); } #endregion #region 4.5项目本月危大工程管理数据 if (!string.IsNullOrEmpty(model.MonthExpertNoCount.ToString())) { var MonthExpertmodel = new MonthHazardous() { Id = Guid.NewGuid().ToString(), Category = "非经专家论证的危大工程数量", ExpertCount = Convert.ToInt32(model.MonthExpertNoCount) }; monthHazardousList.Add(MonthExpertmodel); } if (!string.IsNullOrEmpty(model.MonthExpertCount.ToString())) { var MonthExpertmodel = new MonthHazardous() { Id = Guid.NewGuid().ToString(), Category = "经专家论证的危大工程数量", ExpertCount = Convert.ToInt32(model.MonthExpertCount) }; monthHazardousList.Add(MonthExpertmodel); } if (monthHazardousList.Count > 0) { MonthHazardousGrid.DataSource = monthHazardousList; MonthHazardousGrid.DataBind(); } #endregion #region 4.6.1 应急预案发布情况 emergencyPlanList = db.Manager_EmergencyPlan.Where(x => x.MonthReportId == MonthReportId).OrderBy(x => x.SortIndex).ToList(); if (emergencyPlanList.Count > 0) { EmergencyPlanGrid.DataSource = emergencyPlanList; EmergencyPlanGrid.DataBind(); } #endregion #region 4.6.2 应急演练工作情况说明 drillRecordList = db.Manager_DrillRecordList.Where(x => x.MonthReportId == MonthReportId).OrderBy(x => x.Ddate).ToList(); if (drillRecordList.Count > 0) { DrillRecordListGrid.DataSource = drillRecordList; DrillRecordListGrid.DataBind(); } else { DrillRecordListGrid.EmptyText = "
暂无数据
"; } #endregion #region 4.6.3其他应急管理工作描述 txtEmergencyManagementWorkDef.Text = model.EmergencyManagementWorkDef; #endregion #region 4.7HSE奖励与处罚 //HSE奖励与处罚 rewardAndPunishSortCs = BLL.RewardAndPunishSortCService.GetRewardAndPunishSortCByMontReportId(MonthReportId); if (rewardAndPunishSortCs.Count > 0) { this.gvRewardSortAndPunish.DataSource = rewardAndPunishSortCs; this.gvRewardSortAndPunish.DataBind(); } #endregion #region 4.8HSE现场其他管理情况 otherManagements = BLL.OtherManagementCService.GetOtherManagementByMonthReportId(this.MonthReportId); if (otherManagements.Count > 0) { this.gvOtherManagement.DataSource = otherManagements; this.gvOtherManagement.DataBind(); } #endregion #region 5.1 本月项目HSE费用投入统计 fiveExpenses = BLL.FiveExpenseCService.GetFiveExpenseByMonthReportId(MonthReportId); if (fiveExpenses.Count > 0) { this.gvFiveExpenseC.DataSource = fiveExpenses; this.gvFiveExpenseC.DataBind(); OutputgvFiveExpenseCSummaryData(); } #endregion #region 6.1未遂事件统计 var attemptedModel = db.Manager_Attempted.FirstOrDefault(x => x.MonthReportId == MonthReportId); if (attemptedModel != null) { nbWhMonthNum.Text = attemptedModel.WhMonthNum.ToString(); nbWhYearNum.Text = attemptedModel.WhYearNum.ToString(); nbFbsMonthNum.Text = attemptedModel.FbsMonthNum.ToString(); nbFbsYearNum.Text = attemptedModel.FbsYearNum.ToString(); nbProNum.Text = attemptedModel.ProNum.ToString(); } #endregion #region 6.1 2 本月伤害事故统计 injuryAccidents = BLL.InjuryAccidentCService.GetInjuryAccidentCByMonthReportId(this.MonthReportId); if (injuryAccidents.Count > 0) { this.gvInjuryAccident.DataSource = injuryAccidents; this.gvInjuryAccident.DataBind(); OutputSummaryData(); } #endregion #region 6.2 HSE责任事故/事件描述 //6.2 HSE责任事故/事件描述 txtDef.Text = model.AccidentDef; #endregion #region 6.3 HSE目标实现情况 if (!string.IsNullOrEmpty(model.Goalach1.ToString())) { var GalachModel = new Galach() { Id = Guid.NewGuid().ToString(), GoName = "项目HSE检查计划完成率", GoTarget = Convert.ToDecimal(model.Goalach1.ToString()), GoValue = "≥90%" }; galachList.Add(GalachModel); } if (!string.IsNullOrEmpty(model.Goalach2.ToString())) { var GalachModel = new Galach() { Id = Guid.NewGuid().ToString(), GoName = "百万工时总可记录事件率
(总可记录事件人数 / 总工时)×106", GoTarget = Convert.ToDecimal(model.Goalach2.ToString()), GoValue = "≤2" }; galachList.Add(GalachModel); } if (!string.IsNullOrEmpty(model.Goalach3.ToString())) { var GalachModel = new Galach() { Id = Guid.NewGuid().ToString(), GoName = "百万工时事故发生频率
(损失工时伤害事故起数 / 总工时)×106", GoTarget = Convert.ToDecimal(model.Goalach3.ToString()), GoValue = "≤15" }; galachList.Add(GalachModel); } if (galachList.Count > 0) { GoalachGrid.DataSource = galachList; GoalachGrid.DataBind(); } #endregion #region 7.1下个月工作计划 otherWorkPlanCs = BLL.OtherWorkPlanCService.GetOtherWorkPlanByMonthReportId(MonthReportId); if (otherWorkPlanCs.Count > 0) { this.gvOtherWorkPlanC.DataSource = otherWorkPlanCs; this.gvOtherWorkPlanC.DataBind(); } #endregion #region 8合规义务识别与评价 complianceObligationsCs = (from x in Funs.DB.Manager_Month_ComplianceObligationsC where x.MonthReportId == this.MonthReportId select x).ToList(); if (complianceObligationsCs.Count > 0) { this.gvOperateComplianceObligations.DataSource = complianceObligationsCs; this.gvOperateComplianceObligations.DataBind(); } #endregion //9问题 txtQuestion.Text = model.Question; //加载所有grid lodAllGrid("1"); } else { MonthReportId = Guid.NewGuid().ToString(); months = Convert.ToDateTime(Request.Params["months"]); this.txtReportMonths.Text = string.Format("{0:yyyy-MM}", months); this.txtStartDate.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now.AddMonths(-1)); if (!string.IsNullOrEmpty(Request.Params["startdate"])) { txtStartDate.Text = Request.Params["startdate"]; } this.txtEndDate.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now); if (!string.IsNullOrEmpty(Request.Params["enddate"])) { txtEndDate.Text = Request.Params["enddate"]; } this.txtPeriod.Text = BLL.CodeRecordsService.ReturnCodeByMenuIdProjectId(BLL.Const.ProjectManagerMonthCMenuId, this.ProjectId, this.CurrUser.UnitId); AddOrUpdate = "add"; startTime = Convert.ToDateTime(txtStartDate.Text); endTime = Convert.ToDateTime(txtEndDate.Text); yearStartTime = Convert.ToDateTime(startTime.ToString("yyyy-01-01")); if (project.StartDate != null) { projectStartTime = Convert.ToDateTime(project.StartDate); } //加载所有grid lodAllGrid("0"); } #region 加载1.项目概况 var mainUnit = BLL.UnitService.GetThisUnitDropDownList()[0]; this.lbProjectName.Text = project.ProjectName; if (mainUnit != null) { this.lblMainUnitName.Text = mainUnit.UnitName; } this.lblProjectAddress.Text = project.ProjectAddress; this.lblProjectCode.Text = project.ProjectCode; this.lblContractNo.Text = project.ContractNo; //合同号 if (!string.IsNullOrEmpty(project.ProjectType)) { var c = BLL.ConstValue.drpConstItemList(BLL.ConstValue.Group_ProjectType). FirstOrDefault(x => x.ID == project.ProjectType); if (c != null) { this.lblProjectType.Text = c.ConstText; } } this.lblWorkRange.Text = project.WorkRange;//工程范围 if (project.Duration != null) { this.lblDuration.Text = project.Duration.ToString();//工期(月) } if (project.StartDate != null) { this.lblStartDate.Text = string.Format("{0:yyyy-MM-dd}", project.StartDate); } if (project.EndDate != null) { this.lblEndDate.Text = string.Format("{0:yyyy-MM-dd}", project.EndDate); } #endregion } } #endregion #region 时间选择事件 /// /// 开始时间选择事件 /// /// /// protected void txtStartDate_TextChanged(object sender, EventArgs e) { if (!string.IsNullOrEmpty(this.txtStartDate.Text.Trim())) { string url = Request.Url.ToString(); if (url.Contains("?")) { url = Request.Url.ToString().Substring(0, Request.Url.ToString().LastIndexOf('?')); } Response.Redirect(url + "?months=" + months + "&startdate=" + txtStartDate.Text + "&enddate=" + txtEndDate.Text); } } protected void TextBox_TextChanged(object sender, EventArgs e) { if (!string.IsNullOrEmpty(this.txtStartDate.Text.Trim()) && !string.IsNullOrEmpty(this.txtEndDate.Text.Trim())) { if (Funs.GetNewDateTime(this.txtStartDate.Text.Trim()) > Funs.GetNewDateTime(this.txtEndDate.Text.Trim())) { Alert.ShowInTop("开始时间不能大于结束时间!", MessageBoxIcon.Warning); return; } PageContext.RegisterStartupScript("refresh();"); } } protected void btnLoad_Click(object sender, EventArgs e) { startTime = Convert.ToDateTime(string.Format("{0:yyyy-MM-dd}", txtStartDate.Text)); endTime = Convert.ToDateTime(string.Format("{0:yyyy-MM-dd}", txtEndDate.Text)); if (AddOrUpdate == "update") { lodAllGrid("1"); PageContext.RegisterStartupScript("rehiden();"); } else { lodAllGrid("0"); PageContext.RegisterStartupScript("rehiden();"); } } #endregion #region 保存 protected void btnSave_Click(object sender, EventArgs e) { #region 保存主表 string MonthHSEDay = string.Empty, SumHSEDay = string.Empty, MonthHSEWorkDay = string.Empty, YearHSEWorkDay = string.Empty, SumHSEWorkDay = string.Empty, HseManhours = string.Empty, SubcontractManHours = string.Empty, TotalHseManhours = string.Empty, TotalYearHseManhours = string.Empty; JArray mergedData = gvHSEDay.GetMergedData(); foreach (JObject mergedRow in mergedData) { string status = mergedRow.Value("status"); JObject values = mergedRow.Value("values"); MonthHSEDay = values.Value("MonthHSEDay").ToString(); SumHSEDay = values.Value("SumHSEDay").ToString(); MonthHSEWorkDay = values.Value("MonthHSEWorkDay").ToString(); YearHSEWorkDay = values.Value("YearHSEWorkDay").ToString(); SumHSEWorkDay = values.Value("SumHSEWorkDay").ToString(); HseManhours = values.Value("HseManhours").ToString(); SubcontractManHours = values.Value("SubcontractManHours").ToString(); TotalYearHseManhours = values.Value("TotalHseManhoursYear").ToString(); TotalHseManhours = values.Value("TotalHseManhours").ToString(); } var monthReport = new Model.Manager_MonthReportC(); monthReport.MonthReportId = MonthReportId; monthReport.ProjectId = this.CurrUser.LoginProjectId; monthReport.MonthReportCode = txtPeriod.Text; monthReport.Months = months; monthReport.ReportMan = this.CurrUser.UserId; monthReport.MonthReportDate = DateTime.Now; monthReport.StartDate = Funs.GetNewDateTime(txtStartDate.Text); monthReport.EndDate = Funs.GetNewDateTime(txtEndDate.Text); monthReport.MonthHSEDay = Funs.GetNewIntOrZero(MonthHSEDay); monthReport.SumHSEDay = Funs.GetNewIntOrZero(SumHSEDay); monthReport.MonthHSEWorkDay = Funs.GetNewIntOrZero(MonthHSEWorkDay); monthReport.YearHSEWorkDay = Funs.GetNewIntOrZero(YearHSEWorkDay); monthReport.SumHSEWorkDay = Funs.GetNewIntOrZero(SumHSEWorkDay); monthReport.HseManhours = Funs.GetNewIntOrZero(HseManhours); monthReport.SubcontractManHours = Funs.GetNewIntOrZero(SubcontractManHours); monthReport.TotalHseManhours = Funs.GetNewIntOrZero(TotalHseManhours); monthReport.TotalHseManhoursYear = Funs.GetNewIntOrZero(TotalYearHseManhours); //4.3隐患 monthReport.MonthHdangerCount = Funs.GetNewIntOrZero(txtMonthHdangerCount.Text); monthReport.YearHdangerCount = Funs.GetNewIntOrZero(txtYearHdangerCount.Text); #region 4.5项目本月危大工程管理数据 JArray MonthHazardousmergedData = MonthHazardousGrid.GetMergedData(); foreach (JObject mergedRow in MonthHazardousmergedData) { JObject values = mergedRow.Value("values"); var Category = values.Value("Category").ToString(); if (Category == "经专家论证的危大工程数量") { monthReport.MonthExpertCount = Funs.GetNewInt(values.Value("ExpertCount").ToString()); } else { monthReport.MonthExpertNoCount = Funs.GetNewInt(values.Value("ExpertCount").ToString()); } } #endregion //4.6.3其他应急管理工作描述 monthReport.EmergencyManagementWorkDef = txtEmergencyManagementWorkDef.Text; //6.2HSE责任事故/事件描述 monthReport.AccidentDef = txtDef.Text; #region 6.3HSE目标实现情况 JArray GoalachData = GoalachGrid.GetMergedData(); foreach (JObject mergedRow in GoalachData) { JObject values = mergedRow.Value("values"); var GoValue = values.Value("GoValue").ToString(); if (GoValue == "≥90%") { monthReport.Goalach1 = Funs.GetNewDecimalOrZero(values.Value("GoTarget").ToString()); } else if (GoValue == "≤2") { monthReport.Goalach2 = Funs.GetNewDecimalOrZero(values.Value("GoTarget").ToString()); } else { monthReport.Goalach3 = Funs.GetNewDecimalOrZero(values.Value("GoTarget").ToString()); } } #endregion //9.问题 monthReport.Question = txtQuestion.Text; monthReport.MonthReportType = "1"; if (AddOrUpdate == "add") { MonthReportCService.AddMonthReport(monthReport); } else { MonthReportCService.UpdateMonthReport(monthReport); } #endregion #region 保存所有子表 //2 OperatePersonSort(); //4.1 OperateTrainSort(); //4.2 OperateCheckSort(); //4.3 OperateManager_HiddenDanger(); //4.4 OperateProjectAssignment(); //4.6.1 OperateEmergencyPlan(); //4.6.2 OperateDrillRecordList(); //4.7 OperateRewardAndPunishSort(); //4.8 OperateOtherManagementSort(); //5.1 OperateFiveExpenseSort(); //6.1未遂事件统计 OperateAttempted(); //6.1 2本月伤害事故统计 OperateInjuryAccidentSort(); //7.1 OperateOtherWorkPlanCSort(); //8 OperateComplianceObligationsCSort(); //10 SaveImages(); #endregion ShowNotify("保存成功!", MessageBoxIcon.Success); PageContext.RegisterStartupScript(ActiveWindow.GetHideRefreshReference()); } #region 2.保存人力投入情况 private void OperatePersonSort() { PersonSortCService.DeletePersonSortsByMonthReportId(MonthReportId); JArray mergedData = gvPersonSort.GetMergedData(); foreach (JObject mergedRow in mergedData) { string status = mergedRow.Value("status"); JObject values = mergedRow.Value("values"); int i = mergedRow.Value("index"); Model.Manager_PersonSortC personSort = new Model.Manager_PersonSortC { MonthReportId = MonthReportId, UnitId = this.gvPersonSort.Rows[i].DataKeys[1].ToString(), SumPersonNum = Funs.GetNewIntOrZero(values.Value("SumPersonNum").ToString()), SumOutPersonNum = Funs.GetNewIntOrZero(values.Value("SumOutPersonNum").ToString()), HSEPersonNum = Funs.GetNewIntOrZero(values.Value("HSEPersonNum").ToString()), ContractRange = values.Value("ContractRange").ToString(), Remark = values.Value("Remark").ToString() }; PersonSortCService.AddPersonSort(personSort); } } #endregion #region 4.1保存培训 private void OperateTrainSort() { BLL.TrainSortCService.DeleteTrainSortsByMonthReportId(MonthReportId); jerqueSaveTrainList(); foreach (Model.Manager_TrainSortC trainSort in trainSorts) { trainSort.MonthReportId = MonthReportId; BLL.TrainSortCService.AddTrainSort(trainSort); } } private void jerqueSaveTrainList() { trainSorts.Clear(); JArray mergedData = gvTrainSort.GetMergedData(); foreach (JObject mergedRow in mergedData) { string status = mergedRow.Value("status"); JObject values = mergedRow.Value("values"); int i = mergedRow.Value("index"); Model.Manager_TrainSortC trainSort = new Model.Manager_TrainSortC { TrainSortId = this.gvTrainSort.Rows[i].DataKeys[0].ToString(), SortIndex = i, TrainType = values.Value("TrainType").ToString(), //TrainContent = values.Value("TrainContent").ToString(), TeachHour = Funs.GetNewDecimalOrZero(values.Value("TeachHour").ToString()), //TeachMan = values.Value("TeachMan").ToString(), PersonNum = Funs.GetNewIntOrZero(values.Value("PersonNum").ToString()), TotalPersonNum = Funs.GetNewIntOrZero(values.Value("TotalPersonNum").ToString()) }; trainSorts.Add(trainSort); } } #endregion #region 4.2保存现场HSE会议及检查 private void OperateCheckSort() { BLL.CheckSortCService.DeleteCheckSortsByMonthReportId(MonthReportId); jerqueSaveCheckList(); foreach (Model.Manager_CheckSortC checkSort in checkSorts) { checkSort.MonthReportId = MonthReportId; BLL.CheckSortCService.AddCheckSort(checkSort); } } /// /// 检查并保存HSE检查集合 /// private void jerqueSaveCheckList() { checkSorts.Clear(); JArray mergedData = gvCheckSort.GetMergedData(); foreach (JObject mergedRow in mergedData) { string status = mergedRow.Value("status"); JObject values = mergedRow.Value("values"); int i = mergedRow.Value("index"); Model.Manager_CheckSortC checkSort = new Model.Manager_CheckSortC { CheckSortId = this.gvCheckSort.Rows[i].DataKeys[0].ToString(), SortIndex = i, CheckType = values.Value("CheckType").ToString(), CheckNumber = Funs.GetNewInt(values.Value("CheckNumber").ToString()), YearCheckNum = Funs.GetNewInt(values.Value("YearCheckNum").ToString()), TotalCheckNum = Funs.GetNewInt(values.Value("TotalCheckNum").ToString()) }; checkSorts.Add(checkSort); } } #endregion #region 4.6.1 应急预案发布情况 private void OperateEmergencyPlan() { PersonSortCService.DeleteManager_EmergencyPlan(MonthReportId); SaveEmergencyPlanList(); foreach (Manager_EmergencyPlan item in emergencyPlanList) { item.MonthReportId = MonthReportId; MonthReportCService.AddManager_EmergencyPlan(item); } } private void SaveEmergencyPlanList() { emergencyPlanList.Clear(); JArray mergedData = EmergencyPlanGrid.GetMergedData(); foreach (JObject mergedRow in mergedData) { JObject values = mergedRow.Value("values"); int i = mergedRow.Value("index"); Manager_EmergencyPlan checkSort = new Manager_EmergencyPlan { Id = this.EmergencyPlanGrid.Rows[i].DataKeys[0].ToString(), CaType = values.Value("CaType").ToString(), MonthCount = Funs.GetNewInt(values.Value("MonthCount").ToString()), YearCount = Funs.GetNewInt(values.Value("YearCount").ToString()), ProCount = Funs.GetNewInt(values.Value("ProCount").ToString()), SortIndex = i, }; emergencyPlanList.Add(checkSort); } } #endregion #region 4.6.2应急演练工作情况说明 private void OperateDrillRecordList() { PersonSortCService.DeleteManager_DrillRecordList(MonthReportId); SaveDrillRecordList(); foreach (Manager_DrillRecordList item in drillRecordList) { item.MonthReportId = MonthReportId; MonthReportCService.AddManager_DrillRecordList(item); } } private void SaveDrillRecordList() { drillRecordList.Clear(); JArray mergedData = DrillRecordListGrid.GetMergedData(); foreach (JObject mergedRow in mergedData) { JObject values = mergedRow.Value("values"); int i = mergedRow.Value("index"); Manager_DrillRecordList checkSort = new Manager_DrillRecordList { Id = this.DrillRecordListGrid.Rows[i].DataKeys[0].ToString(), Dname = values.Value("Dname").ToString(), Ddate = Convert.ToDateTime(values.Value("Ddate").ToString()), DrillRecordTypeName = values.Value("DrillRecordTypeName").ToString(), PersonNum = Funs.GetNewInt(values.Value("PersonNum").ToString()), DrillCost = Convert.ToDecimal(values.Value("DrillCost").ToString()), SortIndex = i, }; drillRecordList.Add(checkSort); } } #endregion #region 4.3隐患整改 private void OperateManager_HiddenDanger() { PersonSortCService.DeleteManager_HiddenDanger(MonthReportId); JArray mergedData = GridHiddenDanger.GetMergedData(); foreach (JObject mergedRow in mergedData) { string status = mergedRow.Value("status"); JObject values = mergedRow.Value("values"); int i = mergedRow.Value("index"); Model.Manager_HiddenDanger model = new Model.Manager_HiddenDanger { Id = Guid.NewGuid().ToString(), MonthReportId = MonthReportId, UnitId = this.GridHiddenDanger.Rows[i].DataKeys[1].ToString(), CommonlyNum = Funs.GetNewIntOrZero(values.Value("CommonlyNum").ToString()), MajorNum = Funs.GetNewIntOrZero(values.Value("MajorNum").ToString()), ReRate = values.Value("ReRate").ToString(), SortIndex = i + 1, }; db.Manager_HiddenDanger.InsertOnSubmit(model); db.SubmitChanges(); } } #endregion #region 4.4本月项目作业许可管理数据 private void OperateProjectAssignment() { //删除 PersonSortCService.DeleteManager_ProjectAssignment(MonthReportId); var model = new Manager_ProjectAssignment() { Id = Guid.NewGuid().ToString(), MonthReportId = MonthReportId, FireWorkCount = Funs.GetNewIntOrZero(nbFireWorkCount.Text), BreakGroundCount = Funs.GetNewIntOrZero(nbBreakGroundCount.Text), LimitedSpaceCount = Funs.GetNewIntOrZero(nbLimitedSpaceCount.Text), ElectricityCount = Funs.GetNewIntOrZero(nbElectricityCount.Text), HeightWorkCount = Funs.GetNewIntOrZero(nbHeightWorkCount.Text), RadialWork = Funs.GetNewIntOrZero(nbRadialWork.Text), LiftingWorkCount = Funs.GetNewIntOrZero(nbLiftingWorkCount.Text), NightWork = Funs.GetNewIntOrZero(nbNightWork.Text), MonthCount = Funs.GetNewIntOrZero(nbMonthCount.Text), YearCount = Funs.GetNewIntOrZero(nbYearCount.Text), ProCount = Funs.GetNewIntOrZero(nbProCount.Text), }; db.Manager_ProjectAssignment.InsertOnSubmit(model); db.SubmitChanges(); } #endregion #region 4.7保存奖励惩罚 private void OperateRewardAndPunishSort() { BLL.RewardAndPunishSortCService.DeleteRewardAndPunishSortCByMonthReportId(MonthReportId); jerqueSavePunishList(); foreach (Model.Manager_RewardAndPunishSortC rewardAndPunishSortC in rewardAndPunishSortCs) { rewardAndPunishSortC.MonthReportId = MonthReportId; BLL.RewardAndPunishSortCService.AddRewardAndPunishSortC(rewardAndPunishSortC); } } #endregion #region 4.8保存HSE现场其他管理情况 /// /// HSE现场其他管理情况 /// /// private void OperateOtherManagementSort() { BLL.OtherManagementCService.DeleteOtherManagementByMonthReportId(MonthReportId); jerqueSaveOtherManagementList(); foreach (Model.Manager_Month_OtherManagementC otherManagement in otherManagements) { otherManagement.MonthReportId = MonthReportId; BLL.OtherManagementCService.AddOtherManagement(otherManagement); } } #endregion #region 5.1保存 private void OperateFiveExpenseSort() { BLL.FiveExpenseCService.DeleteFiveExpenseByMonthReportId(MonthReportId); jerqueSaveFiveExpenseList(); foreach (Model.Manager_Month_FiveExpenseC fiveExpendse in fiveExpenses) { fiveExpendse.MonthReportId = MonthReportId; BLL.FiveExpenseCService.AddFiveExpense(fiveExpendse); } } private void jerqueSaveFiveExpenseList() { fiveExpenses.Clear(); JArray mergedData = gvFiveExpenseC.GetMergedData(); foreach (JObject mergedRow in mergedData) { string status = mergedRow.Value("status"); JObject values = mergedRow.Value("values"); int i = mergedRow.Value("index"); Model.Manager_Month_FiveExpenseC trainSort = new Model.Manager_Month_FiveExpenseC { FiveExpenseId = this.gvFiveExpenseC.Rows[i].DataKeys[0].ToString(), SortIndex = i, InvestmentProject = values.Value("InvestmentProject").ToString(), PlanCostMonth = Funs.GetNewDecimal(values.Value("PlanCostMonth").ToString()), PlanCostYear = Funs.GetNewDecimal(values.Value("PlanCostYear").ToString()), ActualCostMonth = Funs.GetNewDecimal(values.Value("ActualCostMonth").ToString()), ActualCostYear = Funs.GetNewDecimal(values.Value("ActualCostYear").ToString()) }; fiveExpenses.Add(trainSort); } } #endregion #region 6.1未遂事件统计 private void OperateAttempted() { PersonSortCService.DeleteManager_Attempted(MonthReportId); var model = new Manager_Attempted() { Id = Guid.NewGuid().ToString(), MonthReportId = MonthReportId, WhMonthNum = Convert.ToInt32(nbWhMonthNum.Text), WhYearNum = Convert.ToInt32(nbWhYearNum.Text), FbsMonthNum = Convert.ToInt32(nbFbsMonthNum.Text), FbsYearNum = Convert.ToInt32(nbFbsYearNum.Text), ProNum = Convert.ToInt32(nbProNum.Text), }; db.Manager_Attempted.InsertOnSubmit(model); db.SubmitChanges(); } #endregion #region 6.1 2本月伤害事故统计 private void OperateInjuryAccidentSort() { BLL.InjuryAccidentCService.DeleteInjuryAccidengtByMonthReportId(MonthReportId); jerqueSaveInjuryAccidentCList(); foreach (Model.Manager_Month_InjuryAccidentC injury in injuryAccidents) { injury.MonthReportId = MonthReportId; BLL.InjuryAccidentCService.AddInjuryAccidentC(injury); } } private void jerqueSaveInjuryAccidentCList() { injuryAccidents.Clear(); JArray mergedData = gvInjuryAccident.GetMergedData(); foreach (JObject mergedRow in mergedData) { string status = mergedRow.Value("status"); JObject values = mergedRow.Value("values"); int i = mergedRow.Value("index"); Model.Manager_Month_InjuryAccidentC monthPlanSort = new Model.Manager_Month_InjuryAccidentC { InjuryAccidentId = this.gvInjuryAccident.Rows[i].DataKeys[0].ToString(), UnitName = values.Value("UnitName").ToString(), FirstAidDressing = Funs.GetNewInt(values.Value("FirstAidDressing").ToString()), MedicalTreatment = Funs.GetNewInt(values.Value("MedicalTreatment").ToString()), WorkLimitation = Funs.GetNewInt(values.Value("WorkLimitation").ToString()), LossCount = Funs.GetNewInt(values.Value("LossCount").ToString()), LossPerson = Funs.GetNewInt(values.Value("LossPerson").ToString()), LossWorkTime = Funs.GetNewDecimal(values.Value("LossWorkTime").ToString()), LossEconomy = Funs.GetNewDecimal(values.Value("LossEconomy").ToString()), DeathPerson = Funs.GetNewInt(values.Value("DeathPerson").ToString()), DeathCount = Funs.GetNewInt(values.Value("DeathCount").ToString()), DeathWorkTime = Funs.GetNewDecimal(values.Value("DeathWorkTime").ToString()), DeathEconomy = Funs.GetNewDecimal(values.Value("DeathEconomy").ToString()), }; injuryAccidents.Add(monthPlanSort); } } #endregion #region 7.1保存下个月计划 /// /// 7.2 其他HSE工作计划 /// /// private void OperateOtherWorkPlanCSort() { BLL.OtherWorkPlanCService.DeleteOtherWorkPlanByMonthReportId(MonthReportId); jerqueSaveOtherWorkPlanCList(); foreach (Model.Manager_Month_OtherWorkPlanC item in otherWorkPlanCs) { item.MonthReportId = MonthReportId; BLL.OtherWorkPlanCService.AddOtherWorkPlan(item); } } private void jerqueSaveOtherWorkPlanCList() { otherWorkPlanCs.Clear(); JArray mergedData = gvOtherWorkPlanC.GetMergedData(); foreach (JObject mergedRow in mergedData) { string status = mergedRow.Value("status"); JObject values = mergedRow.Value("values"); int i = mergedRow.Value("index"); Model.Manager_Month_OtherWorkPlanC otherWorkPlanC = new Model.Manager_Month_OtherWorkPlanC { OtherWorkPlanId = this.gvOtherWorkPlanC.Rows[i].DataKeys[0].ToString(), SortIndex = i, WorkContent = values.Value("WorkContent").ToString() }; otherWorkPlanCs.Add(otherWorkPlanC); } } /// /// 增加其他HSE工作计划 /// /// /// protected void btnOtherWorkPlanC_Click(object sender, EventArgs e) { jerqueSaveOtherWorkPlanCList(); Model.Manager_Month_OtherWorkPlanC otherWorkPlanC = new Model.Manager_Month_OtherWorkPlanC { OtherWorkPlanId = SQLHelper.GetNewID(typeof(Model.Manager_Month_OtherWorkPlanC)) }; otherWorkPlanCs.Add(otherWorkPlanC); this.gvOtherWorkPlanC.DataSource = otherWorkPlanCs; this.gvOtherWorkPlanC.DataBind(); } /// /// 删除其他HSE工作计划 /// /// /// protected void gvOtherWorkPlanC_RowCommand(object sender, GridCommandEventArgs e) { jerqueSaveOtherWorkPlanCList(); string rowID = this.gvOtherWorkPlanC.DataKeys[e.RowIndex][0].ToString(); if (e.CommandName == "Delete") { foreach (var item in otherWorkPlanCs) { if (item.OtherWorkPlanId == rowID) { otherWorkPlanCs.Remove(item); break; } } gvOtherWorkPlanC.DataSource = otherWorkPlanCs; gvOtherWorkPlanC.DataBind(); ShowNotify("删除数据成功!", MessageBoxIcon.Success); } } #endregion #region 8. 保存HSE合规义务识别与评价 /// /// 保存HSE合规义务识别与评价 /// /// private void OperateComplianceObligationsCSort() { BLL.ComplianceObligationsCService.DeleteComplianceObligationsCByMonthReportId(MonthReportId); jerqueSaveComplianceObligationsCList(); foreach (Model.Manager_Month_ComplianceObligationsC coc in complianceObligationsCs) { coc.MonthReportId = MonthReportId; BLL.ComplianceObligationsCService.AddComplianceObligationsC(coc); } } ///// ///// 增加HSE合规义务识别与评价 ///// ///// ///// protected void btnNew_Click(object sender, EventArgs e) { jerqueSaveComplianceObligationsCList(); Model.Manager_Month_ComplianceObligationsC complianceObligationsC = new Model.Manager_Month_ComplianceObligationsC { ComplianceObligationsId = SQLHelper.GetNewID(typeof(Model.Manager_Month_ComplianceObligationsC)) }; complianceObligationsCs.Add(complianceObligationsC); this.gvOperateComplianceObligations.DataSource = complianceObligationsCs; this.gvOperateComplianceObligations.DataBind(); } ///// ///// 检查并保存危险源动态识别及控制集合 ///// private void jerqueSaveComplianceObligationsCList() { complianceObligationsCs.Clear(); JArray mergedData = gvOperateComplianceObligations.GetMergedData(); foreach (JObject mergedRow in mergedData) { string status = mergedRow.Value("status"); JObject values = mergedRow.Value("values"); int i = mergedRow.Value("index"); Model.Manager_Month_ComplianceObligationsC hazardSort = new Model.Manager_Month_ComplianceObligationsC { ComplianceObligationsId = this.gvOperateComplianceObligations.Rows[i].DataKeys[0].ToString(), InformationContent = values.Value("InformationContent").ToString(), ResponseMeasures = values.Value("ResponseMeasures").ToString(), ImplementationStatus = values.Value("ImplementationStatus").ToString(), EvaluationConclusion = values.Value("EvaluationConclusion").ToString() }; complianceObligationsCs.Add(hazardSort); } } protected void gvOperateComplianceObligations_RowCommand(object sender, GridCommandEventArgs e) { jerqueSaveComplianceObligationsCList(); string rowID = this.gvOperateComplianceObligations.DataKeys[e.RowIndex][0].ToString(); if (e.CommandName == "Delete") { foreach (var item in complianceObligationsCs) { if (item.ComplianceObligationsId == rowID) { complianceObligationsCs.Remove(item); break; } } gvOperateComplianceObligations.DataSource = complianceObligationsCs; gvOperateComplianceObligations.DataBind(); ShowNotify("删除数据成功!", MessageBoxIcon.Success); } } #endregion #region 选择照片事件 protected void filePhoto_FileSelected1(object sender, EventArgs e) { if (filePhoto.HasFile) { string fileName = filePhoto.ShortFileName; if (!ValidateFileType(fileName)) { // 清空文件上传控件 filePhoto.Reset(); ShowNotify("无效的文件类型!"); return; } fileName = fileName.Replace(":", "_").Replace(" ", "_").Replace("\\", "_").Replace("/", "_"); fileName = DateTime.Now.Ticks.ToString() + "_" + fileName; filePhoto.SaveAs(Server.MapPath("~/upload/" + fileName)); imgPhoto.ImageUrl = "~/upload/" + fileName; // 清空文件上传组件(上传后要记着清空,否则点击提交表单时会再次上传!!) filePhoto.Reset(); } } protected void filePhoto_FileSelected2(object sender, EventArgs e) { if (filePhoto2.HasFile) { string fileName = filePhoto2.ShortFileName; if (!ValidateFileType(fileName)) { // 清空文件上传控件 filePhoto2.Reset(); ShowNotify("无效的文件类型!"); return; } fileName = fileName.Replace(":", "_").Replace(" ", "_").Replace("\\", "_").Replace("/", "_"); fileName = DateTime.Now.Ticks.ToString() + "_" + fileName; filePhoto2.SaveAs(Server.MapPath("~/upload/" + fileName)); imgPhoto2.ImageUrl = "~/upload/" + fileName; // 清空文件上传组件(上传后要记着清空,否则点击提交表单时会再次上传!!) filePhoto2.Reset(); } } protected void filePhoto_FileSelected3(object sender, EventArgs e) { if (filePhoto3.HasFile) { string fileName = filePhoto3.ShortFileName; if (!ValidateFileType(fileName)) { // 清空文件上传控件 filePhoto3.Reset(); ShowNotify("无效的文件类型!"); return; } fileName = fileName.Replace(":", "_").Replace(" ", "_").Replace("\\", "_").Replace("/", "_"); fileName = DateTime.Now.Ticks.ToString() + "_" + fileName; filePhoto3.SaveAs(Server.MapPath("~/upload/" + fileName)); imgPhoto3.ImageUrl = "~/upload/" + fileName; // 清空文件上传组件(上传后要记着清空,否则点击提交表单时会再次上传!!) filePhoto3.Reset(); } } protected void filePhoto_FileSelected4(object sender, EventArgs e) { if (filePhoto4.HasFile) { string fileName = filePhoto4.ShortFileName; if (!ValidateFileType(fileName)) { // 清空文件上传控件 filePhoto4.Reset(); ShowNotify("无效的文件类型!"); return; } fileName = fileName.Replace(":", "_").Replace(" ", "_").Replace("\\", "_").Replace("/", "_"); fileName = DateTime.Now.Ticks.ToString() + "_" + fileName; filePhoto4.SaveAs(Server.MapPath("~/upload/" + fileName)); imgPhoto4.ImageUrl = "~/upload/" + fileName; // 清空文件上传组件(上传后要记着清空,否则点击提交表单时会再次上传!!) filePhoto4.Reset(); } } protected void filePhoto_FileSelected5(object sender, EventArgs e) { if (filePhoto5.HasFile) { string fileName = filePhoto5.ShortFileName; if (!ValidateFileType(fileName)) { // 清空文件上传控件 filePhoto5.Reset(); ShowNotify("无效的文件类型!"); return; } fileName = fileName.Replace(":", "_").Replace(" ", "_").Replace("\\", "_").Replace("/", "_"); fileName = DateTime.Now.Ticks.ToString() + "_" + fileName; filePhoto5.SaveAs(Server.MapPath("~/upload/" + fileName)); imgPhoto5.ImageUrl = "~/upload/" + fileName; // 清空文件上传组件(上传后要记着清空,否则点击提交表单时会再次上传!!) filePhoto5.Reset(); } } protected void filePhoto_FileSelected6(object sender, EventArgs e) { if (filePhoto6.HasFile) { string fileName = filePhoto6.ShortFileName; if (!ValidateFileType(fileName)) { // 清空文件上传控件 filePhoto6.Reset(); ShowNotify("无效的文件类型!"); return; } fileName = fileName.Replace(":", "_").Replace(" ", "_").Replace("\\", "_").Replace("/", "_"); fileName = DateTime.Now.Ticks.ToString() + "_" + fileName; filePhoto6.SaveAs(Server.MapPath("~/upload/" + fileName)); imgPhoto6.ImageUrl = "~/upload/" + fileName; // 清空文件上传组件(上传后要记着清空,否则点击提交表单时会再次上传!!) filePhoto6.Reset(); } } protected void filePhoto_FileSelected7(object sender, EventArgs e) { if (filePhoto7.HasFile) { string fileName = filePhoto7.ShortFileName; if (!ValidateFileType(fileName)) { // 清空文件上传控件 filePhoto7.Reset(); ShowNotify("无效的文件类型!"); return; } fileName = fileName.Replace(":", "_").Replace(" ", "_").Replace("\\", "_").Replace("/", "_"); fileName = DateTime.Now.Ticks.ToString() + "_" + fileName; filePhoto7.SaveAs(Server.MapPath("~/upload/" + fileName)); imgPhoto7.ImageUrl = "~/upload/" + fileName; // 清空文件上传组件(上传后要记着清空,否则点击提交表单时会再次上传!!) filePhoto7.Reset(); } } protected void filePhoto_FileSelected8(object sender, EventArgs e) { if (filePhoto8.HasFile) { string fileName = filePhoto8.ShortFileName; if (!ValidateFileType(fileName)) { // 清空文件上传控件 filePhoto8.Reset(); ShowNotify("无效的文件类型!"); return; } fileName = fileName.Replace(":", "_").Replace(" ", "_").Replace("\\", "_").Replace("/", "_"); fileName = DateTime.Now.Ticks.ToString() + "_" + fileName; filePhoto8.SaveAs(Server.MapPath("~/upload/" + fileName)); imgPhoto8.ImageUrl = "~/upload/" + fileName; // 清空文件上传组件(上传后要记着清空,否则点击提交表单时会再次上传!!) filePhoto8.Reset(); } } protected void filePhoto_FileSelected9(object sender, EventArgs e) { if (filePhoto9.HasFile) { string fileName = filePhoto9.ShortFileName; if (!ValidateFileType(fileName)) { // 清空文件上传控件 filePhoto9.Reset(); ShowNotify("无效的文件类型!"); return; } fileName = fileName.Replace(":", "_").Replace(" ", "_").Replace("\\", "_").Replace("/", "_"); fileName = DateTime.Now.Ticks.ToString() + "_" + fileName; filePhoto9.SaveAs(Server.MapPath("~/upload/" + fileName)); imgPhoto9.ImageUrl = "~/upload/" + fileName; // 清空文件上传组件(上传后要记着清空,否则点击提交表单时会再次上传!!) filePhoto9.Reset(); } } protected void filePhoto_FileSelected10(object sender, EventArgs e) { if (filePhoto10.HasFile) { string fileName = filePhoto10.ShortFileName; if (!ValidateFileType(fileName)) { // 清空文件上传控件 filePhoto10.Reset(); ShowNotify("无效的文件类型!"); return; } fileName = fileName.Replace(":", "_").Replace(" ", "_").Replace("\\", "_").Replace("/", "_"); fileName = DateTime.Now.Ticks.ToString() + "_" + fileName; filePhoto10.SaveAs(Server.MapPath("~/upload/" + fileName)); imgPhoto10.ImageUrl = "~/upload/" + fileName; // 清空文件上传组件(上传后要记着清空,否则点击提交表单时会再次上传!!) filePhoto10.Reset(); } } protected void filePhoto_FileSelected11(object sender, EventArgs e) { if (filePhoto11.HasFile) { string fileName = filePhoto11.ShortFileName; if (!ValidateFileType(fileName)) { // 清空文件上传控件 filePhoto11.Reset(); ShowNotify("无效的文件类型!"); return; } fileName = fileName.Replace(":", "_").Replace(" ", "_").Replace("\\", "_").Replace("/", "_"); fileName = DateTime.Now.Ticks.ToString() + "_" + fileName; filePhoto11.SaveAs(Server.MapPath("~/upload/" + fileName)); imgPhoto11.ImageUrl = "~/upload/" + fileName; // 清空文件上传组件(上传后要记着清空,否则点击提交表单时会再次上传!!) filePhoto11.Reset(); } } protected void filePhoto_FileSelected12(object sender, EventArgs e) { if (filePhoto12.HasFile) { string fileName = filePhoto12.ShortFileName; if (!ValidateFileType(fileName)) { // 清空文件上传控件 filePhoto12.Reset(); ShowNotify("无效的文件类型!"); return; } fileName = fileName.Replace(":", "_").Replace(" ", "_").Replace("\\", "_").Replace("/", "_"); fileName = DateTime.Now.Ticks.ToString() + "_" + fileName; filePhoto12.SaveAs(Server.MapPath("~/upload/" + fileName)); imgPhoto12.ImageUrl = "~/upload/" + fileName; // 清空文件上传组件(上传后要记着清空,否则点击提交表单时会再次上传!!) filePhoto12.Reset(); } } #endregion #region 保存图片 private void SaveImages() { TextBoxContentService.Delete(MonthReportId); var ImageLists = new List(); var imgage1 = new Model.Report_TextBoxContent(); imgage1.Id = Guid.NewGuid().ToString(); imgage1.ReportId = MonthReportId; imgage1.ContentType = "10-1"; imgage1.ContentText = txtPhotoContent1.Text; imgage1.ImageUrl = imgPhoto.ImageUrl.Substring(imgPhoto.ImageUrl.IndexOf("/") + 1); ImageLists.Add(imgage1); var imgage2 = new Model.Report_TextBoxContent(); imgage2.Id = Guid.NewGuid().ToString(); imgage2.ReportId = MonthReportId; imgage2.ContentType = "10-2"; imgage2.ContentText = txtPhotoContent2.Text; imgage2.ImageUrl = imgPhoto2.ImageUrl.Substring(imgPhoto2.ImageUrl.IndexOf("/") + 1); ImageLists.Add(imgage2); var imgage3 = new Model.Report_TextBoxContent(); imgage3.Id = Guid.NewGuid().ToString(); imgage3.ReportId = MonthReportId; imgage3.ContentType = "10-3"; imgage3.ContentText = txtPhotoContent3.Text; imgage3.ImageUrl = imgPhoto3.ImageUrl.Substring(imgPhoto3.ImageUrl.IndexOf("/") + 1); ImageLists.Add(imgage3); var imgage4 = new Model.Report_TextBoxContent(); imgage4.Id = Guid.NewGuid().ToString(); imgage4.ReportId = MonthReportId; imgage4.ContentType = "10-4"; imgage4.ContentText = txtPhotoContent4.Text; imgage4.ImageUrl = imgPhoto4.ImageUrl.Substring(imgPhoto4.ImageUrl.IndexOf("/") + 1); ImageLists.Add(imgage4); var imgage5 = new Model.Report_TextBoxContent(); imgage5.Id = Guid.NewGuid().ToString(); imgage5.ReportId = MonthReportId; imgage5.ContentType = "10-5"; imgage5.ContentText = txtPhotoContent5.Text; imgage5.ImageUrl = imgPhoto5.ImageUrl.Substring(imgPhoto5.ImageUrl.IndexOf("/") + 1); ImageLists.Add(imgage5); var imgage6 = new Model.Report_TextBoxContent(); imgage6.Id = Guid.NewGuid().ToString(); imgage6.ReportId = MonthReportId; imgage6.ContentType = "10-7"; imgage6.ContentText = txtPhotoContent7.Text; imgage6.ImageUrl = imgPhoto7.ImageUrl.Substring(imgPhoto6.ImageUrl.IndexOf("/") + 1); ImageLists.Add(imgage6); imgage6 = new Model.Report_TextBoxContent(); imgage6.Id = Guid.NewGuid().ToString(); imgage6.ReportId = MonthReportId; imgage6.ContentType = "10-6"; imgage6.ContentText = txtPhotoContent6.Text; imgage6.ImageUrl = imgPhoto6.ImageUrl.Substring(imgPhoto6.ImageUrl.IndexOf("/") + 1); ImageLists.Add(imgage6); // imgage6 = new Model.Report_TextBoxContent(); imgage6.Id = Guid.NewGuid().ToString(); imgage6.ReportId = MonthReportId; imgage6.ContentType = "10-8"; imgage6.ContentText = txtPhotoContent8.Text; imgage6.ImageUrl = imgPhoto8.ImageUrl.Substring(imgPhoto6.ImageUrl.IndexOf("/") + 1); ImageLists.Add(imgage6); imgage6 = new Model.Report_TextBoxContent(); imgage6.Id = Guid.NewGuid().ToString(); imgage6.ReportId = MonthReportId; imgage6.ContentType = "10-9"; imgage6.ContentText = txtPhotoContent9.Text; imgage6.ImageUrl = imgPhoto9.ImageUrl.Substring(imgPhoto6.ImageUrl.IndexOf("/") + 1); ImageLists.Add(imgage6); imgage6 = new Model.Report_TextBoxContent(); imgage6.Id = Guid.NewGuid().ToString(); imgage6.ReportId = MonthReportId; imgage6.ContentType = "10-10"; imgage6.ContentText = txtPhotoContent10.Text; imgage6.ImageUrl = imgPhoto10.ImageUrl.Substring(imgPhoto6.ImageUrl.IndexOf("/") + 1); ImageLists.Add(imgage6); imgage6 = new Model.Report_TextBoxContent(); imgage6.Id = Guid.NewGuid().ToString(); imgage6.ReportId = MonthReportId; imgage6.ContentType = "10-11"; imgage6.ContentText = txtPhotoContent11.Text; imgage6.ImageUrl = imgPhoto11.ImageUrl.Substring(imgPhoto6.ImageUrl.IndexOf("/") + 1); ImageLists.Add(imgage6); imgage6 = new Model.Report_TextBoxContent(); imgage6.Id = Guid.NewGuid().ToString(); imgage6.ReportId = MonthReportId; imgage6.ContentType = "10-12"; imgage6.ContentText = txtPhotoContent12.Text; imgage6.ImageUrl = imgPhoto12.ImageUrl.Substring(imgPhoto6.ImageUrl.IndexOf("/") + 1); ImageLists.Add(imgage6); db.Report_TextBoxContent.InsertAllOnSubmit(ImageLists); db.SubmitChanges(); } #endregion #endregion #region 加载grid void lodAllGrid(string objType) { if (objType == "0") { //添加的时候加载 //2.本月项目现场HSE人力投入情况 GetPersonSort(); //3.本月项目现场HSE人工日统计 getMonthReportCHSEDay(); //4.1培训 GetTrainSort(); //4.2现场HSE绩效数据统计 GetCheckSort(); //4.3本月隐患 GetManager_HiddenDanger(); //4.4本月项目作业许可管理数据 getProjectAssignment(); //4.5项目本月危大工程管理数据 getMonthHazardousGrid(); //4.6.1 应急预案发布情况 GetEmergencyPlan(); //4.6.2 应急演练工作情况说明 GetDrillRecordList(); //4.7HSE奖励与处罚 GetRewardAndPunishSort(); //5.1本月项目HSE费用投入统计 GetFiveExpenseList(); //6.1未遂事件统计 GetAttempted(); //6.1 2本月伤害事故统计 GetInjuryAccident(); //6.3 HSE目标实现情况 GetGalachList(); } else { //2.本月项目现场HSE人力投入情况 GetPersonSortEdit(); //3.本月隐患 GetManager_HiddenDangerEdit(); #region 加载照片 var txtReportList = db.Report_TextBoxContent.Where(x => x.ReportId == MonthReportId).ToList(); if (txtReportList.FirstOrDefault(x => x.ContentType == "10-1") != null) { imgPhoto.ImageUrl = "~/" + txtReportList.FirstOrDefault(x => x.ContentType == "10-1").ImageUrl; txtPhotoContent1.Text = txtReportList.FirstOrDefault(x => x.ContentType == "10-1").ContentText; } if (txtReportList.FirstOrDefault(x => x.ContentType == "10-2") != null) { imgPhoto2.ImageUrl = "~/" + txtReportList.FirstOrDefault(x => x.ContentType == "10-2").ImageUrl; txtPhotoContent2.Text = txtReportList.FirstOrDefault(x => x.ContentType == "10-2").ContentText; } if (txtReportList.FirstOrDefault(x => x.ContentType == "10-3") != null) { imgPhoto3.ImageUrl = "~/" + txtReportList.FirstOrDefault(x => x.ContentType == "10-3").ImageUrl; txtPhotoContent3.Text = txtReportList.FirstOrDefault(x => x.ContentType == "10-3").ContentText; } if (txtReportList.FirstOrDefault(x => x.ContentType == "10-4") != null) { imgPhoto4.ImageUrl = "~/" + txtReportList.FirstOrDefault(x => x.ContentType == "10-4").ImageUrl; txtPhotoContent4.Text = txtReportList.FirstOrDefault(x => x.ContentType == "10-4").ContentText; } if (txtReportList.FirstOrDefault(x => x.ContentType == "10-5") != null) { imgPhoto5.ImageUrl = "~/" + txtReportList.FirstOrDefault(x => x.ContentType == "10-5").ImageUrl; txtPhotoContent5.Text = txtReportList.FirstOrDefault(x => x.ContentType == "10-5").ContentText; } if (txtReportList.FirstOrDefault(x => x.ContentType == "10-6") != null) { imgPhoto6.ImageUrl = "~/" + txtReportList.FirstOrDefault(x => x.ContentType == "10-6").ImageUrl; txtPhotoContent6.Text = txtReportList.FirstOrDefault(x => x.ContentType == "10-6").ContentText; } if (txtReportList.FirstOrDefault(x => x.ContentType == "10-7") != null) { imgPhoto7.ImageUrl = "~/" + txtReportList.FirstOrDefault(x => x.ContentType == "10-7").ImageUrl; txtPhotoContent7.Text = txtReportList.FirstOrDefault(x => x.ContentType == "10-7").ContentText; } if (txtReportList.FirstOrDefault(x => x.ContentType == "10-8") != null) { imgPhoto8.ImageUrl = "~/" + txtReportList.FirstOrDefault(x => x.ContentType == "10-8").ImageUrl; txtPhotoContent8.Text = txtReportList.FirstOrDefault(x => x.ContentType == "10-8").ContentText; } if (txtReportList.FirstOrDefault(x => x.ContentType == "10-9") != null) { imgPhoto9.ImageUrl = "~/" + txtReportList.FirstOrDefault(x => x.ContentType == "10-9").ImageUrl; txtPhotoContent9.Text = txtReportList.FirstOrDefault(x => x.ContentType == "10-9").ContentText; } if (txtReportList.FirstOrDefault(x => x.ContentType == "10-10") != null) { imgPhoto10.ImageUrl = "~/" + txtReportList.FirstOrDefault(x => x.ContentType == "10-10").ImageUrl; txtPhotoContent10.Text = txtReportList.FirstOrDefault(x => x.ContentType == "10-10").ContentText; } if (txtReportList.FirstOrDefault(x => x.ContentType == "10-11") != null) { imgPhoto11.ImageUrl = "~/" + txtReportList.FirstOrDefault(x => x.ContentType == "10-11").ImageUrl; txtPhotoContent11.Text = txtReportList.FirstOrDefault(x => x.ContentType == "10-11").ContentText; } if (txtReportList.FirstOrDefault(x => x.ContentType == "10-12") != null) { imgPhoto12.ImageUrl = "~/" + txtReportList.FirstOrDefault(x => x.ContentType == "10-12").ImageUrl; txtPhotoContent12.Text = txtReportList.FirstOrDefault(x => x.ContentType == "10-12").ContentText; } #endregion } } #region 2 人力投入情况 /// /// 显示月报告人员投入情况 /// private void GetPersonSort() { List personSorts = new List(); //var units = from x in Funs.DB.Project_ProjectUnit // where x.ProjectId == this.ProjectId && (x.UnitType == "1" || x.UnitType == "2") // orderby x.UnitType // select x; //1为总包,2为施工分包 int totalSumPersonNum = 0;//总部 int totalSumOutPersonNum = 0;//外聘 int totalHSEPersonNum = 0; var spckList = db.SitePerson_Checking.Where(x => x.IntoOutTime >= startTime && x.IntoOutTime <= endTime && x.ProjectId == ProjectId && x.IntoOut == "1"); if (units.Count() > 0) { foreach (Model.Project_ProjectUnit u in units) { Model.Manager_PersonSortC personSort = new Model.Manager_PersonSortC { PersonSortId = Guid.NewGuid().ToString(), UnitId = u.UnitId, HSEPersonNum = 0, ContractRange = u.ContractRange }; //本部本月人数,本年考勤人数除当前月份,取平均数 //年度 var yearList = spckList.Where(x => x.UnitId == u.UnitId).ToList().Select(x => new hseDayItem() { IdentityCard = x.IdentityCard, IntoOutTime = getShortTime(x.IntoOutTime) }).GroupBy(x => new { x.IdentityCard}) .ToList(); personSort.SumPersonNum = yearList.Count(); //五环 if (u.UnitId == Const.UnitId_CWCEC) { personSort.SumOutPersonNum = 0; } else { personSort.SumOutPersonNum = 0; } ////本部人员 //SumPersonNum = BLL.PersonService.GetPersonCountByUnitId(u.UnitId, ProjectId, Convert.ToDateTime(txtEndDate.Text), false),//本部 // SumOutPersonNum = 0,//外聘 personSorts.Add(personSort); totalSumPersonNum += Convert.ToInt32(personSort.SumPersonNum)+ Convert.ToInt32(personSort.SumOutPersonNum); totalSumOutPersonNum += Convert.ToInt32(personSort.SumOutPersonNum); totalHSEPersonNum += Convert.ToInt32(personSort.HSEPersonNum); } } this.gvPersonSort.DataSource = personSorts; this.gvPersonSort.DataBind(); if (this.gvPersonSort.Rows.Count > 0) { JObject summary = new JObject(); summary.Add("UnitId", "合计:"); summary.Add("SumPersonNum", totalSumPersonNum); //summary.Add("SumOutPersonNum", totalSumOutPersonNum); summary.Add("HSEPersonNum", totalHSEPersonNum); this.gvPersonSort.SummaryData = summary; } else { this.gvPersonSort.SummaryData = null; } } //修改的时候 void GetPersonSortEdit() { var q = from x in db.Manager_PersonSortC where x.MonthReportId == MonthReportId select x; if (q.Count() > 0) //保存过数据 { //人力投入情况 List sorts = (from x in db.Manager_PersonSortC join y in db.Project_ProjectUnit on x.UnitId equals y.UnitId where x.MonthReportId == MonthReportId && y.ProjectId == this.ProjectId orderby y.UnitType select x).Distinct().ToList(); List personSorts = new List(); foreach (var unit in units) { Model.Manager_PersonSortC personSort = sorts.FirstOrDefault(x => x.UnitId == unit.UnitId); if (personSort != null) { personSorts.Add(personSort); } } this.gvPersonSort.DataSource = personSorts; this.gvPersonSort.DataBind(); if (this.gvPersonSort.Rows.Count > 0) { JObject summary = new JObject(); summary.Add("UnitId", "合计:"); summary.Add("SumPersonNum", (from x in personSorts select x.SumPersonNum ?? 0).Sum()+ (from x in personSorts select x.SumOutPersonNum ?? 0).Sum()); //summary.Add("SumOutPersonNum", (from x in personSorts select x.SumOutPersonNum ?? 0).Sum()); summary.Add("HSEPersonNum", (from x in personSorts select x.HSEPersonNum ?? 0).Sum()); this.gvPersonSort.SummaryData = summary; } else { this.gvPersonSort.SummaryData = null; } } else { GetPersonSort(); } } #endregion #region 3.本月项目现场HSE人工日统计 public class hseDayItem { public string IdentityCard { get; set; } public string IntoOutTime { get; set; } public string UnitId { get; set; } } public string getShortTime(DateTime? a) { return Convert.ToDateTime(a).ToString("yyyy-MM-dd"); } private void getMonthReportCHSEDay() { //数据了太大,查起来有点问题。 //var spckList = db.SitePerson_Checking.Where(x => x.ProjectId == ProjectId && x.IntoOut == "1").Select(x=>new { // IntoOutTime=x.IntoOutTime, // IdentityCard=x.IdentityCard, // UnitId=x.UnitId //}); //本月项目现场HSE人工日统计 Model.MonthReportCHSEDay hseDay = new Model.MonthReportCHSEDay { MonthHSEDay = (endTime - startTime).Days + 1 }; //累计安全工作天数(当前日期-项目开始日期) hseDay.SumHSEDay = (endTime - projectStartTime).Days; ////本月HSE人工日、年度累计HSE人工日、总累计HSE人工日,考勤中取 ////本月 //var list = spckList.Where(x => x.IntoOutTime >= startTime //&& x.IntoOutTime <= endTime).ToList().Select(x => new hseDayItem() //{ // IdentityCard = x.IdentityCard, // IntoOutTime = getShortTime(x.IntoOutTime) //}).GroupBy(x => new { x.IdentityCard, x.IntoOutTime }) // .ToList(); //本月HSE人工日 hseDay.MonthHSEWorkDay = SQLHelper.RunProcGetHsseKq(ProjectId, startTime, endTime, "0"); //list.Count(); //本月安全人工时(五环) //hseDay.HseManhours = spckList.Where(x => x.IntoOutTime >= startTime //&& x.IntoOutTime <= endTime && x.UnitId == Const.UnitId_CWCEC).ToList().Select(x => new hseDayItem() //{ // IdentityCard = x.IdentityCard, // IntoOutTime = getShortTime(x.IntoOutTime) //}).GroupBy(x => new { x.IdentityCard, x.IntoOutTime }) // .ToList().Count() * 8; hseDay.HseManhours = SQLHelper.RunProcGetHsseKq(ProjectId, startTime, endTime, "3"); //本月安全人工时(分包商) hseDay.SubcontractManHours = SQLHelper.RunProcGetHsseKq(ProjectId, startTime, endTime, "1"); // spckList.Where(x => x.IntoOutTime >= startTime //&& x.IntoOutTime <= endTime && x.UnitId != Const.UnitId_CWCEC).ToList().Select(x => new hseDayItem() //{ // IdentityCard = x.IdentityCard, // IntoOutTime = getShortTime(x.IntoOutTime) //}).GroupBy(x => new { x.IdentityCard, x.IntoOutTime }) // .ToList().Count() * 8; //年度 //var yearList = spckList.Where(x => x.IntoOutTime >= yearStartTime // && x.IntoOutTime <= endTime).ToList().Select(x => new hseDayItem() // { // IdentityCard = x.IdentityCard, // IntoOutTime = getShortTime(x.IntoOutTime) // }).GroupBy(x => new { x.IdentityCard, x.IntoOutTime }) // .ToList(); //年度累计人工日 hseDay.YearHSEWorkDay = SQLHelper.RunProcGetHsseKq(ProjectId, yearStartTime, endTime, "0"); ; //yearList.Count; //年度累计HSE人工时 hseDay.TotalHseManhoursYear = hseDay.YearHSEWorkDay*8; //yearList.Count * 8; // // //项目累计 // var pList = spckList.Where(x => x.IntoOutTime >= projectStartTime //&& x.IntoOutTime <= endTime).ToList().Select(x => new hseDayItem() //{ // IdentityCard = x.IdentityCard, // IntoOutTime = getShortTime(x.IntoOutTime) //}).GroupBy(x => new { x.IdentityCard, x.IntoOutTime }) // .ToList(); hseDay.SumHSEWorkDay = SQLHelper.RunProcGetHsseKq(ProjectId, projectStartTime, endTime, "0"); //pList.Count; hseDay.TotalHseManhours = hseDay.SumHSEWorkDay*8; //pList.Count * 8; List listCHSEDay = new List(); listCHSEDay.Add(hseDay); this.gvHSEDay.DataSource = listCHSEDay; this.gvHSEDay.DataBind(); } #endregion #region HSE培训 /// /// 显示月报告HSE培训情况 /// private void GetTrainSort() { trainSorts.Clear(); var TotalPersonNum = 0; var list = db.Base_TrainType.ToList().OrderBy(x=>x.TrainTypeCode); var listTrain = BLL.EduTrain_TrainRecordService.GetTrainingsByTrainDate(startTime, endTime, this.ProjectId); var listAllTrain = BLL.EduTrain_TrainRecordService.GetTrainingsByTrainDate(endTime, this.ProjectId); var listBosheng = db.Bo_Sheng_Train.Where(x => x.ProjectId == ProjectId && x.TrainStartDate >= startTime && x.TrainStartDate <= endTime).ToList(); var listAllBosheng = db.Bo_Sheng_Train.Where(x => x.ProjectId == ProjectId && x.TrainStartDate <= endTime).ToList(); foreach (var item in list) { int i = 0; var trainSort = new Model.Manager_TrainSortC { TrainSortId = SQLHelper.GetNewID(typeof(Model.Manager_TrainSortC)), SortIndex = i }; trainSort.TrainType = item.TrainTypeName; if (listTrain.Count > 0) { trainSort.TeachHour = listTrain.Where(x => x.TrainTypeId == item.TrainTypeId).Sum(x => x.TeachHour); trainSort.PersonNum = listTrain.Where(x => x.TrainTypeId == item.TrainTypeId).Sum(x => x.TrainPersonNum); } else { trainSort.TeachHour = 0; trainSort.PersonNum = 0; } if (listBosheng.Count> 0) { //入场 if (item.TrainTypeId == "dfb6a37e-4412-4ba9-ad59-3bc505bc21f7") { trainSort.PersonNum += listBosheng.Where(x => x.TrainType.Contains("入场")).Sum(x=>x.PersonCount); Func funDelegate = CustomCount; decimal numSum = 0; trainSort.TeachHour += listBosheng.Where(x => x.TrainType.Contains("入场")).Sum(x => funDelegate(x.TrainPeriod, numSum)); } else if (item.TrainTypeId == "c1a513bb-a547-45b0-944d-b0dd88f06f82") { //其他 trainSort.PersonNum += listBosheng.Where(x => x.TrainType.Contains("其他")).Sum(x => x.PersonCount); Func funDelegate = CustomCount; decimal numSum = 0; trainSort.TeachHour += listBosheng.Where(x => x.TrainType.Contains("其他")).Sum(x => funDelegate(x.TrainPeriod, numSum)); } else { //专项 trainSort.PersonNum += listBosheng.Where(x => x.TrainType.Contains("专项")).Sum(x => x.PersonCount); Func funDelegate = CustomCount; decimal numSum = 0; trainSort.TeachHour += listBosheng.Where(x => x.TrainType.Contains("专项")).Sum(x => funDelegate(x.TrainPeriod, numSum)); } } if (listAllTrain.Count > 0) { trainSort.TotalPersonNum = listAllTrain.Where(x => x.TrainTypeId == item.TrainTypeId).Sum(x => x.TrainPersonNum); TotalPersonNum += Convert.ToInt32(trainSort.TotalPersonNum); } else { trainSort.TotalPersonNum = 0; } if (listAllBosheng.Count>0) { //入场 if (item.TrainTypeId == "dfb6a37e-4412-4ba9-ad59-3bc505bc21f7") { trainSort.TotalPersonNum += listAllBosheng.Where(x => x.TrainType.Contains("入场")).Sum(x => x.PersonCount); TotalPersonNum+= Convert.ToInt32(trainSort.TotalPersonNum); } else if (item.TrainTypeId == "c1a513bb-a547-45b0-944d-b0dd88f06f82") { //其他 trainSort.TotalPersonNum += listAllBosheng.Where(x => x.TrainType.Contains("其他")).Sum(x => x.PersonCount); TotalPersonNum += Convert.ToInt32(trainSort.TotalPersonNum); } else { //专项 trainSort.TotalPersonNum += listAllBosheng.Where(x => x.TrainType.Contains("专项")).Sum(x => x.PersonCount); TotalPersonNum += Convert.ToInt32(trainSort.TotalPersonNum); } } //博晟工具箱中的数据 i++; trainSorts.Add(trainSort); } this.gvTrainSort.DataSource = trainSorts; this.gvTrainSort.DataBind(); if (this.gvTrainSort.Rows.Count > 0) { JObject summary = new JObject(); summary.Add("TrainType", "培训人数合计:"); summary.Add("TotalPersonNum", TotalPersonNum); this.gvTrainSort.SummaryData = summary; } else { this.gvTrainSort.SummaryData = null; } } #endregion public static decimal CustomCount(string strNum, decimal Sum) { Sum += Convert.ToDecimal(strNum); return Sum; } #region 4.2现场HSE会议及检查统计 private void GetCheckSort() { var hselogList = db.Manager_HSSELog.Where(x => x.ProjectId == ProjectId).ToList(); int i = 0; #region HSE会议 本月开展次数 int safetyLeaderGroup = BLL.SafetyLeaderGroupMeetingService.GetCountByTime(startTime, endTime, this.ProjectId);//安全领导小组会议 int weekMeeting = BLL.WeekMeetingService.GetCountByTime(startTime, endTime, this.ProjectId);//周例会 int monthMeeting = BLL.MonthMeetingService.GetCountByTime(startTime, endTime, this.ProjectId);//月例会 int specialMeeting = BLL.SpecialMeetingService.GetCountByTime(startTime, endTime, this.ProjectId);//专题例会 int attendMeeting = BLL.AttendMeetingService.GetCountByTime(startTime, endTime, this.ProjectId);//其他会议 int classMeeting = BLL.ClassMeetingService.GetCountByTime(startTime, endTime, this.ProjectId);//班前会 #endregion #region HSE会议 年度累计次数 int yearSafetyLeaderGroup = BLL.SafetyLeaderGroupMeetingService.GetCountByTime(yearStartTime, endTime, this.ProjectId);//安全领导小组会议 int yearWeekMeeting = BLL.WeekMeetingService.GetCountByTime(yearStartTime, endTime, this.ProjectId);//周例会 int yearMonthMeeting = BLL.MonthMeetingService.GetCountByTime(yearStartTime, endTime, this.ProjectId);//月例会 int yearSpecialMeeting = BLL.SpecialMeetingService.GetCountByTime(yearStartTime, endTime, this.ProjectId);//专题例会 int yearAttendMeeting = BLL.AttendMeetingService.GetCountByTime(yearStartTime, endTime, this.ProjectId);//其他会议 int yearClassMeeting = BLL.ClassMeetingService.GetCountByTime(yearStartTime, endTime, this.ProjectId);//班前会 #endregion #region HSE会议 项目总累计数 int projectSafetyLeaderGroup = BLL.SafetyLeaderGroupMeetingService.GetCountByTime(projectStartTime, endTime, this.ProjectId);//安全领导小组会议 int projectWeekMeeting = BLL.WeekMeetingService.GetCountByTime(projectStartTime, endTime, this.ProjectId);//周例会 int projectMonthMeeting = BLL.MonthMeetingService.GetCountByTime(projectStartTime, endTime, this.ProjectId);//月例会 int projectSpecialMeeting = BLL.SpecialMeetingService.GetCountByTime(projectStartTime, endTime, this.ProjectId);//专题例会 int projectAttendMeeting = BLL.AttendMeetingService.GetCountByTime(projectStartTime, endTime, this.ProjectId);//其他会议 int projectClassMeeting = BLL.ClassMeetingService.GetCountByTime(projectStartTime, endTime, this.ProjectId);//班前会 #endregion Model.Manager_CheckSortC checkSort1 = new Model.Manager_CheckSortC { CheckSortId = SQLHelper.GetNewID(typeof(Model.Manager_CheckSortC)), SortIndex = i, CheckType = "HSE会议", CheckNumber = safetyLeaderGroup + weekMeeting + monthMeeting + specialMeeting + attendMeeting + classMeeting, YearCheckNum = yearSafetyLeaderGroup + yearWeekMeeting + yearMonthMeeting + yearSpecialMeeting + yearSpecialMeeting + yearAttendMeeting + yearClassMeeting, TotalCheckNum = projectSafetyLeaderGroup + projectWeekMeeting + projectMonthMeeting + projectSpecialMeeting + projectSpecialMeeting + projectAttendMeeting + projectClassMeeting, }; checkSorts.Add(checkSort1); i++; Model.Manager_CheckSortC checkSort2 = new Model.Manager_CheckSortC { CheckSortId = SQLHelper.GetNewID(typeof(Model.Manager_CheckSortC)), SortIndex = i, CheckType = "开工前HSE检查", CheckNumber = BLL.Check_CheckWorkService.GetCountByCheckTime(startTime, endTime, this.ProjectId), YearCheckNum = BLL.Check_CheckWorkService.GetCountByCheckTime(yearStartTime, endTime, this.ProjectId), TotalCheckNum = BLL.Check_CheckWorkService.GetCountByCheckTime(projectStartTime, endTime, this.ProjectId) }; checkSorts.Add(checkSort2); i++; //日巡检取HSE日志检查次数 Model.Manager_CheckSortC checkSort3 = new Model.Manager_CheckSortC { CheckSortId = SQLHelper.GetNewID(typeof(Model.Manager_CheckSortC)), SortIndex = i, CheckType = "日巡检", CheckNumber = hselogList.Where(x=>x.CompileDate>=startTime && x.CompileDate<=endTime).Sum(x=>x.Num21), YearCheckNum = hselogList.Where(x => x.CompileDate >= yearStartTime && x.CompileDate <= endTime).Sum(x => x.Num21), TotalCheckNum = hselogList.Where(x => x.CompileDate >= projectStartTime && x.CompileDate <= endTime).Sum(x => x.Num21) }; checkSorts.Add(checkSort3); i++; Model.Manager_CheckSortC checkSort4 = new Model.Manager_CheckSortC { CheckSortId = SQLHelper.GetNewID(typeof(Model.Manager_CheckSortC)), SortIndex = i, CheckType = "专项检查", CheckNumber = BLL.Check_CheckSpecialService.GetCountByCheckTime(startTime, endTime, this.ProjectId), YearCheckNum = BLL.Check_CheckSpecialService.GetCountByCheckTime(yearStartTime, endTime, this.ProjectId), TotalCheckNum = BLL.Check_CheckSpecialService.GetCountByCheckTime(projectStartTime, endTime, this.ProjectId) }; checkSorts.Add(checkSort4); i++; Model.Manager_CheckSortC checkSort5 = new Model.Manager_CheckSortC { CheckSortId = SQLHelper.GetNewID(typeof(Model.Manager_CheckSortC)), SortIndex = i, CheckType = "节假日前安全检查", CheckNumber = BLL.Check_CheckHolidayService.GetCountByCheckTime(startTime, endTime, this.ProjectId), YearCheckNum = BLL.Check_CheckHolidayService.GetCountByCheckTime(yearStartTime, endTime, this.ProjectId), TotalCheckNum = BLL.Check_CheckHolidayService.GetCountByCheckTime(projectStartTime, endTime, this.ProjectId) }; checkSorts.Add(checkSort5); i++; Model.Manager_CheckSortC checkSort6 = new Model.Manager_CheckSortC { CheckSortId = SQLHelper.GetNewID(typeof(Model.Manager_CheckSortC)), SortIndex = i, CheckType = "文明施工检查", CheckNumber = 0, YearCheckNum = 0, TotalCheckNum = 0 }; checkSorts.Add(checkSort6); i++; Model.Manager_CheckSortC checkSort7 = new Model.Manager_CheckSortC { CheckSortId = SQLHelper.GetNewID(typeof(Model.Manager_CheckSortC)), SortIndex = i, CheckType = "联合检查", CheckNumber = BLL.Check_CheckColligationService.GetCountByCheckTime(startTime, endTime, this.ProjectId), YearCheckNum = BLL.Check_CheckColligationService.GetCountByCheckTime(yearStartTime, endTime, this.ProjectId), TotalCheckNum = BLL.Check_CheckColligationService.GetCountByCheckTime(projectStartTime, endTime, this.ProjectId) }; checkSorts.Add(checkSort7); i++; Model.Manager_CheckSortC checkSort11 = new Model.Manager_CheckSortC { CheckSortId = SQLHelper.GetNewID(typeof(Model.Manager_CheckSortC)), SortIndex = i, CheckType = "HSE管理文件/方案发布", CheckNumber = BLL.ConstructSolutionService.GetConstructSolutionCountByDate(this.ProjectId, startTime, endTime), YearCheckNum = BLL.ConstructSolutionService.GetConstructSolutionCountByDate(this.ProjectId, yearStartTime, endTime), TotalCheckNum = BLL.ConstructSolutionService.GetConstructSolutionCountByDate(this.ProjectId, projectStartTime, endTime), }; checkSorts.Add(checkSort11); i++; this.gvCheckSort.DataSource = checkSorts; this.gvCheckSort.DataBind(); } #endregion #region 4.5项目本月危大工程管理数据 private void getMonthHazardousGrid() { var list = db.Solution_LargerHazard.Where(x => x.ProjectId == ProjectId && x.RecordTime >= startTime && x.RecordTime <= endTime && x.States == "3").ToList(); //加载本月非经专家论证的危大工程数量 var model = new MonthHazardous() { Id = Guid.NewGuid().ToString(), Category = "非经专家论证的危大工程数量", ExpertCount = list.Where(x => x.IsArgument == false).ToList().Count() }; monthHazardousList.Add(model); //加载本月经专家论证的超危大工程数量 model = new MonthHazardous() { Id = Guid.NewGuid().ToString(), Category = "经专家论证的危大工程数量", ExpertCount = list.Where(x => x.IsArgument == true).ToList().Count() }; monthHazardousList.Add(model); MonthHazardousGrid.DataSource = monthHazardousList; MonthHazardousGrid.DataBind(); } #endregion #region 4.3 本月隐患整改情况 void GetManager_HiddenDangerEdit() { var q = from x in db.Manager_HiddenDanger where x.MonthReportId == MonthReportId select x; if (q.Count() > 0) //保存过数据 { //人力投入情况 List sorts = (from x in db.Manager_HiddenDanger join y in db.Project_ProjectUnit on x.UnitId equals y.UnitId where x.MonthReportId == MonthReportId && y.ProjectId == this.ProjectId orderby y.UnitType select x).Distinct().ToList(); List personSorts = new List(); //var units = from x in db.Project_ProjectUnit // where x.ProjectId == this.ProjectId && (x.UnitType == "1" || x.UnitType == "2") // orderby x.UnitType // select x; //1为总包,2为施工分包 foreach (var unit in units) { Model.Manager_HiddenDanger personSort = sorts.FirstOrDefault(x => x.UnitId == unit.UnitId); if (personSort != null) { personSorts.Add(personSort); } } this.GridHiddenDanger.DataSource = personSorts; this.GridHiddenDanger.DataBind(); } else { GetManager_HiddenDanger(); } } //保存时根据 HSE巡检、专项检查、综合检查(即周检、月检等)、隐患整改(书面整改单)这四项同时抓取数据 void GetManager_HiddenDanger() { //安全巡检list var HseList = (from x in Funs.DB.View_Hazard_HazardRegister where x.ProblemTypes == "1" && x.ProjectId == ProjectId && x.CheckTime >= startTime && x.CheckTime <= endTime select x); //专项检查 var CheckSpecialList = from x in db.Check_CheckSpecialDetail join y in db.Check_CheckSpecial on x.CheckSpecialId equals y.CheckSpecialId where y.ProjectId == ProjectId && y.CheckTime >= startTime && y.CheckTime <= endTime select x; //综合检查 var CheckColligationList = from x in db.Check_CheckColligationDetail join y in db.Check_CheckColligation on x.CheckColligationId equals y.CheckColligationId where y.ProjectId == ProjectId && y.CheckTime >= startTime && y.CheckTime <= endTime select x; //隐患整改单 var YhzgdList = from x in db.Check_RectifyNoticesItem join y in db.Check_RectifyNotices on x.RectifyNoticesId equals y.RectifyNoticesId where y.ProjectId == ProjectId && y.CheckedDate >= startTime && y.CheckedDate <= endTime select new { y.UnitId, x.HiddenHazardType, y.States,y.CompleteDate,x.LimitTime }; int yhMonthSum = 0, yhYearSum = 0; var list = new List(); if (units.Count() > 0) { var i = 1; foreach (Model.Project_ProjectUnit u in units) { var model = new Manager_HiddenDanger { Id = Guid.NewGuid().ToString(), UnitId = u.UnitId, SortIndex = i }; //HSE巡检(一般和重大) //所有数据 var Commonly1 = HseList.Where(x => x.ResponsibleUnit == u.UnitId && x.Type == 0 && (x.Risk_Level == "一般" || x.Risk_Level==null || x.Risk_Level == "") && x.States == "3").Count(); var MajorNum1 = HseList.Where(x => x.ResponsibleUnit == u.UnitId && x.Type == 0 && x.Risk_Level == "重大" && x.States == "3").Count(); //总数 var Sum1 = HseList.Where(x => x.ResponsibleUnit == u.UnitId && x.Type == 0).Count(); //已关闭并且在期限内的 var Yzg1 = HseList.Where(x => x.ResponsibleUnit == u.UnitId && x.Type == 0 && x.States == "2" && x.RectificationTime<= x.RectificationPeriod ).Count(); //专项检查(一般和重大) var Commonly2 = CheckSpecialList.Where(x => x.UnitId == u.UnitId && (x.HiddenHazardType == "1"|| x.HiddenHazardType==null || x.HiddenHazardType == "") && x.CompleteStatus == true).Count(); var MajorNum2 = CheckSpecialList.Where(x => x.UnitId == u.UnitId && x.HiddenHazardType == "3" && x.CompleteStatus == true).Count(); //总数,已整改 var Sum2 = CheckSpecialList.Where(x => x.UnitId == u.UnitId).Count(); //已整改,在期限内的 var Yzg2 = CheckSpecialList.Where(x => x.UnitId == u.UnitId && x.CompleteStatus == true && x.CompletedDate<=x.Rectification_Date).Count(); //综合检查(一般和重大) var Commonly3 = CheckColligationList.Where(x => x.UnitId == u.UnitId && (x.HiddenHazardType == "一般" || x.HiddenHazardType==null || x.HiddenHazardType == "") && x.CompleteStatus == true).Count(); var MajorNum3 = CheckColligationList.Where(x => x.UnitId == u.UnitId && x.HiddenHazardType == "重大" && x.CompleteStatus == true).Count(); //总数,已整改 var Sum3 = CheckColligationList.Where(x => x.UnitId == u.UnitId).Count(); //已整改 var Yzg3 = CheckColligationList.Where(x => x.UnitId == u.UnitId && x.CompleteStatus == true && x.HandleStep=="5" && x.CompletedDate<= x.LimitedDate).Count(); //隐患整改(一般和重大) var Commonly4 = YhzgdList.Where(x => x.UnitId == u.UnitId && (x.HiddenHazardType == "一般" || x.HiddenHazardType == null || x.HiddenHazardType == "") && x.States == "5").Count(); var MajorNum4 = YhzgdList.Where(x => x.UnitId == u.UnitId && x.HiddenHazardType == "重大" && x.States == "5").Count(); //总数,已整改 var Sum4 = YhzgdList.Where(x => x.UnitId == u.UnitId).Count(); var Yzg4 = YhzgdList.Where(x => x.UnitId == u.UnitId && x.States == "5" && x.CompleteDate<= x.LimitTime).Count(); model.CommonlyNum = Commonly1 + Commonly2 + Commonly3 + Commonly4; model.MajorNum = MajorNum1 + MajorNum2 + MajorNum3 + MajorNum4; //整改率=已整改/总数 if ((Sum1 + Sum2 + Sum3 + Sum4) != 0) { model.ReRate = Math.Round((float)(Yzg1 + Yzg2 + Yzg3 + Yzg4) / (float)(Sum1 + Sum2 + Sum3 + Sum4) * 100, 2).ToString(); } else { model.ReRate = "0"; } yhMonthSum += Convert.ToInt32(model.CommonlyNum) + Convert.ToInt32(model.MajorNum); list.Add(model); i++; } } txtMonthHdangerCount.Text = yhMonthSum.ToString(); this.GridHiddenDanger.DataSource = list; this.GridHiddenDanger.DataBind(); #region 本年隐患总数 //安全巡检list var HseListYear = (from x in Funs.DB.View_Hazard_HazardRegister where x.ProblemTypes == "1" && x.ProjectId == ProjectId && x.CheckTime >= yearStartTime && x.CheckTime <= endTime && x.States == "3" select x).ToList().Count; //专项检查 var CheckSpecialListYear = (from x in db.Check_CheckSpecialDetail join y in db.Check_CheckSpecial on x.CheckSpecialId equals y.CheckSpecialId where y.ProjectId == ProjectId && y.CheckTime >= yearStartTime && y.CheckTime <= endTime && x.CompleteStatus == true select x).ToList().Count; //综合检查 var CheckColligationListYear = (from x in db.Check_CheckColligationDetail join y in db.Check_CheckColligation on x.CheckColligationId equals y.CheckColligationId where y.ProjectId == ProjectId && y.CheckTime >= yearStartTime && y.CheckTime <= endTime && x.CompleteStatus == true select x).ToList().Count; //隐患整改单 var YhzgdListYear = (from x in db.Check_RectifyNoticesItem join y in db.Check_RectifyNotices on x.RectifyNoticesId equals y.RectifyNoticesId where y.ProjectId == ProjectId && y.CheckedDate >= yearStartTime && y.CheckedDate <= endTime && y.States == "5" select new { y.UnitId, x.HiddenHazardType, y.States }).ToList().Count; txtYearHdangerCount.Text = (HseListYear + CheckSpecialListYear + CheckColligationListYear + YhzgdListYear).ToString(); #endregion } #endregion #region 4.4本月项目作业许可管理数据 private void getProjectAssignment() { int num1 = 0, num2 = 0, num3 = 0, num4 = 0, num5 = 0, num6 = 0, num7 = 0, num8 = 0; //动火 var firelist = db.License_FireWork.Where(x => x.States == "3" && x.ProjectId == ProjectId); //动土 var breaklist = db.License_BreakGround.Where(x => x.States == "3" && x.ProjectId == ProjectId); //受限空间 var limitlist = db.License_LimitedSpace.Where(x => x.States == "3" && x.ProjectId == ProjectId); //临时用电 var electrilist = db.License_Electricity.Where(x => x.States == "3" && x.ProjectId == ProjectId); //高处作业 var heightlist = db.License_HeightWork.Where(x => x.States == "3" && x.ProjectId == ProjectId); //射线作业 var radialist = db.License_RadialWork.Where(x => x.States == "3" && x.ProjectId == ProjectId); //吊装作业 var liftinglist = db.License_LiftingWork.Where(x => x.States == "3" && x.ProjectId == ProjectId); //夜间施工 var nightlist = db.License_NightWork.Where(x => x.States == "3" && x.ProjectId == ProjectId); //定稿 var dg = db.License_LicenseManager.Where(x => x.WorkStates == "3" && x.ProjectId == ProjectId); //本月 num1 = firelist.Where(x => x.ApplyDate >= startTime && x.ApplyDate <= endTime).ToList().Count + dg.Where(x => x.LicenseTypeId == "aa5b3d17-23bb-4c81-a413-bdbfdd64b38a" && x.CompileDate >= startTime && x.CompileDate <= endTime).ToList().Count; num2 = breaklist.Where(x => x.ApplyDate >= startTime && x.ApplyDate <= endTime).ToList().Count; num3 = limitlist.Where(x => x.ApplyDate >= startTime && x.ApplyDate <= endTime).ToList().Count + dg.Where(x => x.LicenseTypeId == "9062f7e7-ce35-4e0d-8dbc-760569d2bd1e" && x.CompileDate >= startTime && x.CompileDate <= endTime).ToList().Count; num4 = electrilist.Where(x => x.ApplyDate >= startTime && x.ApplyDate <= endTime).ToList().Count + dg.Where(x => x.LicenseTypeId == "30f9a07e-289d-4a91-9373-2e3bcef1f1e9" && x.CompileDate >= startTime && x.CompileDate <= endTime).ToList().Count; num5 = heightlist.Where(x => x.ApplyDate >= startTime && x.ApplyDate <= endTime).ToList().Count + dg.Where(x => x.LicenseTypeId == "4ec4267c-a2e9-4ad2-a95b-7552425acbd4" && x.CompileDate >= startTime && x.CompileDate <= endTime).ToList().Count; num6 = radialist.Where(x => x.ApplyDate >= startTime && x.ApplyDate <= endTime).ToList().Count + dg.Where(x => x.LicenseTypeId == "4a25f089-ff1d-4a3c-9415-3f4e3d58bb77" && x.CompileDate >= startTime && x.CompileDate <= endTime).ToList().Count; num7 = liftinglist.Where(x => x.ApplyDate >= startTime && x.ApplyDate <= endTime).ToList().Count + dg.Where(x => x.LicenseTypeId == "3835ad67-1ae2-4b38-9a5d-71deb6d972aa" && x.CompileDate >= startTime && x.CompileDate <= endTime).ToList().Count; num8 = nightlist.Where(x => x.ApplyDate >= startTime && x.ApplyDate <= endTime).ToList().Count + dg.Where(x => x.LicenseTypeId == "52a699e6-3d0b-4be4-b37d-bf05c41767dd" && x.CompileDate >= startTime && x.CompileDate <= endTime).ToList().Count; nbFireWorkCount.Text = num1.ToString(); nbBreakGroundCount.Text = num2.ToString(); nbLimitedSpaceCount.Text = num3.ToString(); nbElectricityCount.Text = num4.ToString(); nbHeightWorkCount.Text = num5.ToString(); nbRadialWork.Text = num6.ToString(); nbLiftingWorkCount.Text = num7.ToString(); nbNightWork.Text = num8.ToString(); nbMonthCount.Text = (num1 + num2 + num3 + num4 + num5 + num6 + num7 + num8).ToString(); //年度 num1 = firelist.Where(x => x.ApplyDate >= yearStartTime && x.ApplyDate <= endTime).ToList().Count + dg.Where(x => x.LicenseTypeId == "aa5b3d17-23bb-4c81-a413-bdbfdd64b38a" && x.CompileDate >= yearStartTime && x.CompileDate <= endTime).ToList().Count; num2 = breaklist.Where(x => x.ApplyDate >= yearStartTime && x.ApplyDate <= endTime).ToList().Count; num3 = limitlist.Where(x => x.ApplyDate >= yearStartTime && x.ApplyDate <= endTime).ToList().Count + dg.Where(x => x.LicenseTypeId == "9062f7e7-ce35-4e0d-8dbc-760569d2bd1e" && x.CompileDate >= yearStartTime && x.CompileDate <= endTime).ToList().Count; num4 = electrilist.Where(x => x.ApplyDate >= yearStartTime && x.ApplyDate <= endTime).ToList().Count + dg.Where(x => x.LicenseTypeId == "30f9a07e-289d-4a91-9373-2e3bcef1f1e9").ToList().Count; num5 = heightlist.Where(x => x.ApplyDate >= yearStartTime && x.ApplyDate <= endTime).ToList().Count + dg.Where(x => x.LicenseTypeId == "4ec4267c-a2e9-4ad2-a95b-7552425acbd4" && x.CompileDate >= yearStartTime && x.CompileDate <= endTime).ToList().Count; num6 = radialist.Where(x => x.ApplyDate >= yearStartTime && x.ApplyDate <= endTime).ToList().Count + dg.Where(x => x.LicenseTypeId == "4a25f089-ff1d-4a3c-9415-3f4e3d58bb77" && x.CompileDate >= yearStartTime && x.CompileDate <= endTime).ToList().Count; num7 = liftinglist.Where(x => x.ApplyDate >= yearStartTime && x.ApplyDate <= endTime).ToList().Count + dg.Where(x => x.LicenseTypeId == "3835ad67-1ae2-4b38-9a5d-71deb6d972aa" && x.CompileDate >= yearStartTime && x.CompileDate <= endTime).ToList().Count; num8 = nightlist.Where(x => x.ApplyDate >= yearStartTime && x.ApplyDate <= endTime).ToList().Count + dg.Where(x => x.LicenseTypeId == "52a699e6-3d0b-4be4-b37d-bf05c41767dd" && x.CompileDate >= yearStartTime && x.CompileDate <= endTime).ToList().Count; nbYearCount.Text = (num1 + num2 + num3 + num4 + num5 + num6 + num7 + num8).ToString(); //项目累计 num1 = firelist.Where(x => x.ApplyDate >= projectStartTime && x.ApplyDate <= endTime).ToList().Count + dg.Where(x => x.LicenseTypeId == "aa5b3d17-23bb-4c81-a413-bdbfdd64b38a" && x.CompileDate >= projectStartTime && x.CompileDate <= endTime).ToList().Count; num2 = breaklist.Where(x => x.ApplyDate >= projectStartTime && x.ApplyDate <= endTime).ToList().Count; num3 = limitlist.Where(x => x.ApplyDate >= projectStartTime && x.ApplyDate <= endTime).ToList().Count + dg.Where(x => x.LicenseTypeId == "9062f7e7-ce35-4e0d-8dbc-760569d2bd1e" && x.CompileDate >= projectStartTime && x.CompileDate <= endTime).ToList().Count; num4 = electrilist.Where(x => x.ApplyDate >= projectStartTime && x.ApplyDate <= endTime).ToList().Count + dg.Where(x => x.LicenseTypeId == "30f9a07e-289d-4a91-9373-2e3bcef1f1e9" && x.CompileDate >= projectStartTime && x.CompileDate <= endTime).ToList().Count; num5 = heightlist.Where(x => x.ApplyDate >= projectStartTime && x.ApplyDate <= endTime).ToList().Count + dg.Where(x => x.LicenseTypeId == "4ec4267c-a2e9-4ad2-a95b-7552425acbd4" && x.CompileDate >= projectStartTime && x.CompileDate <= endTime).ToList().Count; num6 = radialist.Where(x => x.ApplyDate >= projectStartTime && x.ApplyDate <= endTime).ToList().Count + dg.Where(x => x.LicenseTypeId == "4a25f089-ff1d-4a3c-9415-3f4e3d58bb77" && x.CompileDate >= projectStartTime && x.CompileDate <= endTime).ToList().Count; num7 = liftinglist.Where(x => x.ApplyDate >= projectStartTime && x.ApplyDate <= endTime).ToList().Count + dg.Where(x => x.LicenseTypeId == "3835ad67-1ae2-4b38-9a5d-71deb6d972aa" && x.CompileDate >= projectStartTime && x.CompileDate <= endTime).ToList().Count; num8 = nightlist.Where(x => x.ApplyDate >= projectStartTime && x.ApplyDate <= endTime).ToList().Count + dg.Where(x => x.LicenseTypeId == "52a699e6-3d0b-4be4-b37d-bf05c41767dd" && x.CompileDate >= projectStartTime && x.CompileDate <= endTime).ToList().Count; nbProCount.Text = (num1 + num2 + num3 + num4 + num5 + num6 + num7 + num8).ToString(); } #endregion #region 4.6.1 应急预案发布情况(手动填写) private void GetEmergencyPlan() { int i = 1; var model = new Manager_EmergencyPlan() { Id = SQLHelper.GetNewID(typeof(Model.Manager_CheckSortC)), SortIndex = i, CaType = "综合应急预案", MonthCount = 0, YearCount = 0, ProCount = 0 }; emergencyPlanList.Add(model); i++; model = new Manager_EmergencyPlan() { Id = SQLHelper.GetNewID(typeof(Model.Manager_CheckSortC)), SortIndex = i, CaType = "专项应急预案", MonthCount = 0, YearCount = 0, ProCount = 0 }; emergencyPlanList.Add(model); i++; model = new Manager_EmergencyPlan() { Id = SQLHelper.GetNewID(typeof(Model.Manager_CheckSortC)), SortIndex = i, CaType = "现场处置方案", MonthCount = 0, YearCount = 0, ProCount = 0 }; emergencyPlanList.Add(model); i++; this.EmergencyPlanGrid.DataSource = emergencyPlanList; this.EmergencyPlanGrid.DataBind(); } #endregion #region 4.6.2 应急演练工作情况说明 private void GetDrillRecordList() { var query = (from x in db.Emergency_DrillRecordList join y in db.Sys_Const on x.DrillRecordType equals y.ConstValue where y.GroupId == "DrillRecordType" && x.States == "2" && x.ProjectId == ProjectId && x.DrillRecordDate >= startTime && x.DrillRecordDate <= endTime orderby x.DrillRecordDate select new { Id = Guid.NewGuid().ToString(), Dname = x.DrillRecordName, Ddate = x.DrillRecordDate, DrillRecordTypeName = y.ConstText, PersonNum = x.JointPersonNum, DrillCost = x.DrillCost }); foreach (var item in query) { var model = new Manager_DrillRecordList() { Id = Guid.NewGuid().ToString(), Dname = item.Dname, Ddate = item.Ddate, DrillRecordTypeName = item.DrillRecordTypeName, PersonNum = item.PersonNum, DrillCost = item.DrillCost }; drillRecordList.Add(model); } if (drillRecordList.Count == 0) { DrillRecordListGrid.EmptyText = "
暂无数据
"; } else { this.DrillRecordListGrid.DataSource = drillRecordList; this.DrillRecordListGrid.DataBind(); } } #endregion #region 4.7 HSE奖励与处罚 private void GetRewardAndPunishSort() { Model.Manager_RewardAndPunishSortC sortC = new Model.Manager_RewardAndPunishSortC { RewardAndPunishId = SQLHelper.GetNewID(typeof(Model.Manager_RewardAndPunishSortC)), RewardNum = BLL.IncentiveNoticeService.GetCountByDate(startTime, endTime, this.ProjectId), RewardMoney = BLL.IncentiveNoticeService.GetSumMoneyByDate(startTime, endTime, this.ProjectId), ProjectRewardMoney = BLL.IncentiveNoticeService.GetSumMoneyByDate(projectStartTime, endTime, this.ProjectId), PunishNum = BLL.PunishNoticeService.GetCountByDate(startTime, endTime, this.ProjectId), PunishMoney = BLL.PunishNoticeService.GetSumMoneyByDate(startTime, endTime, this.ProjectId), ProjectPunishMoney = BLL.PunishNoticeService.GetSumMoneyByDate(projectStartTime, endTime, this.ProjectId), }; rewardAndPunishSortCs.Add(sortC); this.gvRewardSortAndPunish.DataSource = rewardAndPunishSortCs; this.gvRewardSortAndPunish.DataBind(); } private void jerqueSavePunishList() { rewardAndPunishSortCs.Clear(); JArray mergedData = gvRewardSortAndPunish.GetMergedData(); foreach (JObject mergedRow in mergedData) { string status = mergedRow.Value("status"); JObject values = mergedRow.Value("values"); int i = mergedRow.Value("index"); Model.Manager_RewardAndPunishSortC punishSort = new Model.Manager_RewardAndPunishSortC { RewardAndPunishId = this.gvRewardSortAndPunish.Rows[i].DataKeys[0].ToString(), RewardNum = Funs.GetNewInt(values.Value("RewardNum").ToString()), RewardMoney = Funs.GetNewDecimal(values.Value("RewardMoney").ToString()), ProjectRewardMoney = Funs.GetNewDecimal(values.Value("ProjectRewardMoney").ToString()), PunishNum = Funs.GetNewInt(values.Value("PunishNum").ToString()), PunishMoney = Funs.GetNewDecimal(values.Value("PunishMoney").ToString()), ProjectPunishMoney = Funs.GetNewDecimal(values.Value("ProjectPunishMoney").ToString()) }; rewardAndPunishSortCs.Add(punishSort); } } #endregion #region 4.8HSE现场其他管理情况 #region 其他HSE管理情况 /// /// 增加其他HSE管理情况 /// /// /// protected void btnNewOtherManagement_Click(object sender, EventArgs e) { jerqueSaveOtherManagementList(); Model.Manager_Month_OtherManagementC otherManagementSort = new Model.Manager_Month_OtherManagementC { OtherManagementId = SQLHelper.GetNewID(typeof(Model.Manager_Month_OtherManagementC)) }; otherManagements.Add(otherManagementSort); this.gvOtherManagement.DataSource = otherManagements; this.gvOtherManagement.DataBind(); } /// /// 检查并保存其他HSE管理情况集合 /// private void jerqueSaveOtherManagementList() { otherManagements.Clear(); JArray mergedData = gvOtherManagement.GetMergedData(); foreach (JObject mergedRow in mergedData) { string status = mergedRow.Value("status"); JObject values = mergedRow.Value("values"); int i = mergedRow.Value("index"); Model.Manager_Month_OtherManagementC otherManagementSort = new Model.Manager_Month_OtherManagementC { OtherManagementId = this.gvOtherManagement.Rows[i].DataKeys[0].ToString(), SortIndex = i, ManagementDes = values.Value("ManagementDes").ToString() }; otherManagements.Add(otherManagementSort); } } protected void gvOtherManagement_RowCommand(object sender, GridCommandEventArgs e) { jerqueSaveOtherManagementList(); string rowID = this.gvOtherManagement.DataKeys[e.RowIndex][0].ToString(); if (e.CommandName == "Delete") { foreach (var item in otherManagements) { if (item.OtherManagementId == rowID) { otherManagements.Remove(item); break; } } gvOtherManagement.DataSource = otherManagements; gvOtherManagement.DataBind(); ShowNotify("删除数据成功!", MessageBoxIcon.Success); } } #endregion #endregion #region 5.1 private void GetFiveExpenseList() { #region 五环(本月) decimal? sMonthType1 = 0, sMonthType2 = 0, sMonthType3 = 0, sMonthType4 = 0, sMonthType5 = 0, sMonthType6 = 0, sMonthType7 = 0, sMonthType8 = 0, sMonthType9 = 0, sMonthType10 = 0; var payRegistrations = BLL.HseExpenseService.GetPayRegistrationByPayDate(startTime, endTime, this.ProjectId, BLL.Const.UnitId_CWCEC); if (payRegistrations != null) { sMonthType1 += payRegistrations.Sum(x => x.SMonthType1) ?? 0; sMonthType2 += payRegistrations.Sum(x => x.SMonthType2) ?? 0; sMonthType3 += payRegistrations.Sum(x => x.SMonthType3) ?? 0; sMonthType4 += payRegistrations.Sum(x => x.SMonthType4) ?? 0; sMonthType5 += payRegistrations.Sum(x => x.SMonthType5) ?? 0; sMonthType6 += payRegistrations.Sum(x => x.SMonthType6) ?? 0; sMonthType7 += payRegistrations.Sum(x => x.SMonthType7) ?? 0; sMonthType8 += payRegistrations.Sum(x => x.SMonthType8) ?? 0; sMonthType9 += payRegistrations.Sum(x => x.SMonthType9) ?? 0; sMonthType10 += payRegistrations.Sum(x => x.SMonthType10) ?? 0; } #endregion #region 五环(项目) decimal? sProjectType1 = 0, sProjectType2 = 0, sProjectType3 = 0, sProjectType4 = 0, sProjectType5 = 0, sProjectType6 = 0, sProjectType7 = 0, sProjectType8 = 0, sProjectType9 = 0, sProjectType10 = 0; var payRegistrationsPro = BLL.PayRegistrationService.GetPayRegistrationByPayDate(projectStartTime, endTime, this.ProjectId, BLL.Const.UnitId_CWCEC); if (payRegistrationsPro != null) { sProjectType1 += payRegistrations.Sum(x => x.SMonthType1) ?? 0; sProjectType2 += payRegistrations.Sum(x => x.SMonthType2) ?? 0; sProjectType3 += payRegistrations.Sum(x => x.SMonthType3) ?? 0; sProjectType4 += payRegistrations.Sum(x => x.SMonthType4) ?? 0; sProjectType5 += payRegistrations.Sum(x => x.SMonthType5) ?? 0; sProjectType6 += payRegistrations.Sum(x => x.SMonthType6) ?? 0; sProjectType7 += payRegistrations.Sum(x => x.SMonthType7) ?? 0; sProjectType8 += payRegistrations.Sum(x => x.SMonthType8) ?? 0; sProjectType9 += payRegistrations.Sum(x => x.SMonthType9) ?? 0; sProjectType10 += payRegistrations.Sum(x => x.SMonthType10) ?? 0; } #endregion #region 施工分包(本月) decimal? sConMonthType1 = 0, sConMonthType2 = 0, sConMonthType3 = 0, sConMonthType4 = 0, sConMonthType5 = 0, sConMonthType6 = 0, sConMonthType7 = 0, sConMonthType8 = 0, sConMonthType9 = 0, sConMonthType10 = 0; var payRegistrationsConMonth = BLL.PayRegistrationService.GetConPayRegistrationByPayDate(startTime, endTime, this.ProjectId); if (payRegistrationsConMonth != null) { sConMonthType1 += payRegistrations.Sum(x => x.SMonthType1) ?? 0; sConMonthType2 += payRegistrations.Sum(x => x.SMonthType2) ?? 0; sConMonthType3 += payRegistrations.Sum(x => x.SMonthType3) ?? 0; sConMonthType4 += payRegistrations.Sum(x => x.SMonthType4) ?? 0; sConMonthType5 += payRegistrations.Sum(x => x.SMonthType5) ?? 0; sConMonthType6 += payRegistrations.Sum(x => x.SMonthType6) ?? 0; sConMonthType7 += payRegistrations.Sum(x => x.SMonthType7) ?? 0; sConMonthType8 += payRegistrations.Sum(x => x.SMonthType8) ?? 0; sConMonthType9 += payRegistrations.Sum(x => x.SMonthType9) ?? 0; sConMonthType10 += payRegistrations.Sum(x => x.SMonthType10) ?? 0; } #endregion #region 施工分包(项目) decimal? sConProjectType1 = 0, sConProjectType2 = 0, sConProjectType3 = 0, sConProjectType4 = 0, sConProjectType5 = 0, sConProjectType6 = 0, sConProjectType7 = 0, sConProjectType8 = 0, sConProjectType9 = 0, sConProjectType10 = 0; var payRegistrationsConPro = BLL.PayRegistrationService.GetConPayRegistrationByPayDate(projectStartTime, endTime, this.ProjectId); if (payRegistrationsConPro != null) { sConProjectType1 += payRegistrations.Sum(x => x.SMonthType1) ?? 0; sConProjectType2 += payRegistrations.Sum(x => x.SMonthType2) ?? 0; sConProjectType3 += payRegistrations.Sum(x => x.SMonthType3) ?? 0; sConProjectType4 += payRegistrations.Sum(x => x.SMonthType4) ?? 0; sConProjectType5 += payRegistrations.Sum(x => x.SMonthType5) ?? 0; sConProjectType6 += payRegistrations.Sum(x => x.SMonthType6) ?? 0; sConProjectType7 += payRegistrations.Sum(x => x.SMonthType7) ?? 0; sConProjectType8 += payRegistrations.Sum(x => x.SMonthType8) ?? 0; sConProjectType9 += payRegistrations.Sum(x => x.SMonthType9) ?? 0; sConProjectType10 += payRegistrations.Sum(x => x.SMonthType10) ?? 0; } #endregion int i = 0; var fiveExpense1 = new Model.Manager_Month_FiveExpenseC { FiveExpenseId = SQLHelper.GetNewID(typeof(Model.Manager_Month_FiveExpenseC)), SortIndex = i, InvestmentProject = "完善、改造和维护安全防护设备、设施", PlanCostMonth = sMonthType1,//五环工程(本月) PlanCostYear = sProjectType1, //五环工程(项目累计) ActualCostMonth = sConMonthType1,//施工分包商(本月) ActualCostYear = sConProjectType1//施工分包商(项目累计) }; fiveExpenses.Add(fiveExpense1); i++; fiveExpense1 = new Model.Manager_Month_FiveExpenseC { FiveExpenseId = SQLHelper.GetNewID(typeof(Model.Manager_Month_FiveExpenseC)), SortIndex = i, InvestmentProject = "应急救援和演练", PlanCostMonth = sMonthType2,//五环工程(本月) PlanCostYear = sProjectType2, //五环工程(项目累计) ActualCostMonth = sConMonthType2,//施工分包商(本月) ActualCostYear = sConProjectType2//施工分包商(项目累计) }; fiveExpenses.Add(fiveExpense1); i++; fiveExpense1 = new Model.Manager_Month_FiveExpenseC { FiveExpenseId = SQLHelper.GetNewID(typeof(Model.Manager_Month_FiveExpenseC)), SortIndex = i, InvestmentProject = "重大危险源管理;隐患整改;安全生产信息化", PlanCostMonth = sMonthType3,//五环工程(本月) PlanCostYear = sProjectType3, //五环工程(项目累计) ActualCostMonth = sConMonthType3,//施工分包商(本月) ActualCostYear = sConProjectType3//施工分包商(项目累计) }; fiveExpenses.Add(fiveExpense1); i++; fiveExpense1 = new Model.Manager_Month_FiveExpenseC { FiveExpenseId = SQLHelper.GetNewID(typeof(Model.Manager_Month_FiveExpenseC)), SortIndex = i, InvestmentProject = "安全检查、评估评价、咨询与标准化建设", PlanCostMonth = sMonthType4,//五环工程(本月) PlanCostYear = sProjectType4, //五环工程(项目累计) ActualCostMonth = sConMonthType4,//施工分包商(本月) ActualCostYear = sConProjectType4//施工分包商(项目累计) }; fiveExpenses.Add(fiveExpense1); i++; fiveExpense1 = new Model.Manager_Month_FiveExpenseC { FiveExpenseId = SQLHelper.GetNewID(typeof(Model.Manager_Month_FiveExpenseC)), SortIndex = i, InvestmentProject = "作业人员防护用品", PlanCostMonth = sMonthType5,//五环工程(本月) PlanCostYear = sProjectType5, //五环工程(项目累计) ActualCostMonth = sConMonthType5,//施工分包商(本月) ActualCostYear = sConProjectType5//施工分包商(项目累计) }; fiveExpenses.Add(fiveExpense1); i++; fiveExpense1 = new Model.Manager_Month_FiveExpenseC { FiveExpenseId = SQLHelper.GetNewID(typeof(Model.Manager_Month_FiveExpenseC)), SortIndex = i, InvestmentProject = "安全生产宣传、教育、培训及奖励", PlanCostMonth = sMonthType6,//五环工程(本月) PlanCostYear = sProjectType6, //五环工程(项目累计) ActualCostMonth = sConMonthType6,//施工分包商(本月) ActualCostYear = sConProjectType6//施工分包商(项目累计) }; fiveExpenses.Add(fiveExpense1); i++; fiveExpense1 = new Model.Manager_Month_FiveExpenseC { FiveExpenseId = SQLHelper.GetNewID(typeof(Model.Manager_Month_FiveExpenseC)), SortIndex = i, InvestmentProject = "“四新”推广应用支出", PlanCostMonth = sMonthType7,//五环工程(本月) PlanCostYear = sProjectType7, //五环工程(项目累计) ActualCostMonth = sConMonthType7,//施工分包商(本月) ActualCostYear = sConProjectType7//施工分包商(项目累计) }; fiveExpenses.Add(fiveExpense1); i++; fiveExpense1 = new Model.Manager_Month_FiveExpenseC { FiveExpenseId = SQLHelper.GetNewID(typeof(Model.Manager_Month_FiveExpenseC)), SortIndex = i, InvestmentProject = "安全设施及特种设备检测检验、检定校准", PlanCostMonth = sMonthType8,//五环工程(本月) PlanCostYear = sProjectType8, //五环工程(项目累计) ActualCostMonth = sConMonthType8,//施工分包商(本月) ActualCostYear = sConProjectType8//施工分包商(项目累计) }; fiveExpenses.Add(fiveExpense1); i++; fiveExpense1 = new Model.Manager_Month_FiveExpenseC { FiveExpenseId = SQLHelper.GetNewID(typeof(Model.Manager_Month_FiveExpenseC)), SortIndex = i, InvestmentProject = "安全生产责任保险", PlanCostMonth = sMonthType9,//五环工程(本月) PlanCostYear = sProjectType9, //五环工程(项目累计) ActualCostMonth = sConMonthType9,//施工分包商(本月) ActualCostYear = sConProjectType9//施工分包商(项目累计) }; fiveExpenses.Add(fiveExpense1); i++; fiveExpense1 = new Model.Manager_Month_FiveExpenseC { FiveExpenseId = SQLHelper.GetNewID(typeof(Model.Manager_Month_FiveExpenseC)), SortIndex = i, InvestmentProject = "其他与安全生产直接相关的支出", PlanCostMonth = sMonthType10,//五环工程(本月) PlanCostYear = sProjectType10, //五环工程(项目累计) ActualCostMonth = sConMonthType10,//施工分包商(本月) ActualCostYear = sConProjectType10//施工分包商(项目累计) }; fiveExpenses.Add(fiveExpense1); i++; this.gvFiveExpenseC.DataSource = fiveExpenses; this.gvFiveExpenseC.DataBind(); OutputgvFiveExpenseCSummaryData(); } /// /// 求和 /// private void OutputgvFiveExpenseCSummaryData() { JObject summary = new JObject(); decimal TotalPlanCostMonth = 0, TotalPlanCostYear = 0, TotalActualCostMonth = 0, TotalActualCostYear = 0; foreach (JObject mergedRow in gvFiveExpenseC.GetMergedData()) { JObject values = mergedRow.Value("values"); if (!string.IsNullOrEmpty(values["PlanCostMonth"].ToString())) { TotalPlanCostMonth += values.Value("PlanCostMonth"); } if (!string.IsNullOrEmpty(values["PlanCostYear"].ToString())) { TotalPlanCostYear += values.Value("PlanCostYear"); } if (!string.IsNullOrEmpty(values["ActualCostMonth"].ToString())) { TotalActualCostMonth += values.Value("ActualCostMonth"); } if (!string.IsNullOrEmpty(values["ActualCostYear"].ToString())) { TotalActualCostYear += values.Value("ActualCostYear"); } } summary.Add("InvestmentProject", "合计"); summary.Add("PlanCostMonth", TotalPlanCostMonth.ToString("F2")); summary.Add("PlanCostYear", TotalPlanCostYear.ToString("F2")); summary.Add("ActualCostMonth", TotalActualCostMonth.ToString("F2")); summary.Add("ActualCostYear", TotalActualCostYear.ToString("F2")); gvFiveExpenseC.SummaryData = summary; } #endregion #region 6.1未遂事件统计 private void GetAttempted() { var list = db.Accident_AccidentHandle.Where(x => x.ProjectId == ProjectId); //五环本月 nbWhMonthNum.Text = list.Where(x => x.AccidentDate >= startTime && x.AccidentDate <= endTime && x.UnitId == Const.UnitId_CWCEC).Count() .ToString(); //五环本年 nbWhYearNum.Text = list.Where(x => x.AccidentDate >= yearStartTime && x.AccidentDate <= endTime && x.UnitId == Const.UnitId_CWCEC).Count() .ToString(); //分包商本月 nbFbsMonthNum.Text = list.Where(x => x.AccidentDate >= startTime && x.AccidentDate <= endTime && x.UnitId != Const.UnitId_CWCEC).Count() .ToString(); //分包商本年 nbFbsYearNum.Text = list.Where(x => x.AccidentDate >= yearStartTime && x.AccidentDate <= endTime && x.UnitId != Const.UnitId_CWCEC).Count() .ToString(); //项目累计 nbProNum.Text = list.Where(x => x.AccidentDate >= projectStartTime && x.AccidentDate <= endTime).Count() .ToString(); } #endregion #region 6.1 2 本月伤害事故统计 /// /// 本月伤害事故统计 /// private void GetInjuryAccident() { List reports = AccidentReportService.GetAccidentReportsByAccidentTime(startTime, endTime, ProjectId); List deathReports = AccidentReportService.GetAccidentReportsByAccidentType("1", startTime, endTime, ProjectId); int i = 0; Model.Manager_Month_InjuryAccidentC injury = new Model.Manager_Month_InjuryAccidentC { InjuryAccidentId = SQLHelper.GetNewID(typeof(Model.Manager_Month_InjuryAccidentC)), UnitName = "五环", FirstAidDressing = 0, // MedicalTreatment = 0,// WorkLimitation = 0,// LossCount=0, LossPerson = (from x in reports where x.UnitId == Const.UnitId_CWCEC select x.PeopleNum).Sum(), LossWorkTime = (from x in reports where x.UnitId == Const.UnitId_CWCEC select x.WorkingHoursLoss).Sum(), LossEconomy = (from x in reports where x.UnitId == Const.UnitId_CWCEC select x.EconomicLoss).Sum() + (from x in reports where x.UnitId == Const.UnitId_CWCEC select x.EconomicOtherLoss).Sum(), DeathCount=0, DeathPerson = (from x in deathReports where x.UnitId == Const.UnitId_CWCEC select x.PeopleNum).Sum(), DeathWorkTime = (from x in deathReports where x.UnitId == Const.UnitId_CWCEC select x.WorkingHoursLoss).Sum(), DeathEconomy = (from x in deathReports where x.UnitId == Const.UnitId_CWCEC select x.EconomicLoss).Sum() + (from x in deathReports where x.UnitId == Const.UnitId_CWCEC select x.EconomicOtherLoss).Sum(), }; injuryAccidents.Add(injury); i++; Model.Manager_Month_InjuryAccidentC injury2 = new Model.Manager_Month_InjuryAccidentC { InjuryAccidentId = SQLHelper.GetNewID(typeof(Model.Manager_Month_InjuryAccidentC)), UnitName = "分包商", FirstAidDressing = 0, // MedicalTreatment = 0,// WorkLimitation = 0,// LossCount = 0, DeathCount = 0, LossPerson = (from x in reports join y in Funs.DB.Project_ProjectUnit on x.UnitId equals y.UnitId where y.UnitType == Const.ProjectUnitType_2 select x.PeopleNum).Sum(), LossWorkTime = (from x in reports join y in Funs.DB.Project_ProjectUnit on x.UnitId equals y.UnitId where y.UnitType == Const.ProjectUnitType_2 select x.WorkingHoursLoss).Sum(), LossEconomy = (from x in reports join y in Funs.DB.Project_ProjectUnit on x.UnitId equals y.UnitId where y.UnitType == Const.ProjectUnitType_2 select x.EconomicLoss).Sum() + (from x in reports join y in Funs.DB.Project_ProjectUnit on x.UnitId equals y.UnitId where y.UnitType == Const.ProjectUnitType_2 select x.EconomicOtherLoss).Sum(), DeathPerson = (from x in deathReports join y in Funs.DB.Project_ProjectUnit on x.UnitId equals y.UnitId where y.UnitType == Const.ProjectUnitType_2 select x.PeopleNum).Sum(), DeathWorkTime = (from x in deathReports join y in Funs.DB.Project_ProjectUnit on x.UnitId equals y.UnitId where y.UnitType == Const.ProjectUnitType_2 select x.WorkingHoursLoss).Sum(), DeathEconomy = (from x in deathReports join y in Funs.DB.Project_ProjectUnit on x.UnitId equals y.UnitId where y.UnitType == Const.ProjectUnitType_2 select x.EconomicLoss).Sum() + (from x in deathReports join y in Funs.DB.Project_ProjectUnit on x.UnitId equals y.UnitId where y.UnitType == Const.ProjectUnitType_2 select x.EconomicOtherLoss).Sum(), }; injuryAccidents.Add(injury2); this.gvInjuryAccident.DataSource = injuryAccidents; this.gvInjuryAccident.DataBind(); OutputSummaryData(); } /// /// 求和 /// private void OutputSummaryData() { JObject summary = new JObject(); int TotalAttemptedIncidents = 0, TotalFirstAidDressing = 0, TotalMedicalTreatment = 0, TotalWorkLimitation = 0, TotalLossPerson = 0, TotalDeathPerson = 0; decimal TotalLossWorkTime = 0, TotalLossEconomy = 0, TotalDeathWorkTime = 0, TotalDeathEconomy = 0 ,TotalLossCount=0,TotalDeathCount=0; foreach (JObject mergedRow in gvInjuryAccident.GetMergedData()) { JObject values = mergedRow.Value("values"); if (!string.IsNullOrEmpty(values["FirstAidDressing"].ToString())) { TotalFirstAidDressing += values.Value("FirstAidDressing"); } if (!string.IsNullOrEmpty(values["MedicalTreatment"].ToString())) { TotalMedicalTreatment += values.Value("MedicalTreatment"); } if (!string.IsNullOrEmpty(values["WorkLimitation"].ToString())) { TotalWorkLimitation += values.Value("WorkLimitation"); } if (!string.IsNullOrEmpty(values["LossPerson"].ToString())) { TotalLossPerson += values.Value("LossPerson"); } if (!string.IsNullOrEmpty(values["LossWorkTime"].ToString())) { TotalLossWorkTime += values.Value("LossWorkTime"); } if (!string.IsNullOrEmpty(values["LossEconomy"].ToString())) { TotalLossEconomy += values.Value("LossEconomy"); } if (!string.IsNullOrEmpty(values["DeathPerson"].ToString())) { TotalDeathPerson += values.Value("DeathPerson"); } if (!string.IsNullOrEmpty(values["DeathWorkTime"].ToString())) { TotalDeathWorkTime += values.Value("DeathWorkTime"); } if (!string.IsNullOrEmpty(values["DeathEconomy"].ToString())) { TotalDeathEconomy += values.Value("DeathEconomy"); } if (!string.IsNullOrEmpty(values["LossCount"].ToString())) { TotalLossCount += values.Value("LossCount"); } if (!string.IsNullOrEmpty(values["DeathCount"].ToString())) { TotalDeathCount += values.Value("DeathCount"); } } summary.Add("UnitName", "项目合计"); summary.Add("AttemptedIncidents", TotalAttemptedIncidents.ToString("F2")); summary.Add("FirstAidDressing", TotalFirstAidDressing.ToString("F2")); summary.Add("MedicalTreatment", TotalMedicalTreatment.ToString("F2")); summary.Add("WorkLimitation", TotalWorkLimitation.ToString("F2")); summary.Add("LossCount", TotalLossCount.ToString("F2")); summary.Add("LossPerson", TotalLossPerson.ToString("F2")); summary.Add("LossWorkTime", TotalLossWorkTime.ToString("F2")); summary.Add("LossEconomy", TotalLossEconomy.ToString("F2")); summary.Add("DeathCount", TotalDeathCount.ToString("F2")); summary.Add("DeathPerson", TotalDeathPerson.ToString("F2")); summary.Add("DeathWorkTime", TotalDeathWorkTime.ToString("F2")); summary.Add("DeathEconomy", TotalDeathEconomy.ToString("F2")); gvInjuryAccident.SummaryData = summary; } #endregion #region 6.3 HSE目标实现情况 private void GetGalachList() { var GalachModel = new Galach() { Id = Guid.NewGuid().ToString(), GoName = "项目HSE检查计划完成率", GoTarget = 0, GoValue = "≥90%" }; galachList.Add(GalachModel); GalachModel = new Galach() { Id = Guid.NewGuid().ToString(), GoName = "百万工时总可记录事件率
(总可记录事件人数 / 总工时)×106", GoTarget = 0, GoValue = "≤2" }; galachList.Add(GalachModel); GalachModel = new Galach() { Id = Guid.NewGuid().ToString(), GoName = "百万工时事故发生频率
(损失工时伤害事故起数 / 总工时)×106", GoTarget = 0, GoValue = "≤15" }; galachList.Add(GalachModel); if (galachList.Count > 0) { GoalachGrid.DataSource = galachList; GoalachGrid.DataBind(); } } #endregion #endregion #region 转换字符串 /// /// 把单位Id转换为单位名称 /// /// /// protected string ConvertUnitName(object UnitId) { if (UnitId != null) { var u = unitList.FirstOrDefault(x => x.UnitId == UnitId.ToString()); if (u != null) { return u.UnitName; } } return ""; } #endregion } }