From 2f640b1038fa331954f78ed1f4317212cf5bb34d Mon Sep 17 00:00:00 2001 From: chenlu <1320612696@qq.com> Date: 星期五, 07 六月 2024 16:56:06 +0800 Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/ERP_override --- north-glass-erp/src/main/java/com/example/erp/service/userInfo/UserService.java | 112 ++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 104 insertions(+), 8 deletions(-) diff --git a/north-glass-erp/src/main/java/com/example/erp/service/userInfo/UserService.java b/north-glass-erp/src/main/java/com/example/erp/service/userInfo/UserService.java index 6bcfea4..9761456 100644 --- a/north-glass-erp/src/main/java/com/example/erp/service/userInfo/UserService.java +++ b/north-glass-erp/src/main/java/com/example/erp/service/userInfo/UserService.java @@ -1,27 +1,44 @@ package com.example.erp.service.userInfo; +import cn.dev33.satoken.stp.StpUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.dynamic.datasource.annotation.DS; -import com.example.erp.common.CacheUtil; -import com.example.erp.common.Result; -import com.example.erp.entity.userInfo.User; -import com.example.erp.mapper.userInfo.UserMapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.example.erp.controller.dto.UserDTO; +import com.example.erp.entity.userInfo.PermissionBasic; +import com.example.erp.entity.userInfo.Role; +import com.example.erp.entity.userInfo.SysError; +import com.example.erp.entity.userInfo.User; +import com.example.erp.mapper.userInfo.*; import com.example.erp.tools.TokenTools; -import org.apache.ibatis.jdbc.Null; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.Cacheable; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.transaction.interceptor.TransactionAspectSupport; +import java.util.Collections; +import java.util.HashMap; import java.util.List; +import java.util.Map; @Service @DS("user_info") public class UserService { - @Autowired - private UserMapper userMapper; + private final UserMapper userMapper; + private final RoleMapper roleMapper; + private final UserRoleMapper userRoleMapper; + + private final PermissionRoleMapper permissionRoleMapper; + + public UserService(UserMapper userMapper, RoleMapper roleMapper, PermissionRoleMapper permissionRoleMapper, UserRoleMapper userRoleMapper) { + this.userMapper = userMapper; + this.roleMapper = roleMapper; + this.permissionRoleMapper = permissionRoleMapper; + this.userRoleMapper = userRoleMapper; + } @Cacheable(value="users", key="#userDTO.getUserId()") @@ -54,7 +71,7 @@ return userMapper.getUserByID(userId); } - + @Transactional public User register(User user) { User returnUser = new User(); if(userMapper.register(user)){ @@ -64,5 +81,84 @@ } return returnUser; } + + @Transactional + public Boolean updatePassWord(Map<String,Object> object) { + boolean saveState = false; + int userId =0; + String oldPassWord = ""; + String passWord = ""; + if (object.get("userId") != null) { + userId = Integer.parseInt(object.get("userId").toString()); + } + if (object.get("oldPassword") != null) { + oldPassWord = object.get("oldPassword").toString(); + } + if (object.get("password") != null) { + passWord = object.get("password").toString(); + } + + User user =userMapper.findOnePassWord(userId,oldPassWord); + if (user!=null){ + if (userMapper.updatePassWordById(userId,passWord)){ + saveState = true; + } + } + return saveState; + + } + + /*----------------鏂扮増鏈櫥闄�*/ + public UserDTO doLogin(UserDTO userDTO) { + User user = userMapper.selectOne(new QueryWrapper<User>(). + eq("login_name", userDTO.getUserId()).eq("password", userDTO.getPass())); + if(user!=null){ + //妫�鏌ユ槸璁╂湁鐧诲綍锛屾湁鐧诲綍鐩存帴閫�鍑� + StpUtil.logout(user.getId()); + //閲嶆柊杩涜鐧诲綍 + StpUtil.login(user.getId()); + userDTO.setPass(null); + userDTO.setId(user.getId()); + userDTO.setUserName(user.getUserName()); + userDTO.setToken(StpUtil.getTokenValue()); + Boolean userIsAdmin= userRoleMapper.getUserIsAdmin(user.getId()); + userDTO.setPermissions(permissionRoleMapper.getUserEditPermission(user.getId(),userIsAdmin)); + return userDTO; + }else{ + return null; + } + } + + public Boolean isLogin() { + // 杩斿洖褰撳墠鐢ㄦ埛鏄惁鐧诲綍 + return StpUtil.isLogin(); + } + + public Boolean logout() { + StpUtil.logout(); + return true; + } + + public Map<String,List<Object>> findAll() { + List<User> users = userMapper.findAll(); + users.forEach(user -> { + user.setPassword(null); + }); + Map<String,List<Object>> map = new HashMap<>(); + + map.put("users", Collections.singletonList(users)); + map.put("role", Collections.singletonList( + roleMapper.selectList( + new QueryWrapper<Role>() + .ne("role","admin") + ) + )); + return map; + } + + public Boolean userDelete(Integer id) { + + return userMapper.userDelete(id); + } } -- Gitblit v1.8.0