REQ-3345: 邀请人问题
This commit is contained in:
parent
2e01f785e2
commit
f67c3a1fcb
@ -20,6 +20,12 @@ public class GroupAddMembersRequest {
|
|||||||
@NotNull(message = "群ID不能为空")
|
@NotNull(message = "群ID不能为空")
|
||||||
private Long tid;
|
private Long tid;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 邀请者
|
||||||
|
*/
|
||||||
|
@NotNull(message = "inviter不能为空")
|
||||||
|
private PersonAccountAttribute inviter;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 群成员, 不包含群主. members数量不能超过199
|
* 群成员, 不包含群主. members数量不能超过199
|
||||||
*/
|
*/
|
||||||
|
|||||||
@ -11,6 +11,7 @@ import org.springframework.stereotype.Repository;
|
|||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Optional;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
import static java.util.stream.Collectors.toSet;
|
import static java.util.stream.Collectors.toSet;
|
||||||
@ -55,6 +56,11 @@ public class GroupMemberDao extends ServiceImpl<GroupMapperMapper, GroupMember>
|
|||||||
.remove();
|
.remove();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Optional<GroupMember> findByPerson(Long tid, PersonAccountAttribute person) {
|
||||||
|
List<GroupMember> members = getByPersons(tid, Collections.singletonList(person));
|
||||||
|
return CollectionUtils.isEmpty(members) ? Optional.empty() : Optional.of(members.get(0));
|
||||||
|
}
|
||||||
|
|
||||||
public List<GroupMember> getByPersons(
|
public List<GroupMember> getByPersons(
|
||||||
Long tid, Collection<PersonAccountAttribute> persons) {
|
Long tid, Collection<PersonAccountAttribute> persons) {
|
||||||
if (CollectionUtils.isEmpty(persons))
|
if (CollectionUtils.isEmpty(persons))
|
||||||
|
|||||||
@ -141,8 +141,12 @@ public class GroupManager {
|
|||||||
group.getTid(), group.getName(), JSON.toJSONString(request.getMembers()));
|
group.getTid(), group.getName(), JSON.toJSONString(request.getMembers()));
|
||||||
return new GroupAddMembersResponse();
|
return new GroupAddMembersResponse();
|
||||||
}
|
}
|
||||||
|
GroupMember inviter = groupMemberDao
|
||||||
|
.findByPerson(group.getTid(), request.getInviter())
|
||||||
|
.orElse(null);
|
||||||
|
BizAssertions.assertNotNull(inviter, "邀请者不在群中");
|
||||||
NimGroupAddMembersRequest nimRequest = groupSupport
|
NimGroupAddMembersRequest nimRequest = groupSupport
|
||||||
.buildAddMembersRequest(group, group.getOwnerAccount(), imAccounts);
|
.buildAddMembersRequest(group, inviter.getImAccount(), imAccounts);
|
||||||
// add members
|
// add members
|
||||||
rateLimiter.requireAddMember();
|
rateLimiter.requireAddMember();
|
||||||
NimGroupAddMembersResponse nimResponse = nimClient.addGroupMembers(nimRequest);
|
NimGroupAddMembersResponse nimResponse = nimClient.addGroupMembers(nimRequest);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user