using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Text.Json.Serialization;
namespace Mirle.Component.Database.Model.WES
{
///
/// 即時異常資訊類別
///
[Table("CUR_ALARM_DATA")]
public class CurAlarmDataDto
{
///
/// 異常代碼
///
[Column(Name = "ALARM_CODE")]
[Required, Key, StringLength(10), JsonPropertyName("ALARM_CODE"), JsonPropertyOrder(1)]
public string ALARM_CODE { get; set; }
///
/// 異常類別
///
///
/// AGV
/// SHT
/// PLC
///
[Column(Name = "ALARM_TYPE")]
[Required, Key, StringLength(3), JsonPropertyName("ALARM_TYPE"), JsonPropertyOrder(2)]
public string ALARM_TYPE { get; set; }
///
/// 起始時間
///
[Column(Name = "START_TIME")]
[Required, Key, JsonPropertyName("START_TIME"), JsonPropertyOrder(3)]
public DateTime START_TIME { get; set; }
///
/// 異常敘述
///
[Column(Name = "ALARM_DESC")]
[JsonPropertyName("ALARM_DESC"), JsonPropertyOrder(4)]
public string ALARM_DESC { get; set; }
///
/// 軟體編號
///
/// [Sofeware Type]C[Floor][Sequence * 2]
[Column(Name = "SOFTWARE_ID")]
[Required, JsonPropertyName("SOFTWARE_ID"), JsonPropertyOrder(5)]
public string SOFTWARE_ID { get; set; }
///
/// 任務編號
///
///
/// Warehouse Controller System Task ID
/// P[YYYYMMDDHH][Sequence * 5] (PLCC)
/// A[YYYYMMDDHH][Sequence * 5] (AGVC)
/// S[YYYYMMDDHH][Sequence * 5] (SHTC)
///
[Column(Name = "TASK_ID")]
[JsonPropertyName("TASK_ID"), JsonPropertyOrder(6)]
public string TASK_ID { get; set; }
///
/// 設備編號
///
[Column(Name = "VEHICLE_ID")]
[StringLength(16), JsonPropertyName("VEHICLE_ID"), JsonPropertyOrder(7)]
public string VEHICLE_ID { get; set; }
///
/// 結束時間
///
[Column(Name = "END_TIME")]
[JsonPropertyName("END_TIME"), JsonPropertyOrder(8)]
public DateTime? END_TIME { get; set; }
///
/// 程式名稱
///
[Column(Name = "PROGRAM_NAME")]
[Required, StringLength(30), JsonPropertyName("PROGRAM_NAME"), JsonPropertyOrder(9)]
public string PROGRAM_NAME { get; set; }
}
}