package cn.iocoder.yudao.module.mes.controller.admin.qc.ipqc.vo; import cn.idev.excel.annotation.ExcelProperty; import io.swagger.v3.oas.annotations.media.Schema; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import java.math.BigDecimal; /** * 管理后台 - 过程检验单导入 Excel VO * * 说明:一行 = 一张过程检验单。产品物料按物料编码匹配系统已有数据(物料来自 MDM),批号必填; * 质检方案按名称匹配系统已有数据;检测人员留空取当前登录用户;检验单编号留空自动生成;状态固定为「待检验」。 * * @author 超级管理员 */ @Schema(description = "管理后台 - 过程检验单导入 Excel VO") @Data @Builder @AllArgsConstructor @NoArgsConstructor public class MesQcIpqcImportExcelVO { @ExcelProperty("检验单编号") @Schema(description = "检验单编号,留空则自动生成", example = "IPQC20260101000001") private String code; @ExcelProperty("检验单名称") @Schema(description = "检验单名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "XX批号过程检验") private String name; @ExcelProperty("检验类型") @Schema(description = "检验类型,填写字典 mes_ipqc_type 的名称,如 首检", requiredMode = Schema.RequiredMode.REQUIRED, example = "首检") private String type; @ExcelProperty("产品物料编码") @Schema(description = "产品物料编码,需与物料管理中的编码一致", requiredMode = Schema.RequiredMode.REQUIRED, example = "WL001") private String itemCode; @ExcelProperty("批号") @Schema(description = "批号", requiredMode = Schema.RequiredMode.REQUIRED, example = "BC20260101") private String batchCode; @ExcelProperty("质检方案") @Schema(description = "质检方案名称,留空则按物料自动匹配", example = "过程检验通用方案") private String templateName; @ExcelProperty("检测数量") @Schema(description = "检测数量,留空默认等于合格品数量与不合格品数量之和", example = "100") private BigDecimal checkQuantity; @ExcelProperty("合格品数量") @Schema(description = "合格品数量,不能小于 0", requiredMode = Schema.RequiredMode.REQUIRED, example = "95") private BigDecimal qualifiedQuantity; @ExcelProperty("不合格品数量") @Schema(description = "不合格品数量,不能小于 0", requiredMode = Schema.RequiredMode.REQUIRED, example = "5") private BigDecimal unqualifiedQuantity; @ExcelProperty("工废数量") @Schema(description = "工废数量,不能小于 0;留空按 0 处理", example = "2") private BigDecimal laborScrapQuantity; @ExcelProperty("料废数量") @Schema(description = "料废数量,不能小于 0;留空按 0 处理", example = "2") private BigDecimal materialScrapQuantity; @ExcelProperty("其他废品数量") @Schema(description = "其他废品数量,不能小于 0;留空按 0 处理", example = "1") private BigDecimal otherScrapQuantity; @ExcelProperty("检测结果") @Schema(description = "检测结果,填写字典 mes_qc_check_result 的名称,如 校验通过", example = "校验通过") private String checkResult; @ExcelProperty("检测人员") @Schema(description = "检测人员姓名,留空取当前登录用户", example = "张三") private String inspectorName; @ExcelProperty("检测日期") @Schema(description = "检测日期,格式如 2026-01-01 10:00:00;留空表示未填写", example = "2026-01-01 10:00:00") private String inspectDate; @ExcelProperty("备注") @Schema(description = "备注", example = "备注") private String remark; }