feat:实现用户密码修改接口

This commit is contained in:
dianjiu
2024-08-31 20:44:37 +08:00
parent 4c6ec40ba9
commit 73ec411229
3 changed files with 36 additions and 9 deletions

View File

@@ -16,4 +16,6 @@ public interface UserService extends IService<User> {
UserVO getUserById(String id); UserVO getUserById(String id);
User login(String username, String password); User login(String username, String password);
boolean updatePwd(String userId, String nowPassword, String newPassword);
} }

View File

@@ -1,15 +1,11 @@
package ai.remi.sys.server.service.impl; package ai.remi.sys.server.service.impl;
import ai.remi.sys.domain.entity.*;
import ai.remi.sys.server.service.*;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import ai.remi.comm.domain.tree.TreeBuild; import ai.remi.comm.domain.tree.TreeBuild;
import ai.remi.comm.util.bean.BeanCopyUtils; import ai.remi.comm.util.bean.BeanCopyUtils;
import ai.remi.comm.util.collection.CollectionUtils; import ai.remi.comm.util.collection.CollectionUtils;
import ai.remi.comm.util.object.ObjectUtils; import ai.remi.comm.util.object.ObjectUtils;
import ai.remi.sys.domain.converter.RoleConverter; import ai.remi.sys.domain.converter.RoleConverter;
import ai.remi.sys.domain.entity.*;
import ai.remi.sys.domain.tree.MenuTree; import ai.remi.sys.domain.tree.MenuTree;
import ai.remi.sys.domain.vo.AppMenuVO; import ai.remi.sys.domain.vo.AppMenuVO;
import ai.remi.sys.domain.vo.ConfigVO; import ai.remi.sys.domain.vo.ConfigVO;
@@ -17,6 +13,10 @@ import ai.remi.sys.domain.vo.RoleVO;
import ai.remi.sys.domain.vo.UserVO; import ai.remi.sys.domain.vo.UserVO;
import ai.remi.sys.infra.mapper.MenuMapper; import ai.remi.sys.infra.mapper.MenuMapper;
import ai.remi.sys.infra.mapper.UserMapper; import ai.remi.sys.infra.mapper.UserMapper;
import ai.remi.sys.server.service.*;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
@@ -94,6 +94,16 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
return user; return user;
} }
@Override
public boolean updatePwd(String userId, String nowPassword, String newPassword) {
User user = userMapper.selectById(userId);
if (user == null ||!user.getPassword().equals(nowPassword)) {
return false;
}
user.setPassword(newPassword);
return userMapper.updateById(user) > 0;
}
private List<AppMenuVO> getUserMenus(List<RoleVO> userRoles) { private List<AppMenuVO> getUserMenus(List<RoleVO> userRoles) {
List<AppMenuVO> list = new ArrayList<>(); List<AppMenuVO> list = new ArrayList<>();
// 获取用户所有的菜单 // 获取用户所有的菜单

View File

@@ -1,9 +1,6 @@
package ai.remi.sys.web.controller; package ai.remi.sys.web.controller;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import ai.remi.comm.core.result.PagerBean; import ai.remi.comm.core.result.PagerBean;
import ai.remi.comm.core.result.ResultBean; import ai.remi.comm.core.result.ResultBean;
import ai.remi.comm.domain.query.PageQuery; import ai.remi.comm.domain.query.PageQuery;
@@ -27,6 +24,9 @@ import ai.remi.sys.infra.mapper.UserMapper;
import ai.remi.sys.server.service.DeptUserService; import ai.remi.sys.server.service.DeptUserService;
import ai.remi.sys.server.service.UserPostService; import ai.remi.sys.server.service.UserPostService;
import ai.remi.sys.server.service.UserService; import ai.remi.sys.server.service.UserService;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
@@ -153,6 +153,22 @@ public class UserController {
return ResultBean.success(userService.save(user)); return ResultBean.success(userService.save(user));
} }
/**
* 更新密码
*
* @return 修改结果
*/
@PutMapping("/updatePwd")
@Operation(summary = "更新密码")
@LogRecord(content = "修改用户密码", businessType = BusinessType.UPDATE)
@Transactional(rollbackFor = Exception.class, transactionManager = "transactionManager")
public ResultBean<Boolean> updatePwd(@RequestParam("userId") String userId,
@RequestParam("nowPassword") String nowPassword,
@RequestParam("newPassword") String newPassword) {
//执行数据更新
return ResultBean.success(userService.updatePwd(userId, nowPassword, newPassword));
}
/** /**
* 修改数据 * 修改数据
* *
@@ -203,6 +219,5 @@ public class UserController {
} }
return ResultBean.success(userService.removeByIds(ids)); return ResultBean.success(userService.removeByIds(ids));
} }
} }