feat:准备物料检化验

This commit is contained in:
shusir
2026-03-26 17:51:27 +08:00
parent b958080d22
commit e793be73ed
24 changed files with 670 additions and 21 deletions

View File

@@ -192,6 +192,7 @@ public interface ErrorCodeConstants {
ErrorCode MATERIAL_PRODUCTS_EXISTS_CATEGORY = new ErrorCode(1_032_160_000, "物料大类列表中存在分类数据");
ErrorCode MATERIAL_LIFECYCLE_DETAIL_NOT_EXISTS = new ErrorCode(1_032_160_000, "物料通用流程明细不存在");
ErrorCode MATERIAL_LIFECYCLE_NOT_EXISTS = new ErrorCode(1_032_160_000, "物料通用流程不存在");
ErrorCode MATERIAL_CORRELATION_ASSAY_NOT_EXISTS = new ErrorCode(1_032_160_000, "物料检化验关联信息不存在");
ErrorCode MATERIAL_BATCH_NOT_EXISTS = new ErrorCode(1_032_160_000, "物料批次不存在");
ErrorCode MATERIAL_BATCH_GONG_NOT_EXISTS = new ErrorCode(1_032_160_000, "物料批次工段不存在");

View File

@@ -14,4 +14,8 @@ public class MaterialConstants {
// 外部模块
public static final String DEVICE_BURETTE_CATEGORY_NAME = "滴定管";
// 流程
public static final String INIT_ASSAY_FLOW = "initAssayFlow";
public static final String ASSAY_FLAG = "assayFlag";
}

View File

@@ -1,6 +1,9 @@
package com.zt.plat.module.qms.resource.material.controller.vo;
import com.zt.plat.framework.common.pojo.PageParam;
import com.zt.plat.module.qms.resource.material.enums.MaterialBatchBusinessType;
import com.zt.plat.module.qms.resource.material.enums.MaterialBatchGongBusinessType;
import com.zt.plat.module.qms.resource.material.enums.MaterialBatchGongType;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
@@ -21,7 +24,7 @@ public class MaterialBatchPageReqVO extends PageParam {
private Long productId;
@Schema(description = "业务场景 batch_manage-批次管理acceptance-验收inbound-入库return_exchange-退换货")
private String businessType;
private MaterialBatchGongBusinessType businessType;
@Schema(description = "是否需要组装 children")
private Boolean children = false;

View File

@@ -30,6 +30,9 @@ public class MaterialBatchRespVO {
@ExcelProperty("物料大类id")
private Long productId;
@Schema(description = "关联的样品大类id")
private String productSampleIds;
@Schema(description = "分类自定义配置")
@ExcelProperty("分类自定义配置")
private JSONObject categoryCustomConfig;

View File

@@ -0,0 +1,62 @@
package com.zt.plat.module.qms.resource.material.controller.vo;
import com.zt.plat.framework.common.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import static com.zt.plat.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 物料检化验关联信息分页 Request VO")
@Data
public class MaterialCorrelationAssayPageReqVO extends PageParam {
@Schema(description = "检化验委托id,用于关联到检化验模块", example = "8699")
private Long entrustId;
@Schema(description = "业务类型,验收检化验等", example = "2")
private String businessType;
@Schema(description = "检验来源,如验收明细id")
private String source;
@Schema(description = "物料大类id", example = "31683")
private Long productId;
@Schema(description = "样品大类id,检化验业务样品大类", example = "1909")
private Long sampleId;
@Schema(description = "批次id", example = "3150")
private Long batchId;
@Schema(description = "批次拆分/工段id", example = "2292")
private Long gongduanId;
@Schema(description = "检测项")
private String item;
@Schema(description = "状态,未开始、进行中、已完成", example = "2")
private String assayStatus;
@Schema(description = "结果,检化验结果")
private String result;
@Schema(description = "是否合格,字典")
private String qualified;
@Schema(description = "说明")
private String reason;
@Schema(description = "所属部门")
private String systemDepartmentCode;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
}

View File

@@ -0,0 +1,79 @@
package com.zt.plat.module.qms.resource.material.controller.vo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.time.LocalDateTime;
@Schema(description = "管理后台 - 物料检化验关联信息 Response VO")
@Data
@ExcelIgnoreUnannotated
public class MaterialCorrelationAssayRespVO {
@Schema(description = "主键id", requiredMode = Schema.RequiredMode.REQUIRED, example = "6949")
@ExcelProperty("主键id")
private Long id;
@Schema(description = "检化验委托id,用于关联到检化验模块", example = "8699")
@ExcelProperty("检化验委托id,用于关联到检化验模块")
private Long entrustId;
@Schema(description = "业务类型,验收检化验等", example = "2")
@ExcelProperty("业务类型,验收检化验等")
private String businessType;
@Schema(description = "检验来源,如验收明细id")
@ExcelProperty("检验来源,如验收明细id")
private String source;
@Schema(description = "物料大类id", example = "31683")
@ExcelProperty("物料大类id")
private Long productId;
@Schema(description = "样品大类id,检化验业务样品大类", example = "1909")
@ExcelProperty("样品大类id,检化验业务样品大类")
private Long sampleId;
@Schema(description = "批次id", example = "3150")
@ExcelProperty("批次id")
private Long batchId;
@Schema(description = "批次拆分/工段id", example = "2292")
@ExcelProperty("批次拆分/工段id")
private Long gongduanId;
@Schema(description = "检测项")
@ExcelProperty("检测项")
private String item;
@Schema(description = "状态,未开始、进行中、已完成", example = "2")
@ExcelProperty("状态,未开始、进行中、已完成")
private String assayStatus;
@Schema(description = "结果,检化验结果")
@ExcelProperty("结果,检化验结果")
private String result;
@Schema(description = "是否合格,字典")
@ExcelProperty("是否合格,字典")
private String qualified;
@Schema(description = "说明")
@ExcelProperty("说明")
private String reason;
@Schema(description = "所属部门")
@ExcelProperty("所属部门")
private String systemDepartmentCode;
@Schema(description = "备注")
@ExcelProperty("备注")
private String remark;
@Schema(description = "创建时间")
@ExcelProperty("创建时间")
private LocalDateTime createTime;
}

View File

@@ -0,0 +1,55 @@
package com.zt.plat.module.qms.resource.material.controller.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@Schema(description = "管理后台 - 物料检化验关联信息新增/修改 Request VO")
@Data
public class MaterialCorrelationAssaySaveReqVO {
@Schema(description = "主键id", requiredMode = Schema.RequiredMode.REQUIRED, example = "6949")
private Long id;
@Schema(description = "检化验委托id,用于关联到检化验模块", example = "8699")
private Long entrustId;
@Schema(description = "业务类型,验收检化验等", example = "2")
private String businessType;
@Schema(description = "检验来源,如验收明细id")
private String source;
@Schema(description = "物料大类id", example = "31683")
private Long productId;
@Schema(description = "样品大类id,检化验业务样品大类", example = "1909")
private Long sampleId;
@Schema(description = "批次id", example = "3150")
private Long batchId;
@Schema(description = "批次拆分/工段id", example = "2292")
private Long gongduanId;
@Schema(description = "检测项")
private String item;
@Schema(description = "状态,未开始、进行中、已完成", example = "2")
private String assayStatus;
@Schema(description = "结果,检化验结果")
private String result;
@Schema(description = "是否合格,字典")
private String qualified;
@Schema(description = "说明")
private String reason;
@Schema(description = "所属部门")
private String systemDepartmentCode;
@Schema(description = "备注")
private String remark;
}

View File

@@ -30,6 +30,9 @@ public class MaterialLifecycleDetailRespVO {
@ExcelProperty("物料大类id")
private Long productId;
@Schema(description = "物料关联的样品大类")
private String productSampleIds;
@Schema(description = "物料大类名称")
@ExcelProperty("物料大类名称")
private String productName;
@@ -94,6 +97,9 @@ public class MaterialLifecycleDetailRespVO {
@ExcelProperty("是否检化验,1-是0-否")
private Integer assayFlag;
@Schema(description = "检化验id")
private Long assayId;
@Schema(description = "物料实例id", example = "968")
@ExcelProperty("物料实例id")
private Long infomationId;

View File

@@ -5,6 +5,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
@Schema(description = "管理后台 - 物料通用流程明细新增/修改 Request VO")
@Data
@@ -28,6 +29,12 @@ public class MaterialLifecycleDetailSaveReqVO {
@Schema(description = "是否检化验,1-是0-否")
private Integer assayFlag;
@Schema(description = "检化验样品大类")
private Long assaySampleId;
@Schema(description = "检化验检测项")
private List<Long> assayItemIds;
@Schema(description = "物料实例id", example = "968")
private Long infomationId;

Some files were not shown because too many files have changed in this diff Show More