using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;

namespace IRaCIS.Core.Domain.Models
{
    public class TaskInstance : BaseFullAuditEntity, IEntitySeqId
    {
        #region 导航属性
        [JsonIgnore]
        [ForeignKey("SeriesId")]
        public TaskSeries TaskSeries { get; set; }

        [JsonIgnore]
        [ForeignKey("StudyId")]
        public TaskStudy TaskStudy { get; set; }
        #endregion



        public Guid SeqId { get; set; }
        public Guid StudyId { get; set; }
        public Guid SeriesId { get; set; }
        public string StudyInstanceUid { get; set; }
        public string SeriesInstanceUid { get; set; }
        public string SopInstanceUid { get; set; }
        public int InstanceNumber { get; set; }
        public DateTime? InstanceTime { get; set; }
        public bool CPIStatus { get; set; }
        public int ImageRows { get; set; }
        public int ImageColumns { get; set; }
        public int SliceLocation { get; set; }


        public string SliceThickness { get; set; }
        public int NumberOfFrames { get; set; }
        public string PixelSpacing { get; set; }

        public string ImagerPixelSpacing { get; set; }
        public string FrameOfReferenceUID { get; set; }
        public string WindowCenter { get; set; }
        public string WindowWidth { get; set; }


        public Guid TrialId { get; set; }
        public Guid SubjectId { get; set; }
        public Guid VisitTaskId { get; set; }
        public bool Anonymize { get; set; }
        public string Path { get; set; }

    
        public string HtmlPath { get; set; }=string.Empty;

        public long? FileSize { get; set; }

    }
}