Forráskód Böngészése

fix: 处理库存问题

luofeiyun 1 hete
szülő
commit
e2f55d62cb

+ 5 - 5
ship-module-product/ship-module-product-biz/src/main/java/com/yc/ship/module/product/api/VoyageApiImpl.java

@@ -462,7 +462,7 @@ public class VoyageApiImpl implements VoyageApi {
                     // 加超卖房间数
                     item.setOversoldNum(item.getOversoldNum().add(useNum.subtract(item.getRealTotalNum())));
                     voyageStockDetailLogDO.setVirtualNum(useNum.subtract(item.getRealTotalNum()));
-                    voyageStockDetailLogDO.setRealNum(useNum);
+                    voyageStockDetailLogDO.setRealNum(item.getRealTotalNum());
                     // 扣实际房间数
                     item.setVirtualNum(item.getVirtualNum().subtract(useNum.subtract(item.getRealTotalNum())));
                     item.setRealTotalNum(BigDecimal.ZERO);
@@ -585,11 +585,11 @@ public class VoyageApiImpl implements VoyageApi {
                     voyageStockDetailLogDO.setVirtualNum(BigDecimal.ZERO);
                     item.setRealTotalNum(item.getRealTotalNum().subtract(useNum));
                 } else {
-                    useVirtualNum.add(totalUseNum.subtract(item.getRealTotalNum()));
+                    useVirtualNum.add(useNum.subtract(item.getRealTotalNum()));
                     useRealNum.add(item.getRealTotalNum().add(BigDecimal.ZERO));
-                    overSoldNum.add(totalUseNum.subtract(item.getRealTotalNum()));
+                    overSoldNum.add(useNum.subtract(item.getRealTotalNum()));
                     voyageStockDetailLogDO.setRealNum(item.getRealTotalNum());
-                    voyageStockDetailLogDO.setVirtualNum(totalUseNum.subtract(item.getRealTotalNum()));
+                    voyageStockDetailLogDO.setVirtualNum(useNum.subtract(item.getRealTotalNum()));
                     // 扣虚拟房间数
                     item.setVirtualNum(item.getVirtualNum().subtract(useNum.subtract(item.getRealTotalNum())));
                     item.setRealTotalNum(BigDecimal.ZERO);
@@ -1038,7 +1038,7 @@ public class VoyageApiImpl implements VoyageApi {
                     useRealNum.add(useNum.subtract(item.getVirtualNum()));
                     useVirtualNum.add(item.getVirtualNum().add(BigDecimal.ZERO));
                     voyageStockDetailLogDO.setVirtualNum(item.getVirtualNum());
-                    voyageStockDetailLogDO.setRealNum(totalUseNum.subtract(item.getVirtualNum()));
+                    voyageStockDetailLogDO.setRealNum(useNum.subtract(item.getVirtualNum()));
                     // 扣实际房间数
                     item.setRealTotalNum(item.getRealTotalNum().subtract(useNum.subtract(item.getVirtualNum())));
                     item.setVirtualNum(BigDecimal.ZERO);