显示优化

This commit is contained in:
何美荣 2026-06-17 18:29:36 +08:00
parent 244f6de4a8
commit 384d3ce04d
4 changed files with 112 additions and 26 deletions

View File

@ -367,7 +367,40 @@ namespace APT.SK.WebApi.Controllers.Api
var departTemps = departs.Where(t => t.RISK_EVALUATION_DETAIL_ID == detail.ID).ToList(); var departTemps = departs.Where(t => t.RISK_EVALUATION_DETAIL_ID == detail.ID).ToList();
detail.Nav_DetailDeparts = departTemps.OrderBy(t => t.DEPARTMENT_TYPE).ThenBy(m => m.Nav_Department.NUM).ToList(); detail.Nav_DetailDeparts = departTemps.OrderBy(t => t.DEPARTMENT_TYPE).ThenBy(m => m.Nav_Department.NUM).ToList();
var postTemps = posts.Where(t => t.RISK_EVALUATION_DETAIL_ID == detail.ID).ToList(); var postTemps = posts.Where(t => t.RISK_EVALUATION_DETAIL_ID == detail.ID).ToList();
detail.Nav_DetailPosts = postTemps.OrderBy(t => t.DEPARTMENT_ID).ToList(); detail.Nav_DetailPosts = postTemps.OrderBy(t => t.DEPARTMENT_ID).ToList();
if (detail.Nav_DetailDeparts != null && detail.Nav_DetailDeparts.Any())
{
var departTypes = detail.Nav_DetailDeparts.OrderBy(m => m.DEPARTMENT_TYPE).Select(t => t.DEPARTMENT_TYPE).Distinct().ToList();
var j = 1;
foreach (var p in departTypes)
{
if (!string.IsNullOrEmpty(p.GetDescription()))
{
var temp = j + "、" + p.GetDescription() + "";
detail.DEPARTMENT_TYPE = detail.DEPARTMENT_TYPE + temp;
var dds = detail.Nav_DetailDeparts.Where(x => x.DEPARTMENT_TYPE == p).Select(t => t.Nav_Department?.NAME).Distinct().ToList();
if (dds.Count() != 0)
{
var temp2 = j + "、" + string.Join(",", dds) + "";
detail.IDENTIFY_DEPARTMENT = detail.IDENTIFY_DEPARTMENT + temp2;
}
var uus = detail.Nav_DetailDeparts.Where(x => x.DEPARTMENT_TYPE == p).Select(t => t.Nav_Department?.Nav_User?.NAME).Distinct().ToList();
if (uus.Count() != 0)
{
var temp3 = j + "、" + string.Join(",", uus) + "";
detail.IDENTIFY_USER = detail.IDENTIFY_USER + temp3;
}
var ddIds = detail.Nav_DetailDeparts.Where(x => x.DEPARTMENT_TYPE == p).Select(t => t.DEPARTMENT_ID).Distinct().ToList();
var pps = detail.Nav_DetailPosts.Where(x => ddIds.Contains(x.DEPARTMENT_ID)).SelectMany(x => x.Nav_PostDetails).Select(t => t.Nav_Post?.NAME).Distinct().ToList();
if (pps.Count() != 0)
{
var temp4 = j + "、" + string.Join(",", pps) + "";
detail.IDENTIFY_POST = detail.IDENTIFY_POST + temp4;
}
j++;
}
}
}
} }
} }
result.Nav_Details = details.OrderBy(m => m.MineType).ThenBy(m => m.AREA_ID).ThenBy(n => n.TYPE_ID).ToList(); result.Nav_Details = details.OrderBy(m => m.MineType).ThenBy(m => m.AREA_ID).ThenBy(n => n.TYPE_ID).ToList();

View File

