package cn.iocoder.yudao.module.mes.controller.admin.pro.feedback.vo; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import java.math.BigDecimal; import java.time.LocalDateTime; import java.util.List; import java.util.Map; /** * 管理后台 - 生产任务执行反馈分析 Response VO * *
把计划、实际报工、设备采集、物料消耗、交期偏差汇总到一处,
* 供车间与计划员定位延期原因。所有数据均来自现有表,不做推断性补数。
*/
@Schema(description = "管理后台 - 生产任务执行反馈分析 Response VO")
@Data
public class MesProTaskExecutionRespVO {
@Schema(description = "任务编号")
private Long taskId;
@Schema(description = "任务编码")
private String taskCode;
@Schema(description = "任务名称")
private String taskName;
@Schema(description = "生产工单编号")
private Long workOrderId;
@Schema(description = "任务状态")
private Integer status;
@Schema(description = "计划数量")
private BigDecimal plannedQuantity;
@Schema(description = "实际报工数量")
private BigDecimal producedQuantity;
@Schema(description = "合格数量")
private BigDecimal qualifyQuantity;
@Schema(description = "报废数量")
private BigDecimal unqualifyQuantity;
@Schema(description = "完成率(%)")
private BigDecimal completionRate;
@Schema(description = "计划开始时间")
private LocalDateTime startTime;
@Schema(description = "实际首次报工时间")
private LocalDateTime firstFeedbackTime;
@Schema(description = "实际最后报工时间")
private LocalDateTime lastFeedbackTime;
@Schema(description = "计划完成时间")
private LocalDateTime finishDate;
@Schema(description = "计划工时(分钟)")
private Integer plannedDuration;
@Schema(description = "实际耗时(分钟,首次到末次报工)")
private Long actualDuration;
@Schema(description = "是否延期")
private Boolean delayed;
@Schema(description = "延期天数(正数表示超期)")
private Long delayDays;
@Schema(description = "延期原因(按可观测信号给出的候选,需人工确认)")
private List