package talent_model

import (
	"github.com/gogf/gf/util/gmeta"
)

type BilibiliBriefInfo struct {
	gmeta.Meta `orm:"table:platform_bilibili_account_info"`

	PlatformNickname string `json:"platform_nickname"`
	FansCount        int64  `json:"fans_count"`    // 粉丝数
	GotLikeCount     int64  `json:"got_like_count"` // 点赞数
	TalentId         int    `json:"talent_id"`     // 达人账号id(talent_info表id值)
}

type DianpingBriefInfo struct {
	gmeta.Meta `orm:"table:platform_dianping_account_info"`

	PlatformNickname string `json:"platform_nickname"`
	FansCount        int64  `json:"fansCount"`    // 粉丝数
	GotLikeCount     int64  `json:"gotLikeCount"` // 点赞数
	TalentId         int    `json:"talentId"`     // 达人账号id(talent_info表id值)
}

type KuaishouBriefInfo struct {
	gmeta.Meta `orm:"table:platform_kuaishou_account_info"`

	PlatformNickname string `json:"platform_nickname"`
	FansCount        int64  `json:"fansCount"`        // 粉丝数
	CompositionCount int64  `json:"compositionCount"` // 作品数量
	TalentId         int    `json:"talentId"`         // 达人账号id(talent_info表id值)
}


type LittleRedBookBriefInfo struct {
	gmeta.Meta `orm:"table:platform_little_red_book_account_info"`

	PlatformNickname string `json:"platform_nickname"`
	FansCount        int64  `json:"fansCount"`    // 粉丝数
	GotLikeCount     int64  `json:"gotLikeCount"` // (点)赞(收)藏数
	TalentId         int    `json:"talentId"`     // 达人账号id(talent_info表id值)
}


type TiktokBriefInfo struct {
	gmeta.Meta `orm:"table:platform_tiktok_account_info"`

	PlatformNickname string `json:"platform_nickname"`
	FansCount        int64  `json:"fansCount"`    // 粉丝数
	GotLikeCount     int64  `json:"gotLikeCount"` // 点赞数
	TalentId         int    `json:"talentId"`     // 达人账号id(talent_info表id值)
}


type WeiboBriefInfo struct {
	gmeta.Meta `orm:"table:platform_weibo_account_info"`

	PlatformNickname string `json:"platform_nickname"` //平台昵称
	FansCount        int64  `json:"fansCount"`     // 粉丝数
	WeiboTotalNum    int64  `json:"weiboTotalNum"` // 微博总量
	TalentId         int    `json:"talentId"`      // 达人账号id(talent_info表id值)
}


type ZhihuBriefInfo struct {
	gmeta.Meta `orm:"table:platform_zhihu_account_info"`

	PlatformNickname string `json:"platform_nickname"` //平台昵称
	FansCount        int64  `json:"fansCount"`         // 粉丝数
	GotAgreeCount    int64  `json:"gotAgreeCount"`     // 被赞同总数
	TalentId         int    `json:"talentId"`          // 达人账号id(talent_info表的id值)
}

type TalentLittleRedBookBriefInfo struct {
	gmeta.Meta         `orm:"table:r_talent_platform_table"`
	Tid                int                     `json:"-"`            // 达人id(talent_info表中的id)
	PId                int                     `json:"p_id"`         // 平台id(info_third_platform表中的id)
	ExamineState       int                     `json:"examineState"` // 审核状态 0待审核 1审核通过 2审核驳回
	FailReason         string                  `json:"failReason"`   // 审核驳回原因
	LittleRedBookBrief *LittleRedBookBriefInfo `orm:"with:talent_id=tid"`
}

type TalentTiktokBriefInfo struct {
	gmeta.Meta   `orm:"table:r_talent_platform_table"`
	Tid          int              `json:"-"`            // 达人id(talent_info表中的id)
	PId          int              `json:"p_id"`         // 平台id(info_third_platform表中的id)
	ExamineState int              `json:"examineState"` // 审核状态 0待审核 1审核通过 2审核驳回
	FailReason   string           `json:"failReason"`   // 审核驳回原因
	TiktokBrief  *TiktokBriefInfo `orm:"with:talent_id=tid"`
}

