This commit is contained in:
wyw 2026-08-04 15:04:52 +08:00
commit b80d25925e
2 changed files with 33 additions and 28 deletions

View File

@ -605,7 +605,7 @@ namespace APT.SC.WebApi.Controllers.Api.BI
var templevel4 = allrisk.Where(t => (int)t.LEVEL == level && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
PerformanceModel modelCJ = new PerformanceModel();
modelCJ.NAME = new List<string> { "露天矿", "选矿厂", "尾矿厂", "职能部门" };
modelCJ.NAME = new List<string> { "全公司", "选矿厂", "尾矿厂", "职能部门" };
modelCJ.LEVEL1 = new List<int> { templevel1.Count(t => (int)t.MineType == minTypeArr[0]), templevel1.Count(t => (int)t.MineType == minTypeArr[1]), templevel1.Count(t => (int)t.MineType == minTypeArr[2]), templevel1.Count(t => (int)t.MineType == minTypeArr[3]) };
modelCJ.LEVEL2 = new List<int> { templevel2.Count(t => (int)t.MineType == minTypeArr[0]), templevel2.Count(t => (int)t.MineType == minTypeArr[1]), templevel2.Count(t => (int)t.MineType == minTypeArr[2]), templevel2.Count(t => (int)t.MineType == minTypeArr[3]) };
modelCJ.LEVEL3 = new List<int> { templevel3.Count(t => (int)t.MineType == minTypeArr[0]), templevel3.Count(t => (int)t.MineType == minTypeArr[1]), templevel3.Count(t => (int)t.MineType == minTypeArr[2]), templevel3.Count(t => (int)t.MineType == minTypeArr[3]) };
@ -772,9 +772,10 @@ namespace APT.SC.WebApi.Controllers.Api.BI
riskPerformanceData riskPerformanceData = new riskPerformanceData();
List<dateCountModel> item3s = new List<dateCountModel>();
var libType = allrisk.Select(t => t.TYPE_ID).Distinct().ToList();
var distinctType = GetEntities<T_SK_RISK_TYPE>(t => libType.Contains(t.ID), new BaseFilter(filter.GetOrgId()));
var libArea = allrisk.Select(t => t.AREA_ID).Distinct().ToList();
var distinctType = GetEntities<T_SK_RISK_TYPE>(t => libType.Contains(t.ID), new BaseFilter(filter.GetOrgId()), "Nav_ProductionUnit");
var departments = GetEntities<T_FM_DEPARTMENT>(t => t.ENABLE_STATUS == 0, new BaseFilter(filter.GetOrgId()));
var distinctArea = GetEntities<T_SK_RISK_AREA>(t => t.IS_DELETED == false, new BaseFilter(filter.GetOrgId()));
var distinctArea = GetEntities<T_SK_RISK_AREA>(t => libArea.Contains(t.ID), new BaseFilter(filter.GetOrgId()));
var distinctTeamDepartment = departments.Where(t => t.DEPARTMENT_TYPE == 20);
#region 1
PerformanceModel CHARTFXDJ1 = new PerformanceModel();
@ -912,13 +913,13 @@ namespace APT.SC.WebApi.Controllers.Api.BI
modelArea.TOTAL.Add(totalArea);
}
var newModelArea = SortByTotal(modelArea);
riskPerformanceData.CHARTLIST.Add(newModelArea);
riskPerformanceData.CHARTLIST.Add(modelArea);
#endregion
#region 8
var levelArr = new int[] { 5, 10, 15, 20 };
var names= new string[] { "露天矿", "选矿厂", "地下矿", "尾矿库" }.ToList();
var productUnitIds = productionUnits.Where(t => names.Contains(t.NAME)).OrderBy(t=>t.NAME == "尾矿库").ThenBy(t => t.NAME == "地下矿").ThenBy(t => t.NAME == "选矿厂").ThenBy(t => t.NAME == "露天矿").Select(m => m.ID).ToList();
var names= new string[] { "全公司", "选矿厂", "地下矿", "尾矿库" }.ToList();
var productUnitIds = productionUnits.Where(t => names.Contains(t.NAME)).OrderBy(t=>t.NAME == "尾矿库").ThenBy(t => t.NAME == "地下矿").ThenBy(t => t.NAME == "选矿厂").ThenBy(t => t.NAME == "全公司").Select(m => m.ID).ToList();
foreach (var id in productUnitIds)
{
var mineTypeName = productionUnits.FirstOrDefault(t => t.ID == id)?.NAME;
@ -952,8 +953,8 @@ namespace APT.SC.WebApi.Controllers.Api.BI
var templevel4 = allrisk.Where(t => libIds1.Contains(t.ID) && t.EVALUATE_LEVEL == SKEvaluateLevelEnum.);
PerformanceModel modelCJ = new PerformanceModel();
modelCJ.NAME = new List<string> { "露天矿", "选矿厂", "地下矿", "尾矿库" };
var minTypeArr = productionUnits.Where(t => modelCJ.NAME.Contains(t.NAME)).OrderBy(t => t.NAME == "尾矿库").ThenBy(t => t.NAME == "地下矿").ThenBy(t => t.NAME == "选矿厂").ThenBy(t => t.NAME == "露天矿").Select(m => m.ID).ToList();
modelCJ.NAME = new List<string> { "全公司", "选矿厂", "地下矿", "尾矿库" };
var minTypeArr = productionUnits.Where(t => modelCJ.NAME.Contains(t.NAME)).OrderBy(t => t.NAME == "尾矿库").ThenBy(t => t.NAME == "地下矿").ThenBy(t => t.NAME == "选矿厂").ThenBy(t => t.NAME == "全公司").Select(m => m.ID).ToList();
modelCJ.LEVEL1 = new List<int> { templevel1.Count(t => t.PRODUCTION_UNIT_ID == minTypeArr[0]), templevel1.Count(t => t.PRODUCTION_UNIT_ID == minTypeArr[1]), templevel1.Count(t => t.PRODUCTION_UNIT_ID == minTypeArr[2]), templevel1.Count(t => t.PRODUCTION_UNIT_ID == minTypeArr[3]) };
modelCJ.LEVEL2 = new List<int> { templevel2.Count(t => t.PRODUCTION_UNIT_ID == minTypeArr[0]), templevel2.Count(t => t.PRODUCTION_UNIT_ID == minTypeArr[1]), templevel2.Count(t => t.PRODUCTION_UNIT_ID == minTypeArr[2]), templevel2.Count(t => t.PRODUCTION_UNIT_ID == minTypeArr[3]) };
modelCJ.LEVEL3 = new List<int> { templevel3.Count(t => t.PRODUCTION_UNIT_ID == minTypeArr[0]), templevel3.Count(t => t.PRODUCTION_UNIT_ID == minTypeArr[1]), templevel3.Count(t => t.PRODUCTION_UNIT_ID == minTypeArr[2]), templevel3.Count(t => t.PRODUCTION_UNIT_ID == minTypeArr[3]) };
@ -985,7 +986,7 @@ namespace APT.SC.WebApi.Controllers.Api.BI
modelSubZRDY.LEVEL4.Add(countLevel4);
modelSubZRDY.TOTAL.Add(totalZRDY);
}
SubZRDY.Add(SortByTotal(modelSubZRDY));
SubZRDY.Add(modelSubZRDY);//SortByTotal(modelSubZRDY)
}
riskPerformanceData.TEAMLIST = SubZRDY;
#endregion
@ -1012,7 +1013,7 @@ namespace APT.SC.WebApi.Controllers.Api.BI
modelSubQY.LEVEL4.Add(countLevel4);
modelSubQY.TOTAL.Add(totalZRDY);
}
SubQY.Add(SortByTotal(modelSubQY));
SubQY.Add(modelSubQY);//SortByTotal(modelSubQY)
}
riskPerformanceData.AREALIST = SubQY;
#endregion
@ -1039,7 +1040,7 @@ namespace APT.SC.WebApi.Controllers.Api.BI
modelSubFXLB.LEVEL4.Add(countLevel4);
modelSubFXLB.TOTAL.Add(totalZRDY);
}
SubFXLB.Add(SortByTotal(modelSubFXLB));
SubFXLB.Add(modelSubFXLB);//SortByTotal(modelSubFXLB)
}
riskPerformanceData.RISKTYPELIST = SubFXLB;
#endregion

