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
40
41
42
43
44
45
46
47
48
49
50
51
52
package cn.iocoder.yudao.module.mes.controller.admin.pd.techconfirm.vo;
 
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
 
/**
 * 产品技术确认函新增/修改 Request VO
 *
 * 注意:本 VO 只承载用户可填写的业务字段。
 * 状态、编制人/编制时间、审核人/审核时间、客户确认人/客户确认时间均由业务流程驱动,
 * 不接受前端传参,因此不在本 VO 中定义:
 * <ul>
 *     <li>状态:创建时固定为草稿,由提交审批、BPM 审批回调、客户确认逐步推进</li>
 *     <li>编制人/编制时间:创建时取当前登录用户与当前时间</li>
 *     <li>审核人/审核时间:BPM 审批结束时取审批人写入</li>
 *     <li>客户确认人/客户确认时间:客户确认时取当前登录用户与当前时间</li>
 * </ul>
 *
 * @author 超级管理员
 */
@Schema(description = "管理后台 - 产品技术确认函新增/修改 Request VO")
@Data
public class ProductTechConfirmSaveReqVO {
 
    @Schema(description = "编号(新增时为空,修改时必填)", requiredMode = Schema.RequiredMode.NOT_REQUIRED, example = "1024")
    private Long id;
 
    @Schema(description = "确认函编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "TC20260801001")
    private String confirmNo;
 
    @Schema(description = "客户ID(关联 crm_customer.id)", example = "2048")
    private Long customerId;
 
    @Schema(description = "客户名称", example = "江苏华鹏变压器有限公司")
    private String customerName;
 
    @Schema(description = "产品名称", example = "漆包扁铜线")
    private String productName;
 
    @Schema(description = "规格型号", example = "QQNB-2/120")
    private String specification;
 
    @Schema(description = "技术参数(JSON 格式)", example = "{\"thickness\":\"1.27\"}")
    private String techParams;
 
    @Schema(description = "模板类型(奥地利/日本/通用)", example = "general")
    private String templateType;
 
    @Schema(description = "备注", example = "测试备注")
    private String remark;
 
}