package service

import (
	"fmt"
	. "gitdxz.51daxuetong.cn/go_dev/jjl-tools/tinodeService/dao"
	. "gitdxz.51daxuetong.cn/go_dev/jjl-tools/tinodeService/lib"
)

type SubscriptionsService struct {
}
type SubscriptionsListReturn struct {
	TotalCount int             `json:"total_count"`
	Totalpage  int             `json:"totalpage"`
	Page       int             `json:"page"`
	List       []Subscriptions `json:"list"`
}

//通过chatId获取用户的所有的会话列表
func (subSvc SubscriptionsService) GetSubsCoutomerListByChatId(chatId string) (subList []Subs, err error) {
	//在ChatRecord中获取用户的uid
	chatDao := ChatRecordDao{}
	record, err :=chatDao.GetChatRecordByChatId(chatId)
	if err != nil {
		fmt.Println("====GetChatRecordByChatId====",err)
		return
	}

	//通过uid获取用户的所有的会话列表
	subDao := SubscriptionsDao{}
	subList, err = subDao.GetSubsCoutomerList(record.VISITOR_ID)
	if err != nil {
		fmt.Println("====GetSubsCoutomerList====",err)
		return
	}

	for k, v := range subList {
		subList[k].From = GencodeUid(v.Userid)
		//这里去最后的聊天时间, 取订阅subs的最后updatedat, 由于是2个订阅, 那个大取那个
		if (v.Updatedat.Before(v.Updateat)) {
			subList[k].Updatedat = v.Updateat
		}
	}
	return
}