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
continuous-integration/drone/push Build is passing
Details
commit
5a1a710d5a
|
@ -151,6 +151,7 @@ builder.Services.AddMediator(cfg =>
|
||||||
{
|
{
|
||||||
cfg.AddConsumer<ConsistencyCheckConsumer>();
|
cfg.AddConsumer<ConsistencyCheckConsumer>();
|
||||||
cfg.AddConsumer<AddUserLogTriggerConsumer>();
|
cfg.AddConsumer<AddUserLogTriggerConsumer>();
|
||||||
|
cfg.AddConsumer<AddSubjectTriggerConsumer>();
|
||||||
});
|
});
|
||||||
|
|
||||||
// 添加 MassTransit 和 InMemory 传输
|
// 添加 MassTransit 和 InMemory 传输
|
||||||
|
|
|
@ -1527,6 +1527,14 @@
|
||||||
<param name="inQuery"></param>
|
<param name="inQuery"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ImageAndDoc.DownloadAndUploadService.UpdateTaskStudyModality(System.Guid,System.String)">
|
||||||
|
<summary>
|
||||||
|
更新后处理上传的检查modality
|
||||||
|
</summary>
|
||||||
|
<param name="taskStudyId"></param>
|
||||||
|
<param name="modality"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
<member name="M:IRaCIS.Core.Application.Service.ImageAndDoc.DownloadAndUploadService.GetSubejectOrVisitZipInfo(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Subject},IRaCIS.Core.Application.Contracts.SubejctZipInfoQuery)">
|
<member name="M:IRaCIS.Core.Application.Service.ImageAndDoc.DownloadAndUploadService.GetSubejectOrVisitZipInfo(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Subject},IRaCIS.Core.Application.Contracts.SubejctZipInfoQuery)">
|
||||||
<summary>
|
<summary>
|
||||||
受试者级别所有的影像
|
受试者级别所有的影像
|
||||||
|
@ -12650,7 +12658,8 @@
|
||||||
</member>
|
</member>
|
||||||
<member name="T:IRaCIS.Core.Application.MassTransit.Consumer.AddSubjectTriggerConsumer">
|
<member name="T:IRaCIS.Core.Application.MassTransit.Consumer.AddSubjectTriggerConsumer">
|
||||||
<summary>
|
<summary>
|
||||||
添加Subject 触发添加访视 不能代替 Trigger,稽查BatchId 不一致 暂时废弃
|
添加Subject 触发添加访视 不能代替 Trigger,稽查BatchId 不一致
|
||||||
|
因为消费者这里的数据库上下文 和消息发送者上下文不是同一个,相当于两个独立的事务
|
||||||
</summary>
|
</summary>
|
||||||
<param name="_subjectVisitRepository"></param>
|
<param name="_subjectVisitRepository"></param>
|
||||||
<param name="_visitStageRepository"></param>
|
<param name="_visitStageRepository"></param>
|
||||||
|
@ -12659,7 +12668,8 @@
|
||||||
</member>
|
</member>
|
||||||
<member name="M:IRaCIS.Core.Application.MassTransit.Consumer.AddSubjectTriggerConsumer.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.VisitStage},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial},AutoMapper.IMapper)">
|
<member name="M:IRaCIS.Core.Application.MassTransit.Consumer.AddSubjectTriggerConsumer.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.VisitStage},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial},AutoMapper.IMapper)">
|
||||||
<summary>
|
<summary>
|
||||||
添加Subject 触发添加访视 不能代替 Trigger,稽查BatchId 不一致 暂时废弃
|
添加Subject 触发添加访视 不能代替 Trigger,稽查BatchId 不一致
|
||||||
|
因为消费者这里的数据库上下文 和消息发送者上下文不是同一个,相当于两个独立的事务
|
||||||
</summary>
|
</summary>
|
||||||
<param name="_subjectVisitRepository"></param>
|
<param name="_subjectVisitRepository"></param>
|
||||||
<param name="_visitStageRepository"></param>
|
<param name="_visitStageRepository"></param>
|
||||||
|
@ -16112,6 +16122,17 @@
|
||||||
<param name="_qcChallengeRepository"></param>
|
<param name="_qcChallengeRepository"></param>
|
||||||
<param name="_subjectVisitRepository"></param>
|
<param name="_subjectVisitRepository"></param>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Triggers.JudgeVisitTaskTrigger.AfterSave(EntityFrameworkCore.Triggered.ITriggerContext{IRaCIS.Core.Domain.Models.VisitTask},System.Threading.CancellationToken)">
|
||||||
|
<summary>
|
||||||
|
因为维护状态先后顺序导致 裁判任务关联的 任务上的JudgeVisitTaskId==nulll 在这里需要重新设置下
|
||||||
|
|
||||||
|
比如 两个任务产生了裁判,然后其中一个人申请了重阅,影响了裁判,需要清理之前任务的上裁判id (申请重阅,退回,里面分有序,无序,情况太多,所以不在那块逻辑修改,不然得加多个地方处理,在这里统一处理)
|
||||||
|
比如: 申请裁判任务重阅,事务里面本来设置了任务上的裁判id,但是因为下面的逻辑,导致设置的值又被清理了,只能重新设置下
|
||||||
|
</summary>
|
||||||
|
<param name="context"></param>
|
||||||
|
<param name="cancellationToken"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
<member name="T:IRaCIS.Core.Application.Triggers.TrialCriterionSignTrigger">
|
<member name="T:IRaCIS.Core.Application.Triggers.TrialCriterionSignTrigger">
|
||||||
<summary>
|
<summary>
|
||||||
因为可能先一致性核查通过,生成其他标准的任务了,新签名的标准也需要产生任务
|
因为可能先一致性核查通过,生成其他标准的任务了,新签名的标准也需要产生任务
|
||||||
|
@ -16132,27 +16153,6 @@
|
||||||
维护 IsFrontTaskNeedSignButNotSign 字段 另外附加评估结果
|
维护 IsFrontTaskNeedSignButNotSign 字段 另外附加评估结果
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:IRaCIS.Core.Application.Triggers.JudgeVisitTaskTrigger.AfterSave(EntityFrameworkCore.Triggered.ITriggerContext{IRaCIS.Core.Domain.Models.VisitTask},System.Threading.CancellationToken)">
|
|
||||||
<summary>
|
|
||||||
因为维护状态先后顺序导致 裁判任务关联的 任务上的JudgeVisitTaskId==nulll 在这里需要重新设置下
|
|
||||||
|
|
||||||
比如: 申请裁判任务重阅,事务里面本来设置了任务上的裁判id,但是因为下面的逻辑,导致设置的值又被清理了,只能重新设置下
|
|
||||||
</summary>
|
|
||||||
<param name="context"></param>
|
|
||||||
<param name="cancellationToken"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:IRaCIS.Core.Application.Triggers.JudgeVisitTaskTrigger.BeforeSave(EntityFrameworkCore.Triggered.ITriggerContext{IRaCIS.Core.Domain.Models.VisitTask},System.Threading.CancellationToken)">
|
|
||||||
<summary>
|
|
||||||
比如 两个任务产生了裁判,然后其中一个人申请了重阅,影响了裁判,需要清理之前任务的上裁判id
|
|
||||||
|
|
||||||
|
|
||||||
因为申请重阅,退回,里面分有序,无序,情况太多,所以不在那块逻辑修改,不然得加多个地方处理,在这里统一处理
|
|
||||||
</summary>
|
|
||||||
<param name="context"></param>
|
|
||||||
<param name="cancellationToken"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="T:IRaCIS.Core.Application.Triggers.SubjectTrigger">
|
<member name="T:IRaCIS.Core.Application.Triggers.SubjectTrigger">
|
||||||
<summary>
|
<summary>
|
||||||
添加访视计划 要给改项目下的所有Subject 添加该访视
|
添加访视计划 要给改项目下的所有Subject 添加该访视
|
||||||
|
|
|
@ -7,7 +7,8 @@ using MassTransit;
|
||||||
namespace IRaCIS.Core.Application.MassTransit.Consumer;
|
namespace IRaCIS.Core.Application.MassTransit.Consumer;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 添加Subject 触发添加访视 不能代替 Trigger,稽查BatchId 不一致 暂时废弃
|
/// 添加Subject 触发添加访视 不能代替 Trigger,稽查BatchId 不一致
|
||||||
|
/// 因为消费者这里的数据库上下文 和消息发送者上下文不是同一个,相当于两个独立的事务
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="_subjectVisitRepository"></param>
|
/// <param name="_subjectVisitRepository"></param>
|
||||||
/// <param name="_visitStageRepository"></param>
|
/// <param name="_visitStageRepository"></param>
|
||||||
|
@ -41,6 +42,5 @@ public class AddSubjectTriggerConsumer(IRepository<SubjectVisit> _subjectVisitRe
|
||||||
});
|
});
|
||||||
|
|
||||||
await _subjectVisitRepository.AddRangeAsync(svList);
|
await _subjectVisitRepository.AddRangeAsync(svList);
|
||||||
await _subjectVisitRepository.SaveChangesAsync();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -117,7 +117,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
|
||||||
|
|
||||||
//要根据标准阅片顺序,确定是否查询单个任务的,还是查询所有的
|
//要根据标准阅片顺序,确定是否查询单个任务的,还是查询所有的
|
||||||
var criterionInfo = await _readingQuestionCriterionTrialRepository.Where(t => t.Id == inQuery.TrialReadingCriterionId)
|
var criterionInfo = await _readingQuestionCriterionTrialRepository.Where(t => t.Id == inQuery.TrialReadingCriterionId)
|
||||||
.Select(t => new { t.IsReadingTaskViewInOrder }).FirstNotNullAsync();
|
.Select(t => new { t.IsReadingTaskViewInOrder, t.Trial.Modalitys }).FirstNotNullAsync();
|
||||||
|
|
||||||
var subjectCode = string.Empty;
|
var subjectCode = string.Empty;
|
||||||
var subjectId = inQuery.SubjectId;
|
var subjectId = inQuery.SubjectId;
|
||||||
|
@ -217,7 +217,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
|
||||||
var list = await query.Where(t => t.SubjectCode == subjectCode).ToListAsync();
|
var list = await query.Where(t => t.SubjectCode == subjectCode).ToListAsync();
|
||||||
|
|
||||||
|
|
||||||
return ResponseOutput.Ok(list);
|
return ResponseOutput.Ok(list, new { TrialModality = criterionInfo.Modalitys });
|
||||||
}
|
}
|
||||||
|
|
||||||
private void SpecialArchiveStudyDeal(TaskStudy study)
|
private void SpecialArchiveStudyDeal(TaskStudy study)
|
||||||
|
@ -1131,6 +1131,20 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
|
||||||
return await query.ToPagedListAsync(inQuery);
|
return await query.ToPagedListAsync(inQuery);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 更新后处理上传的检查modality
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="taskStudyId"></param>
|
||||||
|
/// <param name="modality"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
[HttpPut]
|
||||||
|
public async Task<IResponseOutput> UpdateTaskStudyModality(Guid taskStudyId, string modality)
|
||||||
|
{
|
||||||
|
await _taskStudyRepository.UpdatePartialFromQueryAsync(t => t.Id == taskStudyId, u => new TaskStudy() { ModalityForEdit = modality }, true);
|
||||||
|
return ResponseOutput.Ok();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
#region 之前后端下载废弃
|
#region 之前后端下载废弃
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -4,11 +4,13 @@ using IRaCIS.Core.Application.BusinessFilter;
|
||||||
using IRaCIS.Core.Application.Contracts;
|
using IRaCIS.Core.Application.Contracts;
|
||||||
using IRaCIS.Core.Application.Helper;
|
using IRaCIS.Core.Application.Helper;
|
||||||
using IRaCIS.Core.Application.ViewModel;
|
using IRaCIS.Core.Application.ViewModel;
|
||||||
|
using IRaCIS.Core.Domain;
|
||||||
using IRaCIS.Core.Domain.Share;
|
using IRaCIS.Core.Domain.Share;
|
||||||
using IRaCIS.Core.Infrastructure;
|
using IRaCIS.Core.Infrastructure;
|
||||||
using IRaCIS.Core.Infrastructure.Encryption;
|
using IRaCIS.Core.Infrastructure.Encryption;
|
||||||
using IRaCIS.Core.Infrastructure.NewtonsoftJson;
|
using IRaCIS.Core.Infrastructure.NewtonsoftJson;
|
||||||
using MassTransit;
|
using MassTransit;
|
||||||
|
using MassTransit.Mediator;
|
||||||
using Medallion.Threading;
|
using Medallion.Threading;
|
||||||
using Microsoft.AspNetCore.Authorization;
|
using Microsoft.AspNetCore.Authorization;
|
||||||
using Microsoft.AspNetCore.Hosting;
|
using Microsoft.AspNetCore.Hosting;
|
||||||
|
@ -119,6 +121,17 @@ namespace IRaCIS.Core.Application.Service
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public async Task<IResponseOutput> TestMasstransitMeditor([FromServices] IMediator _mediator, [FromServices] IRepository<TestLength> _testLengthRepository)
|
||||||
|
{
|
||||||
|
await _testLengthRepository.AddAsync(new TestLength() { Name = "zhouhang1" });
|
||||||
|
|
||||||
|
await _mediator.Send(new AddSubjectTriggerCommand { SubjectId = Guid.Empty });
|
||||||
|
|
||||||
|
await _testLengthRepository.SaveChangesAsync();
|
||||||
|
|
||||||
|
return ResponseOutput.Ok();
|
||||||
|
}
|
||||||
|
|
||||||
public async Task<IResponseOutput> TestJson()
|
public async Task<IResponseOutput> TestJson()
|
||||||
{
|
{
|
||||||
var model1 = new TestModel() { TestId = NewId.NextSequentialGuid(), TestName = null };
|
var model1 = new TestModel() { TestId = NewId.NextSequentialGuid(), TestName = null };
|
||||||
|
|
|
@ -6,7 +6,7 @@ namespace IRaCIS.Core.Application.Triggers
|
||||||
|
|
||||||
public class JudgeVisitTaskTrigger(
|
public class JudgeVisitTaskTrigger(
|
||||||
IRepository<VisitTask> _visitTaskRepository,
|
IRepository<VisitTask> _visitTaskRepository,
|
||||||
IRepository<ReadingJudgeInfo> _readingJudgeInfoRepository) : IBeforeSaveTrigger<VisitTask>, IAfterSaveTrigger<VisitTask>
|
IRepository<ReadingJudgeInfo> _readingJudgeInfoRepository) : IAfterSaveTrigger<VisitTask>
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
||||||
|
@ -14,6 +14,7 @@ namespace IRaCIS.Core.Application.Triggers
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 因为维护状态先后顺序导致 裁判任务关联的 任务上的JudgeVisitTaskId==nulll 在这里需要重新设置下
|
/// 因为维护状态先后顺序导致 裁判任务关联的 任务上的JudgeVisitTaskId==nulll 在这里需要重新设置下
|
||||||
///
|
///
|
||||||
|
/// 比如 两个任务产生了裁判,然后其中一个人申请了重阅,影响了裁判,需要清理之前任务的上裁判id (申请重阅,退回,里面分有序,无序,情况太多,所以不在那块逻辑修改,不然得加多个地方处理,在这里统一处理)
|
||||||
/// 比如: 申请裁判任务重阅,事务里面本来设置了任务上的裁判id,但是因为下面的逻辑,导致设置的值又被清理了,只能重新设置下
|
/// 比如: 申请裁判任务重阅,事务里面本来设置了任务上的裁判id,但是因为下面的逻辑,导致设置的值又被清理了,只能重新设置下
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="context"></param>
|
/// <param name="context"></param>
|
||||||
|
@ -23,34 +24,22 @@ namespace IRaCIS.Core.Application.Triggers
|
||||||
{
|
{
|
||||||
var visitTask = context.Entity;
|
var visitTask = context.Entity;
|
||||||
//裁判任务维护,当裁判任务受到影响的时候,需要清理任务上关联的裁判任务id
|
//裁判任务维护,当裁判任务受到影响的时候,需要清理任务上关联的裁判任务id
|
||||||
if (context.ChangeType == ChangeType.Added && visitTask.ReadingCategory == ReadingCategory.Judge && visitTask.TaskState == TaskState.Effect)
|
if (context.ChangeType == ChangeType.Added)
|
||||||
{
|
{
|
||||||
|
|
||||||
var find = _readingJudgeInfoRepository.Where(t => t.JudgeTaskId == visitTask.Id).FirstOrDefault();
|
if (visitTask.ReadingCategory == ReadingCategory.Judge && visitTask.TaskState == TaskState.Effect)
|
||||||
|
|
||||||
if (find != null)
|
|
||||||
{
|
{
|
||||||
var ids = new Guid[] { find.TaskIdOne, find.TaskIdTwo };
|
var find = _readingJudgeInfoRepository.Where(t => t.JudgeTaskId == visitTask.Id).FirstOrDefault();
|
||||||
await _visitTaskRepository.BatchUpdateNoTrackingAsync(t => ids.Contains(t.Id), u => new VisitTask() { JudgeVisitTaskId = visitTask.Id });
|
|
||||||
|
if (find != null)
|
||||||
|
{
|
||||||
|
var ids = new Guid[] { find.TaskIdOne, find.TaskIdTwo };
|
||||||
|
await _visitTaskRepository.BatchUpdateNoTrackingAsync(t => ids.Contains(t.Id), u => new VisitTask() { JudgeVisitTaskId = visitTask.Id });
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
else if (context.ChangeType == ChangeType.Modified)
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 比如 两个任务产生了裁判,然后其中一个人申请了重阅,影响了裁判,需要清理之前任务的上裁判id
|
|
||||||
///
|
|
||||||
///
|
|
||||||
/// 因为申请重阅,退回,里面分有序,无序,情况太多,所以不在那块逻辑修改,不然得加多个地方处理,在这里统一处理
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="context"></param>
|
|
||||||
/// <param name="cancellationToken"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
public async Task BeforeSave(ITriggerContext<VisitTask> context, CancellationToken cancellationToken)
|
|
||||||
{
|
|
||||||
var visitTask = context.Entity;
|
|
||||||
//裁判任务维护,当裁判任务受到影响的时候,需要清理任务上关联的裁判任务id
|
|
||||||
if (context.ChangeType == ChangeType.Modified)
|
|
||||||
{
|
{
|
||||||
if (visitTask.ReadingCategory == ReadingCategory.Judge && (visitTask.TaskState == TaskState.Adbandon || visitTask.TaskState == TaskState.HaveReturned))
|
if (visitTask.ReadingCategory == ReadingCategory.Judge && (visitTask.TaskState == TaskState.Adbandon || visitTask.TaskState == TaskState.HaveReturned))
|
||||||
{
|
{
|
||||||
|
@ -64,5 +53,6 @@ namespace IRaCIS.Core.Application.Triggers
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -117,7 +117,6 @@ namespace IRaCIS.Core.Application.Triggers
|
||||||
|
|
||||||
await _subjectVisitRepository.AddRangeAsync(svList);
|
await _subjectVisitRepository.AddRangeAsync(svList);
|
||||||
|
|
||||||
//await _subjectVisitRepository.SaveChangesAsync();
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -11,7 +11,4 @@ public interface IAuditAdd : IAuditAdd<Guid>
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IAuditAddWithUserName : IAuditAdd<Guid>
|
|
||||||
{
|
|
||||||
public string CreateUser { get; set; }
|
|
||||||
}
|
|
||||||
|
|
|
@ -28,9 +28,9 @@ public class AuditEntityInterceptor(IUserInfo _userInfo,
|
||||||
public override ValueTask<InterceptionResult<int>> SavingChangesAsync(DbContextEventData eventData,
|
public override ValueTask<InterceptionResult<int>> SavingChangesAsync(DbContextEventData eventData,
|
||||||
InterceptionResult<int> result, CancellationToken cancellationToken = default)
|
InterceptionResult<int> result, CancellationToken cancellationToken = default)
|
||||||
{
|
{
|
||||||
////领域命令 (同一个事务提交的一些逻辑,类似Trigger 保存事务之前执行的一些逻辑)
|
//////领域命令 (同一个事务提交的一些逻辑,类似Trigger 保存事务之前执行的一些逻辑)
|
||||||
//eventData.Context.AddDomainCommands();
|
//eventData.Context.AddDomainCommands();
|
||||||
//DispatchDomainCommands(eventData.Context).GetAwaiter().GetResult();
|
//await DispatchDomainCommands(eventData.Context);
|
||||||
|
|
||||||
//领域事件
|
//领域事件
|
||||||
eventData.Context.AddDomainEvents();
|
eventData.Context.AddDomainEvents();
|
||||||
|
@ -41,6 +41,8 @@ public class AuditEntityInterceptor(IUserInfo _userInfo,
|
||||||
//IRC稽查 放在savechange 之前 不影响之前的逻辑
|
//IRC稽查 放在savechange 之前 不影响之前的逻辑
|
||||||
IRCDataInspection(eventData.Context);
|
IRCDataInspection(eventData.Context);
|
||||||
|
|
||||||
|
//return result;
|
||||||
|
|
||||||
return base.SavingChangesAsync(eventData, result, cancellationToken);
|
return base.SavingChangesAsync(eventData, result, cancellationToken);
|
||||||
}
|
}
|
||||||
public override InterceptionResult<int> SavingChanges(DbContextEventData eventData, InterceptionResult<int> result)
|
public override InterceptionResult<int> SavingChanges(DbContextEventData eventData, InterceptionResult<int> result)
|
||||||
|
@ -55,6 +57,8 @@ public class AuditEntityInterceptor(IUserInfo _userInfo,
|
||||||
//IRC稽查 放在savechange 之前 不影响之前的逻辑
|
//IRC稽查 放在savechange 之前 不影响之前的逻辑
|
||||||
IRCDataInspection(eventData.Context);
|
IRCDataInspection(eventData.Context);
|
||||||
|
|
||||||
|
//return result;
|
||||||
|
|
||||||
return base.SavingChanges(eventData, result);
|
return base.SavingChanges(eventData, result);
|
||||||
}
|
}
|
||||||
public void AuditEntities(DbContext? context)
|
public void AuditEntities(DbContext? context)
|
||||||
|
@ -122,22 +126,6 @@ public class AuditEntityInterceptor(IUserInfo _userInfo,
|
||||||
updateEntity.UpdateTime = DateTime.Now;
|
updateEntity.UpdateTime = DateTime.Now;
|
||||||
updateEntity.UpdateUserId = _userInfo.Id;
|
updateEntity.UpdateUserId = _userInfo.Id;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (entry.Entity is IAuditAddWithUserName addEntity3)
|
|
||||||
{
|
|
||||||
if (addEntity3.CreateTime == default(DateTime))
|
|
||||||
{
|
|
||||||
addEntity3.CreateTime = DateTime.Now;
|
|
||||||
|
|
||||||
}
|
|
||||||
if (addEntity3.CreateUserId == default(Guid))
|
|
||||||
{
|
|
||||||
addEntity3.CreateUserId = _userInfo.Id;
|
|
||||||
addEntity3.CreateUser = _userInfo.RealName;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -164,7 +152,6 @@ public class AuditEntityInterceptor(IUserInfo _userInfo,
|
||||||
|
|
||||||
#region 异常处理
|
#region 异常处理
|
||||||
|
|
||||||
#endregion
|
|
||||||
|
|
||||||
private void LoggerDBContextException(DbContextErrorEventData eventData)
|
private void LoggerDBContextException(DbContextErrorEventData eventData)
|
||||||
{
|
{
|
||||||
|
@ -225,6 +212,7 @@ public class AuditEntityInterceptor(IUserInfo _userInfo,
|
||||||
base.SaveChangesFailed(eventData);
|
base.SaveChangesFailed(eventData);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
#region 领域命令分发
|
#region 领域命令分发
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue