package cn.iocoder.yudao.module.mes.controller.admin.pro.workorder.vo; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.experimental.Accessors; import java.math.BigDecimal; import java.util.List; @Schema(description = "管理后台 - MES 生产工单进度详情 Response VO") @Data @Accessors(chain = true) public class MesProWorkOrderProgressRespVO { @Schema(description = "工单ID", example = "1001") private Long workOrderId; @Schema(description = "工单编码", example = "WO202401150001") private String workOrderCode; @Schema(description = "生产数量", example = "100") private BigDecimal quantity; @Schema(description = "已排产数量", example = "100") private BigDecimal quantityScheduled; @Schema(description = "已生产数量", example = "80") private BigDecimal quantityProduced; @Schema(description = "总进度百分比", example = "80") private BigDecimal progressPercent; @Schema(description = "工序进度列表") private List processList; @Data @Accessors(chain = true) public static class ProcessProgress { @Schema(description = "工序ID", example = "1") private Long processId; @Schema(description = "工序编码", example = "P001") private String processCode; @Schema(description = "工序名称", example = "下料") private String processName; @Schema(description = "是否关键工序") private Boolean keyFlag; @Schema(description = "计划数量(关键工序)", example = "100") private BigDecimal plannedQuantity; @Schema(description = "已生产数量", example = "80") private BigDecimal producedQuantity; @Schema(description = "进度百分比", example = "80") private BigDecimal progressPercent; @Schema(description = "工序状态(0=未开始, 1=进行中, 2=已完成)", example = "1") private Integer status; @Schema(description = "任务列表") private List taskList; } @Data @Accessors(chain = true) public static class TaskInfo { @Schema(description = "任务ID", example = "101") private Long taskId; @Schema(description = "任务编码", example = "T202401150001") private String taskCode; @Schema(description = "工作站名称", example = "下料区-A01") private String workstationName; @Schema(description = "排产数量", example = "100") private BigDecimal quantity; @Schema(description = "已生产数量", example = "100") private BigDecimal producedQuantity; @Schema(description = "进度百分比", example = "100") private BigDecimal progressPercent; @Schema(description = "任务状态", example = "3") private Integer status; } }