src/main/java/com/ruoyi/quality/controller/QualityInspectController.java
@@ -14,6 +14,7 @@ import com.ruoyi.quality.service.IQualityInspectService; import io.swagger.v3.oas.annotations.Operation; import jakarta.servlet.http.HttpServletResponse; import jakarta.validation.Valid; import lombok.AllArgsConstructor; import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.*; @@ -138,7 +139,7 @@ @PostMapping("/submit") @Operation(summary = "提交检验") @Log(title = "提交检验", businessType = BusinessType.OTHER) public R<?> submit(@RequestBody QualityInspect qualityInspect) { public R<?> submit(@Valid @RequestBody QualityInspect qualityInspect) { return R.ok(qualityInspectService.submit(qualityInspect)); } src/main/java/com/ruoyi/quality/pojo/QualityInspect.java
@@ -5,9 +5,10 @@ import com.ruoyi.dto.DateQueryDto; import com.ruoyi.framework.aspectj.lang.annotation.Excel; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.NotNull; import lombok.Data; import jakarta.validation.constraints.NotBlank; import java.io.Serial; import java.io.Serializable; import java.math.BigDecimal; import java.time.LocalDateTime; @@ -20,6 +21,7 @@ @TableName(value = "quality_inspect") @Data public class QualityInspect extends DateQueryDto implements Serializable { @Serial private static final long serialVersionUID = 1L; /** @@ -32,7 +34,7 @@ * 类别(0:原材料检验;1:过程检验;2:出厂检验) */ @Excel(name = "类别",readConverterExp = "0=原材料检验,1=过程检验,2=出厂检验") @NotBlank(message = "类别不能为空!!") @NotNull(message = "类别不能为空") private Integer inspectType; /** @@ -72,7 +74,7 @@ /** * 关联产品id */ @NotBlank(message = "产品id不能为空") @NotNull(message = "产品id不能为空") private Long productId; /** @@ -101,10 +103,12 @@ @Excel(name = "合格数量") @TableField("qualified_quantity") @NotNull(message = "合格数量不能为空") private BigDecimal qualifiedQuantity; @Excel(name = "不合格数量") @TableField("unqualified_quantity") @NotNull(message = "不合格数量不能为空") private BigDecimal unqualifiedQuantity; /** src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java
@@ -95,6 +95,14 @@ throw new RuntimeException("请先判断是否合格"); } if (ObjectUtils.isNull(qualityInspect.getQualifiedQuantity())) { throw new RuntimeException("合格数量不能为空"); } if (ObjectUtils.isNull(qualityInspect.getUnqualifiedQuantity())) { throw new RuntimeException("不合格数量不能为空"); } // 区分合格数量以及不合格处理进行对应的处理 Assert.isTrue(qualityInspect.getQuantity().compareTo(qualityInspect.getQualifiedQuantity().add(qualityInspect.getUnqualifiedQuantity())) == 0,"请检查合格数量和不合格数量,需要合格数量+不合格数量与总数保持一致"); if(qualityInspect.getQualifiedQuantity().compareTo(BigDecimal.ZERO) > 0){