using Mirle.Component.API.WarehouseExecutionSystem.Models;
using System.Threading.Tasks;
namespace Mirle.Component.API.WarehouseExecutionSystem.Modules
{
///
/// Warehouse Execution System 商業邏輯介面
///
/// Message direction of warehouse control system to warehouse execution system
public interface IToWarehouseExecutionSystemModule
{
///
/// 處理建立命令回應
///
/// 回應訊息
/// 已成功完成的工作
public Task Process_TW002_CreateCommandResponseAsync(TW002CreateCommandResponseDto message);
///
/// 處理執行命令回報
///
/// 回報訊息
/// 已成功完成的工作
public Task Process_TW003_ExecuteCommandReportAsync(TW003ExecuteCommandReportDto message);
///
/// 處理完成命令回報
///
/// 回報訊息
/// 已成功完成的工作
public Task Process_TW005_FinishCommandReportAsync(TW005FinishCommandReportDto message);
///
/// 處理取消命令回應
///
/// 回應訊息
/// 已成功完成的工作
public Task Process_TW008_CancelCommandResponseAsync(TW008CancelCommandResponseDto message);
///
/// 處理檢查載具及物料編號請求
///
/// 請求訊息
/// 已成功完成的工作
public Task Process_TW009_CheckCarrierIDRequestAsync(TW009CheckCarrierIDRequestDto message);
///
/// 處理棧板供收狀態回報
///
/// 回報訊息
/// 已成功完成的工作
public Task Process_TW011_PalletSupplyStatusReportAsync(TW011PalletSupplyStatusReportDto message);
///
/// 處理心跳包回報
///
/// 回應訊息
/// 已成功完成的工作
public Task Process_TW013_HeartbeatReportAsync(TW013HeartbeatReportDto message);
///
/// 處理量測物料重量回應
///
/// 回應訊息
/// 已成功完成的工作
public Task Process_TW016_MaterialWeightResponseAsync(TW016MaterialWeightResponseDto message);
///
/// 處理緊急應變請求
///
/// 請求訊息
/// 已成功完成的工作
public Task Process_TW017_EmergencyEventRequestAsync(TW017EmergencyEventRequestDto message);
}
}