dt_task.go 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. package entity
  2. // DtTask 任务表
  3. type DtTask struct {
  4. MysqlFullModel
  5. TaskNo string `json:"taskNo" gorm:"type:varchar(32);default:'';comment:任务编号"`
  6. CategoryId int64 `json:"categoryId" gorm:"index:idx_category_id;comment:分类ID"`
  7. Title string `json:"title" gorm:"type:varchar(128);comment:任务标题"`
  8. Description string `json:"description" gorm:"type:text;comment:任务描述"`
  9. Cover string `json:"cover" gorm:"type:varchar(255);comment:封面图"`
  10. TargetUrl string `json:"targetUrl" gorm:"type:varchar(512);comment:目标链接"`
  11. TaskType int8 `json:"taskType" gorm:"default:1;comment:任务类型: 1=关注 2=点赞 3=评论 4=分享 5=观看"`
  12. RewardAmount float64 `json:"rewardAmount" gorm:"type:decimal(18,2);default:0.00;comment:任务奖励(USDT)"`
  13. TotalCount int `json:"totalCount" gorm:"default:0;comment:任务总量"`
  14. RemainCount int `json:"remainCount" gorm:"default:0;comment:剩余数量"`
  15. CompletedCount int `json:"completedCount" gorm:"default:0;comment:完成数量"`
  16. MinLevel int `json:"minLevel" gorm:"default:0;comment:最低等级要求"`
  17. DailyLimit int `json:"dailyLimit" gorm:"default:1;comment:每人每日限制"`
  18. TotalLimit int `json:"totalLimit" gorm:"default:1;comment:每人总限制"`
  19. StartTime int64 `json:"startTime" gorm:"default:0;comment:开始时间"`
  20. EndTime int64 `json:"endTime" gorm:"default:0;comment:结束时间"`
  21. RequireScreenshot int8 `json:"requireScreenshot" gorm:"default:1;comment:是否需要截图: 0=否 1=是"`
  22. AutoAudit int8 `json:"autoAudit" gorm:"default:0;comment:是否自动审核: 0=否 1=是"`
  23. AuditTimeout int `json:"auditTimeout" gorm:"default:24;comment:审核超时(小时)"`
  24. IsTop int8 `json:"isTop" gorm:"default:0;comment:是否置顶: 0=否 1=是"`
  25. IsRecommend int8 `json:"isRecommend" gorm:"default:0;comment:是否推荐: 0=否 1=是"`
  26. // 认证要求标签
  27. RequirePhone int8 `json:"requirePhone" gorm:"default:0;comment:需要手机认证: 0=否 1=是"`
  28. RequireRealname int8 `json:"requireRealname" gorm:"default:0;comment:需要实名认证: 0=否 1=是"`
  29. RequireIdcard int8 `json:"requireIdcard" gorm:"default:0;comment:需要身份认证: 0=否 1=是"`
  30. Status int8 `json:"status" gorm:"default:0;index:idx_status;comment:状态: 0=筹备中 1=上架 2=下架 3=已结束"`
  31. Remark string `json:"remark" gorm:"type:varchar(255);comment:备注"`
  32. }
  33. // 任务状态常量
  34. const (
  35. TaskStatusPrepare = 0 // 筹备中
  36. TaskStatusOnline = 1 // 上架
  37. TaskStatusOffline = 2 // 下架
  38. TaskStatusEnded = 3 // 已结束
  39. )
  40. func (*DtTask) TableName() string {
  41. return "dt_task"
  42. }
  43. func (*DtTask) Comment() string {
  44. return "任务表"
  45. }
  46. func NewDtTask() *DtTask {
  47. return &DtTask{}
  48. }