liu
23 小时以前 e347fd6e8b523b75e7eb28627ba3597cf9e40f6a
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
package cn.iocoder.yudao.module.erp.controller.admin.purchase.vo.plan;
 
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
 
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;
 
@Schema(description = "管理后台 - ERP 采购计划 Response VO")
@Data
@ExcelIgnoreUnannotated
public class ErpPurchasePlanRespVO {
 
    @Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
    @ExcelProperty("编号")
    private Long id;
 
    @Schema(description = "采购计划单号", example = "CGJH001")
    @ExcelProperty("计划单号")
    private String no;
 
    @Schema(description = "计划名称", example = "2026年8月运维备件计划")
    @ExcelProperty("计划名称")
    private String name;
 
    @Schema(description = "状态", example = "0")
    @ExcelProperty(value = "状态", converter = cn.iocoder.yudao.module.erp.convert.ErpPurchasePlanStatusConvert.class)
    private Integer status;
 
    @Schema(description = "需求来源(1=库存预警,2=运维/生产计划)", example = "1")
    private Integer demandSource;
 
    @Schema(description = "需求来源名称", example = "库存预警")
    private String demandSourceName;
 
    @Schema(description = "工作流编号(历史字段,改造后不再写入)", example = "b2c6c8f9-...")
    private String processInstanceId;
 
    @Schema(description = "审核人编号", example = "1")
    private Long reviewerId;
 
    @Schema(description = "审核人姓名", example = "李四")
    @ExcelProperty("审核人")
    private String reviewerName;
 
    @Schema(description = "审核时间")
    private LocalDateTime reviewTime;
 
    @Schema(description = "审核意见(通过时的意见 / 不通过时的原因)", example = "同意采购")
    @ExcelProperty("审核意见")
    private String reviewRemark;
 
    @Schema(description = "计划日期")
    @ExcelProperty("计划日期")
    private LocalDateTime planDate;
 
    @Schema(description = "编制人编号", example = "1")
    private Long planUserId;
 
    @Schema(description = "编制人姓名", example = "张三")
    @ExcelProperty("编制人")
    private String planUserName;
 
    @Schema(description = "编制部门编号", example = "1")
    private Long planDeptId;
 
    @Schema(description = "编制部门名称", example = "运维部")
    @ExcelProperty("编制部门")
    private String planDeptName;
 
    @Schema(description = "供应商编号(可选)", example = "1")
    private Long supplierId;
 
    @Schema(description = "供应商名称", example = "供应商A")
    @ExcelProperty("供应商")
    private String supplierName;
 
    @Schema(description = "合计数量", example = "100")
    @ExcelProperty("合计数量")
    private BigDecimal totalCount;
 
    @Schema(description = "是否已生成采购申请", example = "false")
    private Boolean generatedFlag;
 
    @Schema(description = "备注", example = "备注")
    @ExcelProperty("备注")
    private String remark;
 
    @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("创建时间")
    private LocalDateTime createTime;
 
    @Schema(description = "计划明细列表")
    private List<Item> items;
 
    @Schema(description = "产品名称列表(逗号拼接)", example = "产品A,产品B")
    private String productNames;
 
    @Schema(description = "计划明细项")
    @Data
    public static class Item {
 
        @Schema(description = "编号", example = "1")
        private Long id;
 
        @Schema(description = "产品编号", example = "1")
        private Long productId;
 
        @Schema(description = "产品名称", example = "产品A")
        private String productName;
 
        @Schema(description = "产品单位编号", example = "1")
        private Long productUnitId;
 
        @Schema(description = "产品单位名称", example = "个")
        private String productUnitName;
 
        @Schema(description = "计划采购数量", example = "10")
        private BigDecimal count;
 
        @Schema(description = "需求日期")
        private LocalDate demandTime;
 
        @Schema(description = "备注", example = "备注")
        private String remark;
 
    }
 
}