fc5c3fc2c7fca77e3e2fa985775a2ea2779af355.svn-base 3.3 KB
package com.espeed.service.impl;

import java.util.List;

import com.espeed.centre.pojo.YxyUserInfo;
import com.espeed.dao.YxySenderSetDao;
import com.espeed.pojo.YxySenderSet;
import com.espeed.service.YxySendersetService;



/**
 * 程序名称:    	EspeedMail_时速邮箱
 * 程序版本:    	V1.0
 * 作    者:    	深圳市科飞时速网络技术有限公司(0755-88843776)
 * 版权所有:    	深圳市科飞时速网络技术有限公司
 * 技术支持:    	
 * 单元名称:     	发件人配置业务层实现类
 * 开始时间:    	2015.4.02
 * 程 序 员:    	蒋俭
 * 最后修改:    
 * 备    注:		如需修改请通知程序员    
 */
public class YxySendersetServiceImpl implements YxySendersetService {

	/**查询用户发件人配置*/
	public List<YxySenderSet> editOrFindSenderSet(YxyUserInfo user) throws Exception {
		String hql="from YxySenderSet where user_login='"+user.getLogin_id()+"' and user_domain='"+user.getDomain()+"'";		
		List<YxySenderSet> sets = yxysendersetdao.findByHql(hql);
		if(sets.size() == 0){//没有发件人配置则添加一个
			YxySenderSet set = new YxySenderSet();
			set.setUser_login(user.getLogin_id());
			set.setUser_domain(user.getDomain());
			set.setSender(user.getUser_name());
			set.setSend_email(user.getLogin_id()+"@"+user.getDomain());
			set.setReply_email(user.getLogin_id()+"@"+user.getDomain());
			set.setReply_name(user.getUser_name());
			set.setIsdefault(1);
			int id = yxysendersetdao.addPojo(set);
			set.setId(id);
			sets.add(set);
		}
		return sets;
	}
	
	/**删除*/
	public void delSenderSet(int sid) throws Exception {
		String hql="delete YxySenderSet where id="+sid;	
		yxysendersetdao.updateByHql(hql);
	}
	
	/**添加编辑*/
	public void addEditSenderset(YxySenderSet sender) throws Exception {
		if(sender.getId()>0){//编辑
			//如果编辑的为默认则修改其他为不默认
			if(sender.getIsdefault()==1){
				String hql="update YxySenderSet set isdefault=0 where user_login='"+sender.getUser_login()+"' and user_domain='"+sender.getUser_domain()+"'";
				yxysendersetdao.updateByHql(hql);
			}
			yxysendersetdao.updatePojo(sender);
		}else{//插入
			//如果新加入的为默认则修改其他为不默认
			if(sender.getIsdefault()==1){
				String hql="update YxySenderSet set isdefault=0 where user_login='"+sender.getUser_login()+"' and user_domain='"+sender.getUser_domain()+"'";
				yxysendersetdao.updateByHql(hql);
			}
			yxysendersetdao.addPojo(sender);
		}
	}
	
	/**根据id查询发件人配置*/
	public YxySenderSet findSenderById(int id)throws Exception{
		String hql="from YxySenderSet where id="+id;
		List<YxySenderSet> senderlist=yxysendersetdao.findByHql(hql);
		if(senderlist.size()>0){
			return senderlist.get(0);
		}else{
			return null;
		}
	}
	
	/**判断发件人地址是否重复*/
	public int findIsExits(String loginid, String domain, String email)throws Exception {
		String hql="from YxySenderSet where user_login='"+loginid+"' and user_domain='"+domain+"' and send_email='"+email+"'";
		List<YxySenderSet> senderlist=yxysendersetdao.findByHql(hql);
		if(senderlist.size()>0){
			return 0;
		}else{
			return 1;
		}
	}
	
	
	private YxySenderSetDao yxysendersetdao;

	public YxySenderSetDao getYxysendersetdao() {
		return yxysendersetdao;
	}

	public void setYxysendersetdao(YxySenderSetDao yxysendersetdao) {
		this.yxysendersetdao = yxysendersetdao;
	}

}