Compare commits

...

2 Commits

Author SHA1 Message Date
caolin 8fa894e344 字典值列表查询 2023-08-13 11:11:28 +08:00
caolin 963d35a9a5 字典值查询 2023-08-13 00:50:27 +08:00
8 changed files with 146 additions and 16 deletions

View File

@ -2,6 +2,7 @@ package com.jwl.driver.server.controller;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.jwl.driver.server.entity.TdSysConfig;
import com.jwl.driver.server.response.BaseResponse; import com.jwl.driver.server.response.BaseResponse;
import com.jwl.driver.server.service.ITdSysConfigService; import com.jwl.driver.server.service.ITdSysConfigService;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
@ -35,8 +36,8 @@ public class TdSysConfigController {
*/ */
@ApiOperation("根据配置key和carTypeId获取配置信息,配置与车型无关则carTypeId为-1") @ApiOperation("根据配置key和carTypeId获取配置信息,配置与车型无关则carTypeId为-1")
@GetMapping(value = "/queryConfigByKey") @GetMapping(value = "/queryConfigByKey")
public BaseResponse queryConfigByKey(@RequestParam("configKey") String configKey,@RequestParam("carTypeId") Integer carTypeId) { public BaseResponse queryConfigByKey(@RequestParam("configKey") String configKey, @RequestParam("carTypeId") Integer carTypeId) {
return BaseResponse.success(configService.queryConfigByKey(configKey,carTypeId)); return BaseResponse.success(configService.queryConfigByKey(configKey, carTypeId));
} }
/** /**
@ -44,10 +45,19 @@ public class TdSysConfigController {
*/ */
@ApiOperation("根据配置key获取配置值") @ApiOperation("根据配置key获取配置值")
@GetMapping(value = "/queryConfigValueByKey") @GetMapping(value = "/queryConfigValueByKey")
public BaseResponse<String> queryConfigValueByKey(@RequestParam("configKey") String configKey,@RequestParam("carTypeId") Integer carTypeId) { public BaseResponse<String> queryConfigValueByKey(@RequestParam("configKey") String configKey, @RequestParam("carTypeId") Integer carTypeId) {
return BaseResponse.success(configService.queryConfigValueByKey(configKey,carTypeId)); return BaseResponse.success(configService.queryConfigValueByKey(configKey, carTypeId));
} }
/**
* keyscarTypeId,carTypeId-1
*/
@ApiOperation("根据配置keys和carTypeId获取配置信息,配置与车型无关则carTypeId为-1")
@PostMapping(value = "/queryConfigByKeys")
public BaseResponse<Map<String, TdSysConfig>> queryConfigByKeys(@RequestParam("configKeys") String configKeys, @RequestParam("carTypeId") Integer carTypeId) {
return BaseResponse.success(configService.queryConfigByKeys(Arrays.asList(configKeys.split(",")),carTypeId));
}
} }

View File

@ -1,10 +1,23 @@
package com.jwl.driver.server.controller; package com.jwl.driver.server.controller;
import org.springframework.web.bind.annotation.RequestMapping; import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jwl.driver.server.entity.TdSysConfigList;
import com.jwl.driver.server.response.BaseResponse;
import com.jwl.driver.server.service.ITdSysConfigListService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
/** /**
* <p> * <p>
* ; * ;
@ -13,8 +26,36 @@ import org.springframework.stereotype.Controller;
* @author Automated procedures * @author Automated procedures
* @since 2023-08-10 * @since 2023-08-10
*/ */
@Controller @Api(tags = "字典值列表配置")
@RequestMapping("//tdSysConfigList") @RestController
@RequestMapping("/tdSysConfigList")
@Slf4j
public class TdSysConfigListController { public class TdSysConfigListController {
@Autowired
private ITdSysConfigListService configListService;
/**
* configKeycarTypeId
*/
@ApiOperation("根据configKey和carTypeId查询系统配置列表")
@PostMapping("/querySysConfigList")
public BaseResponse querySysConfigList(@RequestParam("configKey") String configKey, @RequestParam("carTypeId") Integer carTypeId) {
log.info("request to querySysConfigList {}", configKey);
List<TdSysConfigList> resultList = configListService.querySysConfigList(configKey, carTypeId);
return BaseResponse.success(resultList);
}
/**
* key carTypeId
*/
@ApiOperation("通过多个配置key 和 carTypeId 查询多个配置列表")
@PostMapping("/querySysConfigMap")
public BaseResponse querySysConfigMap(@RequestParam("configKey") String configKeys, @RequestParam("carTypeId") Integer carTypeId) {
log.info("request to querySysConfigList {}", configKeys);
Map<String, Map<String, String>> map = configListService.querySysConfigMap(Arrays.asList(configKeys.split(",")), carTypeId);
return BaseResponse.success(map);
}
} }

