package jnpf.onlinedev.model; import com.fasterxml.jackson.annotation.JsonAlias; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; /** * 批量删除id集合 * * @author JNPF开发平台组 * @version V3.1.0 * @copyright 引迈信息技术有限公司(https://www.jnpfsoft.com) * @date 2021/6/17 */ @Data @Schema(description="批量处理参数") public class BatchRemoveIdsVo { @Schema(description = "批量处理数据id") private String[] ids; @Schema(description = "流程id") private String flowId; /** * AUDIT 补丁(2026-08-01,登记 tasks/jnpf-platform-patches.md #6): * 前端启用电子签名的删除/批量删除会在请求体带 biz_sign(值为 lims_sign.f_id)。 * 原先此 VO 无此字段,Jackson 静默丢弃 —— 后端连收都收不到,删除无法进审计。 * *
@JsonAlias 不可省(2026-08-02 端到端实测才暴露):前端发的键是 snake_case 的 * {@code biz_sign}(见 dynamicModel/list/index.vue 的 handleDelete / handleBatchRemove), * 而 jnpf-visualdev 没有全局 SnakeCase 命名策略(实查:只有 jnpf-lims 自带 * {@code jnpf/config/JacksonConfig.java}),光有 camelCase 字段名收不到值、恒为 null。 * 用 @JsonAlias 而不是 @JsonProperty:两种拼法都收,将来前端改回 camelCase 也不会再断。 */ @Schema(description = "电子签名id") @JsonAlias("biz_sign") private String bizSign; }