You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

140 lines
7.8 KiB

package response
import (
"pure-admin/model"
"time"
)
type MissionRecommendResponse struct {
SortIndex int `json:"sort_index"`
model.MissionRecommend
MissionVideoCommonData
}
type MissionVideoResponse struct {
ID uint `json:"id"`
SourceType int `json:"source_type" gorm:"type:tinyint(1);default:1"` //类型:1:固定费用上传 2:奖励任务上传 3:后台上传
MissionVideoCommonData
}
type MissionVideoCommonData struct {
MissionId uint `json:"mission_id"`
VideoUrl string `json:"video_url"`
Cover string `json:"cover"`
Title string `json:"title"`
GoodsTitle string `json:"goods_title"`
Influencer model.InfluencerUserView `json:"influencer"`
//todo 标签系统
Tag string `json:"tag"`
MissionStatus int `json:"mission_status"` //任务状态
StartTime *time.Time `json:"start_time"` //任务起始时间
EndTime *time.Time `json:"end_time"` //任务结束时间
HireType int `json:"hire_type"` //佣金类型 1:固定佣金 2:比例抽成
HireMoney float64 `json:"hire_money"` //hire_type==1 佣金金额
HireRatio float64 `json:"hire_ratio"` //hire_type==2 抽成比例
HireMoneyExpect string `gorm:"-" json:"hire_money_expect"` //预计佣金描述
ReleaseCountry string `gorm:"-" json:"release_country"` //发布国家
ReleaseChannels string `gorm:"-" json:"release_channels"` //发布渠道
Seller model.SellerStoreInfo `json:"seller"`
}
type MissionClaimVideo struct {
model.MissionClaimVideo
MissionId uint `json:"mission_id"` //任务id
MissionTitle string `json:"mission_title"` //任务名称
GoodsTitle string `json:"goods_title"` //商品名称
InfluencerUser model.InfluencerUserView `json:"influencer_user"` //网红信息
ClaimAt time.Time `json:"claim_at"` //接任务时间
ClaimDays int `json:"claim_days"` //完成任务时间
HireMoneyExpect string `gorm:"-" json:"hire_money_expect"` //预计佣金描述
}
type MissionClaimVideoDetail struct {
ClaimVideo model.MissionClaimVideo `json:"claim_video"`
InfluencerUser model.InfluencerUserDesc `json:"influencer_user"` //网红信息
ClaimGoods MissionClaimGoods `json:"claim_goods"` //商品信息
MissionClaim MissionClaimInfo `json:"mission_claim"` //任务领取信息
}
type MissionClaimGoods struct {
GoodsId uint `json:"goods_id"` //商品ID
OrderId string `json:"order_id"` //订单ID
SpuNo string `json:"spu_no"` //编号
Title string `json:"title"` //标题
TitleEng string `json:"title_eng"` //英文标题
Sales float64 `json:"sales"` //总销售量
Sales30 float64 `json:"sales_30"` //30天销售量
Status int `json:"status"` //1:上架 2:下架 3:售罄
Specs string `json:"specs"` //规格
SkuNo string `json:"sku_no"` //商品编码
Stock int64 `json:"stock"` //库存
Price float64 `json:"price"` //价格
Image string `json:"image"` //规格图片url
Tags string `json:"tags"` //标签
}
type MissionClaimInfo struct {
MissionId uint `json:"mission_id"` //任务id
Title string `json:"title"` //任务名称
ClaimAt time.Time `json:"claim_at"` //接任务时间
HireType int `json:"hire_type"` //佣金类型 1:固定佣金 2:比例抽成
HireMoney float64 `json:"hire_money"` //hire_type==1 佣金金额
HireRatio float64 `json:"hire_ratio"` //hire_type==2 抽成比例
HireMoneyExpect string `gorm:"-" json:"hire_money_expect"` //预计佣金描述
StartTime *time.Time `json:"start_time"` //任务起始时间
EndTime *time.Time `json:"end_time"` //任务结束时间
Status int `json:"status"` //状态 1:未开始 2:进行中 3:已结束
ClaimNum int64 `json:"claim_num"` //接任务人数
ClaimStock int64 `json:"claim_stock"` //可接任务库存
OrderNum int64 `gorm:"-" json:"order_num"` //订单数
ClaimDays int `gorm:"type:tinyint(11)" json:"claim_days"` //任务完成天数
ClaimDemands string `gorm:"type:varchar(500);" json:"claim_demands"` //任务拍摄要求
Description string `gorm:"type:varchar(2000);" json:"description"` //描述/卖点
model.Sample
model.VideoMaterial
ReleaseCountry string `gorm:"-" json:"release_country"` //发布国家
ReleaseChannels string `gorm:"-" json:"release_channels"` //发布渠道
}
type MissionCommonData struct {
MissionId uint `json:"mission_id"`
Title string `json:"title"`
GoodsTitle string `json:"goods_title"`
Tag string `json:"tag"`
MissionStatus int `json:"mission_status"` //任务状态
StartTime *time.Time `json:"start_time"` //任务起始时间
EndTime *time.Time `json:"end_time"` //任务结束时间
HireType int `json:"hire_type"` //佣金类型 1:固定佣金 2:比例抽成
HireMoney float64 `json:"hire_money"` //hire_type==1 佣金金额
HireRatio float64 `json:"hire_ratio"` //hire_type==2 抽成比例
HireMoneyExpect string `json:"hire_money_expect"` //预计佣金描述
ReleaseCountry string `json:"release_country"` //发布国家
ReleaseChannels string `json:"release_channels"` //发布渠道
ClaimNum int64 `json:"claim_num"` //接任务人数
Seller model.SellerStoreInfo `json:"seller"`
Description string `json:"description"` //描述/卖点
HasSample int `json:"has_sample"` //是否有样品 0:没有 1:有
HasVideo int `json:"has_video"` //是否有视频素材 0:没有 1:有
SampleNum int `json:"sample_num"` //样品数量
}
type MissionStopData struct {
Remark string `json:"remark"`
ID uint `json:"id"`
MissionCommonData
Goods model.TbGoods4List `json:"goods"` //商品信息
}
type MissionClaimSimpleData struct {
model.MissionClaim
Video model.MissionClaimVideo `json:"video"`
MissionId uint `json:"mission_id"` //任务id
MissionTitle string `json:"mission_title"` //任务名称
ClaimAt time.Time `json:"claim_at"` //接任务时间
ClaimDays int `json:"claim_days"` //完成任务时间
HireMoneyExpect string `json:"hire_money_expect"` //预计佣金描述
HireType int `json:"hire_type"` //佣金类型 1:固定佣金 2:比例抽成
VideoUrl string `json:"video_url"`
HasVideo int `json:"has_video"` //是否有视频素材 0:没有 1:有
SignUrl string `json:"sign_url"` //签约地址
}