Merge branch 'Test_IRC_Net8' of http://192.168.3.68:2000/XCKJ/irc-netcore-api into Test_IRC_Net8
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
commit
d00f81b09a
|
@ -29,7 +29,10 @@ namespace IRaCIS.Api.Controllers
|
|||
/// 医生基本信息 、工作信息 专业信息、审核状态
|
||||
/// </summary>
|
||||
[ApiController, ApiExplorerSettings(GroupName = "Reviewer")]
|
||||
public class ExtraController : ControllerBase
|
||||
public class ExtraController([FromServices] IAttachmentService attachmentService, [FromServices] IDoctorService _doctorService,
|
||||
[FromServices] IEducationService _educationService, [FromServices] ITrialExperienceService _trialExperienceService,
|
||||
|
||||
[FromServices] IResearchPublicationService _researchPublicationService, [FromServices] IVacationService _vacationService) : ControllerBase
|
||||
{
|
||||
|
||||
|
||||
|
@ -44,35 +47,38 @@ namespace IRaCIS.Api.Controllers
|
|||
/// <param name="_vacationService"></param>
|
||||
/// <param name="doctorId"></param>
|
||||
/// <returns></returns>
|
||||
[HttpGet, Route("doctor/getDetail/{doctorId:guid}")]
|
||||
[HttpPost, Route("doctor/getDetail")]
|
||||
|
||||
public async Task<IResponseOutput<DoctorDetailDTO>> GetDoctorDetail([FromServices] IAttachmentService attachmentService, [FromServices] IDoctorService _doctorService,
|
||||
[FromServices] IEducationService _educationService, [FromServices] ITrialExperienceService _trialExperienceService,
|
||||
|
||||
[FromServices] IResearchPublicationService _researchPublicationService, [FromServices] IVacationService _vacationService, Guid doctorId)
|
||||
public async Task<IResponseOutput<DoctorDetailDTO>> GetDoctorDetail(GetDoctorDetailInDto inDto)
|
||||
{
|
||||
var education = await _educationService.GetEducation(doctorId);
|
||||
var education = await _educationService.GetEducation(inDto.doctorId);
|
||||
|
||||
var sowList = _doctorService.GetDoctorSowList(doctorId);
|
||||
var ackSowList = _doctorService.GetDoctorAckSowList(doctorId);
|
||||
var sowList = _doctorService.GetDoctorSowList(inDto.doctorId);
|
||||
var ackSowList = _doctorService.GetDoctorAckSowList(inDto.doctorId);
|
||||
|
||||
var doctorDetail = new DoctorDetailDTO
|
||||
{
|
||||
AuditView = await _doctorService.GetAuditState(doctorId),
|
||||
BasicInfoView = await _doctorService.GetBasicInfo(doctorId),
|
||||
EmploymentView = await _doctorService.GetEmploymentInfo(doctorId),
|
||||
AttachmentList = await attachmentService.GetAttachments(doctorId),
|
||||
SummarizeInfo = await _doctorService.GetSummarizeInfo(doctorId),
|
||||
PaymentModeInfo = await _doctorService.GetPaymentMode(doctorId),
|
||||
AuditView = await _doctorService.GetAuditState(inDto.doctorId),
|
||||
BasicInfoView = await _doctorService.GetBasicInfo(inDto.doctorId),
|
||||
EmploymentView = await _doctorService.GetEmploymentInfo(inDto.doctorId),
|
||||
AttachmentList = await attachmentService.GetAttachments(inDto.doctorId),
|
||||
SummarizeInfo = await _doctorService.GetSummarizeInfo(new GetSummarizeInfoInDto() {
|
||||
DoctorId = inDto.doctorId,
|
||||
TrialId=inDto.TrialId
|
||||
}),
|
||||
PaymentModeInfo = await _doctorService.GetPaymentMode(inDto.doctorId),
|
||||
EducationList = education.EducationList,
|
||||
PostgraduateList = education.PostgraduateList,
|
||||
|
||||
TrialExperienceView = await _trialExperienceService.GetTrialExperience(doctorId),
|
||||
ResearchPublicationView = await _researchPublicationService.GetResearchPublication(doctorId),
|
||||
TrialExperienceView = await _trialExperienceService.GetTrialExperience(new TrialExperienceModelIndto() {
|
||||
DoctorId = inDto.doctorId,
|
||||
TrialId = inDto.TrialId
|
||||
}),
|
||||
ResearchPublicationView = await _researchPublicationService.GetResearchPublication(inDto.doctorId),
|
||||
|
||||
SpecialtyView = await _doctorService.GetSpecialtyInfo(doctorId),
|
||||
InHoliday = (await _vacationService.OnVacation(doctorId)).IsSuccess,
|
||||
IntoGroupInfo = _doctorService.GetDoctorIntoGroupInfo(doctorId),
|
||||
SpecialtyView = await _doctorService.GetSpecialtyInfo(inDto.doctorId),
|
||||
InHoliday = (await _vacationService.OnVacation(inDto.doctorId)).IsSuccess,
|
||||
IntoGroupInfo = _doctorService.GetDoctorIntoGroupInfo(inDto.doctorId),
|
||||
SowList = sowList,
|
||||
AckSowList = ackSowList
|
||||
};
|
||||
|
|
|
@ -16,7 +16,12 @@
|
|||
医生基本信息 、工作信息 专业信息、审核状态
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Api.Controllers.ExtraController.GetDoctorDetail(IRaCIS.Application.Interfaces.IAttachmentService,IRaCIS.Application.Interfaces.IDoctorService,IRaCIS.Application.Interfaces.IEducationService,IRaCIS.Application.Interfaces.ITrialExperienceService,IRaCIS.Application.Interfaces.IResearchPublicationService,IRaCIS.Application.Interfaces.IVacationService,System.Guid)">
|
||||
<member name="M:IRaCIS.Api.Controllers.ExtraController.#ctor(IRaCIS.Application.Interfaces.IAttachmentService,IRaCIS.Application.Interfaces.IDoctorService,IRaCIS.Application.Interfaces.IEducationService,IRaCIS.Application.Interfaces.ITrialExperienceService,IRaCIS.Application.Interfaces.IResearchPublicationService,IRaCIS.Application.Interfaces.IVacationService)">
|
||||
<summary>
|
||||
医生基本信息 、工作信息 专业信息、审核状态
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Api.Controllers.ExtraController.GetDoctorDetail(IRaCIS.Application.Contracts.GetDoctorDetailInDto)">
|
||||
<summary>
|
||||
获取医生详情
|
||||
</summary>
|
||||
|
|
|
@ -1173,7 +1173,7 @@
|
|||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.DoctorService.GetSummarizeInfo(System.Guid)">
|
||||
<member name="M:IRaCIS.Core.Application.Service.DoctorService.GetSummarizeInfo(IRaCIS.Application.Contracts.GetSummarizeInfoInDto)">
|
||||
<summary>
|
||||
获取概述
|
||||
</summary>
|
||||
|
@ -1285,11 +1285,18 @@
|
|||
<param name="param"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.TrialExperienceService.GetTrialExperience(System.Guid)">
|
||||
<member name="M:IRaCIS.Core.Application.Service.TrialExperienceService.GetTrialExperience(IRaCIS.Application.Contracts.TrialExperienceModelIndto)">
|
||||
<summary>
|
||||
根据医生Id,获取临床试验经历 界面所有数据
|
||||
根据医生Id,获取临床试验经历 界面所有数据 获取其他相关经历
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.TrialExperienceService.GetTrialDoctorInfo(IRaCIS.Application.Contracts.GetTrialDoctorInfoInDto)">
|
||||
<summary>
|
||||
获取项目编辑的医生信息
|
||||
</summary>
|
||||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.TrialExperienceService.AddOrUpdateTrialExperience(IRaCIS.Application.Contracts.TrialExperienceCommand)">
|
||||
<summary> 添加或更新医生临床经验列表项</summary>
|
||||
</member>
|
||||
|
@ -17259,11 +17266,11 @@
|
|||
<param name="Id"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Application.Interfaces.IDoctorService.GetSummarizeInfo(System.Guid)">
|
||||
<member name="M:IRaCIS.Application.Interfaces.IDoctorService.GetSummarizeInfo(IRaCIS.Application.Contracts.GetSummarizeInfoInDto)">
|
||||
<summary>
|
||||
获取概述
|
||||
</summary>
|
||||
<param name="Id"></param>
|
||||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Application.Interfaces.IDoctorService.UpdateEmploymentInfo(IRaCIS.Application.Contracts.EmploymentCommand)">
|
||||
|
@ -17302,6 +17309,13 @@
|
|||
<member name="M:IRaCIS.Application.Interfaces.IDoctorService.GetDoctorAckSowList(System.Guid)">
|
||||
<summary> 获取医生入组的 ack Sow </summary>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Application.Interfaces.ITrialExperienceService.GetTrialDoctorInfo(IRaCIS.Application.Contracts.GetTrialDoctorInfoInDto)">
|
||||
<summary>
|
||||
获取项目医生编辑的信息
|
||||
</summary>
|
||||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Application.Interfaces.IVacationService.OnVacation(System.Guid)">
|
||||
<summary> 判断当前时间是否在休假 </summary>
|
||||
</member>
|
||||
|
|
|
@ -237,6 +237,12 @@ namespace IRaCIS.Application.Contracts
|
|||
|
||||
#endregion
|
||||
|
||||
public class GetDoctorDetailInDto
|
||||
{
|
||||
public Guid doctorId { get; set; }
|
||||
|
||||
public Guid? TrialId { get; set; }
|
||||
}
|
||||
public class DoctorDetailDTO
|
||||
{
|
||||
public DoctorBasicInfoDTO BasicInfoView { get; set; }
|
||||
|
@ -355,10 +361,19 @@ namespace IRaCIS.Application.Contracts
|
|||
|
||||
}
|
||||
|
||||
public class GetSummarizeInfoInDto
|
||||
{
|
||||
public Guid DoctorId { get; set; }
|
||||
|
||||
public Guid? TrialId { get; set; }
|
||||
}
|
||||
|
||||
public class UpdateGneralSituationDto
|
||||
{
|
||||
public Guid Id { get; set; }
|
||||
|
||||
public Guid? TrialId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 概述
|
||||
/// </summary>
|
||||
|
|
|
@ -1,5 +1,19 @@
|
|||
namespace IRaCIS.Application.Contracts
|
||||
{
|
||||
public class GetTrialDoctorInfoInDto
|
||||
{
|
||||
public Guid DoctorId { get; set; }
|
||||
|
||||
public Guid TrialId { get; set; }
|
||||
}
|
||||
|
||||
public class ResearchPublicationInDTO
|
||||
{
|
||||
public Guid DoctorId { get; set; }
|
||||
|
||||
public Guid? TrialId { get; set; }
|
||||
|
||||
}
|
||||
public class ResearchPublicationDTO
|
||||
{
|
||||
public Guid? Id { get; set; }
|
||||
|
|
|
@ -49,6 +49,12 @@
|
|||
// public string EvaluationCriteria { get; set; }
|
||||
//}
|
||||
|
||||
public class TrialExperienceModelIndto
|
||||
{
|
||||
public Guid DoctorId { get; set; }
|
||||
|
||||
public Guid? TrialId { get; set; }
|
||||
}
|
||||
|
||||
public class TrialExperienceModel : GcpAndOtherExperienceDTO
|
||||
{
|
||||
|
@ -111,6 +117,8 @@
|
|||
{
|
||||
public Guid DoctorId { get; set; }
|
||||
|
||||
public Guid? TrialId { get; set; }
|
||||
|
||||
public string OtherClinicalExperience { get; set; } = String.Empty;
|
||||
public string OtherClinicalExperienceCN { get; set; } = String.Empty;
|
||||
}
|
||||
|
|
|
@ -20,6 +20,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
IRepository<Trial> _trialRepository,
|
||||
IRepository<Vacation> _vacationRepository,
|
||||
IOptionsMonitor<SystemEmailSendConfig> systemEmailConfig,
|
||||
ITrialExperienceService trialExperienceService,
|
||||
IRepository<TrialPaymentPrice> _trialExtRepository, IMapper _mapper, IUserInfo _userInfo, IStringLocalizer _localizer) : BaseService, IDoctorService
|
||||
{
|
||||
|
||||
|
@ -219,12 +220,25 @@ namespace IRaCIS.Core.Application.Service
|
|||
[HttpPost]
|
||||
public async Task<bool> UpdateGneralSituation(UpdateGneralSituationDto inDto)
|
||||
{
|
||||
|
||||
await _doctorRepository.UpdatePartialFromQueryAsync(x => x.Id == inDto.Id, x => new Doctor()
|
||||
if (inDto.TrialId != null)
|
||||
{
|
||||
Summarize = inDto.Summarize,
|
||||
SummarizeEn = inDto.SummarizeEn,
|
||||
});
|
||||
await _doctorRepository.UpdatePartialFromQueryAsync(x => x.DoctorId == inDto.Id&&x.TrialId==inDto.TrialId.Value, x => new Doctor()
|
||||
{
|
||||
Summarize = inDto.Summarize,
|
||||
SummarizeEn = inDto.SummarizeEn,
|
||||
});
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
await _doctorRepository.UpdatePartialFromQueryAsync(x => x.Id == inDto.Id, x => new Doctor()
|
||||
{
|
||||
Summarize = inDto.Summarize,
|
||||
SummarizeEn = inDto.SummarizeEn,
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
var success= await _doctorRepository.SaveChangesAsync();
|
||||
return success;
|
||||
}
|
||||
|
@ -235,10 +249,26 @@ namespace IRaCIS.Core.Application.Service
|
|||
/// </summary>
|
||||
/// <param name="Id"></param>
|
||||
/// <returns></returns>
|
||||
public async Task<UpdateGneralSituationDto?> GetSummarizeInfo(Guid Id)
|
||||
public async Task<UpdateGneralSituationDto?> GetSummarizeInfo(GetSummarizeInfoInDto inDto)
|
||||
{
|
||||
var doctorBasicInfo = (await _doctorRepository.Where(t => t.Id == Id)
|
||||
.ProjectTo<UpdateGneralSituationDto>(_mapper.ConfigurationProvider).FirstOrDefaultAsync()).IfNullThrowException();
|
||||
var doctorBasicInfo = (await _doctorRepository.Where(t => t.Id == inDto.DoctorId)
|
||||
.ProjectTo<UpdateGneralSituationDto>(_mapper.ConfigurationProvider).FirstOrDefaultAsync()).IfNullThrowException();
|
||||
if (inDto.TrialId != null)
|
||||
{
|
||||
var doctorInfo = await trialExperienceService.GetTrialDoctorInfo(new GetTrialDoctorInfoInDto()
|
||||
{
|
||||
TrialId = inDto.TrialId.Value,
|
||||
DoctorId = inDto.DoctorId,
|
||||
});
|
||||
|
||||
doctorBasicInfo = new UpdateGneralSituationDto()
|
||||
{
|
||||
Summarize = doctorInfo.Summarize,
|
||||
SummarizeEn = doctorInfo.SummarizeEn,
|
||||
|
||||
};
|
||||
}
|
||||
|
||||
return doctorBasicInfo;
|
||||
}
|
||||
|
||||
|
|
|
@ -42,9 +42,9 @@ namespace IRaCIS.Application.Interfaces
|
|||
/// <summary>
|
||||
/// 获取概述
|
||||
/// </summary>
|
||||
/// <param name="Id"></param>
|
||||
/// <param name="inDto"></param>
|
||||
/// <returns></returns>
|
||||
Task<UpdateGneralSituationDto?> GetSummarizeInfo(Guid Id);
|
||||
Task<UpdateGneralSituationDto?> GetSummarizeInfo(GetSummarizeInfoInDto inDto);
|
||||
|
||||
/// <summary>
|
||||
/// 更新医生 工作信息
|
||||
|
|
|
@ -4,7 +4,16 @@ namespace IRaCIS.Application.Interfaces
|
|||
{
|
||||
public interface ITrialExperienceService
|
||||
{
|
||||
Task<TrialExperienceModel> GetTrialExperience(Guid doctorId);
|
||||
|
||||
/// <summary>
|
||||
/// 获取项目医生编辑的信息
|
||||
/// </summary>
|
||||
/// <param name="inDto"></param>
|
||||
/// <returns></returns>
|
||||
Task<Doctor> GetTrialDoctorInfo(GetTrialDoctorInfoInDto inDto);
|
||||
|
||||
|
||||
Task<TrialExperienceModel> GetTrialExperience(TrialExperienceModelIndto indto);
|
||||
Task<IResponseOutput> AddOrUpdateTrialExperience(TrialExperienceCommand model);
|
||||
Task<IResponseOutput> DeleteTrialExperience(Guid id);
|
||||
Task<IResponseOutput> UpdateGcpExperience(GCPExperienceCommand model);
|
||||
|
|
|
@ -14,26 +14,36 @@ namespace IRaCIS.Core.Application.Service
|
|||
|
||||
|
||||
/// <summary>
|
||||
/// 根据医生Id,获取临床试验经历 界面所有数据
|
||||
/// 根据医生Id,获取临床试验经历 界面所有数据 获取其他相关经历
|
||||
/// </summary>
|
||||
[HttpGet("{doctorId:guid}")]
|
||||
public async Task<TrialExperienceModel> GetTrialExperience(Guid doctorId)
|
||||
[HttpPost]
|
||||
public async Task<TrialExperienceModel> GetTrialExperience(TrialExperienceModelIndto indto)
|
||||
{
|
||||
var trialExperience = new TrialExperienceModel();
|
||||
|
||||
var doctor = await _doctorRepository.Where(o => o.Id == doctorId)
|
||||
var doctor = await _doctorRepository.Where(o => o.Id == indto.DoctorId)
|
||||
.ProjectTo<TrialExperienceModel>(_mapper.ConfigurationProvider).FirstOrDefaultAsync();
|
||||
|
||||
trialExperience.ClinicalTrialExperienceList = await GetTrialExperienceList(doctorId);
|
||||
trialExperience.ClinicalTrialExperienceList = await GetTrialExperienceList(indto.DoctorId);
|
||||
|
||||
if (doctor != null)
|
||||
{
|
||||
var trialDoctor = new Doctor();
|
||||
if (indto.TrialId != null)
|
||||
{
|
||||
trialDoctor = await GetTrialDoctorInfo(new GetTrialDoctorInfoInDto()
|
||||
{
|
||||
DoctorId = indto.DoctorId,
|
||||
TrialId = indto.TrialId.Value,
|
||||
});
|
||||
}
|
||||
|
||||
trialExperience.GCP = doctor.GCP;
|
||||
trialExperience.Id = doctor.Id;
|
||||
trialExperience.GCPTime = doctor.GCPTime;
|
||||
trialExperience.GCPAgencies = doctor.GCPAgencies;
|
||||
trialExperience.OtherClinicalExperience = doctor.OtherClinicalExperience ?? "";
|
||||
trialExperience.OtherClinicalExperienceCN = doctor.OtherClinicalExperienceCN ?? "";
|
||||
trialExperience.OtherClinicalExperience =(indto.TrialId != null? trialDoctor.OtherClinicalExperience: doctor.OtherClinicalExperience) ?? "";
|
||||
trialExperience.OtherClinicalExperienceCN = (indto.TrialId != null ? trialDoctor.OtherClinicalExperienceCN : doctor.OtherClinicalExperienceCN) ?? "";
|
||||
var attachment = await _attachmentRepository.FirstOrDefaultAsync(t => t.Id == doctor.GCPId);
|
||||
if (attachment != null)
|
||||
{
|
||||
|
@ -51,6 +61,35 @@ namespace IRaCIS.Core.Application.Service
|
|||
return trialExperience;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取项目编辑的医生信息
|
||||
/// </summary>
|
||||
/// <param name="inDto"></param>
|
||||
/// <returns></returns>
|
||||
public async Task<Doctor> GetTrialDoctorInfo(GetTrialDoctorInfoInDto inDto)
|
||||
{
|
||||
var doctorInfo = await _doctorRepository.Where(x => x.DoctorId == inDto.DoctorId && x.TrialId == inDto.TrialId).FirstOrDefaultAsync();
|
||||
if (doctorInfo == null)
|
||||
{
|
||||
|
||||
var systemInfoDcotor = await _doctorRepository.Where(x => x.Id == inDto.DoctorId).FirstNotNullAsync();
|
||||
|
||||
Doctor doctor = new Doctor()
|
||||
{
|
||||
DoctorId = inDto.DoctorId,
|
||||
TrialId = inDto.TrialId,
|
||||
OtherClinicalExperience = systemInfoDcotor.OtherClinicalExperience,
|
||||
OtherClinicalExperienceCN = systemInfoDcotor.OtherClinicalExperienceCN,
|
||||
Summarize = systemInfoDcotor.Summarize,
|
||||
SummarizeEn = systemInfoDcotor.SummarizeEn,
|
||||
};
|
||||
|
||||
doctorInfo = await _doctorRepository.AddAsync(doctor, true);
|
||||
}
|
||||
|
||||
return doctorInfo;
|
||||
}
|
||||
|
||||
private async Task<List<TrialExperienceListDTO>> GetTrialExperienceList(Guid doctorId)
|
||||
{
|
||||
var doctorClinicalTrialExperienceList = await _trialExperienceRepository.Where(o => o.DoctorId == doctorId).OrderBy(t => t.CreateTime)
|
||||
|
@ -155,15 +194,30 @@ namespace IRaCIS.Core.Application.Service
|
|||
/// </summary>
|
||||
|
||||
[HttpPost]
|
||||
public async Task<IResponseOutput> UpdateOtherExperience(ClinicalExperienceCommand updateOtherClinicalExperience)
|
||||
public async Task<IResponseOutput> UpdateOtherExperience(ClinicalExperienceCommand inDto)
|
||||
{
|
||||
var success = await _doctorRepository.BatchUpdateNoTrackingAsync(o => o.Id == updateOtherClinicalExperience.DoctorId, u => new Doctor()
|
||||
{
|
||||
OtherClinicalExperience = updateOtherClinicalExperience.OtherClinicalExperience ?? string.Empty,
|
||||
OtherClinicalExperienceCN = updateOtherClinicalExperience.OtherClinicalExperienceCN ?? string.Empty
|
||||
});
|
||||
|
||||
return ResponseOutput.Result(success);
|
||||
if (inDto.TrialId != null)
|
||||
{
|
||||
var success = await _doctorRepository.BatchUpdateNoTrackingAsync(o => o.Id == inDto.DoctorId&&o.TrialId==inDto.TrialId.Value, u => new Doctor()
|
||||
{
|
||||
OtherClinicalExperience = inDto.OtherClinicalExperience ?? string.Empty,
|
||||
OtherClinicalExperienceCN = inDto.OtherClinicalExperienceCN ?? string.Empty
|
||||
});
|
||||
|
||||
return ResponseOutput.Result(success);
|
||||
}
|
||||
else
|
||||
{
|
||||
var success = await _doctorRepository.BatchUpdateNoTrackingAsync(o => o.Id == inDto.DoctorId, u => new Doctor()
|
||||
{
|
||||
OtherClinicalExperience = inDto.OtherClinicalExperience ?? string.Empty,
|
||||
OtherClinicalExperienceCN = inDto.OtherClinicalExperienceCN ?? string.Empty
|
||||
});
|
||||
|
||||
return ResponseOutput.Result(success);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -231,4 +231,14 @@ public class Doctor : BaseFullAuditEntity
|
|||
|
||||
[NotMapped]
|
||||
public string FullName => LastName + " / " + FirstName;
|
||||
|
||||
/// <summary>
|
||||
/// 医生Id
|
||||
/// </summary>
|
||||
public Guid? DoctorId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 项目Id
|
||||
/// </summary>
|
||||
public Guid? TrialId { get; set; }
|
||||
}
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
using IRaCIS.Core.Domain.Share;
|
||||
|
||||
namespace IRaCIS.Core.Domain.Models;
|
||||
|
||||
[Comment("医生 - 项目临床经历")]
|
||||
|
@ -31,4 +33,43 @@ public partial class TrialExperience : BaseFullAuditEntity
|
|||
/// 其他标准
|
||||
/// </summary>
|
||||
public string OtherCriterion { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 适应症的枚举
|
||||
/// </summary>
|
||||
public int IndicationEnum { get; set; } = -1;
|
||||
|
||||
/// <summary>
|
||||
/// 数据类型
|
||||
/// </summary>
|
||||
public ExperienceDataType ExperienceDataType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 项目Id
|
||||
/// </summary>
|
||||
public Guid? TrialId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 阅片标准
|
||||
/// </summary>
|
||||
public CriterionType? CriterionType { get; set; }
|
||||
}
|
||||
|
||||
|
||||
public enum ExperienceDataType
|
||||
{
|
||||
/// <summary>
|
||||
/// 系统
|
||||
/// </summary>
|
||||
System = 0,
|
||||
|
||||
/// <summary>
|
||||
/// 项目
|
||||
/// </summary>
|
||||
Trial=1,
|
||||
|
||||
/// <summary>
|
||||
/// 自动添加
|
||||
/// </summary>
|
||||
Auto = 2,
|
||||
}
|
18011
IRaCIS.Core.Infra.EFCore/Migrations/20241029055808_doctorinfo10291357.Designer.cs
generated
Normal file
18011
IRaCIS.Core.Infra.EFCore/Migrations/20241029055808_doctorinfo10291357.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,85 @@
|
|||
using System;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace IRaCIS.Core.Infra.EFCore.Migrations
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class doctorinfo10291357 : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.AddColumn<int>(
|
||||
name: "CriterionType",
|
||||
table: "TrialExperience",
|
||||
type: "int",
|
||||
nullable: true);
|
||||
|
||||
migrationBuilder.AddColumn<int>(
|
||||
name: "ExperienceDataType",
|
||||
table: "TrialExperience",
|
||||
type: "int",
|
||||
nullable: false,
|
||||
defaultValue: 0);
|
||||
|
||||
migrationBuilder.AddColumn<int>(
|
||||
name: "IndicationEnum",
|
||||
table: "TrialExperience",
|
||||
type: "int",
|
||||
nullable: false,
|
||||
defaultValue: 0);
|
||||
|
||||
migrationBuilder.AddColumn<Guid>(
|
||||
name: "TrialId",
|
||||
table: "TrialExperience",
|
||||
type: "uniqueidentifier",
|
||||
nullable: true);
|
||||
|
||||
|
||||
|
||||
migrationBuilder.AddColumn<Guid>(
|
||||
name: "DoctorId",
|
||||
table: "Doctor",
|
||||
type: "uniqueidentifier",
|
||||
nullable: true);
|
||||
|
||||
migrationBuilder.AddColumn<Guid>(
|
||||
name: "TrialId",
|
||||
table: "Doctor",
|
||||
type: "uniqueidentifier",
|
||||
nullable: true);
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropColumn(
|
||||
name: "CriterionType",
|
||||
table: "TrialExperience");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "ExperienceDataType",
|
||||
table: "TrialExperience");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "IndicationEnum",
|
||||
table: "TrialExperience");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "TrialId",
|
||||
table: "TrialExperience");
|
||||
|
||||
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "DoctorId",
|
||||
table: "Doctor");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "TrialId",
|
||||
table: "Doctor");
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1381,6 +1381,9 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
|
|||
.HasMaxLength(400)
|
||||
.HasColumnType("nvarchar(400)");
|
||||
|
||||
b.Property<Guid?>("DoctorId")
|
||||
.HasColumnType("uniqueidentifier");
|
||||
|
||||
b.Property<string>("EMail")
|
||||
.IsRequired()
|
||||
.HasMaxLength(400)
|
||||
|
@ -1571,6 +1574,9 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
|
|||
.HasMaxLength(400)
|
||||
.HasColumnType("nvarchar(400)");
|
||||
|
||||
b.Property<Guid?>("TrialId")
|
||||
.HasColumnType("uniqueidentifier");
|
||||
|
||||
b.Property<DateTime>("UpdateTime")
|
||||
.HasColumnType("datetime2");
|
||||
|
||||
|
@ -9094,6 +9100,9 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
|
|||
b.Property<DateTime?>("DeletedTime")
|
||||
.HasColumnType("datetime2");
|
||||
|
||||
b.Property<int>("DocUserSignType")
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<Guid>("FileTypeId")
|
||||
.HasColumnType("uniqueidentifier");
|
||||
|
||||
|
@ -11263,6 +11272,9 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
|
|||
b.Property<Guid>("CreateUserId")
|
||||
.HasColumnType("uniqueidentifier");
|
||||
|
||||
b.Property<int?>("CriterionType")
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<Guid>("DoctorId")
|
||||
.HasColumnType("uniqueidentifier");
|
||||
|
||||
|
@ -11274,6 +11286,12 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
|
|||
.HasMaxLength(400)
|
||||
.HasColumnType("nvarchar(400)");
|
||||
|
||||
b.Property<int>("ExperienceDataType")
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<int>("IndicationEnum")
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<string>("OtherCriterion")
|
||||
.IsRequired()
|
||||
.HasMaxLength(400)
|
||||
|
@ -11290,6 +11308,9 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
|
|||
b.Property<DateTime?>("StartTime")
|
||||
.HasColumnType("datetime2");
|
||||
|
||||
b.Property<Guid?>("TrialId")
|
||||
.HasColumnType("uniqueidentifier");
|
||||
|
||||
b.Property<DateTime>("UpdateTime")
|
||||
.HasColumnType("datetime2");
|
||||
|
||||
|
|
Loading…
Reference in New Issue