diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml index e204524fb..b0ab05744 100644 --- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml +++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml @@ -8421,6 +8421,27 @@ 详情、编辑-获取医生工作信息 Employment + + + 添加医生标准文件 + + + + + + + 删除医生标准文件 + + + + + + + 获取医生标准文件 + + + + 获取医生入组信息 正在提交的数量 已同意入组项目个数 正在读的 @@ -9955,6 +9976,46 @@ 入组 Selection 列表查询参数 + + + 文件名称 + + + + + 文件路径 + + + + + 标准类型 + + + + + 医生Id + + + + + 备注 + + + + + 文件类型 + + + + + 文件类型 + + + + + 标准类型 + + 添加用户是的返回模型 diff --git a/IRaCIS.Core.Application/Service/Doctor/DTO/DoctorModel.cs b/IRaCIS.Core.Application/Service/Doctor/DTO/DoctorModel.cs index 3297c69fd..06bff9c1a 100644 --- a/IRaCIS.Core.Application/Service/Doctor/DTO/DoctorModel.cs +++ b/IRaCIS.Core.Application/Service/Doctor/DTO/DoctorModel.cs @@ -677,6 +677,60 @@ namespace IRaCIS.Application.Contracts public string BlindPublications { get; set; } } + public class DeleteDoctorCriterionFile + { + public Guid Id { get; set; } + + } + + public class AddDoctorCriterionFileDto + { + /// + /// 文件名称 + /// + public string FileName { get; set; } + + /// + /// 文件路径 + /// + public string FilePath { get; set; } + + /// + /// 标准类型 + /// + public CriterionType CriterionType { get; set; } + + /// + /// 医生Id + /// + public Guid DoctorId { get; set; } + + /// + /// 备注 + /// + public string Remark { get; set; } + + /// + /// 文件类型 + /// + public CriterionFileType FileType { get; set; } + } + + public class GetDoctorCriterionFileInDto + { + public Guid DoctorId { get; set; } + + /// + /// 文件类型 + /// + public CriterionFileType? FileType { get; set; } + + + /// + /// 标准类型 + /// + public CriterionType? CriterionType { get; set; } + } public class ResumeConfirmDTO { diff --git a/IRaCIS.Core.Application/Service/Doctor/DoctorService.cs b/IRaCIS.Core.Application/Service/Doctor/DoctorService.cs index d7ae7450f..a50db9bd8 100644 --- a/IRaCIS.Core.Application/Service/Doctor/DoctorService.cs +++ b/IRaCIS.Core.Application/Service/Doctor/DoctorService.cs @@ -16,6 +16,7 @@ namespace IRaCIS.Application.Services private readonly IRepository _enrollRepository; private readonly IRepository _doctorDictionaryRepository; private readonly IRepository _attachmentRepository; + private readonly IRepository _doctorCriterionFileRepository; private readonly IRepository _userDoctorRepository; private readonly IRepository _trialRepository; private readonly IRepository _trialExtRepository; @@ -28,6 +29,7 @@ namespace IRaCIS.Application.Services IRepository sysMessageRepository, IRepository intoGroupRepository, IRepository doctorDictionaryRepository, IRepository attachmentRepository, + IRepository doctorCriterionFileRepository, IRepository userDoctorRepository, IRepository trialRepository, IRepository trialExtRepository, IRepository vacationRepository) @@ -37,6 +39,7 @@ namespace IRaCIS.Application.Services _enrollRepository = intoGroupRepository; _doctorDictionaryRepository = doctorDictionaryRepository; _attachmentRepository = attachmentRepository; + this._doctorCriterionFileRepository = doctorCriterionFileRepository; _userDoctorRepository = userDoctorRepository; _trialRepository = trialRepository; _trialExtRepository = trialExtRepository; @@ -467,7 +470,48 @@ namespace IRaCIS.Application.Services return ResponseOutput.Result(success); } - + /// + /// 添加医生标准文件 + /// + /// + /// + [HttpPost] + public async Task AddDoctorCriterionFile(AddDoctorCriterionFileDto inDto) + { + + var entity = await _doctorCriterionFileRepository.InsertOrUpdateAsync(inDto, true); + return ResponseOutput.Ok(entity.Id.ToString()); + + } + + /// + /// 删除医生标准文件 + /// + /// + /// + [HttpPost] + public async Task DeleteDoctorCriterionFile(DeleteDoctorCriterionFile inDto) + { + var result = await _doctorCriterionFileRepository.DeleteFromQueryAsync(inDto.Id, true); + return ResponseOutput.Ok(result.Id.ToString()); + } + + /// + /// 获取医生标准文件 + /// + /// + /// + [HttpPost] + public async Task> GetDoctorCriterionFile(GetDoctorCriterionFileInDto inDto) + { + var result = await _doctorCriterionFileRepository.Where(x => x.DoctorId == inDto.DoctorId) + .WhereIf(inDto.CriterionType != null, x => x.CriterionType == inDto.CriterionType) + .WhereIf(inDto.FileType != null, x => x.FileType == inDto.FileType) + .ToListAsync(); + return result; + } + + [HttpGet("{doctorId:guid}")] public async Task GetAuditState(Guid doctorId) { diff --git a/IRaCIS.Core.Application/Service/Doctor/_MapConfig.cs b/IRaCIS.Core.Application/Service/Doctor/_MapConfig.cs index 641ff1aef..f776e43db 100644 --- a/IRaCIS.Core.Application/Service/Doctor/_MapConfig.cs +++ b/IRaCIS.Core.Application/Service/Doctor/_MapConfig.cs @@ -33,7 +33,7 @@ namespace IRaCIS.Core.Application.Service CreateMap().EqualityComparison((odto, o) => odto.Id == o.Id); - + CreateMap(); CreateMap(); CreateMap(); diff --git a/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs b/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs index 7fae6b88e..99bc6ab4b 100644 --- a/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs +++ b/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs @@ -178,6 +178,25 @@ namespace IRaCIS.Core.Domain.Share PACS = 3, } + + /// + /// 标准文件类型 + /// + public enum CriterionFileType + { + + /// + /// 声明 + /// + Statement = 0, + + /// + /// 回执 + /// + Acknowledgement = 1 + } + + /// /// 标准类型 /// diff --git a/IRaCIS.Core.Domain/Dcotor/DoctorCriterionFile.cs b/IRaCIS.Core.Domain/Dcotor/DoctorCriterionFile.cs index 287084480..800b0ac8e 100644 --- a/IRaCIS.Core.Domain/Dcotor/DoctorCriterionFile.cs +++ b/IRaCIS.Core.Domain/Dcotor/DoctorCriterionFile.cs @@ -44,7 +44,7 @@ namespace IRaCIS.Core.Domain.Models /// /// 文件类型 /// - public int FileType { get; set; } + public CriterionFileType FileType { get; set; } /// /// CreateUserId