create messagegroup

This commit is contained in:
苏尹岚
2020-10-22 09:41:18 +08:00
parent bbf527d419
commit bd1ae5558c
6 changed files with 101 additions and 31 deletions

View File

@@ -176,7 +176,7 @@ type GetMessageGroupsResult struct {
MessageGroupMembers []*model.MessageGroupMember `json:"messageGroupMembers"`
}
func GetMessageGroups(db *DaoDB, userID string, groupType int, userID2 string) (messageGroupsResult []*GetMessageGroupsResult, err error) {
func GetMessageGroups(db *DaoDB, userID string, groupType int, isMember bool, userID2 string) (messageGroupsResult []*GetMessageGroupsResult, err error) {
sql := `
SELECT *
FROM message_group
@@ -192,18 +192,20 @@ func GetMessageGroups(db *DaoDB, userID string, groupType int, userID2 string) (
sqlParams = append(sqlParams, groupType)
}
if err = GetRows(db, &messageGroupsResult, sql, sqlParams); err == nil {
for _, v := range messageGroupsResult {
var messageGroupMembers []*model.MessageGroupMember
sql2 := `
SELECT * FROM message_group_member WHERE group_id = ?
`
sqlParams2 := []interface{}{v.GroupID}
if userID2 != "" {
sql2 += ` AND member_user_id = ?`
sqlParams2 = append(sqlParams2, userID2)
}
if err = GetRows(db, &messageGroupMembers, sql2, sqlParams2); err == nil {
v.MessageGroupMembers = messageGroupMembers
if isMember {
for _, v := range messageGroupsResult {
var messageGroupMembers []*model.MessageGroupMember
sql2 := `
SELECT * FROM message_group_member WHERE group_id = ?
`
sqlParams2 := []interface{}{v.GroupID}
if userID2 != "" {
sql2 += ` AND member_user_id = ?`
sqlParams2 = append(sqlParams2, userID2)
}
if err = GetRows(db, &messageGroupMembers, sql2, sqlParams2); err == nil {
v.MessageGroupMembers = messageGroupMembers
}
}
}
}

View File

@@ -74,11 +74,12 @@ func (*ImMessageRecord) TableIndex() [][]string {
type MessageGroup struct {
ModelIDCULD
GroupID int `orm:"column(group_id)" json:"groupID"` //组ID
UserID string `orm:"size(48);column(user_id)" json:"userID"` //创建组的userID
Name string `json:"name"` //组名
Type int `json:"type"` //组类型1为单聊2为群聊
MaxCount int `json:"maxCount"` //最大人数
GroupID int `orm:"column(group_id)" json:"groupID"` //组ID
UserID string `orm:"size(48);column(user_id)" json:"userID"` //创建组的userID
Name string `json:"name"` //组名
Type int `json:"type"` //组类型1为单聊2为群聊
MaxCount int `json:"maxCount"` //最大人数
DividePercentage int `json:"dividePercentage"` //分成比例
}
func (*MessageGroup) TableIndex() [][]string {