package jnpf.dmsController; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import jnpf.base.ActionResult; import jnpf.dmsService.DmsWenjianBianhaoGuizeFeiqiService; import jnpf.exception.DataException; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; 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.RestController; import java.util.Map; @Slf4j @Tag(name = "DMS文件编号规则接口", description = "文件编号规则业务操作") @RestController @RequestMapping("/biz/wenjian/bianhao/guize") public class DmsWenjianBianhaoGuizeController { @Autowired private DmsWenjianBianhaoGuizeFeiqiService feiqiService; @Operation(summary = "废弃文件编号规则") @PostMapping("/feiqi") public ActionResult feiqi(@RequestBody(required = false) Map formData) { String resolvedFlowId = resolveParam(formData, "flow_id", "flowId"); String resolvedTaskId = resolveParam(formData, "task_id", "taskId"); try { feiqiService.feiqiGuize(resolvedFlowId, resolvedTaskId); return ActionResult.success("文件编号规则废弃成功", "文件编号规则废弃成功"); } catch (DataException e) { log.warn("文件编号规则废弃失败:flowId={}, taskId={}, msg={}", resolvedFlowId, resolvedTaskId, e.getMessage()); return ActionResult.fail(e.getMessage()); } } private String resolveParam(Map formData, String snakeCaseKey, String camelCaseKey) { if (formData == null) { return ""; } Object raw = formData.get(snakeCaseKey); if (raw == null) { raw = formData.get(camelCaseKey); } return raw == null ? "" : trimToEmpty(String.valueOf(raw)); } private String trimToEmpty(String value) { return value == null ? "" : value.trim(); } }