From d4949fc78c20f1adff5cf016fe00bc9ecca994c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BD=95=E7=BE=8E=E8=8D=A3?= <10755671+mei-rong-he@user.noreply.gitee.com> Date: Tue, 4 Aug 2026 14:58:25 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=8E=E5=8F=B0=E5=9B=BE=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Api/BIController/BIController.cs | 23 +++++------ .../Api/BIController/BISafeController.cs | 38 ++++++++++--------- 2 files changed, 33 insertions(+), 28 deletions(-) diff --git a/APT.MicroApi/APT.SC.WebApi/Controllers/Api/BIController/BIController.cs b/APT.MicroApi/APT.SC.WebApi/Controllers/Api/BIController/BIController.cs index 9ce69a6..43090fb 100644 --- a/APT.MicroApi/APT.SC.WebApi/Controllers/Api/BIController/BIController.cs +++ b/APT.MicroApi/APT.SC.WebApi/Controllers/Api/BIController/BIController.cs @@ -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 { "露天矿", "选矿厂", "尾矿厂", "职能部门" }; + modelCJ.NAME = new List { "全公司", "选矿厂", "尾矿厂", "职能部门" }; modelCJ.LEVEL1 = new List { 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 { 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 { 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 item3s = new List(); var libType = allrisk.Select(t => t.TYPE_ID).Distinct().ToList(); - var distinctType = GetEntities(t => libType.Contains(t.ID), new BaseFilter(filter.GetOrgId())); + var libArea = allrisk.Select(t => t.AREA_ID).Distinct().ToList(); + var distinctType = GetEntities(t => libType.Contains(t.ID), new BaseFilter(filter.GetOrgId()), "Nav_ProductionUnit"); var departments = GetEntities(t => t.ENABLE_STATUS == 0, new BaseFilter(filter.GetOrgId())); - var distinctArea = GetEntities(t => t.IS_DELETED == false, new BaseFilter(filter.GetOrgId())); + var distinctArea = GetEntities(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 { "露天矿", "选矿厂", "地下矿", "尾矿库" }; - 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 { "全公司", "选矿厂", "地下矿", "尾矿库" }; + 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 { 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 { 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 { 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 diff --git a/APT.MicroApi/APT.SC.WebApi/Controllers/Api/BIController/BISafeController.cs b/APT.MicroApi/APT.SC.WebApi/Controllers/Api/BIController/BISafeController.cs index ae736f3..e9df03c 100644 --- a/APT.MicroApi/APT.SC.WebApi/Controllers/Api/BIController/BISafeController.cs +++ b/APT.MicroApi/APT.SC.WebApi/Controllers/Api/BIController/BISafeController.cs @@ -460,14 +460,14 @@ namespace APT.SC.WebApi.Controllers.Api.BI List> listCheckTypeCount = new List>(); List listCheckTypeCountPer = null; - var listCheckType = GetEntities(e => !e.IS_DELETED, null).OrderBy(e => e.PRODUCTION_UNIT_ID).ThenBy(e => e.NUM); + var listCheckType = GetEntities(e => !e.IS_DELETED, null, "Nav_ProductionUnit").OrderBy(e => e.PRODUCTION_UNIT_ID).ThenBy(e => e.NUM); List listCheckTypeName = new List(); List listCheckTypeID = new List(); List listSum = new List(); 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() { "ID", "APPLY_USER_ID", "PRODUCTION_UNIT_ID", "CHECK_TYPE_ID", "IS_DELETED", "CHECK_TIME", "DEPARTMENT_TYPE" }; + filterSearch.SelectField = new List() { "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); @@ -1305,8 +1305,9 @@ namespace APT.SC.WebApi.Controllers.Api.BI DateTime dtStart = Convert.ToDateTime(DateTime.Now.Year.ToString() + "-01-01 00:00:00"); DateTime? dtEnd = null; - List lisMineTypeOrder = new List(); - var enmusMineType = GetEntities(e => !e.IS_DELETED, null, null).ToList(); + List lisMineTypeOrder = new List(); + var names = new string[] { "全公司", "选矿厂", "地下矿", "尾矿库" }.ToList(); + var enmusMineType = GetEntities(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(); 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++) @@ -1469,8 +1470,9 @@ namespace APT.SC.WebApi.Controllers.Api.BI DateTime dtStart = Convert.ToDateTime(DateTime.Now.Year.ToString() + "-01-01 00:00:00"); DateTime? dtEnd = null; - List lisMineTypeOrder = new List(); - var enmusMineType = GetEntities(e => !e.IS_DELETED, null, null).ToList(); + List lisMineTypeOrder = new List(); + var names = new string[] { "全公司", "选矿厂", "地下矿", "尾矿库" }.ToList(); + var enmusMineType = GetEntities(e => names.Contains(e.NAME), null, null).ToList(); if (enmusMineType == null || !enmusMineType.Any()) throw new Exception("获取生成单元信息失败!"); @@ -1670,9 +1672,10 @@ namespace APT.SC.WebApi.Controllers.Api.BI { ModelBI056_3_1 result = new ModelBI056_3_1(); DateTime dtStart = Convert.ToDateTime(DateTime.Now.Year.ToString() + "-01-01 00:00:00"); - DateTime? dtEnd = null; - - var enmusMineType = GetEntities(e => !e.IS_DELETED, null, null).ToList(); + DateTime? dtEnd = null; + + var names = new string[] { "全公司", "选矿厂", "地下矿", "尾矿库" }.ToList(); + var enmusMineType = GetEntities(e => names.Contains(e.NAME), null, null).ToList(); List lisMineTypeOrder = new List(); if (enmusMineType == null || !enmusMineType.Any()) throw new Exception("获取生成单元信息失败!"); @@ -1718,7 +1721,7 @@ namespace APT.SC.WebApi.Controllers.Api.BI lisMineCheckTypeOrderPer = new List(); foreach (var itemCheckType in item) { - lisMineCheckTypeOrderPer.Add(itemCheckType.NAME); + lisMineCheckTypeOrderPer.Add(itemCheckType.Nav_ProductionUnit?.NAME+itemCheckType.NAME); } lisMineCheckTypeOrder.Add(lisMineCheckTypeOrderPer); } @@ -1940,9 +1943,10 @@ namespace APT.SC.WebApi.Controllers.Api.BI else if (dtStart.Year == DateTime.Now.Year) { listMonth = listMonth.Where(e => e <= DateTime.Now.Month).OrderBy(e => e).ToList(); - } - - var enmusMineType = GetEntities(e => !e.IS_DELETED, null, null).ToList(); + } + + var names = new string[] { "全公司", "选矿厂", "地下矿", "尾矿库" }.ToList(); + var enmusMineType = GetEntities(e => names.Contains(e.NAME), null, null).ToList(); List lisMineTypeOrder = new List(); if (enmusMineType == null || !enmusMineType.Any()) throw new Exception("获取生成单元信息失败!"); @@ -1999,7 +2003,7 @@ namespace APT.SC.WebApi.Controllers.Api.BI lisMineCheckTypeOrderPer = new List(); foreach (var itemCheckType in item) { - lisMineCheckTypeOrderPer.Add(itemCheckType.NAME); + lisMineCheckTypeOrderPer.Add(itemCheckType.Nav_ProductionUnit?.NAME + itemCheckType.NAME); } lisMineCheckTypeOrder.Add(lisMineCheckTypeOrderPer); }