From e0ebd083b9a22c22cfa00b438eb9bdeafb3e24b7 Mon Sep 17 00:00:00 2001
From: hang <872297557@qq.com>
Date: Wed, 23 Aug 2023 09:46:59 +0800
Subject: [PATCH] =?UTF-8?q?=E4=B8=B4=E5=BA=8A=E6=95=B0=E6=8D=AE=E8=B4=A8?=
=?UTF-8?q?=E8=AF=A2=20=E5=A2=9E=E5=8A=A0=E6=96=B0=E7=9A=84=E8=A1=A8?=
=?UTF-8?q?=E5=92=8C=E5=9B=9E=E5=A4=8D=E6=8E=A5=E5=8F=A3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../IRaCIS.Core.Application.xml | 21 +++++++++
.../Allocation/DTO/VisitTaskViewModel.cs | 7 +++
.../Service/Allocation/VisitTaskService.cs | 22 +++++++++
.../Visit/SubjectVisitClinicalDialog.cs | 46 +++++++++++++++++++
.../Context/IRaCISDBContext.cs | 1 +
5 files changed, 97 insertions(+)
create mode 100644 IRaCIS.Core.Domain/Visit/SubjectVisitClinicalDialog.cs
diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
index bea106462..04ecd8ab4 100644
--- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
+++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
@@ -531,6 +531,27 @@
PublishLogService
+
+
+ 影像质控
+
+
+
+
+
+
+ QC质疑
+
+
+
+
+
+
+ 影像质疑
+
+
+
+
TrialEmailNoticeConfigService
diff --git a/IRaCIS.Core.Application/Service/Allocation/DTO/VisitTaskViewModel.cs b/IRaCIS.Core.Application/Service/Allocation/DTO/VisitTaskViewModel.cs
index 6835c7495..a7416ade2 100644
--- a/IRaCIS.Core.Application/Service/Allocation/DTO/VisitTaskViewModel.cs
+++ b/IRaCIS.Core.Application/Service/Allocation/DTO/VisitTaskViewModel.cs
@@ -457,6 +457,13 @@ namespace IRaCIS.Core.Application.ViewModel
public Guid VisitTaskId { get; set; }
}
+ public class ClinicalDataDialog
+ {
+ public Guid Id { get; set; }
+ public DateTime CreateTime { get; set; }
+ public Guid Content { get; set; }
+ }
+
public class PIAuditDialogListView : PIAuditTaskCommand
{
diff --git a/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs b/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs
index 80167909a..ceb2f91f3 100644
--- a/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs
+++ b/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs
@@ -329,6 +329,28 @@ namespace IRaCIS.Core.Application.Service.Allocation
}
+ public async Task AddClinicalDataDialog(Guid visiTaskId, string content,
+ [FromServices] IRepository subjectVisitClinicalDialogRepository,
+ [FromServices] IEmailSendService emailSendService)
+ {
+ var taskInfo = await _visitTaskRepository.Where(t => t.Id == visiTaskId).Select(t => new { t.SourceSubjectVisitId, t.Subject.Code, t.SourceSubjectVisit.VisitName, t.Trial.ResearchProgramNo, t.Trial.TrialCode }).FirstOrDefaultAsync();
+
+ await subjectVisitClinicalDialogRepository.AddAsync(new SubjectVisitClinicalDialog() { SubjectVisitId = (Guid)taskInfo.SourceSubjectVisitId, Content = content }, true);
+
+
+ await emailSendService.SendClinicalDataQuestionAsync(visiTaskId, content);
+
+ return ResponseOutput.Ok();
+ }
+
+ public async Task> GetClinicalDataDialog(Guid visiTaskId,
+ [FromServices] IRepository _subjectVisitClinicalDialogRepository)
+ {
+ var subjectVisitId= await _visitTaskRepository.Where(t => t.Id == visiTaskId).Select(t=>t.SourceSubjectVisitId).FirstOrDefaultAsync();
+ var list = _subjectVisitClinicalDialogRepository.Where(t => t.SubjectVisitId == subjectVisitId).ProjectTo(_mapper.ConfigurationProvider).OrderByDescending(t => t.CreateTime).ToList();
+
+ return list;
+ }
///
diff --git a/IRaCIS.Core.Domain/Visit/SubjectVisitClinicalDialog.cs b/IRaCIS.Core.Domain/Visit/SubjectVisitClinicalDialog.cs
new file mode 100644
index 000000000..9c1ac37cb
--- /dev/null
+++ b/IRaCIS.Core.Domain/Visit/SubjectVisitClinicalDialog.cs
@@ -0,0 +1,46 @@
+
+//--------------------------------------------------------------------
+// 此代码由T4模板自动生成 byzhouhang 20210918
+// 生成时间 2023-08-22 16:56:15
+// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
+using System;
+using IRaCIS.Core.Domain.Share;
+using System.ComponentModel.DataAnnotations;
+using System.ComponentModel.DataAnnotations.Schema;
+namespace IRaCIS.Core.Domain.Models
+{
+ ///
+ ///SubjectVisitClinicalDialog
+ ///
+ [Table("SubjectVisitClinicalDialog")]
+ public class SubjectVisitClinicalDialog : Entity, IAuditAdd
+ {
+
+
+ ///
+ /// SubjectVisitId
+ ///
+ [Required]
+ public Guid SubjectVisitId { get; set; }
+
+ ///
+ /// CreateUserId
+ ///
+ [Required]
+ public Guid CreateUserId { get; set; }
+
+ ///
+ /// CreateTime
+ ///
+ [Required]
+ public DateTime CreateTime { get; set; }
+
+ ///
+ /// Content
+ ///
+ [Required]
+ public string Content { get; set; }
+
+ }
+
+}
diff --git a/IRaCIS.Core.Infra.EFCore/Context/IRaCISDBContext.cs b/IRaCIS.Core.Infra.EFCore/Context/IRaCISDBContext.cs
index 9ee673fbd..89b628dd9 100644
--- a/IRaCIS.Core.Infra.EFCore/Context/IRaCISDBContext.cs
+++ b/IRaCIS.Core.Infra.EFCore/Context/IRaCISDBContext.cs
@@ -482,6 +482,7 @@ namespace IRaCIS.Core.Infra.EFCore
public virtual DbSet PublishLog { get; set; }
public virtual DbSet UserLog { get; set; }
+ public virtual DbSet SubjectVisitClinicalDialog { get; set; }