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.
 
 
 
 
 

82 lines
3.0 KiB

using System;
using System.ComponentModel.DataAnnotations;
using System.Text.Json.Serialization;
namespace Mirle.Component.API.ProgrammableLogicController.Models
{
/// <summary>
/// 呼叫電梯請求類別
/// </summary>
public class TP021CallLifterRequestDto : CommonMessage
{
/// <summary>
/// 當下任務編號
/// </summary>
/// <remarks>A[YYYYMMDDHH][Sequnce * 5]/S[YYYYMMDDHH][Sequnce * 5]</remarks>
[Required, StringLength(16), JsonPropertyName("current_task_id"), JsonPropertyOrder(101)]
public string CurrentTaskID { get; set; }
/// <summary>
/// 站點編號
/// </summary>
[Required, StringLength(9), JsonPropertyName("station_id"), JsonPropertyOrder(102)]
public string StationID { get; set; }
/// <summary>
/// 目標樓層
/// </summary>
[Required, JsonPropertyName("floor"), JsonPropertyOrder(103)]
public int Floor { get; set; }
/// <summary>
/// 取得呼叫電梯請求
/// </summary>
/// <param name="transName">交易名稱</param>
/// <param name="softwareID">軟體編號</param>
/// <param name="currentTaskID">當下任務編號</param>
/// <param name="stationID">站點編號</param>
/// <param name="floor">目標樓層</param>
/// <returns>呼叫電梯請求</returns>
public static TP021CallLifterRequestDto Get(TransactionName transName, string softwareID,
string currentTaskID, string stationID, int floor)
{
return new TP021CallLifterRequestDto()
{
Timetick = DateTime.Now,
TransactionName = transName.ToTransactionName(),
SoftwareID = softwareID,
CurrentTaskID = currentTaskID,
StationID = stationID,
Floor = floor
};
}
}
/// <summary>
/// 呼叫電梯回應類別
/// </summary>
public class FP022CallLifterReponseDto : CommonMessage
{
/// <summary>
/// 當下任務編號
/// </summary>
/// <remarks>A[YYYYMMDDHH][Sequnce * 5]</remarks>
[Required, StringLength(16), JsonPropertyName("current_task_id"), JsonPropertyOrder(101)]
public string CurrentTaskID { get; set; }
/// <summary>
/// 站點編號
/// </summary>
[Required, StringLength(9), JsonPropertyName("station_id"), JsonPropertyOrder(102)]
public string StationID { get; set; }
/// <summary>
/// 目標樓層
/// </summary>
[Required, JsonPropertyName("floor"), JsonPropertyOrder(103)]
public int Floor { get; set; }
/// <summary>
/// 結果代碼
/// </summary>
/// <value>
/// 0 = Success <br/>
/// 1 = Reject <br/>
/// </value>
[Required, JsonPropertyName("result_code"), JsonPropertyOrder(104)]
public CallLifterResultCode ResultCode { get; set; }
}
}