From 63328dd80adc6331db581dda6418308e6fd4da12 Mon Sep 17 00:00:00 2001
From: maven <2163098428@qq.com>
Date: 星期二, 13 一月 2026 16:50:21 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev_New' into dev_New

---
 src/main/java/com/ruoyi/quality/service/impl/QualityTestStandardParamServiceImpl.java             |   20 +
 src/main/java/com/ruoyi/quality/pojo/QualityTestStandardBinding.java                              |   59 ++++
 src/main/resources/mapper/collaborativeApproval/RulesRegulationsManagementFileMapper.xml          |   28 ++
 src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java                      |   24 
 src/main/java/com/ruoyi/quality/mapper/QualityTestStandardMapper.java                             |   19 
 src/main/java/com/ruoyi/quality/service/IQualityTestStandardService.java                          |   17 
 src/main/java/com/ruoyi/quality/service/impl/QualityTestStandardBindingServiceImpl.java           |   31 ++
 src/main/resources/mapper/quality/QualityTestStandardMapper.xml                                   |   21 
 src/main/resources/mapper/quality/QualityTestStandardBindingMapper.xml                            |   23 +
 src/main/java/com/ruoyi/collaborativeApproval/controller/SealApplicationManagementController.java |    3 
 src/main/java/com/ruoyi/quality/pojo/QualityTestStandardParam.java                                |   71 +++++
 src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java             |   23 
 src/main/java/com/ruoyi/quality/controller/QualityTestStandardController.java                     |   51 +--
 src/main/java/com/ruoyi/CodeGenerator.java                                                        |    4 
 src/main/java/com/ruoyi/quality/dto/QualityTestStandardBindingDto.java                            |   11 
 src/main/java/com/ruoyi/quality/mapper/QualityTestStandardParamMapper.java                        |   23 +
 src/main/java/com/ruoyi/quality/service/QualityTestStandardBindingService.java                    |   21 +
 /dev/null                                                                                         |   24 -
 src/main/java/com/ruoyi/quality/controller/QualityUnqualifiedController.java                      |    2 
 src/main/java/com/ruoyi/quality/service/QualityTestStandardParamService.java                      |   16 +
 src/main/java/com/ruoyi/quality/pojo/QualityTestStandard.java                                     |   96 +++---
 src/main/java/com/ruoyi/quality/controller/QualityTestStandardBindingController.java              |   62 ++++
 src/main/java/com/ruoyi/quality/controller/QualityTestStandardParamController.java                |   72 +++++
 src/main/resources/mapper/quality/QualityTestStandardParamMapper.xml                              |   27 +
 src/main/java/com/ruoyi/quality/service/impl/QualityTestStandardServiceImpl.java                  |   56 ++-
 src/main/java/com/ruoyi/quality/mapper/QualityTestStandardBindingMapper.java                      |   23 +
 26 files changed, 644 insertions(+), 183 deletions(-)

diff --git a/src/main/java/com/ruoyi/CodeGenerator.java b/src/main/java/com/ruoyi/CodeGenerator.java
index 08bc186..9e75ced 100644
--- a/src/main/java/com/ruoyi/CodeGenerator.java
+++ b/src/main/java/com/ruoyi/CodeGenerator.java
@@ -23,7 +23,7 @@
     public static String database_username = "root";
     public static String database_password= "123456";
     public static String author = "鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃";
