From 3793ba4a9b6be8faa6df0d4a76c06763ac03f873 Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期三, 29 十月 2025 15:06:04 +0800
Subject: [PATCH] 外购成品报检相关问题调整
---
inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderPlanServiceImpl.java | 40 +++++++++++++++++++++++++++++-----------
1 files changed, 29 insertions(+), 11 deletions(-)
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderPlanServiceImpl.java b/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderPlanServiceImpl.java
index 62a2daa..72a1f65 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderPlanServiceImpl.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderPlanServiceImpl.java
@@ -11,6 +11,7 @@
import com.alibaba.fastjson.JSONObject;
import com.aspose.words.License;
import com.aspose.words.SaveFormat;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
@@ -30,6 +31,7 @@
import com.ruoyi.basic.pojo.IfsInventoryQuantity;
import com.ruoyi.basic.pojo.StandardTemplate;
import com.ruoyi.basic.service.StandardTemplateService;
+import com.ruoyi.basic.vo.IfsInventoryQuantityVO;
import com.ruoyi.common.constant.DictDataConstants;
import com.ruoyi.common.constant.InsOrderTypeConstants;
import com.ruoyi.common.constant.MenuJumpPathConstants;
@@ -167,9 +169,7 @@
public IPage<InsOrderPlanVO> selectInsOrderPlanList(Page page, InsOrderPlanDTO insOrderPlanDTO) {
// todo: 浠呯湅鑷繁鎴栬�呭疄楠屽
//鑾峰彇褰撳墠浜烘墍灞炲疄楠屽id
-
String laboratory = null;
-
String userName = null;
Integer userId = null;
if (ObjectUtil.isNotEmpty(insOrderPlanDTO.getUserId())) {
@@ -180,8 +180,17 @@
Integer isCheck = insOrderPlanDTO.getIsCheck();
insOrderPlanDTO.setIsCheck(null);
String sonLaboratory = insOrderPlanDTO.getSonLaboratory();//璇曢獙瀹�
+ Integer typeSource = insOrderPlanDTO.getTypeSource();
+ QueryWrapper<InsOrderPlanDTO> queryWrapper = new QueryWrapper<>();
+ if(ObjectUtils.isNotEmpty(typeSource)){
+ insOrderPlanDTO.setTypeSource(null);
+ queryWrapper = QueryWrappers.queryWrappers(insOrderPlanDTO)
+ .eq(!Objects.equals(-1,typeSource),"type_source",typeSource)
+ .isNotNull(!Objects.equals(-1,typeSource),"ifs_inventory_id")
+ .isNull(Objects.equals(-1,typeSource),"ifs_inventory_id");//濮旀墭璇曢獙鏌ヨ闈瀒fs鎶ユ璁㈠崟
+ }
IPage<InsOrderPlanVO> insOrderPage = insSampleMapper.findInsSampleAndOrder(page,
- QueryWrappers.queryWrappers(insOrderPlanDTO),
+ queryWrapper,
userName,
userId,
sonLaboratory,
@@ -277,7 +286,8 @@
}
@Override
- public List<String> checkSubmitPlan(Integer orderId, String laboratory) {
+ public Map<String,Object> checkSubmitPlan(Integer orderId, String laboratory) {
+ Map<String, Object> map = new HashMap<>();
List<String> collect = new ArrayList<>();
List<InsSample> insSamples = insSampleMapper.selectList(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getInsOrderId, orderId).select(InsSample::getId));
List<Integer> ids = insSamples.stream().map(a -> a.getId()).collect(Collectors.toList());
@@ -303,7 +313,19 @@
return insProduct.getInspectionItem() + "-" + insProduct.getInspectionItemSubclass();
}).collect(Collectors.toList());
}
- return collect;
+ //鏌ヨifs鎷嗗垎璁㈠崟鏄惁鏈夊凡涓嬪崟浣嗘槸鏈瀹岀殑鍗曞瓙
+ long count = 0L;
+ InsOrder insOrder = insOrderMapper.selectById(orderId);
+ if(Objects.nonNull(insOrder.getIfsInventoryId())){
+ IfsInventoryQuantity one = ifsInventoryQuantityMapper.selectById(insOrder.getIfsInventoryId());
+ //杩囨护鍑轰笉鍚堟牸鎴栨湭鎻愪氦鐨勫崟瀛�
+ count = ifsInventoryQuantityMapper.selectSplitOrderList(one.getPartNo(),one.getLineNo(),one.getReleaseNo(),one.getReceiptNo(),one.getOrderNo())
+ .stream()
+ .filter(f->(Objects.nonNull(f.getInsOrderId()) && !Objects.equals(f.getInsOrderId(),orderId)) && (Objects.isNull(f.getInsResult()) || 0==f.getInsResult())).count();
+ }
+ map.put("errorMsg",collect);
+ map.put("unInsOrderCount",count);
+ return map;
}
@Override
@@ -758,7 +780,7 @@
@Override
@Transactional(rollbackFor = Exception.class)
- public int submitPlan(Integer orderId, String laboratory, Integer verifyUser, String entrustCode) {
+ public int submitPlan(Integer orderId, String laboratory, Integer verifyUser, String entrustCode,Boolean registerInsResults) {
InsOrder order = insOrderMapper.selectById(orderId);
// 1. 鍒ゆ柇鏄惁鏈夐噸澶嶇紪鍙�, 鏈夐噸澶嶇紪鍙峰仛鎻愰啋
Long codeCount = insOrderMapper.selectCount(Wrappers.<InsOrder>lambdaQuery()
@@ -922,13 +944,12 @@
throw new RuntimeException(e);
}
});
-
// 14.ifs绉诲簱(鍘熸潗鏂欓渶瑕佽繘琛岀Щ搴撴搷浣�) --> 鏈�鍚庢墽琛�,鍥犱负澶辫触鏃犳硶鍥炴粴
if (ifsInventoryQuantity != null) {
// 鐧昏妫�楠岀粨鏋�
// 鍒ゆ柇鏄惁鏈変笉鍚堟牸, 鏈変笉鍚堟牸涓嶈兘绉诲簱
// todo: ifs绉诲簱
- insReportService.isRawMaterial(order);
+ insReportService.isRawMaterial(order,registerInsResults,false);
// 15 鍒ゆ柇褰撳墠鏍峰搧鏄惁涓哄師鏉愭枡, 鍘熸潗鏂欓渶瑕佽繘琛屾暟鎹垎鏋�, 鍒ゆ柇涔嬪墠10鏉℃暟鎹悓涓�涓緵搴斿晢, 鍚屼竴涓楠岄」鐨勫亸宸槸鍚﹁秴杩�10%
// 鏌ヨifs淇℃伅鑾峰彇鑾峰彇鍓�10涓緵搴斿晢涓�鏍风殑, 妫�楠岄」涓�鏍蜂俊鎭�
@@ -936,8 +957,6 @@
// 娣诲姞鍒嗘瀽鏁版嵁
addAnalysis(productList, ifsInventoryQuantity, order, sendUserAccount);
});
-
-
} else {
// 淇敼鎴愬搧鐘舵��
// 鍒ゆ柇鏄惁鏈変笉鍚堟牸
@@ -952,7 +971,6 @@
.set(InsOrder::getInsResult, 0));
}
}
-
return 1;
}
--
Gitblit v1.9.3