From 5d2cfd4562f74496a5263db3451c1e78ff53aead Mon Sep 17 00:00:00 2001
From: heheng <475597332@qq.com>
Date: 星期四, 27 三月 2025 08:44:16 +0800
Subject: [PATCH] 单据增加查询返回字段

---
 assess-framework/src/main/java/com/gkhy/assess/framework/shiro/realm/UserRealm.java |   26 +++++++++++++++++++-------
 1 files changed, 19 insertions(+), 7 deletions(-)

diff --git a/assess-framework/src/main/java/com/gkhy/assess/framework/shiro/realm/UserRealm.java b/assess-framework/src/main/java/com/gkhy/assess/framework/shiro/realm/UserRealm.java
index 18ba914..5a55de1 100644
--- a/assess-framework/src/main/java/com/gkhy/assess/framework/shiro/realm/UserRealm.java
+++ b/assess-framework/src/main/java/com/gkhy/assess/framework/shiro/realm/UserRealm.java
@@ -1,8 +1,11 @@
 package com.gkhy.assess.framework.shiro.realm;
 
+import com.gkhy.assess.common.domain.CustomerUsernamePasswordToken;
+import com.gkhy.assess.common.enums.UserIdentityEnum;
 import com.gkhy.assess.common.utils.RequestUtil;
 import com.gkhy.assess.common.utils.SpringContextUtils;
-import com.gkhy.assess.framework.shiro.JwtToken;
+import com.gkhy.assess.common.domain.JwtToken;
+import com.gkhy.assess.common.utils.StringUtils;
 import com.gkhy.assess.framework.shiro.service.SysLoginService;
 import com.gkhy.assess.system.domain.SysUser;
 import lombok.extern.slf4j.Slf4j;
@@ -37,8 +40,17 @@
         Set<String> roles=new HashSet<>();
         Set<String> menus=new HashSet<>();
         SimpleAuthorizationInfo info=new SimpleAuthorizationInfo();
-        info.addRole("admin");
-        info.addStringPermission("*:*:*");
+        if(sysUser.getIdentity().equals(UserIdentityEnum.MONITOR.getCode())){
+            info.addRole("monitor");
+            info.addStringPermission("system:assess:monitor");
+        }else if(sysUser.getIdentity().equals(UserIdentityEnum.AGENCY.getCode())){
+            info.addRole("agency");
+            info.addStringPermission("system:assess:agency");
+        }else{
+            info.addRole("expert");
+            info.addStringPermission("system:assess:expert");
+        }
+
         return info;
     }
 
@@ -50,11 +62,11 @@
      */
     @Override
     protected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken authenticationToken) throws AuthenticationException {
+        HttpServletRequest req = SpringContextUtils.getHttpServletRequest();
         SysUser sysUser=null;
         if(authenticationToken instanceof JwtToken){
             String token= (String) authenticationToken.getCredentials();
-            if(token==null){
-                HttpServletRequest req = SpringContextUtils.getHttpServletRequest();
+            if(StringUtils.isBlank(token)){
                 log.info("————————身份认证失败——————————IP地址:  "+ RequestUtil.getRequestIp(req) +",URL:"+req.getRequestURI());
                 throw new AuthenticationException("token为空!");
             }
@@ -63,10 +75,10 @@
                 return new SimpleAuthenticationInfo(sysUser,token,this.getName());
             }
         }else{
-            UsernamePasswordToken upToken = (UsernamePasswordToken) authenticationToken;
+            CustomerUsernamePasswordToken upToken = (CustomerUsernamePasswordToken) authenticationToken;
             String username = upToken.getUsername();
             String password=new String(upToken.getPassword());
-            sysUser=sysLoginService.login(username,password);
+            sysUser=sysLoginService.login(username,password,upToken.getIdentity());
             if(sysUser!=null){
                 return new SimpleAuthenticationInfo(sysUser,password,this.getName());
             }

--
Gitblit v1.9.2