View File

@ -460,14 +460,14 @@ namespace APT.SC.WebApi.Controllers.Api.BI
List<List<int>> listCheckTypeCount = new List<List<int>>();
List<int> listCheckTypeCountPer = null;
var listCheckType = GetEntities<T_SK_CHECK_TYPE>(e => !e.IS_DELETED, null).OrderBy(e => e.PRODUCTION_UNIT_ID).ThenBy(e => e.NUM);
var listCheckType = GetEntities<T_SK_CHECK_TYPE>(e => !e.IS_DELETED, null, "Nav_ProductionUnit").OrderBy(e => e.PRODUCTION_UNIT_ID).ThenBy(e => e.NUM);
List<string> listCheckTypeName = new List<string>();
List<Guid> listCheckTypeID = new List<Guid>();
List<Guid> listSum = new List<Guid>();
Guid guidParent = Guid.Empty;
foreach (var item in listCheckType)
{
listCheckTypeName.Add(item.NAME);
listCheckTypeName.Add(item.Nav_ProductionUnit?.NAME+item.NAME);
listCheckTypeID.Add(item.ID);
}
listSum.Add(guidParent);//有些人直接定义 综合检查
@ -1034,7 +1034,7 @@ namespace APT.SC.WebApi.Controllers.Api.BI
BaseFilter filterSearch = new BaseFilter(filter.OrgId);
filterSearch.IgnoreDataRule = true;
//filterSearch.Include.Add("Nav_CheckTypeLevel");
filterSearch.SelectField = new List<string>() { "ID", "APPLY_USER_ID", "PRODUCTION_UNIT_ID", "CHECK_TYPE_ID", "IS_DELETED", "CHECK_TIME", "DEPARTMENT_TYPE" };
filterSearch.SelectField = new List<string>() { "ID", "APPLY_USER_ID", "PRODUCTION_UNIT_ID", "CHECK_TYPE_ID", "IS_DELETED", "CREATE_TIME", "DEPARTMENT_TYPE" };
//var listSafeCheck = GetEntities(expression, null, "Nav_CheckTypeLevel");
var listSafeCheck = GetEntities(expression, filterSearch, null);
@ -1306,7 +1306,8 @@ namespace APT.SC.WebApi.Controllers.Api.BI
DateTime? dtEnd = null;
List<string> lisMineTypeOrder = new List<string>();
var enmusMineType = GetEntities<T_FM_USER_PRODUCTION_UNIT_SET>(e => !e.IS_DELETED, null, null).ToList();
var names = new string[] { "全公司", "选矿厂", "地下矿", "尾矿库" }.ToList();
var enmusMineType = GetEntities<T_FM_USER_PRODUCTION_UNIT_SET>(e => names.Contains(e.NAME), null, null).ToList();
if (enmusMineType == null || !enmusMineType.Any())
throw new Exception("获取生成单元信息失败!");
@ -1348,8 +1349,8 @@ namespace APT.SC.WebApi.Controllers.Api.BI
listFinishPer2_1Percent = new List<decimal>();
foreach (var item in listMonth)
{
listFinishPer2_1.Add(listContent.Count(e => e.PRODUCTION_UNIT_ID.HasValue && e.PRODUCTION_UNIT_ID == itemEnums.ID && e.CREATE_TIME.HasValue && e.CREATE_TIME.Value.Month == item));
listNotFinishPer2_1.Add(listContent.Count(e => e.PRODUCTION_UNIT_ID.HasValue && e.PRODUCTION_UNIT_ID == itemEnums.ID && e.CREATE_TIME.HasValue && e.CREATE_TIME.Value.Month == item));
listFinishPer2_1.Add(listContent.Count(e => e.PRODUCTION_UNIT_ID.HasValue && e.PRODUCTION_UNIT_ID == itemEnums.ID && e.CREATE_TIME.HasValue && e.CREATE_TIME.Value.Month == item && e.STATUS == BaseData.Domain.Enums.PF.PFStandardStatus.Archived));
listNotFinishPer2_1.Add(listContent.Count(e => e.PRODUCTION_UNIT_ID.HasValue && e.PRODUCTION_UNIT_ID == itemEnums.ID && e.CREATE_TIME.HasValue && e.CREATE_TIME.Value.Month == item && e.STATUS != BaseData.Domain.Enums.PF.PFStandardStatus.Archived));
}
for (int i = 0; i < listMonth.Count; i++)
@ -1470,7 +1471,8 @@ namespace APT.SC.WebApi.Controllers.Api.BI
DateTime? dtEnd = null;
List<string> lisMineTypeOrder = new List<string>();
var enmusMineType = GetEntities<T_FM_USER_PRODUCTION_UNIT_SET>(e => !e.IS_DELETED, null, null).ToList();
var names = new string[] { "全公司", "选矿厂", "地下矿", "尾矿库" }.ToList();
var enmusMineType = GetEntities<T_FM_USER_PRODUCTION_UNIT_SET>(e => names.Contains(e.NAME), null, null).ToList();
if (enmusMineType == null || !enmusMineType.Any())
throw new Exception("获取生成单元信息失败!");
@ -1672,7 +1674,8 @@ namespace APT.SC.WebApi.Controllers.Api.BI
DateTime dtStart = Convert.ToDateTime(DateTime.Now.Year.ToString() + "-01-01 00:00:00");
DateTime? dtEnd = null;
var enmusMineType = GetEntities<T_FM_USER_PRODUCTION_UNIT_SET>(e => !e.IS_DELETED, null, null).ToList();
var names = new string[] { "全公司", "选矿厂", "地下矿", "尾矿库" }.ToList();
var enmusMineType = GetEntities<T_FM_USER_PRODUCTION_UNIT_SET>(e => names.Contains(e.NAME), null, null).ToList();
List<string> lisMineTypeOrder = new List<string>();
if (enmusMineType == null || !enmusMineType.Any())
throw new Exception("获取生成单元信息失败!");
@ -1718,7 +1721,7 @@ namespace APT.SC.WebApi.Controllers.Api.BI
lisMineCheckTypeOrderPer = new List<string>();
foreach (var itemCheckType in item)
{
lisMineCheckTypeOrderPer.Add(itemCheckType.NAME);
lisMineCheckTypeOrderPer.Add(itemCheckType.Nav_ProductionUnit?.NAME+itemCheckType.NAME);
}
lisMineCheckTypeOrder.Add(lisMineCheckTypeOrderPer);
}
@ -1942,7 +1945,8 @@ namespace APT.SC.WebApi.Controllers.Api.BI
listMonth = listMonth.Where(e => e <= DateTime.Now.Month).OrderBy(e => e).ToList();
}
var enmusMineType = GetEntities<T_FM_USER_PRODUCTION_UNIT_SET>(e => !e.IS_DELETED, null, null).ToList();
var names = new string[] { "全公司", "选矿厂", "地下矿", "尾矿库" }.ToList();
var enmusMineType = GetEntities<T_FM_USER_PRODUCTION_UNIT_SET>(e => names.Contains(e.NAME), null, null).ToList();
List<string> lisMineTypeOrder = new List<string>();
if (enmusMineType == null || !enmusMineType.Any())
throw new Exception("获取生成单元信息失败!");
@ -1999,7 +2003,7 @@ namespace APT.SC.WebApi.Controllers.Api.BI
lisMineCheckTypeOrderPer = new List<string>();
foreach (var itemCheckType in item)
{
lisMineCheckTypeOrderPer.Add(itemCheckType.NAME);
lisMineCheckTypeOrderPer.Add(itemCheckType.Nav_ProductionUnit?.NAME + itemCheckType.NAME);
}
lisMineCheckTypeOrder.Add(lisMineCheckTypeOrderPer);
}