@ -274,7 +274,40 @@ namespace APT.SK.WebApi.Controllers.Api
//temps.AddRange(tempy); //temps.AddRange(tempy);
detail.Nav_DetailDeparts = departTemps.OrderBy(t => t.DEPARTMENT_TYPE).ThenBy(m => m.Nav_Department.NUM).ToList(); detail.Nav_DetailDeparts = departTemps.OrderBy(t => t.DEPARTMENT_TYPE).ThenBy(m => m.Nav_Department.NUM).ToList();
var postTemps = posts.Where(t => t.RISK_EVALUATION_SUMMARY_DETAIL_ID == detail.ID).ToList(); var postTemps = posts.Where(t => t.RISK_EVALUATION_SUMMARY_DETAIL_ID == detail.ID).ToList();
detail.Nav_DetailPosts = postTemps.OrderBy(t => t.DEPARTMENT_ID).ToList(); detail.Nav_DetailPosts = postTemps.OrderBy(t => t.DEPARTMENT_ID).ToList();
if (detail.Nav_DetailDeparts != null && detail.Nav_DetailDeparts.Any())
{
var departTypes = detail.Nav_DetailDeparts.OrderBy(m => m.DEPARTMENT_TYPE).Select(t => t.DEPARTMENT_TYPE).Distinct().ToList();
var j = 1;
foreach (var p in departTypes)
{
if (!string.IsNullOrEmpty(p.GetDescription()))
{
var temp = j + "、" + p.GetDescription() + "";
detail.DEPARTMENT_TYPE = detail.DEPARTMENT_TYPE + temp;
var dds = detail.Nav_DetailDeparts.Where(x => x.DEPARTMENT_TYPE == p).Select(t => t.Nav_Department?.NAME).Distinct().ToList();
if (dds.Count() != 0)
{
var temp2 = j + "、" + string.Join(",", dds) + "";
detail.IDENTIFY_DEPARTMENT = detail.IDENTIFY_DEPARTMENT + temp2;
}
var uus = detail.Nav_DetailDeparts.Where(x => x.DEPARTMENT_TYPE == p).Select(t => t.Nav_Department?.Nav_User?.NAME).Distinct().ToList();
if (uus.Count() != 0)
{
var temp3 = j + "、" + string.Join(",", uus) + "";
detail.IDENTIFY_USER = detail.IDENTIFY_USER + temp3;
}
var ddIds = detail.Nav_DetailDeparts.Where(x => x.DEPARTMENT_TYPE == p).Select(t => t.DEPARTMENT_ID).Distinct().ToList();
var pps = detail.Nav_DetailPosts.Where(x => ddIds.Contains(x.DEPARTMENT_ID)).SelectMany(x => x.Nav_PostDetails).Select(t => t.Nav_Post?.NAME).Distinct().ToList();
if (pps.Count() != 0)
{
var temp4 = j + "、" + string.Join(",", pps) + "";
detail.IDENTIFY_POST = detail.IDENTIFY_POST + temp4;
}
j++;
}
}
}
} }
} }
result.Nav_Details = details.OrderBy(m => m.MineType).ThenBy(m => m.AREA_ID).ThenBy(n => n.TYPE_ID).ToList(); result.Nav_Details = details.OrderBy(m => m.MineType).ThenBy(m => m.AREA_ID).ThenBy(n => n.TYPE_ID).ToList();

View File

@ -326,18 +326,28 @@ namespace APT.SK.WebApi.Controllers.Api
//} //}
if (d.Nav_DetailPosts != null && d.Nav_DetailPosts.Any()) if (d.Nav_DetailPosts != null && d.Nav_DetailPosts.Any())
{ {
var departTypes = d.Nav_DetailPosts.Select(t => t.DEPARTMENT_TYPE).Distinct().ToList(); var departTypes = d.Nav_DetailPosts.OrderBy(m=>m.DEPARTMENT_TYPE).Select(t => t.DEPARTMENT_TYPE).Distinct().ToList();
var j = 1; var j = 1;
foreach (var p in departTypes) foreach (var p in departTypes)
{ {
var temp = j + "、" + p.GetDescription() + ""; if (!string.IsNullOrEmpty(p.GetDescription()))
d.DEPARTMENT_TYPE = d.DEPARTMENT_TYPE + temp; {
var departs = d.Nav_DetailPosts.Where(x => x.DEPARTMENT_TYPE == p).Select(t => t.Nav_Department?.NAME).Distinct().ToList(); var temp = j + "、" + p.GetDescription() + "";
var temp2 = j + "、" + string.Join(",", departs) + ""; d.DEPARTMENT_TYPE = d.DEPARTMENT_TYPE + temp;
d.IDENTIFY_DEPARTMENT = d.IDENTIFY_DEPARTMENT + temp2; var departs = d.Nav_DetailPosts.Where(x => x.DEPARTMENT_TYPE == p).Select(t => t.Nav_Department?.NAME).Distinct().ToList();
var posts = d.Nav_DetailPosts.Where(x => x.DEPARTMENT_TYPE == p).SelectMany(x => x.Nav_ResultPostDets).Select(t => t.Nav_Post?.NAME).Distinct().ToList(); if (departs.Count() != 0)
var temp3 = j + "、" + string.Join(",", posts) + ""; {
d.IDENTIFY_POST = d.IDENTIFY_POST + temp3; var temp2 = j + "、" + string.Join(",", departs) + "";
d.IDENTIFY_DEPARTMENT = d.IDENTIFY_DEPARTMENT + temp2;
}
var posts = d.Nav_DetailPosts.Where(x => x.DEPARTMENT_TYPE == p).SelectMany(x => x.Nav_ResultPostDets).Select(t => t.Nav_Post?.NAME).Distinct().ToList();
if (posts.Count() != 0)
{
var temp3 = j + "、" + string.Join(",", posts) + "";
d.IDENTIFY_POST = d.IDENTIFY_POST + temp3;
}
j++;
}
} }
} }

