| | |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.jdbc.core.BeanPropertyRowMapper; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | | import java.util.List; |
| | | |
| | |
| | | */ |
| | | @Service |
| | | public class MailAccountImpl extends BaseService implements MailAccountIfc { |
| | | @Transactional(rollbackFor = Exception.class) |
| | | @Override |
| | | public void addEmailAccount(T482102Entity account) { |
| | | if (StringUtils.isBlank(account.getReceiveEmail())) { |
| | | account.setReceiveEmail(account.getEmail()); |
| | | account.setReceivePassword(account.getPassword()); |
| | | } |
| | | if (StringUtils.isBlank(account.getSmtpEmail())) { |
| | | account.setSmtpEmail(account.getEmail()); |
| | | account.setSmtpPassword(account.getPassword()); |
| | | } |
| | | String sql = "set nocount on\n"; |
| | | try { |
| | | sql += "insert into t482102(companyId,companyName,email,password,alias_email,userCode,userName,receiveProtocol," + |
| | | "receiveEmail,receivePassword,receiveSSL,receivePort,receiveHost," + |
| | | "smtpEmail,smtpPassword,smtpSSL,smtpPort,smtpHost,invalid,create_time,update_time)\n" + |
| | | "smtpEmail,smtpPassword,smtpSSL,smtpPort,smtpHost,invalid,bisync_flag,proxyFlag,mailType,mailStatus,create_time,update_time)\n" + |
| | | "values(" + GridUtils.prossSqlParm(account.getCompanyId()) + "," + GridUtils.prossSqlParm(account.getCompanyName()) + "," + GridUtils.prossSqlParm(account.getEmail()) + "," + |
| | | GridUtils.prossSqlParm(account.getPassword()) + "," + |
| | | GridUtils.prossSqlParm(account.getAliasEmail()) + "," + GridUtils.prossSqlParm(account.getUserCode()) + "," + GridUtils.prossSqlParm(account.getUserName()) + "," + |
| | | GridUtils.prossSqlParm(account.getReceiveProtocol()) + "," + GridUtils.prossSqlParm(account.getReceiveEmail()) + "," + GridUtils.prossSqlParm(account.getReceivePassword()) + "," + |
| | | "'" + account.isReceiveSSL() + "'," + account.getReceivePort() + "," + GridUtils.prossSqlParm(account.getReceiveHost()) + "," + |
| | | GridUtils.prossSqlParm(account.getSmtpEmail()) + "," + GridUtils.prossSqlParm(account.getSmtpPassword()) + ",'" + account.isSmtpSSL() + "'," + |
| | | account.getSmtpPort() + "," + GridUtils.prossSqlParm(account.getSmtpHost()) + ",'" + account.isInvalid() + "'," + |
| | | "convert(varchar(19),getdate(),120),convert(varchar(19),getdate(),120))"; |
| | | account.getSmtpPort() + "," + GridUtils.prossSqlParm(account.getSmtpHost()) + ",'" + account.isInvalid() + "','" + account.isBiSyncFlag() + "','" + account.isProxyFlag() + "'," + |
| | | account.getMailType() + "," + GridUtils.prossSqlParm(account.getMailStatus()) + ",convert(varchar(19),getdate(),120),convert(varchar(19),getdate(),120))"; |
| | | jdbcTemplate.update(sql); |
| | | } catch (Exception e) { |
| | | throw e; |
| | | } |
| | | } |
| | | |
| | | @Transactional(rollbackFor = Exception.class) |
| | | @Override |
| | | public Integer updateEmailAccount(T482102Entity account) { |
| | | if (StringUtils.isBlank(account.getReceiveEmail())) { |
| | | account.setReceiveEmail(account.getEmail()); |
| | | account.setReceivePassword(account.getPassword()); |
| | | } |
| | | if (StringUtils.isBlank(account.getSmtpEmail())) { |
| | | account.setSmtpEmail(account.getEmail()); |
| | | account.setSmtpPassword(account.getPassword()); |
| | | } |
| | | String sql = "set nocount on\n"; |
| | | try { |
| | | sql += "update t482102 set alias_email=" + GridUtils.prossSqlParm(account.getAliasEmail()) + ","; |
| | | if (StringUtils.isNotBlank(account.getPassword())) { |
| | | sql += "password=" + GridUtils.prossSqlParm(account.getPassword()) + ","; |
| | | } |
| | | sql += " receiveProtocol=" + GridUtils.prossSqlParm(account.getReceiveProtocol()) + "," + |
| | | " receiveEmail=" + GridUtils.prossSqlParm(account.getReceiveEmail()) + ","; |
| | | sql += " receiveEmail=" + GridUtils.prossSqlParm(account.getReceiveEmail()) + ","; |
| | | if (StringUtils.isNotBlank(account.getReceivePassword())) { |
| | | sql += "receivePassword=" + GridUtils.prossSqlParm(account.getReceivePassword()) + ","; |
| | | } |
| | |
| | | sql += "smtpPassword=" + GridUtils.prossSqlParm(account.getSmtpPassword()) + ","; |
| | | } |
| | | sql += " smtpSSL='" + account.isSmtpSSL() + "'," + " smtpPort=" + account.getSmtpPort() + ",smtpHost=" + GridUtils.prossSqlParm(account.getSmtpHost()) + "," + |
| | | " invalid='" + account.isInvalid() + "',update_time=convert(varchar(19),getdate(),120) " + |
| | | " invalid='" + account.isInvalid() + "',bisync_flag='" + account.isBiSyncFlag() + "',proxyFlag='" + account.isProxyFlag() + "'," + |
| | | " mailType=" + account.getMailType() + ",mailStatus=" + GridUtils.prossSqlParm(account.getMailStatus()) + |
| | | // " ,update_time=convert(varchar(19),getdate(),120) " + |
| | | " where userCode=" + GridUtils.prossSqlParm(account.getUserCode()) + " and accountId=" + account.getAccountId(); |
| | | sql += "select @@ROWCOUNT"; |
| | | return jdbcTemplate.queryForObject(sql, Integer.class); |
| | |
| | | } |
| | | } |
| | | |
| | | @Transactional(rollbackFor = Exception.class) |
| | | @Override |
| | | public Integer updateEmailTime(Integer accountId) { |
| | | String sql = "set nocount on\n"; |
| | | try { |
| | | sql += "update t482102 set update_time=convert(varchar(19),getdate(),120) " + |
| | | " where accountId=" + accountId; |
| | | sql += "select @@ROWCOUNT"; |
| | | return jdbcTemplate.queryForObject(sql, Integer.class); |
| | | } catch (Exception e) { |
| | | throw e; |
| | | } |
| | | } |
| | | |
| | | @Transactional(rollbackFor = Exception.class) |
| | | @Override |
| | | public Integer updateMailStatus(String status, Integer accountId) { |
| | | String sql = "set nocount on\n"; |
| | | try { |
| | | sql += "update t482102 set mailStatus=" + GridUtils.prossSqlParm(status) + //",update_time=convert(varchar(19),getdate(),120) " + |
| | | " where accountId=" + accountId; |
| | | sql += "select @@ROWCOUNT"; |
| | | return jdbcTemplate.queryForObject(sql, Integer.class); |
| | | } catch (Exception e) { |
| | | throw e; |
| | | } |
| | | } |
| | | |
| | | @Transactional(rollbackFor = Exception.class) |
| | | @Override |
| | | public Integer updateAliasEmail(String aliasEmail, Integer accountId) { |
| | | String sql = "set nocount on\n"; |
| | | try { |
| | | sql += "update t482102 set alias_email=" + GridUtils.prossSqlParm(aliasEmail) + //",update_time=convert(varchar(19),getdate(),120) " + |
| | | " where accountId=" + accountId; |
| | | sql += "select @@ROWCOUNT"; |
| | | return jdbcTemplate.queryForObject(sql, Integer.class); |
| | | } catch (Exception e) { |
| | | throw e; |
| | | } |
| | | } |
| | | |
| | | @Transactional(rollbackFor = Exception.class) |
| | | @Override |
| | | public Integer deleteEmailAccount(String userCode, Integer accountId) { |
| | | String sql = "set nocount on\n"; |
| | |
| | | } |
| | | |
| | | @Override |
| | | public List<T482102Entity> getAccount(String userCode, String email) { |
| | | public List<T482102Entity> getAccount(String userCode) { |
| | | String sql = "set nocount on\n"; |
| | | try { |
| | | sql += "select companyId,companyName,email,password,alias_email as aliasEmail,userCode,userName,accountId,receive_server_user_name as receiveServerUserName," + |
| | | "isnull(bisync_flag,0) as biSyncFlag,isnull(proxyFlag,0) as proxyFlag,mailDomain,mailType,keywordList,siteUrl,receiveProtocol," + |
| | | "isnull(bisync_flag,0) as biSyncFlag,isnull(proxyFlag,0) as proxyFlag,mailDomain,isnull(mailType,0) as mailType,mailStatus,keywordList,siteUrl,receiveProtocol," + |
| | | "receiveEmail,receivePassword,receiveSSL,receivePort,receiveHost,smtpEmail,smtpPassword,smtpSSL,smtpPort,smtpHost," + |
| | | "isnull(invalid,0) as invalid,create_time as createTime,update_time as updateTime,DocVersion " + |
| | | "from t482102 " + |
| | | "where userCode=" + GridUtils.prossSqlParm(userCode); |
| | | if (StringUtils.isNotBlank(email)) { |
| | | sql += " and email=" + GridUtils.prossSqlParm(email); |
| | | } |
| | | sql += " order by accountId"; |
| | | return jdbcTemplate.query(sql, new BeanPropertyRowMapper<>(T482102Entity.class)); |
| | | } catch (Exception e) { |
| | | throw e; |
| | |
| | | } |
| | | |
| | | @Override |
| | | public T482102Entity getAccountInfo(String userCode, String email) throws Exception { |
| | | if (StringUtils.isBlank(userCode) || StringUtils.isBlank(email)) { |
| | | throw new Exception("参数UserCode和email不能为空"); |
| | | } |
| | | List<T482102Entity> t482101HEntity = getAccount(userCode, email); |
| | | if (t482101HEntity.size() > 0) { |
| | | return t482101HEntity.get(0); |
| | | } else { |
| | | public T482102Entity getAccountInfo(String userCode, Integer accountId) throws Exception { |
| | | String sql = "set nocount on\n"; |
| | | try { |
| | | sql += "select companyId,companyName,email,password,alias_email as aliasEmail,userCode,userName,accountId,receive_server_user_name as receiveServerUserName," + |
| | | "isnull(bisync_flag,0) as biSyncFlag,isnull(proxyFlag,0) as proxyFlag,mailDomain,isnull(mailType,0) as mailType,mailStatus,keywordList,siteUrl,receiveProtocol," + |
| | | "receiveEmail,receivePassword,receiveSSL,receivePort,receiveHost,smtpEmail,smtpPassword,smtpSSL,smtpPort,smtpHost," + |
| | | "isnull(invalid,0) as invalid,create_time as createTime,update_time as updateTime,DocVersion " + |
| | | "from t482102 " + |
| | | "where userCode=" + GridUtils.prossSqlParm(userCode) + " and accountId=" + accountId; |
| | | sql += " order by accountId"; |
| | | List<T482102Entity> t482101HEntity = jdbcTemplate.query(sql, new BeanPropertyRowMapper<>(T482102Entity.class)); |
| | | if (t482101HEntity.size() > 0) { |
| | | return t482101HEntity.get(0); |
| | | } |
| | | return null; |
| | | } catch (Exception e) { |
| | | throw e; |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public T482102Entity getAccountInfo(String userCode, String eMail) throws Exception { |
| | | String sql = "set nocount on\n"; |
| | | try { |
| | | sql += "select top 1 companyId,companyName,email,password,alias_email as aliasEmail,userCode,userName,accountId,receive_server_user_name as receiveServerUserName," + |
| | | "isnull(bisync_flag,0) as biSyncFlag,isnull(proxyFlag,0) as proxyFlag,mailDomain,isnull(mailType,0) as mailType,mailStatus,keywordList,siteUrl,receiveProtocol," + |
| | | "receiveEmail,receivePassword,receiveSSL,receivePort,receiveHost,smtpEmail,smtpPassword,smtpSSL,smtpPort,smtpHost," + |
| | | "isnull(invalid,0) as invalid,create_time as createTime,update_time as updateTime,DocVersion " + |
| | | "from t482102 " + |
| | | "where userCode=" + GridUtils.prossSqlParm(userCode) + " and email=" + GridUtils.prossSqlParm(eMail); |
| | | sql += " order by accountId"; |
| | | List<T482102Entity> t482101HEntity = jdbcTemplate.query(sql, new BeanPropertyRowMapper<>(T482102Entity.class)); |
| | | if (t482101HEntity.size() > 0) { |
| | | return t482101HEntity.get(0); |
| | | } |
| | | return null; |
| | | } catch (Exception e) { |
| | | throw e; |
| | | } |
| | | } |
| | | } |