package model import ( "pure-admin/global" "time" ) type MissionClaim struct { //领取任务记录 MissionId uint `gorm:"type:int(11)" json:"mission_id"` //任务id ClaimNo string `gorm:"unique;type:varchar(60);" json:"claim_no"` //领取任务编号 AchieveNum int64 `gorm:"type:int(11)" json:"achieve_num"` //已完成商品数量 CreateBy string `gorm:"size:64" json:"create_by"` //创建人 Status int `gorm:"type:tinyint(1)" json:"status"` //状态 1:已领取待发货 2:已发货 3:已收货推广中 ExpireAt time.Time `json:"expire_at"` //任务推广过期时间 Finished int `gorm:"type:tinyint(1);" json:"finished"` // 任务完成状态 0:未完成 1:已完成 OrderNum int64 `gorm:"type:int" json:"orderNum"` // 订单数 OrderMoney float64 `gorm:"type:decimal(10,2)" json:"orderMoney"` // 订单金额 RewardFinished float64 `gorm:"type:decimal(10,2)" json:"rewardFinished"` // 佣金结算 RewardUnfinished float64 `gorm:"type:decimal(10,2)" json:"rewardUnfinished"` // 在途佣金 global.MG_MODEL } type MissionClaimDetail struct { global.MG_MODEL MissionId uint `json:"mission_id"` //任务id ClaimNo string `json:"claim_no"` //领取任务编号 AchieveNum int64 `json:"achieve_num"` //完成数 Status int `json:"status"` //状态 1:已领取待发货 2:已发货 3:已收货推广中 HireMoney float64 `gorm:"-" json:"hire_money"` //佣金 CreateBy string `json:"-"` Influencer InfluencerUserView `gorm:"ForeignKey:UUID;References:CreateBy" json:"influencer"` //网红信息 Works []MissionClaimWorks `gorm:"ForeignKey:MissionClaimId;References:ID" json:"works"` //发布作品 Mission MissionDetail `gorm:"ForeignKey:MissionId;AssociationForeignKey:ID" json:"mission"` //关联任务 Order MissionClaimOrderInfo `gorm:"ForeignKey:MissionClaimId;AssociationForeignKey:ID" json:"order"` //任务订单 Video MissionClaimVideo `gorm:"ForeignKey:MissionClaimId;References:ID" json:"video"` //上传视频 } type MissionClaimInfluencer struct { global.MG_MODEL MissionId uint `json:"mission_id"` //任务id ClaimNo string `json:"claim_no"` //领取任务编号 AchieveNum int64 `json:"achieve_num"` //完成数 Status int `json:"status"` //状态 1:已领取待发货 2:已发货 3:已收货推广中 HireMoney float64 `gorm:"-" json:"hire_money"` //佣金 CreateBy string `json:"-"` Influencer InfluencerUserDesc `gorm:"ForeignKey:UUID;References:CreateBy" json:"influencer"` //网红信息 Works []MissionClaimWorks `gorm:"ForeignKey:MissionClaimId;References:ID" json:"works"` //发布作品 Video MissionClaimVideo `gorm:"ForeignKey:MissionClaimId;References:ID" json:"video"` //上传视频 } type MissionClaimInfo struct { MissionId uint `json:"mission_id"` //任务id ClaimNo string `json:"claim_no"` //领取任务编号 HireType int `gorm:"type:tinyint(1)" json:"hire_type"` //佣金类型 1:固定佣金 2:比例抽成 HireMoney float64 `gorm:"type:decimal(10,2);" json:"hire_money"` //hire_type==1 佣金金额 HireRatio float64 `gorm:"type:decimal(10,2);" json:"hire_ratio"` //hire_type==2 抽成比例 } type MissionClaimSummary struct { ClaimNo string `json:"claim_no"` //领取任务编号 Count int64 `json:"count"` //接任务数 OrderNum int64 `json:"order_num"` // 订单数 Bonus float64 `json:"bonus"` // 佣金 TransitBonus float64 `json:"transit_bonus"` // 在途佣金 FirstClaimAt time.Time `json:"first_claim_at"` //首次领取任务时间 CreateBy string `json:"create_by"` //网红ID Influencer InfluencerUserView `json:"influencer"` //网红信息 Platform string `json:"platform"` } type MissionClaimView struct { MissionId uint `json:"mission_id"` // 任务id ClaimNo string `json:"claim_no"` // 领取任务编号 CreateBy string `json:"create_by"` // 网红uuid User UserView `json:"user"` // 网红信息 MissionTitle string `json:"mission_title"` // 任务标题 } func (MissionClaim) TableName() string { return "mission_claim" } func (MissionClaimDetail) TableName() string { return "mission_claim" }