Browse Source

feat: [登录] 返回第一个url

master
memorylkf 2 months ago
parent
commit
99d318734f
5 changed files with 42 additions and 6 deletions
  1. +13
    -0
      hxhq-api/hxhq-api-system/src/main/java/com/hxhq/system/api/model/LoginUser.java
  2. +1
    -0
      hxhq-common/hxhq-common-security/src/main/java/com/hxhq/common/security/service/TokenService.java
  3. +4
    -6
      hxhq-modules/hxhq-system/src/main/java/com/hxhq/system/controller/SysUserController.java
  4. +7
    -0
      hxhq-modules/hxhq-system/src/main/java/com/hxhq/system/service/ISysMenuService.java
  5. +17
    -0
      hxhq-modules/hxhq-system/src/main/java/com/hxhq/system/service/impl/SysMenuServiceImpl.java

+ 13
- 0
hxhq-api/hxhq-api-system/src/main/java/com/hxhq/system/api/model/LoginUser.java View File

@ -58,6 +58,11 @@ public class LoginUser implements Serializable
*/
private SysUser sysUser;
/**
* 默认url
*/
private String defaultUrl;
public String getToken()
{
return token;
@ -147,4 +152,12 @@ public class LoginUser implements Serializable
{
this.sysUser = sysUser;
}
public String getDefaultUrl() {
return defaultUrl;
}
public void setDefaultUrl(String defaultUrl) {
this.defaultUrl = defaultUrl;
}
}

+ 1
- 0
hxhq-common/hxhq-common-security/src/main/java/com/hxhq/common/security/service/TokenService.java View File

@ -74,6 +74,7 @@ public class TokenService
Map<String, Object> rspMap = new HashMap<String, Object>(16);
rspMap.put("access_token", JwtUtils.createToken(claimsMap));
rspMap.put("expires_in", TOKEN_EXPIRE_TIME);
rspMap.put("defaultUrl", loginUser.getDefaultUrl());
return rspMap;
}

+ 4
- 6
hxhq-modules/hxhq-system/src/main/java/com/hxhq/system/controller/SysUserController.java View File

@ -16,7 +16,7 @@ import com.hxhq.business.service.IStudyService;
import com.hxhq.common.core.utils.ServletUtils;
import com.hxhq.system.dto.UserExportDto;
import com.hxhq.system.form.UserSaveForm;
import com.hxhq.system.service.ISysConfigService;
import com.hxhq.system.service.*;
import org.apache.commons.lang3.ArrayUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
@ -47,11 +47,6 @@ import com.hxhq.system.api.domain.SysDept;
import com.hxhq.system.api.domain.SysRole;
import com.hxhq.system.api.domain.SysUser;
import com.hxhq.system.api.model.LoginUser;
import com.hxhq.system.service.ISysDeptService;
import com.hxhq.system.service.ISysPermissionService;
import com.hxhq.system.service.ISysPostService;
import com.hxhq.system.service.ISysRoleService;
import com.hxhq.system.service.ISysUserService;
/**
* 用户信息
@ -84,6 +79,8 @@ public class SysUserController extends BaseController
private TokenService tokenService;
@Autowired
private IStudyService studyService;
@Autowired
private ISysMenuService sysMenuService;
/**
* 获取用户列表
@ -174,6 +171,7 @@ public class SysUserController extends BaseController
sysUserVo.setSysUser(sysUser);
sysUserVo.setRoles(roles);
sysUserVo.setPermissions(permissions);
sysUserVo.setDefaultUrl(sysMenuService.getUserFirstUrl(sysUser.getUserId()));
return R.ok(sysUserVo);
}

+ 7
- 0
hxhq-modules/hxhq-system/src/main/java/com/hxhq/system/service/ISysMenuService.java View File

@ -142,4 +142,11 @@ public interface ISysMenuService
* @return 结果
*/
public boolean checkMenuNameUnique(SysMenu menu);
/**
* 获取第一个子菜单
* @param userId
* @return
*/
public String getUserFirstUrl(Long userId);
}

+ 17
- 0
hxhq-modules/hxhq-system/src/main/java/com/hxhq/system/service/impl/SysMenuServiceImpl.java View File

@ -623,5 +623,22 @@ public class SysMenuServiceImpl implements ISysMenuService
return log;
}
@Override
public String getUserFirstUrl(Long userId) {
List<SysMenu> menus = selectMenuTreeByUserId(userId);
List<String> urlList = new ArrayList<>();
urlList = getChildUrl(urlList,menus);
return urlList.size()>0 ? String.join("/",urlList) : "/user/work";
}
List<String> getChildUrl(List<String> urlList,List<SysMenu> menus){
if(menus!=null && menus.size()>0){
SysMenu firstMenu = menus.get(0);
urlList.add(firstMenu.getPath());
if(!firstMenu.getMenuType().equals("C")){
urlList = getChildUrl(urlList,firstMenu.getChildren());
}
}
return urlList;
}
}

Loading…
Cancel
Save