using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using Microsoft.EntityFrameworkCore; using Volo.Abp.Auditing; using Volo.Abp.Domain.Entities; using Volo.Abp.Domain.Entities.Auditing; namespace Shentun.Peis.Models { /// /// 组合项目 /// [Table("asbitem")] [Index(nameof(DisplayName), Name = "ix_asbitem", IsUnique = true)] public class Asbitem : AuditedEntity { public Asbitem() { AsbitemDetails = new HashSet(); ChargeAsbitems = new HashSet(); CustomerOrgGroupDetails = new HashSet(); MedicalPackageDetails = new HashSet(); RegisterAsbitems = new HashSet(); Rooms = new HashSet(); } /// /// 名称 /// [Column("display_name")] [StringLength(30)] public string DisplayName { get; set; } = null!; /// /// 简称 /// [Column("short_name")] [StringLength(20)] public string? ShortName { get; set; } /// /// 适用性别,M-男,F-女,A-全部 /// [Column("for_sex_id")] [MaxLength(1)] public char ForSexId { get; set; } /// /// 项目类别 /// [Column("item_type_id")] public Guid ItemTypeId { get; set; } /// /// 价格 /// [Column("price")] [Precision(8, 2)] public decimal Price { get; set; } /// /// 仪器类别 /// [Column("device_type_id")] public Guid DeviceTypeId { get; set; } /// /// 发票类别 /// [Column("invoice_item_type_id")] public Guid InvoiceItemTypeId { get; set; } /// /// 项目结果合并 /// [Column("is_item_result_merger")] [MaxLength(1)] public char IsItemResultMerger { get; set; } /// /// 餐前项目 /// [Column("is_before_eat")] [MaxLength(1)] public char IsBeforeEat { get; set; } /// /// 临床意义 /// [Column("clinical_meaning")] [StringLength(100)] public string? ClinicalMeaning { get; set; } /// /// 默认结果 /// [Column("default_result")] [StringLength(100)] public string? DefaultResult { get; set; } /// /// 候诊时间 /// [Column("queue_time")] [Precision(3, 1)] public decimal QueueTime { get; set; } /// /// 启用诊断函数 /// [Column("is_diagnosis_function")] [MaxLength(1)] public char IsDiagnosisFunction { get; set; } /// /// 诊断函数 /// [Column("diagnosis_function")] [MaxLength(1)] public char? DiagnosisFunction { get; set; } /// /// 诊断函数处理完毕后继续处理 /// [Column("is_continue_process")] [MaxLength(1)] public char IsContinueProcess { get; set; } /// /// 体检报告图片旋转90° /// [Column("is_picture_rotate")] [MaxLength(1)] public char IsPictureRotate { get; set; } /// /// 是检查项目 /// [Column("is_check")] [MaxLength(1)] public char IsCheck { get; set; } /// /// 是启用 /// [Column("is_active")] [MaxLength(1)] public char IsActive { get; set; } [Column("simple_code")] [StringLength(30)] public string SimpleCode { get; set; } = null!; [Column("display_order")] public int DisplayOrder { get; set; } [ForeignKey(nameof(InvoiceItemTypeId))] [InverseProperty("Asbitems")] public virtual InvoiceItemType InvoiceItemType { get; set; } = null!; [ForeignKey(nameof(ItemTypeId))] [InverseProperty("Asbitems")] public virtual ItemType ItemType { get; set; } = null!; [InverseProperty("Asbitem")] public virtual SampleGroupDetail SampleGroupDetail { get; set; } = null!; [InverseProperty(nameof(AsbitemDetail.Asbitem))] public virtual ICollection AsbitemDetails { get; set; } [InverseProperty(nameof(ChargeAsbitem.Asbitem))] public virtual ICollection ChargeAsbitems { get; set; } [InverseProperty(nameof(CustomerOrgGroupDetail.Asbitem))] public virtual ICollection CustomerOrgGroupDetails { get; set; } [InverseProperty(nameof(MedicalPackageDetail.Asbitem))] public virtual ICollection MedicalPackageDetails { get; set; } [InverseProperty(nameof(RegisterAsbitem.Asbitem))] public virtual ICollection RegisterAsbitems { get; set; } [ForeignKey("AsbitemId")] [InverseProperty(nameof(Room.Asbitems))] public virtual ICollection Rooms { get; set; } #region 审计属性 //public DateTime CreationTime { get; set; } //public Guid? CreatorId { get; set; } //public Guid? LastModifierId { get; set; } //public DateTime? LastModificationTime { get; set; } //public Guid? DeleterId { get; set; } //public DateTime? DeletionTime { get; set; } //public bool IsDeleted { get; set; } //public override object[] GetKeys() //{ // return new object[] { AsbitemId }; //} #endregion } }