diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
index 7ec1606de..36374a2b0 100644
--- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
+++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
@@ -15383,6 +15383,13 @@
+
+
+ 清理一致性分析任务
+
+
+
+
维护临床数据 --一定要在同步表前同步数据才行
diff --git a/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs b/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs
index f9c504632..12f90e6ca 100644
--- a/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs
+++ b/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs
@@ -786,7 +786,7 @@ namespace IRaCIS.Core.Application.Service.Allocation
.WhereIf(!string.IsNullOrEmpty(queryVisitTask.SubjectCode), t => (t.Subject.Code.Contains(queryVisitTask.SubjectCode) && t.IsAnalysisCreate == false) || (t.BlindSubjectCode.Contains(queryVisitTask.SubjectCode) && t.IsAnalysisCreate))
.WhereIf(queryVisitTask.BeginAllocateDate != null, t => t.AllocateTime > queryVisitTask.BeginAllocateDate)
.WhereIf(queryVisitTask.EndAllocateDate != null, t => t.AllocateTime < queryVisitTask.EndAllocateDate)
- .WhereIf(queryVisitTask.BeginSignTime != null, t => t.SignTime > queryVisitTask.BeginSignTime)
+ .WhereIf(queryVisitTask.BeginSignTime != null, t => t.SignTime > queryVisitTask.BeginSignTime)
.WhereIf(queryVisitTask.EndSignTime != null, t => t.SignTime < queryVisitTask.EndSignTime)
.ProjectTo(_mapper.ConfigurationProvider);
diff --git a/IRaCIS.Core.Application/Service/Management/DTO/UserModel.cs b/IRaCIS.Core.Application/Service/Management/DTO/UserModel.cs
index a54ec9ad4..3f22371f2 100644
--- a/IRaCIS.Core.Application/Service/Management/DTO/UserModel.cs
+++ b/IRaCIS.Core.Application/Service/Management/DTO/UserModel.cs
@@ -39,7 +39,7 @@ namespace IRaCIS.Application.Contracts
public Guid Id { get; set; }
public string UserName { get; set; } = string.Empty;
public string RealName { get; set; } = string.Empty;
- public int Sex { get; set; } // 1-男 2-女
+ public int? Sex { get; set; } // 1-男 2-女
///
/// LastLoginIP
@@ -131,7 +131,7 @@ namespace IRaCIS.Application.Contracts
public string FirstName { get; set; } = string.Empty;
public string LastName { get; set; } = string.Empty;
- public int Sex { get; set; } // 1-男 2-女
+ public int? Sex { get; set; } // 1-男 2-女
public int Status { get; set; } = 1; // 0-已删除 1-正常
diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/UserTrialViewModel.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/UserTrialViewModel.cs
index a2fdd4c03..a6d85a694 100644
--- a/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/UserTrialViewModel.cs
+++ b/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/UserTrialViewModel.cs
@@ -321,7 +321,7 @@ namespace IRaCIS.Application.Contracts
public class TrialUserScreeningDTO : TrialUserAddCommand
{
- public int Sex { get; set; } // 1-男 2-女
+ public int? Sex { get; set; } // 1-男 2-女
public string Phone { get; set; } = string.Empty;
public string EMail { get; set; } = string.Empty;
diff --git a/IRaCIS.Core.Application/TestService.cs b/IRaCIS.Core.Application/TestService.cs
index 104a44f53..a28a9588c 100644
--- a/IRaCIS.Core.Application/TestService.cs
+++ b/IRaCIS.Core.Application/TestService.cs
@@ -69,6 +69,31 @@ namespace IRaCIS.Application.Services
//_cache = cache;
}
+ ///
+ /// 清理一致性分析任务
+ ///
+ ///
+ ///
+ public async Task DeleteConsistentDate(Guid trialReadingCriterionId)
+ {
+
+
+ var consistentSubjectIdList = _repository.Where(t => t.TrialReadingCriterionId == trialReadingCriterionId && t.IsAnalysisCreate == true).Select(t => t.SubjectId).ToList();
+
+ await _repository.BatchDeleteAsync(t => t.TrialReadingCriterionId == trialReadingCriterionId);
+
+ await _repository.BatchDeleteAsync(t => t.TrialReadingCriterionId == trialReadingCriterionId && t.IsAnalysisCreate == true);
+
+
+
+ await _repository.BatchDeleteAsync(t => consistentSubjectIdList.Contains(t.ReadingConsistentClinicalData.SubjectId));
+
+ await _repository.BatchDeleteAsync(t => consistentSubjectIdList.Contains(t.SubjectId));
+
+
+ await _repository.SaveChangesAsync();
+ return ResponseOutput.Ok();
+ }
public async Task TestEFcore8()
@@ -274,22 +299,22 @@ namespace IRaCIS.Application.Services
throw new BusinessValidationFailedException("word 模板没有英文书签");
}
- // 创建一个要删除段落的列表
+ // 创建一个要删除段落的列表
- //XWPFParagraph bookmarkParagraph = null;
+ //XWPFParagraph bookmarkParagraph = null;
- //foreach (var paragraph in doc.Paragraphs)
- //{
+ //foreach (var paragraph in doc.Paragraphs)
+ //{
- // foreach (var bookmark in paragraph.GetCTP().GetBookmarkStartList())
- // {
- // if (bookmark.name == "en_us")
- // {
- // bookmarkParagraph = paragraph;
- // break;
- // }
- // }
- //}
+ // foreach (var bookmark in paragraph.GetCTP().GetBookmarkStartList())
+ // {
+ // if (bookmark.name == "en_us")
+ // {
+ // bookmarkParagraph = paragraph;
+ // break;
+ // }
+ // }
+ //}
@@ -300,7 +325,7 @@ namespace IRaCIS.Application.Services
// doc.RemoveBodyElement(i);
//}
-
+
using (FileStream outStream = new FileStream("C:\\Users\\hang\\Desktop\\test1.docx", FileMode.Create, FileAccess.Write))
{
diff --git a/IRaCIS.Core.Domain/Management/User.cs b/IRaCIS.Core.Domain/Management/User.cs
index 775c56fd5..099b0a9f9 100644
--- a/IRaCIS.Core.Domain/Management/User.cs
+++ b/IRaCIS.Core.Domain/Management/User.cs
@@ -36,7 +36,7 @@ namespace IRaCIS.Core.Domain.Models
public string Phone { get; set; } = string.Empty;
public string EMail { get; set; } = string.Empty;
- public int Sex { get; set; }
+ public int? Sex { get; set; }
public UserStateEnum Status { get; set; } = UserStateEnum.Enable;
public DateTime? LastLoginTime { get; set; }
diff --git a/IRaCIS.Core.Infra.EFCore/Context/IRaCISDBContext.cs b/IRaCIS.Core.Infra.EFCore/Context/IRaCISDBContext.cs
index 44a2ad291..9985806ed 100644
--- a/IRaCIS.Core.Infra.EFCore/Context/IRaCISDBContext.cs
+++ b/IRaCIS.Core.Infra.EFCore/Context/IRaCISDBContext.cs
@@ -21,6 +21,7 @@ using Microsoft.Identity.Client;
using EntityFramework.Exceptions.Common;
using System.Data;
using IRaCIS.Core.Infrastructure;
+using System.Reflection.Metadata;
namespace IRaCIS.Core.Infra.EFCore
{
@@ -49,7 +50,7 @@ namespace IRaCIS.Core.Infra.EFCore
public class IRaCISDBContext : DbContext
{
- private IUserInfo _userInfo;
+ private IUserInfo _userInfo;
private readonly ILogger _logger;
@@ -57,7 +58,7 @@ namespace IRaCIS.Core.Infra.EFCore
) : base(options)
{
- _userInfo= userInfo;
+ _userInfo = userInfo;
_logger = logger;
}
@@ -72,7 +73,7 @@ namespace IRaCIS.Core.Infra.EFCore
});
- modelBuilder.Entity().HasQueryFilter(p => p.IsAdditional==false);
+ modelBuilder.Entity().HasQueryFilter(p => p.IsAdditional == false);
modelBuilder.Entity().HasMany(t => t.VisitTaskList).WithOne(t => t.DoctorUser).HasForeignKey(t => t.DoctorUserId).IsRequired(false);
@@ -98,11 +99,12 @@ namespace IRaCIS.Core.Infra.EFCore
modelBuilder.Entity().HasMany(t => t.TaskInfluenceList).WithOne(s => s.OriginalTask).HasForeignKey(t => t.OriginalTaskId);
- modelBuilder.Entity().HasMany(t => t.GlobalVisitResultList).WithOne(s => s.GlobalVisitTask).HasForeignKey(t => t.GlobalTaskId);
+ modelBuilder.Entity().HasMany(t => t.GlobalVisitResultList).WithOne(s => s.GlobalVisitTask).HasForeignKey(t => t.GlobalTaskId);
modelBuilder.Entity().HasMany(t => t.ChildList).WithOne(t => t.Parent);
modelBuilder.Entity().HasMany(t => t.EarlierSubjectUserList).WithOne(t => t.OrignalSubjectUser);
+ modelBuilder.Entity().HasQueryFilter(b => b.Subject.IsDeleted == false);
//遍历实体模型手动配置
var typesToRegister = Assembly.GetExecutingAssembly().GetTypes().Where(q => q.GetInterface(typeof(IEntityTypeConfiguration<>).FullName) != null);
@@ -239,18 +241,18 @@ namespace IRaCIS.Core.Infra.EFCore
public virtual DbSet CriterionNidusSystem { get; set; }
- public virtual DbSet CriterionNidusTrial { get; set; }
+ public virtual DbSet CriterionNidusTrial { get; set; }
- public virtual DbSet ReadingTrialCriterionDictionary { get; set; }
+ public virtual DbSet ReadingTrialCriterionDictionary { get; set; }
- public virtual DbSet ReadingTableQuestionTrial { get; set; }
+ public virtual DbSet ReadingTableQuestionTrial { get; set; }
public virtual DbSet TumorAssessment_RECIST1Point1BM { get; set; }
public virtual DbSet TumorAssessment_RECIST1Point1 { get; set; }
public virtual DbSet TumorAssessment_IRECIST1Point1 { get; set; }
-
+
public virtual DbSet TrialClinicalDataSetCriterion { get; set; }
public virtual DbSet TrialCriterionAdditionalAssessmentType { get; set; }
@@ -319,7 +321,7 @@ namespace IRaCIS.Core.Infra.EFCore
#region Trial
public virtual DbSet Trial { get; set; }
-
+
public virtual DbSet TrialDictionary { get; set; }
public virtual DbSet TrialDetail { get; set; }
public virtual DbSet UserTrial { get; set; }
@@ -333,9 +335,9 @@ namespace IRaCIS.Core.Infra.EFCore
public virtual DbSet User { get; set; }
- public virtual DbSet UserPassWordLog { get; set; }
+ public virtual DbSet UserPassWordLog { get; set; }
- public virtual DbSet TrialSiteUserSurvey { get; set; }
+ public virtual DbSet TrialSiteUserSurvey { get; set; }
public virtual DbSet TrialSiteEquipmentSurvey { get; set; }
public virtual DbSet TrialSiteSurvey { get; set; }
@@ -391,8 +393,8 @@ namespace IRaCIS.Core.Infra.EFCore
public virtual DbSet ClinicalTableAnswer { get; set; }
- public virtual DbSet ReadModuleCriterionFrom { get; set; }
- public virtual DbSet ClinicalForm { get; set; }
+ public virtual DbSet ReadModuleCriterionFrom { get; set; }
+ public virtual DbSet ClinicalForm { get; set; }
#endregion
@@ -448,8 +450,8 @@ namespace IRaCIS.Core.Infra.EFCore
public virtual DbSet ShortcutKey { get; set; }
- public virtual DbSet UserWLTemplate { get; set; }
- public virtual DbSet EmailNoticeConfig { get; set; }
+ public virtual DbSet UserWLTemplate { get; set; }
+ public virtual DbSet EmailNoticeConfig { get; set; }
public virtual DbSet SystemBasicData { get; set; }
public virtual DbSet TrialSign { get; set; }
@@ -498,7 +500,7 @@ namespace IRaCIS.Core.Infra.EFCore
public virtual DbSet TrialDicomAE { get; set; }
- public virtual DbSet TrialSiteDicomAE { get; set; }
+ public virtual DbSet TrialSiteDicomAE { get; set; }
public virtual DbSet SCPImageUpload { get; set; }
@@ -519,7 +521,7 @@ namespace IRaCIS.Core.Infra.EFCore
}
catch (UniqueConstraintException ex)
{
- _logger.LogError(ex.InnerException is null? ex.Message :ex.InnerException?.Message);
+ _logger.LogError(ex.InnerException is null ? ex.Message : ex.InnerException?.Message);
throw new DBSaveFailedException("该唯一键已经存在于数据库中。");
@@ -567,7 +569,7 @@ namespace IRaCIS.Core.Infra.EFCore
}
}
-
+
public async Task AddAudit()
@@ -589,7 +591,7 @@ namespace IRaCIS.Core.Infra.EFCore
await auditingData.InsertAddEntitys(entities);
}
-
+
}