|
@@ -11,7 +11,6 @@ import cn.com.ty.lift.system.user.service.*;
|
|
import cn.com.ty.lift.system.utils.PasswordUtils;
|
|
import cn.com.ty.lift.system.utils.PasswordUtils;
|
|
import cn.com.xwy.boot.web.dto.RestResponse;
|
|
import cn.com.xwy.boot.web.dto.RestResponse;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
@@ -22,10 +21,7 @@ import org.springframework.transaction.interceptor.TransactionAspectSupport;
|
|
import javax.annotation.Resource;
|
|
import javax.annotation.Resource;
|
|
import javax.servlet.http.HttpSession;
|
|
import javax.servlet.http.HttpSession;
|
|
import java.time.LocalDateTime;
|
|
import java.time.LocalDateTime;
|
|
-import java.util.ArrayList;
|
|
|
|
-import java.util.HashMap;
|
|
|
|
-import java.util.List;
|
|
|
|
-import java.util.Map;
|
|
|
|
|
|
+import java.util.*;
|
|
import java.util.stream.Collectors;
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -107,10 +103,10 @@ public class UserService implements IUserService {
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public RestResponse list(UserRequest userRequest) {
|
|
public RestResponse list(UserRequest userRequest) {
|
|
- IPage userAccountPage = new Page<>(userRequest.getPageNum(), userRequest.getPageSize());
|
|
|
|
- userAccountPage = userAccountService.page(userAccountPage, new QueryWrapper<UserAccount>()
|
|
|
|
|
|
+ IPage userInfoPage = new Page<>(userRequest.getPageNum(), userRequest.getPageSize());
|
|
|
|
+ userInfoPage = userInfoService.page(userInfoPage, new QueryWrapper<UserInfo>()
|
|
//通过用户名模糊查询
|
|
//通过用户名模糊查询
|
|
- .like(StringUtils.isNotBlank(userRequest.getQueryCondition()), "account",
|
|
|
|
|
|
+ .like(StringUtils.isNotBlank(userRequest.getQueryCondition()), "name",
|
|
userRequest.getQueryCondition())
|
|
userRequest.getQueryCondition())
|
|
.or()
|
|
.or()
|
|
//通过用户手机号模糊查询
|
|
//通过用户手机号模糊查询
|
|
@@ -118,25 +114,29 @@ public class UserService implements IUserService {
|
|
userRequest.getQueryCondition())
|
|
userRequest.getQueryCondition())
|
|
.eq("delete_flag", ApiConstants.DELETE_NO)
|
|
.eq("delete_flag", ApiConstants.DELETE_NO)
|
|
);
|
|
);
|
|
- List<UserAccount> userAccountList = userAccountPage.getRecords();
|
|
|
|
- if (userAccountList != null && userAccountList.size() > 0) {
|
|
|
|
- List<Long> userIdList = ProjectUtils.getAttrList(userAccountList, "userId", null);
|
|
|
|
- Map<Long, UserInfo> userIdToUserInfo = userInfoService.userIdToInfo(userIdList);
|
|
|
|
|
|
+ List<UserInfo> userInfos = userInfoPage.getRecords();
|
|
|
|
+ if (userInfos != null && userInfos.size() > 0) {
|
|
|
|
+ //获取用户id
|
|
|
|
+ List<Long> userIds = userInfos.stream().map(UserInfo::getUserId).collect(Collectors.toList());
|
|
|
|
+ //根据用户id查询用户账号
|
|
|
|
+ Collection<UserAccount> userAccounts = userAccountService.listByIds(userIds);
|
|
List<UserResponse> userResponseList = new ArrayList<>(10);
|
|
List<UserResponse> userResponseList = new ArrayList<>(10);
|
|
- if (userIdToUserInfo != null && userIdToUserInfo.size() > 0) {
|
|
|
|
- userAccountList.forEach(userAccount -> {
|
|
|
|
- UserResponse userResponse = new UserResponse();
|
|
|
|
- UserInfo userInfo = userIdToUserInfo.get(userAccount.getUserId());
|
|
|
|
- userResponse.setUserId(userAccount.getUserId());
|
|
|
|
- userResponse.setName(userInfo.getName());
|
|
|
|
- userResponse.setMobile(userInfo.getMobile());
|
|
|
|
- userResponse.setCreateTime(userAccount.getCreateDate());
|
|
|
|
- userResponseList.add(userResponse);
|
|
|
|
- });
|
|
|
|
- }
|
|
|
|
- userAccountPage.setRecords(userResponseList);
|
|
|
|
|
|
+ //用户账号list转map
|
|
|
|
+ Map<Long, LocalDateTime> userAccountMap = userAccounts.stream().
|
|
|
|
+ collect(Collectors.toMap(UserAccount::getUserId, UserAccount::getCreateDate, (k1, k2) -> k1));
|
|
|
|
+ userInfos.forEach(userInfo -> {
|
|
|
|
+ UserResponse userResponse = new UserResponse();
|
|
|
|
+ userResponse.setUserId(userInfo.getUserId());
|
|
|
|
+ userResponse.setName(userInfo.getName());
|
|
|
|
+ userResponse.setMobile(userInfo.getMobile());
|
|
|
|
+ //获取账号创建时间,数据库已证实没有空数据
|
|
|
|
+ LocalDateTime createDate = userAccountMap.get(userInfo.getUserId());
|
|
|
|
+ userResponse.setCreateTime(createDate != null ? createDate : LocalDateTime.now());
|
|
|
|
+ userResponseList.add(userResponse);
|
|
|
|
+ });
|
|
|
|
+ userInfoPage.setRecords(userResponseList);
|
|
}
|
|
}
|
|
- return RestResponse.success(userAccountPage, "获取用户信息成功");
|
|
|
|
|
|
+ return RestResponse.success(userInfoPage, "获取用户信息成功");
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|