-    public static String model = "collaborativeApproval"; // 妯″潡
+    public static String model = "quality"; // 妯″潡
     public static String setParent = "com.ruoyi."+ model; // 鍖呰矾寰�
     public static String tablePrefix = ""; // 璁剧疆杩囨护琛ㄥ墠缂�
     public static void main(String[] args) {
@@ -63,7 +63,7 @@
                 .packageConfig(builder -> {
                     builder.entity("pojo");
                     builder.parent(setParent) // 璁剧疆鐖跺寘鍚�
-                            .pathInfo(Collections.singletonMap(OutputFile.xml, projectPath  +  "/src/main/resources/"+model+"/mapper")); // 璁剧疆mapperXml鐢熸垚璺緞
+                            .pathInfo(Collections.singletonMap(OutputFile.xml, projectPath  +  "/src/main/resources/mapper/"+model)); // 璁剧疆mapperXml鐢熸垚璺緞
                 })
                 // 绛栫暐閰嶇疆
                 .strategyConfig(builder -> {
diff --git a/src/main/java/com/ruoyi/collaborativeApproval/controller/SealApplicationManagementController.java b/src/main/java/com/ruoyi/collaborativeApproval/controller/SealApplicationManagementController.java
index 66a2d83..0f7094d 100644
--- a/src/main/java/com/ruoyi/collaborativeApproval/controller/SealApplicationManagementController.java
+++ b/src/main/java/com/ruoyi/collaborativeApproval/controller/SealApplicationManagementController.java
@@ -39,6 +39,7 @@
     @PostMapping("/add")
     @ApiOperation("鏂板")
     public AjaxResult add(@RequestBody SealApplicationManagement sealApplicationManagement){
+        sealApplicationManagementService.save(sealApplicationManagement);
         //娑堟伅閫氱煡
         sysNoticeService.simpleNoticeByUser("鐢ㄥ嵃瀹℃壒",
                 "鐢宠缂栧彿锛�"+sealApplicationManagement.getApplicationNum()+"\n"
@@ -46,7 +47,7 @@
                 Arrays.asList(sealApplicationManagement.getApproveUserId()),
                 sealApplicationManagement.getTenantId(),
                 "/collaborativeApproval/sealManagement?applicationNum="+sealApplicationManagement.getApplicationNum());
-        return AjaxResult.success(sealApplicationManagementService.save(sealApplicationManagement));
+        return AjaxResult.success();
     }
 
     @PostMapping("/update")
diff --git a/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java b/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
index c137411..3d1c846 100644
--- a/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
@@ -23,9 +23,11 @@
 import com.ruoyi.quality.mapper.QualityInspectMapper;
 import com.ruoyi.quality.mapper.QualityInspectParamMapper;
 import com.ruoyi.quality.mapper.QualityTestStandardMapper;
+import com.ruoyi.quality.mapper.QualityTestStandardParamMapper;
 import com.ruoyi.quality.pojo.QualityInspect;
 import com.ruoyi.quality.pojo.QualityInspectParam;
 import com.ruoyi.quality.pojo.QualityTestStandard;
+import com.ruoyi.quality.pojo.QualityTestStandardParam;
 import lombok.AllArgsConstructor;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -63,6 +65,7 @@
     private ProductMapper productMapper;
 
     private QualityTestStandardMapper qualityTestStandardMapper;
+    private QualityTestStandardParamMapper qualityTestStandardParamMapper;
 
     private QualityInspectParamMapper qualityInspectParamMapper;
 
@@ -168,16 +171,16 @@
             qualityInspect.setProductMainId(productionProductMain.getId());
             qualityInspectMapper.insert(qualityInspect);
 
-            qualityTestStandardMapper.selectList(
-                    new LambdaQueryWrapper<QualityTestStandard>()
-                            .eq(QualityTestStandard::getProductId, product.getId())
-            ).forEach(standard -> {
-                QualityInspectParam param = new QualityInspectParam();
-                BeanUtils.copyProperties(standard, param);
-                param.setId(null);
-                param.setInspectId(qualityInspect.getId());
-                qualityInspectParamMapper.insert(param);
-            });
+            List<QualityTestStandardParam> qualityTestStandardParams = qualityTestStandardParamMapper.selectListByProductId(product.getId());
+            if (qualityTestStandardParams.size()>0) {
+                qualityTestStandardParams.forEach(standard -> {
+                    QualityInspectParam param = new QualityInspectParam();
+                    BeanUtils.copyProperties(standard, param);
+                    param.setId(null);
+                    param.setInspectId(qualityInspect.getId());
+                    qualityInspectParamMapper.insert(param);
+                });
+            }
         }
         // 娣诲姞鎶曞叆
         if (productModel != null) {
diff --git a/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java b/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java
index cf2184b..d124432 100644
--- a/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java
+++ b/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java
@@ -39,9 +39,11 @@
 import com.ruoyi.quality.mapper.QualityInspectMapper;
 import com.ruoyi.quality.mapper.QualityInspectParamMapper;
 import com.ruoyi.quality.mapper.QualityTestStandardMapper;
+import com.ruoyi.quality.mapper.QualityTestStandardParamMapper;
 import com.ruoyi.quality.pojo.QualityInspect;
 import com.ruoyi.quality.pojo.QualityInspectParam;
 import com.ruoyi.quality.pojo.QualityTestStandard;
+import com.ruoyi.quality.pojo.QualityTestStandardParam;
 import com.ruoyi.sales.mapper.*;
 import com.ruoyi.sales.pojo.CommonFile;
 import com.ruoyi.sales.pojo.InvoiceRegistrationProduct;
@@ -109,6 +111,7 @@
     private final StringRedisTemplate redisTemplate;
     private final QualityInspectMapper qualityInspectMapper;
     private final QualityTestStandardMapper qualityTestStandardMapper;
+    private final QualityTestStandardParamMapper qualityTestStandardParamMapper;
     private final QualityInspectParamMapper qualityInspectParamMapper;
 
     @Value("${file.upload-dir}")
@@ -242,17 +245,16 @@
             qualityInspect.setUnit(saleProduct.getUnit());
             qualityInspect.setQuantity(saleProduct.getQuantity());
             qualityInspectMapper.insert(qualityInspect);
-            QualityTestStandard qualityTestStandard = new QualityTestStandard();
-            qualityTestStandard.setProductId(saleProduct.getProductId());
-            List<QualityTestStandard> qualityTestStandards = qualityTestStandardMapper.qualityTestStandardList(qualityTestStandard);
-            for (QualityTestStandard qualityTestStandardDB : qualityTestStandards) {
-                QualityInspectParam qualityInspectParam = new QualityInspectParam();
-                qualityInspectParam.setInspectId(qualityInspect.getId());
-                qualityInspectParam.setParameterItem(qualityTestStandardDB.getParameterItem());
-                qualityInspectParam.setUnit(qualityTestStandardDB.getUnit());
-                qualityInspectParam.setStandardValue(qualityTestStandardDB.getStandardValue());
-                qualityInspectParam.setControlValue(qualityTestStandardDB.getControlValue());
-                qualityInspectParamMapper.insert(qualityInspectParam);
+
+            List<QualityTestStandardParam> qualityTestStandardParams = qualityTestStandardParamMapper.selectListByProductId(saleProduct.getProductId());
+            if (qualityTestStandardParams.size()>0) {
+                qualityTestStandardParams.forEach(standard -> {
+                    QualityInspectParam param = new QualityInspectParam();
+                    com.ruoyi.common.utils.bean.BeanUtils.copyProperties(standard, param);
+                    param.setId(null);
+                    param.setInspectId(qualityInspect.getId());
+                    qualityInspectParamMapper.insert(param);
+                });
             }
         }
 
diff --git a/src/main/java/com/ruoyi/quality/controller/QualityTestStandardBindingController.java b/src/main/java/com/ruoyi/quality/controller/QualityTestStandardBindingController.java
new file mode 100644
index 0000000..b9c764e
--- /dev/null
+++ b/src/main/java/com/ruoyi/quality/controller/QualityTestStandardBindingController.java
@@ -0,0 +1,62 @@
+package com.ruoyi.quality.controller;
+
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.ruoyi.framework.web.domain.AjaxResult;
+import com.ruoyi.quality.pojo.QualityTestStandardBinding;
+import com.ruoyi.quality.pojo.QualityTestStandardParam;
+import com.ruoyi.quality.service.QualityTestStandardBindingService;
+import com.ruoyi.quality.service.QualityTestStandardParamService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.util.CollectionUtils;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 妫�娴嬫爣鍑嗕富琛ㄤ笌浜у搧鍏宠仈琛� 鍓嶇鎺у埗鍣�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2026-01-13 03:39:40
+ */
+@RestController
+@RequestMapping("/qualityTestStandardBinding")
+public class QualityTestStandardBindingController {
+
+    @Autowired
+    private QualityTestStandardBindingService qualityTestStandardBindingService;
+
+    /**
+     * 鏂板妫�娴嬫爣鍑嗕富琛ㄤ笌浜у搧鍏宠仈琛�
+     * @param qualityTestStandardBindings
+     * @return
+     */
+    @PostMapping("/add")
+    public AjaxResult add(@RequestBody List<QualityTestStandardBinding> qualityTestStandardBindings) {
+        return AjaxResult.success(qualityTestStandardBindingService.saveBatch(qualityTestStandardBindings));
+    }
+
+    /**
+     * 鍒犻櫎妫�娴嬫爣鍑嗕富琛ㄤ笌浜у搧鍏宠仈琛�
+     * @param ids
+     * @return
+     */
+    @DeleteMapping("/del")
+    public AjaxResult delQualityTestStandard(@RequestBody List<Integer> ids) {
+        if(CollectionUtils.isEmpty(ids)){
+            return AjaxResult.error("璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�");
+        }
+        return AjaxResult.success(qualityTestStandardBindingService.removeBatchByIds(ids));
+    }
+
+    /**
+     *妫�娴嬫寚鏍囩淮鎶ゆ煡璇�
+     * @return
+     */
+    @GetMapping("/list")
+    public AjaxResult listBinding(Long testStandardId) {
+        return AjaxResult.success(qualityTestStandardBindingService.listBinding(testStandardId));
+    }
+
+}
diff --git a/src/main/java/com/ruoyi/quality/controller/QualityTestStandardController.java b/src/main/java/com/ruoyi/quality/controller/QualityTestStandardController.java
index 04095f5..ac40c91 100644
--- a/src/main/java/com/ruoyi/quality/controller/QualityTestStandardController.java
+++ b/src/main/java/com/ruoyi/quality/controller/QualityTestStandardController.java
@@ -1,25 +1,25 @@
 package com.ruoyi.quality.controller;
 
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.framework.web.domain.AjaxResult;
 import com.ruoyi.quality.pojo.QualityTestStandard;
 import com.ruoyi.quality.service.IQualityTestStandardService;
-import com.ruoyi.staff.pojo.StaffJoinLeaveRecord;
-import com.ruoyi.staff.pojo.StaffOnJob;
-import com.ruoyi.staff.service.IStaffOnJobService;
 import org.springframework.util.CollectionUtils;
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
-import javax.servlet.http.HttpServletResponse;
 import java.util.List;
 
 /**
- * 妫�娴嬫寚鏍囩淮鎶�
+ * <p>
+ * 妫�娴嬫爣鍑嗕富琛� 鍓嶇鎺у埗鍣�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2026-01-13 03:40:24
  */
 @RestController
-@RequestMapping("/quality/qualityTestStandard")
+@RequestMapping("/qualityTestStandard")
 public class QualityTestStandardController {
 
     @Resource
@@ -27,7 +27,7 @@
 
 
     /**
-     * 鏂板妫�娴嬫寚鏍囩淮鎶�
+     * 鏂板妫�娴嬫爣鍑嗕富琛�
      * @param qualityTestStandard
      * @return
      */
@@ -37,7 +37,7 @@
     }
 
     /**
-     * 鍒犻櫎妫�娴嬫寚鏍囩淮鎶�
+     * 鍒犻櫎妫�娴嬫爣鍑嗕富琛�
      * @param ids
      * @return
      */
@@ -50,17 +50,7 @@
     }
 
     /**
-     * 妫�娴嬫寚鏍囩淮鎶よ鎯�
-     * @param id
-     * @return
-     */
-    @GetMapping("/{id}")
-    public AjaxResult QualityTestStandardDetail(@PathVariable("id") Integer id) {
-        return AjaxResult.success(qualityTestStandardService.getById(id));
-    }
-
-    /**
-     * 妫�娴嬫寚鏍囩淮鎶や慨鏀�
+     * 妫�娴嬫爣鍑嗕富琛ㄤ慨鏀�
      * @param qualityTestStandard
      * @return
      */
@@ -70,7 +60,7 @@
     }
 
     /**
-     *妫�娴嬫寚鏍囩淮鎶ゅ垎椤垫煡璇�
+     *妫�娴嬫爣鍑嗕富琛ㄥ垎椤垫煡璇�
      * @param page
      * @param qualityTestStandard
      * @return
@@ -81,24 +71,13 @@
     }
 
     /**
-     * 妫�娴嬫寚鏍囩淮鎶ゅ鍑�
-     * @param response
+     * 妫�娴嬫爣鍑嗗鍒跺弬鏁�
      * @param qualityTestStandard
-     */
-    @PostMapping("/export")
-    public void qualityTestStandardListPageExport(HttpServletResponse response,QualityTestStandard qualityTestStandard) {
-        qualityTestStandardService.qualityTestStandardListPageExport(response, qualityTestStandard);
-    }
-
-    /**
-     * 璇︽儏
-     * @param productId
      * @return
      */
-    @GetMapping("/product/{productId}")
-    public AjaxResult QualityInspectDetail(@PathVariable("productId") Long productId) {
-        return AjaxResult.success(qualityTestStandardService.list(Wrappers.<QualityTestStandard>lambdaQuery().eq(QualityTestStandard::getProductId,productId)));
+    @PostMapping("/copyParam")
+    public AjaxResult copyParam(@RequestBody QualityTestStandard qualityTestStandard) {
+        return AjaxResult.success(qualityTestStandardService.copyParam(qualityTestStandard));
     }
-
 
 }
diff --git a/src/main/java/com/ruoyi/quality/controller/QualityTestStandardParamController.java b/src/main/java/com/ruoyi/quality/controller/QualityTestStandardParamController.java
new file mode 100644
index 0000000..55508ec
--- /dev/null
+++ b/src/main/java/com/ruoyi/quality/controller/QualityTestStandardParamController.java
@@ -0,0 +1,72 @@
+package com.ruoyi.quality.controller;
+
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.framework.web.domain.AjaxResult;
+import com.ruoyi.quality.pojo.QualityTestStandard;
+import com.ruoyi.quality.pojo.QualityTestStandardParam;
+import com.ruoyi.quality.service.QualityTestStandardParamService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.util.CollectionUtils;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 妫�娴嬫爣鍑嗗弬鏁� 鍓嶇鎺у埗鍣�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2026-01-13 03:39:49
+ */
+@RestController
+@RequestMapping("/qualityTestStandardParam")
+public class QualityTestStandardParamController {
+
+    @Autowired
+    private QualityTestStandardParamService qualityTestStandardParamService;
+
+    /**
+     * 鏂板妫�娴嬫爣鍑嗗弬鏁�
+     * @param qualityTestStandardParam
+     * @return
+     */
+    @PostMapping("/add")
+    public AjaxResult add(@RequestBody QualityTestStandardParam qualityTestStandardParam) {
+        return AjaxResult.success(qualityTestStandardParamService.save(qualityTestStandardParam));
+    }
+
+    /**
+     * 鍒犻櫎妫�娴嬫寚鏍囩淮鎶�
+     * @param ids
+     * @return
+     */
+    @DeleteMapping("/del")
+    public AjaxResult delQualityTestStandard(@RequestBody List<Integer> ids) {
+        if(CollectionUtils.isEmpty(ids)){
+            return AjaxResult.error("璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�");
+        }
+        return AjaxResult.success(qualityTestStandardParamService.removeBatchByIds(ids));
+    }
+
+    /**
+     * 妫�娴嬫寚鏍囩淮鎶や慨鏀�
+     * @param qualityTestStandardParam
+     * @return
+     */
+    @PostMapping("/update")
+    public AjaxResult update(@RequestBody QualityTestStandardParam qualityTestStandardParam) {
+        return AjaxResult.success(qualityTestStandardParamService.updateById(qualityTestStandardParam));
+    }
+
+    /**
+     *妫�娴嬫寚鏍囩淮鎶ゆ煡璇�
+     * @return
+     */
+    @GetMapping("/list")
+    public AjaxResult list(Long testStandardId) {
+        return AjaxResult.success(qualityTestStandardParamService.list(Wrappers.<QualityTestStandardParam>lambdaQuery().eq(QualityTestStandardParam::getTestStandardId,testStandardId)));
+    }
+
+}
diff --git a/src/main/java/com/ruoyi/quality/controller/QualityUnqualifiedController.java b/src/main/java/com/ruoyi/quality/controller/QualityUnqualifiedController.java
index b1a5a1b..7a42873 100644
--- a/src/main/java/com/ruoyi/quality/controller/QualityUnqualifiedController.java
+++ b/src/main/java/com/ruoyi/quality/controller/QualityUnqualifiedController.java
@@ -2,9 +2,7 @@
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.framework.web.domain.AjaxResult;
-import com.ruoyi.quality.pojo.QualityTestStandard;
 import com.ruoyi.quality.pojo.QualityUnqualified;
-import com.ruoyi.quality.service.IQualityTestStandardService;
 import com.ruoyi.quality.service.IQualityUnqualifiedService;
 import org.springframework.util.CollectionUtils;
 import org.springframework.web.bind.annotation.*;
diff --git a/src/main/java/com/ruoyi/quality/dto/QualityTestStandardBindingDto.java b/src/main/java/com/ruoyi/quality/dto/QualityTestStandardBindingDto.java
new file mode 100644
index 0000000..ceac25d
--- /dev/null
+++ b/src/main/java/com/ruoyi/quality/dto/QualityTestStandardBindingDto.java
@@ -0,0 +1,11 @@
+package com.ruoyi.quality.dto;
+
+
+import lombok.Data;
+
+@Data
+//鍒嗛〉鍥炴樉灞曠ず瀛楁
+public class QualityTestStandardBindingDto {
+
+    private String productName;
+}
diff --git a/src/main/java/com/ruoyi/quality/mapper/QualityTestStandardBindingMapper.java b/src/main/java/com/ruoyi/quality/mapper/QualityTestStandardBindingMapper.java
new file mode 100644
index 0000000..6754c4c
--- /dev/null
+++ b/src/main/java/com/ruoyi/quality/mapper/QualityTestStandardBindingMapper.java
@@ -0,0 +1,23 @@
+package com.ruoyi.quality.mapper;
+
+import com.ruoyi.quality.dto.QualityTestStandardBindingDto;
+import com.ruoyi.quality.pojo.QualityTestStandardBinding;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 妫�娴嬫爣鍑嗕富琛ㄤ笌浜у搧鍏宠仈琛� Mapper 鎺ュ彛
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2026-01-13 03:39:40
+ */
+@Mapper
+public interface QualityTestStandardBindingMapper extends BaseMapper<QualityTestStandardBinding> {
+
+    List<QualityTestStandardBindingDto> listBinding(@Param("testStandardId") Long testStandardId);
+}
diff --git a/src/main/java/com/ruoyi/quality/mapper/QualityTestStandardMapper.java b/src/main/java/com/ruoyi/quality/mapper/QualityTestStandardMapper.java
index 738845e..e72539a 100644
--- a/src/main/java/com/ruoyi/quality/mapper/QualityTestStandardMapper.java
+++ b/src/main/java/com/ruoyi/quality/mapper/QualityTestStandardMapper.java
@@ -1,21 +1,22 @@
 package com.ruoyi.quality.mapper;
 
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.quality.pojo.QualityTestStandard;
-import com.ruoyi.staff.pojo.StaffOnJob;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
-import java.util.List;
-
+/**
+ * <p>
+ * 妫�娴嬫爣鍑嗕富琛� Mapper 鎺ュ彛
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2026-01-13 03:40:24
+ */
 @Mapper
 public interface QualityTestStandardMapper extends BaseMapper<QualityTestStandard> {
 
-
-    IPage<QualityTestStandard> qualityTestStandardListPage(@Param("page") Page page, @Param("qualityTestStandard") QualityTestStandard qualityTestStandard);
-
-    List<QualityTestStandard> qualityTestStandardList(@Param("qualityTestStandard") QualityTestStandard qualityTestStandard);
-
+    IPage<QualityTestStandard> qualityTestStandardListPage(Page page, @Param("c") QualityTestStandard qualityTestStandard);
 }
diff --git a/src/main/java/com/ruoyi/quality/mapper/QualityTestStandardParamMapper.java b/src/main/java/com/ruoyi/quality/mapper/QualityTestStandardParamMapper.java
new file mode 100644
index 0000000..2823c49
--- /dev/null
+++ b/src/main/java/com/ruoyi/quality/mapper/QualityTestStandardParamMapper.java
@@ -0,0 +1,23 @@
+package com.ruoyi.quality.mapper;
+
+import com.ruoyi.quality.pojo.QualityTestStandardParam;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 妫�娴嬫爣鍑嗗弬鏁� Mapper 鎺ュ彛
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2026-01-13 03:39:49
+ */
+@Mapper
+public interface QualityTestStandardParamMapper extends BaseMapper<QualityTestStandardParam> {
+
+    List<QualityTestStandardParam> selectListByProductId(@Param("productId") Long productId);
+}
diff --git a/src/main/java/com/ruoyi/quality/pojo/QualityTestStandard.java b/src/main/java/com/ruoyi/quality/pojo/QualityTestStandard.java
index be5d472..d2fb853 100644
--- a/src/main/java/com/ruoyi/quality/pojo/QualityTestStandard.java
+++ b/src/main/java/com/ruoyi/quality/pojo/QualityTestStandard.java
@@ -1,84 +1,72 @@
 package com.ruoyi.quality.pojo;
 
-import com.baomidou.mybatisplus.annotation.*;
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.ruoyi.framework.aspectj.lang.annotation.Excel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import javax.validation.constraints.NotBlank;
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import com.baomidou.mybatisplus.annotation.TableName;
 import java.io.Serializable;
 import java.time.LocalDateTime;
-import java.util.Date;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
 
 /**
- * 璐ㄩ噺绠$悊--妫�娴嬫寚鏍囩淮鎶�
- * quality_test_standard
+ * <p>
+ * 妫�娴嬫爣鍑嗕富琛�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2026-01-13 03:40:24
  */
-@TableName(value = "quality_test_standard")
-@Data
+@Getter
+@Setter
+@TableName("quality_test_standard")
+@ApiModel(value = "QualityTestStandard瀵硅薄", description = "妫�娴嬫爣鍑嗕富琛�")
 public class QualityTestStandard implements Serializable {
+
     private static final long serialVersionUID = 1L;
 
-    /**
-     * 搴忓彿
-     */
-    @TableId(type = IdType.AUTO)
+    @TableId(value = "id", type = IdType.AUTO)
     private Long id;
 
+    @ApiModelProperty("鏍囧噯缂栧彿")
+    private String standardNo;
 
-    /**
-     * 鎸囨爣
-     */
-    @Excel(name = "鎸囨爣")
-    private String parameterItem;
+    @ApiModelProperty("鏍囧噯鍚嶇О")
+    private String standardName;
 
-    /**
-     * 鍗曚綅
-     */
-    @Excel(name = "鍗曚綅")
-    private String unit;
+    @ApiModelProperty("澶囨敞")
+    private String remark;
 
-    /**
-     * 鏍囧噯鍊�
-     */
-    @Excel(name = "鏍囧噯鍊�")
-    private String standardValue;
-
-    /**
-     * 鍐呮帶鍊�
-     */
-    @Excel(name = "鍐呮帶鍊�")
-    private String controlValue;
-
-    /**
-     * 鍏宠仈浜у搧id
-     */
-    @NotBlank(message = "浜у搧id涓嶈兘涓虹┖!")
-    @Excel(name = "鍏宠仈浜у搧id")
-    private Long productId;
-
-
-
-    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+    @ApiModelProperty("鍒涘缓鏃堕棿")
     @TableField(fill = FieldFill.INSERT)
     private LocalDateTime createTime;
 
-    @ApiModelProperty(value = "鍒涘缓鐢ㄦ埛")
+    @ApiModelProperty("鍒涘缓鐢ㄦ埛")
     @TableField(fill = FieldFill.INSERT)
-    private Integer createUser;
+    private Long createUser;
 
-    @ApiModelProperty(value = "淇敼鏃堕棿")
+    @ApiModelProperty("淇敼鏃堕棿")
     @TableField(fill = FieldFill.INSERT_UPDATE)
     private LocalDateTime updateTime;
 
-    @ApiModelProperty(value = "淇敼鐢ㄦ埛")
+    @ApiModelProperty("淇敼鐢ㄦ埛")
     @TableField(fill = FieldFill.INSERT_UPDATE)
-    private Integer updateUser;
+    private Long updateUser;
 
-    @ApiModelProperty(value = "绉熸埛ID")
+    @ApiModelProperty("绉熸埛ID")
     @TableField(fill = FieldFill.INSERT)
     private Long tenantId;
 
+    @ApiModelProperty("鐘舵��")
+    private String state;
 
+    @ApiModelProperty("绫诲埆(0:鍘熸潗鏂欐楠�;1:杩囩▼妫�楠�;2:鍑哄巶妫�楠�)")
+    private Integer inspectType;
+
+    @ApiModelProperty("宸ュ簭id")
+    private Integer processId;
 }
diff --git a/src/main/java/com/ruoyi/quality/pojo/QualityTestStandardBinding.java b/src/main/java/com/ruoyi/quality/pojo/QualityTestStandardBinding.java
new file mode 100644
index 0000000..3b15f5d
--- /dev/null
+++ b/src/main/java/com/ruoyi/quality/pojo/QualityTestStandardBinding.java
@@ -0,0 +1,59 @@
+package com.ruoyi.quality.pojo;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 妫�娴嬫爣鍑嗕富琛ㄤ笌浜у搧鍏宠仈琛�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2026-01-13 03:39:40
+ */
+@Getter
+@Setter
+@TableName("quality_test_standard_binding")
+@ApiModel(value = "QualityTestStandardBinding瀵硅薄", description = "妫�娴嬫爣鍑嗕富琛ㄤ笌浜у搧鍏宠仈琛�")
+public class QualityTestStandardBinding implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    @ApiModelProperty("浜у搧ID")
+    private Long productId;
+
+    @ApiModelProperty("鍏宠仈妫�娴嬫爣鍑嗕富琛╥d")
+    private Integer testStandardId;
+
+    @ApiModelProperty("鍒涘缓鏃堕棿")
+    @TableField(fill = FieldFill.INSERT)
+    private LocalDateTime createTime;
+
+    @ApiModelProperty("鍒涘缓鐢ㄦ埛")
+    @TableField(fill = FieldFill.INSERT)
+    private Long createUser;
+
+    @ApiModelProperty("淇敼鏃堕棿")
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private LocalDateTime updateTime;
+
+    @ApiModelProperty("淇敼鐢ㄦ埛")
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private Long updateUser;
+
+    @ApiModelProperty("绉熸埛ID")
+    @TableField(fill = FieldFill.INSERT)
+    private Long tenantId;
+}
diff --git a/src/main/java/com/ruoyi/quality/pojo/QualityTestStandardParam.java b/src/main/java/com/ruoyi/quality/pojo/QualityTestStandardParam.java
new file mode 100644
index 0000000..1abd96f
--- /dev/null
+++ b/src/main/java/com/ruoyi/quality/pojo/QualityTestStandardParam.java
@@ -0,0 +1,71 @@
+package com.ruoyi.quality.pojo;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 妫�娴嬫爣鍑嗗弬鏁�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2026-01-13 03:39:49
+ */
+@Getter
+@Setter
+@TableName("quality_test_standard_param")
+@ApiModel(value = "QualityTestStandardParam瀵硅薄", description = "妫�娴嬫爣鍑嗗弬鏁�")
+public class QualityTestStandardParam implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    @ApiModelProperty("鍙傛暟椤�")
+    private String parameterItem;
+
+    @ApiModelProperty("鍗曚綅")
+    private String unit;
+
+    @ApiModelProperty("鏍囧噯鍊�")
+    private String standardValue;
+
+    @ApiModelProperty("鍐呮帶鍊�")
+    private String controlValue;
+
+    @ApiModelProperty("鍒涘缓鏃堕棿")
+    @TableField(fill = FieldFill.INSERT)
+    private LocalDateTime createTime;
+
+    @ApiModelProperty("鍒涘缓鐢ㄦ埛")
+    @TableField(fill = FieldFill.INSERT)
+    private Long createUser;
+
+    @ApiModelProperty("淇敼鏃堕棿")
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private LocalDateTime updateTime;
+
+    @ApiModelProperty("淇敼鐢ㄦ埛")
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private Long updateUser;
+
+    @ApiModelProperty("绉熸埛ID")
+    @TableField(fill = FieldFill.INSERT)
+    private Long tenantId;
+
+    @ApiModelProperty("鍏宠仈妫�娴嬫爣鍑嗕富琛╥d")
+    private Long testStandardId;
+
+    @ApiModelProperty("榛樿鍊�")
+    private String defaultValue;
+}
diff --git a/src/main/java/com/ruoyi/quality/service/IQualityTestStandardService.java b/src/main/java/com/ruoyi/quality/service/IQualityTestStandardService.java
index e6857e1..7d76fac 100644
--- a/src/main/java/com/ruoyi/quality/service/IQualityTestStandardService.java
+++ b/src/main/java/com/ruoyi/quality/service/IQualityTestStandardService.java
@@ -3,15 +3,20 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
-import com.ruoyi.quality.pojo.QualityInspect;
 import com.ruoyi.quality.pojo.QualityTestStandard;
 
