优化,去掉部门为空的

This commit is contained in:
何美荣 2026-06-30 18:07:40 +08:00
parent 28971e678f
commit a22d98fb8a

View File

@ -892,15 +892,18 @@ namespace APT.PP.WebApi.Controllers.Api.PP
var endTime = Convert.ToDateTime(DateTime.Now.Year + "-" + DateTime.Now.Month + "-" + DateTime.Now.Day + " 23:59:59");
baseFilter.SelectField = new string[] { "ID", "NAME", "DEPARTMENT_TYPE", "Nav_Parent.NAME", "Nav_Parent.Nav_Parent", "PARENT_ID" };
var departments = GetEntities<T_FM_DEPARTMENT>(t => !t.IS_DELETED, baseFilter);
baseFilter.SelectField = new string[] { "ID", "IS_PUBLISH", "DEPARTMENT_ID", "CREATE_TIME", "IS_OVERTIME" }; //指定字段,包括导航属性
var jobInfos = GetEntities<T_FO_CRUCIAL_LICENSE_JOB>(i => i.CREATE_TIME >= startTime && i.IS_DELETED == false && i.DEPARTMENT_ID != null, baseFilter).ToList();
baseFilter.SelectField = new string[] { "ID", "IS_PUBLISH", "DEPARTMENT_ID", "CREATE_TIME", "IS_OVERTIME", "APPLY_USER_ID" }; //指定字段,包括导航属性
var jobInfos = GetEntities<T_FO_CRUCIAL_LICENSE_JOB>(i => i.CREATE_TIME >= startTime && i.IS_DELETED == false && i.APPLY_USER_ID != null, baseFilter).ToList();
var jobIds = jobInfos.Select(t => t.ID).ToList();
baseFilter.SelectField = new string[] { "ID", "STATUS", "APPLY_DEPARTMENT_ID", "CREATE_TIME", "IS_OVERTIME" };
var fireJobInfos = GetEntities<T_FO_FIRE_JOB>(i => i.CREATE_TIME >= startTime && i.IS_DELETED == false && i.APPLY_DEPARTMENT_ID != null, baseFilter).ToList();
var fireJobIds = fireJobInfos.Select(t => t.ID).ToList();
jobIds.AddRange(fireJobIds);
baseFilter.SelectField = new string[] { "ID", "NOTICE_STATUS", "CREATE_TIME", "SOURCE_DATA_ID" }; //指定字段,包括导航属性
var tasks = this.GetEntities<T_FM_NOTIFICATION_TASK>(t => t.IS_DELETED == false && t.CREATE_TIME >= startTime && t.NOTICE_STATUS == 2 && jobIds.Contains((Guid)t.SOURCE_DATA_ID), baseFilter).ToList();
var tasks = this.GetEntities<T_FM_NOTIFICATION_TASK>(t => t.IS_DELETED == false && t.CREATE_TIME >= startTime && t.NOTICE_STATUS == 2 && jobIds.Contains((Guid)t.SOURCE_DATA_ID), baseFilter).ToList();
var userIds = jobInfos.Select(t => t.APPLY_USER_ID).Distinct().ToList();
baseFilter.SelectField = new string[] { "ID", "DEPARTMENT_ID"}; //指定字段,包括导航属性
var userInfos = GetEntities<T_FM_USER>(i => userIds.Contains(i.ID), baseFilter).ToList();
List<JobInfo> jobs = new List<JobInfo>();
foreach (var item in jobInfos)
{
@ -909,10 +912,11 @@ namespace APT.PP.WebApi.Controllers.Api.PP
item.IS_OVERTIME = 0;
else
item.IS_OVERTIME = 1;
var user = userInfos.FirstOrDefault(t => t.ID == item.APPLY_USER_ID);
JobInfo job = new JobInfo();
job.CREATE_TIME = item.CREATE_TIME;
job.IS_OVERTIME = item.IS_OVERTIME;
job.DEPARTMENT_ID = item.DEPARTMENT_ID;
job.DEPARTMENT_ID = user?.DEPARTMENT_ID;
job.IS_PUBLISH = item.IS_PUBLISH;
jobs.Add(job);
}
@ -947,19 +951,19 @@ namespace APT.PP.WebApi.Controllers.Api.PP
foreach (var item in results)
{
var departInfo = departments.FirstOrDefault(t => t.ID == item.departmetId);
T_FM_WORK_TICKET_COMPLETION completion = new T_FM_WORK_TICKET_COMPLETION();
completion.MONTH = i;
completion.MONTHStr = i.Year + "年" + i.Month + "月";
completion.TOTAL_COUNT = item.totalCount;
completion.FINISH_COUNT = item.finishCount;
completion.OVER_FINISH_COUNT = item.overFinishCount;
completion.WAITTING_COUNT = item.waitingCount;
completion.ONTIME_COUNT = item.onTimeCount;
completion.ORG_ID = filter.GetOrgId();
completion.START_TIME = i;
completion.END_TIME = monthEnd;
if (departInfo != null)
{
{
T_FM_WORK_TICKET_COMPLETION completion = new T_FM_WORK_TICKET_COMPLETION();
completion.MONTH = i;
completion.MONTHStr = i.Year + "年" + i.Month + "月";
completion.TOTAL_COUNT = item.totalCount;
completion.FINISH_COUNT = item.finishCount;
completion.OVER_FINISH_COUNT = item.overFinishCount;
completion.WAITTING_COUNT = item.waitingCount;
completion.ONTIME_COUNT = item.onTimeCount;
completion.ORG_ID = filter.GetOrgId();
completion.START_TIME = i;
completion.END_TIME = monthEnd;
if (departInfo.DEPARTMENT_TYPE == 10|| departInfo.DEPARTMENT_TYPE == 5)
{
completion.DEPARTMENT_ID = item.departmetId;
@ -980,9 +984,9 @@ namespace APT.PP.WebApi.Controllers.Api.PP
completion.SHOP_DEPARTMENT_NAME = departInfo?.Nav_Parent?.NAME;
completion.TEAM_ID = item.departmetId;
completion.TEAM_NAME = departInfo?.NAME;
}
}
completions.Add(completion);
}
completions.Add(completion);
}
}
this.UnifiedCommit(() =>