using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Text.Json.Serialization;
namespace Mirle.Component.Database.Model.WES
{
///
/// 即時儲位狀態
///
[Table("CUR_LOC_STATUS")]
public class CurLocStatusDto
{
///
/// 儲存區編號
///
/// STG[Floor][Sequence * 2]
[Column(Name = "STORAGE_ID")]
[Required, Key, StringLength(6), JsonPropertyName("STORAGE_ID"), JsonPropertyOrder(1)]
public string STORAGE_ID { get; set; }
///
/// 儲位編號
///
[Column(Name = "LOC_ID")]
[Required, Key, StringLength(9), JsonPropertyName("LOC_ID"), JsonPropertyOrder(2)]
public string LOC_ID { get; set; }
///
/// 儲位狀態
///
///
/// N = 空庫位
/// E = 空棧板
/// S = 庫存庫位
/// I = 入庫預約
/// O = 出庫預約
/// C = 盤點預約
/// P = 盤點調帳
/// X = 禁用庫位
/// L = 鎖定 (Double Deep)
/// D = 二重格儲位
///
[Column(Name = "LOC_STATUS")]
[Required, Key, StringLength(2), JsonPropertyName("LOC_STATUS"), JsonPropertyOrder(3)]
public string LOC_STATUS { get; set; } = "N";
///
/// 載具編號
///
/// 棧板編號/物流箱號
[Column(Name = "CARRIER_ID")]
[Required, StringLength(64), JsonPropertyName("CARRIER_ID"), JsonPropertyOrder(4)]
public string CARRIER_ID { get; set; }
///
/// 程式名稱
///
[Column(Name = "PROGRAM_NAME")]
[Required, StringLength(30), JsonPropertyName("PROGRAM_NAME"), JsonPropertyOrder(5)]
public string PROGRAM_NAME { get; set; }
///
/// 更新人員
///
[Column(Name = "UPDATE_USER")]
[Required, StringLength(30), JsonPropertyName("UPDATE_USER"), JsonPropertyOrder(6)]
public string UPDATE_USER { get; set; }
///
/// 更新時間
///
[Column(Name = "UPDATE_TIME")]
[Required, JsonPropertyName("UPDATE_TIME"), JsonPropertyOrder(7)]
public DateTime UPDATE_TIME { get; set; } = DateTime.Now;
}
}