using IRaCIS.Core.Domain.Share; using System.ComponentModel.DataAnnotations; namespace IRaCIS.Application.Contracts { public class BasicDicView : AddOrEditBasicDic { public DateTime CreateTime { get; set; } public Guid CreateUserId { get; set; } public DateTime UpdateTime { get; set; } public Guid UpdateUserId { get; set; } public string ConfigType { get; set; } = String.Empty; } public class GetTrialConfigDictionaryListOutDto { public Guid Id { get; set; } public Guid DictionaryId { get; set; } public int ShowOrder { get; set; } public string Description { get; set; } = string.Empty; public string Code { get; set; } public string ParentCode { get; set; } public string ChildGroup { get; set; } public string Value { get; set; } = string.Empty; public string ValueCN { get; set; } = string.Empty; } public class ChildInQuery:SortInput { public Guid ParentId { get; set; } } public class AddOrEditBasicDic { public Guid? Id { get; set; } public string Code { get; set; } = String.Empty; public string Description { get; set; } = String.Empty; public string Value { get; set; } = String.Empty; public string ValueCN { get; set; } = String.Empty; public string ChildGroup { get; set; } = String.Empty; public int ChildCodeEnum { get; set; } public int ShowOrder { get; set; } //有父亲 就有值 public Guid? ParentId { get; set; } public bool IsEnable { get; set; } public DicDataTypeEnum DataTypeEnum { get; set; } //是配置的话,就有值 public Guid? ConfigTypeId { get; set; } } public class GetCriterionDictionaryInDto { public Guid? ReadingCriterionId { get; set; } public string DictionaryCode { get; set; } = string.Empty; public List DictionaryCodeList { get; set; } = new List(); } public class GetBasicDataAllSelectInDto { public Guid? TrialReadingCriterionId { get; set; } public Guid? SystemReadingCriterionId { get; set; } } public class GetTrialCriterionDictionaryListInDto { [NotDefault] public Guid TrialCriterionId { get; set; } } public class GetCriterionDictionaryListInDto { [NotDefault] public Guid SystemCriterionId { get; set; } } public class GetCriterionDictionaryListOutDto { public Guid Id { get; set; } public string Code { get; set; } = string.Empty; public int Count { get; set; } public int ShowOrder { get; set; } public string Description { get; set; } = string.Empty; } public class BasicDicSelectCopy : BasicDicSelect { } public class BasicDicSelect { public Guid Id { get; set; } public string Code { get; set; } = string.Empty; public string ValueCN { get; set; } = string.Empty; public string Value { get; set; } = string.Empty; public string Description { get; set; } = string.Empty; public int ShowOrder { get; set; } public Guid? ParentId { get; set; } public string ParentCode { get; set; } = string.Empty; public string ChildGroup { get; set; } = string.Empty; public DicDataTypeEnum DataTypeEnum { get; set; } public CrterionDictionaryGroup CrterionDictionaryGroup { get; set; } = IRaCIS.Core.Domain.Share.CrterionDictionaryGroup.General; public bool IsEnumInt => System.Text.RegularExpressions.Regex.IsMatch(Code, @"^[-+]?\d*$") && DataTypeEnum == DicDataTypeEnum.Enum; } public class BasicDicQuery : PageInput { public string? keyInfo { get; set; } public string? Code { get; set; } public DicDataTypeEnum? DataTypeEnum { get; set; } public Guid? ConfigTypeId { get; set; } } public class AddBasicDicAndChild { [NotDefault] public Guid ConfigTypeId { get; set; } public bool IsEnable { get; set; } public string Code { get; set; } = String.Empty; public int ShowOrder { get; set; } public string Description { get; set; } = String.Empty; public DicDataTypeEnum DataTypeEnum { get; set; } public List ChildList { get; set; } = new List(); } public class AddBasicDicChild { public string Code { get; set; } = String.Empty; public string Value { get; set; } = String.Empty; public string ValueCN { get; set; } = String.Empty; public string ChildGroup { get; set; } = String.Empty; public int ShowOrder { get; set; } public string Description { get; set; } = String.Empty; public bool IsEnable { get; set; } = true; } public class DicViewModelDTO : AddOrUpdateDicDTO { } public class AddOrUpdateDicDTO { public Guid? Id { get; set; } public string KeyName { get; set; } = String.Empty; public string Value { get; set; } = String.Empty; public string Description { get; set; } = String.Empty; public string ValueCN { get; set; } = String.Empty; public int ShowOrder { get; set; } public string Type { get; set; } = String.Empty; } public class DicQueryDTO : PageInput { public string KeyName { get; set; } = String.Empty; } public class KeyNameType { public Guid KeyId { get; set; } public string KeyName { get; set; } = String.Empty; public string Type { get; set; } = String.Empty; } public class DicResultDTO { public Dictionary> DicList = new Dictionary>(); } public class TrialDictionaryView { public Guid? Id { get; set; } public string KeyName { get; set; } = String.Empty; public string Value { get; set; } = String.Empty; public int ShowOrder { get; set; } } public class TrialDicSelect { public TrialDictionaryView[] Phase { get; set; } = new TrialDictionaryView[0]; public TrialDictionaryView[] IndicationType { get; set; } = new TrialDictionaryView[0]; public TrialDictionaryView[] DeclarationType { get; set; } = new TrialDictionaryView[0]; } }