108 lines
5.0 KiB
Java
108 lines
5.0 KiB
Java
package com.xwbing.controller.sys;
|
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import com.xwbing.domain.entity.sys.SysConfig;
|
|
import com.xwbing.service.sys.SysConfigService;
|
|
import com.xwbing.util.JSONObjResult;
|
|
import com.xwbing.util.RestMessage;
|
|
import io.swagger.annotations.Api;
|
|
import io.swagger.annotations.ApiImplicitParam;
|
|
import io.swagger.annotations.ApiImplicitParams;
|
|
import io.swagger.annotations.ApiOperation;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.LoggerFactory;
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
import javax.annotation.Resource;
|
|
import javax.validation.Valid;
|
|
import java.util.List;
|
|
|
|
/**
|
|
* 说明: 系统配置控制层
|
|
* 项目名称: boot-module-demo
|
|
* 创建时间: 2017/5/10 16:36
|
|
* 作者: xiangwb
|
|
*/
|
|
@Api(tags = "configApi", description = "系统配置相关接口")
|
|
@RestController
|
|
@RequestMapping("/config/")
|
|
public class SysConfigControl {
|
|
private final Logger logger = LoggerFactory.getLogger(SysConfigControl.class);
|
|
@Resource
|
|
private SysConfigService sysConfigService;
|
|
|
|
@ApiOperation(value = "新增", notes = "新增系统配置信息")
|
|
// @ApiImplicitParams({
|
|
// @ApiImplicitParam(name = "code", value = "配置项的key,长度为1-50", paramType = "query", required = true, dataType = "string"),
|
|
// @ApiImplicitParam(name = "value", value = "配置项的值", paramType = "query", required = true, dataType = "string"),
|
|
// @ApiImplicitParam(name = "enable", value = "是否启用,格式为Y|N", paramType = "query", required = true, dataType = "string"),
|
|
// @ApiImplicitParam(name = "name", value = "配置名称,长度为1-10", paramType = "query", required = true, dataType = "string")
|
|
// })
|
|
@PostMapping("save")
|
|
public JSONObject save(@RequestBody @Valid SysConfig sysConfig) {
|
|
String logMsg = "新增系统配置信息";
|
|
logger.info(logMsg);
|
|
RestMessage result = sysConfigService.save(sysConfig);
|
|
return JSONObjResult.toJSONObj(result);
|
|
}
|
|
|
|
@ApiOperation(value = "删除", notes = "根据code删除系统配置信息")
|
|
@ApiImplicitParam(name = "code", value = "配置项的code", paramType = "query", required = true, dataType = "string")
|
|
@GetMapping("removeByCode")
|
|
public JSONObject removeByCode(@RequestParam String code) {
|
|
String logMsg = "删除系统配置信息";
|
|
logger.info(logMsg + " code:{}", code);
|
|
if (StringUtils.isEmpty(code)) {
|
|
return JSONObjResult.toJSONObj("code不能为空");
|
|
}
|
|
RestMessage result = sysConfigService.removeByCode(code);
|
|
return JSONObjResult.toJSONObj(result);
|
|
}
|
|
|
|
@ApiOperation(value = "修改", notes = "修改系统配置信息")
|
|
@ApiImplicitParams({
|
|
@ApiImplicitParam(name = "code", value = "配置项的key,长度为1-50", paramType = "query", required = true, dataType = "string"),
|
|
@ApiImplicitParam(name = "value", value = "配置项的值", paramType = "query", required = true, dataType = "string"),
|
|
@ApiImplicitParam(name = "enable", value = "是否启用,格式为Y|N", paramType = "query", required = true, dataType = "string"),
|
|
})
|
|
@PostMapping("update")
|
|
public JSONObject update(SysConfig sysConfig) {
|
|
String logMsg = "修改系统配置信息";
|
|
logger.info(logMsg);
|
|
if (StringUtils.isEmpty(sysConfig.getCode()))
|
|
return JSONObjResult.toJSONObj("配置项的code不能为空");
|
|
RestMessage result = sysConfigService.update(sysConfig);
|
|
return JSONObjResult.toJSONObj(result);
|
|
}
|
|
|
|
@ApiOperation(value = "查找", notes = "根据key查找系统配置信息")
|
|
@ApiImplicitParam(name = "code", value = "配置项的code", paramType = "query", required = true, dataType = "string")
|
|
@GetMapping("getByCode")
|
|
public JSONObject getByCode(@RequestParam String code) {
|
|
String logMsg = "根据code查找系统配置信息";
|
|
logger.info(logMsg + " code:{}", code);
|
|
if (StringUtils.isEmpty(code)) {
|
|
return JSONObjResult.toJSONObj("code不能为空");
|
|
}
|
|
SysConfig one = sysConfigService.getByCode(code);
|
|
if (one == null) {
|
|
return JSONObjResult.toJSONObj("该配置不存在");
|
|
}
|
|
return JSONObjResult.toJSONObj(one, true, "");
|
|
}
|
|
|
|
@ApiOperation(value = "查找列表", notes = "根据是否启用查找配置列表")
|
|
@ApiImplicitParam(name = "enable", value = "是否启用,格式为Y|N", paramType = "query", required = true, dataType = "string")
|
|
@GetMapping("listByEnable")
|
|
public JSONObject listByEnable(@RequestParam String enable) {
|
|
String logMsg = "根据是否启用查找配置列表";
|
|
logger.info(logMsg + " enable:{}", enable);
|
|
if (StringUtils.isEmpty(enable)) {
|
|
return JSONObjResult.toJSONObj("是否启用不能为空");
|
|
}
|
|
List<SysConfig> byEnable = sysConfigService.listByEnable(enable);
|
|
return JSONObjResult.toJSONObj(byEnable, true, "");
|
|
}
|
|
}
|