From d546e42089177442c5e43f9944052fcf3611b08d Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期三, 16 九月 2026 16:22:40 +0800
Subject: [PATCH] feat: 质检绑定支持规格型号

---
 src/main/java/com/ruoyi/quality/service/impl/QualityTestStandardBindingServiceImpl.java |   15 ++++++++++++---
 1 files changed, 12 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/ruoyi/quality/service/impl/QualityTestStandardBindingServiceImpl.java b/src/main/java/com/ruoyi/quality/service/impl/QualityTestStandardBindingServiceImpl.java
index 8db41d6..20439a2 100644
--- a/src/main/java/com/ruoyi/quality/service/impl/QualityTestStandardBindingServiceImpl.java
+++ b/src/main/java/com/ruoyi/quality/service/impl/QualityTestStandardBindingServiceImpl.java
@@ -1,5 +1,6 @@
 package com.ruoyi.quality.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.quality.dto.QualityTestStandardBindingDto;
@@ -36,14 +37,22 @@
         ArrayList<QualityTestStandardBinding> qualityTestStandardBindings1 = new ArrayList<>(qualityTestStandardBindings.size());
         //鍒ゆ柇鏄惁宸茬粡鏈夌粦瀹氳繃鐨勬暟鎹�
         for (QualityTestStandardBinding qualityTestStandardBinding : qualityTestStandardBindings) {
-            List<QualityTestStandardBinding> testStandardBindings = qualityTestStandardBindingMapper.selectList(Wrappers.<QualityTestStandardBinding>lambdaQuery()
+            LambdaQueryWrapper<QualityTestStandardBinding> queryWrapper = Wrappers.<QualityTestStandardBinding>lambdaQuery()
                     .eq(QualityTestStandardBinding::getTestStandardId, qualityTestStandardBinding.getTestStandardId())
-                    .eq(QualityTestStandardBinding::getProductId, qualityTestStandardBinding.getProductId()));
-            if (testStandardBindings.size() > 0){
+                    .eq(QualityTestStandardBinding::getProductId, qualityTestStandardBinding.getProductId());
+            if (qualityTestStandardBinding.getProductModelId() == null) {
+                queryWrapper.isNull(QualityTestStandardBinding::getProductModelId);
+            } else {
+                queryWrapper.eq(QualityTestStandardBinding::getProductModelId, qualityTestStandardBinding.getProductModelId());
+            }
+            if (qualityTestStandardBindingMapper.selectCount(queryWrapper) > 0) {
                 continue;
             }
             qualityTestStandardBindings1.add(qualityTestStandardBinding);
         }
+        if (qualityTestStandardBindings1.isEmpty()) {
+            return 0;
+        }
         saveBatch(qualityTestStandardBindings1);
         return 0;
     }

--
Gitblit v1.9.3