12 changed files with 1631 additions and 335 deletions
@ -0,0 +1,36 @@
|
||||
package net.sopod.soim.das.group.api.model.dto; |
||||
|
||||
import lombok.Data; |
||||
import lombok.experimental.Accessors; |
||||
|
||||
import java.io.Serializable; |
||||
import java.util.Date; |
||||
|
||||
/** |
||||
* GroupView |
||||
* |
||||
* @author tmy |
||||
* @date 2022-06-06 21:04 |
||||
*/ |
||||
@Data |
||||
@Accessors(chain = true) |
||||
public class GroupView implements Serializable { |
||||
|
||||
private static final long serialVersionUID = -9110996998635374890L; |
||||
|
||||
private Long gid; |
||||
|
||||
/** 群主id */ |
||||
private Long masterUid; |
||||
|
||||
private String gName; |
||||
|
||||
private Integer userLimit; |
||||
|
||||
private Integer userNum; |
||||
|
||||
private Integer unreadNum; |
||||
|
||||
private Date createTime; |
||||
|
||||
} |
||||
@ -0,0 +1,46 @@
|
||||
package net.sopod.soim.entry.handlers.group; |
||||
|
||||
import com.google.protobuf.MessageLite; |
||||
import net.sopod.soim.das.group.api.model.dto.GroupView; |
||||
import net.sopod.soim.data.msg.group.Group; |
||||
import net.sopod.soim.entry.server.handler.AccountMessageHandler; |
||||
import net.sopod.soim.entry.server.handler.ImContext; |
||||
import net.sopod.soim.entry.server.session.Account; |
||||
import net.sopod.soim.logic.api.group.service.ImGroupService; |
||||
import org.apache.dubbo.config.annotation.DubboReference; |
||||
import org.springframework.stereotype.Service; |
||||
|
||||
import java.util.List; |
||||
import java.util.stream.Collectors; |
||||
|
||||
/** |
||||
* ReqUserGroupsHandler |
||||
* |
||||
* @author tmy |
||||
* @date 2022-06-06 21:18 |
||||
*/ |
||||
@Service |
||||
public class ReqUserGroupsHandler extends AccountMessageHandler<Group.ReqUserGroups> { |
||||
|
||||
@DubboReference |
||||
private ImGroupService imGroupService; |
||||
|
||||
@Override |
||||
public MessageLite handle(ImContext ctx, Account account, Group.ReqUserGroups req) { |
||||
List<GroupView> groupViews = imGroupService.listUserGroups(account.getUid()); |
||||
List<Group.GroupInfo> groupInfos = groupViews.stream().map(g -> Group.GroupInfo.newBuilder() |
||||
.setGid(g.getGid()) |
||||
.setGroupName(g.getGName()) |
||||
.setUserLimit(g.getUserLimit()) |
||||
.setUserNum(g.getUserNum()) |
||||
.setMasterUid(g.getMasterUid()) |
||||
.setCreateTime(g.getCreateTime() == null ? 0L : g.getCreateTime().getTime()) |
||||
.build() |
||||
).collect(Collectors.toList()); |
||||
|
||||
return Group.ResUserGroups.newBuilder() |
||||
.addAllGroups(groupInfos) |
||||
.build(); |
||||
} |
||||
|
||||
} |
||||
File diff suppressed because it is too large
Load Diff
@ -1,28 +1,30 @@
|
||||
net.sopod.soim.data.msg.user.Friend$ResFriendList=10000 |
||||
net.sopod.soim.data.msg.group.Group$ResSearchGroup=10001 |
||||
net.sopod.soim.data.msg.user.AccountSearch$ResAccountSearch=10002 |
||||
net.sopod.soim.data.msg.common.Res$ResState=10003 |
||||
net.sopod.soim.data.msg.group.Group$ReqUserGroups=10000 |
||||
net.sopod.soim.data.msg.group.Group$GroupInfo=10001 |
||||
net.sopod.soim.data.msg.group.Group$ResSearchGroup=10002 |
||||
net.sopod.soim.data.msg.hello.HelloPB$Hello=10003 |
||||
net.sopod.soim.data.msg.user.Friend$ReqAddFriend=10004 |
||||
net.sopod.soim.data.msg.user.AccountSearch$ReqAccountSearch=10005 |
||||
net.sopod.soim.data.msg.user.UserGroup$ResOnlineUserList=10006 |
||||
net.sopod.soim.data.msg.user.Friend$ReqFriendList=10007 |
||||
net.sopod.soim.data.msg.auth.Auth$ResTokenAuth=10008 |
||||
net.sopod.soim.data.msg.user.UserGroup$ReqOnlineUserList=10009 |
||||
net.sopod.soim.data.msg.group.Group$ReqSearchGroup=10010 |
||||
net.sopod.soim.data.msg.chat.Chat$TextChat=10011 |
||||
net.sopod.soim.data.msg.hello.HelloPB$World=10012 |
||||
net.sopod.soim.data.msg.hello.HelloPB$Hello=10013 |
||||
net.sopod.soim.data.msg.group.Group$ResGroupMessage=10014 |
||||
net.sopod.soim.data.msg.net.HeartBeat$Pong=10015 |
||||
net.sopod.soim.data.msg.group.Group$ReqJoinGroup=10016 |
||||
net.sopod.soim.data.msg.group.Group$ReqCreateGroup=10017 |
||||
net.sopod.soim.data.msg.group.Group$UserInfo=10018 |
||||
net.sopod.soim.data.msg.auth.Auth$ReqTokenAuth=10019 |
||||
net.sopod.soim.data.msg.group.Group$ReqGroupMessage=10020 |
||||
net.sopod.soim.data.msg.group.Group$ReqGroupUsers=10021 |
||||
net.sopod.soim.data.msg.group.Group$ResGroupUsers=10022 |
||||
net.sopod.soim.data.msg.net.HeartBeat$Ping=10023 |
||||
net.sopod.soim.data.msg.task.Tasks$NetUserDelayCloseTask=10024 |
||||
net.sopod.soim.data.msg.user.UserMsg$UserInfo=10025 |
||||
net.sopod.soim.data.msg.user.Friend$ResAddFriend=10026 |
||||
net.sopod.soim.data.msg.group.Group$GroupInfo=10027 |
||||
net.sopod.soim.data.msg.auth.Auth$ResTokenAuth=10005 |
||||
net.sopod.soim.data.msg.chat.Chat$TextChat=10006 |
||||
net.sopod.soim.data.msg.user.AccountSearch$ReqAccountSearch=10007 |
||||
net.sopod.soim.data.msg.net.HeartBeat$Pong=10008 |
||||
net.sopod.soim.data.msg.auth.Auth$ReqTokenAuth=10009 |
||||
net.sopod.soim.data.msg.group.Group$ReqGroupUsers=10010 |
||||
net.sopod.soim.data.msg.user.UserGroup$ResOnlineUserList=10011 |
||||
net.sopod.soim.data.msg.user.AccountSearch$ResAccountSearch=10012 |
||||
net.sopod.soim.data.msg.group.Group$ReqCreateGroup=10013 |
||||
net.sopod.soim.data.msg.user.Friend$ResFriendList=10014 |
||||
net.sopod.soim.data.msg.group.Group$ReqSearchGroup=10015 |
||||
net.sopod.soim.data.msg.group.Group$ReqGroupMessage=10016 |
||||
net.sopod.soim.data.msg.group.Group$ResGroupUsers=10017 |
||||
net.sopod.soim.data.msg.hello.HelloPB$World=10018 |
||||
net.sopod.soim.data.msg.group.Group$ReqJoinGroup=10019 |
||||
net.sopod.soim.data.msg.user.UserGroup$ReqOnlineUserList=10020 |
||||
net.sopod.soim.data.msg.group.Group$UserInfo=10021 |
||||
net.sopod.soim.data.msg.group.Group$ResGroupMessage=10022 |
||||
net.sopod.soim.data.msg.user.UserMsg$UserInfo=10023 |
||||
net.sopod.soim.data.msg.group.Group$ResUserGroups=10024 |
||||
net.sopod.soim.data.msg.user.Friend$ResAddFriend=10025 |
||||
net.sopod.soim.data.msg.net.HeartBeat$Ping=10026 |
||||
net.sopod.soim.data.msg.task.Tasks$NetUserDelayCloseTask=10027 |
||||
net.sopod.soim.data.msg.user.Friend$ReqFriendList=10028 |
||||
net.sopod.soim.data.msg.common.Res$ResState=10029 |
||||
|
||||
Loading…
Reference in new issue