using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;

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

        [JsonIgnore]
        public List<TaskInstance> InstanceList { get; set; }
        #endregion



        public Guid SeqId { get; set; }
        public Guid StudyId { get; set; }
        public string StudyInstanceUid { get; set; } = String.Empty;
        public string SeriesInstanceUid { get; set; } = String.Empty;
        public int SeriesNumber { get; set; }
        public DateTime? SeriesTime { get; set; }
        public string Modality { get; set; } = String.Empty;
        public string Description { get; set; } = String.Empty;
        public int InstanceCount { get; set; }
        public string SliceThickness { get; set; } = String.Empty;

        public string ImagePositionPatient { get; set; } = String.Empty;
        public string ImageOrientationPatient { get; set; } = String.Empty;
        public string BodyPartExamined { get; set; } = String.Empty;
        public string SequenceName { get; set; } = String.Empty;
        public string ProtocolName { get; set; } = String.Empty;
        public string ImagerPixelSpacing { get; set; } = String.Empty;

        public string AcquisitionTime { get; set; } = string.Empty;
        public string AcquisitionNumber { get; set; } = string.Empty;
        public string TriggerTime { get; set; } = string.Empty;

        public Guid TrialId { get; set; }
        public Guid SubjectId { get; set; }
        public Guid VisitTaskId { get; set; }


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

        public bool IsReading { get; set; } = true;

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

    }
}