50 lines
1.8 KiB
C#
50 lines
1.8 KiB
C#
using JSMachine.WMS.App.Dto;
|
|||
|
|
using JSMachine.WMS.App.Dto.Enum;
|
||
|
|
using JSMachine.WMS.App.IService;
|
||
|
|
using JSMachine.WMS.App.ServiceImpl;
|
||
|
|
using JSMachine.WMS.Business.RcsCallBack.IService.StaePattern;
|
||
|
|
using JSMachine.WMS.RPC.RcsRPC.Dto.In;
|
||
|
|
using System;
|
||
|
|
using System.Collections.Generic;
|
||
|
|
using System.Linq;
|
||
|
|
using System.Text;
|
||
|
|
using System.Threading.Tasks;
|
||
|
|
|
||
|
|
namespace JSMachine.WMS.Business.RcsCallBack.ServiceImpl.StatePattern.PutdownCompleted
|
||
|
|
{
|
||
|
|
/// <summary>
|
||
|
|
/// 放货完成处理器
|
||
|
|
/// </summary>
|
||
|
|
public abstract class PutdownCompletedStateHandler : IAgvTaskStateHandler
|
||
|
|
{
|
||
|
|
protected readonly IStorageRackService _storageRackService;
|
||
|
|
protected readonly IAGVTaskService _agvTaskService;
|
||
|
|
protected readonly IElevatorPlcQueueService _elevatorPlcQueueService;
|
||
|
|
protected readonly IElevatorCountService _elevatorCountService;
|
||
|
|
protected readonly IERPTaskService _erpTaskService;
|
||
|
|
|
||
|
|
public PutdownCompletedStateHandler(
|
||
|
|
IStorageRackService storageRackService,
|
||
|
|
IAGVTaskService agvTaskService,
|
||
|
|
IElevatorPlcQueueService elevatorPlcQueueService,
|
||
|
|
IElevatorCountService elevatorCountService,
|
||
|
|
IERPTaskService erpTaskService
|
||
|
|
)
|
||
|
|
{
|
||
|
|
_storageRackService = storageRackService;
|
||
|
|
_agvTaskService = agvTaskService;
|
||
|
|
_elevatorPlcQueueService = elevatorPlcQueueService;
|
||
|
|
_elevatorCountService= elevatorCountService;
|
||
|
|
_erpTaskService = erpTaskService;
|
||
|
|
}
|
||
|
|
|
||
|
|
public abstract Task<bool> HandleAsync(AgvExcutionInfo agvExcutionInfo, AGVTaskDto agvTask, StorageRackDto destWarehouse);
|
||
|
|
|
||
|
|
protected async Task CompleteTask(AGVTaskDto agvTask)
|
||
|
|
{
|
||
|
|
agvTask.TaskStatus = TaskStatusEnum.Completed;
|
||
|
|
await _agvTaskService.UpdateAgvTaskStatus(agvTask);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|