From 7c5b7bcc390aad39d55be19fd06d6be78e75ee18 Mon Sep 17 00:00:00 2001 From: Hai Liang Wang Date: Fri, 27 Dec 2019 15:47:22 +0800 Subject: [PATCH] Release version 5.1.0, fix permission not load in real time --- contact-center/app/pom.xml | 2 +- .../main/java/com/chatopera/cc/proxy/UserProxy.java | 10 ++++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/contact-center/app/pom.xml b/contact-center/app/pom.xml index 21420f4..1360f36 100644 --- a/contact-center/app/pom.xml +++ b/contact-center/app/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.chatopera.cc contact-center - 5.0.0 + 5.1.0 war cskefu 春松客服:多渠道智能客服系统 diff --git a/contact-center/app/src/main/java/com/chatopera/cc/proxy/UserProxy.java b/contact-center/app/src/main/java/com/chatopera/cc/proxy/UserProxy.java index 5688e6b..7abfa2c 100644 --- a/contact-center/app/src/main/java/com/chatopera/cc/proxy/UserProxy.java +++ b/contact-center/app/src/main/java/com/chatopera/cc/proxy/UserProxy.java @@ -478,18 +478,20 @@ public class UserProxy { public Predicate toPredicate( Root root, CriteriaQuery query, CriteriaBuilder cb) { - List list = new ArrayList(); + List criteria = new ArrayList(); if (user.getRoleList() != null && user.getRoleList().size() > 0) { for (Role role : user.getRoleList()) { - list.add(cb.equal(root.get("roleid").as(String.class), role.getId())); + criteria.add(cb.equal(root.get("roleid").as(String.class), role.getId())); } } - Predicate[] p = new Predicate[list.size()]; + Predicate[] p = new Predicate[criteria.size()]; cb.and(cb.equal(root.get("orgi").as(String.class), user.getOrgi())); - return cb.or(list.toArray(p)); + return cb.or(criteria.toArray(p)); } }); + // clear previous auth map values, ensure the changes are token effect in real time. + user.getRoleAuthMap().clear(); if (roleAuthList != null) { for (RoleAuth roleAuth : roleAuthList) { user.getRoleAuthMap().put(roleAuth.getDicvalue(), true); -- GitLab