1
This commit is contained in:
@@ -24,12 +24,12 @@ namespace BLL
|
||||
//public static Model.SGGLDB db = Funs.DB;
|
||||
|
||||
/// <summary>
|
||||
/// 关键事项通知提醒责任人、抄送人
|
||||
/// 关键事项新增通知提醒责任人、抄送人
|
||||
/// </summary>
|
||||
/// <param name="userIds"></param>
|
||||
/// <param name="gjsxId"></param>
|
||||
public static void GJSXNoticeSendEmail(List<string> userIds, string gjsxId)
|
||||
public static void GJSXNoticeSendEmail(string gjsxId)
|
||||
{
|
||||
List<string> userIds = new List<string>();
|
||||
string strSql = $@"select
|
||||
DATEDIFF(DAY, CompleteDate, isnull(CloseDate,getdate())) AS DateDiffDays
|
||||
,a.GJSXID,a.ProjectId,a.Detail,a.createDate,Base_Project.ProjectName,Base_Unit.UnitName,a.CloseDate,a.IsManypeople,a.CompleteDate,a.AttachUrl
|
||||
@@ -89,6 +89,11 @@ namespace BLL
|
||||
var gItem = lstOverdue.FirstOrDefault();
|
||||
if (gItem != null)
|
||||
{
|
||||
userIds.Add(gItem.User_AcceptanceUserId);
|
||||
if (!string.IsNullOrWhiteSpace(gItem.User_CsUserIds))
|
||||
{
|
||||
userIds.AddRange(gItem.User_CsUserIds.Split(','));
|
||||
}
|
||||
foreach (var userId in userIds)
|
||||
{
|
||||
var user = UserService.GetUserByUserId(userId);
|
||||
@@ -152,6 +157,255 @@ namespace BLL
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 关键事项申请关闭通知提醒提出人和跟踪人
|
||||
/// </summary>
|
||||
/// <param name="gjsxId"></param>
|
||||
/// <param name="detail"></param>
|
||||
public static void GJSXApplyCloseNoticeSendEmail(string gjsxId, string detail)
|
||||
{
|
||||
List<string> userIds = new List<string>();
|
||||
string strSql = $@"select
|
||||
DATEDIFF(DAY, CompleteDate, isnull(CloseDate,getdate())) AS DateDiffDays
|
||||
,a.GJSXID,a.ProjectId,a.Detail,a.createDate,Base_Project.ProjectName,Base_Unit.UnitName,a.CloseDate,a.IsManypeople,a.CompleteDate,a.AttachUrl
|
||||
,case a.state when 2 then '正在进行' when 3 then '待办' when 0 then '已关闭' when 1 then '开放' end as state
|
||||
,CNProfessionalName = STUFF((SELECT ',' + Base_CNProfessional.ProfessionalName FROM dbo.Base_CNProfessional where PATINDEX('%,' + RTRIM(Base_CNProfessional.CNProfessionalId) + ',%', ',' + a.CNProfessional_ID + ',') > 0 FOR XML PATH('')), 1, 1,'')
|
||||
,QuestionTypeName = STUFF((SELECT ',' + Base_QuestionType.QuestionTypeName FROM dbo.Base_QuestionType where PATINDEX('%,' + RTRIM(Base_QuestionType.QuestionTypeID) + ',%', ',' + a.QuestionTypeID + ',') > 0 FOR XML PATH('')), 1, 1,'')
|
||||
,GJSXTypeName = STUFF((SELECT ',' + Base_GJSXType.GJSXTypeName FROM dbo.Base_GJSXType where PATINDEX('%,' + RTRIM(Base_GJSXType.GJSXTypeID) + ',%', ',' + a.GJSXTypeID + ',') > 0 FOR XML PATH('')), 1, 1,'')
|
||||
,a.UserID,b.UserName
|
||||
--,b.Email as UserEmail
|
||||
,a.User_ReceiveID as User_ReceiveUserId
|
||||
,User_ReceiveUserName = STUFF((SELECT ',' + p2.UserName FROM dbo.Sys_User as p2 where PATINDEX('%,' + RTRIM(p2.UserId) + ',%', ',' + a.User_ReceiveID + ',') > 0 FOR XML PATH('')), 1, 1,'')
|
||||
--,User_ReceiveUserEmail = STUFF((SELECT ',' + p2.Email FROM dbo.Sys_User as p2 where PATINDEX('%,' + RTRIM(p2.UserId) + ',%', ',' + a.User_ReceiveID + ',') > 0 FOR XML PATH('')), 1, 1,'')
|
||||
,a.user_Acceptance as User_AcceptanceUserId
|
||||
,User_AcceptanceUserName = STUFF((SELECT ',' + p2.UserName FROM dbo.Sys_User as p2 where PATINDEX('%,' + RTRIM(p2.UserId) + ',%', ',' + a.user_Acceptance + ',') > 0 FOR XML PATH('')), 1, 1,'')
|
||||
--,User_AcceptanceUserEmail = STUFF((SELECT ',' + p2.Email FROM dbo.Sys_User as p2 where PATINDEX('%,' + RTRIM(p2.UserId) + ',%', ',' + a.user_Acceptance + ',') > 0 FOR XML PATH('')), 1, 1,'')
|
||||
,a.CsUsers as User_CsUserIds
|
||||
,User_CsUsers = STUFF((SELECT ',' + p2.UserName FROM dbo.Sys_User as p2 where PATINDEX('%,' + RTRIM(p2.UserId) + ',%', ',' + a.CsUsers + ',') > 0 FOR XML PATH('')), 1, 1,'')
|
||||
--,User_CsUsersUserEmail = STUFF((SELECT ',' + p2.Email FROM dbo.Sys_User as p2 where PATINDEX('%,' + RTRIM(p2.UserId) + ',%', ',' + a.CsUsers + ',') > 0 FOR XML PATH('')), 1, 1,'')
|
||||
from GJSX as a
|
||||
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.GJSXID = '{gjsxId}' ";
|
||||
|
||||
List<SqlParameter> listStr = new List<SqlParameter>();
|
||||
SqlParameter[] parameter = listStr.ToArray();
|
||||
|
||||
DataTable table = SQLHelper.GetDataTableRunText(strSql, parameter);
|
||||
// 使用LINQ将DataTable转换为List<GJSXItem>
|
||||
var lstOverdue = table.AsEnumerable().Select(row => new GJSXItem
|
||||
{
|
||||
DateDiffDays = Convert.ToInt32(row["DateDiffDays"]),
|
||||
GJSXID = row["GJSXID"].ToString(),
|
||||
ProjectId = row["ProjectId"].ToString(),
|
||||
ProjectName = row["ProjectName"].ToString(),
|
||||
UnitName = row["UnitName"].ToString(),
|
||||
Detail = row["Detail"].ToString(),
|
||||
CNProfessionalName = row["CNProfessionalName"].ToString(),
|
||||
QuestionTypeName = row["QuestionTypeName"].ToString(),
|
||||
GJSXTypeName = row["GJSXTypeName"].ToString(),
|
||||
UserID = row["UserID"].ToString(),
|
||||
UserName = row["UserName"].ToString(),
|
||||
//UserEmail = row["UserEmail"].ToString(),
|
||||
User_ReceiveUserId = row["User_ReceiveUserId"].ToString(),
|
||||
User_ReceiveUserName = row["User_ReceiveUserName"].ToString(),
|
||||
//User_ReceiveUserEmail = row["User_ReceiveUserEmail"].ToString(),
|
||||
User_AcceptanceUserId = row["User_AcceptanceUserId"].ToString(),
|
||||
User_AcceptanceUserName = row["User_AcceptanceUserName"].ToString(),
|
||||
//User_AcceptanceUserEmail = row["User_AcceptanceUserEmail"].ToString(),
|
||||
User_CsUserIds = row["User_CsUserIds"].ToString(),
|
||||
User_CsUsers = row["User_CsUsers"].ToString(),
|
||||
//User_CsUsersUserEmail = row["User_CsUsersUserEmail"].ToString(),
|
||||
CompleteDate = Convert.ToDateTime(row["CompleteDate"].ToString())
|
||||
}).ToList();
|
||||
|
||||
var gItem = lstOverdue.FirstOrDefault();
|
||||
if (gItem != null)
|
||||
{
|
||||
userIds.Add(gItem.UserID);
|
||||
userIds.Add(gItem.User_ReceiveUserId);
|
||||
foreach (var userId in userIds)
|
||||
{
|
||||
var user = UserService.GetUserByUserId(userId);
|
||||
if (!string.IsNullOrWhiteSpace(user.Email))
|
||||
{
|
||||
MailMessage mail = new MailMessage();
|
||||
//邮件主题
|
||||
mail.Subject = $"有新的事项申请关闭——{gItem.ProjectName}";
|
||||
mail.To.Add(user.Email);
|
||||
//mail.To.Add("test@test.com");
|
||||
mail.IsBodyHtml = true;//确保邮件正文被当作HTML解析
|
||||
//邮件正文
|
||||
string bodyStr = $@"<html>
|
||||
<head>
|
||||
<style>
|
||||
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h2>事项申请关闭</h2>
|
||||
<p>项目名称:{gItem.ProjectName}</p>
|
||||
<p>事项编号:{gItem.GJSXID}</p>
|
||||
<p>责任单位:{gItem.UnitName}</p>
|
||||
<p>专业:{gItem.CNProfessionalName}</p>
|
||||
<p>事项类别:{gItem.GJSXTypeName}</p>
|
||||
<p>紧急程度:{gItem.QuestionTypeName}</p>
|
||||
<p>事项描述:{gItem.Detail}</p>
|
||||
<p>提出人:{gItem.UserName}</p>
|
||||
<p>责任人:{gItem.User_AcceptanceUserName}</p>
|
||||
<p>跟踪人:{gItem.User_ReceiveUserName}</p>
|
||||
<p>抄送人:{gItem.User_CsUsers}</p>
|
||||
<p>约定完成日期:{gItem.CompleteDate.ToShortDateString()}</p>
|
||||
<p>申请关闭说明:{detail}</p>
|
||||
|
||||
<h2>智慧施工管理信息系统</h2>
|
||||
<a href='https://zhgd.cwcec.com/'>请点击此处,进入智慧施工管理信息系统,查看事项详情</a>
|
||||
<p>登录账号:{user.Account}</p>
|
||||
<p>登录密码:CWCEC.+身份证号后四位(示例:CWCEC.1234)</p>
|
||||
|
||||
</body>
|
||||
</html>";
|
||||
//< p > 登录密码:{ user.RawPassword}</ p >
|
||||
mail.Body = bodyStr;
|
||||
|
||||
try
|
||||
{
|
||||
bool send = PushEmail(mail);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ErrLogInfo.WriteLog($"关键事项申请关闭通知提醒责任人;项目名称:{gItem.ProjectName},事项编号:{gItem.GJSXID}", ex);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 关键事项驳回申请关闭通知提醒责任人
|
||||
/// </summary>
|
||||
/// <param name="gjsxId"></param>
|
||||
/// <param name="detail"></param>
|
||||
public static void GJSXRejectApplyCloseNoticeSendEmail(string gjsxId, string detail)
|
||||
{
|
||||
List<string> userIds = new List<string>();
|
||||
string strSql = $@"select
|
||||
DATEDIFF(DAY, CompleteDate, isnull(CloseDate,getdate())) AS DateDiffDays
|
||||
,a.GJSXID,a.ProjectId,a.Detail,a.createDate,Base_Project.ProjectName,Base_Unit.UnitName,a.CloseDate,a.IsManypeople,a.CompleteDate,a.AttachUrl
|
||||
,case a.state when 2 then '正在进行' when 3 then '待办' when 0 then '已关闭' when 1 then '开放' end as state
|
||||
,CNProfessionalName = STUFF((SELECT ',' + Base_CNProfessional.ProfessionalName FROM dbo.Base_CNProfessional where PATINDEX('%,' + RTRIM(Base_CNProfessional.CNProfessionalId) + ',%', ',' + a.CNProfessional_ID + ',') > 0 FOR XML PATH('')), 1, 1,'')
|
||||
,QuestionTypeName = STUFF((SELECT ',' + Base_QuestionType.QuestionTypeName FROM dbo.Base_QuestionType where PATINDEX('%,' + RTRIM(Base_QuestionType.QuestionTypeID) + ',%', ',' + a.QuestionTypeID + ',') > 0 FOR XML PATH('')), 1, 1,'')
|
||||
,GJSXTypeName = STUFF((SELECT ',' + Base_GJSXType.GJSXTypeName FROM dbo.Base_GJSXType where PATINDEX('%,' + RTRIM(Base_GJSXType.GJSXTypeID) + ',%', ',' + a.GJSXTypeID + ',') > 0 FOR XML PATH('')), 1, 1,'')
|
||||
,a.UserID,b.UserName
|
||||
--,b.Email as UserEmail
|
||||
,a.User_ReceiveID as User_ReceiveUserId
|
||||
,User_ReceiveUserName = STUFF((SELECT ',' + p2.UserName FROM dbo.Sys_User as p2 where PATINDEX('%,' + RTRIM(p2.UserId) + ',%', ',' + a.User_ReceiveID + ',') > 0 FOR XML PATH('')), 1, 1,'')
|
||||
--,User_ReceiveUserEmail = STUFF((SELECT ',' + p2.Email FROM dbo.Sys_User as p2 where PATINDEX('%,' + RTRIM(p2.UserId) + ',%', ',' + a.User_ReceiveID + ',') > 0 FOR XML PATH('')), 1, 1,'')
|
||||
,a.user_Acceptance as User_AcceptanceUserId
|
||||
,User_AcceptanceUserName = STUFF((SELECT ',' + p2.UserName FROM dbo.Sys_User as p2 where PATINDEX('%,' + RTRIM(p2.UserId) + ',%', ',' + a.user_Acceptance + ',') > 0 FOR XML PATH('')), 1, 1,'')
|
||||
--,User_AcceptanceUserEmail = STUFF((SELECT ',' + p2.Email FROM dbo.Sys_User as p2 where PATINDEX('%,' + RTRIM(p2.UserId) + ',%', ',' + a.user_Acceptance + ',') > 0 FOR XML PATH('')), 1, 1,'')
|
||||
,a.CsUsers as User_CsUserIds
|
||||
,User_CsUsers = STUFF((SELECT ',' + p2.UserName FROM dbo.Sys_User as p2 where PATINDEX('%,' + RTRIM(p2.UserId) + ',%', ',' + a.CsUsers + ',') > 0 FOR XML PATH('')), 1, 1,'')
|
||||
--,User_CsUsersUserEmail = STUFF((SELECT ',' + p2.Email FROM dbo.Sys_User as p2 where PATINDEX('%,' + RTRIM(p2.UserId) + ',%', ',' + a.CsUsers + ',') > 0 FOR XML PATH('')), 1, 1,'')
|
||||
from GJSX as a
|
||||
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.GJSXID = '{gjsxId}' ";
|
||||
|
||||
List<SqlParameter> listStr = new List<SqlParameter>();
|
||||
SqlParameter[] parameter = listStr.ToArray();
|
||||
|
||||
DataTable table = SQLHelper.GetDataTableRunText(strSql, parameter);
|
||||
// 使用LINQ将DataTable转换为List<GJSXItem>
|
||||
var lstOverdue = table.AsEnumerable().Select(row => new GJSXItem
|
||||
{
|
||||
DateDiffDays = Convert.ToInt32(row["DateDiffDays"]),
|
||||
GJSXID = row["GJSXID"].ToString(),
|
||||
ProjectId = row["ProjectId"].ToString(),
|
||||
ProjectName = row["ProjectName"].ToString(),
|
||||
UnitName = row["UnitName"].ToString(),
|
||||
Detail = row["Detail"].ToString(),
|
||||
CNProfessionalName = row["CNProfessionalName"].ToString(),
|
||||
QuestionTypeName = row["QuestionTypeName"].ToString(),
|
||||
GJSXTypeName = row["GJSXTypeName"].ToString(),
|
||||
UserID = row["UserID"].ToString(),
|
||||
UserName = row["UserName"].ToString(),
|
||||
//UserEmail = row["UserEmail"].ToString(),
|
||||
User_ReceiveUserId = row["User_ReceiveUserId"].ToString(),
|
||||
User_ReceiveUserName = row["User_ReceiveUserName"].ToString(),
|
||||
//User_ReceiveUserEmail = row["User_ReceiveUserEmail"].ToString(),
|
||||
User_AcceptanceUserId = row["User_AcceptanceUserId"].ToString(),
|
||||
User_AcceptanceUserName = row["User_AcceptanceUserName"].ToString(),
|
||||
//User_AcceptanceUserEmail = row["User_AcceptanceUserEmail"].ToString(),
|
||||
User_CsUserIds = row["User_CsUserIds"].ToString(),
|
||||
User_CsUsers = row["User_CsUsers"].ToString(),
|
||||
//User_CsUsersUserEmail = row["User_CsUsersUserEmail"].ToString(),
|
||||
CompleteDate = Convert.ToDateTime(row["CompleteDate"].ToString())
|
||||
}).ToList();
|
||||
|
||||
var gItem = lstOverdue.FirstOrDefault();
|
||||
if (gItem != null)
|
||||
{
|
||||
userIds.Add(gItem.User_AcceptanceUserId);
|
||||
foreach (var userId in userIds)
|
||||
{
|
||||
var user = UserService.GetUserByUserId(userId);
|
||||
if (!string.IsNullOrWhiteSpace(user.Email))
|
||||
{
|
||||
MailMessage mail = new MailMessage();
|
||||
//邮件主题
|
||||
mail.Subject = $"有事项申请关闭被驳回了——{gItem.ProjectName}";
|
||||
mail.To.Add(user.Email);
|
||||
//mail.To.Add("test@test.com");
|
||||
mail.IsBodyHtml = true;//确保邮件正文被当作HTML解析
|
||||
//邮件正文
|
||||
string bodyStr = $@"<html>
|
||||
<head>
|
||||
<style>
|
||||
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h2>事项申请关闭被驳回</h2>
|
||||
<p>项目名称:{gItem.ProjectName}</p>
|
||||
<p>事项编号:{gItem.GJSXID}</p>
|
||||
<p>责任单位:{gItem.UnitName}</p>
|
||||
<p>专业:{gItem.CNProfessionalName}</p>
|
||||
<p>事项类别:{gItem.GJSXTypeName}</p>
|
||||
<p>紧急程度:{gItem.QuestionTypeName}</p>
|
||||
<p>事项描述:{gItem.Detail}</p>
|
||||
<p>提出人:{gItem.UserName}</p>
|
||||
<p>责任人:{gItem.User_AcceptanceUserName}</p>
|
||||
<p>跟踪人:{gItem.User_ReceiveUserName}</p>
|
||||
<p>抄送人:{gItem.User_CsUsers}</p>
|
||||
<p>约定完成日期:{gItem.CompleteDate.ToShortDateString()}</p>
|
||||
<p>驳回申请关闭说明:{detail}</p>
|
||||
|
||||
<h2>智慧施工管理信息系统</h2>
|
||||
<a href='https://zhgd.cwcec.com/'>请点击此处,进入智慧施工管理信息系统,查看事项详情</a>
|
||||
<p>登录账号:{user.Account}</p>
|
||||
<p>登录密码:CWCEC.+身份证号后四位(示例:CWCEC.1234)</p>
|
||||
|
||||
</body>
|
||||
</html>";
|
||||
//< p > 登录密码:{ user.RawPassword}</ p >
|
||||
mail.Body = bodyStr;
|
||||
|
||||
try
|
||||
{
|
||||
bool send = PushEmail(mail);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ErrLogInfo.WriteLog($"关键事项申请关闭通知提醒责任人;项目名称:{gItem.ProjectName},事项编号:{gItem.GJSXID}", ex);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 关键事项超期预警定时提醒发送邮箱
|
||||
@@ -181,11 +435,11 @@ namespace BLL
|
||||
,a.CsUsers as User_CsUserIds
|
||||
,User_CsUsers = STUFF((SELECT ',' + p2.UserName FROM dbo.Sys_User as p2 where PATINDEX('%,' + RTRIM(p2.UserId) + ',%', ',' + a.CsUsers + ',') > 0 FOR XML PATH('')), 1, 1,'')
|
||||
--,User_CsUsersUserEmail = STUFF((SELECT ',' + p2.Email FROM dbo.Sys_User as p2 where PATINDEX('%,' + RTRIM(p2.UserId) + ',%', ',' + a.CsUsers + ',') > 0 FOR XML PATH('')), 1, 1,'')
|
||||
from GJSX as a
|
||||
from GJSX as a
|
||||
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 a.state<>'1' and (GETDATE()>a.CompleteDate or DATEDIFF(DAY, CompleteDate, isnull(CloseDate,getdate()))=-7 or DATEDIFF(DAY, CompleteDate, isnull(CloseDate,getdate()))=-6 ) ";
|
||||
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 or DATEDIFF(DAY, CompleteDate, isnull(CloseDate,getdate()))=-1 ) ";
|
||||
|
||||
List<SqlParameter> listStr = new List<SqlParameter>();
|
||||
SqlParameter[] parameter = listStr.ToArray();
|
||||
@@ -224,6 +478,7 @@ namespace BLL
|
||||
//获取有邮箱的用户
|
||||
var userIds = BLL.UserService.GetUserHaveEmailList();
|
||||
|
||||
userIds = userIds.Where(x => x.UserName == "张邦兴").ToList();
|
||||
if (userIds.Any() && lstOverdue.Any())
|
||||
{
|
||||
//int allnum = 0;
|
||||
@@ -256,12 +511,12 @@ namespace BLL
|
||||
{
|
||||
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.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>");
|
||||
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 < -1 ? "还有一周就逾期了" : "半")}</td></tr>");
|
||||
index++;
|
||||
}
|
||||
}
|
||||
//发起人为本人
|
||||
var userItems = lstProjectOverdue.Where(x => x.UserID == user.UserId).OrderByDescending(x => x.DateDiffDays).ToList();
|
||||
var userItems = lstProjectOverdue.Where(x => x.UserID == user.UserId && x.DateDiffDays > -1).OrderByDescending(x => x.DateDiffDays).ToList();
|
||||
if (userItems.Any())
|
||||
{
|
||||
foreach (var item in userItems)
|
||||
@@ -271,7 +526,7 @@ namespace BLL
|
||||
}
|
||||
}
|
||||
//跟踪人为本人--x.User_ReceiveUserId != null && x.User_ReceiveUserId != "" &&
|
||||
var receiveItems = lstProjectOverdue.Where(x => x.User_ReceiveUserId.Contains(user.UserId)).OrderByDescending(x => x.DateDiffDays).ToList();
|
||||
var receiveItems = lstProjectOverdue.Where(x => x.User_ReceiveUserId.Contains(user.UserId) && x.DateDiffDays > -1).OrderByDescending(x => x.DateDiffDays).ToList();
|
||||
if (receiveItems.Any())
|
||||
{
|
||||
foreach (var item in receiveItems)
|
||||
@@ -286,7 +541,7 @@ namespace BLL
|
||||
{
|
||||
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.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>");
|
||||
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 < -1 ? "还有一周就逾期了" : "半")}</td></tr>");
|
||||
index++;
|
||||
}
|
||||
}
|
||||
@@ -365,7 +620,7 @@ namespace BLL
|
||||
{
|
||||
index = 0;
|
||||
//超期当日提醒项目经理
|
||||
var lstProjectOverdue1 = lstProjectOverdue.Where(x => x.DateDiffDays == 0).ToList();
|
||||
var lstProjectOverdue1 = lstProjectOverdue.Where(x => x.DateDiffDays == 0 || x.DateDiffDays == -1).ToList();
|
||||
//超期一周的重要、紧急事项提醒项目经理
|
||||
var lstProjectOverdue7 = lstProjectOverdue.Where(x => x.DateDiffDays >= 7 && x.QuestionTypeName != "一般").ToList();
|
||||
lstProjectOverdue1.AddRange(lstProjectOverdue7);
|
||||
|
||||
Reference in New Issue
Block a user