-import javax.servlet.http.HttpServletResponse;
-
+/**
+ * <p>
+ * 妫�娴嬫爣鍑嗕富琛� 鏈嶅姟绫�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2026-01-13 03:40:24
+ */
 public interface IQualityTestStandardService extends IService<QualityTestStandard> {
-
-
     IPage<QualityTestStandard> qualityTestStandardListPage(Page page, QualityTestStandard qualityTestStandard);
 
-    void qualityTestStandardListPageExport(HttpServletResponse response, QualityTestStandard qualityTestStandard);
+
+    int copyParam(QualityTestStandard qualityTestStandard);
+
 }
diff --git a/src/main/java/com/ruoyi/quality/service/QualityTestStandardBindingService.java b/src/main/java/com/ruoyi/quality/service/QualityTestStandardBindingService.java
new file mode 100644
index 0000000..a5e6568
--- /dev/null
+++ b/src/main/java/com/ruoyi/quality/service/QualityTestStandardBindingService.java
@@ -0,0 +1,21 @@
+package com.ruoyi.quality.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.ruoyi.quality.dto.QualityTestStandardBindingDto;
+import com.ruoyi.quality.pojo.QualityTestStandardBinding;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 妫�娴嬫爣鍑嗕富琛ㄤ笌浜у搧鍏宠仈琛� 鏈嶅姟绫�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2026-01-13 03:39:40
+ */
+public interface QualityTestStandardBindingService extends IService<QualityTestStandardBinding> {
+
+    List<QualityTestStandardBindingDto> listBinding(Long testStandardId);
+}
diff --git a/src/main/java/com/ruoyi/quality/service/QualityTestStandardParamService.java b/src/main/java/com/ruoyi/quality/service/QualityTestStandardParamService.java
new file mode 100644
index 0000000..56cca32
--- /dev/null
+++ b/src/main/java/com/ruoyi/quality/service/QualityTestStandardParamService.java
@@ -0,0 +1,16 @@
+package com.ruoyi.quality.service;
+
+import com.ruoyi.quality.pojo.QualityTestStandardParam;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ * 妫�娴嬫爣鍑嗗弬鏁� 鏈嶅姟绫�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2026-01-13 03:39:49
+ */
+public interface QualityTestStandardParamService extends IService<QualityTestStandardParam> {
+
+}
diff --git a/src/main/java/com/ruoyi/quality/service/impl/QualityTestStandardBindingServiceImpl.java b/src/main/java/com/ruoyi/quality/service/impl/QualityTestStandardBindingServiceImpl.java
new file mode 100644
index 0000000..1b372ec
--- /dev/null
+++ b/src/main/java/com/ruoyi/quality/service/impl/QualityTestStandardBindingServiceImpl.java
@@ -0,0 +1,31 @@
+package com.ruoyi.quality.service.impl;
+
+import com.ruoyi.quality.dto.QualityTestStandardBindingDto;
+import com.ruoyi.quality.pojo.QualityTestStandardBinding;
+import com.ruoyi.quality.mapper.QualityTestStandardBindingMapper;
+import com.ruoyi.quality.service.QualityTestStandardBindingService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 妫�娴嬫爣鍑嗕富琛ㄤ笌浜у搧鍏宠仈琛� 鏈嶅姟瀹炵幇绫�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2026-01-13 03:39:40
+ */
+@Service
+public class QualityTestStandardBindingServiceImpl extends ServiceImpl<QualityTestStandardBindingMapper, QualityTestStandardBinding> implements QualityTestStandardBindingService {
+
+    @Autowired
+    private QualityTestStandardBindingMapper qualityTestStandardBindingMapper;
+
+    @Override
+    public List<QualityTestStandardBindingDto> listBinding(Long testStandardId) {
+        return qualityTestStandardBindingMapper.listBinding(testStandardId);
+    }
+}
diff --git a/src/main/java/com/ruoyi/quality/service/impl/QualityTestStandardParamServiceImpl.java b/src/main/java/com/ruoyi/quality/service/impl/QualityTestStandardParamServiceImpl.java
new file mode 100644
index 0000000..0278a78
--- /dev/null
+++ b/src/main/java/com/ruoyi/quality/service/impl/QualityTestStandardParamServiceImpl.java
@@ -0,0 +1,20 @@
+package com.ruoyi.quality.service.impl;
+
+import com.ruoyi.quality.pojo.QualityTestStandardParam;
+import com.ruoyi.quality.mapper.QualityTestStandardParamMapper;
+import com.ruoyi.quality.service.QualityTestStandardParamService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 妫�娴嬫爣鍑嗗弬鏁� 鏈嶅姟瀹炵幇绫�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2026-01-13 03:39:49
+ */
+@Service
+public class QualityTestStandardParamServiceImpl extends ServiceImpl<QualityTestStandardParamMapper, QualityTestStandardParam> implements QualityTestStandardParamService {
+
+}
diff --git a/src/main/java/com/ruoyi/quality/service/impl/QualityTestStandardServiceImpl.java b/src/main/java/com/ruoyi/quality/service/impl/QualityTestStandardServiceImpl.java
index 5c246bc..3081a65 100644
--- a/src/main/java/com/ruoyi/quality/service/impl/QualityTestStandardServiceImpl.java
+++ b/src/main/java/com/ruoyi/quality/service/impl/QualityTestStandardServiceImpl.java
@@ -1,30 +1,41 @@
 package com.ruoyi.quality.service.impl;
 
