diff --git a/SGGL/BLL/PZHGL/GJSX/GJSXMonitorService.cs b/SGGL/BLL/PZHGL/GJSX/GJSXMonitorService.cs index 4b2af579..d73ae068 100644 --- a/SGGL/BLL/PZHGL/GJSX/GJSXMonitorService.cs +++ b/SGGL/BLL/PZHGL/GJSX/GJSXMonitorService.cs @@ -185,7 +185,7 @@ namespace BLL 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_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 listStr = new List(); SqlParameter[] parameter = listStr.ToArray(); @@ -236,14 +236,14 @@ namespace BLL { string projectName = pro.ProjectName; - #region 提醒事项相关人员 + #region 事项预警提醒相关人员 foreach (var user in userIds) { //if (allnum > 100) { break; } MailMessage mail = new MailMessage(); //邮件主题 - mail.Subject = $"关键事项超期预警提醒——{projectName}"; + mail.Subject = $"关键事项预警提醒——{projectName}"; mail.To.Add(user.Email); //mail.To.Add("test@test.com"); mail.IsBodyHtml = true;//确保邮件正文被当作HTML解析 @@ -256,7 +256,7 @@ namespace BLL { foreach (var item in acceptanceItems) { - tbodyStr.Append($"{index}本人负责{item.UnitName}{item.GJSXID}{item.Detail}{item.GJSXTypeName}{item.UserName}{item.User_AcceptanceUserName}{item.CompleteDate.ToShortDateString()}{(item.DateDiffDays > 0 ? item.DateDiffDays.ToString() : "半")}"); + tbodyStr.Append($"{index}本人负责{item.UnitName}{item.GJSXID}{item.Detail}{item.GJSXTypeName}{item.QuestionTypeName}{item.UserName}{item.User_AcceptanceUserName}{item.CompleteDate.ToShortDateString()}{(item.DateDiffDays > 0 ? item.DateDiffDays.ToString() : item.DateDiffDays < 0 ? "还有一周就逾期了" : "半")}"); index++; } } @@ -266,7 +266,7 @@ namespace BLL { foreach (var item in userItems) { - tbodyStr.Append($"{index}本人发起{item.UnitName}{item.GJSXID}{item.Detail}{item.GJSXTypeName}{item.UserName}{item.User_AcceptanceUserName}{item.CompleteDate.ToShortDateString()}{(item.DateDiffDays > 0 ? item.DateDiffDays.ToString() : "半")}"); + tbodyStr.Append($"{index}本人发起{item.UnitName}{item.GJSXID}{item.Detail}{item.GJSXTypeName}{item.QuestionTypeName}{item.UserName}{item.User_AcceptanceUserName}{item.CompleteDate.ToShortDateString()}{(item.DateDiffDays > 0 ? item.DateDiffDays.ToString() : "半")}"); index++; } } @@ -276,7 +276,7 @@ namespace BLL { foreach (var item in receiveItems) { - tbodyStr.Append($"{index}本人跟踪{item.UnitName}{item.GJSXID}{item.Detail}{item.GJSXTypeName}{item.UserName}{item.User_AcceptanceUserName}{item.CompleteDate.ToShortDateString()}{(item.DateDiffDays > 0 ? item.DateDiffDays.ToString() : "半")}"); + tbodyStr.Append($"{index}本人跟踪{item.UnitName}{item.GJSXID}{item.Detail}{item.GJSXTypeName}{item.QuestionTypeName}{item.UserName}{item.User_AcceptanceUserName}{item.CompleteDate.ToShortDateString()}{(item.DateDiffDays > 0 ? item.DateDiffDays.ToString() : "半")}"); index++; } } @@ -286,7 +286,7 @@ namespace BLL { foreach (var item in csUserItems) { - tbodyStr.Append($"{index}抄送本人{item.UnitName}{item.GJSXID}{item.Detail}{item.GJSXTypeName}{item.UserName}{item.User_AcceptanceUserName}{item.CompleteDate.ToShortDateString()}{(item.DateDiffDays > 0 ? item.DateDiffDays.ToString() : "半")}"); + tbodyStr.Append($"{index}抄送本人{item.UnitName}{item.GJSXID}{item.Detail}{item.GJSXTypeName}{item.QuestionTypeName}{item.UserName}{item.User_AcceptanceUserName}{item.CompleteDate.ToShortDateString()}{(item.DateDiffDays > 0 ? item.DateDiffDays.ToString() : item.DateDiffDays < 0 ? "还有一周就逾期了" : "半")}"); index++; } } @@ -306,7 +306,7 @@ namespace BLL -

关键事项超期预警提醒

+

关键事项预警提醒

请点击此处,查看详细信息,并及时处置关闭 @@ -317,6 +317,7 @@ namespace BLL + @@ -336,7 +337,7 @@ namespace BLL #endregion - #region 提醒项目主管和项目经理 + #region 事项逾期提醒项目主管和项目经理 var projectSupervisors = ProjectUserService.GetProjectUserByRoleId(Const.ProjectSupervisor); var projectManagers = ProjectUserService.GetProjectUserByRoleId(Const.ProjectManager); @@ -352,7 +353,7 @@ namespace BLL { MailMessage mail = new MailMessage(); //邮件主题 - mail.Subject = $"关键事项超期预警提醒——{projectName}"; + mail.Subject = $"关键事项逾期提醒——{projectName}"; mail.To.Add(user.Email); //mail.To.Add("test@test.com"); mail.IsBodyHtml = true;//确保邮件正文被当作HTML解析 @@ -362,20 +363,33 @@ namespace BLL int index = 0; 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) { - index++; - tbodyStr.Append($""); + if (!item.User_CsUserIds.Contains(user.UserId)) + { + index++; + tbodyStr.Append($""); + } } } 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; - foreach (var item in lstProjectOverdue2) + foreach (var item in lstProjectOverdue14) { - index++; - tbodyStr.Append($""); + if (!item.User_CsUserIds.Contains(user.UserId)) + { + index++; + tbodyStr.Append($""); + } } } //邮件正文 @@ -405,6 +419,7 @@ namespace BLL +
事项编号 事项描述 事项类别紧急程度 发起人 责任人 约定完成时间
{index}事项逾期{item.UnitName}{item.GJSXID}{item.Detail}{item.GJSXTypeName}{item.UserName}{item.User_AcceptanceUserName}{item.CompleteDate.ToShortDateString()}{(item.DateDiffDays > 0 ? item.DateDiffDays.ToString() : "半")}
{index}事项逾期{item.UnitName}{item.GJSXID}{item.Detail}{item.GJSXTypeName}{item.QuestionTypeName}{item.UserName}{item.User_AcceptanceUserName}{item.CompleteDate.ToShortDateString()}{(item.DateDiffDays > 0 ? item.DateDiffDays.ToString() : "半")}
{index}事项逾期{item.UnitName}{item.GJSXID}{item.Detail}{item.GJSXTypeName}{item.UserName}{item.User_AcceptanceUserName}{item.CompleteDate.ToShortDateString()}{(item.DateDiffDays > 0 ? item.DateDiffDays.ToString() : "半")}
{index}事项逾期{item.UnitName}{item.GJSXID}{item.Detail}{item.GJSXTypeName}{item.QuestionTypeName}{item.UserName}{item.User_AcceptanceUserName}{item.CompleteDate.ToShortDateString()}{(item.DateDiffDays > 0 ? item.DateDiffDays.ToString() : "半")}
事项编号 事项描述 事项类别紧急程度 发起人 责任人 约定完成时间