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

@ -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()

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
{
@ -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);
@ -103,6 +104,7 @@ namespace IRaCIS.Core.Infra.EFCore
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);
@ -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("该唯一键已经存在于数据库中。");