Browse Source

修改密码弹窗

lizhenhao 2 năm trước cách đây
mục cha
commit
0b9a4ab5ee

+ 15 - 0
jeeplus-platform/jeeplus-admin/src/main/java/com/jeeplus/sys/controller/UserController.java

@@ -497,6 +497,7 @@ public class UserController {
             if ( SecurityUtils.validatePassword ( oldPassword, userDTO.getPassword ( ) ) ) {
                 User user = new User ( userDTO.getId ( ) );
                 user.setPassword ( SecurityUtils.encryptPassword ( newPassword ) );
+                user.setUpPassword("1"); // 密码修改状态改为”已修改“
                 userService.updateById ( user );
                 UserUtils.deleteCache ( userDTO );
                 return ResponseEntity.ok ( "修改密码成功!" );
@@ -726,4 +727,18 @@ public class UserController {
         userDTO.setRoleList(userDTO.getRoleDTOList());
         return ResponseEntity.ok(userDTO);
     }
+
+    /**
+     * 获取当前用户是否已经修改过密码
+     * @return
+     */
+    @ApiLog("获取当前用户是否已经修改过密码")
+    @GetMapping("isUpdatePassword")
+    @ApiOperation(value = "获取当前用户是否已经修改过密码")
+    public ResponseEntity<Boolean> isUpdatePassword() {
+        // 返回结果  true为以修改  false为未修改
+        UserDTO userDTO = UserUtils.getCurrentUserDTO();
+        Boolean updatePassword = userService.isUpdatePassword(userDTO.getId());
+        return ResponseEntity.ok(updatePassword);
+    }
 }

+ 5 - 0
jeeplus-platform/jeeplus-admin/src/main/java/com/jeeplus/sys/domain/User.java

@@ -112,6 +112,11 @@ public class User extends BaseEntity {
     private Boolean isAdmin;
 
     /**
+     * 是否修改过密码,1为是
+     */
+    private String upPassword;
+
+    /**
      * 构造函数
      */
     public User (String id) {

+ 7 - 0
jeeplus-platform/jeeplus-admin/src/main/java/com/jeeplus/sys/mapper/UserMapper.java

@@ -164,4 +164,11 @@ public interface UserMapper extends BaseMapper<User> {
      */
     UserDTO getUserByName(String name);
 
+    /**
+     * 判断当前用户是否修改过密码
+     * @param userId
+     * @return
+     */
+    String isUpdatePassword(String userId);
+
 }

+ 4 - 0
jeeplus-platform/jeeplus-admin/src/main/java/com/jeeplus/sys/mapper/xml/UserMapper.xml

@@ -317,4 +317,8 @@
 		where `name` = #{name}
 	</select>
 
+	<select id="isUpdatePassword" resultType="string">
+		select up_password from sys_user where del_flag = '0' and id = #{userId}
+	</select>
+
 </mapper>

+ 12 - 0
jeeplus-platform/jeeplus-admin/src/main/java/com/jeeplus/sys/service/UserService.java

@@ -16,6 +16,7 @@ import com.jeeplus.sys.service.mapstruct.CertWrapper;
 import com.jeeplus.sys.utils.ServletUtils;
 import com.jeeplus.sys.utils.ip.AddressUtils;
 import com.jeeplus.sys.utils.ip.IpUtils;
+import com.sun.org.apache.xpath.internal.operations.Bool;
 import eu.bitwalker.useragentutils.UserAgent;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -436,4 +437,15 @@ public class UserService  extends ServiceImpl<UserMapper, User> {
 	public List<UserDTO> getUserInfoByRoleName(String roleName){
 		return userMapper.getUserInfoByRoleName(roleName);
 	}
+
+	public Boolean isUpdatePassword(String userId) {
+		String updatePassword = userMapper.isUpdatePassword(userId);
+		if (StringUtils.isNotBlank(updatePassword)) {
+			if ("1".equals(updatePassword)) {
+				// 密码已经修改过
+				return true;
+			}
+		}
+		return false;
+	}
 }