⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 crm_sendmailinfo.java

📁 java阿里巴巴代码
💻 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 + -