Files
xinjiang/SGGL/FineUIPro.Web/common/main.aspx.cs
T
2026-09-23 17:55:18 +08:00

212 lines
10 KiB
C#

using BLL;
using FineUIPro.Web.DataShow;
using Model;
using NPOI.POIFS.Crypt.Dsig;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Threading.Tasks;
using System.Web.Services;
using System.Web.UI.WebControls;
namespace FineUIPro.Web.common
{
public partial class main : PageBase
{
///// <summary>
///// 单位id
///// </summary>
//public string UnitId
//{
// get
// {
// return (string)ViewState["UnitId"];
// }
// set
// {
// ViewState["UnitId"] = value;
// }
//}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//var ssss = Request;
//string unitId = string.Empty;
//unitId = this.CurrUser.LastUnitId;
//string unitIdw = string.Empty;
//string urlReferrer = Request.UrlReferrer.ToString();
//if (!string.IsNullOrWhiteSpace(urlReferrer))
//{
// unitId = urlReferrer.Split('=')[1];
// this.UnitId = unitId;
//}
//var sss = this.CurrUser;
//if (!string.IsNullOrEmpty(Request.QueryString["unitId"]))
//{
// this.UnitId = Request.QueryString["unitId"];
//}
}
}
/// <summary>
/// 看板数据
/// </summary>
/// <returns></returns>
[WebMethod]
public static object GetMainData()
{
try
{
var page = new main();
MainSevice mainSevice = new MainSevice(page.CurrUser.UserId);
string unitId = page.CurrUser.UnitId;
if (CommonService.IsSuperAdminManage(page.CurrUser.UserId) || (!string.IsNullOrWhiteSpace(unitId) && unitId == Const.UnitId_XJYJ))
{
unitId = !string.IsNullOrWhiteSpace(page.CurrUser.LastUnitId) ? page.CurrUser.LastUnitId : Const.UnitId_XJYJ;
}
//获取数据
var hsseData = Task.Run(() => mainSevice.GetHsseData()).Result;
//var hiddenDangerList = mainSevice.GetDataHiddenDangerDetailItems();
//获取项目数据
//int unitType = CommonService.GetUnitTypeByUserId(page.CurrUser.UserId);
int unitType = CommonService.GetUnitTypeByUnitId(unitId);
var projects = new List<Base_Project>();
if (unitType == 0)
{
projects = Funs.DB.Base_Project.Where(x => x.MapCoordinates != null && (x.IsDelete == null || x.IsDelete == false)).ToList();
}
else if (unitType == 1)
{
projects = Funs.DB.Base_Project.Where(x => x.UnitId == unitId && x.MapCoordinates != null && (x.IsDelete == null || x.IsDelete == false)).ToList();
//projects = Funs.DB.Base_Project.Where(x => x.UnitId == page.CurrUser.UnitId && x.MapCoordinates != null && (x.IsDelete == null || x.IsDelete == false)).ToList();
}
//获取安全生产开始日期
var sysSet1 = BLL.ConstValue.drpConstItemList(BLL.ConstValue.Group_WorkSafetyStartDate).FirstOrDefault();
string workSafetyStartDate = sysSet1.ConstValue;
//安全生产天数
int workSafetyDays = DateHelper.DaysDifference(Convert.ToDateTime(workSafetyStartDate), DateTime.Today);
//事故事件
var list = AccidentWarningService.GetYearsTodayList();
var dateNow = DateTime.Now.ToString("yyyy-MM");
string hfUnitId = !string.IsNullOrWhiteSpace(unitId) && unitId == Const.UnitId_XJYJ ? string.Empty : unitId;
//安全危害因素
var getHazardFactorList = Funs.DB.Sp_HazardFactor_Statistics(dateNow.Split('-')[0], dateNow.Split('-')[1], hfUnitId, string.Empty).ToList();
var lowRisk = getHazardFactorList.Where(x => x.Title == "低风险").FirstOrDefault();
var generalRisk = getHazardFactorList.Where(x => x.Title == "一般风险").FirstOrDefault();
var largerRisk = getHazardFactorList.Where(x => x.Title == "较大风险").FirstOrDefault();
var majorRisk = getHazardFactorList.Where(x => x.Title == "重大风险").FirstOrDefault();
//职业健康危害因素
var getHazardFactorOccHealthList = Funs.DB.Sp_HazardFactorOccHealth_Statistics(dateNow.Split('-')[0], dateNow.Split('-')[1], hfUnitId, string.Empty).ToList();
var lowRiskOcc = getHazardFactorOccHealthList.Where(x => x.Title == "低风险").FirstOrDefault();
var generalRiskOcc = getHazardFactorOccHealthList.Where(x => x.Title == "一般风险").FirstOrDefault();
var largerRiskOcc = getHazardFactorOccHealthList.Where(x => x.Title == "较大风险").FirstOrDefault();
var majorRiskOcc = getHazardFactorOccHealthList.Where(x => x.Title == "重大风险").FirstOrDefault();
//构造返回数据
return new
{
success = true,
data = new
{
accidentWarning = (from x in list select new { Title = x.Title, AccidentDate = x.AccidentDate.ToString("yyyy-MM-dd") }).ToList(),
org = new
{
//groupSum = (hsseData.HeadOfficeInspectorGeneralNum ?? 0) + (hsseData.HeadOfficeFullTimeNum ?? 0),
//director = hsseData.HeadOfficeInspectorGeneralNum ?? 0,
//fullTime = hsseData.HeadOfficeFullTimeNum ?? 0,
//enterpriseSum = 0,
//branchDirector = hsseData.BranchInspectorGeneralNum ?? 0,
//branchFullTime = hsseData.BranchFullTimeNum ?? 0,
//attentionSafetyEngineer = hsseData.SafetyInjectionEngineer ?? 0,
//projectDirector = hsseData.ProjectInspectorGeneralNum ?? 0,
//projectFullTime = hsseData.ProjectFullTimeNum ?? 0,
//projectSafetyMonitoring = hsseData.ProjectSafetyMonitorNum ?? 0,
//aCard = hsseData.CertificateANum ?? 0,
//bCard = hsseData.CertificateBNum ?? 0,
//cCard = hsseData.CertificateCNum ?? 0
},
projectInfo = new
{
workSafetyStartDateTip = $"安全生产开始日期:{workSafetyStartDate}",
workSafetyDay1 = (workSafetyDays % 10),
workSafetyDay10 = ((workSafetyDays % 100) / 10),
workSafetyDay100 = ((workSafetyDays % 1000) / 100),
workSafetyDay1000 = ((workSafetyDays % 10000) / 1000),
projectsUnderConstruction = hsseData != null ? hsseData.BeUnderConstructionNum ?? 0 : 0,
shutdownProject = hsseData != null ? hsseData.ShutdownNum ?? 0 : 0,
participateInNum = hsseData != null ? hsseData.JoinConstructionPersonNum ?? 0 : 0,
dangerousProject = hsseData != null ? hsseData.MajorProjectsUnderConstructionNum ?? 0 : 0,
},
//项目地图数据
chinaData = projects.Select(p => new
{
id = p.ProjectId,
name = p.ShortName,
projectMoney = p.ProjectMoney,
startDate = p.StartDate != null ? ((DateTime)p.StartDate).ToString("yyyy-MM-dd") : string.Empty,
endDate = p.EndDate != null ? ((DateTime)p.EndDate).ToString("yyyy-MM-dd") : string.Empty,
address = p.ProjectAddress,
value = p.MapCoordinates.Split(','),
}).ToList(),
hazardFactor = new
{//安全危害因素
lowRiskNum = lowRisk != null ? lowRisk.Num : 0,
generalRiskNum = generalRisk != null ? generalRisk.Num : 0,
largerRiskNum = largerRisk != null ? largerRisk.Num : 0,
majorRiskNum = majorRisk != null ? majorRisk.Num : 0,
},
hazardFactorOcc = new
{//职业健康危害因素
lowRiskNum = lowRiskOcc != null ? lowRiskOcc.Num : 0,
generalRiskNum = generalRiskOcc != null ? generalRiskOcc.Num : 0,
largerRiskNum = largerRiskOcc != null ? largerRiskOcc.Num : 0,
majorRiskNum = majorRiskOcc != null ? majorRiskOcc.Num : 0,
}
}
};
}
catch (Exception ex)
{
return new { success = false, msg = ex.Message };
}
}
/// <summary>
/// 获取项目跳转地址
/// </summary>
/// <param name="projectId"></param>
/// <returns></returns>
[WebMethod]
public static object ViewProject(string projectId)
{
try
{
var page = new main();
string url = string.Empty;
string msg = string.Empty;
if ((page.CurrUser.IsOffice == true && !string.IsNullOrEmpty(page.CurrUser.RoleId)) || (page.CurrUser.IsOffice == false || !page.CurrUser.IsOffice.HasValue))
{
url = "../indexProject.aspx?projectId=" + projectId;
}
else
{
msg = "您没有权限进入项目管理模块!";
}
return new { success = true, data = url, msg = msg };
}
catch (Exception ex)
{
return new { success = false, msg = ex.Message };
}
}
}
}