From c2d8465faade429e8b8f677864b0bc2da763e71c Mon Sep 17 00:00:00 2001 From: Tomas <tomasysh@gmail.com> Date: 星期二, 23 十一月 2021 11:57:55 +0800 Subject: [PATCH] Merge branch 'master' of ssh://192.168.0.10:29418/pcalife/PAM --- pamapi/src/main/java/com/pollex/pam/security/SecurityUtils.java | 24 ++++++++++++++++++++++++ 1 files changed, 24 insertions(+), 0 deletions(-) diff --git a/pamapi/src/main/java/com/pollex/pam/security/SecurityUtils.java b/pamapi/src/main/java/com/pollex/pam/security/SecurityUtils.java index 2e170c5..5e6c77b 100644 --- a/pamapi/src/main/java/com/pollex/pam/security/SecurityUtils.java +++ b/pamapi/src/main/java/com/pollex/pam/security/SecurityUtils.java @@ -1,8 +1,12 @@ package com.pollex.pam.security; import java.util.Arrays; +import java.util.Map; import java.util.Optional; import java.util.stream.Stream; + +import com.pollex.pam.enums.ConsultantDetailEnum; +import com.pollex.pam.enums.CustomerDetailEnum; import org.springframework.security.core.Authentication; import org.springframework.security.core.GrantedAuthority; import org.springframework.security.core.context.SecurityContext; @@ -97,4 +101,24 @@ private static Stream<String> getAuthorities(Authentication authentication) { return authentication.getAuthorities().stream().map(GrantedAuthority::getAuthority); } + + public static String getAgentNo() { + Map<String, String> userDetails = getCurrentUserDetails(); + return userDetails.get(ConsultantDetailEnum.AGENT_NO.getValue()); + } + + // todo , should get id from user details + public static Long getCustomerId() { + Map<String, String> userDetails = getCurrentUserDetails(); + return Long.parseLong(userDetails.get(CustomerDetailEnum.ID.getValue())); + } + + public static Map<String, String> getCurrentUserDetails() { + SecurityContext securityContext = SecurityContextHolder.getContext(); + if(securityContext.getAuthentication()==null || + securityContext.getAuthentication().getDetails() ==null) { + return null; + } + return (Map<String, String>) securityContext.getAuthentication().getDetails(); + } } -- Gitblit v1.8.0