医生分配Arm
parent
b9ec7227ea
commit
1bd1779c18
|
@ -148,7 +148,14 @@ namespace IRaCIS.Core.Application.ViewModel
|
|||
|
||||
public List<Guid> SubjectIdList { get; set; }
|
||||
|
||||
public List<Guid> DoctorUserIdList { get; set; }
|
||||
public List<DoctorArm> DoctorUserIdArmList { get; set; }
|
||||
}
|
||||
|
||||
public class DoctorArm
|
||||
{
|
||||
public Guid DoctorUserId { get; set; }
|
||||
|
||||
public int ArmEnum { get; set; }
|
||||
}
|
||||
|
||||
public class CancelSubjectAssignCommand
|
||||
|
|
|
@ -104,16 +104,22 @@ namespace IRaCIS.Core.Application.Service
|
|||
[HttpPost]
|
||||
public async Task<IResponseOutput> AssignSubjectDoctor(AssginSubjectDoctorCommand assginSubjectDoctorCommand)
|
||||
{
|
||||
|
||||
var doctorUserIdList = assginSubjectDoctorCommand.DoctorUserIdArmList.Select(t => t.DoctorUserId).ToList();
|
||||
|
||||
if (assginSubjectDoctorCommand.IsReAssign)
|
||||
{
|
||||
await _subjectUserRepository.BatchDeleteNoTrackingAsync(t => assginSubjectDoctorCommand.DoctorUserIdList.Contains(t.DoctorUserId) && assginSubjectDoctorCommand.SubjectIdList.Contains(t.SubjectId));
|
||||
await _subjectUserRepository.BatchDeleteNoTrackingAsync(t => doctorUserIdList.Contains(t.DoctorUserId) && assginSubjectDoctorCommand.SubjectIdList.Contains(t.SubjectId));
|
||||
}
|
||||
|
||||
foreach (var subjectId in assginSubjectDoctorCommand.SubjectIdList)
|
||||
{
|
||||
foreach (var doctorUserId in assginSubjectDoctorCommand.DoctorUserIdList)
|
||||
foreach (var doctorUserId in doctorUserIdList)
|
||||
{
|
||||
await _subjectUserRepository.AddAsync(new SubjectUser() { TrialId = assginSubjectDoctorCommand.TrialId, SubjectId = subjectId, DoctorUserId = doctorUserId, AssignTime = DateTime.Now });
|
||||
|
||||
var armEnum = assginSubjectDoctorCommand.DoctorUserIdArmList.Where(t => t.DoctorUserId == doctorUserId).First().ArmEnum;
|
||||
|
||||
await _subjectUserRepository.AddAsync(new SubjectUser() { TrialId = assginSubjectDoctorCommand.TrialId, SubjectId = subjectId, DoctorUserId = doctorUserId, ArmEnum= armEnum, AssignTime = DateTime.Now });
|
||||
}
|
||||
//await _subjectRepository.BatchUpdateNoTrackingAsync(t => t.Id == subjectId, u => new Subject() { IsAssignDoctorUser = true });
|
||||
|
||||
|
|
|
@ -59,7 +59,9 @@ namespace IRaCIS.Core.Domain.Models
|
|||
|
||||
public User DoctorUser { get; set; }
|
||||
|
||||
public int ArmEnum { get; set; }
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue