CNCEC_SUBQHSE_WUHUAN/SGGL/FineUIPro.Web/common/mainMenu_HSSE.aspx.cs

328 lines
14 KiB
C#
Raw Normal View History

2021-04-30 10:28:37 +08:00
using BLL;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
namespace FineUIPro.Web
{
public partial class mainMenu_HSSE : PageBase
{
#region
/// <summary>
/// 项目主键
/// </summary>
public string ProjectId
{
get
{
return (string)ViewState["ProjectId"];
}
set
{
ViewState["ProjectId"] = value;
}
}
#endregion
2021-04-30 10:28:37 +08:00
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.ProjectId = string.Empty;
if (this.CurrUser != null && !string.IsNullOrEmpty(this.CurrUser.LoginProjectId))
{
this.ProjectId = this.CurrUser.LoginProjectId;
}
getHazardRegisterLists = new List<Model.HSSE_Hazard_HazardRegister>();
getHazardRegisterLists = HSSE_Hazard_HazardRegisterService.GetHazardRegisterListByProjectId(this.ProjectId);
2021-04-30 10:28:37 +08:00
///当前现场总人数
getSitePerson();
var project = BLL.ProjectService.GetProjectByProjectId(this.ProjectId);
2021-04-30 10:28:37 +08:00
if (project != null && project.Telephone != null)
{
this.xmb.InnerHtml = project.Telephone;
}
}
}
#region
/// <summary>
/// 当前现场总人数
/// </summary>
private void getSitePerson()
{
var getEmployInOutRecords = Funs.DB.T_d_EmployInOutRecord.Where(x => x.ProjectId == this.ProjectId && x.RecordDate.Value == DateTime.Now.Date).ToList();
2021-04-30 10:28:37 +08:00
int AllCount = getEmployInOutRecords.Count();
if (AllCount > 0)
{
////总人数
this.divperson.InnerHtml= ((AllCount % 10000) / 1000).ToString();
this.person00.InnerHtml = ((AllCount % 1000) / 100).ToString();
this.person01.InnerHtml = ((AllCount % 100) / 10).ToString();
this.person02.InnerHtml = (AllCount % 10).ToString();
}
}
#endregion
#region
/// <summary>
/// 项目安全人工时
/// </summary>
protected string Two
{
get
{
List<Model.SingleSerie> series = new List<Model.SingleSerie>();
Model.BusinessColumn businessColumn = new Model.BusinessColumn();
List<string> listCategories = new List<string>();
businessColumn.title = "项目安全人工时";
Model.SingleSerie s = new Model.SingleSerie();
List<double> listdata = new List<double>();
Model.SingleSerie s2 = new Model.SingleSerie();
List<double> listdata2= new List<double>();
var getMonts= SitePerson_MonthReportService.getMonthReports(CurrUser.LoginProjectId,null);
foreach (var month in getMonts.OrderBy(x=>x.CompileDate))
{
listCategories.Add(string.Format("{0:yyyy-MM}", month.CompileDate));
listdata.Add(double.Parse((month.TotalPersonWorkTime ?? 0).ToString()));
listdata2.Add(double.Parse((month.DayWorkTime ?? 0).ToString()));
}
s.data = listdata;
series.Add(s);
s2.data = listdata2;
series.Add(s2);
2023-10-31 18:12:23 +08:00
businessColumn.categories = listCategories;
2021-04-30 10:28:37 +08:00
businessColumn.series = series;
return JsonConvert.SerializeObject(businessColumn);
}
}
#endregion
#region
/// <summary>
/// 作业许可数量统计
/// </summary>
protected string Three
{
get
{
List<Model.SingleSerie> series = new List<Model.SingleSerie>();
Model.BusinessColumn businessColumn = new Model.BusinessColumn();
List<string> listCategories = new List<string>();
businessColumn.title = "作业许可数量统计";
Model.SingleSerie s = new Model.SingleSerie();
List<double> listdata = new List<double>();
var getStates = LicensePublicService.drpStatesItem().Where(x=>x.Value != Const._Null);
var getLicense = APILicenseDataService.getLicenseDataListByStates(this.ProjectId, Const.UnitId_CWCEC, null);
2021-04-30 10:28:37 +08:00
foreach (var itemStates in getStates)
{
listCategories.Add(itemStates.Text);
listdata.Add(getLicense.Where(x => x.States == itemStates.Value).Count());
}
s.data = listdata;
series.Add(s);
businessColumn.categories = listCategories;
businessColumn.series = series;
return JsonConvert.SerializeObject(businessColumn);
}
}
#endregion
#region
/// <summary>
///
/// </summary>
public static List<Model.HSSE_Hazard_HazardRegister> getHazardRegisterLists;
/// <summary>
/// 按单位统计
/// </summary>
protected string Four1
{
get
{
List<Model.SingleSerie> series = new List<Model.SingleSerie>();
Model.BusinessColumn businessColumn = new Model.BusinessColumn();
List<string> listCategories = new List<string>();
Model.SingleSerie s = new Model.SingleSerie();
Model.SingleSerie s2 = new Model.SingleSerie();
List<double> listdata = new List<double>();
List<double> listdata2 = new List<double>();
businessColumn.title = "安全检查问题统计";
var units = getHazardRegisterLists.Select(x => x.ResponsibleUnit).Distinct();
//UnitService.GetUnitByProjectIdUnitTypeList(this.ProjectId, BLL.Const.ProjectUnitType_2);
2021-04-30 10:28:37 +08:00
if (units.Count() > 0)
{
foreach (var unitId in units)
{
var getPuUnit = Funs.DB.Project_ProjectUnit.FirstOrDefault(x => x.ProjectId == this.ProjectId && x.UnitId == unitId);
if (getPuUnit != null)
2021-04-30 10:28:37 +08:00
{
var getunits = UnitService.GetUnitByUnitId(unitId);
if (getunits != null)
{
listCategories.Add(getunits.ShortUnitName ?? getunits.UnitCode);
var unitHazardRegisters = getHazardRegisterLists.Where(x => x.ResponsibleUnit == getunits.UnitId);
var noW = unitHazardRegisters.Where(x => x.States != "3");
listdata.Add(unitHazardRegisters.Count() - noW.Count());
listdata2.Add(unitHazardRegisters.Count());
}
2021-04-30 10:28:37 +08:00
}
}
}
else
{
var getunits = UnitService.GetUnitByProjectIdUnitTypeList(this.ProjectId, BLL.Const.ProjectUnitType_2).Take(10);
2021-04-30 10:28:37 +08:00
foreach (var unit in getunits)
{
listCategories.Add(unit.ShortUnitName ?? unit.UnitCode);
var unitHazardRegisters = getHazardRegisterLists.Where(x => x.ResponsibleUnit == unit.UnitId);
var noW = unitHazardRegisters.Where(x => x.States != "3");
listdata.Add(unitHazardRegisters.Count() - noW.Count());
listdata2.Add(unitHazardRegisters.Count());
}
}
s.data = listdata;
series.Add(s);
s2.data = listdata2;
series.Add(s2);
businessColumn.categories = listCategories;
businessColumn.series = series;
return JsonConvert.SerializeObject(businessColumn);
}
}
/// <summary>
/// 按类型统计
/// </summary>
protected string Four2
{
get
{
List<Model.SingleSerie> series = new List<Model.SingleSerie>();
Model.BusinessColumn businessColumn = new Model.BusinessColumn();
List<string> listCategories = new List<string>();
Model.SingleSerie s = new Model.SingleSerie();
List<double> listdata = new List<double>();
Model.SingleSerie s2 = new Model.SingleSerie();
List<double> listdata2 = new List<double>();
businessColumn.title = "安全检查问题统计";
var getTypes = HSSE_Hazard_HazardRegisterTypesService.GetHazardRegisterTypesList("1");
foreach (var item in getTypes)
{
listCategories.Add(item.RegisterTypesName);
var unitHazardRegisters = getHazardRegisterLists.Where(x => x.RegisterTypesId == item.RegisterTypesId);
var noW = unitHazardRegisters.Where(x => x.States != "3");
listdata.Add(unitHazardRegisters.Count() - noW.Count());
listdata2.Add(unitHazardRegisters.Count());
}
s.data = listdata;
series.Add(s);
s2.data = listdata2;
series.Add(s2);
businessColumn.categories = listCategories;
businessColumn.series = series;
return JsonConvert.SerializeObject(businessColumn);
}
}
#endregion
#region
/// <summary>
/// 入场安全培训
/// </summary>
protected string Five
{
get
{
List<Model.SingleSerie> series = new List<Model.SingleSerie>();
Model.BusinessColumn businessColumn = new Model.BusinessColumn();
List<string> listCategories = new List<string>();
businessColumn.title = "入场培训";
Model.SingleSerie s = new Model.SingleSerie();
Model.SingleSerie s2 = new Model.SingleSerie();
//// 每月培训数量
List<double> listdata = new List<double>();
List<double> listdata2 = new List<double>();
var getTrainRecord = from x in Funs.DB.EduTrain_TrainRecord
where x.ProjectId == this.ProjectId && x.TrainTypeId == Const.EntryTrainTypeId
2021-04-30 10:28:37 +08:00
select x;
var getTrainRecordDetail = from x in Funs.DB.EduTrain_TrainRecordDetail
join y in getTrainRecord on x.TrainingId equals y.TrainingId
select x;
DateTime startTime = DateTime.Now;
DateTime endTime = DateTime.Now;
var getProject = ProjectService.GetProjectByProjectId(this.ProjectId);
2021-04-30 10:28:37 +08:00
if (getProject != null && getProject.StartDate.HasValue)
{
startTime = getProject.StartDate.Value;
if (getProject.EndDate.HasValue && getProject.EndDate < DateTime.Now)
{
endTime = getProject.EndDate.Value;
}
}
int totalCout = 0;
for (int i = 0; startTime.AddMonths(i) <= endTime; i++)
{
listCategories.Add(string.Format("{0:yyyy-MM}", startTime.AddMonths(i)));
var getMontDetail = from x in getTrainRecordDetail
join y in getTrainRecord on x.TrainingId equals y.TrainingId
where y.TrainStartDate.Value.Year == startTime.AddMonths(i).Year && y.TrainStartDate.Value.Month == startTime.AddMonths(i).Month
select x;
listdata.Add(getMontDetail.Count());
totalCout = totalCout + getMontDetail.Count();
listdata2.Add(totalCout);
}
s.data = listdata;
s2.data = listdata2;
series.Add(s);
series.Add(s2);
businessColumn.categories = listCategories;
businessColumn.series = series;
return JsonConvert.SerializeObject(businessColumn);
}
}
#endregion
# region
/// <summary>
/// 事故统计
/// </summary>
protected string Six
{
get
{
List<Model.SingleSerie> series = new List<Model.SingleSerie>();
Model.BusinessColumn businessColumn = new Model.BusinessColumn();
Model.SingleSerie s = new Model.SingleSerie();
List<double> listdata = new List<double>();
businessColumn.title = "事故统计";
var getAccident = from x in Funs.DB.Accident_AccidentReport
where x.ProjectId == this.ProjectId
2021-04-30 10:28:37 +08:00
select x;
listdata.Add(getAccident.Where(x => x.AccidentTypeId == "1" || x.AccidentTypeId == "2" || x.AccidentTypeId == "3" || x.AccidentTypeId == "4").Count());
listdata.Add(getAccident.Where(x => x.AccidentTypeId == "5").Count());
listdata.Add(getAccident.Where(x => x.AccidentTypeId == "6" || x.AccidentTypeId == "7").Count());
listdata.Add(getAccident.Where(x => x.AccidentTypeId == "8" || x.AccidentTypeId == "9").Count());
listdata.Add(getAccident.Where(x => x.AccidentTypeId == "10").Count());
listdata.Add(getAccident.Where(x => x.AccidentTypeId == "11").Count());
s.data = listdata;
series.Add(s);
businessColumn.series = series;
return JsonConvert.SerializeObject(businessColumn);
}
}
#endregion
}
}