-
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.ruoyi.common.utils.poi.ExcelUtil;
-import com.ruoyi.quality.mapper.QualityInspectMapper;
-import com.ruoyi.quality.mapper.QualityTestStandardMapper;
-import com.ruoyi.quality.pojo.QualityInspect;
+import com.ruoyi.quality.mapper.QualityTestStandardParamMapper;
 import com.ruoyi.quality.pojo.QualityTestStandard;
-import com.ruoyi.quality.service.IQualityInspectService;
+import com.ruoyi.quality.mapper.QualityTestStandardMapper;
+import com.ruoyi.quality.pojo.QualityTestStandardParam;
 import com.ruoyi.quality.service.IQualityTestStandardService;
-import com.ruoyi.staff.pojo.StaffJoinLeaveRecord;
-import lombok.AllArgsConstructor;
-import org.springframework.security.core.parameters.P;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.quality.service.QualityTestStandardParamService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
-import javax.servlet.http.HttpServletResponse;
 import java.util.List;
+import java.util.stream.Collectors;
 
-@AllArgsConstructor
+
+/**
+ * <p>
+ * 妫�娴嬫爣鍑嗕富琛� 鏈嶅姟瀹炵幇绫�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2026-01-13 03:40:24
+ */
 @Service
-public class QualityTestStandardServiceImpl extends ServiceImpl<QualityTestStandardMapper, QualityTestStandard>  implements IQualityTestStandardService {
+public class QualityTestStandardServiceImpl extends ServiceImpl<QualityTestStandardMapper, QualityTestStandard> implements IQualityTestStandardService {
 
+    @Autowired
     private QualityTestStandardMapper qualityTestStandardMapper;
 
+    @Autowired
+    private QualityTestStandardParamMapper qualityTestStandardParamMapper;
+
+    @Autowired
+    private QualityTestStandardParamService qualityTestStandardParamService;
 
     @Override
     public IPage<QualityTestStandard> qualityTestStandardListPage(Page page, QualityTestStandard qualityTestStandard) {
@@ -32,9 +43,20 @@
     }
 
     @Override
-    public void qualityTestStandardListPageExport(HttpServletResponse response, QualityTestStandard qualityTestStandard) {
-        List<QualityTestStandard> qualityTestStandards =qualityTestStandardMapper.qualityTestStandardList(qualityTestStandard);
-        ExcelUtil<QualityTestStandard> util = new ExcelUtil<QualityTestStandard>(QualityTestStandard.class);
-        util.exportExcel(response, qualityTestStandards, "妫�娴嬫寚鏍囧鍑�");
+    public int copyParam(QualityTestStandard qualityTestStandard) {
+        //鍏堟煡璇㈣澶嶅埗鐨勬娴嬫爣鍑嗙殑璇︽儏鍙傛暟
+        List<QualityTestStandardParam> oldQualityTestStandardParams = qualityTestStandardParamMapper.selectList(Wrappers.<QualityTestStandardParam>lambdaQuery().eq(QualityTestStandardParam::getTestStandardId, qualityTestStandard.getId()));
+        QualityTestStandard testStandard = qualityTestStandardMapper.selectById(qualityTestStandard.getId());
+        testStandard.setId(null);
+        testStandard.setStandardNo(null);
+        qualityTestStandardMapper.insert(testStandard);
+        List<QualityTestStandardParam> newQualityTestStandardParams = oldQualityTestStandardParams.stream().map(oldQualityTestStandardParam -> {
+            oldQualityTestStandardParam.setTestStandardId(testStandard.getId());
+            return oldQualityTestStandardParam;
+        }).collect(Collectors.toList());
+        qualityTestStandardParamService.saveBatch(newQualityTestStandardParams);
+        return 0;
     }
+
+
 }
diff --git a/src/main/resources/collaborativeApproval/mapper/RulesRegulationsManagementFileMapper.xml b/src/main/resources/collaborativeApproval/mapper/RulesRegulationsManagementFileMapper.xml
deleted file mode 100644
index f93a112..0000000
--- a/src/main/resources/collaborativeApproval/mapper/RulesRegulationsManagementFileMapper.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.ruoyi.collaborativeApproval.mapper.RulesRegulationsManagementFileMapper">
-
-    <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
-    <resultMap id="BaseResultMap" type="com.ruoyi.collaborativeApproval.pojo.RulesRegulationsManagementFile">
-        <id column="id" property="id" />
-        <result column="name" property="name" />
-        <result column="url" property="url" />
-        <result column="file_size" property="fileSize" />
-        <result column="rules_regulations_management_id" property="rulesRegulationsManagementId" />
-        <result column="create_time" property="createTime" />
-        <result column="create_user" property="createUser" />
-        <result column="update_time" property="updateTime" />
-        <result column="update_user" property="updateUser" />
-        <result column="tenant_id" property="tenantId" />
-    </resultMap>
-    <select id="listPage" resultType="com.ruoyi.collaborativeApproval.pojo.RulesRegulationsManagementFile">
-        select *
-        from rules_regulations_management_file
-        where rules_regulations_management_id = #{c.rulesRegulationsManagementId}
-    </select>
-
-</mapper>
diff --git a/src/main/resources/mapper/collaborativeApproval/RulesRegulationsManagementFileMapper.xml b/src/main/resources/mapper/collaborativeApproval/RulesRegulationsManagementFileMapper.xml
new file mode 100644
index 0000000..4a03bdd
--- /dev/null
+++ b/src/main/resources/mapper/collaborativeApproval/RulesRegulationsManagementFileMapper.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.collaborativeApproval.mapper.RulesRegulationsManagementFileMapper">
+
+    <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
+    <resultMap id="BaseResultMap" type="com.ruoyi.collaborativeApproval.pojo.RulesRegulationsManagementFile">
+        <id column="id" property="id"/>
+        <result column="name" property="name"/>
+        <result column="url" property="url"/>
+        <result column="file_size" property="fileSize"/>
+        <result column="rules_regulations_management_id" property="rulesRegulationsManagementId"/>
+        <result column="create_time" property="createTime"/>
+        <result column="create_user" property="createUser"/>
+        <result column="update_time" property="updateTime"/>
+        <result column="update_user" property="updateUser"/>
+        <result column="tenant_id" property="tenantId"/>
+    </resultMap>
+    <select id="listPage" resultType="com.ruoyi.collaborativeApproval.pojo.RulesRegulationsManagementFile">
+        select *
+        from rules_regulations_management_file
+        where
+        1=1
+        <if test="c.rulesRegulationsManagementId !=null">
+            and rules_regulations_management_id = #{c.rulesRegulationsManagementId}
+        </if>
+    </select>
+
+</mapper>
diff --git a/src/main/resources/mapper/quality/QualityTestStandardBindingMapper.xml b/src/main/resources/mapper/quality/QualityTestStandardBindingMapper.xml
new file mode 100644
index 0000000..6ba77c5
--- /dev/null
+++ b/src/main/resources/mapper/quality/QualityTestStandardBindingMapper.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.quality.mapper.QualityTestStandardBindingMapper">
+
+    <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
+    <resultMap id="BaseResultMap" type="com.ruoyi.quality.pojo.QualityTestStandardBinding">
+        <id column="id" property="id"/>
+        <result column="product_id" property="productId"/>
+        <result column="test_standard_id" property="testStandardId"/>
+        <result column="create_time" property="createTime"/>
+        <result column="create_user" property="createUser"/>
+        <result column="update_time" property="updateTime"/>
+        <result column="update_user" property="updateUser"/>
+        <result column="tenant_id" property="tenantId"/>
+    </resultMap>
+    <select id="listBinding" resultType="com.ruoyi.quality.dto.QualityTestStandardBindingDto">
+        select *
+        from quality_test_standard_binding t1
+                 left join product t2 on t1.product_id = t2.id
+        where t1.test_standard_id = #{testStandardId}
+    </select>
+
+</mapper>
diff --git a/src/main/resources/mapper/quality/QualityTestStandardMapper.xml b/src/main/resources/mapper/quality/QualityTestStandardMapper.xml
index 96448f5..72a977a 100644
--- a/src/main/resources/mapper/quality/QualityTestStandardMapper.xml
+++ b/src/main/resources/mapper/quality/QualityTestStandardMapper.xml
@@ -7,18 +7,17 @@
         FROM quality_test_standard
         where
         1=1
-        <if test="qualityTestStandard.productId != null and qualityTestStandard.productId != '' ">
-            AND product_id = #{qualityTestStandard.productId}
+        <if test="qualityTestStandard.standardNo != null and qualityTestStandard.standardNo != '' ">
+            AND standard_no like concat('%',#{qualityTestStandard.standardNo},'%')
         </if>
-    </select>
-    <select id="qualityTestStandardList" resultType="com.ruoyi.quality.pojo.QualityTestStandard">
-        SELECT
-        *
-        FROM quality_test_standard
-        where
-        1=1
-        <if test="qualityTestStandard.productId != null and qualityTestStandard.productId != '' ">
-            AND product_id = #{qualityTestStandard.productId}
+        <if test="qualityTestStandard.standardName != null and qualityTestStandard.standardName != '' ">
+            AND standard_name like concat('%',#{qualityTestStandard.standardName},'%')
+        </if>
+        <if test="qualityTestStandard.state != null and qualityTestStandard.state != '' ">
+            AND state = #{qualityTestStandard.state}
+        </if>
+        <if test="qualityTestStandard.inspectType != null and qualityTestStandard.inspectType != '' ">
+            AND inspect_type = #{qualityTestStandard.inspectType}
         </if>
     </select>
 </mapper>
diff --git a/src/main/resources/mapper/quality/QualityTestStandardParamMapper.xml b/src/main/resources/mapper/quality/QualityTestStandardParamMapper.xml
new file mode 100644
index 0000000..80adb27
--- /dev/null
+++ b/src/main/resources/mapper/quality/QualityTestStandardParamMapper.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.quality.mapper.QualityTestStandardParamMapper">
+
+    <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
+    <resultMap id="BaseResultMap" type="com.ruoyi.quality.pojo.QualityTestStandardParam">
+        <id column="id" property="id" />
+        <result column="parameter_item" property="parameterItem" />
+        <result column="unit" property="unit" />
+        <result column="standard_value" property="standardValue" />
+        <result column="control_value" property="controlValue" />
+        <result column="create_time" property="createTime" />
+        <result column="create_user" property="createUser" />
+        <result column="update_time" property="updateTime" />
+        <result column="update_user" property="updateUser" />
+        <result column="tenant_id" property="tenantId" />
+        <result column="test_standard_id" property="testStandardId" />
+        <result column="default_value" property="defaultValue" />
+    </resultMap>
+    <select id="selectListByProductId" resultType="com.ruoyi.quality.pojo.QualityTestStandardParam">
+        select t1.* from quality_test_standard_param t1
+        left join quality_test_standard t2 on t1.test_standard_id = t2.id
+        left join quality_test_standard_binding t3 on t2.id = t3.test_standard_id
+        where product_id = #{productId}
+    </select>
+
+</mapper>

--
Gitblit v1.9.3