|
|
@@ -40,6 +40,7 @@ import org.springblade.deliver.goods.vo.DeliveryVO;
|
|
|
import org.springblade.deliver.goods.mapper.DeliveryMapper;
|
|
|
import org.springblade.deliver.goods.service.IDeliveryService;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import org.springblade.purchase.sales.feign.IOrderItemsClient;
|
|
|
import org.springblade.stock.entity.StockGoods;
|
|
|
import org.springblade.stock.feign.IStockGoodsClient;
|
|
|
import org.springblade.stock.vo.StockGoodsVO;
|
|
|
@@ -70,6 +71,7 @@ public class DeliveryServiceImpl extends ServiceImpl<DeliveryMapper, Delivery> i
|
|
|
private IUserClient userClient;//获取用户信息
|
|
|
private ICorpsDescClient corpsDescClient;//获取客户信息
|
|
|
private IStockGoodsClient stockGoodsClient;
|
|
|
+ private IOrderItemsClient iOrderItemsClient;
|
|
|
|
|
|
private final DeliveryItemsServiceImpl iDeliveryItemsService;
|
|
|
|
|
|
@@ -221,21 +223,38 @@ public class DeliveryServiceImpl extends ServiceImpl<DeliveryMapper, Delivery> i
|
|
|
List<DeliveryItems> deliveryItemsList = delivery.getDeliveryItemsList();
|
|
|
deliveryItemsList.forEach(e->{
|
|
|
//传入库存
|
|
|
- BigDecimal inventoryNumber = e.getInventoryNumber();
|
|
|
- //实际库存
|
|
|
- R<StockGoodsVO> stockGoodsVOR = stockGoodsClient.selectStock(delivery.getCorpId(), delivery.getStorageId(), e.getItemId(), null, null, e.getCntrNo(), e.getBillNo(), e.getContractNumber());
|
|
|
+ BigDecimal inventoryNumber = e.getActualQuantity();
|
|
|
+ //实际库存有没有库存
|
|
|
+ StockGoods model=new StockGoods();
|
|
|
+ model.setCntrNo(e.getCntrNo());
|
|
|
+ model.setBillNo(e.getBillNo());
|
|
|
+ model.setCorpId(delivery.getCorpId());
|
|
|
+ model.setStorageId(delivery.getStorageId());
|
|
|
+ model.setGoodsId(e.getItemId());
|
|
|
+ StockGoods stock=stockGoodsClient.getOneStock(model);
|
|
|
+
|
|
|
// 比较2个库存值是否相等
|
|
|
- BigDecimal surplusRouteQuantity = stockGoodsVOR.getData().getSurplusRouteQuantity();
|
|
|
- if(inventoryNumber.compareTo(surplusRouteQuantity)==1)
|
|
|
- { //增加库存
|
|
|
- StockGoodsVO data = stockGoodsVOR.getData();
|
|
|
- iDeliveryItemsService.receiving(delivery.getTradeType(),data.getId(),e);
|
|
|
+ //BigDecimal surplusRouteQuantity = stockGoodsVOR.getData().getSurplusRouteQuantity();
|
|
|
+
|
|
|
+ //新增库存单
|
|
|
+ if(stock==null)
|
|
|
+ {
|
|
|
+ iDeliveryItemsService.saveStock(delivery.getTradeType(),delivery.getCorpId(),delivery.getStorageId(),e);
|
|
|
+ }
|
|
|
+ //修改库存单
|
|
|
+ else if(stock!=null)
|
|
|
+ {
|
|
|
+ iDeliveryItemsService.receiving(delivery.getTradeType(),stock.getId(),e);
|
|
|
}
|
|
|
+ //更新item已发数量
|
|
|
+ iOrderItemsClient.updateActualQuantity(e.getSrcId(),inventoryNumber,1);
|
|
|
});
|
|
|
- //todo 修改orderItems 已出数量
|
|
|
+
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
+
|
|
|
+
|
|
|
}
|