|
@@ -7,6 +7,7 @@ using Hotline.SeedData;
|
|
|
using Hotline.Settings;
|
|
|
using Hotline.Share.Dtos.FlowEngine;
|
|
|
using Hotline.Share.Enums.FlowEngine;
|
|
|
+using Hotline.Share.Enums.Identity;
|
|
|
using Hotline.Users;
|
|
|
using SqlSugar;
|
|
|
using XF.Domain.Authentications;
|
|
@@ -179,17 +180,20 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
|
|
|
{
|
|
|
case EHandlerType.AssignUser:
|
|
|
var users = await _userRepository.QueryAsync(d =>
|
|
|
+ !d.IsDeleted &&
|
|
|
nextStepDefine.HandlerClassifies.Select(d => d.Id).Contains(d.Id));
|
|
|
options.NextSteps = users.Select(d => new KeyValuePair<string, string>(d.Id, d.Name)).ToList();
|
|
|
break;
|
|
|
case EHandlerType.AssignOrg:
|
|
|
var orgs = await _organizeRepository.QueryAsync(d =>
|
|
|
+ d.IsEnable &&
|
|
|
nextStepDefine.HandlerClassifies.Select(d => d.Id).Contains(d.OrgCode));
|
|
|
options.NextSteps = orgs.Select(d => new KeyValuePair<string, string>(d.OrgCode, d.OrgName))
|
|
|
.ToList();
|
|
|
break;
|
|
|
case EHandlerType.Role:
|
|
|
- var roles = await _roleRepository.Queryable().Includes(d => d.Accounts, d => d.User)
|
|
|
+ var roles = await _roleRepository.Queryable()
|
|
|
+ .Includes(d => d.Accounts.Where(x => !x.IsDeleted && x.Status == EAccountStatus.Normal).ToList(), x => x.User)
|
|
|
.Where(d => nextStepDefine.HandlerClassifies.Select(d => d.Id).Contains(d.Name))
|
|
|
.ToListAsync();
|
|
|
var users1 = roles.SelectMany(d => d.Accounts).Select(d => d.User);
|