You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

211 lines
9.7 KiB

8 months ago
  1. using Mirle.Component.API.ProgrammableLogicController.Models;
  2. using System.Threading.Tasks;
  3. namespace Mirle.Component.API.ProgrammableLogicController.Modules
  4. {
  5. /// <summary>
  6. /// Programmable Logic Controller 商業邏輯介面
  7. /// </summary>
  8. /// <remarks>Message direction of warehouse control system to programmable logic controller</remarks>
  9. public interface IToProgrammableLogicControllerModule
  10. {
  11. /// <summary>
  12. /// 處理建立命令請求
  13. /// </summary>
  14. /// <param name="message">請求訊息</param>
  15. /// <returns>已成功完成的工作</returns>
  16. public Task Process_TP001_CreateCommandRequestAsync(TP001CreateCommandRequestDto message);
  17. /// <summary>
  18. /// 處理執行命令回應
  19. /// </summary>
  20. /// <param name="message">回應訊息</param>
  21. /// <returns>已成功完成的工作</returns>
  22. public Task Process_TP004_ExecuteCommandAckAsync(TP004ExecuteCommandAckDto message);
  23. /// <summary>
  24. /// 處理完成命令回應
  25. /// </summary>
  26. /// <param name="message">回應訊息</param>
  27. /// <returns>已成功完成的工作</returns>
  28. public Task Process_TP006_FinishCommandAckAsync(TP006FinishCommandAckDto message);
  29. /// <summary>
  30. /// 處理取消命令請求
  31. /// </summary>
  32. /// <param name="message">請求訊息</param>
  33. /// <returns>已成功完成的工作</returns>
  34. public Task Process_TP007_CancelCommandRequestAsync(TP007CancelCommandRequestDto message);
  35. /// <summary>
  36. /// 處理建立取放貨請求
  37. /// </summary>
  38. /// <param name="message">請求訊息</param>
  39. /// <returns>已成功完成的工作</returns>
  40. public Task Process_TP009_CreateLoadUnloadRequestAsync(TP009CreateLoadUnloadRequestDto message);
  41. /// <summary>
  42. /// 處理完成取放貨回報
  43. /// </summary>
  44. /// <param name="message">回報訊息</param>
  45. /// <returns>已成功完成的工作</returns>
  46. public Task Process_TP011_FinishLoadUnloadReportAsync(TP011FinishLoadUnloadReportDto message);
  47. /// <summary>
  48. /// 處理允許取放貨回應
  49. /// </summary>
  50. /// <param name="message">回應訊息</param>
  51. /// <returns>已成功完成的工作</returns>
  52. public Task Process_TP014_PermitLoadUnloadAckAsync(TP014PermitLoadUnloadAckDto message);
  53. /// <summary>
  54. /// 處理檢查載具編號及物料編號回應
  55. /// </summary>
  56. /// <param name="message">回應訊息</param>
  57. /// <returns>已成功完成的工作</returns>
  58. public Task Process_TP016_CheckCarrierIDResponseAsync(TP016CheckCarrierIDResponseDto message);
  59. /// <summary>
  60. /// 處理棧板供收狀態回應
  61. /// </summary>
  62. /// <param name="message">回應訊息</param>
  63. /// <returns>已成功完成的工作</returns>
  64. public Task Process_TP018_PalletSupplyStatusAckAsync(TP018PalletSupplyStatusAckDto message);
  65. /// <summary>
  66. /// 處理移動台車狀態請求
  67. /// </summary>
  68. /// <param name="message">請求訊息</param>
  69. /// <returns>已成功完成的工作</returns>
  70. public Task Process_TP019_MoveCarStatusRequestAsync(TP019MoveCarStatusRequestDto message);
  71. /// <summary>
  72. /// 處理呼叫電梯請求
  73. /// </summary>
  74. /// <param name="message">請求訊息</param>
  75. /// <returns>已成功完成的工作</returns>
  76. public Task Process_TP021_CallLifterRequestAsync(TP021CallLifterRequestDto message);
  77. /// <summary>
  78. /// 處理電梯抵達回應
  79. /// </summary>
  80. /// <param name="message">回應訊息</param>
  81. /// <returns>已成功完成的工作</returns>
  82. public Task Process_TP024_ArrivedLifterAckAsync(TP024ArrivedLifterAckDto message);
  83. /// <summary>
  84. /// 處理電梯貨物檢知回報
  85. /// </summary>
  86. /// <param name="message">回報訊息</param>
  87. /// <returns>已成功完成的工作</returns>
  88. public Task Process_TP025_CheckLifterItemReportAsync(TP025CheckLifterItemReportDto message);
  89. /// <summary>
  90. /// 處理發生異常回應
  91. /// </summary>
  92. /// <param name="message">回應訊息</param>
  93. /// <returns>已成功完成的工作</returns>
  94. public Task Process_TP028_HappenAlarmAckAsync(TP028HappenAlarmAckDto message);
  95. /// <summary>
  96. /// 處理清除異常回應
  97. /// </summary>
  98. /// <param name="message">回應訊息</param>
  99. /// <returns>已成功完成的工作</returns>
  100. public Task Process_TP030_ResetAlarmAckAsync(TP030ResetAlarmAckDto message);
  101. /// <summary>
  102. /// 處理使用維修門回應
  103. /// </summary>
  104. /// <param name="message">回應訊息</param>
  105. /// <returns>已成功完成的工作</returns>
  106. public Task Process_TP032_UseRepairDoorResponseAsync(TP032UseRepairDoorResponseDto message);
  107. /// <summary>
  108. /// 處理釋放維修門回報
  109. /// </summary>
  110. /// <param name="message">回應訊息</param>
  111. /// <returns>已成功完成的工作</returns>
  112. public Task Process_TP033_ReleaseRepairDoorReportAsync(TP033ReleaseRepairDoorReportDto message);
  113. /// <summary>
  114. /// 處理維修門狀態回應
  115. /// </summary>
  116. /// <param name="message">回應訊息</param>
  117. /// <returns>已成功完成的工作</returns>
  118. public Task Process_TP036_RepairDoorStatusAckAsync(TP036RepairDoorStatusAckDto message);
  119. /// <summary>
  120. /// 處理使用鐵捲門請求
  121. /// </summary>
  122. /// <param name="message">請求訊息</param>
  123. /// <returns>已成功完成的工作</returns>
  124. public Task Process_TP037_UseRollingDoorRequestAsync(TP037UseRollingDoorRequestDto message);
  125. /// <summary>
  126. /// 處理使用鐵捲門回應
  127. /// </summary>
  128. /// <param name="message">回應訊息</param>
  129. /// <returns>已成功完成的工作</returns>
  130. public Task Process_TP040_RollingDoorStatusAckAsync(TP040RollingDoorStatusAckDto message);
  131. /// <summary>
  132. /// 處理心跳包回應
  133. /// </summary>
  134. /// <param name="message">請求訊息</param>
  135. /// <returns>已成功完成的工作</returns>
  136. public Task Process_TP042_HeartbeatAckAsync(TP042HeartbeatAckDto message);
  137. /// <summary>
  138. /// 處理操作模式回應
  139. /// </summary>
  140. /// <param name="message">回應訊息</param>
  141. /// <returns>已成功完成的工作</returns>
  142. public Task Process_TP044_OperationModeAckAsync(TP044OperationModeAckDto message);
  143. /// <summary>
  144. /// 處理鎖定庫區命令派送回應
  145. /// </summary>
  146. /// <param name="message">回應訊息</param>
  147. /// <returns>已成功完成的工作</returns>
  148. public Task Process_TP046_LockStorageDispatchAckAsync(TP046LockStorageDispatchAckDto message);
  149. /// <summary>
  150. /// 處理量測物料重量請求
  151. /// </summary>
  152. /// <param name="message">請求訊息</param>
  153. /// <returns>已成功完成的工作</returns>
  154. public Task<FP048MaterialWeightResponseDto> Process_TP047_MaterialWeightRequestAsync(TP047MaterialWeightRequestDto message);
  155. /// <summary>
  156. /// 處理消防警訊通知回應
  157. /// </summary>
  158. /// <param name="message">回應訊息</param>
  159. /// <returns>已成功完成的工作</returns>
  160. public Task Process_TP050_FireAlarmNotifyAckAsync(TP050FireAlarmNotifyAckDto message);
  161. /// <summary>
  162. /// 處理緊急應變請求
  163. /// </summary>
  164. /// <param name="message">請求訊息</param>
  165. /// <returns>已成功完成的工作</returns>
  166. public Task Process_TP051_EmergencyEventRequestAsync(TP051EmergencyEventRequestDto message);
  167. /// <summary>
  168. /// 處理緊急停止回應
  169. /// </summary>
  170. /// <param name="message">回應訊息</param>
  171. /// <returns>已成功完成的工作</returns>
  172. public Task Process_TP054_EmergencyOffAckAsync(TP054EmergencyOffAckDto message);
  173. /// <summary>
  174. /// 處理建立電梯命令請求
  175. /// </summary>
  176. /// <param name="message">請求訊息</param>
  177. /// <returns>已成功完成的工作</returns>
  178. public Task Process_TP055_CreateLifterCommandRqeuestAsync(TP055CreateLifterCommandRequestDto message);
  179. /// <summary>
  180. /// 處理完成電梯命令回應
  181. /// </summary>
  182. /// <param name="message">回應訊息</param>
  183. /// <returns>已成功完成的工作</returns>
  184. public Task Process_TP058_FinishLifterCommandAckAsync(TP058FinishLifterCommandAckDto message);
  185. /// <summary>
  186. /// 處理取消電梯命令請求
  187. /// </summary>
  188. /// <param name="message">請求訊息</param>
  189. /// <returns>已成功完成的工作</returns>
  190. public Task Process_TP059_CancelLifterCommandRequestAsync(TP059CancelLifterCommandRequestDto message);
  191. #region === [CPS] ===
  192. /// <summary>
  193. /// 處理設備暫存資料回報
  194. /// </summary>
  195. /// <param name="message">回報訊息</param>
  196. /// <returns>已成功完成的工作</returns>
  197. public Task ProcessTemporaryEquipmentReportAsync(TemporaryEquipmentDto message);
  198. /// <summary>
  199. /// 處理資料暫存回報
  200. /// </summary>
  201. /// <param name="message">回報訊息</param>
  202. /// <returns>已成功完成的工作</returns>
  203. public Task ProcessTemporaryDataReportAsync(TemporaryDataDto message);
  204. #endregion
  205. }
  206. }