public void ActivateElectronicSendMailToCustomer(SOInfo soInfo) { try { ECCentral.BizEntity.Customer.CustomerBasicInfo customerInfo = GetCustomerBaseInfo(soInfo.BaseInfo.CustomerSysNo.Value); string customerEmail = customerInfo.Email == null ? null : customerInfo.Email.Trim(); if (customerEmail == null) { return; } KeyValueVariables keyValueVariables = new KeyValueVariables(); keyValueVariables.Add("CustomerID", customerInfo.CustomerID); keyValueVariables.Add("Quantity", soInfo.Items[0].Quantity); keyValueVariables.Add("TotalAmount", (soInfo.Items[0].Quantity.Value * soInfo.Items[0].OriginalPrice.Value).ToString(SOConst.DecimalFormat)); keyValueVariables.Add("ExpireYear", DateTime.Now.AddYears(2).Year); keyValueVariables.Add("ExpireMonth", DateTime.Now.Month); keyValueVariables.Add("ExpireDay", DateTime.Now.Day); keyValueVariables.Add("NowYear", DateTime.Now.Year); ExternalDomainBroker.SendExternalEmail(customerEmail, "SO_ActivateElectronicGiftCard", keyValueVariables, customerInfo.FavoriteLanguageCode); } catch (Exception ex) { ExceptionHelper.HandleException(ex); } }
/// <summary> /// 退款转礼品卡成功则像客户发送一封邮件 /// </summary> /// <param name="entity"></param> /// <param name="giftCardResultCode"></param> protected virtual void SendGiftCardEmail(SOIncomeRefundInfo entity, string giftCardResultCode) { int code = 0; if (int.TryParse(giftCardResultCode, out code) && code == 0) { var customer = ExternalDomainBroker.GetCustomerBasicInfo(entity.CustomerSysNo.Value); KeyValueVariables vars = new KeyValueVariables(); vars.Add("CustomerID", customer.CustomerID); vars.Add("TotalValue", entity.RefundCashAmt.Value); vars.Add("ExpireYear", DateTime.Now.AddYears(2).Year); vars.Add("ExpireMonth", DateTime.Now.Month); vars.Add("ExpireDay", DateTime.Now.Day); vars.Add("Year", DateTime.Now.Year); EmailHelper.SendEmailByTemplate(customer.Email, "Refund_GiftCard_Notify", vars, true, customer.FavoriteLanguageCode); } else { //记录操作日志 ObjectFactory<ICommonBizInteract>.Instance.CreateOperationLog( GetMessageString("SOIncomeRefund_Log_GiftCardRefundFailed", entity.SOSysNo.Value) , BizLogType.AuditRefund_Update , entity.SysNo.Value , entity.CompanyCode); ThrowBizException("SOIncomeRefund_Log_GiftCardRefundFailed", entity.SOSysNo.Value); } }
public void BuildData(NameValueCollection requestPostData, out KeyValueVariables variables, out KeyTableVariables tableVariables) { variables = new KeyValueVariables(); tableVariables = new KeyTableVariables(); if (requestPostData != null) { variables.Add("TotalAmount", HttpUtility.UrlDecode(requestPostData["TotalAmount"])); } int count; DataTable dataTable = new DataTable(); dataTable.Columns.Add("VendorName"); dataTable.Columns.Add("InvoiceTime"); dataTable.Columns.Add("InputTime"); dataTable.Columns.Add("TotalAmt"); dataTable.Columns.Add("InvoiceNumber"); if (int.TryParse(requestPostData["InvoiceCount"], out count)) { DataRow row; for (int i = 0; i < count; i++) { row = dataTable.NewRow(); row["VendorName"] = HttpUtility.UrlDecode(requestPostData["V" + i]); row["InvoiceTime"] = HttpUtility.UrlDecode(requestPostData["I" + i]); row["InputTime"] = HttpUtility.UrlDecode(requestPostData["T" + i]); row["TotalAmt"] = HttpUtility.UrlDecode(requestPostData["A" + i]); row["InvoiceNumber"] = HttpUtility.UrlDecode(requestPostData["N" + i]); dataTable.Rows.Add(row); } } tableVariables.Add("InvoiceDetailList", dataTable); }
public void BuildData(System.Collections.Specialized.NameValueCollection requestPostData, out KeyValueVariables variables, out KeyTableVariables tableVariables) { variables = new KeyValueVariables(); tableVariables = new KeyTableVariables(); string param = requestPostData["ConsignSysNo"]; int ConsignSysNo = 0; DataTable table = CreatePrintData(); DataTable errorTable = new DataTable(); try { if (!int.TryParse(param, out ConsignSysNo)) { throw new BizException(string.Format("非法的结算单号{0}", param)); } InitData(ConsignSysNo, table); } catch (BizException ex) { InitErrorTable(ex, errorTable); } tableVariables.Add("Error", errorTable); tableVariables.Add("ConsignLeasePrint", table); }
public void BuildData(System.Collections.Specialized.NameValueCollection requestPostData, out KeyValueVariables variables, out KeyTableVariables tableVariables) { variables = new KeyValueVariables(); tableVariables = new KeyTableVariables(); string param = requestPostData["GroupSysNo"]; int GroupSysNo = 0; DataTable table = CreatePrintData(); DataTable errorTable = new DataTable(); try { if (!int.TryParse(param, out GroupSysNo)) { throw new BizException(string.Format(ResouceManager.GetMessageString("MKT.Promotion.GroupBuying", "GroupBuying_IllegalGroupID"), param)); } InitData(GroupSysNo, table); } catch (BizException ex) { InitErrorTable(ex, errorTable); } tableVariables.Add("Error", errorTable); tableVariables.Add("ConsignLeasePrint", table); }
/// <summary> /// 操作人、 /// 处理的订单总数量、 /// 已解决的订单数量、 /// 未解决的订单数量、 /// 解决率(已解决的数量/订单总数量*100%) /// </summary> /// <param name="reports"></param> void SendMail(List <InternalMemoReport> reports) { KeyValueVariables replaceContent = new KeyValueVariables(); replaceContent.AddKeyValue("#Time#", DateTime.Now.ToString()); DataTable tableList = new DataTable(); tableList.Columns.AddRange(new DataColumn[] { new DataColumn("UserName"), new DataColumn("Count"), new DataColumn("ResolvedCount"), new DataColumn("UnResolvedCount"), new DataColumn("ResolvedRate") }); foreach (var item in reports) { tableList.Rows.Add(item.UserName, item.Count, item.ResolvedCount, item.UnResolvedCount, item.ResolvedRate); } KeyTableVariables tableContent = new KeyTableVariables(); tableContent.Add("tbData", tableList); ExternalDomainBroker.SendEmail(m_emailTO, m_emailCC, "", "SO_InternalMemoReport", replaceContent, tableContent, false, true); }
private void SendVoidMail(string customerEmail) { KeyValueVariables vars = new KeyValueVariables(); vars.Add("Year", DateTime.Now.Year); ECCentral.Service.Utility.EmailHelper.SendEmailByTemplate(customerEmail, "CustomerGift_Void", vars, false); }
/// <summary> /// 发送投诉邮件通知 /// </summary> /// <param name="complainSysNo">投诉单号</param> public void SendMain(int complainSysNo) { var info = GetInfo(complainSysNo); //更新操作人 info.ProcessInfo.OperatorSysNo = ServiceContext.Current.UserSysNo; m_da.UpdateCompainOperatorUser(info.ProcessInfo); //发送邮件 KeyValueVariables vars = new KeyValueVariables(); vars.Add("Title", info.ComplaintCotentInfo.Subject); vars.Add("SysNo", info.ComplaintCotentInfo.SysNo); vars.Add("Content", info.ProcessInfo.ReplyContent.Replace(Environment.NewLine, "<BR/>")); CustomerInfo customerInfo = null; if (info.ComplaintCotentInfo.CustomerSysNo.HasValue) { customerInfo = ExternalDomainBroker.GetCustomerInfo(info.ComplaintCotentInfo.CustomerSysNo.Value); } if (customerInfo != null) { ExternalDomainBroker.SendExternalEmail(customerInfo.BasicInfo.Email, "SO_ReplyComplainEmail", vars, customerInfo.BasicInfo.FavoriteLanguageCode); } //写入日志 AddHistory(info, ReplyOperatorType.SendMain); }
public void BuildData(NameValueCollection requestPostData, out KeyValueVariables variables, out KeyTableVariables tableVariables) { variables = new KeyValueVariables(); tableVariables = new KeyTableVariables(); string sysNo = requestPostData["SysNo"]; if (!string.IsNullOrEmpty(sysNo)) { int refundSysNo; if (int.TryParse(sysNo, out refundSysNo)) { var refundInfo = GetRefundInfo(refundSysNo); decimal?totalAmt = refundInfo.Items.Sum(p => { if (!p.IsPoint) { return(p.TotalAmount); } return(0); }); if (refundInfo.CashAmount != null && refundInfo.CashAmount != 0) { variables.Add("JsFunction", "sf();"); variables.Add("SOSysNo", refundInfo.SOSysNo); variables.Add("Now", DateTime.Now.ToShortDateString()); variables.Add("AuditUserName", refundInfo.AuditUserName); variables.Add("ReceiveName", refundInfo.ReceiveName); variables.Add("CustomerSysNo", refundInfo.CustomerSysNo); variables.Add("CustomerName", refundInfo.CustomerName); variables.Add("ReceiveAddress", refundInfo.ReceiveAddress); variables.Add("ReceivePhone", refundInfo.ReceivePhone); variables.Add("InvoiceNote", refundInfo.InvoiceNote); variables.Add("PayTypeName", refundInfo.PayTypeName); variables.Add("ShipTypeName", refundInfo.ShipTypeName); variables.Add("RefundID", refundInfo.RefundID); variables.Add("TotalAmount", ToLowerChineseMoney(totalAmt.Value)); variables.Add("ChineseTotalAmount", ToUpperChineseMoney(totalAmt.Value)); } DataTable t = new DataTable(); t.Columns.Add("ProductID"); t.Columns.Add("ProductName"); t.Columns.Add("PrintPrice"); t.Columns.Add("PrintQuantity"); t.Columns.Add("PrintTotalAmount"); if (refundInfo.Items != null) { refundInfo.Items.ForEach(p => { t.Rows.Add(p.ProductID, p.ProductName, p.Price, p.Quantity, p.PrintTotalAmount); }); } tableVariables.Add("RefundItems", t); } } }
public void PriceChangedSendMail(SOInfo soInfo) { try { List <SOInternalMemoInfo> memoList = ObjectFactory <SOInternalMemoProcessor> .Instance.GetBySOSysNo(soInfo.SysNo.Value); List <int> productSysNoList = (from item in soInfo.Items select item.ProductSysNo.Value).ToList(); List <ECCentral.BizEntity.IM.ProductInfo> productList = ExternalDomainBroker.GetProductInfoListByProductSysNoList(productSysNoList); if (productList != null) { DataTable dtMemo = new DataTable(); dtMemo.Columns.AddRange(new DataColumn[] { new DataColumn("LogTime"), new DataColumn("Content"), new DataColumn("Note") }); productList.ForEach(p => { SOItemInfo item = soInfo.Items.Find(i => i.ProductSysNo.Value == p.SysNo); if (item != null) { KeyValueVariables keyValueVariables = new KeyValueVariables(); KeyTableVariables keyTableVariables = new KeyTableVariables(); string pmEmailAddress = p.ProductBasicInfo.ProductManager.UserInfo.EmailAddress; StringBuilder mailBody = new StringBuilder(); keyValueVariables.Add("SOSysNo", soInfo.SysNo.Value); keyValueVariables.Add("ProductID", item.ProductID); keyValueVariables.Add("ProductName", item.ProductName); keyValueVariables.Add("Quantity", item.Quantity); keyValueVariables.Add("Weight", item.Weight); keyValueVariables.Add("Price", item.Price); keyValueVariables.Add("GainAveragePoint", item.GainAveragePoint); keyValueVariables.Add("PromotionAmount", item.PromotionAmount); keyValueVariables.Add("Warranty", item.Warranty); if (memoList != null && memoList.Count > 0 && dtMemo.Rows.Count == 0) { foreach (SOInternalMemoInfo internalMemo in memoList) { DataRow dr = dtMemo.NewRow(); dr["LogTime"] = internalMemo.LogTime.HasValue ? internalMemo.LogTime.Value.ToString(SOConst.DateTimeFormat) : String.Empty; dr["Content"] = internalMemo.Content; dr["Note"] = internalMemo.Note; dtMemo.Rows.Add(dr); } } keyValueVariables.Add("MemoListDisplay", dtMemo.Rows.Count > 0); keyTableVariables.Add("MemoList", dtMemo); ExternalDomainBroker.SendInternalEmail("SO_Product_PriceChanged", keyValueVariables, keyTableVariables); } }); } } catch (Exception ex) { ExceptionHelper.HandleException(ex); } }
public void ElectronicSOPriceNotExists(SOInfo soInfo) { KeyValueVariables keyValueVariables = new KeyValueVariables(); keyValueVariables.Add("SOSysNo", soInfo.SysNo); keyValueVariables.Add("StockSysNo", soInfo.Items[0].StockSysNo); ExternalDomainBroker.SendInternalEmail("Invoice_Generate_Error", keyValueVariables); }
/// <summary> /// 发送内部邮件 /// </summary> /// <param name="emailList">发送地址列表</param> /// <param name="title">标题可以不填</param> /// <param name="content">发送内容</param> /// <returns>返回成功发送列表</returns> public List <string> SendInternalEmail(List <string> emailList, string title, string content, string language) { KeyValueVariables vars = new KeyValueVariables(); vars.Add("Title", title); vars.Add("Content", content); ExternalDomainBroker.SendExternalEmail(string.Join(";", emailList), "SO_InternalEmail", vars, language); return(emailList); }
private static string BuildMailSubject(string mailSubject, KeyValueVariables keyValues) { foreach (var replaceItem in keyValues) { string pa = string.Format(PLACE_HOLDER, replaceItem.Key); mailSubject = Regex.Replace(mailSubject, pa, replaceItem.Value == null ? String.Empty : replaceItem.Value.ToString()); } return(mailSubject); }
public void BuildData(System.Collections.Specialized.NameValueCollection requestPostData, out KeyValueVariables variables, out KeyTableVariables tableVariables) { variables = new KeyValueVariables(); tableVariables = new KeyTableVariables(); string sysNo = requestPostData["SysNo"]; if (sysNo != null && sysNo.Trim() != String.Empty) { sysNo = System.Web.HttpUtility.UrlDecode(sysNo); int requestSysNo = int.TryParse(sysNo, out requestSysNo) ? requestSysNo : int.MinValue; if (requestSysNo > int.MinValue) { AdjustRequestInfo requestInfo = ObjectFactory <AdjustRequestAppService> .Instance.GetAdjustRequestInfoBySysNo(requestSysNo); variables.Add("SelfCompanyName", ResouceManager.GetMessageString(CommonConst.MessagePath_Common, "Res_Company_Name")); variables.Add("SelfCompanyAddress", ResouceManager.GetMessageString(CommonConst.MessagePath_Common, "Res_Company_Address")); variables.Add("SelfCompanyPhone", ResouceManager.GetMessageString(CommonConst.MessagePath_Common, "Res_Company_Phone")); variables.Add("SelfCompanyWebAddress", ResouceManager.GetMessageString(CommonConst.MessagePath_Common, "Res_Company_Url")); variables.Add("CreateUser", requestInfo.CreateUser.UserDisplayName); variables.Add("CreateDate", requestInfo.CreateDate.HasValue ? requestInfo.CreateDate.Value.ToString(SOConst.LongTimeFormat) : string.Empty); variables.Add("AuditUser", requestInfo.AuditUser.UserDisplayName); variables.Add("AuditDate", requestInfo.AuditDate.HasValue ? requestInfo.AuditDate.Value.ToString(SOConst.LongTimeFormat) : string.Empty); variables.Add("RequestSysNo", requestInfo.RequestID); variables.Add("Stock", requestInfo.Stock == null ? "" : requestInfo.Stock.StockName); variables.Add("Status", requestInfo.RequestStatus.ToDisplayText()); variables.Add("OutStockUser", requestInfo.OutStockUser.UserDisplayName); variables.Add("OutStockDate", requestInfo.OutStockDate.HasValue ? requestInfo.OutStockDate.Value.ToString(SOConst.LongTimeFormat) : string.Empty); variables.Add("Note", requestInfo.Note); DataTable dtProduct = new DataTable(); dtProduct.Columns.AddRange(new System.Data.DataColumn[] { new DataColumn("ProductID"), new DataColumn("ProductName"), new DataColumn("Price"), new DataColumn("Quantity"), new DataColumn("Amount") }); decimal totalAmount = 0M; requestInfo.AdjustItemInfoList.ForEach(p => { totalAmount += p.AdjustQuantity * p.AdjustCost; DataRow drProduct = dtProduct.NewRow(); drProduct["ProductID"] = p.AdjustProduct.ProductID; drProduct["ProductName"] = p.AdjustProduct.ProductBasicInfo.ProductTitle; drProduct["Price"] = p.AdjustCost.ToString("N2"); drProduct["Quantity"] = p.AdjustQuantity; drProduct["Amount"] = (p.AdjustQuantity * p.AdjustCost).ToString("N2"); dtProduct.Rows.Add(drProduct); }); variables.Add("TotalAmount", totalAmount.ToString("N2")); tableVariables.Add("ProductList", dtProduct); } } }
public static MailTemplate BuildMailTemplate(MailTemplate template, KeyValueVariables keyValues, KeyTableVariables keyTables) { if (template == null) { throw new ArgumentException("参数不能为null!", "template"); } template.Subject = TemplateString.BuildHtml(template.Subject, keyValues, keyTables); template.Body = TemplateString.BuildHtml(template.Subject, keyValues, keyTables); return(template); }
private static void SendMail(string mailSubject, int computerConfigSysNo, string operationNote, string companyCode, int createUserSysNo) { var userInfo = ExternalDomainBroker.GetUserInfoBySysNo(createUserSysNo); var param = new KeyValueVariables(); param.Add("Subject", mailSubject); param.Add("LogSysNo", computerConfigSysNo); param.Add("OperationNote", operationNote); param.Add("CompanyCode", companyCode); ECCentral.Service.Utility.EmailHelper.SendEmailByTemplate(userInfo.EmailAddress, "MKT_ComputerConfig_Edit", param, true); }
/// <summary> /// 异步发送外部邮件 /// </summary> /// <param name="mailInfoMessage"></param> public static void SendExternalEmail(string toAddress, string templateID, KeyValueVariables keyValueVariables, KeyTableVariables keyTableVariables, string languageCode) { try { ECCentral.Service.Utility.EmailHelper.SendEmailByTemplate(toAddress, templateID, keyValueVariables, keyTableVariables, languageCode); } catch (Exception ex) { ExceptionHelper.HandleException(ex); } }
public void Test_GiftCardMailTest() { KeyValueVariables vars = new KeyValueVariables(); vars.Add("$$CustomerID", "Poseidon.Y.Tong"); vars.Add("$$TotalValue", "230.00"); vars.Add("$$ExpireDate", DateTime.Now.AddYears(2).ToString("yyyy-MM-dd")); vars.Add("$$LinkToMyAccount", "http://www.newegg.com.cn/Customer/MyGiftCard.aspx"); // var html = ObjectFactory<IEmailBizInteract>.Instance.GetMailTemplatesHtml("Refund_GiftCard_Notify", vars, null, "zh-CN"); }
/// <summary> /// 发送邮件通知PM Combo的因商品调价,状态已改 /// </summary> /// <param name="combo"></param> protected virtual void SendMail(ComboInfo combo) { UserInfo user = ExternalDomainBroker.GetUserInfoBySysNo(combo.CreateUserSysNo.Value); KeyValueVariables keyValueVariables = new KeyValueVariables(); keyValueVariables.Add("ComboSysNo", combo.SysNo.Value.ToString()); keyValueVariables.Add("ComboName", combo.Name.Content); keyValueVariables.Add("PMUser", user.UserDisplayName); EmailHelper.SendEmailByTemplate(user.EmailAddress, "MKT_Combo_ChangeStatusForChangeProductPrice", keyValueVariables, true); }
private void SendNotifyMail(string customerEmail, string productName, string customerId) { KeyValueVariables vars = new KeyValueVariables(); vars.Add("GiftProductName", productName); vars.Add("Year", DateTime.Now.Year); if (string.IsNullOrEmpty(customerEmail)) { throw new BizException("顾客帐号:" + customerId + " : 邮件收件人不能为空!"); } ECCentral.Service.Utility.EmailHelper.SendEmailByTemplate(customerEmail, "CustomerGift_Notify", vars, false); }
private void SendCreateEmail(string email, string requestId) { if (StringUtility.IsNullOrEmpty(email) || StringUtility.IsNullOrEmpty(requestId)) { return; } KeyValueVariables vars = new KeyValueVariables(); vars.Add("RequestID", requestId); EmailHelper.SendEmailByTemplate(email, "RMARequest_Create", vars); }
public void GiftCardMailMethod() { KeyValueVariables vars = new KeyValueVariables(); vars.Add("CustomerID", "geeker"); vars.Add("TotalValue", 500); vars.Add("ExpireYear", DateTime.Now.AddYears(2).Year); vars.Add("ExpireMonth", DateTime.Now.Month); vars.Add("ExpireDay", DateTime.Now.Day); vars.Add("Year", DateTime.Now.Year); EmailHelper.SendEmailByTemplate("*****@*****.**", "Refund_GiftCard_Notify", vars, null, "zh-CN"); }
/// <summary> /// 回复邮件操作,并发送邮件 /// </summary> /// <param name="item"></param> public virtual void UpdateProductReviewMailLog(ProductReview item) { //保存邮件日志 if (!string.IsNullOrEmpty(item.ProductReviewMailLog.TopicMailContent.Content) || !string.IsNullOrEmpty(item.ProductReviewMailLog.CSNote.Content)) { if (productReviewMailLogDA.CheckProductCommentMailLog(item.ProductReviewMailLog)) { productReviewMailLogDA.UpdateProductCommentMailLog(item.ProductReviewMailLog); } else { productReviewMailLogDA.CreateProductCommentMailLog(item.ProductReviewMailLog); } } productReviewDA.UpdateProductReview(item); #region 发送邮件 KeyValueVariables replaceVariables = new KeyValueVariables(); ECCentral.BizEntity.IM.ProductInfo product = ExternalDomainBroker.GetProductInfo(item.ProductSysNo.Value); replaceVariables.AddKeyValue(@"ProductID", product.ProductID); replaceVariables.AddKeyValue(@"ProductName", product.ProductName); replaceVariables.AddKeyValue(@"ProductLink", item.ProductID); replaceVariables.AddKeyValue(@"Title", item.Title); replaceVariables.AddKeyValue(@"ProductContent", string.Format(ResouceManager.GetMessageString("MKT.Comment", "Comment_ProductReviewMailMainContent"), item.Prons, item.Cons, item.Service)); //replaceVariables.AddKeyValue(@"#InUser#", ServiceContext.Current.); //replaceVariables.AddKeyValue(@"#InDateAll#", DateTime.Now.ToString()); replaceVariables.AddKeyValue(@"InDateAll-Y", DateTime.Now.Year.ToString()); replaceVariables.AddKeyValue(@"InDateAll-M", DateTime.Now.Month.ToString()); replaceVariables.AddKeyValue(@"InDateAll-D", DateTime.Now.Day.ToString()); replaceVariables.AddKeyValue(@"EmailText", item.ProductReviewMailLog.TopicMailContent.Content); replaceVariables.AddKeyValue(@"All", DateTime.Now.ToString()); replaceVariables.AddKeyValue(@"InDate-Y", DateTime.Now.Year.ToString()); replaceVariables.AddKeyValue(@"InDate-M", DateTime.Now.Month.ToString()); replaceVariables.AddKeyValue(@"InDate-D", DateTime.Now.Day.ToString()); replaceVariables.AddKeyValue(@"Year", DateTime.Now.Year.ToString()); ECCentral.BizEntity.Customer.CustomerInfo customer = ExternalDomainBroker.GetCustomerInfo(item.CustomerSysNo.Value); replaceVariables.AddKeyValue(@"CustomerName", customer.BasicInfo.CustomerID); if (string.IsNullOrEmpty(customer.BasicInfo.Email)) { //throw new BizException("邮件地址为空!"); throw new BizException(ResouceManager.GetMessageString("MKT.ProductReview", "ProductReview_EmailNotNull")); } else { ECCentral.Service.Utility.EmailHelper.SendEmailByTemplate(customer.BasicInfo.Email, "MKT_ProductReviewMailContent", replaceVariables, false); } #endregion }
public void BuyGrifCardMailMethod() { KeyValueVariables keyValueVariables = new KeyValueVariables(); keyValueVariables.Add("CustomerID", "Geeker"); keyValueVariables.Add("Quantity", 2); keyValueVariables.Add("TotalAmount", 300); keyValueVariables.Add("ExpireYear", DateTime.Now.AddYears(2).Year); keyValueVariables.Add("ExpireMonth", DateTime.Now.Month); keyValueVariables.Add("ExpireDay", DateTime.Now.Day); keyValueVariables.Add("NowYear", DateTime.Now.Year); EmailHelper.SendEmailByTemplate("*****@*****.**", "SO_ActivateElectronicGiftCard", keyValueVariables, null, "zh-CN"); }
public static MailTemplate BuildMailTemplate(string templateID, KeyValueVariables keyValues, KeyTableVariables keyTables) { MailTemplate entity = GetMailTemplate(templateID); if (entity == null) { throw new ApplicationException("目标模板[" + templateID + "]未找到!"); } entity.Subject = TemplateString.BuildHtml(entity.Subject, keyValues, keyTables); entity.Body = TemplateString.BuildHtml(entity.Body, keyValues, keyTables); return(entity); }
/// <summary> /// 发送内部邮件 /// </summary> /// <param name="mailInfoMessage"></param> /// <param name="isAsync"></param> public static void SendInternalEmail(string templateID, KeyValueVariables keyValueVariables, KeyTableVariables keyTableVariables) { try { ECCentral.Service.Utility.EmailHelper.SendEmailByTemplate(null, null, null, templateID, keyValueVariables, keyTableVariables, false, true); } catch (Exception ex) { ExceptionHelper.HandleException(ex); } }
public void BuildData(NameValueCollection requestPostData, out KeyValueVariables variables, out KeyTableVariables tableVariables) { variables = new KeyValueVariables(); tableVariables = new KeyTableVariables(); int soSysNo = 0; int warhouseNumber = 0; string param = requestPostData["SOSysNo"]; string param1 = requestPostData["WareHouseNumber"]; SOInvoiceInfo soInvoice = null; bool hasError = false; DataTable table = CreatePrintData(); DataTable errorTable = new DataTable(); try { if (!int.TryParse(param, out soSysNo)) { throw new BizException(string.Format(ResouceManager.GetMessageString("Invoice.InvoicePrint", "InvoicePrint_IllegalOrderID"), param)); } if (!int.TryParse(param1, out warhouseNumber)) { throw new BizException(string.Format(ResouceManager.GetMessageString("Invoice.InvoicePrint", "InvoicePrint_IllegalStockID"), param1)); } soInvoice = ObjectFactory <InvoiceReportProcessor> .Instance.GetNew(new SOInvoiceInfo { SOInfo = new SOInfo { SOSysNo = soSysNo, StockSysNo = warhouseNumber }, InvoiceInfoList = new List <InvoiceInfo>() }); } catch (BizException ex) { hasError = true; InitErrorTable(ex, errorTable); } if (!hasError) { InitData(soInvoice, table); } tableVariables.Add("Error", errorTable); tableVariables.Add("PrintInvoiceDetail", table); }
public virtual bool SendEmail(string toEmail, string title, string content, string companyCode) { try { var param = new KeyValueVariables(); param.Add("Content", content); param.Add("Title", title); ECCentral.Service.Utility.EmailHelper.SendEmailByTemplate(toEmail, "Manual_Send", param, false); return(true); } catch { return(false); } }
/// <summary> /// 提供给创建时候 邮件发送 /// </summary> /// <param name="entity"></param> private void SendEmailWhenCreate(VirtualStockPurchaseOrderInfo entity) { //调用EmailService发送邮件: DataTable dt = new DataTable(); dt = VSPurchaseOrderDA.GetEmailContentForCreateVSPO(entity.SOSysNo.Value, entity.ProductSysNo.Value); string toEmailAddress = dt.Rows[0]["EmailAddress"].ToString();//PM负责人Email string backUPMailAddress = string.Empty; if (dt.Rows[0]["BackupUserList"] != null) { string[] arrayUserSysNo = dt.Rows[0]["BackupUserList"].ToString().Split(';'); for (int n = 0; n < arrayUserSysNo.Length; n++) { if (Regex.IsMatch(arrayUserSysNo[n], "^[0-9]+$")) { string email = VSPurchaseOrderDA.GetBackUpPMEmailAddress(Convert.ToInt32(arrayUserSysNo[n])); if (email != null && Regex.IsMatch(email, @"\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*")) { backUPMailAddress += email + ";"; } } } } if (backUPMailAddress.Length > 0) { toEmailAddress = toEmailAddress + ";" + backUPMailAddress;//PM负责人Email Address(加上BackUp) } KeyValueVariables keyValuesList = new KeyValueVariables(); //**邮件标题: keyValuesList.Add("DateTime", DateTime.Now.ToString()); keyValuesList.Add("SysNo", dt.Rows[0]["SysNo"]); keyValuesList.Add("SOSysNo", dt.Rows[0]["SOSysNo"]); keyValuesList.Add("ProductID", dt.Rows[0]["ProductID"]); keyValuesList.Add("BriefName", dt.Rows[0]["BriefName"]); keyValuesList.Add("PurchaseQty", dt.Rows[0]["PurchaseQty"]); keyValuesList.Add("CreateTime", dt.Rows[0]["CreateTime"]); keyValuesList.Add("PMUserName", dt.Rows[0]["PMUserName"]); keyValuesList.Add("CSUserName", dt.Rows[0]["CSUserName"]); keyValuesList.Add("CSMemo", dt.Rows[0]["CSMemo"]); keyValuesList.Add("WarehouseName", ""); //发送异步,内部邮件: EmailHelper.SendEmailByTemplate(toEmailAddress, "VSPO_CreateActionMail", keyValuesList, true); }
private void SendEmailValid(string customerID, string customerEmail, string productName) { if (string.IsNullOrEmpty(customerEmail)) { return; } KeyValueVariables vars = new KeyValueVariables(); vars.Add("ProductName", productName); vars.Add("CustomerID", customerID); vars.Add("Year", DateTime.Now.Year); vars.Add("Month", DateTime.Now.Month); vars.Add("Day", DateTime.Now.Day); EmailHelper.SendEmailByTemplate(customerEmail, "ProductPriceCompare_AuditPass", vars, false); }