View File

@ -1,17 +1,18 @@
using APT.BaseData.Domain.Entities.FM; using APT.BaseData.Domain.Entities;
using APT.BaseData.Domain.Entities; using APT.BaseData.Domain.Entities.FM;
using APT.BaseData.Domain.Enums.PF;
using APT.BaseData.Domain.Enums; using APT.BaseData.Domain.Enums;
using APT.BaseData.Domain.IServices.FM; using APT.BaseData.Domain.Enums.PF;
using APT.BaseData.Domain.IServices; using APT.BaseData.Domain.IServices;
using APT.BaseData.Domain.IServices.FM;
using APT.Infrastructure.Core; using APT.Infrastructure.Core;
using APT.MS.Domain.Entities.SK; using APT.MS.Domain.Entities.SK;
using APT.MS.Domain.Enums; using APT.MS.Domain.Enums;
using APT.Utility; using APT.Utility;
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
using System.Collections.Generic;
using System; using System;
using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Net;
namespace APT.SK.WebApi.Controllers.Api namespace APT.SK.WebApi.Controllers.Api
{ {
@ -262,20 +263,29 @@ namespace APT.SK.WebApi.Controllers.Api
//} //}
if (d.Nav_DetailPosts != null && d.Nav_DetailPosts.Any()) if (d.Nav_DetailPosts != null && d.Nav_DetailPosts.Any())
{ {
var departTypes = d.Nav_DetailPosts.Select(t => t.DEPARTMENT_TYPE).Distinct().ToList(); var departTypes = d.Nav_DetailPosts.OrderBy(m => m.DEPARTMENT_TYPE).Select(t => t.DEPARTMENT_TYPE).Distinct().ToList();
var j = 1; var j = 1;
foreach (var p in departTypes) foreach (var p in departTypes)
{ {
var temp = j + "、" + p.GetDescription() + ""; if (!string.IsNullOrEmpty(p.GetDescription()))
d.DEPARTMENT_TYPE = d.DEPARTMENT_TYPE + temp; {
var departs = d.Nav_DetailPosts.Where(x => x.DEPARTMENT_TYPE == p).Select(t => t.Nav_Department?.NAME).Distinct().ToList(); var temp = j + "、" + p.GetDescription() + "";
var temp2 = j + "、" + string.Join(",", departs) + ""; d.DEPARTMENT_TYPE = d.DEPARTMENT_TYPE + temp;
d.IDENTIFY_DEPARTMENT = d.IDENTIFY_DEPARTMENT + temp2; var departs = d.Nav_DetailPosts.Where(x => x.DEPARTMENT_TYPE == p).Select(t => t.Nav_Department?.NAME).Distinct().ToList();
var posts = d.Nav_DetailPosts.Where(x => x.DEPARTMENT_TYPE == p).SelectMany(x => x.Nav_SumPostDets).Select(t => t.Nav_Post?.NAME).Distinct().ToList(); if (departs.Count() != 0)
var temp3 = j + "、" + string.Join(",", posts) + ""; {
d.IDENTIFY_POST = d.IDENTIFY_POST + temp3; var temp2 = j + "、" + string.Join(",", departs) + "";
d.IDENTIFY_DEPARTMENT = d.IDENTIFY_DEPARTMENT + temp2;
}
var posts = d.Nav_DetailPosts.Where(x => x.DEPARTMENT_TYPE == p).SelectMany(x => x.Nav_SumPostDets).Select(t => t.Nav_Post?.NAME).Distinct().ToList();
if (posts.Count() != 0)
{
var temp3 = j + "、" + string.Join(",", posts) + "";
d.IDENTIFY_POST = d.IDENTIFY_POST + temp3;
}
j++;
}
} }
} }
//d.Nav_DetailPosts = d.Nav_DetailPosts.OrderBy(t => t.DEPARTMENT_TYPE).ToList(); //d.Nav_DetailPosts = d.Nav_DetailPosts.OrderBy(t => t.DEPARTMENT_TYPE).ToList();
//var departTypes = d.Nav_DetailPosts.Select(t => t.DEPARTMENT_TYPE.GetDescription()).Distinct().ToList(); //var departTypes = d.Nav_DetailPosts.Select(t => t.DEPARTMENT_TYPE.GetDescription()).Distinct().ToList();