package com.aps.core.domain.ApsPlate; import com.aps.common.core.annotation.Excel; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import java.io.Serial; import java.io.Serializable; import java.math.BigDecimal; import java.math.BigInteger; import java.util.ArrayList; import java.util.Date; import java.util.List; @Data @Schema(description = "钣金统计大表") public class ApsPlateProcessShopPlanStat implements Serializable { @Serial private static final long serialVersionUID = 1L; /** 主键id */ @Schema(description = "主键id", type = "String") private String id; /** 主件料号 */ @Schema(description = "主件料号", type = "String") @Excel(name = "主件料号") private String mainPartNumber; /** 主件客户 */ @Schema(description = "主件客户", type = "String") @Excel(name = "主件客户") private String customer; @Schema(description = "建树行", type = "String") @Excel(name = "建树行") private String requireTrackId;; /** 业务类型 */ @Schema(description = "业务类型", type = "String") @Excel(name = "业务类型") private String businessType; /** 单据号 */ @Schema(description = "单据号", type = "String") @Excel(name = "单据号") private String documentNumber; /** 料号 */ @Excel(name = "料号") @Schema(description = "料号", type = "String") private String itemNumber; /** 图号 */ @Schema(description = "图号", type = "String") @Excel(name = "图号") private String drawingNo; /** 版本号 */ @Schema(description = "版本号", type = "String") @Excel(name = "版本号") private String versionNumber; /** 低阶码*/ @Excel(name = "低阶码") private String lowOrderCode; /** 生产数量 */ @Schema(description = "生产数量", type = "String") @Excel(name = "生产数量") private BigDecimal productionQuantity; /** 需求分类 */ @Schema(description = "需求分类", type = "String") @Excel(name = "需求分类") private String requirementType; /** 单据状态 */ @Schema(description = "单据状态", type = "String") @Excel(name = "单据状态") private String documentStatus; /** 工单审核时间 */ @Schema(description = "审核时间", type = "String") @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @Excel(name = "审核时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") private Date approveOn; /** 工序号 */ @Excel(name = "工序号") private String processNumber; /** 当前工序 */ @Schema(description = "当前工序", type = "String") @Excel(name = "当前工序") private String workCenter; /** 当前工序责任人 */ @Excel(name = "当前工序责任人") private String department; /** 状态 */ @Excel(name = "状态") private String opStatus; /** 下一道工序 */ @Excel(name = "下一道工序") private String nextOpName; /** 系统完工时间 */ @Schema(description = "系统完工时间", type = "String") @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @Excel(name = "系统完工时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") private Date planEndDay; /** 工单创建时间 */ @Schema(description = "工单创建时间", type = "String") @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @Excel(name = "工单创建时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") private Date orderCreateTime; /** 工单开工时间 */ @Schema(description = "工单开工时间", type = "String") @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @Excel(name = "工单开工时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") private Date startWorkDate; @Schema(description = "剩余工序", type = "String") private String remainedProcess; /*--------*/ /** 再次确认完工时间 */ @Schema(description = "再次确认完工时间", type = "String") @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @Excel(name = "再次确认完工时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") private Date workOrderConfirmTime; /** 生产工厂 */ @Schema(description = "生产工厂", type = "String") @Excel(name = "生产工厂") private String productionBase; /** 齐套状况 */ @Schema(description = "齐套状况", type = "String") @Excel(name = "齐套状况") private String kittingCondition; /** 计划齐套时间 */ @Schema(description = "计划齐套时间", type = "String") @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @Excel(name = "计划齐套时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") private Date planKittingTime; /** 主件订单交期 */ @Schema(description = "主件订单交期", type = "String") @Excel(name = "主件订单交期") private BigInteger mainOrderDelivery; /** 下道工序所属部门 */ @Excel(name = "下道工序所属部门") private String nextProcessDeparment; /** 车间工序信息 */ private List deptPlans=new ArrayList<>(); }