97 lines
4.6 KiB
Java
97 lines
4.6 KiB
Java
package com.bruce.common.controller;
|
|
|
|
import com.bruce.common.domain.model.RequestResult;
|
|
import com.bruce.common.dto.request.SysEnumBatchSaveRequest;
|
|
import com.bruce.common.dto.request.SysEnumManageQueryRequest;
|
|
import com.bruce.common.dto.request.SysEnumQueryRequest;
|
|
import com.bruce.common.dto.request.SysEnumSaveRequest;
|
|
import com.bruce.common.dto.response.SysEnumResponse;
|
|
import com.bruce.common.service.ISysEnumService;
|
|
import io.swagger.v3.oas.annotations.Operation;
|
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.web.bind.annotation.GetMapping;
|
|
import org.springframework.web.bind.annotation.PostMapping;
|
|
import org.springframework.web.bind.annotation.RequestBody;
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
import org.springframework.web.bind.annotation.RequestParam;
|
|
import org.springframework.web.bind.annotation.RestController;
|
|
|
|
import java.util.List;
|
|
|
|
@Tag(name = "系统枚举管理")
|
|
@Slf4j
|
|
@RestController
|
|
@RequestMapping("/api/sys-enum")
|
|
public class SysEnumController {
|
|
|
|
@Autowired
|
|
private ISysEnumService sysEnumService;
|
|
|
|
@Operation(summary = "查询全部系统枚举")
|
|
@PostMapping("/list")
|
|
public RequestResult<List<SysEnumResponse>> list() {
|
|
log.info("SysEnumController.list start");
|
|
List<SysEnumResponse> responses = sysEnumService.listResponses();
|
|
log.info("SysEnumController.list success, count={}", responses.size());
|
|
return RequestResult.success(responses);
|
|
}
|
|
|
|
@Operation(summary = "根据模块和类型查询系统枚举")
|
|
@PostMapping("/query")
|
|
public RequestResult<List<SysEnumResponse>> queryByCatalogAndType(@RequestBody SysEnumQueryRequest request) {
|
|
log.info("SysEnumController.queryByCatalogAndType start, request={}", request);
|
|
List<SysEnumResponse> responses = sysEnumService.listByCatalogAndTypeResponses(request);
|
|
log.info("SysEnumController.queryByCatalogAndType success, count={}", responses.size());
|
|
return RequestResult.success(responses);
|
|
}
|
|
|
|
@Operation(summary = "管理端查询系统枚举")
|
|
@PostMapping("/queryForManagement")
|
|
public RequestResult<List<SysEnumResponse>> queryForManagement(@RequestBody(required = false) SysEnumManageQueryRequest request) {
|
|
log.info("SysEnumController.queryForManagement start, request={}", request);
|
|
List<SysEnumResponse> responses = sysEnumService.listForManagement(request);
|
|
log.info("SysEnumController.queryForManagement success, count={}", responses.size());
|
|
return RequestResult.success(responses);
|
|
}
|
|
|
|
@Operation(summary = "查询系统枚举详情")
|
|
@GetMapping("/detail")
|
|
public RequestResult<SysEnumResponse> getById(@RequestParam("id") Long id) {
|
|
log.info("SysEnumController.getById start, id={}", id);
|
|
SysEnumResponse response = sysEnumService.getResponseById(id);
|
|
log.info("SysEnumController.getById success, id={}, found={}", id, response != null);
|
|
return RequestResult.success(response);
|
|
}
|
|
|
|
@Operation(summary = "新增或修改系统枚举")
|
|
@PostMapping("/save")
|
|
public RequestResult<Boolean> saveOrUpdate(@RequestBody SysEnumSaveRequest request) {
|
|
log.info("SysEnumController.saveOrUpdate start, request={}", request);
|
|
Boolean result = sysEnumService.saveOrUpdate(request);
|
|
log.info("SysEnumController.saveOrUpdate success, id={}, catalog={}, type={}, value={}, result={}",
|
|
request.getId(), request.getCatalog(), request.getType(), request.getValue(), result);
|
|
return RequestResult.success(result);
|
|
}
|
|
|
|
@Operation(summary = "批量新增系统枚举")
|
|
@PostMapping("/batchSave")
|
|
public RequestResult<Boolean> batchSave(@RequestBody SysEnumBatchSaveRequest request) {
|
|
log.info("SysEnumController.batchSave start, request={}", request);
|
|
Boolean result = sysEnumService.batchSave(request);
|
|
log.info("SysEnumController.batchSave success, catalog={}, type={}, itemCount={}, result={}",
|
|
request.getCatalog(), request.getType(), request.getItems() == null ? 0 : request.getItems().size(), result);
|
|
return RequestResult.success(result);
|
|
}
|
|
|
|
@Operation(summary = "删除系统枚举")
|
|
@PostMapping("/delete")
|
|
public RequestResult<Boolean> deleteById(@RequestParam("id") Long id) {
|
|
log.info("SysEnumController.deleteById start, id={}", id);
|
|
Boolean result = sysEnumService.removeById(id);
|
|
log.info("SysEnumController.deleteById success, id={}, result={}", id, result);
|
|
return RequestResult.success(result);
|
|
}
|
|
}
|