From fd2d92448a1fa0031daa0e05c739109093acdc3f Mon Sep 17 00:00:00 2001
From: whyczh <hzjl@qq.com>
Date: 星期五, 14 五月 2021 10:24:44 +0800
Subject: [PATCH] 用户角色接口调整

---
 src/main/java/com/whyc/service/UserRoleService.java |   61 ++++++++++++++++++++++++++++--
 1 files changed, 57 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/whyc/service/UserRoleService.java b/src/main/java/com/whyc/service/UserRoleService.java
index 69541ee..2a17ae3 100644
--- a/src/main/java/com/whyc/service/UserRoleService.java
+++ b/src/main/java/com/whyc/service/UserRoleService.java
@@ -1,5 +1,10 @@
 package com.whyc.service;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
+import com.whyc.dto.Response;
+import com.whyc.mapper.UserMapper;
 import com.whyc.mapper.UserRoleMapper;
 import com.whyc.pojo.Role;
 import com.whyc.pojo.User;
@@ -8,10 +13,7 @@
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
-import java.util.HashMap;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 /**
  *  鐢ㄦ埛瀵瑰簲瑙掕壊
@@ -21,6 +23,8 @@
 
     @Resource
     private UserRoleMapper mapper;
+    @Resource
+    private UserMapper userMapper;
 
     public List<User> getUserWithNoRole() {
         return mapper.getUserWithNoRole();
@@ -59,4 +63,53 @@
     public boolean bindingUserWithRoleBatch(List<UserRole> userRoles) {
         return mapper.insertBatchSomeColumn(userRoles)==userRoles.size();
     }
+
+    //缁戝畾鐢ㄦ埛
+    public Response getUsersByRoleId(int roleId){
+        List<User> userList = userMapper.selectList(null);
+        QueryWrapper<UserRole> queryWrapper= new QueryWrapper();
+        queryWrapper.eq("role_id",roleId);
+        List<UserRole> userRoleList = mapper.selectList(queryWrapper);
+        for (UserRole ur:userRoleList) {
+            for (User u:userList) {
+                if(ur.getUserId().equals(u.getId())){
+                    u.setSelected(true);
+                    break;
+                }
+            }
+        }
+        return new Response().set(1,userList);
+
+    }
+
+    public Response updateRoleUser(int roleId,int[] userIds){
+        QueryWrapper<UserRole> queryWrapper = new QueryWrapper<UserRole>().eq("role_id",roleId);
+        mapper.delete(queryWrapper);
+        List<UserRole> list = new ArrayList<>();
+        for (int userId:userIds) {
+            UserRole userRole = new UserRole();
+            userRole.setUserId(userId);
+            userRole.setRoleId(roleId);
+            list.add(userRole);
+        }
+        if (mapper.insertBatchSomeColumn(list)==list.size()){
+            return new Response().setMsg(1,"鏇存柊鎴愬姛");
+        }else {
+            return new Response().setMsg(0,"鏇存柊澶辫触");
+        }
+
+    }
+    public Response<PageInfo<User>> getUserByRoleId(int pageNum, int pageSize, int roleId){
+        PageHelper.startPage(pageNum,pageSize);
+        QueryWrapper queryWrapper = new QueryWrapper();
+        queryWrapper.select("user_id").eq("role_id",roleId);
+        List<UserRole> userIds = mapper.selectList(queryWrapper);
+        List<User> userList = new ArrayList<>();
+        for (UserRole userRole:userIds) {
+            User user = userMapper.selectById(userRole.getUserId());
+            userList.add(user);
+        }
+        PageInfo<User> pageInfo = new PageInfo<>(userList);
+        return new Response<PageInfo<User>>().set(1,pageInfo);
+    }
 }

--
Gitblit v1.9.1