View File

@ -46,10 +46,4 @@ public class GlobalExceptionHandler {
public BaseResponse<?> signatureException(SignatureException e) { public BaseResponse<?> signatureException(SignatureException e) {
return BaseResponse.fail("E004", "token is invalid"); return BaseResponse.fail("E004", "token is invalid");
} }
@ExceptionHandler(Exception.class)
public BaseResponse<?> exception(Exception e) {
e.printStackTrace();
return BaseResponse.fail(StatusEnum.FAIL.getCode(), null, null);
}
} }

View File

@ -3,6 +3,9 @@ package com.jwl.driver.server.service;
import com.jwl.driver.server.entity.TdSysConfigList; import com.jwl.driver.server.entity.TdSysConfigList;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
import java.util.Map;
/** /**
* <p> * <p>
* ; * ;
@ -13,4 +16,19 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/ */
public interface ITdSysConfigListService extends IService<TdSysConfigList> { public interface ITdSysConfigListService extends IService<TdSysConfigList> {
/**
* configKeycarTypeId
* @param configKey
* @param carTypeId
* @return
*/
List<TdSysConfigList> querySysConfigList(String configKey, Integer carTypeId);
/**
* key carTypeId
* @param configKeyList
* @param carTypeId
* @return
*/
Map<String, Map<String, String>> querySysConfigMap(List<String> configKeyList, Integer carTypeId);
} }

View File

@ -3,6 +3,9 @@ package com.jwl.driver.server.service;
import com.jwl.driver.server.entity.TdSysConfig; import com.jwl.driver.server.entity.TdSysConfig;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
import java.util.Map;
/** /**
* <p> * <p>
* ; * ;
@ -28,4 +31,12 @@ public interface ITdSysConfigService extends IService<TdSysConfig> {
* @return * @return
*/ */
String queryConfigValueByKey(String configKey,Integer carTypeId); String queryConfigValueByKey(String configKey,Integer carTypeId);
/**
* keyscarTypeId,carTypeId-1
* @param configKeyList
* @param carTypeId
* @return
*/
Map<String, TdSysConfig> queryConfigByKeys(List<String> configKeyList,Integer carTypeId);
} }

View File

