Browse Source

調整 CancelBooking API + 訂單相關信件樣式

1. CancelBooking API 寄出通知信給user、supplier
2. BookingStatus = 04(已取消),ModifyDate = now(取消訂單時間)
3. 取消訂單、退款信件樣式
Dev
Janie 2 years ago
parent
commit
ab24d1de25
  1. 388
      EuroTran/EasyBL.WEBAPP/ShowEasy/BookingMail.cs
  2. 139
      EuroTran/EasyBL.WEBAPP/ShowEasy/BookingOnlineService.cs

388
EuroTran/EasyBL.WEBAPP/ShowEasy/BookingMail.cs

@ -1047,6 +1047,151 @@ namespace EasyBL.WEBAPP.SYS
}
//Cancel Booking(User)
public string CancelledBooking(string Img, string LastName, string BookingStatus, string PaymentStatus, string BookingNo, string BookingItem, DateTime? BookingDate, DateTime? ServiceDateS, string CurrencyID, string TotalPrice, string ServiceName)
{
StringBuilder sb = new StringBuilder();
EmailTemplate_CH mailTemplate = new EmailTemplate_CH();
//var Server = Common.ConfigGetValue("", "ida:RedirectUri");
sb.Append(mailTemplate.MailHeader());
sb.Append(mailTemplate.MailCSS());
sb.Append(mailTemplate.MailShowEasyLogo());
//Email Body
sb.Append("<tr>");
sb.Append("<td style = \"padding: 0 50px 0 50px; background-color: #f8f8f8\" class=\"sm-p bar\">");
sb.Append("<table border=\"0\" cellspacing=\"0\" role=\"presentation\" style=\"width: 100%\">");
sb.Append("<tr>");
sb.Append("<td>");
sb.Append("<table border = \"0\" cellpadding = \"0\" cellspacing = \"0\" role = \"presentation\" align = \"left\"> ");
//Text:你好 xxx,
sb.Append("<tr>");
sb.Append("<td bgcolor = \"#FEFEFE\" width = \"340\" style = \"display: block;padding-top: 30px;padding-left: 30px;padding-right: 30px;padding-bottom: 10px;font-family: arial, sans-serif;color: #000000;text-align: left\";>");
sb.Append("<h1 style = \"font-size: 16px;font-family: 'arial', 'sans-serif'; font-weight: 700;line-height: 18px; color: #000000; margin: 0 0 0 0;\">");
sb.Append("你好," + LastName + ",");
sb.Append("</h1>");
sb.Append("</td>");
sb.Append("</tr>");
//Text:我們正在處理您的退款
sb.Append("<tr>");
sb.Append("<td bgcolor = \"#FEFEFE\" width = \"340\" style = \"display: block;padding-left: 30px;padding-right: 30px;padding-bottom: 40px;font-family: arial, sans-serif;color: #000000;text-align: left;\">");
sb.Append("<h1 style=\"font-size: 14px;font-family: 'arial', 'sans-serif'; font-weight: 700; line-height: 18px; color: #9c9c9c;margin: 0 0 0 0;\">");
sb.Append("我們已收到您希望取消訂單的申請。<br />");
sb.Append("<br />");
sb.Append("取消訂單會依據各商品的退款規則,可能需支付退款費用。");
sb.Append("<br />");
sb.Append("<br />");
sb.Append("若有任何問題,您可以");
sb.Append("<br />");
sb.Append("撥打 +886-2 27255000");
sb.Append("<br />");
sb.Append("發送 Email: info@showeasy.com。");
sb.Append("<br />");
sb.Append("<br />");
sb.Append("ShowEasy 客服時間:");
sb.Append("週一至週五:9:00~18:00 (台灣時區)");
sb.Append("</h1>");
sb.Append("</td>");
sb.Append("</tr>");
//Text:訂單資訊
sb.Append("<tr>");
sb.Append("<td bgcolor = \"#FEFEFE\" width = \"340\" width = \"340px\" style = \"display: block;padding-left: 30px;padding-right: 30px;color: #9c9c9c;text-align: left;\">");
sb.Append("<p style = \"font-weight: 400;font-size: 12px;line-height: 14px;letter-spacing: 0.02em;font-family: 'arial', 'sans-serif';margin: 0 0 0px;\" class=\"has-markdown\">");
sb.Append("訂單資訊:");
sb.Append("</p>");
sb.Append("</td>");
sb.Append("</tr>");
//Button:service card start ----------------------------------------------------
sb.Append("<tr style=\"padding: 0 50px 0 50px; background-color: #f8f8f8;border: #f1f1f1; border-radius: 20px;border-width: 1px;\">");
sb.Append("<td bgcolor = \"#FEFEFE\" width=\"340px\" style = \"display: block;padding-top: 25px;padding-left: 30px;padding-right: 30px;color: #9c9c9c;text-align: left;\"> ");
sb.Append("<table>");
sb.Append("<tbody>");
sb.Append("<tr>");
//service img
sb.Append("<td valign=\"top\">");
sb.Append("<img style =\"display: block;padding-right: 10px;\" src = \"/>");
sb.Append(Img);
sb.Append("\" width = '30' height = '30'");
sb.Append("</td>");
//booking status
sb.Append("<td>");
sb.Append("<h1 style =\"font-size: 14px;padding-bottom: 12px;font-family: 'arial','sans-serif';font-weight: 700;line-height: 18px;color: #7997ff;margin: 0 0 0 0;\">");
sb.Append("取消訂單, " + PaymentStatus);
sb.Append("</h1>");
//service name
sb.Append("<h1 style =\"font-size: 14px;padding-bottom: 8px;font-family: 'arial','sans-serif';font-weight: 700;line-height: 18px;color: #232323;margin: 0 0 0 0;\">");
sb.Append(ServiceName);
sb.Append("</h1>");
//booking number
sb.Append("<h1 style =\"font-size: 12px;padding-bottom: 4px;font-family: 'arial','sans-serif';font-weight: 500;line-height: 18px;color: #504f4f;margin: 0 0 0 0;\">");
sb.Append(BookingNo);
sb.Append("</h1>");
//BookingItem
//sb.Append("<h1 style =\"font-size: 12px;padding-bottom: 4px;font-family: 'arial','sans-serif';font-weight: 500;line-height: 18px;color: #504f4f;margin: 0 0 0 0;\">");
//sb.Append("接送服務, 台北市, 四人座車型 x 1");
//sb.Append("</h1>");
var lstT = new List<string>();
var objval = BookingItem.ToString();
if (!string.IsNullOrEmpty(objval) && objval != "[]")
{
lstT = JsonConvert.DeserializeObject<List<string>>(objval.ToString());
}
foreach (var item in lstT)
{
sb.Append("<h1 style =\"padding-bottom: 4px;font-family: 'arial','sans-serif';font-weight: 500;font-size: 12px;line-height: 18px;color: #504f4f;margin: 0 0 0 0;\">");
sb.Append(item);
sb.Append("</h1>");
}
//service time
sb.Append("<h1 style =\"font-size: 12px;padding-bottom: 4px;font-family: 'arial','sans-serif';font-weight: 500;line-height: 18px;color: #504f4f;margin: 0 0 0 0;\">");
sb.Append("服務時間: " + ServiceDateS);
sb.Append("</h1>");
//booking time
sb.Append("<h1 style =\"font-size: 12px;padding-bottom: 8px;font-family: 'arial','sans-serif';font-weight: 500;line-height: 18px;color: #504f4f;margin: 0 0 0 0;\">");
sb.Append("訂購時間: " + BookingDate);
sb.Append("</h1>");
//cost
sb.Append("<h1 style =\"font-size: 14px;padding-bottom: 15px;font-family: 'arial','sans-serif';font-weight: 500;line-height: 18px;color: #f48800;margin: 0 0 0 0;\">");
sb.Append("$" + TotalPrice + CurrencyID);
sb.Append("</h1>");
//sb.Append("<a class=\"s-btn s-btn__primary\" href=\"https://www.showeasy.com\" target=\"_parent\" style=\"width: 88px;background: #f48800;border: 1px solid #ee9546;font-family: arial, sans-serif;font-size: 14px;line-height: 16px;color: #ffffff;text-align: center;text-decoration: none;padding: 12px 20px;display: block;border-radius: 16px;white-space: nowrap;\">");
sb.Append("<a class=\"s-btn s-btn__primary\" href=\"");
sb.Append(GetOrderUrl(BookingNo));
sb.Append("\" target=\"_parent\" style=\"background: #f48800;border: 1px solid #ee9546;font-family: arial, sans-serif;font-size: 14px;line-height: 16px;color: #ffffff;text-align: center;text-decoration: none;padding: 12px 20px;display: block;border-radius: 16px;white-space: nowrap;\">");
sb.Append("查看訂單");
sb.Append("</a>");
sb.Append("</td>");
sb.Append("</tr>");
sb.Append("</tbody>");
sb.Append("</table>");
sb.Append("</td>");
sb.Append("</tr>");
sb.Append("</table>");
sb.Append("</td>");
sb.Append("</tr>");
//如果按鈕無法點擊 (連結記得改成要打的API)
sb.Append("<tr>");
sb.Append("<td bgcolor = \"#FEFEFE\" width = \"340\" width = \"340px\" style = \"display: block;padding-bottom: 30px;padding-top: 30px;padding-left: 30px;padding-right: 30px;color: #9c9c9c;text-align: center;\">");
sb.Append("如果按鈕無法點擊,你可以直接點擊");
sb.Append("<p style = \"font-weight: 400;font-size: 12px;line-height: 14px;letter-spacing: 0.02em;font-family: 'arial', 'sans-serif';margin: 0 0 0px;\" class=\"has-markdown\">");
sb.Append("<a href =\"");
sb.Append(GetOrderUrl(BookingNo));
sb.Append("\" style = \"color: #7997ff;font-size: 12px;font-weight: 400;font-family: 'Arial', '微軟正黑體','Microsoft JhengHei', 'Helvetica Neue',Helvetica, Arial, sans-serif;padding: 0;margin: 0;text-align: center;padding-left: 0px;padding-right: 30px;padding-top: 4px;text-decoration: underline;\">");
sb.Append("<span align=\"center\" width=\"340\">這裡</span>");
sb.Append("</a>");
sb.Append("</p>");
sb.Append("</td>");
sb.Append("</tr>");
sb.Append("</table>");
//sb.Append(mailTemplate.MailButtom());
sb.Append(mailTemplate.MailFooter());
return sb.ToString();
}
//Refunding for customer
public string Refunding()
{
@ -1066,7 +1211,7 @@ namespace EasyBL.WEBAPP.SYS
sb.Append("<tr>");
sb.Append("<td>");
sb.Append("<table border = \"0\" cellpadding = \"0\" cellspacing = \"0\" role = \"presentation\" align = \"left\"> ");
//Text:hi
//Text:你好 xxx,
sb.Append("<tr>");
sb.Append("<td bgcolor = \"#FEFEFE\" width = \"340\" style = \"display: block;padding-top: 30px;padding-left: 30px;padding-right: 30px;padding-bottom: 10px;font-family: arial, sans-serif;color: #000000;text-align: left\";>");
sb.Append("<h1 style = \"font-size: 16px;font-family: 'arial', 'sans-serif'; font-weight: 700;line-height: 18px; color: #000000; margin: 0 0 0 0;\">");
@ -1074,7 +1219,7 @@ namespace EasyBL.WEBAPP.SYS
sb.Append("</h1>");
sb.Append("</td>");
sb.Append("</tr>");
//Text:我們成功收到了你的訂單。
//Text:我們正在處理您的退款
sb.Append("<tr>");
sb.Append("<td bgcolor = \"#FEFEFE\" width = \"340\" style = \"display: block;padding-left: 30px;padding-right: 30px;padding-bottom: 40px;font-family: arial, sans-serif;color: #000000;text-align: left;\">");
sb.Append("<h1 style=\"font-size: 14px;font-family: 'arial', 'sans-serif'; font-weight: 700; line-height: 18px; color: #9c9c9c;margin: 0 0 0 0;\">");
@ -1167,8 +1312,128 @@ namespace EasyBL.WEBAPP.SYS
}
//Refunded for customer
public string Refunded()
{
StringBuilder sb = new StringBuilder();
EmailTemplate_CH mailTemplate = new EmailTemplate_CH();
//var Server = Common.ConfigGetValue("", "ida:RedirectUri");
sb.Append(mailTemplate.MailHeader());
sb.Append(mailTemplate.MailCSS());
sb.Append(mailTemplate.MailShowEasyLogo());
//Email Body
sb.Append("<tr>");
sb.Append("<td style = \"padding: 0 50px 0 50px; background-color: #f8f8f8\" class=\"sm-p bar\">");
sb.Append("<table border=\"0\" cellspacing=\"0\" role=\"presentation\" style=\"width: 100%\">");
sb.Append("<tr>");
sb.Append("<td>");
sb.Append("<table border = \"0\" cellpadding = \"0\" cellspacing = \"0\" role = \"presentation\" align = \"left\"> ");
//Text:您好,xxx
sb.Append("<tr>");
sb.Append("<td bgcolor = \"#FEFEFE\" width = \"340\" style = \"display: block;padding-top: 30px;padding-left: 30px;padding-right: 30px;padding-bottom: 10px;font-family: arial, sans-serif;color: #000000;text-align: left\";>");
sb.Append("<h1 style = \"font-size: 16px;font-family: 'arial', 'sans-serif'; font-weight: 700;line-height: 18px; color: #000000; margin: 0 0 0 0;\">");
sb.Append("你好,Janie,");
sb.Append("</h1>");
sb.Append("</td>");
sb.Append("</tr>");
//Text:我們已成功退款。
sb.Append("<tr>");
sb.Append("<td bgcolor = \"#FEFEFE\" width = \"340\" style = \"display: block;padding-left: 30px;padding-right: 30px;padding-bottom: 40px;font-family: arial, sans-serif;color: #000000;text-align: left;\">");
sb.Append("<h1 style=\"font-size: 14px;font-family: 'arial', 'sans-serif'; font-weight: 700; line-height: 18px; color: #9c9c9c;margin: 0 0 0 0;\">");
sb.Append("我們已成功退款。<br />");
sb.Append("<br />");
sb.Append("若有任何問題,您可以下兩種方式與我們聯繫:<br />");
sb.Append("撥打 +886-2 27255000 <br />");
sb.Append("發送 Email: info@showeasy.com 。<br />");
sb.Append("<br />");
sb.Append("ShowEasy 客服時間:");
sb.Append("週一至週五:9:00~18:00 (台灣時區)");
sb.Append("</h1>");
sb.Append("</td>");
sb.Append("</tr>");
//Text:訂單資訊
sb.Append("<tr>");
sb.Append("<td bgcolor = \"#FEFEFE\" width = \"340\" width = \"340px\" style = \"display: block;padding-left: 30px;padding-right: 30px;color: #9c9c9c;text-align: left;\">");
sb.Append("<p style = \"font-weight: 400;font-size: 12px;line-height: 14px;letter-spacing: 0.02em;font-family: 'arial', 'sans-serif';margin: 0 0 0px;\" class=\"has-markdown\">");
sb.Append("訂單資訊:");
sb.Append("</p>");
sb.Append("</td>");
sb.Append("</tr>");
//Button:service card start ----------------------------------------------------
sb.Append("<tr style=\"padding: 0 50px 0 50px; background-color: #f8f8f8;border: #f1f1f1; border-radius: 20px;border-width: 1px;\">");
sb.Append("<td bgcolor = \"#FEFEFE\" width=\"340px\" style = \"display: block;padding-top: 25px;padding-left: 30px;padding-right: 30px;color: #9c9c9c;text-align: left;\"> ");
sb.Append("<table>");
sb.Append("<tbody>");
sb.Append("<tr>");
//service img
sb.Append("<td valign=\"top\">");
sb.Append("<img style =\"display: block;padding-right: 10px;\" src = \"https://d3kpqi6h465b7i.cloudfront.net/email/icon-facebook.png\" width = '30' height = '30'/>");
sb.Append("</td>");
//booking status
sb.Append("<td>");
sb.Append("<h1 style =\"font-size: 14px;padding-bottom: 12px;font-family: 'arial','sans-serif';font-weight: 700;line-height: 18px;color: #7997ff;margin: 0 0 0 0;\">");
sb.Append("等待確認中");
sb.Append("</h1>");
//service name
sb.Append("<h1 style =\"font-size: 14px;padding-bottom: 8px;font-family: 'arial','sans-serif';font-weight: 700;line-height: 18px;color: #232323;margin: 0 0 0 0;\">");
sb.Append("包車遊覽|新北景點一日遊:九份&平溪&北海岸");
sb.Append("</h1>");
//booking number
sb.Append("<h1 style =\"font-size: 12px;padding-bottom: 4px;font-family: 'arial','sans-serif';font-weight: 500;line-height: 18px;color: #504f4f;margin: 0 0 0 0;\">");
sb.Append("#B35553244AC");
sb.Append("</h1>");
sb.Append("<h1 style =\"font-size: 12px;padding-bottom: 4px;font-family: 'arial','sans-serif';font-weight: 500;line-height: 18px;color: #504f4f;margin: 0 0 0 0;\">");
sb.Append("接送服務, 台北市, 四人座車型 x 1");
sb.Append("</h1>");
//service time
sb.Append("<h1 style =\"font-size: 12px;padding-bottom: 4px;font-family: 'arial','sans-serif';font-weight: 500;line-height: 18px;color: #504f4f;margin: 0 0 0 0;\">");
sb.Append("服務時間: 2022.09.20 08:00 (當地時間)");
sb.Append("</h1>");
//booking time
sb.Append("<h1 style =\"font-size: 12px;padding-bottom: 8px;font-family: 'arial','sans-serif';font-weight: 500;line-height: 18px;color: #504f4f;margin: 0 0 0 0;\">");
sb.Append("訂購時間: 2022.07.20 12:00");
sb.Append("</h1>");
//cost
sb.Append("<h1 style =\"font-size: 14px;padding-bottom: 15px;font-family: 'arial','sans-serif';font-weight: 500;line-height: 18px;color: #f48800;margin: 0 0 0 0;\">");
sb.Append("$3,500 台幣");
sb.Append("</h1>");
sb.Append("<a class=\"s-btn s-btn__primary\" href=\"https://www.showeasy.com\" target=\"_parent\" style=\"width: 88px;background: #f48800;border: 1px solid #ee9546;font-family: arial, sans-serif;font-size: 14px;line-height: 16px;color: #ffffff;text-align: center;text-decoration: none;padding: 12px 20px;display: block;border-radius: 16px;white-space: nowrap;\">");
sb.Append("$3,500 台幣");
sb.Append("</a>");
sb.Append("</td>");
sb.Append("</tr>");
sb.Append("</tbody>");
sb.Append("</table>");
sb.Append("</td>");
sb.Append("</tr>");
sb.Append("</table>");
sb.Append("</td>");
sb.Append("</tr>");
//如果按鈕無法點擊 (連結記得改成要打的API)
sb.Append("<tr>");
sb.Append("<td bgcolor = \"#FEFEFE\" width = \"340\" width = \"340px\" style = \"display: block;padding-bottom: 30px;padding-top: 30px;padding-left: 30px;padding-right: 30px;color: #9c9c9c;text-align: center;\">");
sb.Append("<p style = \"font-weight: 400;font-size: 12px;line-height: 14px;letter-spacing: 0.02em;font-family: 'arial', 'sans-serif';margin: 0 0 0px;\" class=\"has-markdown\">");
sb.Append("如果按鈕無法點擊,你可以直接點擊");
sb.Append("<a href =\"");
sb.Append("\" style = \"color: #7997ff;font-size: 12px;font-weight: 400;font-family: 'Arial', '微軟正黑體','Microsoft JhengHei', 'Helvetica Neue',Helvetica, Arial, sans-serif;padding: 0;margin: 0;text-align: center;padding-left: 0px;padding-right: 30px;padding-top: 4px;text-decoration: underline;\">");
sb.Append("<span align=\"center\" width=\"340\">這裡</span>");
sb.Append("</a>");
sb.Append("</p>");
sb.Append("</td>");
sb.Append("</tr>");
sb.Append("</table>");
//sb.Append(mailTemplate.MailButtom());
sb.Append(mailTemplate.MailFooter());
return sb.ToString();
}
//Cancel Order Notify (SE/Supplier)
private string CheckPaymentStatus(string FirstName, string LastName, string BookingNo, string Amount, DateTime? date)
public string CancelOrderNotify(string BookingNo, string ServiceName, string FirstName, string LastName, string CurrencyID, string TotalPrice, DateTime? date)
{
StringBuilder sb = new StringBuilder();
@ -1186,7 +1451,7 @@ namespace EasyBL.WEBAPP.SYS
sb.Append("<tr>");
sb.Append("<td>");
sb.Append("<table border = \"0\" cellpadding = \"0\" cellspacing = \"0\" role = \"presentation\" align = \"left\"> ");
//Text:您好,Janie,
//Text:客戶取消訂單!
sb.Append("<tr>");
sb.Append("<td bgcolor = \"#FEFEFE\" width = \"340\" style = \"display: block;padding-top: 30px;padding-left: 30px;padding-right: 30px;adding-bottom: 10px;font-family: arial, sans-serif;color: #000000;text-align: left\";>");
sb.Append("<h1 style = \"font-family: 'arial', 'sans-serif'; font-weight: 700; font-size: 16px; line-height: 18px; color: #000000; margin: 0 0 0 0;\">");
@ -1194,7 +1459,7 @@ namespace EasyBL.WEBAPP.SYS
sb.Append("</h1>");
sb.Append("</td>");
sb.Append("</tr>");
//Text:我們已經成功收到你的付款
//Text:您的客戶已取消訂單,請進行確認並進行退款流程
sb.Append("<tr>");
sb.Append("<td bgcolor = \"#FEFEFE\" width = \"340\" style = \"display: block;padding-top: 10px;padding-left: 30px;padding-right: 30px;padding-bottom: 30px;font-family: arial, sans-serif;color: #000000;text-align: left;\">");
sb.Append("<p style = \"font-weight: 400;font-size: 12px;line-height: 14px;letter-spacing: 0.02em;font-family: 'arial', 'sans-serif';margin: 0 0 0px;\" class=\"has-markdown\">");
@ -1213,6 +1478,119 @@ namespace EasyBL.WEBAPP.SYS
sb.Append("<tr>");
sb.Append("<td bgcolor = \"#FEFEFE\" width = \"340\" width = \"340px\" style = \"display: block;padding-top: 10px;padding-left: 30px;padding-right: 30px;color: #504f4f;text-align: left;\">");
sb.Append("<p style = \"font-weight: 400;font-size: 12px;line-height: 14px;letter-spacing: 0.02em;font-family: 'arial', 'sans-serif';margin: 0 0 0px;\" class=\"has-markdown\">");
sb.Append(ServiceName);
sb.Append("</p>");
sb.Append("</td>");
//客戶名稱
sb.Append("<tr>");
sb.Append("<td bgcolor = \"#FEFEFE\" width = \"340\" width = \"340px\" style = \"display: block;padding-top: 10px;padding-left: 30px;padding-right: 30px;color: #504f4f;text-align: left;\">");
sb.Append("<p style = \"font-weight: 400;font-size: 12px;line-height: 14px;letter-spacing: 0.02em;font-family: 'arial', 'sans-serif';margin: 0 0 0px;\" class=\"has-markdown\">");
sb.Append("客戶名稱: " + FirstName + " " + LastName);
sb.Append("</p>");
sb.Append("</td>");
//訂單金額
sb.Append("<tr>");
sb.Append("<td bgcolor = \"#FEFEFE\" width = \"340\" width = \"340px\" style = \"display: block;padding-top: 10px;padding-left: 30px;padding-right: 30px;color: #504f4f;text-align: left;\">");
sb.Append("<p style = \"font-weight: 400;font-size: 12px;line-height: 14px;letter-spacing: 0.02em;font-family: 'arial', 'sans-serif';margin: 0 0 0px;\" class=\"has-markdown\">");
sb.Append("訂單金額: " + CurrencyID + " " + TotalPrice);
sb.Append("</p>");
sb.Append("</td>");
//取消日期
sb.Append("<tr>");
sb.Append("<td bgcolor = \"#FEFEFE\" width = \"340\" width = \"340px\" style = \"display: block;padding-top: 10px;padding-left: 30px;padding-right: 30px;padding-bottom: 30px;color: #504f4f;text-align: left;\">");
sb.Append("<p style = \"font-weight: 400;font-size: 12px;line-height: 14px;letter-spacing: 0.02em;font-family: 'arial', 'sans-serif';margin: 0 0 0px;\" class=\"has-markdown\">");
sb.Append("取消日期" + date);
sb.Append("</p>");
sb.Append("</td>");
sb.Append("</tr>");
sb.Append("</tr>");
//查看訂單按鈕
sb.Append("<tr>");
sb.Append("<td bgcolor =\"#FEFEFE\" style =\"display: block;padding-top: 30px;font-family: arial, sans-serif;color: #232323;text-align: left;\">");
sb.Append("<table align =\"center\" border = \"0\" cellpadding = \"0\" cellspacing = \"0\" role = \"presentation\">");
sb.Append("<tr>");
sb.Append("<td class=\"s-btn s-btn__primary\" style=\"border-radius: 16px; background: #ee9546\">");
sb.Append("<a class=\"s-btn s-btn__primary\" href=\"");
sb.Append(GetOrderUrl(BookingNo));
sb.Append("\" target=\"_parent\" style=\"background: #f48800;border: 1px solid #ee9546;font-family: arial, sans-serif;font-size: 14px;line-height: 16px;color: #ffffff;text-align: center;text-decoration: none;padding: 12px 20px;display: block;border-radius: 16px;white-space: nowrap;\">");
sb.Append("查看訂單");
sb.Append("</a>");
sb.Append("</td>");
sb.Append("</tr>");
sb.Append("</tbody>");
sb.Append("</table>");
sb.Append("</td>");
sb.Append("</tr>");
sb.Append("</table>");
sb.Append("</td>");
sb.Append("</tr>");
//如果按鈕無法點擊 (連結記得改成要打的API)
sb.Append("<tr>");
sb.Append("<td bgcolor = \"#FEFEFE\" width = \"340\" width = \"340px\" style = \"display: block;padding-bottom: 30px;padding-top: 30px;padding-left: 30px;padding-right: 30px;color: #9c9c9c;text-align: center;\">");
sb.Append("如果按鈕無法點擊,你可以直接點擊");
sb.Append("<p style = \"font-weight: 400;font-size: 12px;line-height: 14px;letter-spacing: 0.02em;font-family: 'arial', 'sans-serif';margin: 0 0 0px;\" class=\"has-markdown\">");
sb.Append("<a href =\"");
sb.Append(GetOrderUrl(BookingNo));
sb.Append("\" style = \"color: #7997ff;font-size: 12px;font-weight: 400;font-family: 'Arial', '微軟正黑體','Microsoft JhengHei', 'Helvetica Neue',Helvetica, Arial, sans-serif;padding: 0;margin: 0;text-align: center;padding-left: 0px;padding-right: 30px;padding-top: 4px;text-decoration: underline;\">");
sb.Append("<span align=\"center\" width=\"340\">這裡</span>");
sb.Append("</a>");
sb.Append("</p>");
sb.Append("</td>");
sb.Append("</tr>");
sb.Append("</table>");
//sb.Append(mailTemplate.MailButtom());
sb.Append(mailTemplate.MailFooter());
return sb.ToString();
}
//SE Cancel Order Notify
public string SECancelOrderNotify(string FirstName, string LastName, string BookingNo, string Amount, DateTime? date)
{
StringBuilder sb = new StringBuilder();
EmailTemplate_CH mailTemplate = new EmailTemplate_CH();
var Server = Common.ConfigGetValue("", "ida:RedirectUri");
sb.Append(mailTemplate.MailHeader());
sb.Append(mailTemplate.MailCSS());
sb.Append(mailTemplate.MailShowEasyLogo());
//Email Body
sb.Append("<tr>");
sb.Append("<td style = \"padding: 0 50px 0 50px; background-color: #f8f8f8\" class=\"sm-p bar\">");
sb.Append("<table border=\"0\" cellspacing=\"0\" role=\"presentation\" style=\"width: 100%\">");
sb.Append("<tr>");
sb.Append("<td>");
sb.Append("<table border = \"0\" cellpadding = \"0\" cellspacing = \"0\" role = \"presentation\" align = \"left\"> ");
//Text:客戶取消訂單!
sb.Append("<tr>");
sb.Append("<td bgcolor = \"#FEFEFE\" width = \"340\" style = \"display: block;padding-top: 30px;padding-left: 30px;padding-right: 30px;adding-bottom: 10px;font-family: arial, sans-serif;color: #000000;text-align: left\";>");
sb.Append("<h1 style = \"font-family: 'arial', 'sans-serif'; font-weight: 700; font-size: 16px; line-height: 18px; color: #000000; margin: 0 0 0 0;\">");
sb.Append("客戶取消訂單!");
sb.Append("</h1>");
sb.Append("</td>");
sb.Append("</tr>");
//Text:ShowEasy 已取消此訂單,請進行確認並進行退款流程。
sb.Append("<tr>");
sb.Append("<td bgcolor = \"#FEFEFE\" width = \"340\" style = \"display: block;padding-top: 10px;padding-left: 30px;padding-right: 30px;padding-bottom: 30px;font-family: arial, sans-serif;color: #000000;text-align: left;\">");
sb.Append("<p style = \"font-weight: 400;font-size: 12px;line-height: 14px;letter-spacing: 0.02em;font-family: 'arial', 'sans-serif';margin: 0 0 0px;\" class=\"has-markdown\">");
sb.Append("ShowEasy 已取消此訂單,請進行確認並進行退款流程。");
sb.Append("</p>");
sb.Append("</td>");
sb.Append("</tr>");
//訂單編號
sb.Append("<tr>");
sb.Append("<td bgcolor = \"#FEFEFE\" width = \"340\" width = \"340px\" style = \"display: block;padding-top: 20px;padding-left: 30px;padding-right: 30px;color: #504f4f;text-align: left;\">");
sb.Append("<p style = \"font-weight: 400;font-size: 12px;line-height: 14px;letter-spacing: 0.02em;font-family: 'arial', 'sans-serif';margin: 0 0 0px;\" class=\"has-markdown\">");
sb.Append("訂單編號: " + BookingNo);
sb.Append("</p>");
sb.Append("</td>");
//商品名稱
sb.Append("<tr>");
sb.Append("<td bgcolor = \"#FEFEFE\" width = \"340\" width = \"340px\" style = \"display: block;padding-top: 10px;padding-left: 30px;padding-right: 30px;color: #504f4f;text-align: left;\">");
sb.Append("<p style = \"font-weight: 400;font-size: 12px;line-height: 14px;letter-spacing: 0.02em;font-family: 'arial', 'sans-serif';margin: 0 0 0px;\" class=\"has-markdown\">");
sb.Append("台灣展館服務 - 高雄自動化展");
sb.Append("</p>");
sb.Append("</td>");

139
EuroTran/EasyBL.WEBAPP/ShowEasy/BookingOnlineService.cs

@ -397,15 +397,111 @@ namespace EasyBL.WEBAPP.SYS
do
{
var db = SugarBase.DB;
var Booking = db.Updateable<SETB_SAL_BookingOnline>() //更新訂單狀態
.UpdateColumns(x => new SETB_SAL_BookingOnline { BookingStatus = "04" })
var Img = "";
var sPayment = "";
var changeBookingStatus = db.Updateable<SETB_SAL_BookingOnline>() //更新訂單狀態
.UpdateColumns(x => new SETB_SAL_BookingOnline { BookingStatus = "04", ModifyDate = DateTime.Now })
.Where(x => x.BookingID == BookingID && x.Account == sAccount && x.LangType == Lang)
.ExecuteCommand();
var sUser = db.Queryable<SETB_CMS_Member>() //get Member info
.Where(x => x.Account == sAccount)
.Single();
var booking = db.Queryable<SETB_SAL_BookingOnline>() //get Booking info
.Where(x => x.Account == sAccount && x.BookingID == BookingID)
.Single();
var service = db.Queryable<SETB_PDT_ONSiteBaseInfo>() //get Service info
.Where(x => x.ServiceID == booking.ServiceID && x.LangID == Lang)
.Single();
service.PreviewFile = GetPreviewFile(service.PreviewFile);
var supplier = db.Queryable<SETB_SCM_Supplier>() //get Supplier info
.Where(x => x.SupplierID == service.SupplierID && x.LangType == Lang)
.Single();
var supplierMail = db.Queryable<SETB_SCM_SupplierContactor>() //get Supplier Mail
.Where(x => x.SupplierID == service.SupplierID && x.LangType == Lang)
.Single();
//var img = db.Queryable<OTB_SYS_Files>() //get img info
//.Where(x => x.ParentID == sAccount && x.ParentID == service.PreviewFile)
//.Single();
if (!string.IsNullOrEmpty(booking.PaymentStatus))
{
if (booking.PaymentStatus == "01")
{
sPayment = "未付清";
}
else if (booking.PaymentStatus == "02")
{
sPayment = "已付款待確認";
}
else if (booking.PaymentStatus == "03")
{
sPayment = "確認付款";
}
else if (booking.PaymentStatus == "04")
{
sPayment = "退款中";
}
else
{
sPayment = "已退款";
}
}
var OrgID = WebAppGlobalConstWord.TG_ORGID;
if (sUser != null)
{
}
//寄信給User
var oEmail = new Emails(); //寄件人
var toEmail = new List<EmailTo>(); //收件人
var oEmailTo = new EmailTo //收件人資訊
{
ToUserID = sUser.MemberID,
ToUserName = sUser.LastName,
ToEmail = sUser.Email,
Type = "to"
};
toEmail.Add(oEmailTo);
oEmail.FromUserName = "訂單取消通知"; //取fonfig
oEmail.Title = "訂單取消通知"; //取fonfig
oEmail.EmailBody = new BookingMail().CancelledBooking(service.PreviewFile, sUser.LastName, booking.BookingStatus, sPayment, booking.BookingNo, booking.BookingItem, booking.BookingDate, booking.ServiceDateS, booking.CurrencyID, booking.TotalPrice, service.ServiceName);
oEmail.IsCCSelf = false;
oEmail.Attachments = null;
oEmail.EmailTo = toEmail;
var bSend = new MailService(OrgID, true).MailFactory(oEmail, out sError);
//寄信給Supplier
oEmail = new Emails(); //寄件人
toEmail = new List<EmailTo>(); //收件人
oEmailTo = new EmailTo //收件人資訊
{
ToUserID = sUser.MemberID,
ToUserName = sUser.LastName,
ToEmail = sUser.Email,
Type = "to"
};
toEmail.Add(oEmailTo);
oEmail.FromUserName = "訂單取消通知"; //取fonfig
oEmail.Title = "訂單取消通知"; //取fonfig
oEmail.EmailBody = new BookingMail().CancelOrderNotify(booking.BookingNo, service.ServiceName, sUser.FirstName, sUser.LastName, booking.CurrencyID, booking.TotalPrice, booking.ModifyDate);
oEmail.IsCCSelf = false;
oEmail.Attachments = null;
oEmail.EmailTo = toEmail;
bSend = new MailService(OrgID, true).MailFactory(oEmail, out sError);
//返回token信息
srm = new SuccessResponseMessage(null, null);
srm.DATA.Add(BLWording.REL, Booking);
srm.DATA.Add(BLWording.REL, bSend);
} while (false);
}
@ -609,7 +705,44 @@ namespace EasyBL.WEBAPP.SYS
}
//取得封面圖片
public string GetPreviewFile(string PreviewFile)
{
var sFilePath = "";
var db = SugarBase.GetIntance();
try
{
do
{
var sORIGID = WebAppGlobalConstWord.TG_ORGID;
string requestUrl = Common.ConfigGetValue("", "ida:RedirectUri");
var oFilePath = db.Queryable<OTB_SYS_Files>()
.Where(x => x.ParentID == PreviewFile && x.OrgID == sORIGID)
.Select(x => new FileDTO
{
FileID = x.FileID,
FileName = x.FileName,
FilePath = x.FilePath
})
.Single();
if (oFilePath != null)
{
sFilePath = requestUrl + "/" + oFilePath.FilePath.Replace("\\", "/");
}
return sFilePath;
} while (false);
}
catch (Exception ex)
{
}
return sFilePath;
}
}

Loading…
Cancel
Save