刘光辉
14 小时以前 34981c30a78e8bbd7791131059a9210f9928b62c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
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 静默丢弃 —— 后端连收都收不到,删除无法进审计。
     *
     * <p><b>@JsonAlias 不可省</b>(2026-08-02 端到端实测才暴露):前端发的键是 snake_case 的
     * {@code biz_sign}(见 dynamicModel/list/index.vue 的 handleDelete / handleBatchRemove),
     * 而 jnpf-visualdev <b>没有</b>全局 SnakeCase 命名策略(实查:只有 jnpf-lims 自带
     * {@code jnpf/config/JacksonConfig.java}),光有 camelCase 字段名收不到值、恒为 null。
     * 用 @JsonAlias 而不是 @JsonProperty:两种拼法都收,将来前端改回 camelCase 也不会再断。
     */
    @Schema(description = "电子签名id")
    @JsonAlias("biz_sign")
    private String bizSign;
}