From 548494822af2240bf010d4a8e482eb63692003aa Mon Sep 17 00:00:00 2001
From: wcy <761646706@qq.com>
Date: Sat, 28 Sep 2024 18:15:27 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=AF=86=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../java/com/bonus/sgzb/system/api/domain/SysUser.java | 2 +-
.../java/com/bonus/sgzb/auth/service/SysLoginService.java | 7 +++++++
.../bonus/sgzb/system/controller/SysUserController.java | 1 +
.../src/main/resources/mapper/system/SysUserMapper.xml | 3 +++
4 files changed, 12 insertions(+), 1 deletion(-)
diff --git a/sgzb-api/sgzb-api-system/src/main/java/com/bonus/sgzb/system/api/domain/SysUser.java b/sgzb-api/sgzb-api-system/src/main/java/com/bonus/sgzb/system/api/domain/SysUser.java
index 4b0d841..5e1cd43 100644
--- a/sgzb-api/sgzb-api-system/src/main/java/com/bonus/sgzb/system/api/domain/SysUser.java
+++ b/sgzb-api/sgzb-api-system/src/main/java/com/bonus/sgzb/system/api/domain/SysUser.java
@@ -57,7 +57,7 @@ public class SysUser extends BaseEntity
private String avatar;
/** 密码 */
- @JsonIgnore
+// @JsonIgnore
private transient String password;
/** 帐号状态(0正常 1停用) */
diff --git a/sgzb-auth/src/main/java/com/bonus/sgzb/auth/service/SysLoginService.java b/sgzb-auth/src/main/java/com/bonus/sgzb/auth/service/SysLoginService.java
index 9ba88b7..0537c46 100644
--- a/sgzb-auth/src/main/java/com/bonus/sgzb/auth/service/SysLoginService.java
+++ b/sgzb-auth/src/main/java/com/bonus/sgzb/auth/service/SysLoginService.java
@@ -93,6 +93,13 @@ public class SysLoginService {
throw new ServiceException("对不起,您的账号:" + username + " 已停用");
}
passwordService.validate(user, password);
+
+ // 检查用户是否需要更改初始密码
+ if (user.getForceChangePwd().equals(1)) {
+ recordLogService.recordLogininfor(username, Constants.LOGIN_FAIL, "请先修改初始密码");
+ throw new ServiceException("请先修改初始密码");
+ }
+
recordLogService.recordLogininfor(username, Constants.LOGIN_SUCCESS, "登录成功");
return userInfo;
}
diff --git a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/controller/SysUserController.java b/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/controller/SysUserController.java
index 9b132af..d335006 100644
--- a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/controller/SysUserController.java
+++ b/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/controller/SysUserController.java
@@ -198,6 +198,7 @@ public class SysUserController extends BaseController {
ajax.put("posts", postService.selectPostAll());
if (StringUtils.isNotNull(userId)) {
SysUser sysUser = userService.selectUserById(userId);
+ sysUser.setPassword(null);
ajax.put(AjaxResult.DATA_TAG, sysUser);
ajax.put("postIds", postService.selectPostListByUserId(userId));
ajax.put("roleIds", sysUser.getRoles().stream().map(SysRole::getRoleId).collect(Collectors.toList()));
diff --git a/sgzb-modules/sgzb-system/src/main/resources/mapper/system/SysUserMapper.xml b/sgzb-modules/sgzb-system/src/main/resources/mapper/system/SysUserMapper.xml
index d745955..707624c 100644
--- a/sgzb-modules/sgzb-system/src/main/resources/mapper/system/SysUserMapper.xml
+++ b/sgzb-modules/sgzb-system/src/main/resources/mapper/system/SysUserMapper.xml
@@ -196,6 +196,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
create_by,
remark,
company_id,
+ force_change_pwd,
create_time
)values(
#{userId},
@@ -211,6 +212,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
#{createBy},
#{remark},
#{companyId},
+ 1,
sysdate()
)
@@ -231,6 +233,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
login_date = #{loginDate},
update_by = #{updateBy},
remark = #{remark},
+ force_change_pwd = 1,
update_time = sysdate()
where user_id = #{userId}