using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using Microsoft.EntityFrameworkCore;
using System.Runtime.Serialization;

#nullable disable

namespace AMESCoreStudio.WebApi.Models.AMES
{
    /// <summary>
    /// SOP資訊 - SOP類型為暫行文件
    /// </summary>
    [Keyless]
    [Table("C_TEMP_SOP", Schema = "JHAMES")]
    public partial class CTempSop
    {
        /// <summary>
        /// SOP_ID
        /// </summary>
        [Column("ID")]
        [DataMember]
        public int Id { get; set; }

        /// <summary>
        /// SOP名稱
        /// </summary>
        [Column("SOP_NAME")]
        [StringLength(256)]
        [DataMember]
        public string SopName { get; set; }

        /// <summary>
        /// SOP存放路徑
        /// </summary>
        [Column("SOP_PATH")]
        [StringLength(256)]
        [DataMember]
        public string SopPath { get; set; }

        /// <summary>
        /// SOP製程
        /// </summary>
        [Column("PROCESS")]
        [StringLength(50)]
        [DataMember]
        public string Process { get; set; }

        /// <summary>
        /// 機種名稱
        /// </summary>
        [Column("MODEL")]
        [StringLength(50)]
        [DataMember]
        public string Model { get; set; }

        /// <summary>
        /// 發行PE
        /// </summary>
        [Column("PE_NAME")]
        [StringLength(50)]
        [DataMember]
        public string PeName { get; set; }

        /// <summary>
        /// 發行日期
        /// </summary>
        [Column("UPLOAD_DATE", TypeName = "DATE")]
        [DataMember]
        public DateTime? UploadDate { get; set; }

        /// <summary>
        /// PE備註
        /// </summary>
        [Column("PE_NOTE")]
        [StringLength(50)]
        [DataMember]
        public string PeNote { get; set; }

        /// <summary>
        /// 簽核者
        /// </summary>
        [Column("SIGN_OFF")]
        [StringLength(50)]
        [DataMember]
        public string SignOff { get; set; }

        /// <summary>
        /// 簽核日期
        /// </summary>
        [Column("SIGN_OFF_DATE", TypeName = "DATE")]
        [DataMember]
        public DateTime? SignOffDate { get; set; }

        /// <summary>
        /// 回收日期
        /// </summary>
        [Column("RECYCLE", TypeName = "DATE")]
        [DataMember]
        public DateTime? Recycle { get; set; }

        /// <summary>
        /// 回收是否完成
        /// </summary>
        [Column("RECYCLE_COMPLETE")]
        [DataMember]
        [StringLength(50)]
        public string RecycleComplete { get; set; }
    }
}