@ -1,11 +1,20 @@
package com.jwl.driver.server.service.impl; package com.jwl.driver.server.service.impl;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.jwl.driver.server.constant.Constants;
import com.jwl.driver.server.entity.TdSysConfigList; import com.jwl.driver.server.entity.TdSysConfigList;
import com.jwl.driver.server.mapper.TdSysConfigListMapper; import com.jwl.driver.server.mapper.TdSysConfigListMapper;
import com.jwl.driver.server.service.ITdSysConfigListService; import com.jwl.driver.server.service.ITdSysConfigListService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/** /**
* <p> * <p>
* ; * ;
@ -17,4 +26,33 @@ import org.springframework.stereotype.Service;
@Service @Service
public class TdSysConfigListServiceImpl extends ServiceImpl<TdSysConfigListMapper, TdSysConfigList> implements ITdSysConfigListService { public class TdSysConfigListServiceImpl extends ServiceImpl<TdSysConfigListMapper, TdSysConfigList> implements ITdSysConfigListService {
@Override
public List<TdSysConfigList> querySysConfigList(String configKey, Integer carTypeId) {
LambdaQueryWrapper<TdSysConfigList> queryWrapper = new LambdaQueryWrapper<TdSysConfigList>()
.eq(TdSysConfigList::getCarTypeId, carTypeId)
.eq(TdSysConfigList::getConfigKey, configKey)
.eq(TdSysConfigList::getIsActive, Constants.IS_ACTIVE_TRUE)
.orderByAsc(TdSysConfigList::getShowOrder);
return this.getBaseMapper().selectList(queryWrapper);
}
@Override
public Map<String, Map<String, String>> querySysConfigMap(List<String> configKeyList, Integer carTypeId) {
Map<String, Map<String, String>> resultMap = new HashMap<>();
LambdaQueryWrapper<TdSysConfigList> queryWrapper = new LambdaQueryWrapper<TdSysConfigList>()
.eq(TdSysConfigList::getCarTypeId, carTypeId)
.in(TdSysConfigList::getConfigKey, configKeyList)
.eq(TdSysConfigList::getIsActive, Constants.IS_ACTIVE_TRUE);
List<TdSysConfigList> configLists = this.getBaseMapper().selectList(queryWrapper);
for (String configKey : configKeyList) {
Map<String, String> collect = configLists.stream().filter(s -> StrUtil.equals(s.getConfigKey(), configKey))
.sorted(Comparator.comparing(TdSysConfigList::getShowOrder))
.collect(Collectors.toMap(TdSysConfigList::getConfigItemCode, TdSysConfigList::getConfigItemName));
resultMap.put(configKey, collect);
}
return resultMap;
}
} }

View File

@ -1,5 +1,6 @@
package com.jwl.driver.server.service.impl; package com.jwl.driver.server.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.jwl.driver.server.constant.Constants; import com.jwl.driver.server.constant.Constants;
@ -11,6 +12,11 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/** /**
* <p> * <p>
@ -27,7 +33,6 @@ public class TdSysConfigServiceImpl extends ServiceImpl<TdSysConfigMapper, TdSys
@Override @Override
public TdSysConfig queryConfigByKey(String configKey, Integer carTypeId) { public TdSysConfig queryConfigByKey(String configKey, Integer carTypeId) {
log.info("获取系统配置参数configKey{}", configKey); log.info("获取系统配置参数configKey{}", configKey);
LocalDateTime now = LocalDateTime.now();
LambdaQueryWrapper<TdSysConfig> queryWrapper = new QueryWrapper<TdSysConfig>().lambda() LambdaQueryWrapper<TdSysConfig> queryWrapper = new QueryWrapper<TdSysConfig>().lambda()
.eq(TdSysConfig::getCarTypeId,carTypeId) .eq(TdSysConfig::getCarTypeId,carTypeId)
.eq(TdSysConfig::getConfigKey, configKey) .eq(TdSysConfig::getConfigKey, configKey)
@ -38,7 +43,6 @@ public class TdSysConfigServiceImpl extends ServiceImpl<TdSysConfigMapper, TdSys
@Override @Override
public String queryConfigValueByKey(String configKey, Integer carTypeId) { public String queryConfigValueByKey(String configKey, Integer carTypeId) {
log.info("获取系统配置参数configKey{}", configKey); log.info("获取系统配置参数configKey{}", configKey);
LocalDateTime now = LocalDateTime.now();
LambdaQueryWrapper<TdSysConfig> queryWrapper = new QueryWrapper<TdSysConfig>().lambda() LambdaQueryWrapper<TdSysConfig> queryWrapper = new QueryWrapper<TdSysConfig>().lambda()
.eq(TdSysConfig::getCarTypeId,carTypeId) .eq(TdSysConfig::getCarTypeId,carTypeId)
.eq(TdSysConfig::getConfigKey, configKey) .eq(TdSysConfig::getConfigKey, configKey)
@ -49,4 +53,19 @@ public class TdSysConfigServiceImpl extends ServiceImpl<TdSysConfigMapper, TdSys
} }
return config.getConfigValue(); return config.getConfigValue();
} }
@Override
public Map<String, TdSysConfig> queryConfigByKeys(List<String> configKeyList,Integer carTypeId) {
log.info("获取系统配置参数configKeyList{}", configKeyList);
LambdaQueryWrapper<TdSysConfig> queryWrapper = new QueryWrapper<TdSysConfig>().lambda()
.eq(TdSysConfig::getCarTypeId,carTypeId)
.in(TdSysConfig::getConfigKey, configKeyList)
.eq(TdSysConfig::getIsActive, Constants.IS_ACTIVE_TRUE);
List<TdSysConfig> configList = list(queryWrapper);
if(CollectionUtil.isEmpty(configList)) {
return Collections.EMPTY_MAP;
}
return configList.stream().collect(Collectors.toMap(TdSysConfig::getConfigKey, sysConfig -> sysConfig));
}
} }

View File

@ -10,7 +10,6 @@ import com.aliyuncs.profile.DefaultProfile;
import com.aliyuncs.profile.IClientProfile; import com.aliyuncs.profile.IClientProfile;
import com.jwl.driver.server.constant.Constants; import com.jwl.driver.server.constant.Constants;
import com.jwl.driver.server.exception.BusinessException; import com.jwl.driver.server.exception.BusinessException;
import jdk.vm.ci.meta.Constant;
import lombok.Data; import lombok.Data;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;