diff --git a/src/Shentun.ColumnReferencePlugIns/WebAppoints/WebAppointPlugInsBase.cs b/src/Shentun.ColumnReferencePlugIns/WebAppoints/WebAppointPlugInsBase.cs index e04c5e39..b2994f17 100644 --- a/src/Shentun.ColumnReferencePlugIns/WebAppoints/WebAppointPlugInsBase.cs +++ b/src/Shentun.ColumnReferencePlugIns/WebAppoints/WebAppointPlugInsBase.cs @@ -104,7 +104,7 @@ namespace Shentun.Peis.PlugIns.WebAppoints /// /// /// - public virtual async Task> GetQuestionRegisterListByIdNoAsync(IdNoInputDto input) + public virtual async Task GetQuestionRegisterListByIdNoAsync(IdNoInputDto input) { throw new NotImplementedException(); } diff --git a/src/Shentun.ColumnReferencePlugIns/WebAppoints/WebAppointWebPeisPlugIns.cs b/src/Shentun.ColumnReferencePlugIns/WebAppoints/WebAppointWebPeisPlugIns.cs index b4ff43cf..370c1827 100644 --- a/src/Shentun.ColumnReferencePlugIns/WebAppoints/WebAppointWebPeisPlugIns.cs +++ b/src/Shentun.ColumnReferencePlugIns/WebAppoints/WebAppointWebPeisPlugIns.cs @@ -236,10 +236,10 @@ namespace Shentun.Peis.PlugIns.WebAppoints /// /// /// - public override async Task> GetQuestionRegisterListByIdNoAsync(IdNoInputDto input) + public override async Task GetQuestionRegisterListByIdNoAsync(IdNoInputDto input) { var appointStatisticsReportListDto = await CallWePeisAppServiceAsync> + GetQuestionRegisterListByIdNoDto> (_webPeisGetQuestionRegisterListByIdNoUrl, input); return appointStatisticsReportListDto; } diff --git a/src/Shentun.Peis.Application.Contracts/AppointPatientRegisters/QuestionRegisterItemResultDto.cs b/src/Shentun.Peis.Application.Contracts/AppointPatientRegisters/QuestionRegisterItemResultDto.cs index 32312e19..20690233 100644 --- a/src/Shentun.Peis.Application.Contracts/AppointPatientRegisters/QuestionRegisterItemResultDto.cs +++ b/src/Shentun.Peis.Application.Contracts/AppointPatientRegisters/QuestionRegisterItemResultDto.cs @@ -4,6 +4,35 @@ using System.Text; namespace Shentun.Peis.AppointPatientRegisters { + + public class GetQuestionRegisterListByIdNoDto + { + /// + /// 问卷详情 + /// + public List QuestionDetail { get; set; } = new List(); + + /// + /// 疾病症状 + /// + public List SubjectTypeDetail { get; set; } = new List(); + + /// + /// 疾病风险 + /// + public List DiseaseRiskDetail { get; set; } = new List(); + + + /// + /// 推荐项目详情 集合 分三类 + /// + public List RecommendMedicalPackageDetail { get; set; } = new List(); + + } + + + + #region 问卷详情 public class QuestionRegisterItemResultDto { /// @@ -34,4 +63,215 @@ namespace Shentun.Peis.AppointPatientRegisters public string Answer { get; set; } public int DisplayOrder { get; set; } } + #endregion + + + + #region 疾病症状 + public class PersonSubjectTypeDto + { + /// + /// 题目类别ID + /// + public string QuestionSubjectTypeId { get; set; } + /// + /// 名称 + /// + + public string QuestionSubjectTypeName { get; set; } = null!; + /// + /// 显示顺序 + /// + public int DisplayOrder { get; set; } + /// + /// 答案集合 + /// + + public List Answers { get; set; } = new List(); + + } + + public class PersonSubjectTypeQuestionAnswer + { + /// + /// 答案 + /// + public string QuestionAnswerName { get; set; } + /// + /// 显示顺序 + /// + public int DisplayOrder { get; set; } + } + + #endregion + + + #region 疾病风险 + public class QuestionRegisterDiseaseRiskDto + { + /// + /// 主键 + /// + public Guid DiseaseRiskId { get; set; } + /// + /// 名称 + /// + + public string DiseaseRiskName { get; set; } = null!; + + /// + /// 显示顺序 + /// + + public int DisplayOrder { get; set; } + + /// + /// 风险级别ID + /// + public Guid? DiseaseRiskLevelId { get; set; } + /// + /// 风险级别名称 + /// + + public string DiseaseRiskLevelName { get; set; } + } + #endregion + + + #region 推荐项目详情 + + public class RecommendMedicalPackageDto + { + /// + /// 套餐主档编号 + /// + public Guid MedicalPackageId { get; set; } + + /// + /// 名称 + /// + public string MedicalPackageName { get; set; } = null!; + + /// + /// 价格 + /// + public decimal Price { get; set; } + + /// + /// 套餐和推荐项目总价格 + /// + public decimal SumPrice { get; set; } + + /// + /// 备注 + /// + public string? Remark { get; set; } + + /// + /// 显示顺序 + /// + public int DisplayOrder { get; set; } + + /// + /// 套餐组合项目列表 + /// + public List Asbitems { get; set; } = new List(); + + /// + /// 风险级别推荐组合项目 + /// + public List DiseaseRiskLevelAsbitems { get; set; } = new List(); + /// + /// 禁止检查组合项目列表 + /// + + public List ForbidlCheckAsbitems { get; set; } = new List(); + + + } + + public class RecommendMedicalPackageAsbitem + { + /// + /// 编号 + /// + public Guid AsbitemId { get; set; } + + /// + /// 名称 + /// + public string AsbitemName { get; set; } = null!; + + /// + /// 简称 + /// + public string? ShortName { get; set; } + + /// + /// 价格 + /// + public decimal Price { get; set; } + /// + /// 临床意义 + /// + public string? ClinicalMeaning { get; set; } + + /// + /// 警告事项 + /// + public string? Warn { get; set; } + + /// + /// 是否属于套餐 + /// + public char IsBelongMedicalPackage { get; set; } + //备孕、怀孕标志 + + public char ForPregnantFlag { get; set; } + + /// + /// 显示顺序 + /// + public int DisplayOrder { get; set; } + /// + /// 组合项目推荐级别 + /// + + public int AsbitemRecommendLevelId { get; set; } + } + + + public class PersonDiseaseRiskLevelDto + { + /// + /// 主键 + /// + public Guid DiseaseRiskId { get; set; } + /// + /// 名称 + /// + + public string DiseaseRiskName { get; set; } = null!; + + /// + /// 显示顺序 + /// + + public int DisplayOrder { get; set; } + + /// + /// 风险级别ID + /// + public Guid? DiseaseRiskLevelId { get; set; } + /// + /// 风险级别名称 + /// + + public string DiseaseRiskLevelName { get; set; } + + public int DiseaseRiskLevelDisplayOrder { get; set; } + + public List Asbitems { get; set; } = new List(); + } + #endregion } diff --git a/src/Shentun.Peis.Application/AppointPatientRegisters/AppointPatientRegisterAppService.cs b/src/Shentun.Peis.Application/AppointPatientRegisters/AppointPatientRegisterAppService.cs index 371c0a49..6150a15d 100644 --- a/src/Shentun.Peis.Application/AppointPatientRegisters/AppointPatientRegisterAppService.cs +++ b/src/Shentun.Peis.Application/AppointPatientRegisters/AppointPatientRegisterAppService.cs @@ -376,7 +376,7 @@ namespace Shentun.Peis.AppointPatientRegisters /// /// [HttpPost("api/app/QuestionRegister/GetQuestionRegisterListByPatientRegisterNo")] - public async Task> GetQuestionRegisterListByIdNoAsync(IdNoInputDto input) + public async Task GetQuestionRegisterListByIdNoAsync(IdNoInputDto input) { var thirdInterface = await _thirdInterfaceRepository.FirstOrDefaultAsync(f => f.ThirdInterfaceType == ThirdInterfaceTypeFlag.WebAppoint); if (thirdInterface.IsActive != 'Y') @@ -392,7 +392,7 @@ namespace Shentun.Peis.AppointPatientRegisters var assemblyName = config.GetSection("Interface").GetSection("AssemblyName").Value; var className = config.GetSection("Interface").GetSection("ClassName").Value; - var pluginsOut = await Utilities.ReflectionHelper.InvokeAsync>(assemblyName, + var pluginsOut = await Utilities.ReflectionHelper.InvokeAsync(assemblyName, className, [thirdInterface.Id], "GetQuestionRegisterListByIdNoAsync", objects); return pluginsOut; }