diff --git a/remi-sys/remi-sys-server/src/main/java/ai/remi/sys/server/service/UserService.java b/remi-sys/remi-sys-server/src/main/java/ai/remi/sys/server/service/UserService.java index cbb325f..0652bf8 100644 --- a/remi-sys/remi-sys-server/src/main/java/ai/remi/sys/server/service/UserService.java +++ b/remi-sys/remi-sys-server/src/main/java/ai/remi/sys/server/service/UserService.java @@ -16,4 +16,6 @@ public interface UserService extends IService { UserVO getUserById(String id); User login(String username, String password); + + boolean updatePwd(String userId, String nowPassword, String newPassword); } diff --git a/remi-sys/remi-sys-server/src/main/java/ai/remi/sys/server/service/impl/UserServiceImpl.java b/remi-sys/remi-sys-server/src/main/java/ai/remi/sys/server/service/impl/UserServiceImpl.java index b42a2bb..a5b9db3 100644 --- a/remi-sys/remi-sys-server/src/main/java/ai/remi/sys/server/service/impl/UserServiceImpl.java +++ b/remi-sys/remi-sys-server/src/main/java/ai/remi/sys/server/service/impl/UserServiceImpl.java @@ -1,15 +1,11 @@ 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.util.bean.BeanCopyUtils; import ai.remi.comm.util.collection.CollectionUtils; import ai.remi.comm.util.object.ObjectUtils; 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.vo.AppMenuVO; 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.infra.mapper.MenuMapper; 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 javax.annotation.Resource; @@ -94,6 +94,16 @@ public class UserServiceImpl extends ServiceImpl implements Us 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 getUserMenus(List userRoles) { List list = new ArrayList<>(); // 获取用户所有的菜单 diff --git a/remi-sys/remi-sys-web/src/main/java/ai/remi/sys/web/controller/UserController.java b/remi-sys/remi-sys-web/src/main/java/ai/remi/sys/web/controller/UserController.java index 82a65ea..c551a39 100644 --- a/remi-sys/remi-sys-web/src/main/java/ai/remi/sys/web/controller/UserController.java +++ b/remi-sys/remi-sys-web/src/main/java/ai/remi/sys/web/controller/UserController.java @@ -1,9 +1,6 @@ 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.ResultBean; 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.UserPostService; 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.tags.Tag; import org.springframework.transaction.annotation.Transactional; @@ -153,6 +153,22 @@ public class UserController { return ResultBean.success(userService.save(user)); } + /** + * 更新密码 + * + * @return 修改结果 + */ + @PutMapping("/updatePwd") + @Operation(summary = "更新密码") + @LogRecord(content = "修改用户密码", businessType = BusinessType.UPDATE) + @Transactional(rollbackFor = Exception.class, transactionManager = "transactionManager") + public ResultBean 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)); } - }