휴가 신청 삭제시 로그파일에 기록되도록 함

This commit is contained in:
ChiKyun Kim
2025-10-29 10:43:28 +09:00
parent 6bd4f84192
commit 3f3a2834df
51 changed files with 1321 additions and 5365 deletions

Binary file not shown.

View File

@@ -33,6 +33,9 @@
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="ChilkatDotNet46">
<HintPath>.\ChilkatDotNet46.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.ServiceProcess" />

View File

@@ -12307,8 +12307,9 @@ WHERE (enable = 1) AND (ISNULL(fromlist, '') <> '') AND (ISNULL(tolist, '') <>
this._commandCollection = new global::System.Data.SqlClient.SqlCommand[1];
this._commandCollection[0] = new global::System.Data.SqlClient.SqlCommand();
this._commandCollection[0].Connection = this.Connection;
this._commandCollection[0].CommandText = "SELECT *\r\nFROM vMailingProjectSchedule\r\nWHERE (gcode = @gcode)\r\nORDER BY pd" +
"ate, idx, seq";
this._commandCollection[0].CommandText = "SELECT gcode, status, idx, pdate, name, userManager, seq, title, sw, ew, swa, pr" +
"ogress, ewa, ww, memo, sidx\r\nFROM vMailingProjectSchedule\r\nWHERE (gcode = @" +
"gcode) AND (pdate >= \'2024-01-01\')\r\nORDER BY pdate, idx, seq";
this._commandCollection[0].CommandType = global::System.Data.CommandType.Text;
this._commandCollection[0].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@gcode", global::System.Data.SqlDbType.VarChar, 10, global::System.Data.ParameterDirection.Input, 0, 0, "gcode", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
}

View File

