Browse Source

批量查用户信息

gaodm 6 years ago
parent
commit
a7b6c1dc4b

+ 1 - 1
icssman-service/src/main/java/com/diagbot/client/UserServiceClient.java

@@ -19,7 +19,7 @@ import java.util.List;
 public interface UserServiceClient {
 
     @PostMapping(value = "/user/getUserInfoByIds")
-    RespDTO<List<UserNameDTO>> getUserInfoByIds(@RequestBody List<Long> ids);
+    RespDTO<List<UserNameDTO>> getUserInfoByIds(@RequestBody List<String> ids);
 }
 
 

+ 1 - 1
icssman-service/src/main/java/com/diagbot/client/hystrix/UserServiceHystrix.java

@@ -20,7 +20,7 @@ import java.util.List;
 public class UserServiceHystrix implements UserServiceClient {
 
 	@Override
-    public RespDTO<List<UserNameDTO>> getUserInfoByIds(@RequestBody List<Long> ids){
+    public RespDTO<List<UserNameDTO>> getUserInfoByIds(@RequestBody List<String> ids){
         log.error("【hystrix】调用{}异常", "getUserInfoByIds");
         return null;
     }

+ 8 - 2
user-service/src/main/java/com/diagbot/facade/UserFacade.java

@@ -1440,8 +1440,14 @@ public class UserFacade extends UserServiceImpl {
      * @param ids 用户ID列表
      * @return 用户名信息列表
      */
-    public List<UserNameDTO> getUserInfoByIds(List<Long> ids) {
-        List<User> userList = this.getByIds(ids);
+    public List<UserNameDTO> getUserInfoByIds(List<String> ids) {
+        List<Long> longList = new ArrayList<>();
+        for (String id : ids){
+            if(!longList.contains(id)){
+                longList.add(Long.valueOf(id));
+            }
+        }
+        List<User> userList = this.getByIds(longList);
         List<UserNameDTO> res = BeanUtil.listCopyTo(userList, UserNameDTO.class);
         return res;
     }

+ 1 - 1
user-service/src/main/java/com/diagbot/web/UserController.java

@@ -353,7 +353,7 @@ public class UserController {
     @PostMapping("/getUserInfoByIds")
     @SysLogger("getUserInfoByIds")
     @ApiIgnore
-    public RespDTO<List<UserNameDTO>> getUserInfoByIds(@RequestBody List<Long> ids){
+    public RespDTO<List<UserNameDTO>> getUserInfoByIds(@RequestBody List<String> ids){
         return RespDTO.onSuc(userFacade.getUserInfoByIds(ids));
     }
 }