Browse Source

添加系统配置

mssql
Yen 3 years ago
parent
commit
fc4bb62ab8
  1. 15
      src/main/java/com/qs/serve/common/model/consts/SysConfigKey.java
  2. 70
      src/main/java/com/qs/serve/modules/sys/controller/SysConfigController.java
  3. 81
      src/main/java/com/qs/serve/modules/sys/entity/SysConfig.java
  4. 37
      src/main/java/com/qs/serve/modules/sys/entity/bo/SysConfigBo.java
  5. 14
      src/main/java/com/qs/serve/modules/sys/mapper/SysConfigMapper.java
  6. 14
      src/main/java/com/qs/serve/modules/sys/service/SysConfigService.java
  7. 22
      src/main/java/com/qs/serve/modules/sys/service/impl/SysConfigServiceImpl.java

15
src/main/java/com/qs/serve/common/model/consts/SysConfigKey.java

@ -0,0 +1,15 @@
package com.qs.serve.common.model.consts;
/**
* 系统配置
* @author YenHex
* @since 2022/11/12
*/
public interface SysConfigKey {
/**
* 费用超支
*/
String TbsBudgetOverspend = "budget-overspend";
}

70
src/main/java/com/qs/serve/modules/sys/controller/SysConfigController.java

@ -0,0 +1,70 @@
package com.qs.serve.modules.sys.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.qs.serve.common.model.annotation.SysLog;
import com.qs.serve.common.model.dto.PageVo;
import com.qs.serve.common.model.dto.R;
import com.qs.serve.common.model.enums.BizType;
import com.qs.serve.common.model.enums.SystemModule;
import com.qs.serve.common.util.PageUtil;
import com.qs.serve.common.util.CopierUtil;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import com.qs.serve.modules.sys.entity.bo.SysConfigBo;
import com.qs.serve.modules.sys.entity.SysConfig;
import com.qs.serve.modules.sys.service.SysConfigService;
import javax.validation.Valid;
import java.util.List;
/**
* 系统 系统配置
* @author YenHex
* @since 2022-11-12
*/
@Slf4j
@AllArgsConstructor
@RestController
@RequestMapping("sys/config")
public class SysConfigController {
private SysConfigService sysConfigService;
/**
* ID查询
* @param key
* @return
*/
@GetMapping("/getByKey/{key}")
@SysLog(module = SystemModule.SYSTEM, title = "系统配置", biz = BizType.QUERY)
@PreAuthorize("hasRole('sys:config:query')")
public R<SysConfig> getById(@PathVariable("key") String key){
LambdaQueryWrapper<SysConfig> lqw = new LambdaQueryWrapper<>();
lqw.eq(SysConfig::getConfigKey,key);
SysConfig sysConfig = sysConfigService.getOne(lqw);
return R.ok(sysConfig);
}
/**
* 更新
* @param param
* @return
*/
@PostMapping("/updateById")
@SysLog(module = SystemModule.SYSTEM, title = "系统配置", biz = BizType.UPDATE)
@PreAuthorize("hasRole('sys:config:update')")
public R<?> updateById(@RequestBody @Valid SysConfigBo param){
LambdaQueryWrapper<SysConfig> lqw = new LambdaQueryWrapper<>();
lqw.eq(SysConfig::getConfigKey,param.getConfigKey());
SysConfig sysConfig = sysConfigService.getOne(lqw);
sysConfig.setConfigValue(param.getConfigValue());
sysConfigService.updateById(sysConfig);
return R.ok();
}
}

81
src/main/java/com/qs/serve/modules/sys/entity/SysConfig.java

@ -0,0 +1,81 @@
package com.qs.serve.modules.sys.entity;
import java.time.LocalDate;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import org.hibernate.validator.constraints.Length;
import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.NotBlank;
/**
* 实体类
* @author YenHex
* @since 2022-11-12
*/
@Data
@TableName("sys_config")
public class SysConfig implements Serializable {
private static final long serialVersionUID = 1L;
/** id */
@TableId(type = IdType.AUTO)
private Long id;
/** 参数名称 */
@Length(max = 100,message = "参数名称长度不能超过100字")
private String configName;
/** 参数键名 */
@Length(max = 100,message = "参数键名长度不能超过100字")
private String configKey;
/** 参数键值 */
@Length(max = 500,message = "参数键值长度不能超过500字")
private String configValue;
/** 备注 */
@Length(max = 255,message = "备注长度不能超过255字")
private String remark;
/** 创建时间 */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@TableField(fill = FieldFill.INSERT)
private LocalDateTime createTime;
/** 创建人 */
@TableField(fill = FieldFill.INSERT)
private String createBy;
/** 更新时间 */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@TableField(fill = FieldFill.UPDATE)
private LocalDateTime updateTime;
/** 更新人 */
@TableField(fill = FieldFill.UPDATE)
private String updateBy;
/** 租户id */
@JsonIgnore
@JsonProperty
private String tenantId;
/** 删除标识 */
@JsonIgnore
@JsonProperty
private Boolean delFlag;
}

37
src/main/java/com/qs/serve/modules/sys/entity/bo/SysConfigBo.java

@ -0,0 +1,37 @@
package com.qs.serve.modules.sys.entity.bo;
import java.time.LocalDate;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import org.hibernate.validator.constraints.Length;
import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.NotBlank;
/**
* Bo
* @author YenHex
* @since 2022-11-12
*/
@Data
public class SysConfigBo implements Serializable {
private static final long serialVersionUID = 1L;
/** 参数键名 */
@Length(max = 100,message = "参数键名长度不能超过100字")
private String configKey;
/** 参数键值 */
@Length(max = 500,message = "参数键值长度不能超过500字")
private String configValue;
}

14
src/main/java/com/qs/serve/modules/sys/mapper/SysConfigMapper.java

@ -0,0 +1,14 @@
package com.qs.serve.modules.sys.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.qs.serve.modules.sys.entity.SysConfig;
/**
* Mapper
* @author YenHex
* @date 2022-11-12
*/
public interface SysConfigMapper extends BaseMapper<SysConfig> {
}

14
src/main/java/com/qs/serve/modules/sys/service/SysConfigService.java

@ -0,0 +1,14 @@
package com.qs.serve.modules.sys.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.qs.serve.modules.sys.entity.SysConfig;
/**
* 服务接口
* @author YenHex
* @date 2022-11-12
*/
public interface SysConfigService extends IService<SysConfig> {
}

22
src/main/java/com/qs/serve/modules/sys/service/impl/SysConfigServiceImpl.java

@ -0,0 +1,22 @@
package com.qs.serve.modules.sys.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import com.qs.serve.modules.sys.entity.SysConfig;
import com.qs.serve.modules.sys.service.SysConfigService;
import com.qs.serve.modules.sys.mapper.SysConfigMapper;
/**
* 服务实现类
* @author YenHex
* @since 2022-11-12
*/
@Slf4j
@Service
@AllArgsConstructor
public class SysConfigServiceImpl extends ServiceImpl<SysConfigMapper,SysConfig> implements SysConfigService {
}
Loading…
Cancel
Save