From fb0c3879cf2b20e9572f3d4e1c2373a9fd4b4ff4 Mon Sep 17 00:00:00 2001 From: he <109787524@qq.com> Date: Fri, 20 Jun 2025 11:53:25 +0800 Subject: [PATCH] =?UTF-8?q?=E9=82=AE=E4=BB=B6=E5=8F=91=E9=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Recurring/TrialDocumentConsumer.cs | 23 ++++++++++++------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/IRaCIS.Core.Application/MassTransit/Recurring/TrialDocumentConsumer.cs b/IRaCIS.Core.Application/MassTransit/Recurring/TrialDocumentConsumer.cs index 332bee612..9e9f69fda 100644 --- a/IRaCIS.Core.Application/MassTransit/Recurring/TrialDocumentConsumer.cs +++ b/IRaCIS.Core.Application/MassTransit/Recurring/TrialDocumentConsumer.cs @@ -54,9 +54,16 @@ namespace IRaCIS.Core.Application.MassTransit.Recurring var isEn_US = CultureInfo.CurrentCulture.Name == StaticData.CultureInfo.en_US; var trialDocQuery = from trialDoc in _trialDocumentRepository.AsQueryable(true) - join trialUser in _trialIdentityUserRepository.AsQueryable() on trialDoc.TrialId equals trialUser.TrialId + + join trialIdentityUser in _trialIdentityUserRepository.AsQueryable() on trialDoc.TrialId equals trialIdentityUser.TrialId + from identityUser in _identityUserRepository.AsQueryable(false) + .Where(t => t.Status == UserStateEnum.Enable && + t.Id == trialIdentityUser.IdentityUserId && + t.UserRoleList.Where(t => t.IsUserRoleDisabled == false) + .Any(t => trialDoc.NeedConfirmedUserTypeList.AsQueryable().Any(c => c.NeedConfirmUserTypeId == t.UserTypeId))) + join confirm in _trialDocConfirmedUserRepository.Where() on - new { trialUser.IdentityUserId, TrialDocumentId = trialDoc.Id } equals new { IdentityUserId = confirm.ConfirmUserId, confirm.TrialDocumentId } into cc + new { trialIdentityUser.IdentityUserId, TrialDocumentId = trialDoc.Id } equals new { IdentityUserId = confirm.ConfirmUserId, confirm.TrialDocumentId } into cc from confirm in cc.DefaultIfEmpty() select new TrialSignDocView() @@ -77,16 +84,16 @@ namespace IRaCIS.Core.Application.MassTransit.Recurring UpdateTime = trialDoc.UpdateTime, SignViewMinimumMinutes = trialDoc.SignViewMinimumMinutes, //IsConfirmed = confirm.ConfirmTime != null, - ConfirmUserId = confirm.ConfirmUserId, + ConfirmUserId = identityUser.Id, ConfirmTime = confirm.ConfirmTime, - RealName = trialUser.IdentityUser.FullName, - UserName = trialUser.IdentityUser.UserName, - UserCreateTime= trialUser.CreateTime, - IdentityUserTypeList = trialUser.TrialUserRoleList.Select(t => t.UserRole.UserTypeRole.UserTypeShortName).ToList(), + RealName = trialIdentityUser.IdentityUser.FullName, + UserName = trialIdentityUser.IdentityUser.UserName, + UserCreateTime= trialIdentityUser.CreateTime, + IdentityUserTypeList = trialIdentityUser.TrialUserRoleList.Select(t => t.UserRole.UserTypeRole.UserTypeShortName).ToList(), DocNeedSignUserTypeList = trialDoc.NeedConfirmedUserTypeList.Select(t => t.UserTypeRole.UserTypeShortName).ToList(), }; - var datalist = await trialDocQuery.IgnoreQueryFilters().Where(t => t.IsDeleted == false && t.ConfirmTime == null) + var datalist = await trialDocQuery.IgnoreQueryFilters().Where(t => t.IsDeleted == false && t.ConfirmTime == null&&t.ConfirmTime==null) .ToListAsync(); datalist = datalist.Where(x => x.SuggestFinishTime != null && x.SuggestFinishTime.Value.Date == DateTime.Now.Date) .ToList();