一致性核查通过修复bug
parent
1e990815b0
commit
3093d57960
|
@ -109,7 +109,7 @@
|
||||||
<param name="inQuery"></param>
|
<param name="inQuery"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:IRaCIS.Core.Application.Service.TaskMedicalReviewService.GetGenerateMedicalReviewTaskList(IRaCIS.Core.Application.ViewModel.TaskMedicalReviewQuery)">
|
<member name="M:IRaCIS.Core.Application.Service.TaskMedicalReviewService.GetGenerateMedicalReviewTaskList(IRaCIS.Core.Application.ViewModel.GenerateMedicalReviewTaskQuery)">
|
||||||
<summary>
|
<summary>
|
||||||
产生医学审核列表
|
产生医学审核列表
|
||||||
</summary>
|
</summary>
|
||||||
|
@ -1543,6 +1543,11 @@
|
||||||
是否关闭对话
|
是否关闭对话
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetIRMedicalFeedbackListOutDto.IsHaveQuestion">
|
||||||
|
<summary>
|
||||||
|
是否有问题
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetMedicalReviewDialogOutDto.Content">
|
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetMedicalReviewDialogOutDto.Content">
|
||||||
<summary>
|
<summary>
|
||||||
对话内容
|
对话内容
|
||||||
|
|
|
@ -152,7 +152,7 @@ namespace IRaCIS.Core.Application.ViewModel
|
||||||
|
|
||||||
//public ReReadingApplyGenerateTaskCommand ReReadingApplyGenerateTaskCommand { get; set; } = new ReReadingApplyGenerateTaskCommand();
|
//public ReReadingApplyGenerateTaskCommand ReReadingApplyGenerateTaskCommand { get; set; } = new ReReadingApplyGenerateTaskCommand();
|
||||||
|
|
||||||
public List<VisitTaskSimpleView> GenerataConsistentTaskList { get; set; }
|
public List<VisitTaskSimpleDTO> GenerataConsistentTaskList { get; set; }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -51,6 +51,56 @@ namespace IRaCIS.Core.Application.ViewModel
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public class DoctorSelfConsistentSubjectView
|
||||||
|
{
|
||||||
|
public Guid TrialId { get; set; }
|
||||||
|
public Guid SiteId { get; set; }
|
||||||
|
|
||||||
|
public String TrialSiteCode { get; set; }
|
||||||
|
public string SubjectCode { get; set; }
|
||||||
|
|
||||||
|
public Guid SubjectId { get; set; }
|
||||||
|
|
||||||
|
public bool IsHaveGeneratedTask { get; set; }
|
||||||
|
|
||||||
|
|
||||||
|
public int? ValidVisitCount { get; set; }
|
||||||
|
|
||||||
|
public List<VisitTaskSimpleDTO> VisitTaskList { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public class VisitTaskSimpleDTO
|
||||||
|
{
|
||||||
|
public Guid Id { get; set; }
|
||||||
|
public Guid TrialId { get; set; }
|
||||||
|
|
||||||
|
public Guid SubjectId { get; set; }
|
||||||
|
|
||||||
|
public Arm ArmEnum { get; set; }
|
||||||
|
public string TaskCode { get; set; }
|
||||||
|
|
||||||
|
public string TaskName { get; set; }
|
||||||
|
public string TaskBlindName { get; set; }
|
||||||
|
|
||||||
|
public decimal VisitTaskNum { get; set; }
|
||||||
|
|
||||||
|
public ReadingCategory ReadingCategory { get; set; }
|
||||||
|
|
||||||
|
//任务阅片状态
|
||||||
|
public ReadingTaskState ReadingTaskState { get; set; }
|
||||||
|
|
||||||
|
public TaskState TaskState { get; set; }
|
||||||
|
|
||||||
|
[JsonIgnore]
|
||||||
|
public Guid? DoctorUserId { get; set; }
|
||||||
|
[JsonIgnore]
|
||||||
|
public Guid? TaskConsistentRuleId { get; set; }
|
||||||
|
|
||||||
|
public bool IsHaveGeneratedTask { get; set; }
|
||||||
|
|
||||||
|
public List<VisitTaskSimpleDTO> GlobalVisitTaskList { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public class DoctorConsistentRuleSubjectView
|
public class DoctorConsistentRuleSubjectView
|
||||||
{
|
{
|
||||||
|
|
|
@ -12,6 +12,7 @@ using IRaCIS.Core.Infrastructure;
|
||||||
using IRaCIS.Core.Domain.Share;
|
using IRaCIS.Core.Domain.Share;
|
||||||
using System.Linq.Expressions;
|
using System.Linq.Expressions;
|
||||||
using IRaCIS.Core.Infra.EFCore.Common;
|
using IRaCIS.Core.Infra.EFCore.Common;
|
||||||
|
using System.Linq;
|
||||||
|
|
||||||
namespace IRaCIS.Core.Application.Service
|
namespace IRaCIS.Core.Application.Service
|
||||||
{
|
{
|
||||||
|
@ -74,25 +75,30 @@ namespace IRaCIS.Core.Application.Service
|
||||||
/// <param name="inQuery"></param>
|
/// <param name="inQuery"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
public async Task<PageOutput<DoctorConsistentRuleSubjectView>> GetDoctorSelfConsistentRuleSubjectList(ConsistentQuery inQuery)
|
public async Task<PageOutput<DoctorSelfConsistentSubjectView>> GetDoctorSelfConsistentRuleSubjectList(ConsistentQuery inQuery)
|
||||||
{
|
{
|
||||||
var filterObj = await _taskConsistentRuleRepository.FirstOrDefaultAsync(t => t.Id == inQuery.TaskConsistentRuleId);
|
var filterObj = await _taskConsistentRuleRepository.FirstOrDefaultAsync(t => t.Id == inQuery.TaskConsistentRuleId);
|
||||||
|
|
||||||
var (group, query) = GetIQueryableDoctorSelfConsistentRuleSubjectView(filterObj);
|
var pagedList = await GetIQueryableDoctorSelfConsistentSubjectView(filterObj).ToPagedListAsync(inQuery.PageIndex, inQuery.PageSize, string.IsNullOrWhiteSpace(inQuery.SortField) ? nameof(DoctorSelfConsistentSubjectView.SubjectCode) : inQuery.SortField, inQuery.Asc);
|
||||||
|
|
||||||
var count = group.Count();
|
|
||||||
|
|
||||||
query = query.OrderByDescending(t => t.IsHaveGeneratedTask).Skip((inQuery.PageIndex - 1) * inQuery.PageSize);
|
|
||||||
|
|
||||||
var items = await query.Take(inQuery.PageSize).ToArrayAsync().ConfigureAwait(false);
|
|
||||||
|
|
||||||
var pagedList = new PageOutput<DoctorConsistentRuleSubjectView>()
|
//var (group, query) = GetIQueryableDoctorSelfConsistentRuleSubjectView(filterObj);
|
||||||
{
|
|
||||||
PageIndex = inQuery.PageIndex,
|
//var count = group.Count();
|
||||||
PageSize = inQuery.PageSize,
|
|
||||||
TotalCount = count,
|
//query = query.OrderByDescending(t => t.IsHaveGeneratedTask).Skip((inQuery.PageIndex - 1) * inQuery.PageSize);
|
||||||
CurrentPageData = items
|
|
||||||
};
|
//var items = await query.Take(inQuery.PageSize).ToArrayAsync().ConfigureAwait(false);
|
||||||
|
|
||||||
|
//var pagedList = new PageOutput<DoctorConsistentRuleSubjectView>()
|
||||||
|
//{
|
||||||
|
// PageIndex = inQuery.PageIndex,
|
||||||
|
// PageSize = inQuery.PageSize,
|
||||||
|
// TotalCount = count,
|
||||||
|
// CurrentPageData = items
|
||||||
|
//};
|
||||||
|
|
||||||
|
|
||||||
return pagedList;
|
return pagedList;
|
||||||
|
@ -109,9 +115,11 @@ namespace IRaCIS.Core.Application.Service
|
||||||
var filterObj = await _taskConsistentRuleRepository.FirstOrDefaultAsync(t => t.Id == inCommand.TaskConsistentRuleId);
|
var filterObj = await _taskConsistentRuleRepository.FirstOrDefaultAsync(t => t.Id == inCommand.TaskConsistentRuleId);
|
||||||
|
|
||||||
|
|
||||||
var (group, query) = GetIQueryableDoctorSelfConsistentRuleSubjectView(filterObj, inCommand.SubejctIdList);
|
var list = await GetIQueryableDoctorSelfConsistentSubjectView(filterObj, inCommand.SubejctIdList).ToListAsync();
|
||||||
|
|
||||||
var list = query.OrderByDescending(t => t.IsHaveGeneratedTask).ToList();
|
//var (group, query) = GetIQueryableDoctorSelfConsistentRuleSubjectView(filterObj, inCommand.SubejctIdList);
|
||||||
|
|
||||||
|
//var list = query.OrderByDescending(t => t.IsHaveGeneratedTask).ToList();
|
||||||
|
|
||||||
foreach (var subject in list)
|
foreach (var subject in list)
|
||||||
{
|
{
|
||||||
|
@ -136,26 +144,96 @@ namespace IRaCIS.Core.Application.Service
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private IQueryable<DoctorSelfConsistentSubjectView> GetIQueryableDoctorSelfConsistentSubjectView(TaskConsistentRule filterObj, List<Guid>? subejctIdList = null)
|
||||||
|
{
|
||||||
|
var doctorUserId = filterObj.AnalysisDoctorUserId;
|
||||||
|
var trialId = filterObj.TrialId;
|
||||||
|
|
||||||
|
#region Subejct 维度
|
||||||
|
|
||||||
|
Expression<Func<VisitTask, bool>> visitTaskFilter = t => t.IsAnalysisCreate == false && t.ReadingCategory == ReadingCategory.Visit && t.DoctorUserId == doctorUserId &&
|
||||||
|
t.ReadingTaskState == ReadingTaskState.HaveSigned && t.TaskState == TaskState.Effect &&
|
||||||
|
t.SignTime!.Value.AddDays(filterObj.IntervalWeeks * 7) < DateTime.Now &&
|
||||||
|
(t.ReReadingApplyState == ReReadingApplyState.Default || t.ReReadingApplyState == ReReadingApplyState.Reject);
|
||||||
|
|
||||||
|
|
||||||
|
if (subejctIdList != null && subejctIdList?.Count > 0)
|
||||||
|
{
|
||||||
|
visitTaskFilter.And( t => subejctIdList.Contains(t.SubjectId));
|
||||||
|
}
|
||||||
|
|
||||||
|
//所选访视数量 的访视 其中必有一个访视后有全局任务
|
||||||
|
if (filterObj.IsHaveReadingPeriod == true)
|
||||||
|
{
|
||||||
|
visitTaskFilter = visitTaskFilter.And(t => t.Subject.SubjectVisitTaskList.Any(u => u.VisitTaskNum == t.VisitTaskNum + ReadingCommon.TaskNumDic[ReadingCategory.Global]
|
||||||
|
&& t.TaskState == TaskState.Effect && t.ReadingTaskState == ReadingTaskState.HaveSigned && t.SignTime!.Value.AddDays(filterObj.IntervalWeeks * 7) < DateTime.Now));
|
||||||
|
}
|
||||||
|
|
||||||
|
//var globalWithVisitFilter = visitTaskFilter.And(t => t.VisitTaskNum <=)
|
||||||
|
|
||||||
|
var subjectQuery = _subjectRepository.Where(t => t.TrialId == trialId && t.SubjectVisitTaskList.AsQueryable().Where(visitTaskFilter).Count() >= filterObj.PlanVisitCount);
|
||||||
|
|
||||||
|
|
||||||
|
var query = subjectQuery.Select(t => new DoctorSelfConsistentSubjectView()
|
||||||
|
{
|
||||||
|
TrialId = t.TrialId,
|
||||||
|
SiteId = t.SiteId,
|
||||||
|
SubjectCode = t.Code,
|
||||||
|
TrialSiteCode = t.TrialSite.TrialSiteCode,
|
||||||
|
SubjectId = t.Id,
|
||||||
|
|
||||||
|
IsHaveGeneratedTask = t.SubjectVisitTaskList.Any(c => c.IsAnalysisCreate && c.DoctorUserId == doctorUserId),
|
||||||
|
|
||||||
|
|
||||||
|
ValidVisitCount = t.SubjectVisitTaskList.AsQueryable().Where(visitTaskFilter).Count(),
|
||||||
|
|
||||||
|
VisitTaskList = t.SubjectVisitTaskList.AsQueryable().Where(visitTaskFilter).Select(c => new VisitTaskSimpleDTO()
|
||||||
|
{
|
||||||
|
Id = c.Id,
|
||||||
|
ReadingCategory = c.ReadingCategory,
|
||||||
|
ReadingTaskState = c.ReadingTaskState,
|
||||||
|
TaskBlindName = c.TaskBlindName,
|
||||||
|
TaskCode = c.TaskCode,
|
||||||
|
TaskName = c.TaskName,
|
||||||
|
TaskState = c.TaskState,
|
||||||
|
ArmEnum = c.ArmEnum,
|
||||||
|
SubjectId = c.SubjectId,
|
||||||
|
VisitTaskNum = c.VisitTaskNum,
|
||||||
|
TrialId = c.TrialId,
|
||||||
|
|
||||||
|
IsHaveGeneratedTask = c.Subject.SubjectVisitTaskList.Any(t => t.ConsistentAnalysisOriginalTaskId == c.Id),
|
||||||
|
|
||||||
|
GlobalVisitTaskList = c.Subject.SubjectVisitTaskList.Where(t => t.VisitTaskNum == c.VisitTaskNum + ReadingCommon.TaskNumDic[ReadingCategory.Global] && t.TaskState == TaskState.Effect && t.ReadingTaskState == ReadingTaskState.HaveSigned && t.SignTime!.Value.AddDays(filterObj.IntervalWeeks * 7) < DateTime.Now).Select(c => new VisitTaskSimpleDTO()
|
||||||
|
{
|
||||||
|
Id = c.Id,
|
||||||
|
ReadingCategory = c.ReadingCategory,
|
||||||
|
ReadingTaskState = c.ReadingTaskState,
|
||||||
|
TaskBlindName = c.TaskBlindName,
|
||||||
|
TaskCode = c.TaskCode,
|
||||||
|
TaskName = c.TaskName,
|
||||||
|
TaskState = c.TaskState,
|
||||||
|
ArmEnum = c.ArmEnum,
|
||||||
|
SubjectId = c.SubjectId,
|
||||||
|
VisitTaskNum = c.VisitTaskNum,
|
||||||
|
TrialId = c.TrialId,
|
||||||
|
|
||||||
|
}).ToList(),
|
||||||
|
|
||||||
|
}).ToList()
|
||||||
|
});
|
||||||
|
|
||||||
|
return query.OrderByDescending(t => t.IsHaveGeneratedTask);
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
private (IQueryable<IGrouping<Guid, VisitTask>>, IQueryable<DoctorConsistentRuleSubjectView>) GetIQueryableDoctorSelfConsistentRuleSubjectView(TaskConsistentRule filterObj, List<Guid>? subejctIdList = null)
|
private (IQueryable<IGrouping<Guid, VisitTask>>, IQueryable<DoctorConsistentRuleSubjectView>) GetIQueryableDoctorSelfConsistentRuleSubjectView(TaskConsistentRule filterObj, List<Guid>? subejctIdList = null)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
||||||
//IQueryable<Guid> subjectfilter = default;
|
|
||||||
|
|
||||||
//if (isSelfAnalysis == false)
|
|
||||||
//{
|
|
||||||
// //过滤不满足的Subject
|
|
||||||
|
|
||||||
// subjectfilter = _subjectUserRepository.Where(t => t.TrialId == filterObj.TrialId).GroupBy(t => t.SubjectId)
|
|
||||||
// .Where(g => g.Any(t => t.DoctorUserId == filterObj.AnalysisDoctorUserId) && !g.Any(t => t.DoctorUserId == filterObj.CompareDoctorUserId)).Select(g => g.Key);
|
|
||||||
//}
|
|
||||||
|
|
||||||
var doctorUserId = filterObj.AnalysisDoctorUserId;
|
var doctorUserId = filterObj.AnalysisDoctorUserId;
|
||||||
|
var trialId = filterObj.TrialId;
|
||||||
|
|
||||||
|
#region 任务维度
|
||||||
|
|
||||||
var group = _visitTaskRepository.Where(t => t.TrialId == filterObj.TrialId && t.IsAnalysisCreate == false && t.ReadingCategory == ReadingCategory.Visit && t.DoctorUserId == doctorUserId)
|
var group = _visitTaskRepository.Where(t => t.TrialId == filterObj.TrialId && t.IsAnalysisCreate == false && t.ReadingCategory == ReadingCategory.Visit && t.DoctorUserId == doctorUserId)
|
||||||
|
|
||||||
|
@ -170,7 +248,7 @@ namespace IRaCIS.Core.Application.Service
|
||||||
//重阅产生的访视任务 要把之前的访视任务去除
|
//重阅产生的访视任务 要把之前的访视任务去除
|
||||||
.Where(t => t.ReReadingApplyState == ReReadingApplyState.Default || t.ReReadingApplyState == ReReadingApplyState.Reject)
|
.Where(t => t.ReReadingApplyState == ReReadingApplyState.Default || t.ReReadingApplyState == ReReadingApplyState.Reject)
|
||||||
|
|
||||||
.WhereIf(filterObj.IsHaveReadingPeriod == true, t => t.SameSubjectVisiTaskList.Any(u => u.VisitTaskNum == t.VisitTaskNum + ReadingCommon.TaskNumDic[ReadingCategory.Global]
|
.WhereIf(filterObj.IsHaveReadingPeriod == true, t => t.Subject.SubjectVisitTaskList.Any(u => u.VisitTaskNum == t.VisitTaskNum + ReadingCommon.TaskNumDic[ReadingCategory.Global]
|
||||||
&& t.TaskState == TaskState.Effect && t.ReadingTaskState == ReadingTaskState.HaveSigned && t.SignTime!.Value.AddDays(filterObj.IntervalWeeks * 7) < DateTime.Now))
|
&& t.TaskState == TaskState.Effect && t.ReadingTaskState == ReadingTaskState.HaveSigned && t.SignTime!.Value.AddDays(filterObj.IntervalWeeks * 7) < DateTime.Now))
|
||||||
.GroupBy(t => t.SubjectId)
|
.GroupBy(t => t.SubjectId)
|
||||||
.Where(g => g.Count() >= filterObj.PlanVisitCount);
|
.Where(g => g.Count() >= filterObj.PlanVisitCount);
|
||||||
|
@ -180,7 +258,7 @@ namespace IRaCIS.Core.Application.Service
|
||||||
{
|
{
|
||||||
SubjectId = g.Key,
|
SubjectId = g.Key,
|
||||||
|
|
||||||
IsHaveGeneratedTask = g.Any(c => c.SameSubjectVisiTaskList.Any(t => t.IsAnalysisCreate && t.DoctorUserId == doctorUserId && t.TaskConsistentRuleId == filterObj.Id)),
|
IsHaveGeneratedTask = g.Any(c => c.Subject.SubjectVisitTaskList.Any(t => t.IsAnalysisCreate && t.DoctorUserId == doctorUserId && t.TaskConsistentRuleId == filterObj.Id)),
|
||||||
|
|
||||||
VisitTaskList = g.OrderBy(t => t.VisitTaskNum)
|
VisitTaskList = g.OrderBy(t => t.VisitTaskNum)
|
||||||
|
|
||||||
|
@ -200,7 +278,7 @@ namespace IRaCIS.Core.Application.Service
|
||||||
SubjectCode = c.Subject.Code,
|
SubjectCode = c.Subject.Code,
|
||||||
TrialSiteCode = c.Subject.TrialSite.TrialSiteCode,
|
TrialSiteCode = c.Subject.TrialSite.TrialSiteCode,
|
||||||
|
|
||||||
GlobalVisitTaskList = c.SameSubjectVisiTaskList.Where(t => t.VisitTaskNum == c.VisitTaskNum + ReadingCommon.TaskNumDic[ReadingCategory.Global] && t.TaskState == TaskState.Effect && t.ReadingTaskState == ReadingTaskState.HaveSigned).Select(t => new VisitTaskSimpleView()
|
GlobalVisitTaskList = c.Subject.SubjectVisitTaskList.Where(t => t.VisitTaskNum == c.VisitTaskNum + ReadingCommon.TaskNumDic[ReadingCategory.Global] && t.TaskState == TaskState.Effect && t.ReadingTaskState == ReadingTaskState.HaveSigned).Select(t => new VisitTaskSimpleView()
|
||||||
{
|
{
|
||||||
Id = t.Id,
|
Id = t.Id,
|
||||||
ReadingCategory = t.ReadingCategory,
|
ReadingCategory = t.ReadingCategory,
|
||||||
|
@ -225,15 +303,25 @@ namespace IRaCIS.Core.Application.Service
|
||||||
// UserName = c.DoctorUser.UserName
|
// UserName = c.DoctorUser.UserName
|
||||||
//}).ToList(),
|
//}).ToList(),
|
||||||
|
|
||||||
IsHaveGeneratedTask = c.SameSubjectVisiTaskList.Any(t => t.ConsistentAnalysisOriginalTaskId == c.Id),
|
IsHaveGeneratedTask = c.Subject.SubjectVisitTaskList.Any(t => t.ConsistentAnalysisOriginalTaskId == c.Id),
|
||||||
|
|
||||||
}).ToList(),
|
}).ToList(),
|
||||||
|
|
||||||
ValidTaskCount = g.Count()
|
ValidTaskCount = g.Count()
|
||||||
|
|
||||||
}); ;
|
});
|
||||||
|
|
||||||
return (group, query);
|
return (group, query);
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
@ -78,7 +78,6 @@ namespace IRaCIS.Application.Services
|
||||||
|
|
||||||
//var list3 = _repository.Where<VisitTask>(t => t.Id == Guid.NewGuid()).SelectMany(t => t.SourceSubjectVisit.VisitTaskList).ToList();
|
//var list3 = _repository.Where<VisitTask>(t => t.Id == Guid.NewGuid()).SelectMany(t => t.SourceSubjectVisit.VisitTaskList).ToList();
|
||||||
var list2 = _repository.Where<Subject>(t => t.Id == Guid.NewGuid()).SelectMany(t => t.SubjectVisitTaskList).ToList();
|
var list2 = _repository.Where<Subject>(t => t.Id == Guid.NewGuid()).SelectMany(t => t.SubjectVisitTaskList).ToList();
|
||||||
var list3 = _repository.Where<VisitTask>(t => t.Id == Guid.NewGuid()).SelectMany(t => t.SameSubjectVisiTaskList).ToList();
|
|
||||||
return _userInfo.LocalIp;
|
return _userInfo.LocalIp;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -84,7 +84,7 @@ namespace IRaCIS.Core.Domain.Models
|
||||||
//排除一致性分析 因为souceVisitId 没值
|
//排除一致性分析 因为souceVisitId 没值
|
||||||
//public List<VisitTask> SameVisitTaskList { get; set; }
|
//public List<VisitTask> SameVisitTaskList { get; set; }
|
||||||
|
|
||||||
public List<VisitTask> SameSubjectVisiTaskList { get; set; }
|
//public List<VisitTask> SameSubjectVisiTaskList { get; set; }
|
||||||
|
|
||||||
public TaskConsistentRule TaskConsistentRule { get; set; }
|
public TaskConsistentRule TaskConsistentRule { get; set; }
|
||||||
|
|
||||||
|
|
|
@ -103,7 +103,8 @@ namespace IRaCIS.Core.Infra.EFCore
|
||||||
|
|
||||||
modelBuilder.Entity<VisitTask>().HasMany(t => t.TaskMedicalReviewList).WithOne(t => t.VisitTask).HasForeignKey(t => t.VisitTaskId);
|
modelBuilder.Entity<VisitTask>().HasMany(t => t.TaskMedicalReviewList).WithOne(t => t.VisitTask).HasForeignKey(t => t.VisitTaskId);
|
||||||
|
|
||||||
modelBuilder.Entity<VisitTask>().HasMany(t => t.SameSubjectVisiTaskList).WithOne().HasForeignKey(t => t.SubjectId).HasPrincipalKey(u=>u.SubjectId);
|
|
||||||
|
|
||||||
modelBuilder.Entity<VisitTask>().HasOne(t => t.Subject).WithMany(s=>s.SubjectVisitTaskList).HasForeignKey(t => t.SubjectId);
|
modelBuilder.Entity<VisitTask>().HasOne(t => t.Subject).WithMany(s=>s.SubjectVisitTaskList).HasForeignKey(t => t.SubjectId);
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue