addtaskinfo

This commit is contained in:
何美荣 2025-11-22 10:59:58 +08:00
parent f572730cec
commit a653c78cfa

View File

@ -3144,8 +3144,11 @@ namespace APT.PP.WebApi.Controllers.Api.PP
sum.NORMAL_FINISH_RATE = temp2.ToString("0");
departSummary.Add(sum);
});
}
//折线图
}
//折线图
var deleteIds = new List<Guid>();
var deletemouIds = new List<Guid>();
var deletemonthIds = new List<Guid>();
List<T_BI_DEPARTMENT_MONTH_RUN> monthRuns = new List<T_BI_DEPARTMENT_MONTH_RUN>();
var ksDepartId = departmentInfos.FirstOrDefault(t => t.NAME == "矿山部")?.ID;
var xkDepartId = departmentInfos.FirstOrDefault(t => t.NAME == "选矿部")?.ID;
@ -3154,108 +3157,112 @@ namespace APT.PP.WebApi.Controllers.Api.PP
ksDepartId = departmentInfos.FirstOrDefault(t => t.NAME == "选矿一部")?.ID;
xkDepartId = departmentInfos.FirstOrDefault(t => t.NAME == "选矿二部")?.ID;
}
var currentMonth = DateTime.Now.Month; //获取当月
var currentDay = DateTime.Now.Day; //...........天
for (DateTime i = year; i <= dt; i = i.AddMonths(1)) //for (int i = 1; i <= 12; i++)
{
//var monthStart = DateTime.Now.AddMonths(i - currentMonth).AddDays(1 - currentDay);
//var monthEnd = DateTime.Now.AddMonths(i - currentMonth + 1).AddDays(1 - currentDay - 1);
var monthStart = Convert.ToDateTime(i.Year + "-" + i.Month + "-01 00:00:00");
var monthEnd = Convert.ToDateTime(monthStart.AddMonths(1).AddDays(-1).ToString().Replace("0:00:00", "23:59:59"));
if (i.Date == year.Date)
{
monthStart = year;
}
if (i.Date == dt.Date)
{
monthEnd = dt;
}
var ksJantask = taskYear.Where(t => t.CREATE_DATE >= monthStart && t.CREATE_DATE <= monthEnd && t.DEPT_DEPARTMENT_ID == ksDepartId).ToList();
if (ksJantask.Any())
{
T_BI_DEPARTMENT_MONTH_RUN run = new T_BI_DEPARTMENT_MONTH_RUN();
run.DEPARTMENT_ID = ksDepartId.Value;
run.ORG_ID = pageFilter.OrgId;
var depart = departmentInfos.FirstOrDefault(m => m.ID == ksDepartId.Value);
run.DEPARTMENT_NAME = depart?.NAME;
run.MONTH = monthStart;
run.MONTHStr = monthStart.Year + "年" + monthStart.Month + "月";
var total = ksJantask.Count();
var finish = ksJantask.Where(t => t.NOTICE_STATUS == 1).Count();
var overFinish = ksJantask.Where(t => t.NOTICE_STATUS == 2).Count();
var temp = total == 0 ? 0 : (double)(finish + overFinish) / total * 100;
run.FINISH_RATE = temp.ToString("0");
var temp2 = total == 0 ? 0 : (double)finish / total * 100;
run.NORMAL_FINISH_RATE = temp2.ToString("0");
monthRuns.Add(run);
}
else
{
T_BI_DEPARTMENT_MONTH_RUN run = new T_BI_DEPARTMENT_MONTH_RUN();
run.DEPARTMENT_ID = ksDepartId.Value;
run.ORG_ID = pageFilter.OrgId;
var depart = departmentInfos.FirstOrDefault(m => m.ID == ksDepartId.Value);
run.DEPARTMENT_NAME = depart?.NAME;
run.MONTH = monthStart;
run.MONTHStr = monthStart.Year + "年" + monthStart.Month + "月";
run.FINISH_RATE = "0";
run.NORMAL_FINISH_RATE = "0";
//if (i == 12)
//{
// var lastInfo = monthRuns.FirstOrDefault(t => t.DEPARTMENT_ID == ksDepartId.Value && t.MONTHStr == monthStart.Year + "年" + monthStart.AddMonths(-1).Month + "月");
// if (lastInfo != null)
// {
// run.FINISH_RATE = lastInfo.FINISH_RATE;
// run.NORMAL_FINISH_RATE = lastInfo.NORMAL_FINISH_RATE;
// }
//}
monthRuns.Add(run);
}
var xkJantask = taskYear.Where(t => t.CREATE_DATE >= monthStart && t.CREATE_DATE <= monthEnd && t.DEPT_DEPARTMENT_ID == xkDepartId).ToList();
if (xkJantask.Any())
{
T_BI_DEPARTMENT_MONTH_RUN run = new T_BI_DEPARTMENT_MONTH_RUN();
run.DEPARTMENT_ID = xkDepartId.Value;
run.ORG_ID = pageFilter.OrgId;
var depart = departmentInfos.FirstOrDefault(m => m.ID == xkDepartId.Value);
run.DEPARTMENT_NAME = depart?.NAME;
run.MONTH = monthStart;
run.MONTHStr = monthStart.Year + "年" + monthStart.Month + "月";
var total = xkJantask.Count();
var finish = xkJantask.Where(t => t.NOTICE_STATUS == 1).Count();
var overFinish = xkJantask.Where(t => t.NOTICE_STATUS == 2).Count();
var temp = total == 0 ? 0 : (double)(finish + overFinish) / total * 100;
run.FINISH_RATE = temp.ToString("0");
var temp2 = total == 0 ? 0 : (double)finish / total * 100;
run.NORMAL_FINISH_RATE = temp2.ToString("0");
monthRuns.Add(run);
}
else
{
T_BI_DEPARTMENT_MONTH_RUN run = new T_BI_DEPARTMENT_MONTH_RUN();
run.DEPARTMENT_ID = xkDepartId.Value;
run.ORG_ID = pageFilter.OrgId;
var depart = departmentInfos.FirstOrDefault(m => m.ID == xkDepartId.Value);
run.DEPARTMENT_NAME = depart?.NAME;
run.MONTH = monthStart;
run.MONTHStr = monthStart.Year + "年" + monthStart.Month + "月";
run.FINISH_RATE = "0";
run.NORMAL_FINISH_RATE = "0";
//if (i == 12)
//{
// var lastInfo = monthRuns.FirstOrDefault(t => t.DEPARTMENT_ID == xkDepartId.Value && t.MONTHStr == monthStart.Year + "年" + monthStart.AddMonths(-1).Month + "月");
// if (lastInfo != null)
// {
// run.FINISH_RATE = lastInfo.FINISH_RATE;
// run.NORMAL_FINISH_RATE = lastInfo.NORMAL_FINISH_RATE;
// }
//}
monthRuns.Add(run);
}
}
var deleteIds = this.GetEntities<T_BI_SYSTEM_RUN_SUMMARY>(t => true, new BaseFilter(pageFilter.OrgId)).Select(m => m.ID).ToList();
var deletemouIds = this.GetEntities<T_BI_MOULD_RUN_SUMMARY>(t => true, new BaseFilter(pageFilter.OrgId)).Select(m => m.ID).ToList();
var deletemonthIds = this.GetEntities<T_BI_DEPARTMENT_MONTH_RUN>(t => true, new BaseFilter(pageFilter.OrgId)).Select(m => m.ID).ToList();
if (ksDepartId != null && xkDepartId != null)
{
var currentMonth = DateTime.Now.Month; //获取当月
var currentDay = DateTime.Now.Day; //...........天
for (DateTime i = year; i <= dt; i = i.AddMonths(1)) //for (int i = 1; i <= 12; i++)
{
//var monthStart = DateTime.Now.AddMonths(i - currentMonth).AddDays(1 - currentDay);
//var monthEnd = DateTime.Now.AddMonths(i - currentMonth + 1).AddDays(1 - currentDay - 1);
var monthStart = Convert.ToDateTime(i.Year + "-" + i.Month + "-01 00:00:00");
var monthEnd = Convert.ToDateTime(monthStart.AddMonths(1).AddDays(-1).ToString().Replace("0:00:00", "23:59:59"));
if (i.Date == year.Date)
{
monthStart = year;
}
if (i.Date == dt.Date)
{
monthEnd = dt;
}
var ksJantask = taskYear.Where(t => t.CREATE_DATE >= monthStart && t.CREATE_DATE <= monthEnd && t.DEPT_DEPARTMENT_ID == ksDepartId).ToList();
if (ksJantask.Any())
{
T_BI_DEPARTMENT_MONTH_RUN run = new T_BI_DEPARTMENT_MONTH_RUN();
run.DEPARTMENT_ID = ksDepartId.Value;
run.ORG_ID = pageFilter.OrgId;
var depart = departmentInfos.FirstOrDefault(m => m.ID == ksDepartId.Value);
run.DEPARTMENT_NAME = depart?.NAME;
run.MONTH = monthStart;
run.MONTHStr = monthStart.Year + "年" + monthStart.Month + "月";
var total = ksJantask.Count();
var finish = ksJantask.Where(t => t.NOTICE_STATUS == 1).Count();
var overFinish = ksJantask.Where(t => t.NOTICE_STATUS == 2).Count();
var temp = total == 0 ? 0 : (double)(finish + overFinish) / total * 100;
run.FINISH_RATE = temp.ToString("0");
var temp2 = total == 0 ? 0 : (double)finish / total * 100;
run.NORMAL_FINISH_RATE = temp2.ToString("0");
monthRuns.Add(run);
}
else
{
T_BI_DEPARTMENT_MONTH_RUN run = new T_BI_DEPARTMENT_MONTH_RUN();
run.DEPARTMENT_ID = ksDepartId.Value;
run.ORG_ID = pageFilter.OrgId;
var depart = departmentInfos.FirstOrDefault(m => m.ID == ksDepartId.Value);
run.DEPARTMENT_NAME = depart?.NAME;
run.MONTH = monthStart;
run.MONTHStr = monthStart.Year + "年" + monthStart.Month + "月";
run.FINISH_RATE = "0";
run.NORMAL_FINISH_RATE = "0";
//if (i == 12)
//{
// var lastInfo = monthRuns.FirstOrDefault(t => t.DEPARTMENT_ID == ksDepartId.Value && t.MONTHStr == monthStart.Year + "年" + monthStart.AddMonths(-1).Month + "月");
// if (lastInfo != null)
// {
// run.FINISH_RATE = lastInfo.FINISH_RATE;
// run.NORMAL_FINISH_RATE = lastInfo.NORMAL_FINISH_RATE;
// }
//}
monthRuns.Add(run);
}
var xkJantask = taskYear.Where(t => t.CREATE_DATE >= monthStart && t.CREATE_DATE <= monthEnd && t.DEPT_DEPARTMENT_ID == xkDepartId).ToList();
if (xkJantask.Any())
{
T_BI_DEPARTMENT_MONTH_RUN run = new T_BI_DEPARTMENT_MONTH_RUN();
run.DEPARTMENT_ID = xkDepartId.Value;
run.ORG_ID = pageFilter.OrgId;
var depart = departmentInfos.FirstOrDefault(m => m.ID == xkDepartId.Value);
run.DEPARTMENT_NAME = depart?.NAME;
run.MONTH = monthStart;
run.MONTHStr = monthStart.Year + "年" + monthStart.Month + "月";
var total = xkJantask.Count();
var finish = xkJantask.Where(t => t.NOTICE_STATUS == 1).Count();
var overFinish = xkJantask.Where(t => t.NOTICE_STATUS == 2).Count();
var temp = total == 0 ? 0 : (double)(finish + overFinish) / total * 100;
run.FINISH_RATE = temp.ToString("0");
var temp2 = total == 0 ? 0 : (double)finish / total * 100;
run.NORMAL_FINISH_RATE = temp2.ToString("0");
monthRuns.Add(run);
}
else
{
T_BI_DEPARTMENT_MONTH_RUN run = new T_BI_DEPARTMENT_MONTH_RUN();
run.DEPARTMENT_ID = xkDepartId.Value;
run.ORG_ID = pageFilter.OrgId;
var depart = departmentInfos.FirstOrDefault(m => m.ID == xkDepartId.Value);
run.DEPARTMENT_NAME = depart?.NAME;
run.MONTH = monthStart;
run.MONTHStr = monthStart.Year + "年" + monthStart.Month + "月";
run.FINISH_RATE = "0";
run.NORMAL_FINISH_RATE = "0";
//if (i == 12)
//{
// var lastInfo = monthRuns.FirstOrDefault(t => t.DEPARTMENT_ID == xkDepartId.Value && t.MONTHStr == monthStart.Year + "年" + monthStart.AddMonths(-1).Month + "月");
// if (lastInfo != null)
// {
// run.FINISH_RATE = lastInfo.FINISH_RATE;
// run.NORMAL_FINISH_RATE = lastInfo.NORMAL_FINISH_RATE;
// }
//}
monthRuns.Add(run);
}
}
deleteIds = this.GetEntities<T_BI_SYSTEM_RUN_SUMMARY>(t => true, new BaseFilter(pageFilter.OrgId)).Select(m => m.ID).ToList();
deletemouIds = this.GetEntities<T_BI_MOULD_RUN_SUMMARY>(t => true, new BaseFilter(pageFilter.OrgId)).Select(m => m.ID).ToList();
deletemonthIds = this.GetEntities<T_BI_DEPARTMENT_MONTH_RUN>(t => true, new BaseFilter(pageFilter.OrgId)).Select(m => m.ID).ToList();
}
this.UnifiedCommit(() =>
{
if (deleteIds != null && deleteIds.Any())