版本修改初步完毕
parent
6e6b5bf4af
commit
27dd28ce21
|
@ -428,7 +428,7 @@ namespace IRaCIS.Core.Application.Service
|
||||||
public DateTime GetSuggessFinishTime(bool isInOrder, UrgentType urgentType )
|
public DateTime GetSuggessFinishTime(bool isInOrder, UrgentType urgentType )
|
||||||
{
|
{
|
||||||
|
|
||||||
var datetime= new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day + 7, 22, 0, 0);
|
var datetime= new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day , 22, 0, 0).AddDays(7);
|
||||||
//switch (urgentType)
|
//switch (urgentType)
|
||||||
//{
|
//{
|
||||||
// case UrgentType.NotUrget:
|
// case UrgentType.NotUrget:
|
||||||
|
|
|
@ -108,7 +108,9 @@ namespace IRaCIS.Core.Application.Contracts
|
||||||
|
|
||||||
if (userTypeSelectEnum == UserTypeSelectEnum.InnerUser)
|
if (userTypeSelectEnum == UserTypeSelectEnum.InnerUser)
|
||||||
{
|
{
|
||||||
userTypeEnums = new List<UserTypeEnum>() { UserTypeEnum.IQC, UserTypeEnum.APM, UserTypeEnum.MIM, UserTypeEnum.QA ,UserTypeEnum.MW};
|
//userTypeEnums = new List<UserTypeEnum>() { UserTypeEnum.IQC, UserTypeEnum.APM, UserTypeEnum.MIM, UserTypeEnum.QA ,UserTypeEnum.MW};
|
||||||
|
|
||||||
|
userTypeEnums = new List<UserTypeEnum>() { UserTypeEnum.IndependentReviewer, UserTypeEnum.ClinicalResearchCoordinator };
|
||||||
|
|
||||||
if (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.SuperAdmin)
|
if (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.SuperAdmin)
|
||||||
{
|
{
|
||||||
|
|
|
@ -8,6 +8,7 @@ using IRaCIS.Core.Application.Service;
|
||||||
|
|
||||||
using Microsoft.AspNetCore.Authorization;
|
using Microsoft.AspNetCore.Authorization;
|
||||||
using IRaCIS.Core.Application.Auth;
|
using IRaCIS.Core.Application.Auth;
|
||||||
|
using IRaCIS.Core.Domain.Models;
|
||||||
|
|
||||||
namespace IRaCIS.Application.Services
|
namespace IRaCIS.Application.Services
|
||||||
{
|
{
|
||||||
|
@ -157,10 +158,37 @@ namespace IRaCIS.Application.Services
|
||||||
|
|
||||||
var trialUsers = await _trialUseRepository.AddRangeAsync(addArray);
|
var trialUsers = await _trialUseRepository.AddRangeAsync(addArray);
|
||||||
|
|
||||||
|
|
||||||
|
var trialReadingCriterionId = _repository.Where<ReadingQuestionCriterionTrial>(t => t.CriterionType == CriterionType.RECIST1Pointt1 && t.TrialId == addArray.First().TrialId).Select(t => t.Id).FirstOrDefault();
|
||||||
|
|
||||||
foreach (var item in trialUsers)
|
foreach (var item in trialUsers)
|
||||||
{
|
{
|
||||||
item.JoinTime = DateTime.Now;
|
item.JoinTime = DateTime.Now;
|
||||||
|
|
||||||
|
|
||||||
|
#region 添加IR
|
||||||
|
|
||||||
|
|
||||||
|
var trialId = item.TrialId;
|
||||||
|
var userId=item.UserId;
|
||||||
|
if (await _repository.AnyAsync<User>(t => t.Id == item.UserId && t.UserTypeRole.UserTypeEnum == UserTypeEnum.IndependentReviewer))
|
||||||
|
{
|
||||||
|
|
||||||
|
var enroll = await _repository.AddAsync(new Enroll() { TrialId=trialId,DoctorUserId=userId,DoctorId= userId,EnrollStatus=EnrollStatus.ConfirmIntoGroup });
|
||||||
|
|
||||||
|
await _repository.AddAsync(new EnrollReadingCategory() { EnrollId = enroll.Id, ReadingCategory = ReadingCategory.Visit, TrialReadingCriterionId = trialReadingCriterionId });
|
||||||
|
await _repository.AddAsync(new EnrollReadingCategory() { EnrollId = enroll.Id, ReadingCategory = ReadingCategory.Global, TrialReadingCriterionId = trialReadingCriterionId });
|
||||||
|
|
||||||
|
//if (!await _repository.AnyAsync<TaskAllocationRule>(t => t.TrialId == trialId && t.DoctorUserId == userId && t.EnrollId == intoGroupItem.Id, true))
|
||||||
|
{
|
||||||
|
await _repository.AddAsync(new TaskAllocationRule() { TrialId = trialId, DoctorUserId = userId, EnrollId = enroll.Id ,IsEnable=true});
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
var success = await _repository.SaveChangesAsync();
|
var success = await _repository.SaveChangesAsync();
|
||||||
|
|
|
@ -192,10 +192,9 @@ namespace IRaCIS.Application.Services
|
||||||
trial.IsTrialBasicLogicConfirmed = true;
|
trial.IsTrialBasicLogicConfirmed = true;
|
||||||
trial.IsTrialUrgentConfirmed = true;
|
trial.IsTrialUrgentConfirmed = true;
|
||||||
|
|
||||||
|
trial.VisitPlanConfirmed = true;
|
||||||
|
|
||||||
|
trial.TrialStatusStr = StaticData.TrialState.TrialOngoing;
|
||||||
|
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
||||||
|
@ -234,9 +233,6 @@ namespace IRaCIS.Application.Services
|
||||||
x.IsReadingShowPreviousResults = true;
|
x.IsReadingShowPreviousResults = true;
|
||||||
x.DigitPlaces = 1;
|
x.DigitPlaces = 1;
|
||||||
x.IseCRFShowInDicomReading = false;
|
x.IseCRFShowInDicomReading = false;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
@ -250,11 +246,11 @@ namespace IRaCIS.Application.Services
|
||||||
await _repository.AddAsync(new TrialPaymentPrice() { TrialId = trial.Id });
|
await _repository.AddAsync(new TrialPaymentPrice() { TrialId = trial.Id });
|
||||||
|
|
||||||
//添加访视
|
//添加访视
|
||||||
await _repository.AddAsync(new VisitStage { TrialId = trial.Id, VisitNum = 0, BlindName = "B" + 0.ToString("D3"), VisitDay = 0, VisitName = "Baseline", IsBaseLine = true });
|
await _repository.AddAsync(new VisitStage { TrialId = trial.Id, VisitNum = 0, BlindName = "B" + 0.ToString("D3"), VisitDay = 0, VisitName = "Baseline", IsBaseLine = true,IsConfirmed=true,IsHaveFirstConfirmed=true ,VisitWindowLeft=-3,VisitWindowRight=28 });
|
||||||
await _repository.AddAsync(new VisitStage { TrialId = trial.Id, VisitNum = 1, BlindName = "B" + 10.ToString("D3"), VisitDay = 30, VisitName = "Visit 1" });
|
await _repository.AddAsync(new VisitStage { TrialId = trial.Id, VisitNum = 1, BlindName = "B" + 10.ToString("D3"), VisitDay = 30, VisitName = "Visit 1", IsConfirmed = true, IsHaveFirstConfirmed = true, VisitWindowLeft = -3, VisitWindowRight = 3 });
|
||||||
await _repository.AddAsync(new VisitStage { TrialId = trial.Id, VisitNum = 2, BlindName = "B" + 20.ToString("D3"), VisitDay = 60, VisitName = "Visit 2" });
|
await _repository.AddAsync(new VisitStage { TrialId = trial.Id, VisitNum = 2, BlindName = "B" + 20.ToString("D3"), VisitDay = 60, VisitName = "Visit 2", IsConfirmed = true, IsHaveFirstConfirmed = true, VisitWindowLeft = -3, VisitWindowRight = 3 });
|
||||||
await _repository.AddAsync(new VisitStage { TrialId = trial.Id, VisitNum = 3, BlindName = "B" + 30.ToString("D3"), VisitDay = 90, VisitName = "Visit 2" });
|
await _repository.AddAsync(new VisitStage { TrialId = trial.Id, VisitNum = 3, BlindName = "B" + 30.ToString("D3"), VisitDay = 90, VisitName = "Visit 3", IsConfirmed = true, IsHaveFirstConfirmed = true, VisitWindowLeft = -3, VisitWindowRight = 3 });
|
||||||
await _repository.AddAsync(new VisitStage { TrialId = trial.Id, VisitNum = 4, BlindName = "B" + 40.ToString("D3"), VisitDay = 90, VisitName = "Visit 2" });
|
await _repository.AddAsync(new VisitStage { TrialId = trial.Id, VisitNum = 4, BlindName = "B" + 40.ToString("D3"), VisitDay = 120, VisitName = "Visit 4", IsConfirmed = true, IsHaveFirstConfirmed = true, VisitWindowLeft = -3, VisitWindowRight = 3 });
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -466,135 +462,134 @@ namespace IRaCIS.Application.Services
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
var success = await _repository.BatchDeleteAsync<CheckChallengeDialog>(o => o.SubjectVisit.TrialId == trialId) ||
|
var success = await _repository.BatchDeleteAsync<CheckChallengeDialog>(o => o.SubjectVisit.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<ClinicalDataTrialSet>(o => o.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<ClinicalDataTrialSet>(o => o.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<ConsistencyCheckFile>(o => o.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<ConsistencyCheckFile>(o => o.TrialId == trialId);
|
||||||
|
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<CriterionNidus>(o => o.TrialReadingCriterion.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<CriterionNidus>(o => o.TrialReadingCriterion.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<ReadingCriterionDictionary>(o => o.TrialReadingCriterion.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<ReadingCriterionDictionary>(o => o.TrialReadingCriterion.TrialId == trialId);
|
||||||
|
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<DataInspection>(o => o.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<DataInspection>(o => o.TrialId == trialId);
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<DicomStudy>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<DicomStudy>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<StudyMonitor>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<StudyMonitor>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<DicomSeries>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<DicomSeries>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<DicomInstance>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<DicomInstance>(t => t.TrialId == trialId);
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<EnrollReadingCategory>(t => t.Enroll.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<EnrollReadingCategory>(t => t.Enroll.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<Enroll>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<Enroll>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<EnrollDetail>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<EnrollDetail>(t => t.TrialId == trialId);
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<NoneDicomStudyFile>(t => t.NoneDicomStudy.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<NoneDicomStudyFile>(t => t.NoneDicomStudy.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<NoneDicomStudy>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<NoneDicomStudy>(t => t.TrialId == trialId);
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<OrganTrialInfo>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<OrganTrialInfo>(t => t.TrialId == trialId);
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<PaymentAdjustment>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<PaymentAdjustment>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<PaymentDetail>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<PaymentDetail>(t => t.TrialId == trialId);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<PreviousHistory>(t => t.SubjectVisit.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<PreviousHistory>(t => t.SubjectVisit.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<PreviousOther>(t => t.SubjectVisit.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<PreviousOther>(t => t.SubjectVisit.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<PreviousPDF>(t => t.SubjectVisit.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<PreviousPDF>(t => t.SubjectVisit.TrialId == trialId);
|
||||||
|
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<QCChallengeDialog>(t => t.QCChallenge.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<QCChallengeDialog>(t => t.QCChallenge.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<QCChallenge>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<QCChallenge>(t => t.TrialId == trialId);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<ReadingClinicalDataPDF>(t => t.ReadingClinicalData.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<ReadingClinicalDataPDF>(t => t.ReadingClinicalData.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<ReadingClinicalData>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<ReadingClinicalData>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<ReadingGlobalTaskInfo>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<ReadingGlobalTaskInfo>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<ReadingJudgeInfo>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<ReadingJudgeInfo>(t => t.TrialId == trialId);
|
||||||
|
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<ReadingMedicalReviewDialog>(t => t.TaskMedicalReview.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<ReadingMedicalReviewDialog>(t => t.TaskMedicalReview.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<ReadingMedicineQuestionAnswer>(t => t.TaskMedicalReview.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<ReadingMedicineQuestionAnswer>(t => t.TaskMedicalReview.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<ReadingMedicineTrialQuestion>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<ReadingMedicineTrialQuestion>(t => t.TrialId == trialId);
|
||||||
|
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<ReadingOncologyTaskInfo>(t => t.VisitTask.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<ReadingOncologyTaskInfo>(t => t.VisitTask.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<ReadingPeriodPlan>(t => t.ReadingPeriodSet.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<ReadingPeriodPlan>(t => t.ReadingPeriodSet.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<ReadingPeriodSet>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<ReadingPeriodSet>(t => t.TrialId == trialId);
|
||||||
|
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<ReadingQuestionTrial>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<ReadingQuestionTrial>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<ReadingTableAnswerRowInfo>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<ReadingTableAnswerRowInfo>(t => t.TrialId == trialId);
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<ReadingTableQuestionAnswer>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<ReadingTableQuestionAnswer>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<ReadingTableQuestionTrial>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<ReadingTableQuestionTrial>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<ReadingTaskQuestionAnswer>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<ReadingTaskQuestionAnswer>(t => t.TrialId == trialId);
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<ReadingTaskRelation>(t => t.VisitTask.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<ReadingTaskRelation>(t => t.VisitTask.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<ReadModule>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<ReadModule>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<ReadingTaskQuestionAnswer>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<ReadingTaskQuestionAnswer>(t => t.TrialId == trialId);
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<SubjectCanceDoctor>(t => t.Subject.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<SubjectCanceDoctor>(t => t.Subject.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<SubjectUser>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<SubjectUser>(t => t.TrialId == trialId);
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<Subject>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<Subject>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<SubjectVisit>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<SubjectVisit>(t => t.TrialId == trialId);
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<TaskAllocationRule>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TaskAllocationRule>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<TaskConsistentRule>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TaskConsistentRule>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<TaskInfluence>(t => t.InfluenceTask.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TaskInfluence>(t => t.InfluenceTask.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<TaskMedicalReview>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TaskMedicalReview>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<TaskMedicalReviewRule>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TaskMedicalReviewRule>(t => t.TrialId == trialId);
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<TrialStateChange>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TrialStateChange>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<TrialPaymentPrice>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TrialPaymentPrice>(t => t.TrialId == trialId);
|
||||||
|
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<Trial>(o => o.Id == trialId) ||
|
await _repository.BatchDeleteAsync<Trial>(o => o.Id == trialId);
|
||||||
await _repository.BatchDeleteAsync<TrialClinicalDataSetCriterion>(t => t.TrialReadingCriterion.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TrialClinicalDataSetCriterion>(t => t.TrialReadingCriterion.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<TrialCriterionDictionaryCode>(t => t.TrialReadingCriterion.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TrialCriterionDictionaryCode>(t => t.TrialReadingCriterion.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<ReadingQuestionCriterionTrial>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<ReadingQuestionCriterionTrial>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<TrialDictionary>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TrialDictionary>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<TrialDocConfirmedUser>(t => t.TrialDocument.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TrialDocConfirmedUser>(t => t.TrialDocument.TrialId == trialId);
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<TrialDocument>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TrialDocument>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<TrialDocNeedConfirmedUserType>(t => t.TrialDocument.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TrialDocNeedConfirmedUserType>(t => t.TrialDocument.TrialId == trialId);
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<TrialEmailNoticeUser>(t => t.TrialEmailNoticeConfig.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TrialEmailNoticeUser>(t => t.TrialEmailNoticeConfig.TrialId == trialId);
|
||||||
|
|
||||||
//await _repository.BatchDeleteAsync<TrialExperience>(t => t.TrialId == trialId) ||
|
//await _repository.BatchDeleteAsync<TrialExperience>(t => t.TrialId == trialId) ||
|
||||||
await _repository.BatchDeleteAsync<TrialEmailNoticeUser>(t => t.TrialEmailNoticeConfig.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TrialEmailNoticeUser>(t => t.TrialEmailNoticeConfig.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<TrialEmailNoticeConfig>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TrialEmailNoticeConfig>(t => t.TrialId == trialId);
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<TrialExternalUser>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TrialExternalUser>(t => t.TrialId == trialId);
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<TrialPaymentPrice>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TrialPaymentPrice>(t => t.TrialId == trialId);
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<TrialQCQuestion>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TrialQCQuestion>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<TrialQCQuestionAnswer>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TrialQCQuestionAnswer>(t => t.TrialId == trialId);
|
||||||
|
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<TrialRevenuesPrice>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TrialRevenuesPrice>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<TrialRevenuesPriceVerification>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TrialRevenuesPriceVerification>(t => t.TrialId == trialId);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<TrialSign>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TrialSign>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<TrialSite>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TrialSite>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<TrialSiteSurvey>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TrialSiteSurvey>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<TrialSiteUserSurvey>(t => t.TrialSiteSurvey.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TrialSiteUserSurvey>(t => t.TrialSiteSurvey.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<TrialSiteEquipmentSurvey>(t => t.TrialSiteSurvey.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TrialSiteEquipmentSurvey>(t => t.TrialSiteSurvey.TrialId == trialId);
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<TrialUser>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TrialUser>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<TrialSiteUser>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TrialSiteUser>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<VisitStage>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<VisitStage>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<VisitPlanInfluenceStat>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<VisitPlanInfluenceStat>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<VisitPlanInfluenceStudy>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<VisitPlanInfluenceStudy>(t => t.TrialId == trialId);
|
||||||
|
|
||||||
await _repository.BatchDeleteAsync<VisitTaskReReading>(t => t.OriginalReReadingTask.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<VisitTaskReReading>(t => t.OriginalReReadingTask.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<VisitTask>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<VisitTask>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<TrialAttachment>(t => t.TrialId == trialId) ||
|
await _repository.BatchDeleteAsync<TrialStateChange>(t => t.TrialId == trialId);
|
||||||
await _repository.BatchDeleteAsync<TrialStateChange>(t => t.TrialId == trialId)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -271,9 +271,9 @@ namespace IRaCIS.Application.Contracts
|
||||||
public List<TrialCriterionReadingCategory> CriterionReadingCategoryList { get; set; }
|
public List<TrialCriterionReadingCategory> CriterionReadingCategoryList { get; set; }
|
||||||
|
|
||||||
//任务阅片状态
|
//任务阅片状态
|
||||||
public List<DoctorUserTask> ReadingTaskStateList { get; set; }
|
public List<DoctorUserTask> ReadingTaskStateList { get; set; }=new List<DoctorUserTask>();
|
||||||
|
|
||||||
public List<CriterionFile> CriterionFileList { get; set; }
|
public List<CriterionFile> CriterionFileList { get; set; }=new List<CriterionFile>();
|
||||||
|
|
||||||
|
|
||||||
public List<CriterionReadingCategory> CriterionCategoryList =>
|
public List<CriterionReadingCategory> CriterionCategoryList =>
|
||||||
|
|
|
@ -207,7 +207,8 @@ namespace IRaCIS.Application.Services
|
||||||
|
|
||||||
from intoGroup in _enrollRepository.Where(x => x.TrialId == trialId && x.EnrollStatus >= EnrollStatus.ConfirmIntoGroup)
|
from intoGroup in _enrollRepository.Where(x => x.TrialId == trialId && x.EnrollStatus >= EnrollStatus.ConfirmIntoGroup)
|
||||||
join allocateRule in _taskAllocationRuleRepository.AsQueryable() on intoGroup.Id equals allocateRule.EnrollId
|
join allocateRule in _taskAllocationRuleRepository.AsQueryable() on intoGroup.Id equals allocateRule.EnrollId
|
||||||
join doctor in _doctorRepository.AsQueryable() on intoGroup.DoctorId equals doctor.Id
|
|
||||||
|
|
||||||
join attachmentItem in _attachmentRepository.AsQueryable() on intoGroup.AttachmentId equals attachmentItem.Id into cc
|
join attachmentItem in _attachmentRepository.AsQueryable() on intoGroup.AttachmentId equals attachmentItem.Id into cc
|
||||||
from attachment in cc.DefaultIfEmpty()
|
from attachment in cc.DefaultIfEmpty()
|
||||||
|
|
||||||
|
@ -222,32 +223,7 @@ namespace IRaCIS.Application.Services
|
||||||
|
|
||||||
CriterionReadingCategoryList =intoGroup.EnrollReadingCategoryList.Select(t=>new TrialCriterionReadingCategory() { EnrollId=t.EnrollId,ReadingCategory=t.ReadingCategory, TrialReadingCriterionId = t.TrialReadingCriterionId }).ToList(),
|
CriterionReadingCategoryList =intoGroup.EnrollReadingCategoryList.Select(t=>new TrialCriterionReadingCategory() { EnrollId=t.EnrollId,ReadingCategory=t.ReadingCategory, TrialReadingCriterionId = t.TrialReadingCriterionId }).ToList(),
|
||||||
|
|
||||||
CriterionFileList = doctor.CriterionFileList.Where(x => x.IsEnable && (x.TrialId==null ||x.TrialId==trialId)).Select(x => new CriterionFile()
|
|
||||||
{
|
|
||||||
CriterionType = x.CriterionType,
|
|
||||||
DoctorId = x.DoctorId,
|
|
||||||
FileName = x.FileName,
|
|
||||||
FilePath = x.FilePath,
|
|
||||||
FileType = x.FileType,
|
|
||||||
Remark = x.Remark,
|
|
||||||
TrialReadingCriterionId=x.TrialReadingCriterionId,
|
|
||||||
Id = x.Id
|
|
||||||
}).ToList(),
|
|
||||||
|
|
||||||
ReadingTaskStateList = doctor.User.VisitTaskList.Where(x => x.TaskState == TaskState.Effect && x.TrialId == trialId).Select(x => new DoctorUserTask()
|
|
||||||
{
|
|
||||||
ReadingTaskState = x.ReadingTaskState,
|
|
||||||
TrialReadingCriterionId=x.TrialReadingCriterionId,
|
|
||||||
CriterionType = x.TrialReadingCriterion.CriterionType,
|
|
||||||
|
|
||||||
}).ToList(),
|
|
||||||
|
|
||||||
DoctorId = doctor.Id,
|
|
||||||
Code = doctor.ReviewerCode,
|
|
||||||
FirstName = doctor.FirstName,
|
|
||||||
LastName = doctor.LastName,
|
|
||||||
FullName = doctor.FullName,
|
|
||||||
ChineseName = doctor.ChineseName,
|
|
||||||
UserName= intoGroup.DoctorUser.UserName,
|
UserName= intoGroup.DoctorUser.UserName,
|
||||||
|
|
||||||
OutEnrollTime = intoGroup.OutEnrollTime,
|
OutEnrollTime = intoGroup.OutEnrollTime,
|
||||||
|
|
|
@ -1558,9 +1558,9 @@ namespace IRaCIS.Core.Infra.EFCore.Common
|
||||||
}, new
|
}, new
|
||||||
{
|
{
|
||||||
//父层级的数据 暂时没有记录稽查 所以这里必须查
|
//父层级的数据 暂时没有记录稽查 所以这里必须查
|
||||||
Name = doctor.FullName,
|
Name = doctor?.FullName,
|
||||||
ChineseName = doctor.ChineseName,
|
ChineseName = doctor?.ChineseName,
|
||||||
Email = doctor.EMail,
|
Email = doctor?.EMail,
|
||||||
IsUploadedACKSOW = entity.AttachmentId != Guid.Empty,
|
IsUploadedACKSOW = entity.AttachmentId != Guid.Empty,
|
||||||
|
|
||||||
//子层级的数据 记录到父层级 必须查询 不然找上一条时数据不准
|
//子层级的数据 记录到父层级 必须查询 不然找上一条时数据不准
|
||||||
|
|
Loading…
Reference in New Issue