lyh
2025-07-10 a881267112cc737874f64cee9d6196e3bc06f95f
系统参数配置
已添加7个文件
345 ■■■■■ 文件已修改
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/SysParamsController.java 160 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysParams.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/event/SysParamChangeEvent.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysParamsMapper.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysParamsMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysParamsService.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysParamsServiceImpl.java 57 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/SysParamsController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,160 @@
package org.jeecg.modules.system.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.modules.system.entity.SysParams;
import org.jeecg.modules.system.event.SysParamChangeEvent;
import org.jeecg.modules.system.service.ISysParamsService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationEventPublisher;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.util.Arrays;
/**
 * @Description: ç³»ç»Ÿå‚数表
 * @Author: server-boot
 * @Date:   2020-12-28
 * @Version: V1.0
 */
@Api(tags="系统参数表")
@RestController
@RequestMapping("/system/sysParams")
@Slf4j
public class SysParamsController {
    @Autowired
    private ISysParamsService ISysParamsService;
     @Autowired
     private ApplicationEventPublisher applicationEventPublisher;
    /**
     * åˆ†é¡µåˆ—表查询
     *
     * @param sysParams
     * @param req
     * @return
     */
    @ApiOperation(value="系统参数表-分页列表查询", notes="系统参数表-分页列表查询")
    @GetMapping(value = "/list")
    public Result<IPage<SysParams>> queryPageList(SysParams sysParams,
                                                  @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                                  @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                                  HttpServletRequest req) {
        QueryWrapper<SysParams> queryWrapper = QueryGenerator.initQueryWrapper(sysParams, req.getParameterMap());
        Page<SysParams> page = new Page<SysParams>(pageNo, pageSize);
        IPage<SysParams> pageList= ISysParamsService.page(page, queryWrapper);
        return Result.OK(pageList);
    }
    /**
     *   æ·»åŠ 
     *
     * @param sysParams
     * @return
     */
    @ApiOperation(value="系统参数表-添加", notes="系统参数表-添加")
    @PostMapping(value = "/add")
    public Result<?> add(@RequestBody SysParams sysParams) {
        ISysParamsService.save(sysParams);
        return Result.ok("添加成功!");
    }
     /**
      *  ç¼–辑(根据settingKey)
      *
      * @param sysParams
      * @return
      */
     @ApiOperation(value="系统参数表-编辑(根据settingKey)", notes="系统参数表-编辑(根据settingKey)")
     @PostMapping(value = "/edit/for/settingkey")
     public Result<?> editForSettingKey(@RequestBody SysParams sysParams) {
         SysParams params = ISysParamsService.getOne(new QueryWrapper<SysParams>().eq("setting_key",sysParams.getSettingKey()));
         if(params==null){
             ISysParamsService.save(sysParams);
         }else{
             params.setSettingValue(sysParams.getSettingValue());
             ISysParamsService.updateById(params);
         }
         return Result.ok("设置成功!");
     }
    /**
     *  ç¼–辑
     *
     * @param sysParams
     * @return
     */
    @ApiOperation(value="系统参数表-编辑", notes="系统参数表-编辑")
    @PutMapping(value = "/edit")
    public Result<?> edit(@RequestBody SysParams sysParams) {
        ISysParamsService.updateById(sysParams);
        //Event触发刷新
        applicationEventPublisher.publishEvent(new SysParamChangeEvent(this, sysParams));
        return Result.ok("编辑成功!");
    }
    /**
     *   é€šè¿‡id删除
     *
     * @param id
     * @return
     */
    @ApiOperation(value="系统参数表-通过id删除", notes="系统参数表-通过id删除")
    @DeleteMapping(value = "/delete")
    public Result<?> delete(@RequestParam(name="id",required=true) String id) {
        ISysParamsService.removeById(id);
        return Result.ok("删除成功!");
    }
    /**
     *  æ‰¹é‡åˆ é™¤
     *
     * @param ids
     * @return
     */
    @ApiOperation(value="系统参数表-批量删除", notes="系统参数表-批量删除")
    @DeleteMapping(value = "/deleteBatch")
    public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
        this.ISysParamsService.removeByIds(Arrays.asList(ids.split(",")));
        return Result.ok("批量删除成功!");
    }
    /**
     * é€šè¿‡id查询
     *
     * @param id
     * @return
     */
    @ApiOperation(value="系统参数表-通过id查询", notes="系统参数表-通过id查询")
    @GetMapping(value = "/queryById")
    public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
        SysParams sysParams = ISysParamsService.getById(id);
        if(sysParams==null) {
            return Result.error("未找到对应数据");
        }
        return Result.ok(sysParams);
    }
     /**
      * é€šè¿‡settingkey查询
      *
      * @param settingKey
      * @return
      */
     @ApiOperation(value="系统参数表-通过settingkey查询", notes="系统参数表-通过settingkey查询")
     @GetMapping(value = "/query/by/settingKey")
     public Result<?> queryBySettingKey(@RequestParam(name="settingKey",required=true) String settingKey) {
         SysParams sysParams = ISysParamsService.getOne(new QueryWrapper<SysParams>().eq("setting_key",settingKey));
         if(sysParams==null) {
             return Result.error("未找到对应数据");
         }
         return Result.ok(sysParams);
     }
}
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysParams.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,58 @@
package org.jeecg.modules.system.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
/**
 * @Description: ç³»ç»Ÿå‚数表
 * @Version: V1.0
 */
