This commit is contained in:
2024-05-16 10:17:34 +08:00
parent d17354f244
commit 145844fbed
21 changed files with 551 additions and 294 deletions
+100 -12
View File
@@ -14,6 +14,7 @@
using BLL.Common;
using FineUIPro.Web.common;
using Model;
using NPOI.SS.Formula.Functions;
public class Global : System.Web.HttpApplication
{
@@ -24,6 +25,7 @@
protected void Application_Start(object sender, EventArgs e)
{
Application["OnlineUserCount"] = 0;
try
{
@@ -111,7 +113,6 @@
upTimer.Interval = 1000 * 60 * 60;
upTimer.Enabled = true;
upTimer.Start();
}
// 承包商资质提前3个过期提示
@@ -148,6 +149,17 @@
}
// 承包商EHSS违规关联SES号的填写通知
if (DateTime.Now.Hour == 10)
{
System.Timers.Timer aTimer = new System.Timers.Timer();
aTimer.Elapsed += new System.Timers.ElapsedEventHandler(RelatedSes_EmailSend);
//60分钟执行一次
aTimer.Interval = 1000 * 3 * 60 * 60;
aTimer.Enabled = true;
aTimer.Start();
}
// 启动接口
if (DateTime.Now.Hour == 17)
{
@@ -815,6 +827,7 @@
}
}
#region
private void aTimer_FC_AutoSend(object sender, System.Timers.ElapsedEventArgs e)
{
// 过期提示,30天范围
@@ -877,17 +890,17 @@
userList.Add(userRepresentative.First());
}
var ctk = from x in Funs.DB.Sys_User
join z in Funs.DB.Base_Depart on x.DepartId equals z.DepartId
where z.DepartCode == "CT/K" && x.Email != null && x.Email != ""
select x;
if (ctk.Count() > 0)
{
foreach (var c in ctk)
{
userList.Add(c);
}
}
//var ctk = from x in Funs.DB.Sys_User
// join z in Funs.DB.Base_Depart on x.DepartId equals z.DepartId
// where z.DepartCode == "CT/K" && x.Email != null && x.Email != ""
// select x;
//if (ctk.Count() > 0)
//{
// foreach (var c in ctk)
// {
// userList.Add(c);
// }
//}
var ctss = from x in Funs.DB.Sys_User
join y in Funs.DB.Sys_Role on x.RoleId equals y.RoleId
@@ -932,6 +945,7 @@
}
}
}
#endregion
/// <summary>
/// 发送邮件
@@ -1396,6 +1410,80 @@
BLL.SQLHelper.ExecutSql(strSql);
}
#region EHSS违规关联SES号的填写通知
private void RelatedSes_EmailSend(object sender, System.Timers.ElapsedEventArgs e)
{
var vses = (from x in Funs.DB.EMC_Punishment
where (x.RelatedSesMailIsSend == null || x.RelatedSesMailIsSend == false)
&& x.BYC_RU != null && x.BYC_RU.ToUpper() != "NA"
&& x.CreateDate.HasValue && x.CreateDate.Value.AddDays(1).Date <= DateTime.Now.Date
select x).ToList();
if (vses.Count() > 0)
{
Model.EmailPop pops = Funs.DB.EmailPop.FirstOrDefault(x => x.EmailID == BLL.Const.EmailPopId);
if (pops == null)
{
return;
}
foreach (var ses in vses)
{
string[] mailTo = null;
string[] mailCC = null;
string resultMessage = "";
var emailTemplate = Funs.DB.SendEmailTemplate.Where(x => x.EmailName.Contains("承包商EHSS违规关联SES号的填写通知"));
if (emailTemplate.Count() > 0)
{
var dep = BLL.DepartService.GetDepartById(ses.BYC_RU);
if (dep != null && !string.IsNullOrEmpty(dep.DepartLeader))
{
var userTo = from x in Funs.DB.Sys_User
where x.UserId == dep.DepartLeader
&& x.Email != null && x.Email != ""
select x;
if (userTo != null)
{
mailTo = userTo.Select(x => x.Email).ToArray();
}
string contractor = string.Empty;
var fo = BLL.SESRelatedDataService.GetSESRelatedDataByFoNo(ses.FO_NO);
if (fo != null)
{
var userCC = from x in Funs.DB.Sys_User
where (x.UserId == fo.Contract_Admin || x.UserId == fo.Main_Coordinator)
&& x.Email != null && x.Email != ""
select x;
mailCC = userCC.Select(x => x.Email).Distinct().ToArray();
var con = Funs.DB.View_Contractor_DropDownValue.FirstOrDefault(x => x.ContractorId == fo.Contractor);
if (con != null)
{
contractor = con.Contractor;
}
}
if (mailTo.Length > 0)
{
NameValueCollection myPram = new NameValueCollection();
myPram.Add("ContractNo", fo.FO_NO);
myPram.Add("Contractor", contractor);
bool result = MailHelper.SendPunishSesMail(pops, myPram, "承包商EHSS违规关联SES号的填写通知", mailTo, mailCC, out resultMessage);
if (result)
{
ses.RelatedSesMailIsSend = true;
Funs.DB.SubmitChanges();
}
}
}
}
}
}
}
#endregion
private void Sync_HR(object sender, System.Timers.ElapsedEventArgs e)
{
//调用接口