xf 1 year ago
parent
commit
4e4f6d72ec

+ 6 - 4
src/Hotline.Repository.SqlSugar/DataPermissions/DataPermissionFilterBuilder.cs

@@ -52,15 +52,17 @@ public class DataPermissionFilterBuilder : IDataPermissionFilterBuilder, IScopeD
 
     public Expression<Func<TEntity, bool>> BuildWithFlowHandleFilter<TEntity>() where TEntity : class, IEntity<string>, IDataPermission, IWorkflow, new()
     {
+        var userId = _sessionContext.RequiredUserId;
+        var orgId = _sessionContext.RequiredOrgId;
         var roles = _sessionContext.Roles;
         if (roles != null && roles.Contains(RoleSeedData.AdminRole))
             return d => true;
 
         return d =>
-            (SqlFunc.JsonArrayAny(d.FlowedUserIds, _sessionContext.RequiredUserId) ||
-             SqlFunc.JsonArrayAny(d.FlowedOrgIds, _sessionContext.RequiredOrgId)) &&
-            (SqlFunc.JsonListObjectAny(d.HandlerUsers, "Key", _sessionContext.RequiredUserId) ||
-             SqlFunc.JsonListObjectAny(d.HandlerOrgs, "Key", _sessionContext.RequiredOrgId));
+            (SqlFunc.JsonArrayAny(d.FlowedUserIds, userId) ||
+             SqlFunc.JsonArrayAny(d.FlowedOrgIds, orgId)) &&
+            (SqlFunc.JsonListObjectAny(d.HandlerUsers, "Key", userId) ||
+             SqlFunc.JsonListObjectAny(d.HandlerOrgs, "Key", orgId));
     }
 
     public Expression<Func<TEntity, Workflow, bool>> BuildIncludeFlowData1<TEntity>() where TEntity : class, IEntity<string>, IDataPermission, IWorkflow, new()