selection.go 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. package youngee_talent_model
  2. import (
  3. "github.com/gogf/gf/util/gmeta"
  4. "github.com/gogf/gf/os/gtime"
  5. )
  6. // SelectionDetail结构结构体中内容更全面
  7. type SelectionInfo struct {
  8. gmeta.Meta `orm:"table:younggee_selection_info"`
  9. SelectionId string `json:"selection_id"` // 选品项目id
  10. SelectionName string `json:"selection_name"` // 选品项目名称
  11. EnterpriseId string `json:"enterprise_id"` // 所属企业id
  12. ProductId int `json:"product_id"` // 关联商品id
  13. ContentType int `json:"content_type"` // 内容形式,1代表图文,2代表视频
  14. SelectionStatus int `json:"selection_status"` // 选品项目状态,1-8分别代表创建中、待审核、审核通过、待支付、已支付、执行中、失效、已结案
  15. TaskMode int `json:"task_mode"` // 任务形式,1、2分别表示悬赏任务、纯佣带货
  16. Platform int `json:"platform"` // 项目平台,1-7分别代表小红书、抖音、微博、快手、b站、大众点评、知乎
  17. SampleMode int `json:"sample_mode"` // 领样形式,1、2分别表示免费领样、垫付领样
  18. SampleNum int `json:"sample_num"` // 样品数量
  19. RemainNum int `json:"remain_num"` // 剩余数量
  20. CommissionRate int `json:"commission_rate"` // 佣金比例
  21. EstimatedCost float64 `json:"estimated_cost"` // 预估成本
  22. TaskReward float64 `json:"task_reward"` // 任务悬赏
  23. RewardCondition string `json:"reward_condition"` // 返现悬赏条件
  24. SettlementAmount float64 `json:"settlement_amount"` // 结算金额
  25. TaskDdl *gtime.Time `json:"task_ddl"` // 招募截止时间
  26. Detail string `json:"detail"` // 卖点总结
  27. ProductSnap string `json:"product_snap"` // 商品信息快照
  28. ProductPhotoSnap string `json:"product_photo_snap"` // 商品图片快照
  29. CreatedAt *gtime.Time `json:"created_at"` // 创建时间
  30. UpdatedAt *gtime.Time `json:"updated_at"` // 修改时间
  31. FailReason int `json:"fail_reason"` // 失效原因,1、2分别表示逾期未支付、项目存在风险
  32. PassAt *gtime.Time `json:"pass_at"` // 审核通过时间
  33. FinishAt *gtime.Time `json:"finish_at"` // 结案时间
  34. IsRead int `json:"is_read"` // 是否已读
  35. SubmitAt *gtime.Time `json:"submit_at"` // 提交审核时间
  36. }
  37. type SelectionInfoList struct {
  38. Count int `json:"count"`
  39. MaxPage int `json:"max_page"`
  40. SelectionDetail []*SelectionDetail
  41. //SeletionInfos []*SelectionInfo
  42. }
  43. type FreeStrategy struct {
  44. gmeta.Meta `orm:"table:free_strategy"`
  45. FreeStrategyId int `orm:"free_strategy_id" json:"free_strategy_id"` // 免费领样策略id
  46. StrategyId int `orm:"strategy_id" json:"strategy_id"` // 策略编号
  47. SelectionId string `orm:"selection_id" json:"selection_id"` // 带货任务id
  48. FansNum int `orm:"fans_num" json:"fans_num"` // 粉丝数量
  49. SaleNum int `orm:"sale_num" json:"sale_num"` // 近30天橱窗销量
  50. StrategyStatus int `orm:"strategy_status" json:"strategy_status"` // 策略状态
  51. EnrollNum int `orm:"enroll_num" json:"enroll_num"` // 报名数量
  52. ChooseNum int `orm:"choose_num" json:"choose_num"` // 已选数量
  53. BeforeDeliveryNum int `orm:"before_delivery_num" json:"before_delivery_num"` // 待发货数量
  54. DeliveryNum int `orm:"delivery_num" json:"delivery_num"` // 已发货数量
  55. AfterDeliveryNum int `orm:"after_delivery_num" json:"after_delivery_num"` // 已签收数量
  56. }
  57. type RewardStrategy struct {
  58. gmeta.Meta `orm:"table:reward_strategy"`
  59. RewardStrategyId int `orm:"reward_strategy_id" json:"reward_strategy_id"` // 悬赏策略id
  60. Reward float64 `orm:"reward" json:"reward"` // 悬赏池总金额
  61. SaleActual int `orm:"sale_actual" json:"sale_actual"` // 实际带货销量
  62. PerReward float64 `orm:"per_reward" json:"per_reward"` // 每人可获得悬赏金
  63. StrategyStatus int `orm:"strategy_status" json:"strategy_status"` // 悬赏策略状态
  64. SelectionId string `orm:"selection_id" json:"selection_id"`
  65. }
  66. type SelectionBrief struct {
  67. gmeta.Meta `orm:"table:younggee_sec_brief"`
  68. SectionBriefId int `json:"section_brief_id"` // brief的Id
  69. FileUrl string `json:"file_url"` // 文件url
  70. FileUid string `json:"file_uid"` // 文件uid
  71. SelectionId string `json:"selection_id"` // 所属项目id
  72. CreatedAt *gtime.Time `json:"created_at"` // 创建时间
  73. FileName string `json:"file_name"` // 文件名称
  74. }
  75. type SelectionExample struct {
  76. gmeta.Meta `orm:"table:younggee_sec_example"`
  77. ExampleId int `json:"example_id"` // 选品示例图id
  78. FileUrl string `json:"file_url"` // 文件url
  79. FileUid string `json:"file_uid"` // 文件uid
  80. SelectionId string `json:"selection_id"` // 所属选品id
  81. CreatedAt *gtime.Time `json:"created_at"` // 创建时间
  82. FileName string `json:"file_name"` // 文件名称
  83. }
  84. type SelectionDetail struct {
  85. gmeta.Meta `orm:"table:younggee_selection_info"`
  86. SelectionName string `json:"selection_name"` // 选品项目名称
  87. SelectionId string `json:"selection_id"` // 选品项目id
  88. EnterpriseId string `json:"enterprise_id"` // 所属企业id
  89. ProductId int `json:"product_id"` // 关联商品id
  90. ContentType int `json:"content_type"` // 内容形式,1代表图文,2代表视频
  91. SelectionStatus int `json:"selection_status"` // 选品项目状态,1-10分别代表创建中、待审核、审核通过、招募中、招募完毕、待支付、已支付、失效、执行中、已结案
  92. TaskMode int `json:"task_mode"` // 任务形式,1、2分别表示悬赏任务、纯佣带货
  93. Platform int `json:"platform"` // 项目平台,1-7分别代表小红书、抖音、微博、快手、b站、大众点评、知乎
  94. SampleMode int `json:"sample_mode"` // 领样形式,1、2分别表示免费领样、垫付领样
  95. ProductUrl string `json:"product_url"` // 带货链接
  96. SampleNum int `json:"sample_num"` // 样品数量
  97. RemainNum int `json:"remain_num"` // 剩余数量
  98. TaskDdl *gtime.Time `json:"task_ddl"` // 招募截止时间
  99. Detail string `json:"detail"` // 卖点总结
  100. TaskReward float64 `json:"task_reward"` // 任务悬赏
  101. CommissionRate int `json:"commission_rate"` // 佣金比例
  102. EstimatedCost float64 `json:"estimated_cost"` // 预估成本
  103. SampleCondition string `json:"sample_condition"` // 领样条件
  104. RewardCondition string `json:"reward_condition"` // 返现悬赏条件
  105. CreatedAt *gtime.Time `json:"created_at"` // 创建时间
  106. UpdatedAt *gtime.Time `json:"updated_at"` // 修改时间
  107. FailReason int `json:"fail_reason"` // 失效原因,1、2分别表示逾期未支付、项目存在风险
  108. PassAt *gtime.Time `json:"pass_at"` // 审核通过时间
  109. FinishAt *gtime.Time `json:"finish_at"` // 结案时间
  110. IsRead int `json:"is_read"` // 是否已读
  111. SettlementAmount float64 `json:"settlement_amount"` // 结算金额
  112. ProductSnap string `json:"product_snap"` // 商品信息快照
  113. ProductPhotoSnap string `json:"product_photo_snap"` // 商品图片快照
  114. SubmitAt *gtime.Time `json:"submit_at"` // 提交审核时间
  115. RemainRewardPoll int `json:"remain_reward_poll"` // 悬赏池中剩余的金额
  116. SelectionBrief []*SelectionBrief `orm:"with:selection_id=selection_id"` // 项目brief 一个selection可能有多个brief,用列表
  117. SelectionExample []*SelectionExample `orm:"with:selection_id=selection_id"` // 项目样例图
  118. FreeStrategy []*FreeStrategy `orm:"with:selection_id=selection_id"` // 领样策略表
  119. RewardStrategy []*RewardStrategy `orm:"with:selection_id=selection_id"` // 悬赏策略表
  120. YounggeeProduct []*YounggeeProduct `orm:"with:product_id=product_id"` // 商品基本表
  121. YounggeeProductPhoto []*YounggeeProductPhoto `orm:"with:product_id=product_id"` // 商品图片表
  122. PlatformInfo *PlatformInfo `orm:"with:platform_id=platform"` //一个selection只有一个平台,直接指针对象object
  123. }