package backstage_model

import "github.com/gogf/gf/os/gtime"

// AccountManagement 账号管理界面需要展示的数据结构体
type AccountManagement struct {
	Tid              int         `orm:"tid"              json:"tid"`                             // 达人id(talent_info表中的id)
	Pid              int         `orm:"p_id"              json:"pid"`                            // 平台id(达人所在平台的ID)
	PAccountId       string      `orm:"p_account_id"           json:"pAccountId"`                // 平台名称 (小红书，抖音，微博，快手，B站，大众点评，知乎)
	FansCount        int64       `orm:"fans_count"       json:"fansCount"`                       // 粉丝数
	HomePageUrl      string      `orm:"home_page_url"    json:"homePageUrl"`                     // 主页链接
	TalentWxNickname string      `orm:"talent_info.talent_wx_nickname"  json:"talentWxNickname"` // 达人的微信昵称
	CreateDate       *gtime.Time `orm:"create_date"      json:"createDate"`                      // 创建时间(为提交时间)
	ExamineDate      *gtime.Time `orm:"examine_date"     json:"examineDate"`                     // 审核时间
	ExamineState     int         `orm:"examine_state"    json:"examineState"`                    // 审核状态 0待审核 1审核通过 2审核驳回
	PNickname        string      `orm:"p_nickname"  json:"pNickname"`                            // 达人的微信昵称
}

// ResponseFailReason 审核失败原因和审核时间查询
type ResponseFailReason struct {
	ExamineDate *gtime.Time `orm:"examine_date"     json:"examineDate"` // 审核时间
	FailReason  string      `orm:"fail_reason"  json:"failReason"`      // 达人的微信昵称
}

// RequestParam 有时间参数查询的参数
type RequestParam struct {
	Tid          int      `orm:"tid"              json:"tid"`                                // 达人id(talent_info表中的id)
	PAccountId   string   `orm:"p_account_id"           json:"pAccountId"`                   // 平台名称 (小红书，抖音，微博，快手，B站，大众点评，知乎)
	CreateDate   []string `orm:"r_talent_platform_table.create_date"      json:"createDate"` // 创建时间(为提交时间)
	ExamineState int      `orm:"examine_state"    json:"examineState"`                       // 审核状态 0待审核 1审核通过 2审核驳回
}

// RequestAccount AccountFindAll 根据Status返回所需要的查询数据
type RequestAccount struct {
	IndexPage    int `v:"required#页码不能为空"`
	PageSize     int `v:"required#每页展示行数不能为空"`
	RequestParam RequestParam
}

// AccountFindAll 根据Status返回所需要的查询数据
type AccountFindAll struct {
	IndexPage         int `v:"required#页码不能为空"`
	PageSize          int `v:"required#每页展示行数不能为空"`
	AccountManagement AccountManagement
}

// RequestAccountList  批量审核接收参数
type RequestAccountList struct {
	Tid        []string `orm:"tid"              json:"tid"`              // 达人id(talent_info表中的id)
	PAccountId []string `orm:"p_account_id"           json:"pAccountId"` // 在平台上面的id
	FailReason string   `orm:"fail_reason"    json:"failReason"`         // 审核状态 0待审核 1审核通过 2审核驳回
	Status     string
}
