package logic import ( "app.yhyue.com/moapp/jybase/common" "app.yhyue.com/moapp/jybase/encrypt" "context" "bp.jydev.jianyu360.cn/SocialPlatform/messageCenter/rpc/messagecenter/internal/svc" "bp.jydev.jianyu360.cn/SocialPlatform/messageCenter/rpc/messagecenter/messagecenter" "github.com/zeromicro/go-zero/core/logx" ) type ChatGroupPersonLogic struct { ctx context.Context svcCtx *svc.ServiceContext logx.Logger } func NewChatGroupPersonLogic(ctx context.Context, svcCtx *svc.ServiceContext) *ChatGroupPersonLogic { return &ChatGroupPersonLogic{ ctx: ctx, svcCtx: svcCtx, Logger: logx.WithContext(ctx), } } // 群组成员查询 func (l *ChatGroupPersonLogic) ChatGroupPerson(in *messagecenter.ChatGroupPersonReq) (*messagecenter.ChatGroupPersonResp, error) { // todo: add your logic here and delete this line data := ChatGroup.ChatGroupPerson(in.ChatGroupId, in.EntId, in.AppId) chatGroupList := map[string]*messagecenter.ChatGroupPersonList{} if len(data) > 0 { for k, v := range data { personList := []*messagecenter.ChatGroupPerson{} for _, m := range v { positionId := encrypt.SE.Encode2Hex(common.InterfaceToStr(m["position_id"])) person := messagecenter.ChatGroupPerson{ PersonName: common.ObjToString(m["name"]), IsSystem: common.Int64All(m["isgroup_admin"]) > 0, PositionId: positionId, } personList = append(personList, &person) } ChatList := messagecenter.ChatGroupPersonList{ Data: personList, } chatGroupList[k] = &ChatList } } return &messagecenter.ChatGroupPersonResp{ ErrorCode: 0, Data: chatGroupList, }, nil }