fix(incoming-inspection): 优化检验数量类型及校验并新增查询返回VO

- 将来料检验申请与任务实体中的检验数量类型由BigDecimal改为Integer
- 增加检验数量最小值校验,确保其必须大于0
- 更新相关接口测试用例,补充类型字段并调整检验数量相关断言
- 修改启动日志输出,明确QMS admin服务启动信息
- 新增来料检测任务查询返回VO类,包含详细任务及检验信息字段
This commit is contained in:
曹鹏飞 2026-04-22 13:51:29 +08:00
parent 2e2111c0ba
commit 510261a9e5
5 changed files with 18 additions and 18 deletions

View File

@ -19,7 +19,7 @@ public class QmsApplication {
public static void main(String[] args) { public static void main(String[] args) {
SpringApplication.run(QmsApplication.class, args); SpringApplication.run(QmsApplication.class, args);
log.info("【QMS】服务已启动"); log.info("【QMS】admin服务已启动");
log.info("---------------------- Sa-Token SSO 模式二 Client 端启动成功 ----------------------"); log.info("---------------------- Sa-Token SSO 模式二 Client 端启动成功 ----------------------");
log.info("配置信息:" + SaSsoManager.getClientConfig()); log.info("配置信息:" + SaSsoManager.getClientConfig());
} }

View File

@ -12,8 +12,6 @@ import org.junit.jupiter.api.Order;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.TestMethodOrder; import org.junit.jupiter.api.TestMethodOrder;
import java.math.BigDecimal;
/** /**
* 对外接口-来料检验申请 接口测试 * 对外接口-来料检验申请 接口测试
* <p> * <p>
@ -100,6 +98,7 @@ public class ExternalIncomingInspectionTaskApiTest {
request.setDeliveryOrderLine("10"); request.setDeliveryOrderLine("10");
request.setPurchaseOrderNo("PO20240101001"); request.setPurchaseOrderNo("PO20240101001");
request.setPurchaseOrderLine("20"); request.setPurchaseOrderLine("20");
request.setType(0);
ApiResult<Void> result = post("/external/incoming-inspection-task/apply", request, new TypeReference<>() {}); ApiResult<Void> result = post("/external/incoming-inspection-task/apply", request, new TypeReference<>() {});
assertSuccess(result, "完整参数来料检验申请失败"); assertSuccess(result, "完整参数来料检验申请失败");
@ -207,11 +206,12 @@ public class ExternalIncomingInspectionTaskApiTest {
public void test09_apply_InspectionQtyZero() { public void test09_apply_InspectionQtyZero() {
ExternalIncomingInspectionApplyQO request = buildValidApplyRequest(); ExternalIncomingInspectionApplyQO request = buildValidApplyRequest();
request.setMaterialNo(VALID_MATERIAL_NO); request.setMaterialNo(VALID_MATERIAL_NO);
request.setInspectionQty(BigDecimal.ZERO); request.setInspectionQty(0);
request.setType(0);
ApiResult<Void> result = post("/external/incoming-inspection-task/apply", request, new TypeReference<>() {}); ApiResult<Void> result = post("/external/incoming-inspection-task/apply", request, new TypeReference<>() {});
// 若业务不允许0数量则改为 assertFailed // 若业务不允许0数量则改为 assertFailed
assertSuccess(result, "检验数量为零的申请失败"); assertFailed(result, "检验数量为零的申请失败");
System.out.println(" ✅ 检验数量为零的申请成功"); System.out.println(" ✅ 检验数量为零的申请成功");
} }
@ -225,7 +225,8 @@ public class ExternalIncomingInspectionTaskApiTest {
ExternalIncomingInspectionApplyQO request = new ExternalIncomingInspectionApplyQO(); ExternalIncomingInspectionApplyQO request = new ExternalIncomingInspectionApplyQO();
request.setMaterialNo(VALID_MATERIAL_NO); request.setMaterialNo(VALID_MATERIAL_NO);
request.setFactory(VALID_FACTORY); request.setFactory(VALID_FACTORY);
request.setInspectionQty(new BigDecimal("100")); request.setInspectionQty(100);
request.setType(0);
ApiResult<Void> result = post("/external/incoming-inspection-task/apply", request, new TypeReference<>() {}); ApiResult<Void> result = post("/external/incoming-inspection-task/apply", request, new TypeReference<>() {});
assertSuccess(result, "仅必填字段来料检验申请失败"); assertSuccess(result, "仅必填字段来料检验申请失败");
@ -241,7 +242,8 @@ public class ExternalIncomingInspectionTaskApiTest {
ExternalIncomingInspectionApplyQO request = new ExternalIncomingInspectionApplyQO(); ExternalIncomingInspectionApplyQO request = new ExternalIncomingInspectionApplyQO();
request.setMaterialNo(VALID_MATERIAL_NO); request.setMaterialNo(VALID_MATERIAL_NO);
request.setFactory(VALID_FACTORY); request.setFactory(VALID_FACTORY);
request.setInspectionQty(new BigDecimal("100")); request.setInspectionQty(100);
request.setType(0);
return request; return request;
} }
} }

View File

@ -1,11 +1,10 @@
package com.nflg.wms.common.pojo.qo; package com.nflg.wms.common.pojo.qo;
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.NotNull;
import lombok.Data; import lombok.Data;
import java.math.BigDecimal;
/** /**
* 对外接口-来料检验申请 QO * 对外接口-来料检验申请 QO
*/ */
@ -64,5 +63,6 @@ public class ExternalIncomingInspectionApplyQO {
* 检验数量必填即送检数量 * 检验数量必填即送检数量
*/ */
@NotNull(message = "检验数量不能为空") @NotNull(message = "检验数量不能为空")
private BigDecimal inspectionQty; @Min(value = 1, message = "检验数量必须大于0")
private Integer inspectionQty;
} }

View File

@ -2,7 +2,6 @@ package com.nflg.wms.common.pojo.vo;
import lombok.Data; import lombok.Data;
import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
/** /**
@ -91,17 +90,17 @@ public class QmsIncomingInspectionTaskVO {
/** /**
* 检验数量 * 检验数量
*/ */
private BigDecimal inspectionQty; private Integer inspectionQty;
/** /**
* 合格数量 * 合格数量
*/ */
private BigDecimal qualifiedQty; private Integer qualifiedQty;
/** /**
* 不合格数量 * 不合格数量
*/ */
private BigDecimal unqualifiedQty; private Integer unqualifiedQty;
/** /**
* 检验状态0=待检1=已检 * 检验状态0=待检1=已检

View File

@ -9,7 +9,6 @@ import lombok.ToString;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
import java.io.Serializable; import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
/** /**
@ -90,17 +89,17 @@ public class QmsIncomingInspectionTask implements Serializable {
/** /**
* 检验数量即送检数量 * 检验数量即送检数量
*/ */
private BigDecimal inspectionQty; private Integer inspectionQty;
/** /**
* 合格数量 * 合格数量
*/ */
private BigDecimal qualifiedQty; private Integer qualifiedQty;
/** /**
* 不合格数量 * 不合格数量
*/ */
private BigDecimal unqualifiedQty; private Integer unqualifiedQty;
/** /**
* 检验状态0=待检1=检验中2=已检 * 检验状态0=待检1=检验中2=已检