xusc
4 weeks ago
4 changed files with 195 additions and 0 deletions
-
BIN.vs/ICSSoft.FromERP/v16/.suo
-
1ICSSoft.FromERP/App.config
-
193ICSSoft.FromERP/AutoSendMail_KBS.cs
-
1ICSSoft.FromERP/ICSSoft.FromERP.csproj
Binary file not shown.
@ -0,0 +1,193 @@ |
|||||
|
using System; |
||||
|
using System.Collections.Generic; |
||||
|
using System.Linq; |
||||
|
using System.Text; |
||||
|
using Quartz; |
||||
|
using System.Data; |
||||
|
//using NFine.Data.Extensions;
|
||||
|
using System.Configuration; |
||||
|
using ICSSoft.FromERP; |
||||
|
//using ICSSoft.SendMail;
|
||||
|
using System.Data.SqlClient; |
||||
|
using System.Net; |
||||
|
using System.Net.Mail; |
||||
|
using System.Security.Cryptography.X509Certificates; |
||||
|
using System.Net.Security; |
||||
|
|
||||
|
|
||||
|
namespace ICSSoft.FromERP |
||||
|
{ |
||||
|
/// <summary>
|
||||
|
/// 发送SQE人员复判
|
||||
|
/// </summary>
|
||||
|
public class AutoSendMail_KBS : IJob |
||||
|
{ |
||||
|
private static object key = new object(); |
||||
|
private static log4net.ILog log = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); |
||||
|
public void Execute(IJobExecutionContext context) |
||||
|
{ |
||||
|
try |
||||
|
{ |
||||
|
lock (key) |
||||
|
{ |
||||
|
log.Info("开始……………………………………………………………………"); |
||||
|
Execute(); |
||||
|
log.Info("结束……………………………………………………………………"); |
||||
|
} |
||||
|
} |
||||
|
catch (Exception ex) |
||||
|
{ |
||||
|
log.Error(ex.ToString()); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
private void Execute() |
||||
|
{ |
||||
|
string erpName = ICSHelper.GetConfigString()["ERPDB"]; |
||||
|
string conStr = ICSHelper.GetConnectString(); |
||||
|
string Namespace = this.GetType().Namespace; |
||||
|
//string Class = this.GetType().Name;
|
||||
|
|
||||
|
DataTable dt = ICSHelper.GetOldERPDB(conStr); |
||||
|
|
||||
|
foreach (DataRow dr1 in dt.Rows) |
||||
|
{ |
||||
|
string WorkPoint = dr1["WorkPointCode"].ToString(); |
||||
|
string Class = this.GetType().Name + WorkPoint; |
||||
|
|
||||
|
string sql = @"select
|
||||
|
a.* |
||||
|
from IcsMatCheckResult a with(nolock) |
||||
|
where 1=1 |
||||
|
and a.WorkPoint='KC47' |
||||
|
and a.CheckNo='CR202410290034' |
||||
|
--and a.IsCheckComplete='是' |
||||
|
--and a.AsnCode='DNA08S000072400088' |
||||
|
--and a.InvCode='8S11332' |
||||
|
--and a.InvBatcgNo='' |
||||
|
|
||||
|
order by a.Mtime desc |
||||
|
";
|
||||
|
|
||||
|
|
||||
|
DataTable dtInInfo = ICSHelper.ExecuteTable(conStr, sql); |
||||
|
if (dtInInfo == null || dtInInfo.Rows.Count == 0) |
||||
|
{ |
||||
|
return; |
||||
|
} |
||||
|
|
||||
|
string MailOpen = ICSHelper.GetConfigString("MailOpen"); |
||||
|
|
||||
|
if (MailOpen != "true") |
||||
|
{ |
||||
|
return; |
||||
|
} |
||||
|
|
||||
|
string SendHost = ICSHelper.GetConfigString("SendHost"); |
||||
|
string StrSendPort = ICSHelper.GetConfigString("SendPort"); |
||||
|
int SendPort = 25; |
||||
|
if (!string.IsNullOrEmpty(StrSendPort)) |
||||
|
SendPort = Convert.ToInt32(ICSHelper.GetConfigString("SendPort")); |
||||
|
string SendDisplayName = ICSHelper.GetConfigString("SendDisplayName"); |
||||
|
string SendAddress = ICSHelper.GetConfigString("SendAddress"); |
||||
|
string SendPassword = ICSHelper.GetConfigString("SendPassword"); |
||||
|
|
||||
|
string sqls = @" select *
|
||||
|
from V_QuerySysEnumItem a |
||||
|
where a.F_EnCode = 'SQESendMail'";
|
||||
|
DataTable dts = ICSHelper.ExecuteTable(conStr, sqls); |
||||
|
|
||||
|
string Email = string.Empty; |
||||
|
foreach (DataRow drs in dts.Rows) |
||||
|
{ |
||||
|
Email += drs["Ext1"].ToString() + ","; |
||||
|
} |
||||
|
|
||||
|
foreach (DataRow dr in dtInInfo.Rows) |
||||
|
{ |
||||
|
string TOAddress = Email.TrimEnd(','); |
||||
|
string CCAddress = ""; |
||||
|
string Subject = "SQE复判提醒"; |
||||
|
bool isBodyHtml = true; |
||||
|
//string VenName = dr["VENDORNAME"].ToString();
|
||||
|
//string STNO = dr["STNO"].ToString();
|
||||
|
string NowDate = DateTime.Now.GetDateTimeFormats('D')[0].ToString(); |
||||
|
string body = "SQE复判" + ":"; |
||||
|
body += "\r\n"; |
||||
|
body += " 您好!有一个来料复判的检验单,单号为:" + dr["CheckNo"].ToString() + " 的检验单已经超过48小时没有复判,请及时处理 !"; |
||||
|
|
||||
|
body += "\r\n"; |
||||
|
body += " 苏州咖博士咖啡系统科技有限公司"; |
||||
|
body += "\r\n"; |
||||
|
body += " " + NowDate; |
||||
|
|
||||
|
|
||||
|
//string StrConn = ConfigurationManager.ConnectionStrings["connstr"].ConnectionString;
|
||||
|
SendEmail(conStr, SendHost, SendPort, SendDisplayName, SendAddress, SendPassword, TOAddress, CCAddress, Subject, isBodyHtml, body); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
} |
||||
|
} |
||||
|
|
||||
|
public void SendEmail(string ConnectionString, string SendHost, int SendPort, string SendDisplayName, string SendAddress, string SendPassword, string TOAddress, string CCAddress, string Subject, bool IsBodyHtml, string Body) |
||||
|
{ |
||||
|
try |
||||
|
{ |
||||
|
SmtpClient smtpClient = new SmtpClient |
||||
|
{ |
||||
|
//EnableSsl = false,
|
||||
|
UseDefaultCredentials = false, |
||||
|
Host = SendHost, |
||||
|
Port = SendPort, |
||||
|
Credentials = new NetworkCredential(SendAddress, SendPassword) |
||||
|
}; |
||||
|
MailMessage mailMessage = new MailMessage |
||||
|
{ |
||||
|
Subject = Subject, |
||||
|
SubjectEncoding = Encoding.GetEncoding("utf-8"), |
||||
|
BodyEncoding = Encoding.GetEncoding("utf-8"), |
||||
|
From = new MailAddress(SendAddress, SendDisplayName), |
||||
|
IsBodyHtml = IsBodyHtml, |
||||
|
Body = Body |
||||
|
}; |
||||
|
string[] array = TOAddress.Split(new char[] |
||||
|
{ |
||||
|
',' |
||||
|
}); |
||||
|
string[] array2 = array; |
||||
|
for (int i = 0; i < array2.Length; i++) |
||||
|
{ |
||||
|
string text = array2[i]; |
||||
|
if (!string.IsNullOrEmpty(text)) |
||||
|
{ |
||||
|
mailMessage.To.Add(text); |
||||
|
} |
||||
|
} |
||||
|
string[] array3 = CCAddress.Split(new char[] |
||||
|
{ |
||||
|
',' |
||||
|
}); |
||||
|
array2 = array3; |
||||
|
for (int i = 0; i < array2.Length; i++) |
||||
|
{ |
||||
|
string text2 = array2[i]; |
||||
|
if (!string.IsNullOrEmpty(text2)) |
||||
|
{ |
||||
|
mailMessage.CC.Add(text2); |
||||
|
} |
||||
|
} |
||||
|
ServicePointManager.ServerCertificateValidationCallback = ((object obj, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors) => true); |
||||
|
smtpClient.Send(mailMessage); |
||||
|
//InsertData(ConnectionString, SendHost, SendPort, SendDisplayName, SendAddress, SendPassword, TOAddress, CCAddress, Subject, IsBodyHtml, Body, "1", null);
|
||||
|
} |
||||
|
catch (Exception ex) |
||||
|
{ |
||||
|
//InsertData(ConnectionString, SendHost, SendPort, SendDisplayName, SendAddress, SendPassword, TOAddress, CCAddress, Subject, IsBodyHtml, Body, "2", ex.Message);
|
||||
|
throw ex; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
|
||||
|
} |
||||
|
} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue