liding
2026-05-27 67647a9bdb5ca2c0acf5c5f635ec28d2e4d6c9db
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
package com.ruoyi.production.bean.vo;
 
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
 
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
 
/**
 * 自动领料结果 VO
 * <p>
 * 包含订单级和物料级的统计,以及成功/跳过/失败明细。
 */
@Data
@Schema(description = "自动领料结果")
public class AutoPickResultVo {
 
    @Schema(description = "订单总数")
    private int orderTotal;
 
    @Schema(description = "订单成功数(至少有一笔物料领料成功)")
    private int orderSuccess;
 
    @Schema(description = "订单失败/部分失败数")
    private int orderFail;
 
    @Schema(description = "物料项总数")
    private int materialTotal;
 
    @Schema(description = "领料成功数")
    private int materialSuccess;
 
    @Schema(description = "跳过数(已领/零需求等)")
    private int materialSkip;
 
    @Schema(description = "领料失败数")
    private int materialFail;
 
    @Schema(description = "成功明细")
    private List<ItemDetail> successList = new ArrayList<>();
 
    @Schema(description = "跳过明细")
    private List<ItemDetail> skipList = new ArrayList<>();
 
    @Schema(description = "失败明细")
    private List<ItemDetail> failList = new ArrayList<>();
 
    /**
     * 单笔物料领料明细
     */
    @Data
    @Schema(description = "领料明细项")
    public static class ItemDetail {
 
        @Schema(description = "生产订单ID")
        private Long productionOrderId;
 
        @Schema(description = "生产订单编号")
        private String productionOrderNo;
 
        @Schema(description = "产品规格ID")
        private Long productModelId;
 
        @Schema(description = "工序ID")
        private Long technologyOperationId;
 
        @Schema(description = "工序名称")
        private String operationName;
 
        @Schema(description = "需求数量")
        private BigDecimal demandedQuantity;
 
        @Schema(description = "领料数量")
        private BigDecimal pickQuantity;
 
        @Schema(description = "跳过/失败原因")
        private String reason;
    }
}