using Mirle.Component.API.ProgrammableLogicController.Models;
using System.Threading.Tasks;
namespace Mirle.Component.API.ProgrammableLogicController.Modules
{
///
/// Programmable Logic Controller 商業邏輯介面
///
/// Message direction of programmable logic controller to warehouse control system
public interface IFromProgrammableLogicControllerModule
{
///
/// 處理建立命令回應
///
/// 回應訊息
/// 已成功完成的工作
public Task Process_FP002_CreateCommandResponseAsync(FP002CreateCommandResponseDto message);
///
/// 處理執行命令回報
///
/// 回報訊息
/// 已成功完成的工作
public Task Process_FP003_ExecuteCommandReportAsync(FP003ExecuteCommandReportDto message);
///
/// 處理完成命令回報
///
/// 回報訊息
/// 已成功完成的工作
public Task Process_FP005_FinishCommandReportAsync(FP005FinishCommandReportDto message);
///
/// 處理取消命令回應
///
/// 回應訊息
/// 已成功完成的工作
public Task Process_FP008_CancelCommandResponseAsync(FP008CancelCommandResponseDto message);
///
/// 處理建立取放貨回應
///
/// 回應訊息
/// 已成功完成的工作
public Task Process_FP010_CreateLoadUnloadResponseAsync(FP010CreateLoadUnloadResponseDto message);
///
/// 處理完成取放貨回應
///
/// 回應訊息
/// 已成功完成的工作
public Task Process_FP012_FinishLoadUnloadAckAsync(FP012FinishLoadUnloadAckDto message);
///
/// 處理允許取放貨回報
///
/// 回報訊息
/// 已成功完成的工作
public Task Process_FP013_PermitLoadUnloadReportAsync(FP013PermitLoadUnloadReportDto message);
///
/// 處理檢查載具編號及物料編號請求
///
/// 請求訊息
/// 已成功完成的工作
public Task Process_FP015_CheckCarrierIDRequestAsync(FP015CheckCarrierIDRequest message);
///
/// 處理棧板供收狀態回報
///
/// 回報訊息
/// 已成功完成的工作
public Task Process_FP017_PalletSupplyStatusReportAsync(FP017PalletSupplyStatusReportDto message);
///
/// 處理移動台車狀態回應
///
/// 回應訊息
/// 已成功完成的工作
public Task Process_FP020_MoveCarStatusResponseAsync(FP020MoveCarStatusResponseDto message);
///
/// 處理呼叫電梯回應
///
/// 回應訊息
/// 已成功完成的工作
public Task Process_FP022_CallLifterResponseAsync(FP022CallLifterReponseDto message);
///
/// 處理電梯抵達回報
///
/// 回報訊息
/// 已成功完成的工作
public Task Process_FP023_ArrivedLifterReportAsync(FP023ArrivedLifterReportDto message);
///
/// 處理電梯貨物檢知回應
///
/// 回應訊息
/// 已成功完成的工作
public Task Process_FP026_CheckLifterItemAckAsync(FP026CheckLifterItemAckDto message);
///
/// 處理發生異常回報
///
/// 回報訊息
/// 已成功完成的工作
public Task Process_FP027_HappenAlarmReportAsync(FP027HappenAlarmReportDto message);
///
/// 處理清除異常回報
///
/// 回報訊息
/// 已成功完成的工作
public Task Process_FP029_ResetAlarmReportAsync(FP029ResetAlarmReportDto message);
///
/// 處理使用維修門請求
///
/// 請求訊息
/// 已成功完成的工作
public Task Process_FP031_UseRepairDoorRequestAsync(FP031UseRapairDoorRequestDto message);
///
/// 處理維修門狀態回報
///
/// 回報訊息
/// 已成功完成的工作
public Task Process_FP035_RepairDoorStatusReportAsync(FP035RepairDoorStatusReportDto message);
///
/// 處理釋放維修門回應
///
/// 回應訊息
/// 已成功完成的工作
public Task Process_FP034_ReleaseRepairDoorAckAsync(FP034ReleaseRepairDoorAckDto message);
///
/// 處理使用鐵捲門回應
///
/// 回應訊息
/// 已成功完成的工作
public Task Process_FP038_UseRollingDoorResponseAsync(FP038UseRollingDoorResponseDto message);
///
/// 處理鐵捲門狀態回報
///
/// 回報訊息
/// 已成功完成的工作
public Task Process_FP039_RollingDoorStatusReportAsync(FP039RollingDoorStatusReportDto message);
///
/// 處理心跳包回報
///
/// 回應訊息
/// 已成功完成的工作
public Task Process_FP042_HeartbeatReportAsync(FP041HeartbeatReportDto message);
///
/// 處理操作模式回報
///
/// 回報訊息
/// 已成功完成的工作
public Task Process_FP043_OperationModeReportAsync(FP043OperationModeReportDto message);
///
/// 處理鎖定庫區命令派送回報
///
/// 回報訊息
/// 已成功完成的工作
public Task Process_FP045_LockStorageDispatchReportAsync(FP045LockStorageDispatchReportDto message);
///
/// 處理消防警訊通知回報
///
/// 回報訊息
/// 已成功完成的工作
public Task Process_FP049_FireAlarmNotifyReportAsync(FP049FireAlarmNotifyReportDto message);
///
/// 處理緊急應變回應
///
/// 回應訊息
/// 已成功完成的工作
public Task Process_FP052_EmergencyEventResponseAsync(FP052EmergencyEventResponseDto message);
///
/// 處理緊急停止回應
///
/// 回應訊息
/// 已成功完成的工作
public Task Process_FP053_EmergencyOffReportAsync(FP053EmergencyOffReportDto message);
///
/// 處理建立電梯命令回應
///
/// 回應訊息
/// 已成功完成的工作
public Task Process_FP056_CreateLifterCommandResponseAsync(FP056CreateLifterCommandResponseDto message);
///
/// 處理完成電梯命令回報
///
/// 回報訊息
/// 已成功完成的工作
public Task Process_FP057_FinishLifterCommandReportAsync(FP057FinishLifterCommandReportDto message);
///
/// 處理取消電梯命令回應
///
/// 回應訊息
/// 已成功完成的工作
public Task Process_FP060_CancleLifterCommandResponseAsync(FP060CancelLifterResponseDto message);
}
}