| | |
| | | { |
| | | if (state.ChangePalletPhase == 0) |
| | | { |
| | | // 调用批量拆盘确认接口(换盘取完阶段) |
| | | var sourcePallet = state.CurrentTask.RobotSourceAddressPalletCode; |
| | | var confirmResult = _taskProcessor.PostSplitPalletConfirmAsync(sourcePallet); |
| | | if (!confirmResult.IsSuccess) |
| | | { |
| | | QuartzLogger.Error($"批量拆盘确认失败: {confirmResult.ErrorMessage}", state.RobotCrane?.DeviceName ?? "Unknown"); |
| | | } |
| | | |
| | | // 所有阶段完成,处理入库 |
| | | if (await _taskProcessor.HandleInboundTaskAsync(state, useSourceAddress: true)) |
| | | { |
| | |
| | | // 拆盘任务:直接处理入库 |
| | | if (robotTaskType == RobotTaskTypeEnum.SplitPallet) |
| | | { |
| | | // 调用批量拆盘确认接口 |
| | | var sourcePallet = state.CurrentTask.RobotSourceAddressPalletCode; |
| | | var confirmResult = _taskProcessor.PostSplitPalletConfirmAsync(sourcePallet); |
| | | if (!confirmResult.IsSuccess) |
| | | { |
| | | QuartzLogger.Error($"批量拆盘确认失败: {confirmResult.ErrorMessage}", state.RobotCrane?.DeviceName ?? "Unknown"); |
| | | } |
| | | |
| | | if (await _taskProcessor.HandleInboundTaskAsync(state, useSourceAddress: true)) |
| | | { |
| | | // 入库成功,删除任务记录 |
| | |
| | | { |
| | | if (state.ChangePalletPhase == 0) |
| | | { |
| | | // 调用批量组盘确认接口(换盘放完阶段) |
| | | var targetPallet = state.CurrentTask.RobotTargetAddressPalletCode; |
| | | var confirmResult = _taskProcessor.PostGroupPalletConfirmAsync(targetPallet); |
| | | if (!confirmResult.IsSuccess) |
| | | { |
| | | QuartzLogger.Error($"批量组盘确认失败: {confirmResult.ErrorMessage}", state.RobotCrane?.DeviceName ?? "Unknown"); |
| | | } |
| | | |
| | | // 所有阶段完成,处理入库 |
| | | if (await _taskProcessor.HandleInboundTaskAsync(state, useSourceAddress: false)) |
| | | { |
| | |
| | | // 组盘任务:直接处理入库 |
| | | if (robotTaskType == RobotTaskTypeEnum.GroupPallet) |
| | | { |
| | | // 调用批量组盘确认接口 |
| | | var targetPallet = state.CurrentTask.RobotTargetAddressPalletCode; |
| | | var confirmResult = _taskProcessor.PostGroupPalletConfirmAsync(targetPallet); |
| | | if (!confirmResult.IsSuccess) |
| | | { |
| | | QuartzLogger.Error($"批量组盘确认失败: {confirmResult.ErrorMessage}", state.RobotCrane?.DeviceName ?? "Unknown"); |
| | | } |
| | | |
| | | // 处理入库任务回传 |
| | | // useSourceAddress: false 表示使用目标地址(组盘场景) |
| | | if (await _taskProcessor.HandleInboundTaskAsync(state, useSourceAddress: false)) |