关键事项提醒调整

This commit is contained in:
夏菊 2025-09-21 11:11:50 +08:00
parent eb62e9a2d8
commit 68a13a0a94
1 changed files with 32 additions and 17 deletions

View File

@ -185,7 +185,7 @@ namespace BLL
left join Sys_User as b on a.UserId = b.UserId left join Sys_User as b on a.UserId = b.UserId
left join[dbo].[Base_Project] on a.ProjectId = Base_Project.ProjectId left join[dbo].[Base_Project] on a.ProjectId = Base_Project.ProjectId
left join[dbo].[Base_Unit] on a.UnitId = Base_Unit.UnitId left join[dbo].[Base_Unit] on a.UnitId = Base_Unit.UnitId
where 1=1 and a.state<>'0' and GETDATE()>a.CompleteDate "; where 1=1 and a.state<>'0' and a.state<>'1' and (GETDATE()>a.CompleteDate or DATEDIFF(DAY, CompleteDate, isnull(CloseDate,getdate()))=-7 or DATEDIFF(DAY, CompleteDate, isnull(CloseDate,getdate()))=-6 ) ";
List<SqlParameter> listStr = new List<SqlParameter>(); List<SqlParameter> listStr = new List<SqlParameter>();
SqlParameter[] parameter = listStr.ToArray(); SqlParameter[] parameter = listStr.ToArray();
@ -236,14 +236,14 @@ namespace BLL
{ {
string projectName = pro.ProjectName; string projectName = pro.ProjectName;
#region #region
foreach (var user in userIds) foreach (var user in userIds)
{ {
//if (allnum > 100) { break; } //if (allnum > 100) { break; }
MailMessage mail = new MailMessage(); MailMessage mail = new MailMessage();
//邮件主题 //邮件主题
mail.Subject = $"关键事项超期预警提醒——{projectName}"; mail.Subject = $"关键事项预警提醒——{projectName}";
mail.To.Add(user.Email); mail.To.Add(user.Email);
//mail.To.Add("test@test.com"); //mail.To.Add("test@test.com");
mail.IsBodyHtml = true;//确保邮件正文被当作HTML解析 mail.IsBodyHtml = true;//确保邮件正文被当作HTML解析
@ -256,7 +256,7 @@ namespace BLL
{ {
foreach (var item in acceptanceItems) foreach (var item in acceptanceItems)
{ {
tbodyStr.Append($"<tr><td>{index}</td><td>本人负责</td><td>{item.UnitName}</td><td>{item.GJSXID}</td><td>{item.Detail}</td><td>{item.GJSXTypeName}</td><td>{item.UserName}</td><td>{item.User_AcceptanceUserName}</td><td>{item.CompleteDate.ToShortDateString()}</td><td>{(item.DateDiffDays > 0 ? item.DateDiffDays.ToString() : "")}</td></tr>"); tbodyStr.Append($"<tr><td>{index}</td><td>本人负责</td><td>{item.UnitName}</td><td>{item.GJSXID}</td><td>{item.Detail}</td><td>{item.GJSXTypeName}</td><td>{item.QuestionTypeName}</td><td>{item.UserName}</td><td>{item.User_AcceptanceUserName}</td><td>{item.CompleteDate.ToShortDateString()}</td><td>{(item.DateDiffDays > 0 ? item.DateDiffDays.ToString() : item.DateDiffDays < 0 ? "" : "")}</td></tr>");
index++; index++;
} }
} }
@ -266,7 +266,7 @@ namespace BLL
{ {
foreach (var item in userItems) foreach (var item in userItems)
{ {
tbodyStr.Append($"<tr><td>{index}</td><td>本人发起</td><td>{item.UnitName}</td><td>{item.GJSXID}</td><td>{item.Detail}</td><td>{item.GJSXTypeName}</td><td>{item.UserName}</td><td>{item.User_AcceptanceUserName}</td><td>{item.CompleteDate.ToShortDateString()}</td><td>{(item.DateDiffDays > 0 ? item.DateDiffDays.ToString() : "")}</td></tr>"); tbodyStr.Append($"<tr><td>{index}</td><td>本人发起</td><td>{item.UnitName}</td><td>{item.GJSXID}</td><td>{item.Detail}</td><td>{item.GJSXTypeName}</td><td>{item.QuestionTypeName}</td><td>{item.UserName}</td><td>{item.User_AcceptanceUserName}</td><td>{item.CompleteDate.ToShortDateString()}</td><td>{(item.DateDiffDays > 0 ? item.DateDiffDays.ToString() : "")}</td></tr>");
index++; index++;
} }
} }
@ -276,7 +276,7 @@ namespace BLL
{ {
foreach (var item in receiveItems) foreach (var item in receiveItems)
{ {
tbodyStr.Append($"<tr><td>{index}</td><td>本人跟踪</td><td>{item.UnitName}</td><td>{item.GJSXID}</td><td>{item.Detail}</td><td>{item.GJSXTypeName}</td><td>{item.UserName}</td><td>{item.User_AcceptanceUserName}</td><td>{item.CompleteDate.ToShortDateString()}</td><td>{(item.DateDiffDays > 0 ? item.DateDiffDays.ToString() : "")}</td></tr>"); tbodyStr.Append($"<tr><td>{index}</td><td>本人跟踪</td><td>{item.UnitName}</td><td>{item.GJSXID}</td><td>{item.Detail}</td><td>{item.GJSXTypeName}</td><td>{item.QuestionTypeName}</td><td>{item.UserName}</td><td>{item.User_AcceptanceUserName}</td><td>{item.CompleteDate.ToShortDateString()}</td><td>{(item.DateDiffDays > 0 ? item.DateDiffDays.ToString() : "")}</td></tr>");
index++; index++;
} }
} }
@ -286,7 +286,7 @@ namespace BLL
{ {
foreach (var item in csUserItems) foreach (var item in csUserItems)
{ {
tbodyStr.Append($"<tr><td>{index}</td><td>抄送本人</td><td>{item.UnitName}</td><td>{item.GJSXID}</td><td>{item.Detail}</td><td>{item.GJSXTypeName}</td><td>{item.UserName}</td><td>{item.User_AcceptanceUserName}</td><td>{item.CompleteDate.ToShortDateString()}</td><td>{(item.DateDiffDays > 0 ? item.DateDiffDays.ToString() : "")}</td></tr>"); tbodyStr.Append($"<tr><td>{index}</td><td>抄送本人</td><td>{item.UnitName}</td><td>{item.GJSXID}</td><td>{item.Detail}</td><td>{item.GJSXTypeName}</td><td>{item.QuestionTypeName}</td><td>{item.UserName}</td><td>{item.User_AcceptanceUserName}</td><td>{item.CompleteDate.ToShortDateString()}</td><td>{(item.DateDiffDays > 0 ? item.DateDiffDays.ToString() : item.DateDiffDays < 0 ? "" : "")}</td></tr>");
index++; index++;
} }
} }
@ -306,7 +306,7 @@ namespace BLL
</style> </style>
</head> </head>
<body> <body>
<h2></h2> <h2></h2>
<a href='https://zhgd.cwcec.com/'>请点击此处,查看详细信息,并及时处置关闭</a> <a href='https://zhgd.cwcec.com/'>请点击此处,查看详细信息,并及时处置关闭</a>
<table> <table>
<thead> <thead>
@ -317,6 +317,7 @@ namespace BLL
<th></th> <th></th>
<th></th> <th></th>
<th></th> <th></th>
<th></th>
<th></th> <th></th>
<th></th> <th></th>
<th></th> <th></th>
@ -336,7 +337,7 @@ namespace BLL
#endregion #endregion
#region #region
var projectSupervisors = ProjectUserService.GetProjectUserByRoleId(Const.ProjectSupervisor); var projectSupervisors = ProjectUserService.GetProjectUserByRoleId(Const.ProjectSupervisor);
var projectManagers = ProjectUserService.GetProjectUserByRoleId(Const.ProjectManager); var projectManagers = ProjectUserService.GetProjectUserByRoleId(Const.ProjectManager);
@ -352,7 +353,7 @@ namespace BLL
{ {
MailMessage mail = new MailMessage(); MailMessage mail = new MailMessage();
//邮件主题 //邮件主题
mail.Subject = $"关键事项超期预警提醒——{projectName}"; mail.Subject = $"关键事项逾期提醒——{projectName}";
mail.To.Add(user.Email); mail.To.Add(user.Email);
//mail.To.Add("test@test.com"); //mail.To.Add("test@test.com");
mail.IsBodyHtml = true;//确保邮件正文被当作HTML解析 mail.IsBodyHtml = true;//确保邮件正文被当作HTML解析
@ -362,20 +363,33 @@ namespace BLL
int index = 0; int index = 0;
if (projectManagerIds.Contains(user.UserId)) if (projectManagerIds.Contains(user.UserId))
{ {
foreach (var item in lstProjectOverdue) index = 0;
//超期当日提醒项目经理
var lstProjectOverdue1 = lstProjectOverdue.Where(x => x.DateDiffDays == 0).ToList();
//超期一周的重要、紧急事项提醒项目经理
var lstProjectOverdue7 = lstProjectOverdue.Where(x => x.DateDiffDays >= 7 && x.QuestionTypeName != "一般").ToList();
lstProjectOverdue1.AddRange(lstProjectOverdue7);
foreach (var item in lstProjectOverdue1)
{
if (!item.User_CsUserIds.Contains(user.UserId))
{ {
index++; index++;
tbodyStr.Append($"<tr><td>{index}</td><td>事项逾期</td><td>{item.UnitName}</td><td>{item.GJSXID}</td><td>{item.Detail}</td><td>{item.GJSXTypeName}</td><td>{item.UserName}</td><td>{item.User_AcceptanceUserName}</td><td>{item.CompleteDate.ToShortDateString()}</td><td>{(item.DateDiffDays > 0 ? item.DateDiffDays.ToString() : "")}</td></tr>"); tbodyStr.Append($"<tr><td>{index}</td><td>事项逾期</td><td>{item.UnitName}</td><td>{item.GJSXID}</td><td>{item.Detail}</td><td>{item.GJSXTypeName}</td><td>{item.QuestionTypeName}</td><td>{item.UserName}</td><td>{item.User_AcceptanceUserName}</td><td>{item.CompleteDate.ToShortDateString()}</td><td>{(item.DateDiffDays > 0 ? item.DateDiffDays.ToString() : "")}</td></tr>");
}
} }
} }
if (projectSupervisorIds.Contains(user.UserId) && !projectManagerIds.Contains(user.UserId)) if (projectSupervisorIds.Contains(user.UserId) && !projectManagerIds.Contains(user.UserId))
{ {
var lstProjectOverdue2 = lstOverdue.Where(x => x.ProjectId == pro.ProjectId && x.DateDiffDays > 13).ToList(); //超期两周的重要、紧急事项提醒项目主管
var lstProjectOverdue14 = lstProjectOverdue.Where(x => x.DateDiffDays >= 13).ToList();
index = 0; index = 0;
foreach (var item in lstProjectOverdue2) foreach (var item in lstProjectOverdue14)
{
if (!item.User_CsUserIds.Contains(user.UserId))
{ {
index++; index++;
tbodyStr.Append($"<tr><td>{index}</td><td>事项逾期</td><td>{item.UnitName}</td><td>{item.GJSXID}</td><td>{item.Detail}</td><td>{item.GJSXTypeName}</td><td>{item.UserName}</td><td>{item.User_AcceptanceUserName}</td><td>{item.CompleteDate.ToShortDateString()}</td><td>{(item.DateDiffDays > 0 ? item.DateDiffDays.ToString() : "")}</td></tr>"); tbodyStr.Append($"<tr><td>{index}</td><td>事项逾期</td><td>{item.UnitName}</td><td>{item.GJSXID}</td><td>{item.Detail}</td><td>{item.GJSXTypeName}</td><td>{item.QuestionTypeName}</td><td>{item.UserName}</td><td>{item.User_AcceptanceUserName}</td><td>{item.CompleteDate.ToShortDateString()}</td><td>{(item.DateDiffDays > 0 ? item.DateDiffDays.ToString() : "")}</td></tr>");
}
} }
} }
//邮件正文 //邮件正文
@ -405,6 +419,7 @@ namespace BLL
<th></th> <th></th>
<th></th> <th></th>
<th></th> <th></th>
<th></th>
<th></th> <th></th>
<th></th> <th></th>
<th></th> <th></th>