Browse Source

达沃特 发货bug 2023年5月25日10:05:50

纪新园 2 years ago
parent
commit
da23495e40

+ 8 - 2
blade-service/blade-deliver-goods/src/main/java/org/springblade/deliver/goods/service/impl/DeliveryServiceImpl.java

@@ -936,18 +936,24 @@ public class DeliveryServiceImpl extends ServiceImpl<DeliveryMapper, Delivery> i
 				|| "681169".equals(AuthUtil.getTenantId())) {
 				R<List<OrderItems>> r = iOrderItemsClient.selectList(select.getSrcId());
 				if (r.isSuccess() && ObjectUtils.isNotNull(r.getData())) {
+					//从缓存中获得库存
+					List<StockGoods> stockGoodsList1 = castToList(redisTemplate.opsForValue().get("stockGoods"), StockGoods.class);
+					if (stockGoodsList1.size() == 0) {
+						stockGoodsList1 = stockGoodsClient.selectStockGoodsAll();
+					}
+					List<StockGoods> finalStockGoodsList1 = stockGoodsList1;
 					r.getData().forEach(e -> {
 						//实际库存有没有库存
 						StockGoods model = new StockGoods();
 						model.setGoodsId(e.getItemId());
 						//不同的出口对应不同的查询条件
 						if ("GN".equals(select.getTradeType())) {
-							model = finalStockGoodsList.stream().filter(s ->
+							model = finalStockGoodsList1.stream().filter(s ->
 								s.getGoodsId().equals(e.getItemId())
 									&& s.getTradeType().equals("GN")
 									&& s.getCorpId().equals(select.getCorpId())
 									&& s.getStorageId().equals(select.getStorageId())
-									&& s.getItemType().equals(e.getSpecificationAndModel())
+									&& s.getItemType().equals(e.getItemType())
 							).findFirst().orElse(null);
 						} else {
 							throw new SecurityException("贸易类型未指定");