package http_model

import (
	"time"
)

type ProjectTaskListRequest struct {
	PageSize         int64  `json:"page_size"`
	PageNum          int64  `json:"page_num"`
	ProjectId        string `json:"project_id"`        // 种草任务ID
	TaskId           string `json:"task_id"`           // 任务ID
	StrategyId       string `json:"strategy_id"`       // 策略ID
	TaskStatus       string `json:"task_status"`       // 任务状态
	PlatformNickname string `json:"platform_nickname"` // 账号昵称
	SProjectId       int    `json:"s_project_id"`      // 服务商种草任务ID
	SupplierStatus   int    `json:"supplier_status"`   // 服务商任务状态 0表示达人来源非服务商 1待选 2已选 3落选
}

type ProjectTaskPreview struct {
	TaskId           string  `json:"task_id"`           // 任务ID
	PlatformNickname string  `json:"platform_nickname"` // 账号昵称
	FansCount        string  `json:"fans_count"`        // 粉丝数
	AvatarUrl        string  `json:"avatar_url"`        // 达人头像url
	Location         string  `json:"location"`          // 达人所在地区
	Gender           string  `json:"gender"`            // 达人性别
	ServiceCharge    float64 `json:"service_charge"`    // 服务费
	DraftFee         float64 `json:"draft_fee"`         // 达人稿费
	SupportFee       float64 `json:"support_fee"`       // 提报价格
	StrategyId       string  `json:"strategy_id"`       // 报名选择的招募策略id
	TaskStatus       string  `json:"task_status"`       // 任务状态
	CreateDate       string  `json:"create_date"`       // 创建时间
	SelectDate       string  `json:"select_date"`       // 商家同意时间
	DeliveryDate     string  `json:"delivery_date"`     // 发货时间
	SignedTime       string  `json:"signed_time"`       // 收货时间
	CurBreakAt       string  `json:"cur_break_at"`      // 当前阶段结束时间
	FansNum          int     `json:"fans_num"`          // 粉丝数
	VoteAvg          int     `json:"vote_avg"`          // 平均点赞数
	CommitAvg        int     `json:"commit_avg"`        // 平均评论数
	BOperator        string  `json:"b_operator"`        // 商家确定达人操作人ID
	BOperatorType    int     `json:"b_operator_type"`   // 商家操作人类型，1商家用户，2商家子账号，3管理后台
	SOperator        int     `json:"s_operator"`        // 服务商确定达人操作人ID
	SOperatorType    int     `json:"s_operator_type"`   // 服务商操作人类型，1服务商用户，2服务商子账号，3管理后台
	TaskStage        int     `json:"task_stage"`        // 任务状态
}

type ProjectTaskInfo struct {
	TaskID             string    `json:"task_id"`               // 任务id
	PlatformNickname   string    `json:"platform_nickname"`     // 在平台上的昵称
	FansCount          string    `json:"fans_count"`            // 粉丝数
	HomePageCaptureUrl string    `json:"home_page_capture_url"` // 主页截图链接
	AvatarUrl          string    `json:"avatar_url"`            // 达人头像url
	Location           string    `json:"location"`              // 达人所在地区
	Gender             string    `json:"gender"`                // 达人性别
	TaskStage          int       `json:"task_stage"`            // 任务状态
	ServiceCharge      float64   `json:"service_charge"`        // 服务费
	DraftFee           float64   `json:"draft_fee"`             // 达人稿费
	SupportFee         float64   `json:"support_fee"`           // 提报价格
	StrategyID         int       `json:"strategy_id"`           // 报名选择的招募策略id
	AllPayment         float64   `json:"all_payment"`           // 企业支付
	TaskReward         float64   `json:"task_reward"`           // 任务奖励金额
	HomePageUrl        string    `json:"home_page_url"`         // 主页链接
	TaskStatus         string    `json:"task_status"`           // 任务状态 1待选 2已选 3落选
	CreateDate         time.Time `json:"create_date"`           // 创建时间
	FansNum            int       `json:"fans_num"`              // 粉丝数
	VoteAvg            int       `json:"vote_Avg"`              // 平均点赞数
	CommitAvg          int       `json:"commit_avg"`            // 平均评论数
	BOperator          string    `json:"b_operator"`            // 商家确定达人操作人ID
	BOperatorType      int       `json:"b_operator_type"`       // 商家操作人类型，1商家用户，2商家子账号，3管理后台
	SOperator          int       `json:"s_operator"`            // 服务商确定达人操作人ID
	SOperatorType      int       `json:"s_operator_type"`       // 服务商操作人类型，1服务商用户，2服务商子账号，3管理后台
}

type ProjectTaskListData struct {
	ProjectTaskPreview  []*ProjectTaskPreview `json:"project_task_pre_view"` // Task
	RecruitNum          int                   `json:"recruit_num"`           // 执行人数
	QuitNum             int                   `json:"quit_num"`              // 解约人数
	SettleNum           int                   `json:"settle_num"`            // 结算人数
	ServiceChargeActual float64               `json:"service_charge_actual"` // 服务费总额
	ServiceChargeSettle float64               `json:"service_charge_settle"` // 服务费已结算
	Total               string                `json:"total"`
}

func NewProjectTaskListRequest() *ProjectTaskListRequest {
	return new(ProjectTaskListRequest)
}

func NewProjectTaskListResponse() *CommonResponse {
	resp := new(CommonResponse)
	resp.Data = new(ProjectTaskListData)
	return resp
}