@@ -473,10 +473,10 @@ WHERE (enable = 1) AND (ISNULL(fromlist, '') &lt;&gt; '') AND (ISNULL(tolist, '
<MainSource>
<DbSource ConnectionRef="gwcs (Settings)" DbObjectName="EE.dbo.vMailingProjectSchedule" DbObjectType="View" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="false" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetData" UserSourceName="Fill">
<SelectCommand>
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>SELECT *
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>SELECT gcode, status, idx, pdate, name, userManager, seq, title, sw, ew, swa, progress, ewa, ww, memo, sidx
FROM vMailingProjectSchedule
WHERE (gcode = @gcode)
WHERE (gcode = @gcode) AND (pdate &gt;= '2024-01-01')
ORDER BY pdate, idx, seq</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="gcode" ColumnName="gcode" DataSourceName="EE.dbo.vMailingProjectSchedule" DataTypeServer="varchar(10)" DbType="AnsiString" Direction="Input" ParameterName="@gcode" Precision="0" ProviderType="VarChar" Scale="0" Size="10" SourceColumn="gcode" SourceColumnNullMapping="false" SourceVersion="Current" />

View File

@@ -7,13 +7,13 @@
<DiagramLayout xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ex:showrelationlabel="False" ViewPortX="-10" ViewPortY="-10" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
<Shapes>
<Shape ID="DesignTable:MailForm" ZOrder="5" X="24" Y="30" Height="305" Width="191" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:MailData" ZOrder="1" X="262" Y="96" Height="362" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:MailData" ZOrder="2" X="262" Y="96" Height="362" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:MailAuto" ZOrder="6" X="514" Y="130" Height="324" Width="225" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:vMailingProjectSchedule" ZOrder="4" X="95" Y="183" Height="305" Width="289" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:vMailingProjectSchedule" ZOrder="1" X="95" Y="183" Height="305" Width="289" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:ProjectsIngList" ZOrder="11" X="372" Y="176" Height="305" Width="191" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="237" />
<Shape ID="DesignTable:EETGW_ProjectsSchedule" ZOrder="2" X="643" Y="413" Height="96" Width="291" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="46" />
<Shape ID="DesignTable:EETGW_ProjectsSchedule" ZOrder="3" X="643" Y="413" Height="96" Width="291" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="46" />
<Shape ID="DesignTable:vJobReportForUser" ZOrder="8" X="815" Y="102" Height="229" Width="257" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="121" />
<Shape ID="DesignTable:JobReport" ZOrder="3" X="622" Y="57" Height="400" Width="318" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="332" />
<Shape ID="DesignTable:JobReport" ZOrder="4" X="622" Y="57" Height="400" Width="318" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="332" />
<Shape ID="DesignTable:HolidayLIst" ZOrder="10" X="813" Y="358" Height="191" Width="210" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="140" />
<Shape ID="DesignTable:vGroupUser" ZOrder="9" X="783" Y="300" Height="324" Width="230" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:JobReportDateList" ZOrder="7" X="89" Y="43" Height="96" Width="212" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="45" />

View File

@@ -65,9 +65,65 @@ namespace Console_SendMail
}
return list_to;
}
//static void Main(string[] args)
//{
// //var mc = new System.Net.Mail.SmtpClient("k5lexim01.kr.ds.amkor.com");
// //mc.Credentials = new System.Net.NetworkCredential("bookmanager", "BIDA19R=maga2#H9gY[JPx%~M^NyIG");
// //var msg = new System.Net.Mail.MailMessage("bookmanager@amkor.co.kr", "chikyun.kim@amkor.co.kr");
// //msg.Body = "test";
// //msg.Subject = "test mail";
// //try
// //{
// // mc.Send(msg);
// // Console.WriteLine( "ok");
// // Console.ReadLine();
// // Console.ReadKey();
// //}catch ( Exception ex)
// //{
// // Console.WriteLine( ex.Message);
// //}
// Chilkat.MailMan mailman = new Chilkat.MailMan();
// bool success = mailman.UnlockComponent("GAMACM.CB8082024_Tz2XiNck4U5N");
// if(success ==false ) Console.WriteLine("license errr" );
// mailman.SmtpHost = "k5lexim01.kr.ds.amkor.com";
// mailman.SmtpPort = 25;
// mailman.SmtpUsername = "bookmanager";
// mailman.SmtpPassword = "BIDA19R=maga2#H9gY[JPx%~M^NyIG";
// Chilkat.Email email = new Chilkat.Email();
// email.Subject = "test";
// email.SetHtmlBody("test");
// email.From = "bookmanager@amkor.co.kr";
// email.AddTo("chikyun", "chikyun.kim@amkor.co.kr");
// success = mailman.SendEmail(email);
// if (success != true)
// {
// Console.WriteLine("메일 발송 실패");
// }
// else Console.WriteLine( "ok");
// success = mailman.CloseSmtpConnection();
//}
static void Main(string[] args)
{
//var mc = new System.Net.Mail.SmtpClient("k5lexim01.kr.ds.amkor.com");
//mc.Credentials = new System.Net.NetworkCredential("bookmanager", "BIDA19R=maga2#H9gY[JPx%~M^NyIG");
//var msg = new System.Net.Mail.MailMessage("chikyun.kim@amkor.co.kr", "chikyun.kim@amkor.co.kr");
//msg.Body = "test";
//msg.Subject = "test mail";
//mc.Send(msg);
// 명령행 인수 처리
if (args.Length > 0)
{

View File

@@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
// 모든 값을 지정하거나 아래와 같이 '*'를 사용하여 빌드 번호 및 수정 번호를
// 기본값으로 할 수 있습니다.
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("25.08.05.1130")]
[assembly: AssemblyFileVersion("25.08.05.1130")]
[assembly: AssemblyVersion("25.10.22.1450")]
[assembly: AssemblyFileVersion("25.10.22.1450")]

View File

@@ -7,6 +7,7 @@ using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Net.Mail;
using System.Text;
namespace Console_SendMail
@@ -32,9 +33,9 @@ namespace Console_SendMail
var basedate = DateTime.Now;
var sd = basedate.AddDays(-15);
var ed = basedate.AddDays(-1);
var str_sd = sd.ToShortDateString();
var str_ed = ed.ToShortDateString();
var str_dt = basedate.ToShortDateString();
var str_sd = sd.ToString("yyyy-MM-dd");//ToShortDateString();
var str_ed = ed.ToString("yyyy-MM-dd");//ToShortDateString();
var str_dt = basedate.ToString("yyyy-MM-dd");
var gcodelist = DatabaseManager.getGroupListWithoutGcode("gcode", "MailForm", "gcode is not null and gcode <> 'DEV'");
@@ -111,7 +112,7 @@ namespace Console_SendMail
Dictionary<DateTime, double?> WarnList = new Dictionary<DateTime, double?>();
foreach (var dt in days.OrderBy(t => t))
{
var dtstr = dt.ToShortDateString();
var dtstr = dt.ToString("yyyy-MM-dd");
var userdata = UserDatas.Where(t => t.pdate == dtstr); //해당날짜의 데이터를 확인한다.
var hrs = 0f;
if (userdata.Any()) hrs = (float)userdata.Sum(t => t.hrs);
@@ -150,7 +151,7 @@ namespace Console_SendMail
mail_content += "<br/><table border='1' cellspacing='1' cellpadding='1'><tr><td>날짜</td><td>요일</td><td>시간</td></tr>";
foreach (var warnitem in WarnList)
{
mail_content += $"<tr><td>{warnitem.Key.ToShortDateString()}</td><td>{warnitem.Key.DayOfWeek.ToString()}</td><td>{warnitem.Value:N1}</td></tr>";
mail_content += $"<tr><td>{warnitem.Key.ToString("yyyy-MM-dd")}</td><td>{warnitem.Key.DayOfWeek.ToString()}</td><td>{warnitem.Value:N1}</td></tr>";
}
mail_content += "</table>";
@@ -173,7 +174,7 @@ namespace Console_SendMail
newdr.tolist = MailSort(mail_to, MailForm.exceptmail);
newdr.bcc = mail_bcc;
newdr.cc = MailSort(mail_cc, MailForm.exceptmailcc);
newdr.pdate = DateTime.Now.ToShortDateString();
newdr.pdate = DateTime.Now.ToString("yyyy-MM-dd");//ToShortDateString();
newdr.body = mail_body.Replace("{내용}", mail_content);
newdr.wuid = "dev";
newdr.wdate = DateTime.Now;
@@ -210,7 +211,7 @@ namespace Console_SendMail
newdr.tolist = "chikyun.kim@amkor.co.kr";
newdr.bcc = string.Empty;
newdr.cc = string.Empty;
newdr.pdate = DateTime.Now.ToShortDateString();
newdr.pdate = DateTime.Now.ToString("yyyy-MM-dd");//ToShortDateString();
newdr.body = string.Join("<br/>", NoMailList.ToList());
newdr.wuid = "dev";
newdr.wdate = DateTime.Now;
@@ -257,9 +258,9 @@ namespace Console_SendMail
//기준일자는 오늘부터 -15일이다
var sd = DateTime.Now.AddDays(-15);
var ed = DateTime.Now.AddDays(-1);
var str_sd = sd.ToShortDateString();
var str_ed = ed.ToShortDateString();
var str_dt = DateTime.Now.ToShortDateString();
var str_sd = sd.ToString("yyyy-MM-dd");
var str_ed = ed.ToString("yyyy-MM-dd");//ToShortDateString();
var str_dt = DateTime.Now.ToString("yyyy-MM-dd");//ToShortDateString();
var gcodelist = DatabaseManager.getGroupListWithoutGcode("gcode", "MailForm", "gcode is not null and gcode <> 'DEV'");
foreach (var vGcode in gcodelist)
@@ -332,7 +333,7 @@ namespace Console_SendMail
Dictionary<DateTime, double?> WarnList = new Dictionary<DateTime, double?>();
foreach (var dt in days.OrderBy(t => t))
{
var dtstr = dt.ToShortDateString();
var dtstr = dt.ToString("yyyy-MM-dd");
var userdata = UserDatas.Where(t => t.pdate == dtstr); //해당날짜의 데이터를 확인한다.
var hrs = 0f;
if (userdata.Any()) hrs = (float)userdata.Sum(t => t.hrs);
@@ -365,7 +366,7 @@ namespace Console_SendMail
//메일본문을 생성해서 진행해야함
var vmail_body = "<p>담당자별 정보</p>";
vmail_body += "<br/>조회기간 : " + sd.ToShortDateString() + "~" + ed.ToShortDateString();
vmail_body += "<br/>조회기간 : " + sd.ToString("yyyy-MM-dd") + "~" + ed.ToString("yyyy-MM-dd");
////참고데이터를 추가한다
var usergrplist = totWarnList.OrderBy(t => t.uname).GroupBy(t => t.uid).ToList();
@@ -403,7 +404,7 @@ namespace Console_SendMail
newdr.tolist = mail_to;
newdr.bcc = mail_bcc;
newdr.cc = MailSort(mail_cc, MailForm.exceptmailcc);
newdr.pdate = DateTime.Now.ToShortDateString();
newdr.pdate = DateTime.Now.ToString("yyyy-MM-dd");
newdr.body = mail_body.Replace("{내용}", vmail_body);
newdr.wuid = "dev";
newdr.wdate = DateTime.Now;
@@ -443,13 +444,13 @@ namespace Console_SendMail
var taSche = new DSMailTableAdapters.EETGW_ProjectsScheduleTableAdapter();
var vCate = "SN";
try
{
{
//기준일자는 오늘부터 -15일이다
var sd = DateTime.Now.AddDays(-15);
var ed = DateTime.Now;
var str_sd = sd.ToShortDateString();
var str_ed = ed.ToShortDateString();
var str_dt = DateTime.Now.ToShortDateString();
var str_sd = sd.ToString("yyyy-MM-dd");
var str_ed = ed.ToString("yyyy-MM-dd");//ToShortDateString();
var str_dt = DateTime.Now.ToString("yyyy-MM-dd");//ToShortDateString();
var gcodelist = DatabaseManager.getGroupListWithoutGcode("gcode", "MailForm", "gcode is not null and gcode <> 'DEV'");
foreach (var vGcode in gcodelist)
@@ -544,7 +545,7 @@ namespace Console_SendMail
newdr.tolist = mail_to;// MailSort(mail_to, MailForm.exceptmail);
newdr.bcc = mail_bcc;
newdr.cc = MailSort(mail_cc, MailForm.exceptmailcc);
newdr.pdate = DateTime.Now.ToShortDateString();
newdr.pdate = DateTime.Now.ToString("yyyy-MM-dd");
newdr.body = mail_content;
newdr.wuid = "dev";// "dev";
newdr.wdate = DateTime.Now;
@@ -576,7 +577,7 @@ namespace Console_SendMail
newdr.tolist = "chikyun.kim@amkor.co.kr";
newdr.bcc = string.Empty;
newdr.cc = string.Empty;
newdr.pdate = DateTime.Now.ToShortDateString();
newdr.pdate = DateTime.Now.ToString("yyyy-MM-dd");
newdr.body = ex.Message;
newdr.wuid = "dev";// "dev";
newdr.wdate = DateTime.Now;
@@ -613,9 +614,9 @@ namespace Console_SendMail
{
var sd = DateTime.Now.AddDays(-15);
var ed = DateTime.Now;
var str_sd = sd.ToShortDateString();
var str_ed = ed.ToShortDateString();
var str_dt = DateTime.Now.ToShortDateString();
var str_sd = sd.ToString("yyyy-MM-dd");
var str_ed = ed.ToString("yyyy-MM-dd");
var str_dt = DateTime.Now.ToString("yyyy-MM-dd");
var gcodelist = DatabaseManager.getGroupListWithoutGcode("gcode", "MailForm", "gcode is not null and gcode <> 'DEV'");
foreach (var vGcode in gcodelist)
@@ -727,7 +728,7 @@ namespace Console_SendMail
newdr.tolist = mail_to;// MailSort(mail_to, MailJD.exceptmail);
newdr.bcc = mail_bcc;
newdr.cc = MailSort(mail_cc, MailForm.exceptmailcc);
newdr.pdate = DateTime.Now.ToShortDateString();
newdr.pdate = DateTime.Now.ToString("yyyy-MM-dd");
newdr.body = mail_content;
newdr.wuid = "dev";// "dev";
newdr.wdate = DateTime.Now;
@@ -759,7 +760,7 @@ namespace Console_SendMail
newdr.tolist = "chikyun.kim@amkor.co.kr";
newdr.bcc = string.Empty;
newdr.cc = string.Empty;
newdr.pdate = DateTime.Now.ToShortDateString();
newdr.pdate = DateTime.Now.ToString("yyyy-MM-dd");
newdr.body = ex.Message;
newdr.wuid = "dev";// "dev";
newdr.wdate = DateTime.Now;
@@ -802,9 +803,9 @@ namespace Console_SendMail
//기준일자는 오늘부터 -15일이다
var sd = DateTime.Now.AddDays(-15);
var ed = DateTime.Now;
var str_sd = sd.ToShortDateString();
var str_ed = ed.ToShortDateString();
var str_dt = DateTime.Now.ToShortDateString();
var str_sd = sd.ToString("yyyy-MM-dd");
var str_ed = ed.ToString("yyyy-MM-dd");
var str_dt = DateTime.Now.ToString("yyyy-MM-dd");
//var gcodelist = db.MailForm.GroupBy(t => t.gcode).ToList();
@@ -913,7 +914,7 @@ namespace Console_SendMail
newdr.tolist = mail_to;// MailSort(mail_to, MailJD.exceptmail);
newdr.bcc = mail_bcc;
newdr.cc = MailSort(mail_cc, MailJD.exceptmailcc);
newdr.pdate = DateTime.Now.ToShortDateString();
newdr.pdate = DateTime.Now.ToString("yyyy-MM-dd");
newdr.body = mail_content;
newdr.wuid = "dev";// "dev";
newdr.wdate = DateTime.Now;
@@ -946,7 +947,7 @@ namespace Console_SendMail
newdr.tolist = "chikyun.kim@amkor.co.kr";
newdr.bcc = string.Empty;
newdr.cc = string.Empty;
newdr.pdate = DateTime.Now.ToShortDateString();
newdr.pdate = DateTime.Now.ToString("yyyy-MM-dd");
newdr.body = ex.Message;
newdr.wuid = "dev";// "dev";
newdr.wdate = DateTime.Now;
@@ -991,20 +992,20 @@ namespace Console_SendMail
var gcodelist = DatabaseManager.getGroupListWithoutGcode("gcode", "MailForm", "gcode is not null and gcode <> 'DEV'");
//var db = new EEEntities();
//기준일자는 오늘부터 -15일이다
//var sd = DateTime.Now.AddDays(-15);
//var ed = DateTime.Now;
//var str_sd = sd.ToShortDateString();
//var str_ed = ed.ToShortDateString();
var str_dt = DateTime.Now.ToShortDateString();
var str_dt = DateTime.Now.ToString("yyyy-MM-dd");
var sql = "select (select isnull(max(pdate),'') from ProjectsHistory where pidx = Projects.idx) as LastHistory," +
" idx,status,name,sdate,ddate,orderno as CR,crdue,dbo.getUserName(isnull(championid,usermanager)) as NameChampion," +
" dbo.getUserName(isnull(designid,usermain)) as NameDesign,dbo.getUserName(isnull(epanelid,userhw2)) as NameEPanel," +
" dbo.getUserName(isnull(softwareid,usersub)) as NameSoftware,championid as IdChampion,designid as IdDesign," +
" epanelid as IdEPanel,softwareid as IdSoftware " +
" from Projects where gcode = @gcode and status = '진행'" +
$" and pdate >= '{DateTime.Now.AddYears(-3).ToShortDateString()}'";
$" and pdate >= '{DateTime.Now.AddYears(-2).ToString("yyyy-MM-dd")}'";
var cs = Properties.Settings.Default.cs;
var cn = new System.Data.SqlClient.SqlConnection(cs);
var cmd = new SqlCommand(sql, cn);
@@ -1144,7 +1145,7 @@ namespace Console_SendMail
newdr.tolist = mail_to;// MailSort(mail_to, MailJD.exceptmail);
newdr.bcc = mail_bcc;
newdr.cc = MailSort(mail_cc, MailJD.exceptmailcc);
newdr.pdate = DateTime.Now.ToShortDateString();
newdr.pdate = DateTime.Now.ToString("yyyy-MM-dd");
newdr.body = mail_content;
newdr.wuid = "dev";// "dev";
newdr.wdate = DateTime.Now;
@@ -1181,7 +1182,7 @@ namespace Console_SendMail
newdr.tolist = "chikyun.kim@amkor.co.kr";
newdr.bcc = string.Empty;
newdr.cc = string.Empty;
newdr.pdate = DateTime.Now.ToShortDateString();
newdr.pdate = DateTime.Now.ToString("yyyy-MM-dd");//.ToShortDateString();
newdr.body = ex.Message;
newdr.wuid = "dev";// "dev";
newdr.wdate = DateTime.Now;
@@ -1235,8 +1236,9 @@ namespace Console_SendMail
var body = string.Empty;//getdbdata(dar["body"]).Trim();
var idx = -1;
var pdate = string.Empty;
var developer = string.Empty;
while (dar.Read())
{
@@ -1249,6 +1251,7 @@ namespace Console_SendMail
subject = getdbdata(dar["subject"]).Trim();
body = getdbdata(dar["body"]).Trim();
idx = (int)dar["idx"];
developer = getdbdata(dar["developer"]);
}
dar.Close();
@@ -1269,7 +1272,7 @@ namespace Console_SendMail
{
sendMsg = ("받는 주소가 없습니다");
}
if (idx > 0)
{
//오류메시지가 있다면 업데이트만 한다
@@ -1306,26 +1309,98 @@ namespace Console_SendMail
else
{
//var body = getdbdata(dar["body"]);
if (String.IsNullOrEmpty(developer)) developer = "chikyun.kim@amkor.co.kr";
body +=
"<p>" +
"<br />이 메일은 EET 프로그램에서 자동 발신 되었습니다." +
"<br />메일이 잘못 전송 되었다면 [<a href='chikyun.kim@amkor.co.kr'>chikyun.kim@amkor.co.kr</a>] 로 문의 주시기 바랍니다" +
"</p>";
$"<p>" +
$"<br />이 메일은 EET 프로그램에서 자동 발신 되었습니다." +
$"<br />메일이 잘못 전송 되었다면 [<a href='{developer}'>{developer}</a>] 로 문의 주시기 바랍니다" +
$"</p>";
subject = subject.Replace("\r", "").Replace("\n", "");
body = body.Replace("\r", "").Replace("\n", "");
//전송을 해야 함
var mc = new System.Net.Mail.SmtpClient("10.101.5.150");
var msg = new System.Net.Mail.MailMessage
(list_from,
list_to,
subject,
body);
var tolist = list_to.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
var bcclist = list_bcc.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
var cclist = list_cc.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
var externalmail = false;
foreach (var item in tolist)
if (item.ToLower().EndsWith("amkor.co.kr") == false)
{
externalmail = true;
break;
}
foreach (var item in bcclist)
if (item.ToLower().EndsWith("amkor.co.kr") == false)
{
externalmail = true;
break;
}
foreach (var item in cclist)
if (item.ToLower().EndsWith("amkor.co.kr") == false)
{
externalmail = true;
break;
}
// ATK Exim 접속 정보
//ATK Exim Domain: k5lexim01.kr.ds.amkor.com
//ATK Exim IP : 10.101.2.70
//ATK Exim Port: 25, 465, 587
var sendsuccess = false;
//"10.101.5.150"
//전송을 해야 함vvmffh123123
Chilkat.MailMan mailman = null;
Chilkat.Email email = null;
SmtpClient mc = null;
MailMessage msg = null;
if (externalmail)
{
mailman = new Chilkat.MailMan();
bool success = mailman.UnlockComponent("GAMACM.CB8082024_Tz2XiNck4U5N");
if (success == false) Console.WriteLine("license errr");
mailman.SmtpHost = "k5lexim01.kr.ds.amkor.com";
mailman.SmtpPort = 25;
mailman.SmtpUsername = "bookmanager";
mailman.SmtpPassword = "BIDA19R=maga2#H9gY[JPx%~M^NyIG";
email = new Chilkat.Email();
email.Subject = subject;
email.SetHtmlBody(body);
email.From = list_from;
foreach (var item in tolist)
email.AddTo(item, item);
//bcc
foreach (var item in bcclist)
email.AddBcc(item, item);
//cc
foreach (var item in cclist)
email.AddCC(item, item);
}
else
{
mc = new System.Net.Mail.SmtpClient("10.101.5.150");
msg = new System.Net.Mail.MailMessage
(list_from,
list_to,
subject,
body);
if (list_bcc != "") msg.Bcc.Add(list_bcc);
if (list_cc != "") msg.CC.Add(list_cc);
msg.IsBodyHtml = true;
}
//success = mailman.SendEmail(email);
if (list_bcc != "") msg.Bcc.Add(list_bcc);
if (list_cc != "") msg.CC.Add(list_cc);
msg.IsBodyHtml = true;
bool msgupdate = false;
try
@@ -1342,8 +1417,26 @@ namespace Console_SendMail
var ucnt = cmd.ExecuteNonQuery();
if (ucnt == 1)
{
mc.Send(msg);
Console.WriteLine($"[{timestr}]-IDX:{idx} [{pdate}] send mail to [" + list_to + "],subject=" + getdbdata(subject));
if (mailman != null)
{
sendsuccess = mailman.SendEmail(email);
}
else
{
try
{
mc.Send(msg);
sendsuccess = true;
}
catch (Exception ex)
{
sendMsg = ex.Message;
msgupdate = true;
sendsuccess = false;
}
}
if (sendsuccess == false) Console.WriteLine("send error");
else Console.WriteLine($"[{timestr}]-IDX:{idx} [{pdate}] send mail to [" + list_to + "],subject=" + getdbdata(subject));
}
}
catch (Exception eX)
@@ -1367,7 +1460,7 @@ namespace Console_SendMail
var ucnt = cmd.ExecuteNonQuery();
}
}
catch(Exception ex)
catch (Exception ex)
{
//sendMsg = eX.Message;
//msgupdate = true;
@@ -1514,9 +1607,9 @@ namespace Console_SendMail
//기준일자는 오늘부터 -15일이다
var sd = DateTime.Now.AddDays(-15);
var ed = DateTime.Now;
var str_sd = sd.ToShortDateString();
var str_ed = ed.ToShortDateString();
var str_dt = DateTime.Now.ToShortDateString();
var str_sd = sd.ToString("yyyy-MM-dd");//ToShortDateString();
var str_ed = ed.ToString("yyyy-MM-dd");//ToShortDateString();
var str_dt = DateTime.Now.ToString("yyyy-MM-dd");// ToShortDateString();
//var gcodelist = db.MailForm.GroupBy(t => t.gcode).ToList();
var cn = DatabaseManager.getCn();
@@ -1628,7 +1721,7 @@ namespace Console_SendMail
newdr.tolist = mail_to;// MailSort(mail_to, MailJD.exceptmail);
newdr.bcc = mail_bcc;
newdr.cc = MailSort(mail_cc, MailJD.exceptmailcc);
newdr.pdate = DateTime.Now.ToShortDateString();
newdr.pdate = DateTime.Now.ToString("yyyy-MM-dd");
newdr.body = mail_content;
newdr.wuid = "dev";// "dev";
newdr.wdate = DateTime.Now;
@@ -1665,7 +1758,7 @@ namespace Console_SendMail
newdr.tolist = "chikyun.kim@amkor.co.kr";
newdr.bcc = string.Empty;
newdr.cc = string.Empty;
newdr.pdate = DateTime.Now.ToShortDateString();
newdr.pdate = DateTime.Now.ToString("yyyy-MM-dd");//ToShortDateString();
newdr.body = ex.Message;
newdr.wuid = "dev";// "dev";
newdr.wdate = DateTime.Now;