|
@@ -11,7 +11,7 @@ import com.winhc.repal.cloud.dto.RepalRegUserDTO;
|
|
|
import com.winhc.repal.cloud.dto.RepalRegUserInfoDTO;
|
|
|
import com.winhc.repal.entity.RepalGroupMember;
|
|
|
import com.winhc.repal.entity.RepalGroupRole;
|
|
|
-import com.winhc.repal.entity.UserExt;
|
|
|
+import com.winhc.repal.entity.UserInfo;
|
|
|
import com.winhc.repal.enums.DeletedStatusEnum;
|
|
|
import com.winhc.repal.enums.RepalBillTypeEnum;
|
|
|
import com.winhc.repal.enums.RoleTypeEnum;
|
|
@@ -22,6 +22,7 @@ import com.winhc.repal.repository.RepalGroupMemberMapper;
|
|
|
import com.winhc.repal.service.RepalGroupMemberService;
|
|
|
import com.winhc.repal.service.RepalGroupRoleService;
|
|
|
import com.winhc.repal.service.UserExtService;
|
|
|
+import com.winhc.repal.service.UserInfoService;
|
|
|
import com.winhc.repal.util.UserContextUtil;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
@@ -53,6 +54,9 @@ public class RepalGroupMemberServiceImpl extends ServiceImpl<RepalGroupMemberMap
|
|
|
@Autowired
|
|
|
private LoginService loginService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private UserInfoService userInfoService;
|
|
|
+
|
|
|
@Override
|
|
|
public Long getUserGroupId(Long userId) {
|
|
|
RepalGroupMember repalGroupMember = this.getOne(Wrappers.lambdaQuery(RepalGroupMember.class)
|
|
@@ -101,20 +105,26 @@ public class RepalGroupMemberServiceImpl extends ServiceImpl<RepalGroupMemberMap
|
|
|
return new ArrayList<>();
|
|
|
}
|
|
|
List<RepalGroupRole> roleList = repalGroupRoleService.getRoleByIdList(memberList.stream().map(RepalGroupMember::getRoleId).distinct().collect(Collectors.toList()));
|
|
|
+ List<UserInfo> userInfoList = userInfoService.list(Wrappers.lambdaQuery(UserInfo.class).in(UserInfo::getUserId,
|
|
|
+ memberList.stream().map(RepalGroupMember::getUserId).collect(Collectors.toList())));
|
|
|
Map<Long, String> roleNameMap = roleList.stream().collect(Collectors.toMap(RepalGroupRole::getId, RepalGroupRole::getRoleName));
|
|
|
Map<Long, List<RepalGroupMember>> memberMap = memberList.stream().collect(Collectors.groupingBy(RepalGroupMember::getRoleId, Collectors.toList()));
|
|
|
+ Map<Long, String> avatarMap = new HashMap<>();
|
|
|
+ if (CollUtil.isNotEmpty(userInfoList)) {
|
|
|
+ avatarMap = userInfoList.stream().collect(Collectors.toMap(UserInfo::getUserId, UserInfo::getAvatar));
|
|
|
+ }
|
|
|
List<GroupRoleMemberVO> resultList = new ArrayList<>();
|
|
|
for (Map.Entry<Long, List<RepalGroupMember>> entry : memberMap.entrySet()) {
|
|
|
GroupRoleMemberVO vo = new GroupRoleMemberVO();
|
|
|
vo.setRoleId(entry.getKey());
|
|
|
vo.setRoleName(roleNameMap.get(entry.getKey()));
|
|
|
+ Map<Long, String> finalAvatarMap = avatarMap;
|
|
|
vo.setRoleMemberList(entry.getValue().stream().map(t -> {
|
|
|
GroupRoleMemberVO.RoleMemberVO roleMemberVO = new GroupRoleMemberVO.RoleMemberVO();
|
|
|
roleMemberVO.setMemberId(t.getId());
|
|
|
roleMemberVO.setMemberName(t.getMemberUserName());
|
|
|
roleMemberVO.setUserId(t.getUserId());
|
|
|
- // todo
|
|
|
- //roleMemberVO.setAvatar();
|
|
|
+ roleMemberVO.setAvatar(finalAvatarMap.get(t.getUserId()));
|
|
|
return roleMemberVO;
|
|
|
}).sorted(Comparator.comparing(GroupRoleMemberVO.RoleMemberVO::getMemberId).reversed()).collect(Collectors.toList()));
|
|
|
resultList.add(vo);
|