# 风险处置后端接口契约 > 当前仓库为前端工程,无 Java 后端源码。本文件提供 BladeX 后端落库与接口实现契约,路径需放入 `blade-transport` 服务。 ## Controller ```java @RestController @AllArgsConstructor @RequestMapping("/risk-disposal") @Api(value = "风险处置", tags = "风险处置") public class RiskDisposalController { private final IRiskDisposalService riskDisposalService; @GetMapping("/list") public R> list(RiskDisposalQuery query, Query page) { IPage pages = riskDisposalService.selectRiskDisposalPage(Condition.getPage(page), query); return R.data(pages); } @GetMapping("/detail") public R detail(Long id) { return R.data(riskDisposalService.detail(id)); } @PostMapping("/dispose") public R dispose(@Valid @RequestBody RiskDisposalDTO dto) { return R.status(riskDisposalService.dispose(dto)); } @PostMapping("/batch-dispose") public R batchDispose(@Valid @RequestBody RiskDisposalBatchDTO dto) { return R.status(riskDisposalService.batchDispose(dto)); } } ``` ## 字段约定 - `riskLevel`: `low` 低,`medium` 中,`high` 高 - `disposalStatus`: `pending` 待处理,`processed` 已处理,`ignored` 已忽略 - `disposalMethod`: `process` 处理,`ignore` 忽略 - 列表默认按 `create_time DESC` 返回 - `riskNo` 由后端生成:`RK + yyyyMMdd + 3位流水号` ## 接口 - `GET /blade-transport/risk-disposal/list` - `GET /blade-transport/risk-disposal/detail?id=` - `POST /blade-transport/risk-disposal/dispose` - `POST /blade-transport/risk-disposal/batch-dispose` ## DTO ```java @Data public class RiskDisposalDTO { @NotNull(message = "风险ID不能为空") private Long id; @NotBlank(message = "请选择处理方式") private String disposalMethod; @Length(max = 500, message = "处置说明不能超过500个字符") private String disposalRemark; } @Data public class RiskDisposalBatchDTO { @NotEmpty(message = "风险ID不能为空") private List ids; @NotBlank(message = "请选择处理方式") private String disposalMethod; @Length(max = 500, message = "处置说明不能超过500个字符") private String disposalRemark; } ```