From afd4b25f5744725c92be40217aae0760289b4671 Mon Sep 17 00:00:00 2001
From: chenrui <1187576398@qq.com>
Date: 星期二, 08 四月 2025 11:19:05 +0800
Subject: [PATCH] 标准库添加委托要求功能
---
basic-server/src/main/java/com/ruoyi/basic/mapper/StructureItemParameterMapper.java | 3 +
basic-server/src/main/java/com/ruoyi/basic/dto/StructureItemParameterDto.java | 14 +++++++
basic-server/src/main/java/com/ruoyi/basic/pojo/StructureItemParameter.java | 3 +
basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardMethodListServiceImpl.java | 36 ++++++++++++++++++
basic-server/src/main/resources/mapper/StructureItemParameterMapper.xml | 8 +++-
basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java | 22 +++++++++-
6 files changed, 80 insertions(+), 6 deletions(-)
diff --git a/basic-server/src/main/java/com/ruoyi/basic/dto/StructureItemParameterDto.java b/basic-server/src/main/java/com/ruoyi/basic/dto/StructureItemParameterDto.java
new file mode 100644
index 0000000..3113728
--- /dev/null
+++ b/basic-server/src/main/java/com/ruoyi/basic/dto/StructureItemParameterDto.java
@@ -0,0 +1,14 @@
+package com.ruoyi.basic.dto;
+
+import lombok.Data;
+
+@Data
+public class StructureItemParameterDto {
+
+ private String tree;
+
+ /**
+ * 鏄惁濮旀墭瑕佹眰 0 鍚� 1 鏄�
+ */
+ private String delegateRequestFlag;
+}
diff --git a/basic-server/src/main/java/com/ruoyi/basic/mapper/StructureItemParameterMapper.java b/basic-server/src/main/java/com/ruoyi/basic/mapper/StructureItemParameterMapper.java
index e95ac18..f6cdb2f 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/mapper/StructureItemParameterMapper.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/mapper/StructureItemParameterMapper.java
@@ -4,6 +4,7 @@
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.basic.dto.StructureItemParameterDto;
import com.ruoyi.basic.dto.TestItemDto;
import com.ruoyi.basic.pojo.StandardProductList;
import com.ruoyi.basic.pojo.StructureItemParameter;
@@ -28,7 +29,7 @@
int removeNoSample(@Param("sample") String sample);
- List<StructureItemParameter> selectItemParameterBySample(@Param("sample") String sample);
+ List<StructureItemParameter> selectItemParameterBySample(@Param("structureItemParameterDto") StructureItemParameterDto structureItemParameterDto);
List<TestItemDto> getItemTreeProduct(@Param("objectType") String objectType);
}
diff --git a/basic-server/src/main/java/com/ruoyi/basic/pojo/StructureItemParameter.java b/basic-server/src/main/java/com/ruoyi/basic/pojo/StructureItemParameter.java
index a2b34ba..c88fe58 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/pojo/StructureItemParameter.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/pojo/StructureItemParameter.java
@@ -246,4 +246,7 @@
@ExcelProperty(value = "妫�娴嬪弬鏁扮紪鍙�",index = 3)
@TableField(exist = false)
private String parameterNumber;
+
+ @ApiModelProperty(value = "鏄惁濮旀墭瑕佹眰 0 鍚� 1 鏄�")
+ private String delegateRequestFlag;
}
\ No newline at end of file
diff --git a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardMethodListServiceImpl.java b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardMethodListServiceImpl.java
index 596aabb..652af35 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardMethodListServiceImpl.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardMethodListServiceImpl.java
@@ -5,14 +5,19 @@
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.basic.enums.BasicTreeEnums;
+import com.ruoyi.basic.enums.TestPorjectTypeEnums;
import com.ruoyi.basic.mapper.StandardMethodListMapper;
+import com.ruoyi.basic.mapper.StandardMethodMapper;
import com.ruoyi.basic.mapper.StandardProductListMapper;
import com.ruoyi.basic.mapper.WorkShopMapper;
+import com.ruoyi.basic.pojo.StandardMethod;
import com.ruoyi.basic.pojo.StandardMethodList;
import com.ruoyi.basic.pojo.StandardProductList;
import com.ruoyi.basic.pojo.WorkShop;
import com.ruoyi.basic.service.StandardMethodListService;
import lombok.AllArgsConstructor;
+import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -20,6 +25,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import java.util.stream.Collectors;
/**
* @author Administrator
@@ -37,6 +43,9 @@
@Autowired
private WorkShopMapper workShopMapper;
+
+ @Autowired
+ private StandardMethodMapper standardMethodMapper;
@Override
@@ -103,6 +112,33 @@
standardMethodListArray = standardMethodListMapper.selectStandardMethodLists(sampleType);
}
}
+ // 鍒ゆ柇鏄惁鏄垚鍝�/鍗婃垚鍝�
+ boolean isProduct = false;
+ for (int i = 0; i < trees.length; i++) {
+ if(TestPorjectTypeEnums.FINISHED_PRODUCT.getName().equals(trees[i]) || TestPorjectTypeEnums.SEMI_FINISHED_PRODUCT.getName().equals(trees[i])){
+ isProduct = true;
+ break;
+ }
+ }
+ // 濡傛灉鏄垚鍝�/鍗婃垚鍝� 涓� 妫�楠屾爣鍑嗛噷涓嶅寘鍚鎵樿姹傘�傛煡璇㈠苟娣诲姞鑷抽泦鍚�
+ boolean isContainDelegateRequest = false;
+ for (StandardMethodList standardMethodList : standardMethodListArray) {
+ if("濮旀墭瑕佹眰".equals(standardMethodList.getName())){
+ isContainDelegateRequest = true;
+ break;
+ }
+ }
+ if(isProduct && !isContainDelegateRequest){
+ QueryWrapper<StandardMethod> queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("name","濮旀墭瑕佹眰");
+ queryWrapper.eq("is_use","1");
+ List<StandardMethod> standardMethods = standardMethodMapper.selectList(queryWrapper);
+ standardMethodListArray.addAll(standardMethods.stream().map(item -> {
+ StandardMethodList standardMethodList = new StandardMethodList();
+ BeanUtils.copyProperties(item, standardMethodList);
+ return standardMethodList;
+ }).collect(Collectors.toList()));
+ }
map.put("standardMethodList", standardMethodListArray);
return map;
}
diff --git a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java
index 33a54de..305e77c 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java
@@ -75,6 +75,9 @@
@Autowired
private StandardProductListSupplierAskBackupRelMapper standardProductListSupplierAskBackupRelMapper;
+ @Autowired
+ private StandardMethodMapper standardMethodMapper;
+
@Override
public int upStandardProductList(StandardProductList list) {
@@ -383,14 +386,27 @@
if(StringUtils.isEmpty(checkItemQueryTree.toString())){
return map;
}
+ // 鍒ゆ柇鏄惁涓哄鎵樿姹傛爣鍑�
+ StandardMethod standardMethod = standardMethodMapper.selectById(id);
+ if(ObjectUtils.isEmpty(standardMethod)){
+ return map;
+ }
+ StructureItemParameterDto structureItemParameterDto = new StructureItemParameterDto();
+ if(standardMethod.getName().equals("濮旀墭瑕佹眰")){
+ structureItemParameterDto.setDelegateRequestFlag("1");
+ }else {
+ structureItemParameterDto.setDelegateRequestFlag("0");
+ }
+ structureItemParameterDto.setTree(checkItemQueryTree.toString());
+
// 鏍规嵁妫�楠屽璞�/浜у搧鏌ヨ妫�楠岄」
- List<StructureItemParameter> structureItemParameterList = structureItemParameterMapper.selectItemParameterBySample(checkItemQueryTree.toString());
+ List<StructureItemParameter> structureItemParameterList = structureItemParameterMapper.selectItemParameterBySample(structureItemParameterDto);
// 濡傛灉鏄骇鍝佺殑妫�鏌ラ」涓虹┖鍚戜笂鎺�
if(CollectionUtils.isEmpty(structureItemParameterList)){
String query = "[\"" + sampleType + "\"]";
- structureItemParameterList = structureItemParameterMapper.selectItemParameterBySample(query);
+ structureItemParameterDto.setTree(query);
+ structureItemParameterList = structureItemParameterMapper.selectItemParameterBySample(structureItemParameterDto);
}
-
// 鏌ヨ鏍囧噯搴撳凡缁戝畾妫�鏌ラ」鐩�
List<StandardProductList> standardProductList = standardProductListMapper.selectList(Wrappers.<StandardProductList>lambdaQuery()
.eq(StandardProductList::getStandardMethodListId, id)
diff --git a/basic-server/src/main/resources/mapper/StructureItemParameterMapper.xml b/basic-server/src/main/resources/mapper/StructureItemParameterMapper.xml
index bf8a74d..0dd9fb5 100644
--- a/basic-server/src/main/resources/mapper/StructureItemParameterMapper.xml
+++ b/basic-server/src/main/resources/mapper/StructureItemParameterMapper.xml
@@ -92,7 +92,8 @@
inspection_item_class_en,
code,
radius_list,
- rates
+ rates,
+ delegate_request_flag
FROM
temp_sample A
LEFT JOIN
@@ -204,8 +205,11 @@
sample is NULL
OR sample = ''
or sample = '[]'
- OR sample LIKE CONCAT('%', #{sample}, '%')
+ OR sample LIKE CONCAT('%', #{structureItemParameterDto.tree}, '%')
)
+ <if test="structureItemParameterDto.delegateRequestFlag != null and structureItemParameterDto.delegateRequestFlag !='' ">
+ AND delegate_request_flag = #{structureItemParameterDto.delegateRequestFlag}
+ </if>
order by id asc
</select>
--
Gitblit v1.9.3