perf: 对查询参数信息接口增加缓存处理
This commit is contained in:
parent
b7c504ab8f
commit
243ac0104a
@ -58,6 +58,11 @@ public class CacheConsts {
|
|||||||
*/
|
*/
|
||||||
public static final String DICT_KEY_PREFIX = "DICT";
|
public static final String DICT_KEY_PREFIX = "DICT";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 参数缓存键前缀
|
||||||
|
*/
|
||||||
|
public static final String OPTION_KEY_PREFIX = "OPTION";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 仪表盘缓存键前缀
|
* 仪表盘缓存键前缀
|
||||||
*/
|
*/
|
||||||
|
@ -20,10 +20,13 @@ import java.util.List;
|
|||||||
|
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
|
|
||||||
|
import org.springframework.cache.annotation.CacheConfig;
|
||||||
|
import org.springframework.cache.annotation.CacheEvict;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import cn.hutool.core.bean.BeanUtil;
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
|
|
||||||
|
import top.charles7c.cnadmin.common.constant.CacheConsts;
|
||||||
import top.charles7c.cnadmin.common.util.helper.QueryHelper;
|
import top.charles7c.cnadmin.common.util.helper.QueryHelper;
|
||||||
import top.charles7c.cnadmin.system.mapper.OptionMapper;
|
import top.charles7c.cnadmin.system.mapper.OptionMapper;
|
||||||
import top.charles7c.cnadmin.system.model.entity.OptionDO;
|
import top.charles7c.cnadmin.system.model.entity.OptionDO;
|
||||||
@ -41,6 +44,7 @@ import top.charles7c.cnadmin.system.service.OptionService;
|
|||||||
*/
|
*/
|
||||||
@Service
|
@Service
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
|
@CacheConfig(cacheNames = CacheConsts.OPTION_KEY_PREFIX)
|
||||||
public class OptionServiceImpl implements OptionService {
|
public class OptionServiceImpl implements OptionService {
|
||||||
|
|
||||||
private final OptionMapper baseMapper;
|
private final OptionMapper baseMapper;
|
||||||
@ -51,11 +55,13 @@ public class OptionServiceImpl implements OptionService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@CacheEvict(allEntries = true)
|
||||||
public void update(List<OptionRequest> request) {
|
public void update(List<OptionRequest> request) {
|
||||||
baseMapper.updateBatchById(BeanUtil.copyToList(request, OptionDO.class));
|
baseMapper.updateBatchById(BeanUtil.copyToList(request, OptionDO.class));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@CacheEvict(allEntries = true)
|
||||||
public void resetValue(ResetOptionValueRequest request) {
|
public void resetValue(ResetOptionValueRequest request) {
|
||||||
baseMapper.lambdaUpdate().set(OptionDO::getValue, null).in(OptionDO::getCode, request.getCode()).update();
|
baseMapper.lambdaUpdate().set(OptionDO::getValue, null).in(OptionDO::getCode, request.getCode()).update();
|
||||||
}
|
}
|
||||||
|
@ -129,6 +129,7 @@ public class CommonController {
|
|||||||
@SaIgnore
|
@SaIgnore
|
||||||
@Operation(summary = "查询参数", description = "查询参数")
|
@Operation(summary = "查询参数", description = "查询参数")
|
||||||
@GetMapping("/option")
|
@GetMapping("/option")
|
||||||
|
@Cacheable(cacheNames = CacheConsts.OPTION_KEY_PREFIX)
|
||||||
public R<List<LabelValueVO>> listOption(@Validated OptionQuery query) {
|
public R<List<LabelValueVO>> listOption(@Validated OptionQuery query) {
|
||||||
return R.ok(optionService.list(query).stream().map(option -> new LabelValueVO(option.getCode(),
|
return R.ok(optionService.list(query).stream().map(option -> new LabelValueVO(option.getCode(),
|
||||||
StrUtil.nullToDefault(option.getValue(), option.getDefaultValue()))).collect(Collectors.toList()));
|
StrUtil.nullToDefault(option.getValue(), option.getDefaultValue()))).collect(Collectors.toList()));
|
||||||
|
Loading…
Reference in New Issue
Block a user