From 54f3f9d6c99f6890c39ff05b1e251a555709341a Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期二, 08 四月 2025 11:55:36 +0800
Subject: [PATCH] 1.原辅料下单 2.检验对象选择
---
basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java | 88 ++++++++++++++++++++++++++++++++++++++-----
1 files changed, 77 insertions(+), 11 deletions(-)
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 4ec53ee..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
@@ -12,6 +12,7 @@
import com.ruoyi.basic.mapper.*;
import com.ruoyi.basic.pojo.*;
import com.ruoyi.basic.service.StandardMethodListService;
+import com.ruoyi.basic.service.StandardProductListSupplierAskService;
import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.utils.QueryWrappers;
import com.ruoyi.common.utils.SecurityUtils;
@@ -68,6 +69,15 @@
@Autowired
private StandardProductListUpdateRecordRelMapper standardProductListUpdateRecordRelMapper;
+ @Autowired
+ private StandardProductListSupplierAskService standardProductListSupplierAskService;
+
+ @Autowired
+ private StandardProductListSupplierAskBackupRelMapper standardProductListSupplierAskBackupRelMapper;
+
+ @Autowired
+ private StandardMethodMapper standardMethodMapper;
+
@Override
public int upStandardProductList(StandardProductList list) {
@@ -87,6 +97,10 @@
BeanUtils.copyProperties(standardProductList, productListBackupRel);
standardProductListBackupRelMapper.insert(productListBackupRel);
}
+ // 鍏宠仈鍟嗗澶囦唤
+ StandardProductListSupplierAsk standardProductListSupplierAsk = new StandardProductListSupplierAsk();
+ standardProductListSupplierAsk.setProductListId(list.getId());
+ standardProductListSupplierAskService.backupSupplierAsk(standardProductListSupplierAsk);
// 淇敼鐘舵��
list.setCheckStatus(StandardProductListChcekTypeEnums.WAIT_CHECK.getCode());
return standardProductListMapper.updateById(list);
@@ -372,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)
@@ -505,6 +532,10 @@
BeanUtils.copyProperties(standardProductList, productListBackupRel);
standardProductListBackupRelMapper.insert(productListBackupRel);
}
+ // 鍏宠仈鍟嗗澶囦唤
+ StandardProductListSupplierAsk standardProductListSupplierAsk = new StandardProductListSupplierAsk();
+ standardProductListSupplierAsk.setProductListId(list.getId());
+ standardProductListSupplierAskService.backupSupplierAsk(standardProductListSupplierAsk);
// 淇敼鐘舵��
list.setCheckStatus(StandardProductListChcekTypeEnums.WAIT_CHECK.getCode());
standardProductListMapper.updateSection(list);
@@ -670,7 +701,9 @@
QueryWrapper<StandardProductList> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("check_status",StandardProductListChcekTypeEnums.WAIT_CHECK.getCode());
List<StandardProductList> unCheckStandardProductListArray = standardProductListMapper.selectList(queryWrapper);
-
+ if(CollectionUtils.isEmpty(unCheckStandardProductListArray)){
+ throw new RuntimeException("鏆傛棤淇敼鏁版嵁");
+ }
List<Long> standardProductListIds = new ArrayList<>();
// 鎻掑叆淇敼璁板綍
standardProductListUpdateRecordMapper.insert(standardProductListUpdateRecord);
@@ -711,27 +744,60 @@
}
// 瀹℃牳閫氳繃
if(StandardProductListChcekTypeEnums.PASS_CHECK.getCode().equals(standardProductListUpdateRecord.getCheckStatus())){
- // 鍒犻櫎澶囦唤鏁版嵁
- standardProductListBackupRelMapper.deleteBatchIds(standardProductListIds);
// 淇敼鐘舵��
standardProductListMapper.updateProductListCheckStatus(standardProductListIds,StandardProductListChcekTypeEnums.PASS_CHECK.getCode());
}
// 瀹℃牳鏈�氳繃
if(StandardProductListChcekTypeEnums.NO_PASS_CHECK.getCode().equals(standardProductListUpdateRecord.getCheckStatus())){
- // 鏌ヨ鎵�鏈夌殑澶囦唤鏁版嵁
+ // 鏌ヨ鎵�鏈夋爣鍑嗘爲涓嬬殑妫�楠岄」鐩浠芥暟鎹�
List<StandardProductListBackupRel> standardProductListBackupRelList = standardProductListBackupRelMapper.selectBatchIds(standardProductListIds);
- // 鍥炴粴鏁版嵁
+ // 鍥炴粴鏍囧噯鏍戜笅鐨勬楠岄」鐩暟鎹�
for (StandardProductListBackupRel standardProductListBackupRel : standardProductListBackupRelList) {
StandardProductList standardProductList = new StandardProductList();
BeanUtils.copyProperties(standardProductListBackupRel, standardProductList);
- standardProductList.setCheckStatus("");
standardProductListMapper.updateById(standardProductList);
}
- // 鍒犻櫎澶囦唤鏁版嵁
- standardProductListBackupRelMapper.deleteBatchIds(standardProductListIds);
+ // 鍥炴粴妫�楠岄」鐩巶瀹跺瘑搴︾粦瀹氳〃鏁版嵁
+ QueryWrapper<StandardProductListSupplierAskBackupRel> supplierAskBackupRelQueryWrapper = new QueryWrapper<>();
+ supplierAskBackupRelQueryWrapper.in("product_list_id",standardProductListIds);
+ List<StandardProductListSupplierAskBackupRel> standardProductListSupplierAskBackupRelList = standardProductListSupplierAskBackupRelMapper.selectList(supplierAskBackupRelQueryWrapper);
+ if(!CollectionUtils.isEmpty(standardProductListSupplierAskBackupRelList)){
+ QueryWrapper<StandardProductListSupplierAsk> deleteWrapper = new QueryWrapper<>();
+ deleteWrapper.in("product_list_id",standardProductListIds);
+ standardProductListSupplierAskMapper.delete(deleteWrapper);
+ ArrayList<StandardProductListSupplierAsk> supplierAskRollBackList = new ArrayList<>();
+ for (StandardProductListSupplierAskBackupRel standardProductListSupplierAskBackupRel : standardProductListSupplierAskBackupRelList) {
+ StandardProductListSupplierAsk standardProductListSupplierAsk = new StandardProductListSupplierAsk();
+ BeanUtils.copyProperties(standardProductListSupplierAskBackupRel, standardProductListSupplierAsk);
+ supplierAskRollBackList.add(standardProductListSupplierAsk);
+ }
+ standardProductListSupplierAskMapper.batchInsertSupplierAsk(supplierAskRollBackList);
+ }
+
}
+ // 鍒犻櫎鏍囧噯鏍戜笅鐨勬楠岄」鐩浠芥暟鎹�
+ standardProductListBackupRelMapper.deleteBatchIds(standardProductListIds);
+ // 鍒犻櫎缁戝畾鍘傚澶囦唤鏁版嵁
+ standardProductListSupplierAskBackupRelMapper.batchDeleteByProductIds(standardProductListIds);
standardProductListUpdateRecordMapper.updateById(standardProductListUpdateRecord);
}
+
+ /**
+ * 鏌ヨ鏍囧噯搴撴槸鍚﹀瓨鍦ㄥ鏍镐腑鐘舵��
+ *
+ * @return
+ */
+ @Override
+ public boolean existCheckingRecord() {
+ QueryWrapper<StandardProductListUpdateRecord> queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("check_status",StandardProductListChcekTypeEnums.CHECK_ING.getCode());
+ List<StandardProductListUpdateRecord> standardProductListUpdateRecordList = standardProductListUpdateRecordMapper.selectList(queryWrapper);
+ if(CollectionUtils.isEmpty(standardProductListUpdateRecordList)){
+ return false;
+ }else {
+ return true;
+ }
+ }
}
--
Gitblit v1.9.3