系统运行报表

This commit is contained in:
何美荣 2026-01-27 16:40:48 +08:00
parent 06f65a2037
commit 50941d6755
2 changed files with 45 additions and 12 deletions

View File

@ -1,15 +1,18 @@
using APT.BaseData.Domain.Entities.FM;
using APT.Infrastructure.Core;
using Microsoft.AspNetCore.Mvc;
using APT.Infrastructure.Api;
using System.Collections.Generic;
using System;
using System.Linq;
using APT.Utility;
using APT.MS.Domain.Entities.BI;
using APT.BaseData.Domain.ApiModel.Platform;
using APT.BaseData.Domain.Entities.FM;
using APT.BaseData.Domain.IServices.BI;
using APT.BaseData.Domain.ApiModel.Platform;
using APT.Infrastructure.Api;
using APT.Infrastructure.Api.Redis;
using APT.Infrastructure.Core;
using APT.MS.Domain.Entities.BI;
using APT.MS.Domain.Entities.HM;
using APT.MS.Domain.Entities.SK;
using APT.Utility;
using log4net.Core;
using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;
using System.Linq;
namespace APT.SC.WebApi.Controllers.Api.BI
{
@ -2116,6 +2119,36 @@ namespace APT.SC.WebApi.Controllers.Api.BI
return result;
});
}
/// <summary>
/// 风险等级占比
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("GetHomeRiskLevel")]
public JsonActionResult<List<T_FM_RISK_LEVEL_PROPORTION>> GetHomeRiskLevel([FromBody] KeywordFilter filter)
{
return SafeExecute(() =>
{
List<T_FM_RISK_LEVEL_PROPORTION> result = new List<T_FM_RISK_LEVEL_PROPORTION>();
BaseFilter baseFilter = new BaseFilter(filter.GetOrgId());
baseFilter.SelectField = new string[] { "EVALUATE_LEVEL" };
var evaluateRisks = GetEntities<T_SK_ENTERPRISE_LIBRARY>(t => t.EVALUATE_LEVEL != null && t.ENABLE_STATUS == 0, baseFilter).OrderBy(i => i.EVALUATE_LEVEL).ToList();
var distinctLevelTypes = evaluateRisks.GroupBy(m => new { m.EVALUATE_LEVEL }).Select(group => new { group.Key.EVALUATE_LEVEL, count = group.Count() }).ToList();
int i = 1;
foreach (var item in distinctLevelTypes)
{
T_FM_RISK_LEVEL_PROPORTION riskLevelProportion = new T_FM_RISK_LEVEL_PROPORTION();
riskLevelProportion.COUNT = item.count;
riskLevelProportion.NUM = i;
riskLevelProportion.RISK_LEVEL = item.EVALUATE_LEVEL.GetDescription();
riskLevelProportion.ORG_ID = filter.GetOrgId();
result.Add(riskLevelProportion);
i++;
}
return result;
});
}
}
/// <summary>

View File

@ -11241,8 +11241,8 @@ namespace APT.SC.WebApi.Controllers.Api.BIController
info.DOING = details.Count(t => t.NOTICE_STATUS == "0" && t.TASK_ENDDT >= DateTime.Now);
info.UNFINISH = details.Count(t => t.NOTICE_STATUS == "0");
info.OVER_UNFINISH = details.Count(t => t.NOTICE_STATUS == "0" && t.TASK_ENDDT < DateTime.Now);
info.FINISH_RATE = info.TOTAL_QTY == 0 ? "0" : ((info.NORMAL_FINISH + info.OVER_FINISH) / info.TOTAL_QTY * 100).ToString();
info.NORMAL_RATE = info.TOTAL_QTY == 0 ? "0" : (info.NORMAL_FINISH / info.TOTAL_QTY * 100).ToString();
info.FINISH_RATE = info.TOTAL_QTY == 0 ? "0" : ((double)(info.NORMAL_FINISH + info.OVER_FINISH) / info.TOTAL_QTY * 100).ToString("0.00");
info.NORMAL_RATE = info.TOTAL_QTY == 0 ? "0" : ((double)info.NORMAL_FINISH / info.TOTAL_QTY * 100).ToString("0.00");
if (details != null && details.Any())
{
info.details = new List<TaskViewInfoDetail>();