group_api_struct.go 4.4 KB
Newer Older
W
wenxu12345 已提交
1 2 3
package base_info

import (
W
wenxu12345 已提交
4
	imdb "Open_IM/pkg/common/db/mysql_model/im_mysql_model"
W
wenxu12345 已提交
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
	open_im_sdk "Open_IM/pkg/proto/sdk_ws"
)

type CommResp struct {
	ErrCode int32  `json:"errCode"`
	ErrMsg  string `json:"errMsg"`
}
type Id2Result struct {
	UserID string `json:"userID"`
	Result int32  `json:"result"`
}

type KickGroupMemberReq struct {
	GroupID          string   `json:"groupID" binding:"required"`
	KickedUserIDList []string `json:"kickedUserIDList" binding:"required"`
	Reason           string   `json:"reason"`
	OperationID      string   `json:"operationID" binding:"required"`
}
type KickGroupMemberResp struct {
	CommResp
	Data []*Id2Result `json:"data"`
}

type GetGroupMembersInfoReq struct {
	GroupID     string   `json:"groupID" binding:"required"`
	MemberList  []string `json:"memberList" binding:"required"`
	OperationID string   `json:"operationID" binding:"required"`
}
type GetGroupMembersInfoResp struct {
	CommResp
	Data []*open_im_sdk.GroupMemberFullInfo `json:"data"`
}

type InviteUserToGroupReq struct {
	GroupID           string   `json:"groupID" binding:"required"`
	InvitedUserIDList []string `json:"uidList" binding:"required"`
	Reason            string   `json:"reason"`
	OperationID       string   `json:"operationID" binding:"required"`
}
type InviteUserToGroupResp struct {
	CommResp
	Data []Id2Result `json:"data"`
}

type GetJoinedGroupListReq struct {
	OperationID string `json:"operationID" binding:"required"`
	FromUserID  string `json:"fromUserID" binding:"required"`
}
type GetJoinedGroupListResp struct {
	CommResp
	Data []*open_im_sdk.GroupInfo `json:"data"`
}

type GetGroupMemberListReq struct {
	GroupID     string `json:"groupID"`
	Filter      int32  `json:"filter"`
	NextSeq     int32  `json:"nextSeq"`
	OperationID string `json:"operationID"`
}
type GetGroupMemberListResp struct {
	CommResp
	NextSeq int32                              `json:"nextSeq"`
	Data    []*open_im_sdk.GroupMemberFullInfo `json:"data"`
}

type GetGroupAllMemberReq struct {
	GroupID     string `json:"groupID"`
	OperationID string `json:"operationID"`
}
type GetGroupAllMemberResp struct {
	CommResp
	Data []*open_im_sdk.GroupMemberFullInfo `json:"data"`
}

type CreateGroupReq struct {
W
wenxu12345 已提交
80
	MemberList  []*GroupAddMemberInfo `json:"memberList"  binding:"required"`
W
wenxu12345 已提交
81
	OwnerUserID string                `json:"ownerUserID" binding:"required"`
W
wenxu12345 已提交
82 83
	GroupName   string                `json:"groupName"`
	GroupType   int32                 `json:"groupType"`
W
wenxu12345 已提交
84
	OperationID string                `json:"operationID" binding:"required"`
W
wenxu12345 已提交
85
}
W
wenxu12345 已提交
86

W
wenxu12345 已提交
87 88
type CreateGroupResp struct {
	CommResp
W
wenxu12345 已提交
89
	GroupInfo open_im_sdk.GroupInfo `json:"data"`
W
wenxu12345 已提交
90 91 92 93
}

type GetGroupApplicationListReq struct {
	OperationID string `json:"operationID" binding:"required"`
W
wenxu12345 已提交
94
	FromUserID  string `json:"fromUserID" binding:"required"` //作为管理员或群主收到的 进群申请
W
wenxu12345 已提交
95 96 97
}
type GetGroupApplicationListResp struct {
	CommResp
W
wenxu12345 已提交
98
	GroupRequestList []*open_im_sdk.GroupRequest `json:"data"`
W
wenxu12345 已提交
99 100 101 102 103 104 105 106
}

type GetGroupInfoReq struct {
	GroupIDList []string `json:"groupIDList" binding:"required"`
	OperationID string   `json:"operationID" binding:"required"`
}
type GetGroupInfoResp struct {
	CommResp
W
wenxu12345 已提交
107
	GroupInfoList []*open_im_sdk.GroupInfo `json:"data"`
W
wenxu12345 已提交
108 109 110
}

type ApplicationGroupResponseReq struct {
W
wenxu12345 已提交
111 112 113 114 115
	OperationID  string `json:"operationID" binding:"required"`
	GroupID      string `json:"groupID" binding:"required"`
	FromUserID   string `json:"fromUserID" binding:"required"` //application from FromUserID
	HandledMsg   string `json:"handledMsg"`
	HandleResult int32  `json:"handleResult" binding:"required,oneof=-1 1"`
W
wenxu12345 已提交
116 117 118 119 120 121
}
type ApplicationGroupResponseResp struct {
	CommResp
}

type JoinGroupReq struct {
W
wenxu12345 已提交
122
	GroupID     string `json:"groupID" binding:"required"`
W
wenxu12345 已提交
123
	ReqMessage  string `json:"reqMessage"`
W
wenxu12345 已提交
124
	OperationID string `json:"operationID" binding:"required"`
W
wenxu12345 已提交
125 126 127 128 129 130 131 132 133 134 135 136 137 138
}
type JoinGroupResp struct {
	CommResp
}

type QuitGroupReq struct {
	GroupID     string `json:"groupID" binding:"required"`
	OperationID string `json:"operationID" binding:"required"`
}
type QuitGroupResp struct {
	CommResp
}

type SetGroupInfoReq struct {
W
wenxu12345 已提交
139
	imdb.Group
W
wenxu12345 已提交
140 141 142 143 144 145 146 147 148 149 150 151
	OperationID string `json:"operationID" binding:"required"`
}
type SetGroupInfoResp struct {
	CommResp
}

type TransferGroupOwnerReq struct {
	GroupID        string `json:"groupID" binding:"required"`
	OldOwnerUserID string `json:"oldOwnerUserID" binding:"required"`
	NewOwnerUserID string `json:"newOwnerUserID" binding:"required"`
	OperationID    string `json:"operationID" binding:"required"`
}
W
wenxu12345 已提交
152 153 154
type TransferGroupOwnerResp struct {
	CommResp
}