📄 crm_sendmailinfo.java
字号:
package com.ahbay.mailMgr;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.Iterator;
import com.saas.biz.dao.custDAO.CustomerExt;
import com.saas.biz.dao.userdetailDAO.UserdetailExt;
import com.saas.sys.buffer.Buffers;
import com.saas.sys.dbm.Dbtable;
import com.saas.sys.exp.SaasApplicationException;
import com.saas.sys.log.Logger;
/**
* 邮件群发
* @com.ahbay.mailMgr
*
* @author LiuYang
*
* @2007-6-12
*/
public class CRM_SendMailInfo {
Dbtable tradeQuery;
Logger log;
Buffers inBuffer;
Buffers outBuffer;
ArrayList queryResult = new ArrayList();
String currentDate="";//当前的系统时间;
public CRM_SendMailInfo()
{
log = new Logger(this);
tradeQuery = new Dbtable();
currentDate=new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss").format(new Date());
}
public void setTradeQuery(Dbtable tradeQuery)
{
this.tradeQuery = tradeQuery;
}
public Dbtable getTradeQuery()
{
return this.tradeQuery;
}
public void setOutBuffer(Buffers outBuffer)
{
this.outBuffer = outBuffer;
}
public Buffers getOutBuffer()
{
return this.outBuffer;
}
public ArrayList getQueryResult()
{
return this.queryResult;
}
public void setQueryResult(ArrayList queryResult)
{
this.queryResult = queryResult;
}
/**
*@邮件群发
*发送邮件给某个客户下的所有用户
*/
public void sendMessageToCustomerUsers(Buffers inbuffer)
{
this.outBuffer = inbuffer;
this.inBuffer = inbuffer;
log.LOG_INFO("进入sendMessageToCustomerUsers方法...");
//客户名称
String cust_Name = inbuffer.getString("CUST_NAME");
//邮件主题
String subject = inbuffer.getString("TITLE");
//邮件内容
String mailContent = inbuffer.getString("CONTENT");
//客户ID
String cust_id = inbuffer.getString("CUST_ID");
//客户邮件
String cust_Mail = inbuffer.getString("EMAIL");
try
{
if(cust_Mail !=null && !cust_Mail.trim().equals(""))
{
sendMessageToCustomerUsers(cust_id,cust_Name,subject,mailContent,cust_Mail);
}else{
log.LOG_INFO("所选择客户的邮件地址不存在,无法发送邮件...");
}
} catch (SaasApplicationException e)
{
log.LOG_INFO(e.getMessage());
}
log.LOG_INFO("退出sendMessageToCustomerUsers方法...");
}
public void sendMessageToCustomerUsers(String cust_id,String cust_Name,String subject,String mailConten,String custMail) throws SaasApplicationException
{
String user_mail = "";
ArrayList userDetail = new ArrayList();
UserdetailExt userDetailExt = new UserdetailExt();
userDetailExt.setParam(":VCUST_ID", cust_id);
String user_name = "";
try{
userDetail = userDetailExt.selByList("SEL_BY_USERDETAIL_CUST");
}catch(Exception ed){
log.LOG_INFO(ed.getMessage()+"Execute SQL 语句执行时出错...");
}
try{
if(userDetail != null && userDetail.size() >0)
{
for(Iterator it = userDetail.iterator(); it.hasNext();)
{
HashMap map = new HashMap();
map = (HashMap) it.next();
user_name =map.get("user_id").toString();
log.LOG_INFO("hadfsfsdfsdfdsfdsf"+user_name);
if(map.get("email")!= null)
{
user_mail=map.get("email").toString();
sendEmail(custMail,user_mail,subject,mailConten);
log.LOG_INFO("开始List 循环行发邮件给......"+user_mail);
}
else
{
sendEmail(custMail,custMail,"系统退信...","你于 "+currentDate+"给"+user_name+"发送的邮件失败!!!");
log.LOG_INFO("不能发邮件给......"+user_name);
}
}
}
}catch(Exception e){
log.LOG_INFO(e.getMessage()+"发送邮件时出错...");
}
}
/**
* 发送邮件
*/
public void sendEmail(String fromAddr,String toAddr,String subject,String messageInfo){
try {
mail mailsend = new mail();
mailsend.setStrTo(toAddr);
mailsend.setStrFrom(fromAddr);
mailsend.setStrSubject(subject);
mailsend.setStrText(messageInfo);
mailsend.setStrUsername("liuy");
mailsend.setStrPassword("liuy");
mailsend.setStrSmtp("mail.saasdev.com");
mailsend.sendSimpleMail();
} catch (Exception m){
m.printStackTrace();
}
}
/**
*@邮件群发
*发送邮件给所有客户
*/
public void sendMessageToAllCustomers(Buffers inbuffer)
{
this.outBuffer = inbuffer;
this.inBuffer = inbuffer;
log.LOG_INFO("进入sendMessageToAllCustomers方法...");
//邮件主题
String subject = inbuffer.getString("TITLE");
//邮件内容
String mailContent = inbuffer.getString("CONTENT");
try{
sendMessageToAllCustomers(subject,mailContent);
} catch (Exception e){
log.LOG_INFO(e.getMessage());
}
log.LOG_INFO("退出sendMessageToAllCustomers方法...");
}
public void sendMessageToAllCustomers(String subject,String mailContent)throws SaasApplicationException
{
String sysmail="liuy@saasdev.com";
String cust_mail = "";
String cust_name = "";
ArrayList customList = new ArrayList();
CustomerExt commodityExt = new CustomerExt();
customList = commodityExt.selByList("SEL_BY_CUST_ID");
try{
if(customList != null && customList.size() >0)
{
for(Iterator it = customList.iterator(); it.hasNext();)
{
HashMap map = (HashMap) it.next();
cust_name = map.get("cust_name").toString();
if(map.get("email")!= null)
{
cust_mail=map.get("email").toString();
sendEmail(sysmail,cust_mail,subject,mailContent);
}
else//当客户的邮件地址不存在时,系统自动给发件人退信
{
sendEmail(sysmail,sysmail,"系统退信...","你于 "+currentDate+"给"+cust_name+"发送的邮件失败!!!");
}
}
}
}catch(Exception e){
e.printStackTrace();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -