|
|
@@ -12,11 +12,15 @@ import com.ruoyi.common.core.utils.StringUtils;
|
|
|
import com.ruoyi.common.mybatis.core.domain.BaseEntity;
|
|
|
import com.ruoyi.common.mybatis.core.page.PageQuery;
|
|
|
import com.ruoyi.common.mybatis.core.page.TableDataInfo;
|
|
|
+import com.ruoyi.wms.domain.bo.BaseOrderDetailBo;
|
|
|
import com.ruoyi.wms.domain.bo.MovementOrderBo;
|
|
|
+import com.ruoyi.wms.domain.dto.WmsUnitAuxiliaryDto;
|
|
|
import com.ruoyi.wms.domain.entity.MovementOrder;
|
|
|
import com.ruoyi.wms.domain.entity.MovementOrderDetail;
|
|
|
+import com.ruoyi.wms.domain.po.UnitPo;
|
|
|
import com.ruoyi.wms.domain.vo.MovementOrderVo;
|
|
|
import com.ruoyi.wms.mapper.MovementOrderMapper;
|
|
|
+import com.ruoyi.wms.utils.UnitCalculation;
|
|
|
import lombok.RequiredArgsConstructor;
|
|
|
import org.apache.commons.lang3.SerializationUtils;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
@@ -45,6 +49,8 @@ public class MovementOrderService {
|
|
|
|
|
|
private final InventoryHistoryService inventoryHistoryService;
|
|
|
|
|
|
+ private final WmsUnitConfigService wmsUnitConfigService;
|
|
|
+
|
|
|
|
|
|
/**
|
|
|
* 查询移库单
|
|
|
@@ -163,7 +169,6 @@ public class MovementOrderService {
|
|
|
@Transactional
|
|
|
public void move(MovementOrderBo bo) {
|
|
|
|
|
|
-
|
|
|
// 1.校验商品明细不能为空!
|
|
|
validateBeforeMove(bo);
|
|
|
|
|
|
@@ -173,14 +178,17 @@ public class MovementOrderService {
|
|
|
} else {
|
|
|
updateByBo(bo);
|
|
|
}
|
|
|
- // 4.更新库存Inventory
|
|
|
+
|
|
|
+ // 4. 单位替换
|
|
|
+ wmsUnitConfigService.unitConversion(bo.getDetails());
|
|
|
+
|
|
|
+ // 5.更新库存Inventory
|
|
|
MovementOrderBo shipmentBo = getShipmentBo(bo);
|
|
|
inventoryService.subtract(shipmentBo.getDetails());
|
|
|
|
|
|
MovementOrderBo receiptBo = getReceiptBo(bo);
|
|
|
inventoryService.add(receiptBo.getDetails());
|
|
|
|
|
|
-
|
|
|
// 6.创建库存记录流水
|
|
|
inventoryHistoryService.saveInventoryHistory(shipmentBo, ServiceConstants.InventoryHistoryOrderType.MOVEMENT, false);
|
|
|
inventoryHistoryService.saveInventoryHistory(receiptBo, ServiceConstants.InventoryHistoryOrderType.MOVEMENT, true);
|