|
|
@@ -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("贸易类型未指定");
|