| | |
| | | @Slf4j |
| | | public class LWhFormTransferCoreService { |
| | | @Resource |
| | | private LWhProcureModelService lWhProcureModelService; |
| | | @Resource |
| | | private LWhFormTransferService lWhFormTransferService; |
| | | @Resource |
| | | private LWarehouseFlowCoreService lWarehouseFlowService; |
| | | @Resource |
| | | private LWhFormOutputCoreService lWhFormOutputCoreService; |
| | | |
| | | |
| | | /** |
| | | * 执行调拨出库操作 |
| | | * 1. 通过调拨单【WH_FORM_TRANSFER】 确定调拨单物品【L_WH_PROCURE_MODEL】 |
| | | * 2. 校验库存 |
| | | * 3. 更新进出库流水总表[L_WAREHOUSE_FLOW]、各规格物品的进出库【L_WH_GOODS_RECORD】、进出库流水明细[L_WH_GOODS_RECORD_DETAILS]、 |
| | | * 库存物品详情(L_WH_GOODS) |
| | | * 4. 更新调拨单【WH_FORM_TRANSFER】为待接收,更新调拨单物品【WH_FORM_TRANSFER_MODEL】出库流水ID |
| | | * |
| | | * @param whFormTransferId 调拨单id |
| | | */ |
| | | public void doTransferOutPut(Long whFormTransferId, S_user_core currentUser) { |
| | |
| | | return; |
| | | |
| | | } |
| | | |
| | | /** |
| | | * 调拨单入库 |
| | | * |
| | | * @param whFormTransferId |
| | | * @param currentUser |
| | | */ |
| | | public void doTransferInPut(Long whFormTransferId, S_user_core currentUser) { |
| | | LWhFormTransfer lWhFormTransfer = new LWhFormTransfer(whFormTransferId); |
| | | lWhFormTransfer = lWhFormTransferService.get(lWhFormTransfer); |
| | | if (lWhFormTransfer == null || lWhFormTransfer.getStates() != 1) { |
| | | log.error("调拨失败!请检查调拨单状态"); |
| | | return; |
| | | } |
| | | Long userId = currentUser.getId(); |
| | | String nickName = currentUser.getNick_name(); |
| | | |
| | | // 出库单ID |
| | | Long outWarehouseFormId = lWhFormTransfer.getOutWarehouseFormId(); |
| | | long dealTime = DateUtils.getDateTimeNumber(System.currentTimeMillis()); |
| | | // 流水记录总表ID |
| | | long lWarehouseFlowId = lWhFormOutputCoreService.outFormByTransId(outWarehouseFormId, currentUser, dealTime); |
| | | |
| | | // 更新调拨单 |
| | | lWhFormTransfer = new LWhFormTransfer(whFormTransferId); |
| | | lWhFormTransfer.setInWarehouseFormId(lWarehouseFlowId); |
| | | lWhFormTransfer.setStates(2); |
| | | lWhFormTransfer.setInOperatorId(userId); |
| | | lWhFormTransfer.setInOperatorName(nickName); |
| | | lWhFormTransfer.setInTime(dealTime); |
| | | lWhFormTransferService.update(lWhFormTransfer); |
| | | |
| | | log.info("调拨单:{} 入库完成", whFormTransferId); |
| | | return; |
| | | } |
| | | } |