@Data
@TableName("sys_params")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="sys_params对象", description="系统参数表")
public class SysParams implements Serializable {
    private static final long serialVersionUID = 1L;
    /**主键*/
    @ApiModelProperty(value = "主键")
    private String id;
    /**参数名称*/
    @ApiModelProperty(value = "参数名称")
    private String settingName;
    /**参数键*/
    @ApiModelProperty(value = "参数键")
    private String settingKey;
    /**参数值*/
    @ApiModelProperty(value = "参数值")
    private String settingValue;
    /**备注*/
    @ApiModelProperty(value = "备注")
    private String remark;
    /**创建人*/
    @ApiModelProperty(value = "创建人")
    private String createBy;
    /**创建日期*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建日期")
    private Date createTime;
    /**更新人*/
    @ApiModelProperty(value = "更新人")
    private String updateBy;
    /**更新日期*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新日期")
    private Date updateTime;
}
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/event/SysParamChangeEvent.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,24 @@
package org.jeecg.modules.system.event;
import lombok.Data;
import org.jeecg.modules.system.entity.SysParams;
import org.springframework.context.ApplicationEvent;
/**
 * ç³»ç»Ÿå‚数变更Event事件
 */
@Data
public class SysParamChangeEvent extends ApplicationEvent {
    private SysParams sysParams;
    public SysParamChangeEvent(Object source, SysParams sysParams) {
        super(source);
        this.sysParams = sysParams;
    }
    public SysParams getSysParams(){
        return sysParams;
    }
}
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysParamsMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,13 @@
package org.jeecg.modules.system.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.jeecg.modules.system.entity.SysParams;
/**
 * @Description: ç³»ç»Ÿå‚数表
 * @Author: server-boot
 * @Date:   2020-12-28
 * @Version: V1.0
 */
public interface SysParamsMapper extends BaseMapper<SysParams> {
}
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysParamsMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,4 @@
<?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="org.jeecg.modules.system.mapper.SysParamsMapper">
</mapper>
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysParamsService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,29 @@
package org.jeecg.modules.system.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.system.entity.SysParams;
import javax.validation.constraints.NotNull;
import java.util.List;
/**
 * @Description: ç³»ç»Ÿå‚数表
 * @Author: server-boot
 * @Date:   2020-12-28
 * @Version: V1.0
 */
public interface ISysParamsService extends  IService<SysParams> {
    /**
     * æ ¹æ®å‚数键获取值
     * @param settingKey é”®
     *
     * */
    List<SysParams> getSysPramsBySettingKey(String settingKey);
    /**
     * æŸ¥è¯¢é…ç½®ä¿¡æ¯
     * @param keyName
     * @return
     */
    SysParams getSysPramBySettingKey(@NotNull String keyName);
}
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysParamsServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,57 @@
package org.jeecg.modules.system.service.impl;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.exception.ExceptionCast;
import org.jeecg.modules.system.entity.SysParams;
import org.jeecg.modules.system.mapper.SysParamsMapper;
import org.jeecg.modules.system.service.ISysParamsService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.validation.constraints.NotNull;
import java.util.List;
/**
 * <p>
 * ç”¨æˆ·è¡¨ æœåŠ¡å®žçŽ°ç±»
 * </p>
 *
 * @Author: scott
 * @Date: 2018-12-20
 */
@Service
@Slf4j
public class SysParamsServiceImpl extends ServiceImpl<SysParamsMapper, SysParams> implements ISysParamsService {
    @Autowired
    private SysParamsMapper sysParamsMapper;
    /**
     * æ ¹æ®key获取value
     * */
    @Override
    public List<SysParams> getSysPramsBySettingKey(@NotNull String settingKey) {
        return this.list(Wrappers.query(new SysParams().setSettingKey(settingKey)));
    }
    /**
     * æŸ¥è¯¢é…ç½®ä¿¡æ¯
     * @param keyName
     * @return
     */
    @Override
    public SysParams getSysPramBySettingKey(@NotNull String keyName) {
        List<SysParams>  keys = this.getSysPramsBySettingKey(keyName);
        if(keys.size() <= 0){
            log.error("系统配置错误,["+keyName+"]不存在");
            return null;
        }
        if(keys.size() > 1){
            ExceptionCast.cast("系统配置错误,["+keyName+"]存在多个配置项");
        }
        return keys.get(0);
    }
}