diff --git a/Src/Dlhis.Basic/WorkGrids/Services/Implements/WorkGridService.cs b/Src/Dlhis.Basic/WorkGrids/Services/Implements/WorkGridService.cs
index 1072ded7..0a217deb 100644
--- a/Src/Dlhis.Basic/WorkGrids/Services/Implements/WorkGridService.cs
+++ b/Src/Dlhis.Basic/WorkGrids/Services/Implements/WorkGridService.cs
@@ -1,5 +1,6 @@
using Dlhis.Basic.WorkGrids.Request;
using Dlhis.Basic.WorkGrids.Response;
+using Dlhis.Constants;
using Dlhis.Entity.Basic.Entity;
using Kurisu.AspNetCore.Authentication.Abstractions;
using Kurisu.AspNetCore.DataAccess.Dto;
@@ -66,8 +67,13 @@ public class WorkGridService : IWorkGridService
///
public async Task> GetPageAsync(WorkGridPageRequest request)
{
+ var role = _currentUser.GetRole();
+ var userCode = _currentUser.GetUserClaim(UserClaimConstants.JinkoCode);
+ var isAll = role is "admin" or "tenant-admin";
+
return await _dbContext.Queryable()
.LeftJoin((x, ga) => x.LeaderUserCode == ga.Code)
+ .WhereIF(!isAll, x => x.LeaderUserCode == userCode)
.Select((x, ga) => new WorkGridPageResponse
{
Id = x.Id,