Files
common_agent/src/main/java/com/bruce/common/controller/SysEnumController.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);
}
}