diff --git a/backend/src/main/java/io/dataease/ext/ExtPanelShareMapper.xml b/backend/src/main/java/io/dataease/ext/ExtPanelShareMapper.xml
index 6d777ac368..1399a0a9d2 100644
--- a/backend/src/main/java/io/dataease/ext/ExtPanelShareMapper.xml
+++ b/backend/src/main/java/io/dataease/ext/ExtPanelShareMapper.xml
@@ -41,13 +41,19 @@
left join panel_group g on g.id = s.panel_group_id
left join sys_user u on u.username = IFNULL(s.granter,g.create_by)
where
- ( s.target_id = #{userId} and s.type = 0 ) or
- ( s.target_id = #{deptId} and s.type = 2 ) or
- ( s.target_id in
-
- #{roleId}
-
- and s.type = 1 )
+ ( s.target_id = #{userId} and s.type = 0 )
+
+ or ( s.target_id = #{deptId} and s.type = 2 )
+
+
+ or
+ ( s.target_id in
+
+ #{roleId}
+
+ and s.type = 1 )
+
+
order by s.create_time desc
diff --git a/backend/src/main/java/io/dataease/service/panel/ShareService.java b/backend/src/main/java/io/dataease/service/panel/ShareService.java
index 66935e481a..044832818f 100644
--- a/backend/src/main/java/io/dataease/service/panel/ShareService.java
+++ b/backend/src/main/java/io/dataease/service/panel/ShareService.java
@@ -349,7 +349,7 @@ public class ShareService {
Map param = new HashMap<>();
param.put("userId", userId);
param.put("deptId", deptId);
- param.put("roleIds", roleIds);
+ param.put("roleIds", CollectionUtils.isNotEmpty(roleIds)? roleIds: null);
List datas = extPanelShareMapper.query(param);
List dtoLists = datas.stream().map(po -> BeanUtils.copyBean(new PanelShareDto(), po))