增加查询key值的接口

This commit is contained in:
2025-08-23 20:53:43 +08:00
parent 6f02115585
commit 84b972126e
11 changed files with 234 additions and 4 deletions

2
Jenkinsfile vendored
View File

@ -61,6 +61,8 @@ pipeline {
-p 8082:8082 \
-e SPRING_PROFILES_ACTIVE=test \
-e JAVA_OPTS="-Xms256m -Xmx512m -Duser.timezone=Asia/Shanghai" \
-e TZ=Asia/Shanghai \
-v /etc/localtime:/etc/localtime:ro \
--restart always \
\${DOCKER_IMAGE}
"""

View File

@ -2,15 +2,13 @@ package com.sczx.store.controller;
import com.sczx.store.common.Result;
import com.sczx.store.dto.SysConfigDTO;
import com.sczx.store.dto.SysDictDataDTO;
import com.sczx.store.service.SysDataService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@ -43,4 +41,18 @@ public class SysDataController {
return Result.ok(sysDataService.getDictDataByDicTypeAndValue(dicType, dicValue));
}
@ApiOperation(value = "根据key列表查询配置列表")
@PostMapping("/listConfigByConfigKey")
public Result<List<SysConfigDTO>> listConfigByConfigKey(@RequestBody List<String> configKeys){
return Result.ok(sysDataService.listConfigByConfigKey(configKeys));
}
@ApiOperation(value = "根据key查询配置")
@GetMapping("/getConfigByConfigKey")
public Result<SysConfigDTO> getConfigByConfigKey(@RequestParam(name = "configKey") String configKey){
return Result.ok(sysDataService.getConfigByConfigKey(configKey));
}
}

View File

@ -0,0 +1,16 @@
package com.sczx.store.convert;
import com.sczx.store.dto.SysConfigDTO;
import com.sczx.store.po.SysConfigPO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
import java.util.List;
@Mapper
public interface SysConfigConvert {
SysConfigConvert INSTANCE = Mappers.getMapper(SysConfigConvert.class);
SysConfigPO dtoToPO(SysConfigDTO dto);
SysConfigDTO poToDTO(SysConfigPO po);
List<SysConfigDTO> posToDtos(List<SysConfigPO> pos);
}

View File

@ -0,0 +1,43 @@
package com.sczx.store.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime;
@ApiModel(value = "SysConfigDTO")
@Data
public class SysConfigDTO {
@ApiModelProperty("参数主键")
private Integer configId;
@ApiModelProperty("参数名称")
private String configName;
@ApiModelProperty("参数键名")
private String configKey;
@ApiModelProperty("参数键值")
private String configValue;
@ApiModelProperty("系统内置Y是 N否")
private String configType;
@ApiModelProperty("创建者")
private String createBy;
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
@ApiModelProperty("更新者")
private String updateBy;
@ApiModelProperty("更新时间")
private LocalDateTime updateTime;
@ApiModelProperty("备注")
private String remark;
}

View File

@ -0,0 +1,16 @@
package com.sczx.store.mapper;
import com.sczx.store.po.SysConfigPO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* <p>
* 参数配置表 Mapper 接口
* </p>
*
* @author zhangli
* @since 2025-08-23 20:36:48
*/
public interface SysConfigMapper extends BaseMapper<SysConfigPO> {
}

View File

@ -0,0 +1,62 @@
package com.sczx.store.po;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* <p>
* 参数配置表
* </p>
*
* @author zhangli
* @since 2025-08-23 20:36:48
*/
@Getter
@Setter
@TableName("sys_config")
@ApiModel(value = "SysConfigPO对象", description = "参数配置表")
public class SysConfigPO implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty("参数主键")
@TableId(value = "config_id", type = IdType.AUTO)
private Integer configId;
@ApiModelProperty("参数名称")
private String configName;
@ApiModelProperty("参数键名")
private String configKey;
@ApiModelProperty("参数键值")
private String configValue;
@ApiModelProperty("系统内置Y是 N否")
private String configType;
@ApiModelProperty("创建者")
private String createBy;
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
@ApiModelProperty("更新者")
private String updateBy;
@ApiModelProperty("更新时间")
private LocalDateTime updateTime;
@ApiModelProperty("备注")
private String remark;
}

View File

@ -0,0 +1,16 @@
package com.sczx.store.repository;
import com.sczx.store.po.SysConfigPO;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 参数配置表 服务类
* </p>
*
* @author zhangli
* @since 2025-08-23 20:36:48
*/
public interface SysConfigRepo extends IService<SysConfigPO> {
}

View File

@ -0,0 +1,20 @@
package com.sczx.store.repository.impl;
import com.sczx.store.po.SysConfigPO;
import com.sczx.store.mapper.SysConfigMapper;
import com.sczx.store.repository.SysConfigRepo;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 参数配置表 服务实现类
* </p>
*
* @author zhangli
* @since 2025-08-23 20:36:48
*/
@Service
public class SysConfigRepoImpl extends ServiceImpl<SysConfigMapper, SysConfigPO> implements SysConfigRepo {
}

View File

@ -1,5 +1,6 @@
package com.sczx.store.service;
import com.sczx.store.dto.SysConfigDTO;
import com.sczx.store.dto.SysDictDataDTO;
import java.util.List;
@ -20,4 +21,18 @@ public interface SysDataService {
* @return
*/
SysDictDataDTO getDictDataByDicTypeAndValue(String dicType, String dicValue);
/**
* 根据配置key查询配置信息
* @param configKeys
* @return
*/
List<SysConfigDTO> listConfigByConfigKey(List<String> configKeys);
/**
* 根据配置key查询配置信息
* @param configKey
* @return
*/
SysConfigDTO getConfigByConfigKey(String configKey);
}

View File

@ -1,9 +1,13 @@
package com.sczx.store.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.sczx.store.convert.SysConfigConvert;
import com.sczx.store.convert.SysDictDataConvert;
import com.sczx.store.dto.SysConfigDTO;
import com.sczx.store.dto.SysDictDataDTO;
import com.sczx.store.po.SysConfigPO;
import com.sczx.store.po.SysDictDataPO;
import com.sczx.store.repository.SysConfigRepo;
import com.sczx.store.repository.SysDictDataRepo;
import com.sczx.store.service.SysDataService;
import lombok.extern.slf4j.Slf4j;
@ -19,6 +23,9 @@ public class SysDataServiceImpl implements SysDataService {
@Autowired
private SysDictDataRepo sysDictDataRepo;
@Autowired
private SysConfigRepo sysConfigRepo;
@Override
public List<SysDictDataDTO> listDictDataByDicType(String dicType) {
LambdaQueryWrapper<SysDictDataPO> wrapper = new LambdaQueryWrapper<>();
@ -34,4 +41,20 @@ public class SysDataServiceImpl implements SysDataService {
wrapper.eq(SysDictDataPO::getDictType, dicType).eq(SysDictDataPO::getDictValue, dicValue).last(" limit 1");
return SysDictDataConvert.INSTANCE.poToDTO(sysDictDataRepo.getOne(wrapper));
}
@Override
public List<SysConfigDTO> listConfigByConfigKey(List<String> configKeys) {
LambdaQueryWrapper<SysConfigPO> wrapper = new LambdaQueryWrapper<>();
wrapper.in(SysConfigPO::getConfigKey, configKeys);
List<SysConfigPO> sysConfigPOList = sysConfigRepo.list(wrapper);
return SysConfigConvert.INSTANCE.posToDtos(sysConfigPOList);
}
@Override
public SysConfigDTO getConfigByConfigKey(String configKey) {
LambdaQueryWrapper<SysConfigPO> wrapper = new LambdaQueryWrapper<>();
wrapper.in(SysConfigPO::getConfigKey, configKey);
return SysConfigConvert.INSTANCE.poToDTO(sysConfigRepo.getOne(wrapper));
}
}

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.sczx.store.mapper.SysConfigMapper">
</mapper>