using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using Microsoft.EntityFrameworkCore; using Shentun.Peis.Enums; using Volo.Abp.Domain.Entities; using Volo.Abp.Domain.Entities.Auditing; namespace Shentun.Peis.Models { /// /// 登记检查单 /// [Table("register_check")] [Index(nameof(CheckRequestNo), Name = "ix_register_check_1")] public class RegisterCheck: AuditedEntity, IHasConcurrencyStamp { public RegisterCheck() { RegisterCheckAsbitems = new HashSet(); RegisterCheckItems = new HashSet(); RegisterCheckPictures = new HashSet(); RegisterCheckSuggestions = new HashSet(); RegisterCheckSummaries = new HashSet(); } public RegisterCheck(Guid id):base(id) { RegisterCheckAsbitems = new HashSet(); RegisterCheckItems = new HashSet(); RegisterCheckPictures = new HashSet(); RegisterCheckSuggestions = new HashSet(); RegisterCheckSummaries = new HashSet(); IsLock = 'N'; CompleteFlag = RegisterCheckCompleteFlag.UnChecked; CriticalValueFlag = '0'; CriticalValueProcessFlag = '0'; IsAudit = 'N'; } /// /// 登记流水号 /// [Column("patient_register_id")] public Guid PatientRegisterId { get; set; } /// /// 检查单号 /// [Column("check_request_no")] [StringLength(20)] public string? CheckRequestNo { get; set; } /// /// 第三方信息 /// [Column("third_info")] [StringLength(80)] public string? ThirdInfo { get; set; } /// /// 是否锁住 /// [Column("is_lock")] [MaxLength(1)] public char IsLock { get; set; } /// /// 完成标志 0(为未检), 1(已检), 2(弃检) /// [Column("complete_flag")] [MaxLength(1)] public char CompleteFlag { get; set; } /// /// 检查申请单打印次数 /// [Column("check_request_print_times")] public short CheckRequestPrintTimes { get; set; } /// /// 危急值 /// [Column("critical_value")] [StringLength(100)] public string? CriticalValue { get; set; } /// /// 危急值标志 /// [Column("critical_value_flag")] [MaxLength(1)] public char? CriticalValueFlag { get; set; } /// /// 危急值处理内容 /// [Column("critical_value_process_content")] [StringLength(100)] public string? CriticalValueProcessContent { get; set; } /// /// 危急值处理标志 /// [Column("critical_value_process_flag")] [MaxLength(1)] public char? CriticalValueProcessFlag { get; set; } /// /// 危急值处理医生 /// [Column("critical_value_process_doctor")] [StringLength(16)] public string? CriticalValueProcessDoctor { get; set; } /// /// 危急值处理日期 /// [Column("critical_value_process_date")] public DateTime? CriticalValueProcessDate { get; set; } /// /// 危急值创建日期 /// [Column("critical_value_create_date")] public DateTime? CriticalValueCreateDate { get; set; } /// /// 检查医生(内部传ID,外部医生存名字) /// [Column("check_doctor_id")] [StringLength(50)] public string? CheckDoctorId { get; set; } /// /// 检查日期 /// [Column("check_date")] public DateTime? CheckDate { get; set; } /// /// 是否审核 /// [Column("is_audit")] [MaxLength(1)] public char IsAudit { get; set; } /// /// 审核医生ID /// [Column("auditor_user_id")] public Guid? AuditorUserId { get; set; } /// /// 审核时间 /// [Column("audit_time", TypeName = "timestamp without time zone")] public DateTime? AuditTime { get; set; } ///// ///// 检查组合项目记录ID ///// //[Column("register_asbitem_id")] //public Guid RegisterAsbitemId { get; set; } [Column("concurrency_stamp")] public string ConcurrencyStamp { get; set; } //[Column("last_modifier_id")] //public Guid LastModifierId { get; set; } //[Column("last_modification_time", TypeName = "timestamp without time zone")] //public DateTime LastModificationTime { get; set; } //[Column("check_doctor_name")] //[StringLength(16)] //public string? CheckDoctorName { get; set; } //[Column("concurrency_stamp")] //[StringLength(40)] //public string ConcurrencyStamp { get; set; } = null!; //[InverseProperty(nameof(RegisterAsbitem.RegisterCheck))] //public virtual ICollection RegisterAsbitems { get; set; } [InverseProperty(nameof(RegisterCheckItem.RegisterCheck))] public virtual ICollection RegisterCheckItems { get; set; } [InverseProperty(nameof(RegisterCheckPicture.RegisterCheck))] public virtual ICollection RegisterCheckPictures { get; set; } [InverseProperty(nameof(RegisterCheckSuggestion.RegisterCheck))] public virtual ICollection RegisterCheckSuggestions { get; set; } [InverseProperty(nameof(RegisterCheckSummary.RegisterCheck))] public virtual ICollection RegisterCheckSummaries { get; set; } [InverseProperty(nameof(RegisterCheckAsbitem.RegisterCheck))] public virtual ICollection RegisterCheckAsbitems { get; set; } //[ForeignKey(nameof(RegisterAsbitemId))] //[InverseProperty("RegisterChecks")] //public virtual RegisterAsbitem RegisterAsbitem { get; set; } = null!; //public override object[] GetKeys() //{ // return new object[] { RegisterCheckId }; //} } }