Procházet zdrojové kódy

角色接口调试代码完善

黄远 před 5 roky
rodič
revize
756e22fb77

+ 1 - 3
lift-system-service/src/main/java/cn/com/ty/lift/system/user/controller/RoleController.java

@@ -10,8 +10,6 @@ import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
-import javax.servlet.http.HttpServletRequest;
-
 /**
  * @author huangyuan
  * @date 2019-12-01
@@ -31,7 +29,7 @@ public class RoleController {
      * @date 2019/11/27 10:03 AM
      */
     @RequestMapping("/list")
-    public RestResponse list(HttpServletRequest request, @RequestBody RoleRequest roleRequest) {
+    public RestResponse list(@RequestBody RoleRequest roleRequest) {
         return roleService.list(roleRequest);
     }
 

+ 5 - 2
lift-system-service/src/main/java/cn/com/ty/lift/system/user/dao/entity/Role.java

@@ -2,7 +2,6 @@ package cn.com.ty.lift.system.user.dao.entity;
 
 import cn.com.ty.lift.common.constants.CommonEnum;
 import cn.com.ty.lift.system.user.dao.entity.model.RoleRequest;
-import cn.com.ty.lift.common.utils.PojoUtils;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import lombok.Data;
@@ -39,7 +38,11 @@ public class Role {
 	public Role(){}
 
 	public Role(RoleRequest roleRequest){
-		PojoUtils.pojoCopy(this, roleRequest);
+		this.id = roleRequest.getId();
+		this.name = roleRequest.getName();
+		this.description = roleRequest.getDescription();
+		this.createUserId = roleRequest.getUserId();
+		this.companyId = roleRequest.getCompanyId();
 	}
 
     public Role(CommonEnum.DefaultRole defaultRole) {

+ 10 - 0
lift-system-service/src/main/java/cn/com/ty/lift/system/user/dao/entity/model/RoleResponse.java

@@ -1,6 +1,7 @@
 package cn.com.ty.lift.system.user.dao.entity.model;
 
 import cn.com.ty.lift.system.user.dao.entity.Menu;
+import cn.com.ty.lift.system.user.dao.entity.Role;
 import lombok.Data;
 
 import java.util.List;
@@ -15,6 +16,15 @@ public class RoleResponse {
     private Long id;//角色id
     private String name;//角色名称
     private String description;//描述
+    private String createUserName;//创建人名称
     private List<Menu> menuList;//角色所有的菜单列表
     private List<Menu> companyMenuList;//企业菜单列表
+
+    public RoleResponse(){}
+
+    public RoleResponse(Role role){
+        this.id = role.getId();
+        this.name = role.getName();
+        this.description = role.getDescription();
+    }
 }

+ 11 - 0
lift-system-service/src/main/java/cn/com/ty/lift/system/user/service/IUserInfoService.java

@@ -3,6 +3,9 @@ package cn.com.ty.lift.system.user.service;
 import cn.com.ty.lift.system.user.dao.entity.UserInfo;
 import com.baomidou.mybatisplus.extension.service.IService;
 
+import java.util.List;
+import java.util.Map;
+
 /**
  * @author huangyuan
  * @date 2019-11-29
@@ -25,4 +28,12 @@ public interface IUserInfoService extends IService<UserInfo> {
      * @return
      */
     boolean updateUserInfo(UserInfo userInfo);
+
+    /**
+     * @description 通过用户id集合获取用户id->info映射
+     * @date 2019-12-26 16:15
+     * @param
+     * @return
+     */
+    Map<Long, UserInfo> userIdToInfo(List<Long> userIdList);
 }

+ 27 - 10
lift-system-service/src/main/java/cn/com/ty/lift/system/user/service/impl/RoleService.java

@@ -4,17 +4,11 @@ import cn.com.ty.lift.common.constants.ApiConstants;
 import cn.com.ty.lift.common.constants.CommonEnum;
 import cn.com.ty.lift.common.constants.DefaultMenuConstants;
 import cn.com.ty.lift.common.utils.ProjectUtils;
-import cn.com.ty.lift.system.user.dao.entity.Menu;
-import cn.com.ty.lift.system.user.dao.entity.Role;
-import cn.com.ty.lift.system.user.dao.entity.RoleMenu;
-import cn.com.ty.lift.system.user.dao.entity.UserRole;
+import cn.com.ty.lift.system.user.dao.entity.*;
 import cn.com.ty.lift.system.user.dao.entity.model.RoleRequest;
 import cn.com.ty.lift.system.user.dao.entity.model.RoleResponse;
 import cn.com.ty.lift.system.user.dao.mapper.RoleMapper;
-import cn.com.ty.lift.system.user.service.IMenuService;
-import cn.com.ty.lift.system.user.service.IRoleMenuService;
-import cn.com.ty.lift.system.user.service.IRoleService;
-import cn.com.ty.lift.system.user.service.IUserRoleService;
+import cn.com.ty.lift.system.user.service.*;
 import cn.com.xwy.boot.web.dto.RestResponse;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -46,13 +40,33 @@ public class RoleService extends ServiceImpl<RoleMapper, Role> implements IRoleS
     @Autowired
     private IMenuService menuService;
 
+    @Autowired
+    private IUserInfoService userInfoService;
+
     @Override
     public RestResponse list(RoleRequest roleRequest) {
-        IPage<Role> rolePage = new Page<>(roleRequest.getPageNum(), roleRequest.getPageSize());
+        IPage rolePage = new Page<>(roleRequest.getPageNum(), roleRequest.getPageSize());
         rolePage = this.page(rolePage, new QueryWrapper<Role>()
                 .eq("company_id", roleRequest.getCompanyId())
                 .eq("delete_flag", ApiConstants.DELETE_NO)
         );
+        List<Role> roleList = rolePage.getRecords();
+        if(roleList != null && roleList.size() > 0){
+            List<RoleResponse> roleResponseList = new ArrayList<>();
+            //获取创建者名称
+            List<Long> userIdList = ProjectUtils.getAttrList(roleList, "userId", null);
+            Map<Long, UserInfo> userIdToInfo = userInfoService.userIdToInfo(userIdList);
+            for(Role role : roleList){
+                RoleResponse roleResponse = new RoleResponse(role);
+                //设置创建者名称
+                if(userIdToInfo != null){
+                    UserInfo userInfo = userIdToInfo.get(role.getCreateUserId());
+                    roleResponse.setCreateUserName(userInfo.getName());
+                }
+                roleResponseList.add(roleResponse);
+            }
+            rolePage.setRecords(roleResponseList);
+        }
         return RestResponse.success(rolePage, ApiConstants.RESULT_SUCCESS, "获取角色列表成功");
     }
 
@@ -74,7 +88,10 @@ public class RoleService extends ServiceImpl<RoleMapper, Role> implements IRoleS
     @Override
     @Transactional
     public RestResponse updateRole(RoleRequest roleRequest) {
-        Role role = new Role(roleRequest);
+        Role role = this.getById(roleRequest.getId());
+        //设置角色基础信息
+        role.setDescription(roleRequest.getDescription());
+        role.setName(roleRequest.getName());
         role.setUpdateTime(new Date());
         //更新角色信息
         int updateCount = roleMapper.updateById(role);

+ 14 - 0
lift-system-service/src/main/java/cn/com/ty/lift/system/user/service/impl/UserInfoService.java

@@ -1,5 +1,6 @@
 package cn.com.ty.lift.system.user.service.impl;
 
+import cn.com.ty.lift.common.utils.ProjectUtils;
 import cn.com.ty.lift.system.user.dao.entity.UserInfo;
 import cn.com.ty.lift.system.user.dao.mapper.UserInfoMapper;
 import cn.com.ty.lift.system.user.service.IUserInfoService;
@@ -8,6 +9,9 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.util.List;
+import java.util.Map;
+
 /**
  * @author huangyuan
  * @date 2019-11-29
@@ -29,4 +33,14 @@ public class UserInfoService extends ServiceImpl<UserInfoMapper, UserInfo> imple
         .eq("user_id", userInfo.getUserId())
         );
     }
+
+    @Override
+    public Map<Long, UserInfo> userIdToInfo(List<Long> userIdList) {
+        if(userIdList != null && userIdList.size() > 0){
+            List<UserInfo> userInfoList = (List<UserInfo>)this.listByIds(userIdList);
+            Map<Long, UserInfo> userIdToInfo = ProjectUtils.attrToObjMap(userInfoList, "userId", null);
+            return userIdToInfo;
+        }
+        return null;
+    }
 }