type TalentWeiboBriefInfo struct {
	gmeta.Meta   `orm:"table:r_talent_platform_table"`
	Tid          int             `json:"-"`            // 达人id(talent_info表中的id)
	PId          int             `json:"p_id"`         // 平台id(info_third_platform表中的id)
	ExamineState int             `json:"examineState"` // 审核状态 0待审核 1审核通过 2审核驳回
	FailReason   string          `json:"failReason"`   // 审核驳回原因
	WeiboBrief   *WeiboBriefInfo `orm:"with:talent_id=tid"`
}

type TalentKuaishouBriefInfo struct {
	gmeta.Meta    `orm:"table:r_talent_platform_table"`
	Tid           int                `json:"-"`            // 达人id(talent_info表中的id)
	PId           int                `json:"p_id"`         // 平台id(info_third_platform表中的id)
	ExamineState  int                `json:"examineState"` // 审核状态 0待审核 1审核通过 2审核驳回
	FailReason    string             `json:"failReason"`   // 审核驳回原因
	KuaishouBrief *KuaishouBriefInfo `orm:"with:talent_id=tid"`
}

type TalentBilibliBriefInfo struct {
	gmeta.Meta    `orm:"table:r_talent_platform_table"`
	Tid           int                `json:"-"`            // 达人id(talent_info表中的id)
	PId           int                `json:"p_id"`         // 平台id(info_third_platform表中的id)
	ExamineState  int                `json:"examineState"` // 审核状态 0待审核 1审核通过 2审核驳回
	FailReason    string             `json:"failReason"`   // 审核驳回原因
	BilibiliBrief *BilibiliBriefInfo `orm:"with:talent_id=tid"`
}

type TalentDianpingBriefInfo struct {
	gmeta.Meta    `orm:"table:r_talent_platform_table"`
	Tid           int                `json:"-"`            // 达人id(talent_info表中的id)
	PId           int                `json:"p_id"`         // 平台id(info_third_platform表中的id)
	ExamineState  int                `json:"examineState"` // 审核状态 0待审核 1审核通过 2审核驳回
	FailReason    string             `json:"failReason"`   // 审核驳回原因
	DianpingBrief *DianpingBriefInfo `orm:"with:talent_id=tid"`
}

type TalentZhihuBriefInfo struct {
	gmeta.Meta   `orm:"table:r_talent_platform_table"`
	Tid          int             `json:"-"`            // 达人id(talent_info表中的id)
	PId          int             `json:"p_id"`         // 平台id(info_third_platform表中的id)
	ExamineState int             `json:"examineState"` // 审核状态 0待审核 1审核通过 2审核驳回
	FailReason   string          `json:"failReason"`   // 审核驳回原因
	ZhihuBrief   *ZhihuBriefInfo `orm:"with:talent_id=tid"`
}

type TalentPlatformBriefInfo struct {
	gmeta.Meta `orm:"table:talent_info"`
	Id                int         `json:"id"`                //
	TalentWxOpenid    string      `json:"talentWxOpenid"`    // 达人的微信openid
	TalentWxNickname  string      `json:"talentWxNickname"`  // 达人的微信昵称
	LittleRedBookBriefInfo *TalentLittleRedBookBriefInfo `orm:"with:tid=id, where:p_id=1"`
	TiktokBriefInfo *TalentTiktokBriefInfo `orm:"with:tid=id, where:p_id=2"`
	WeiboBriefInfo *TalentWeiboBriefInfo `orm:"with:tid=id, where:p_id=3"`
	KuaishouBriefInfo *TalentKuaishouBriefInfo `orm:"with:tid=id, where:p_id=4"`
	BiliBiliBriefInfo *TalentBilibliBriefInfo `orm:"with:tid=id, where:p_id=5"`
	DianpingBriefInfo *TalentDianpingBriefInfo `orm:"with:tid=id, where:p_id=6"`
	ZhihuBriefInfo *TalentZhihuBriefInfo `orm:"with:tid=id, where:p_id=7"`
}