Merge branch 'Test_IRC_Net8' of https://gitea.frp.extimaging.com/XCKJ/irc-netcore-api into Test_IRC_Net8
continuous-integration/drone/push Build is passing Details

IRC_NewDev
he 2024-08-13 14:53:11 +08:00
commit 1f11de4a20
7 changed files with 72 additions and 38 deletions

View File

@ -15383,6 +15383,13 @@
<param name="outEnrollTime"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Application.Services.TestService.DeleteConsistentDate(System.Guid)">
<summary>
清理一致性分析任务
</summary>
<param name="trialReadingCriterionId"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Application.Services.TestService.ModifyClinicalDataTable">
<summary>
维护临床数据 --一定要在同步表前同步数据才行

View File

@ -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<ReadingTaskView>(_mapper.ConfigurationProvider);

View File

@ -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-女
/// <summary>
/// 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-正常

View File

@ -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;

View File

@ -69,6 +69,31 @@ namespace IRaCIS.Application.Services
//_cache = cache;
}
/// <summary>
/// 清理一致性分析任务
/// </summary>
/// <param name="trialReadingCriterionId"></param>
/// <returns></returns>
public async Task<IResponseOutput> DeleteConsistentDate(Guid trialReadingCriterionId)
{
var consistentSubjectIdList = _repository.Where<VisitTask>(t => t.TrialReadingCriterionId == trialReadingCriterionId && t.IsAnalysisCreate == true).Select(t => t.SubjectId).ToList();
await _repository.BatchDeleteAsync<TaskConsistentRule>(t => t.TrialReadingCriterionId == trialReadingCriterionId);
await _repository.BatchDeleteAsync<VisitTask>(t => t.TrialReadingCriterionId == trialReadingCriterionId && t.IsAnalysisCreate == true);
await _repository.BatchDeleteAsync<ReadingConsistentClinicalDataPDF>(t => consistentSubjectIdList.Contains(t.ReadingConsistentClinicalData.SubjectId));
await _repository.BatchDeleteAsync<ReadingConsistentClinicalData>(t => consistentSubjectIdList.Contains(t.SubjectId));
await _repository.SaveChangesAsync();
return ResponseOutput.Ok();
}
public async Task<IResponseOutput> 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))
{

View File

@ -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; }

View File

@ -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<IRaCISDBContext> _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<ReadingQuestionTrial>().HasQueryFilter(p => p.IsAdditional==false);
modelBuilder.Entity<ReadingQuestionTrial>().HasQueryFilter(p => p.IsAdditional == false);
modelBuilder.Entity<User>().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<VisitTask>().HasMany(t => t.TaskInfluenceList).WithOne(s => s.OriginalTask).HasForeignKey(t => t.OriginalTaskId);
modelBuilder.Entity<VisitTask>().HasMany(t => t.GlobalVisitResultList).WithOne(s => s.GlobalVisitTask).HasForeignKey(t => t.GlobalTaskId);
modelBuilder.Entity<VisitTask>().HasMany(t => t.GlobalVisitResultList).WithOne(s => s.GlobalVisitTask).HasForeignKey(t => t.GlobalTaskId);
modelBuilder.Entity<Dictionary>().HasMany(t => t.ChildList).WithOne(t => t.Parent);
modelBuilder.Entity<SubjectUser>().HasMany(t => t.EarlierSubjectUserList).WithOne(t => t.OrignalSubjectUser);
modelBuilder.Entity<VisitTask>().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> CriterionNidusSystem { get; set; }
public virtual DbSet<CriterionNidusTrial> CriterionNidusTrial { get; set; }
public virtual DbSet<CriterionNidusTrial> CriterionNidusTrial { get; set; }
public virtual DbSet<ReadingTrialCriterionDictionary> ReadingTrialCriterionDictionary { get; set; }
public virtual DbSet<ReadingTrialCriterionDictionary> ReadingTrialCriterionDictionary { get; set; }
public virtual DbSet<ReadingTableQuestionTrial> ReadingTableQuestionTrial { get; set; }
public virtual DbSet<ReadingTableQuestionTrial> ReadingTableQuestionTrial { get; set; }
public virtual DbSet<TumorAssessment_RECIST1Point1BM> TumorAssessment_RECIST1Point1BM { get; set; }
public virtual DbSet<TumorAssessment_RECIST1Point1> TumorAssessment_RECIST1Point1 { get; set; }
public virtual DbSet<TumorAssessment_IRECIST1Point1> TumorAssessment_IRECIST1Point1 { get; set; }
public virtual DbSet<TrialClinicalDataSetCriterion> TrialClinicalDataSetCriterion { get; set; }
public virtual DbSet<TrialCriterionAdditionalAssessmentType> TrialCriterionAdditionalAssessmentType { get; set; }
@ -319,7 +321,7 @@ namespace IRaCIS.Core.Infra.EFCore
#region Trial
public virtual DbSet<Trial> Trial { get; set; }
public virtual DbSet<TrialDictionary> TrialDictionary { get; set; }
public virtual DbSet<TrialStatusDetail> TrialDetail { get; set; }
public virtual DbSet<TrialUser> UserTrial { get; set; }
@ -333,9 +335,9 @@ namespace IRaCIS.Core.Infra.EFCore
public virtual DbSet<User> User { get; set; }
public virtual DbSet<UserPassWordLog> UserPassWordLog { get; set; }
public virtual DbSet<UserPassWordLog> UserPassWordLog { get; set; }
public virtual DbSet<TrialSiteUserSurvey> TrialSiteUserSurvey { get; set; }
public virtual DbSet<TrialSiteUserSurvey> TrialSiteUserSurvey { get; set; }
public virtual DbSet<TrialSiteEquipmentSurvey> TrialSiteEquipmentSurvey { get; set; }
public virtual DbSet<TrialSiteSurvey> TrialSiteSurvey { get; set; }
@ -391,8 +393,8 @@ namespace IRaCIS.Core.Infra.EFCore
public virtual DbSet<ClinicalTableAnswer> ClinicalTableAnswer { get; set; }
public virtual DbSet<ReadModuleCriterionFrom> ReadModuleCriterionFrom { get; set; }
public virtual DbSet<ClinicalForm> ClinicalForm { get; set; }
public virtual DbSet<ReadModuleCriterionFrom> ReadModuleCriterionFrom { get; set; }
public virtual DbSet<ClinicalForm> ClinicalForm { get; set; }
#endregion
@ -448,8 +450,8 @@ namespace IRaCIS.Core.Infra.EFCore
public virtual DbSet<ShortcutKey> ShortcutKey { get; set; }
public virtual DbSet<UserWLTemplate> UserWLTemplate { get; set; }
public virtual DbSet<EmailNoticeConfig> EmailNoticeConfig { get; set; }
public virtual DbSet<UserWLTemplate> UserWLTemplate { get; set; }
public virtual DbSet<EmailNoticeConfig> EmailNoticeConfig { get; set; }
public virtual DbSet<SystemBasicData> SystemBasicData { get; set; }
public virtual DbSet<TrialSign> TrialSign { get; set; }
@ -498,7 +500,7 @@ namespace IRaCIS.Core.Infra.EFCore
public virtual DbSet<TrialDicomAE> TrialDicomAE { get; set; }
public virtual DbSet<TrialSiteDicomAE> TrialSiteDicomAE { get; set; }
public virtual DbSet<TrialSiteDicomAE> TrialSiteDicomAE { get; set; }
public virtual DbSet<SCPImageUpload> 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);
}
}