From 850a81676893516a4838acf9e5e9d999a2990bb2 Mon Sep 17 00:00:00 2001
From: lSun <15893999301@qq.com>
Date: Thu, 18 Sep 2025 17:20:24 +0800
Subject: [PATCH] =?UTF-8?q?=E7=99=BB=E5=BD=95=E7=B3=BB=E7=BB=9F=E8=B7=AF?=
=?UTF-8?q?=E7=94=B1=E6=9D=83=E9=99=90?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../controller/system/SysLoginController.java | 11 +++++++++
.../common/core/domain/entity/SysUser.java | 11 +++++++++
.../bonus/system/mapper/SysUserMapper.java | 8 +++++++
.../bonus/system/service/ISysUserService.java | 2 ++
.../service/impl/SysUserServiceImpl.java | 12 ++++++++++
.../resources/mapper/system/SysUserMapper.xml | 23 ++++++++++++++++---
6 files changed, 64 insertions(+), 3 deletions(-)
diff --git a/bonus-base/src/main/java/com/bonus/base/controller/system/SysLoginController.java b/bonus-base/src/main/java/com/bonus/base/controller/system/SysLoginController.java
index cff3232..1e29231 100644
--- a/bonus-base/src/main/java/com/bonus/base/controller/system/SysLoginController.java
+++ b/bonus-base/src/main/java/com/bonus/base/controller/system/SysLoginController.java
@@ -4,6 +4,7 @@ import java.util.List;
import java.util.Set;
import com.bonus.common.encryption.Sm4Utils;
+import com.bonus.system.service.ISysUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
@@ -41,6 +42,9 @@ public class SysLoginController
@Autowired
private TokenService tokenService;
+ @Autowired
+ private ISysUserService userService;
+
@PostMapping("/sendPhone")
public AjaxResult sendPhone(@RequestBody LoginBody loginBody) {
@@ -59,15 +63,22 @@ public class SysLoginController
public AjaxResult login(@RequestBody LoginBody loginBody) {
String token;
+ String permissions; //权限字符
+ String username= Sm4Utils.decrypt(loginBody.getUsername()); // 解密
+
AjaxResult ajax = AjaxResult.success();
if("2".equals(loginBody.getLoginType())){
token = loginService.login(loginBody.getUsername(), loginBody.getCode());
+
+ permissions = userService.getPermissions(username,"2");
}else{
token = loginService.login(loginBody.getUsername(), loginBody.getPassword(), loginBody.getCode(),
loginBody.getUuid());
+ permissions = userService.getPermissions(username,"1");
}
// 生成令牌
ajax.put(Constants.TOKEN, token);
+ ajax.put(Constants.JWT_AUTHORITIES, permissions);
return ajax;
}
diff --git a/bonus-common/src/main/java/com/bonus/common/core/domain/entity/SysUser.java b/bonus-common/src/main/java/com/bonus/common/core/domain/entity/SysUser.java
index 4b9db4b..558a6f9 100644
--- a/bonus-common/src/main/java/com/bonus/common/core/domain/entity/SysUser.java
+++ b/bonus-common/src/main/java/com/bonus/common/core/domain/entity/SysUser.java
@@ -21,6 +21,17 @@ public class SysUser extends BaseEntity
{
private static final long serialVersionUID = 1L;
+ /** 权限 默认有大屏权限 1是有后台。0是没有 */
+ private String permissions;
+
+ public String getPermissions() {
+ return permissions;
+ }
+
+ public void setPermissions(String permissions) {
+ this.permissions = permissions;
+ }
+
/** 自增长序号,用于导出 */
@Excel(name = "用户序号", type = Type.EXPORT)
private Integer serialNumber;
diff --git a/bonus-system/src/main/java/com/bonus/system/mapper/SysUserMapper.java b/bonus-system/src/main/java/com/bonus/system/mapper/SysUserMapper.java
index ac33665..512169c 100644
--- a/bonus-system/src/main/java/com/bonus/system/mapper/SysUserMapper.java
+++ b/bonus-system/src/main/java/com/bonus/system/mapper/SysUserMapper.java
@@ -133,4 +133,12 @@ public interface SysUserMapper
*/
String getUserInfo(@Param("phone") String phone);
+
+ /**
+ * 获取权限
+ * @param username
+ * @param number
+ * @return
+ */
+ String getPermissions(@Param("username")String username, @Param("number")String number);
}
diff --git a/bonus-system/src/main/java/com/bonus/system/service/ISysUserService.java b/bonus-system/src/main/java/com/bonus/system/service/ISysUserService.java
index 5784bbb..65185f6 100644
--- a/bonus-system/src/main/java/com/bonus/system/service/ISysUserService.java
+++ b/bonus-system/src/main/java/com/bonus/system/service/ISysUserService.java
@@ -212,4 +212,6 @@ public interface ISysUserService
* @return
*/
SysUser selectUserByPhone(String username);
+
+ String getPermissions(String username, String number);
}
diff --git a/bonus-system/src/main/java/com/bonus/system/service/impl/SysUserServiceImpl.java b/bonus-system/src/main/java/com/bonus/system/service/impl/SysUserServiceImpl.java
index 5baef33..62806e9 100644
--- a/bonus-system/src/main/java/com/bonus/system/service/impl/SysUserServiceImpl.java
+++ b/bonus-system/src/main/java/com/bonus/system/service/impl/SysUserServiceImpl.java
@@ -119,6 +119,18 @@ public class SysUserServiceImpl implements ISysUserService
public SysUser selectUserByPhone(String username) {
return userMapper.selectUserByPhone(username);
}
+
+ /**
+ * 获取权限
+ * @param username
+ * @param number
+ * @return
+ */
+ @Override
+ public String getPermissions(String username, String number) {
+ return userMapper.getPermissions(username,number);
+ }
+
/**
* 通过用户ID查询用户
*
diff --git a/bonus-system/src/main/resources/mapper/system/SysUserMapper.xml b/bonus-system/src/main/resources/mapper/system/SysUserMapper.xml
index 337cca5..afb2a6f 100644
--- a/bonus-system/src/main/resources/mapper/system/SysUserMapper.xml
+++ b/bonus-system/src/main/resources/mapper/system/SysUserMapper.xml
@@ -24,6 +24,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+
@@ -52,7 +53,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
select u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.avatar, u.phonenumber, u.password, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark,
d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.status as dept_status,
- r.role_id, r.role_name, r.role_key, r.role_sort, r.data_scope, r.status as role_status,r.is_admin
+ r.role_id, r.role_name, r.role_key, r.role_sort, r.data_scope, r.status as role_status,r.is_admin,u.permissions
from sys_user u
left join sys_dept d on u.dept_id = d.dept_id
left join sys_user_role ur on u.user_id = ur.user_id
@@ -62,7 +63,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
-
+
+
+
insert into sys_user(
user_id,
dept_id,
@@ -181,6 +195,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
status,
create_by,
remark,
+ permissions,
create_time
)values(
#{userId},
@@ -195,6 +210,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
#{status},
#{createBy},
#{remark},
+ #{permissions},
sysdate()
)
@@ -214,6 +230,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
login_date = #{loginDate},
update_by = #{updateBy},
remark = #{remark},
+ permissions = #{permissions},
update_time = sysdate()
where user_id = #{userId}