package com.yc.crm.mail.service; import com.yc.action.grid.GridUtils; import com.yc.crm.mail.entity.T482106Entity; import com.yc.service.BaseService; 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; /** * @BelongsProject: eCoWorksV3 * @BelongsPackage: com.yc.crm.mail.service * @author: xinyb * @CreateTime: 2024-08-19 15:37 * @Description:黑名单持久层 */ @Service public class MailBlackListImpl extends BaseService implements MailBlackListIfc { @Transactional(rollbackFor = Exception.class) @Override public void saveBlackList(T482106Entity black) { String sql = "set nocount on\n"; try { sql += "insert into t482106(companyId,companyName,black_content,userCode,userName,create_time,update_time,black_type) values " + "(" + GridUtils.prossSqlParm(black.getCompanyId()) + "," + GridUtils.prossSqlParm(black.getCompanyName()) + "," + GridUtils.prossSqlParm(black.getBlackContent())+","+GridUtils.prossSqlParm(black.getUserCode()) + "," + GridUtils.prossSqlParm(black.getUserName()) + ",getdate(),getdate(),'" + black.isBlackType() + "')"; jdbcTemplate.update(sql); } catch (Exception e) { throw e; } } @Transactional(rollbackFor = Exception.class) @Override public Integer updateBlackList(T482106Entity black) { String sql = "set nocount on \n"; try { sql += "update t482106 set black_content=" + GridUtils.prossSqlParm(black.getBlackContent()) + ",black_type='" + black.isBlackType() + "'," + "update_time=getdate() where black_id=" + black.getBlackId() + " and userCode=" + GridUtils.prossSqlParm(black.getUserCode()) + "\n"; sql += "select @@ROWCOUNT"; return jdbcTemplate.queryForObject(sql, Integer.class); } catch (Exception e) { throw e; } } @Transactional(rollbackFor = Exception.class) @Override public Integer deleteBlackList(String userCode,Integer blackId) { String sql = "set nocount on \n"; try { sql += "delete t482106 where black_id=" + blackId + " and userCode='" + userCode + "'\n"; sql += "select @@ROWCOUNT"; return jdbcTemplate.queryForObject(sql, Integer.class); } catch (Exception e) { throw e; } } @Override public List getBlackList(String userCode,String search) { String sql = "set nocount on \n"; try { sql += "select companyId,companyName,black_id,black_content,userCode,userName,create_time,update_time,black_type,DocVersion " + "from t482106 where userCode="+GridUtils.prossSqlParm(userCode); if (StringUtils.isNotBlank(search)) { sql += " and black_content like '%" + search+"%'"; } sql += "order by black_id \n"; return jdbcTemplate.query(sql, new BeanPropertyRowMapper<>(T482106Entity.class)); } catch (Exception e) { throw e; } } }