diff --git a/IRaCIS.Core.API/Controllers/UploadDownLoadController.cs b/IRaCIS.Core.API/Controllers/UploadDownLoadController.cs index 7eb6090b5..8c609d936 100644 --- a/IRaCIS.Core.API/Controllers/UploadDownLoadController.cs +++ b/IRaCIS.Core.API/Controllers/UploadDownLoadController.cs @@ -395,7 +395,7 @@ namespace IRaCIS.Core.API.Controllers /// /// 上传阅片临床数据 /// - /// /// /// /// diff --git a/IRaCIS.Core.API/IRaCIS.Core.API.xml b/IRaCIS.Core.API/IRaCIS.Core.API.xml index aca9fdb86..c7c5b508d 100644 --- a/IRaCIS.Core.API/IRaCIS.Core.API.xml +++ b/IRaCIS.Core.API/IRaCIS.Core.API.xml @@ -178,7 +178,15 @@ - + + + 上传阅片临床数据 + + + + + + 上传非Dicom 文件 支持压缩包 多文件上传 diff --git a/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs b/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs index 9cd45c4ce..d555394f6 100644 --- a/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs +++ b/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs @@ -25,13 +25,14 @@ namespace IRaCIS.Core.Application.Service private readonly IRepository _trialRepository; private readonly IRepository _subjectVisitRepository; private readonly IRepository _taskAllocationRuleRepository; - private readonly IRepository _subjectRepository; private readonly IRepository _subjectUserRepository; + private readonly IRepository _readModuleRepository; + public VisitTaskService(IRepository visitTaskRepository, IRepository trialRepository, IRepository subjectVisitRepository, - IRepository subjectRepository, IRepository subjectUserRepository, IRepository taskAllocationRuleRepository + IRepository subjectRepository, IRepository subjectUserRepository, IRepository taskAllocationRuleRepository, IRepository readModuleRepository ) { _taskAllocationRuleRepository = taskAllocationRuleRepository; @@ -40,6 +41,7 @@ namespace IRaCIS.Core.Application.Service _subjectVisitRepository = subjectVisitRepository; _subjectRepository = subjectRepository; _subjectUserRepository = subjectUserRepository; + _readModuleRepository = readModuleRepository; } /// @@ -447,6 +449,10 @@ namespace IRaCIS.Core.Application.Service task.AllocateTime = DateTime.Now; task.TaskState = TaskState.Allocated; + await _subjectVisitRepository.BatchUpdateNoTrackingAsync(t => t.Id == task.SourceSubjectVisitId, u => new SubjectVisit() { ReadingStatus = ReadingStatusEnum.ImageReading }); + + await _readModuleRepository.BatchUpdateNoTrackingAsync(t => t.Id == task.SouceReadModuleId, u => new ReadModule() { ReadingStatus = ReadingStatusEnum.ImageReading }); + } else { @@ -798,8 +804,8 @@ namespace IRaCIS.Core.Application.Service doctor1Arm = 1; doctor2Arm = 2; } - else if ( (preferredDoctor1Arm == null && preferredDoctor2Arm == 1)|| - (preferredDoctor1Arm == 2 && preferredDoctor2Arm == 1)|| + else if ((preferredDoctor1Arm == null && preferredDoctor2Arm == 1) || + (preferredDoctor1Arm == 2 && preferredDoctor2Arm == 1) || (preferredDoctor1Arm == 2 && preferredDoctor2Arm == null)) { doctor1Arm = 2; @@ -810,7 +816,7 @@ namespace IRaCIS.Core.Application.Service { doctor1Arm = 1; doctor2Arm = 2; - } + } else if (preferredDoctor1Arm == 2 && preferredDoctor2Arm == 2) { doctor1Arm = 2; @@ -820,27 +826,27 @@ namespace IRaCIS.Core.Application.Service //if(!waitAllocationDoctorList.Where(t=>t.DoctorUserId== allocateDoctorList[0].DoctorUserId).SelectMany(u => u.SubjectArmList).Any(t => t.SubjectId == subject.SubjectId)) //{ - await _subjectUserRepository.AddAsync(new SubjectUser() { TrialId = trialId, SubjectId = subject.SubjectId, DoctorUserId = allocateDoctorList[0].DoctorUserId, ArmEnum = doctor1Arm, AssignTime = DateTime.Now }); - - waitAllocationDoctorList.FirstOrDefault(t => t.DoctorUserId == allocateDoctorList[0].DoctorUserId).SubjectArmList.Add(new SubjectArm() - { - SubjectId = subject.SubjectId, - ArmEnum = doctor1Arm - }); + await _subjectUserRepository.AddAsync(new SubjectUser() { TrialId = trialId, SubjectId = subject.SubjectId, DoctorUserId = allocateDoctorList[0].DoctorUserId, ArmEnum = doctor1Arm, AssignTime = DateTime.Now }); + + waitAllocationDoctorList.FirstOrDefault(t => t.DoctorUserId == allocateDoctorList[0].DoctorUserId).SubjectArmList.Add(new SubjectArm() + { + SubjectId = subject.SubjectId, + ArmEnum = doctor1Arm + }); //} //if (!waitAllocationDoctorList.Where(t => t.DoctorUserId == allocateDoctorList[1].DoctorUserId).SelectMany(u => u.SubjectArmList).Any(t => t.SubjectId == subject.SubjectId)) //{ - await _subjectUserRepository.AddAsync(new SubjectUser() { TrialId = trialId, SubjectId = subject.SubjectId, DoctorUserId = allocateDoctorList[1].DoctorUserId, ArmEnum = doctor2Arm, AssignTime = DateTime.Now }); + await _subjectUserRepository.AddAsync(new SubjectUser() { TrialId = trialId, SubjectId = subject.SubjectId, DoctorUserId = allocateDoctorList[1].DoctorUserId, ArmEnum = doctor2Arm, AssignTime = DateTime.Now }); - waitAllocationDoctorList.FirstOrDefault(t => t.DoctorUserId == allocateDoctorList[1].DoctorUserId).SubjectArmList.Add(new SubjectArm() - { - SubjectId = subject.SubjectId, - ArmEnum = doctor2Arm - }); + waitAllocationDoctorList.FirstOrDefault(t => t.DoctorUserId == allocateDoctorList[1].DoctorUserId).SubjectArmList.Add(new SubjectArm() + { + SubjectId = subject.SubjectId, + ArmEnum = doctor2Arm + }); //} - + } diff --git a/IRaCIS.Core.Domain/Reading/ClinicalDataSystemSet.cs b/IRaCIS.Core.Domain/Reading/ClinicalDataSystemSet.cs index cb5255bd4..32da2dc90 100644 --- a/IRaCIS.Core.Domain/Reading/ClinicalDataSystemSet.cs +++ b/IRaCIS.Core.Domain/Reading/ClinicalDataSystemSet.cs @@ -4,7 +4,6 @@ using System; using IRaCIS.Core.Domain.Share; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; -using IRaCIS.Core.Domain.Share; namespace IRaCIS.Core.Domain.Models { diff --git a/IRaCIS.Core.Domain/Reading/ReadingClinicalData.cs b/IRaCIS.Core.Domain/Reading/ReadingClinicalData.cs index 42d839571..3670fd259 100644 --- a/IRaCIS.Core.Domain/Reading/ReadingClinicalData.cs +++ b/IRaCIS.Core.Domain/Reading/ReadingClinicalData.cs @@ -4,7 +4,6 @@ using System; using IRaCIS.Core.Domain.Share; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; -using IRaCIS.Core.Domain.Share; using System.Collections.Generic; namespace IRaCIS.Core.Domain.Models diff --git a/IRaCIS.Core.Domain/Reading/ReadingQuestionTrial.cs b/IRaCIS.Core.Domain/Reading/ReadingQuestionTrial.cs index d65a8ae3b..b94e27df0 100644 --- a/IRaCIS.Core.Domain/Reading/ReadingQuestionTrial.cs +++ b/IRaCIS.Core.Domain/Reading/ReadingQuestionTrial.cs @@ -4,7 +4,6 @@ using System; using IRaCIS.Core.Domain.Share; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; -using IRaCIS.Core.Domain.Share; using System.Collections.Generic; namespace IRaCIS.Core.Domain.Models