fix: 修复MailAccountService 更新/删除缓存未清空

This commit is contained in:
zhangjiayu 2023-08-03 18:13:59 +08:00
parent 515adcaac3
commit 2b5bb4e121

View File

@ -9,6 +9,7 @@ import cn.iocoder.yudao.module.system.dal.dataobject.mail.MailAccountDO;
import cn.iocoder.yudao.module.system.dal.mysql.mail.MailAccountMapper; import cn.iocoder.yudao.module.system.dal.mysql.mail.MailAccountMapper;
import cn.iocoder.yudao.module.system.dal.redis.RedisKeyConstants; import cn.iocoder.yudao.module.system.dal.redis.RedisKeyConstants;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.cache.annotation.CacheEvict;
import org.springframework.cache.annotation.Cacheable; import org.springframework.cache.annotation.Cacheable;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
@ -46,7 +47,8 @@ public class MailAccountServiceImpl implements MailAccountService {
} }
@Override @Override
@Cacheable(value = RedisKeyConstants.MAIL_ACCOUNT, key = "#updateReqVO.id") @CacheEvict(value = RedisKeyConstants.MAIL_ACCOUNT,
allEntries = true)// allEntries 清空所有缓存主要一次更新涉及到的 mailAccountId 较多反倒批量会更快
public void updateMailAccount(MailAccountUpdateReqVO updateReqVO) { public void updateMailAccount(MailAccountUpdateReqVO updateReqVO) {
// 校验是否存在 // 校验是否存在
validateMailAccountExists(updateReqVO.getId()); validateMailAccountExists(updateReqVO.getId());
@ -57,7 +59,8 @@ public class MailAccountServiceImpl implements MailAccountService {
} }
@Override @Override
@Cacheable(value = RedisKeyConstants.MAIL_ACCOUNT, key = "#id") @CacheEvict(value = RedisKeyConstants.MAIL_ACCOUNT,
allEntries = true)// allEntries 清空所有缓存主要一次更新涉及到的 mailAccountId 较多反倒批量会更快
public void deleteMailAccount(Long id) { public void deleteMailAccount(Long id) {
// 校验是否存在账号 // 校验是否存在账号
validateMailAccountExists(id); validateMailAccountExists(id);