|
@@ -1,7 +1,14 @@
|
|
|
package com.hb.proj.sys.controller;
|
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.List;
|
|
|
import java.util.Map;
|
|
|
|
|
|
+import cn.hutool.core.util.IdUtil;
|
|
|
+import com.hb.proj.model.UserRolePO;
|
|
|
+import com.hb.proj.sys.service.UserRoleService;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
+import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.validation.annotation.Validated;
|
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
@@ -27,7 +34,16 @@ public class UserController {
|
|
|
|
|
|
@Autowired
|
|
|
private UserService userService;
|
|
|
-
|
|
|
+ @Autowired
|
|
|
+ private UserRoleService userRoleService;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 根据用户ID查询所在的角色
|
|
|
+ */
|
|
|
+ @RequestMapping("/queryByRoleUserId")
|
|
|
+ public RespVO<List<String>> queryByRoleUserId(String userId){
|
|
|
+ return RespVOBuilder.ok(userRoleService.queryByUserId(userId));
|
|
|
+ }
|
|
|
/**
|
|
|
* 查询用户列表
|
|
|
* @apiNote 查询用户列表
|
|
@@ -38,7 +54,17 @@ public class UserController {
|
|
|
*/
|
|
|
@RequestMapping("/query")
|
|
|
public RespVO<PageModel<Map<String,Object>>> query(RequestParams params,@RequestParam(value="page",defaultValue="1") Integer pageNum,@RequestParam(value="limit",defaultValue="20") Integer pageSize){
|
|
|
- return RespVOBuilder.ok(userService.query(params.getObjectMap(),pageNum, pageSize));
|
|
|
+ //PageModel<Map<String,Object>> p = new PageModel<Map<String,Object>>();
|
|
|
+ PageModel<Map<String,Object>> pOrg = userService.query(params.getObjectMap(),pageNum, pageSize);
|
|
|
+ List<Map<String,Object>> listt=pOrg.getData();
|
|
|
+ List<Map<String,Object>> listZH=new ArrayList<Map<String,Object>>();
|
|
|
+ for(Map<String,Object> map: listt){
|
|
|
+ String userId = map.get("userId").toString();
|
|
|
+ map.put("roleName",userRoleService.queryRoleByUserId(userId));
|
|
|
+ listZH.add(map);
|
|
|
+ }
|
|
|
+ pOrg.setData(listZH);
|
|
|
+ return RespVOBuilder.ok(pOrg);
|
|
|
}
|
|
|
|
|
|
|
|
@@ -62,6 +88,7 @@ public class UserController {
|
|
|
@SysLog("删除用户:{arg0}")
|
|
|
public RespVO<Object> delete(String userId){
|
|
|
userService.delete(userId);
|
|
|
+ userRoleService.deleteByUserId(userId);
|
|
|
return RespVOBuilder.ok();
|
|
|
}
|
|
|
|
|
@@ -73,20 +100,38 @@ public class UserController {
|
|
|
*/
|
|
|
@RequestMapping("/add")
|
|
|
@SysLog("新增用户:{arg0.loginId}")
|
|
|
- public RespVO<String> add(User user,AccessToken token){
|
|
|
+ public RespVO<String> add(UserVO user,AccessToken token){
|
|
|
User dbUser=userService.getByLoginId(user.getLoginId());
|
|
|
if(dbUser!=null) {
|
|
|
return RespVOBuilder.error("该账号已被注册过,请更换");
|
|
|
}
|
|
|
user.setCreateBy(token.getTokenId());
|
|
|
user.setModifyBy(token.getTokenId());
|
|
|
- return RespVOBuilder.ok(userService.add(user));
|
|
|
-
|
|
|
+ User userPo = new User();
|
|
|
+ BeanUtils.copyProperties(user,userPo);
|
|
|
+ String userId= userService.add(userPo);
|
|
|
+ userRoleDeal(user, userId);
|
|
|
+ return RespVOBuilder.ok();
|
|
|
+
|
|
|
+
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
+ private void userRoleDeal(UserVO user, String userId) {
|
|
|
+ String roleName= user.getRoleName();
|
|
|
+ if(StringUtils.isNotEmpty(roleName)){
|
|
|
+ String[] allRoleStr=roleName.split(",");
|
|
|
+ for(String subRoleStr: allRoleStr){
|
|
|
+ UserRolePO uro=new UserRolePO();
|
|
|
+ uro.setUserId(userId);
|
|
|
+ uro.setRoleId(subRoleStr);
|
|
|
+ userRoleService.add(uro);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
@RequestMapping("/update")
|
|
|
@SysLog("更新用户:{arg0.loginId}")
|
|
|
- public RespVO<Object> update(User user,AccessToken token){
|
|
|
+ public RespVO<Object> update(UserVO user,AccessToken token){
|
|
|
User dbUser=userService.get(user.getUserId());
|
|
|
if(dbUser==null) {
|
|
|
return RespVOBuilder.error("用户已不存在");
|
|
@@ -103,8 +148,11 @@ public class UserController {
|
|
|
user.setCreateBy(dbUser.getCreateBy());
|
|
|
user.setCreateTime(dbUser.getCreateTime());
|
|
|
user.setModifyBy(token.getTokenId());
|
|
|
- userService.update(user);
|
|
|
-
|
|
|
+ User userPo = new User();
|
|
|
+ BeanUtils.copyProperties(user,userPo);
|
|
|
+ userService.update(userPo);
|
|
|
+ userRoleService.deleteByUserId(user.getUserId());
|
|
|
+ userRoleDeal(user, user.getUserId());
|
|
|
return RespVOBuilder.ok();
|
|
|
|
|
|
|