selection_task.go 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168
  1. package youngee_talent_model
  2. import (
  3. "github.com/gogf/gf/os/gtime"
  4. "github.com/gogf/gf/util/gmeta"
  5. "youngmini_server/app/model"
  6. )
  7. type SignSecTaskReq struct {
  8. SelectionId string `json:"selection_id"`
  9. ProductId string `json:"product_id"`
  10. AddressId uint64 `json:"address_id"` //添加橱窗不需要
  11. LeadTeamId string `json:"lead_team_id"` //添加橱窗不需要
  12. TeamId string `json:"team_id"` //添加橱窗不需要
  13. SaleNum int `json:"saleNum"`
  14. FansNum int `json:"fans"`
  15. OpenId string `json:"open_id"`
  16. IsOk int `json:"is_ok"` //此快手是否满足领样条件 0不满足,1满足
  17. }
  18. type SignSecTaskResp struct {
  19. TaskId string `json:"task_id"`
  20. }
  21. type SecTaskInfoDetail struct {
  22. gmeta.Meta `orm:"table:younggee_sec_task_info"`
  23. Id int `orm:"id,primary" json:"id"` // 递增id
  24. TaskId string `orm:"task_id" json:"task_id"` // 选品任务id
  25. SelectionId string `orm:"selection_id" json:"selection_id"` // 选品id
  26. OpenId string `orm:"open_id" json:"open_id"` //快手唯一标识
  27. ProductId string `orm:"product_id" json:"product_id"`
  28. TalentId string `orm:"talent_id" json:"talent_id"` // 达人id
  29. AccountId int `orm:"account_id" json:"account_id"` // 账号id
  30. PlatformId int `orm:"platform_id" json:"platform_id"` // 平台id
  31. TalentPlatformInfoSnap string `orm:"talent_platform_info_snap" json:"talent_platform_info_snap"` // 达人平台信息快照
  32. TalentPersonalInfoSnap string `orm:"talent_personal_info_snap" json:"talent_personal_info_snap"` // 达人个人信息快照
  33. TalentPostAddrSnap string `orm:"talent_post_addr_snap" json:"talent_post_addr_snap"` // 收货地址快照
  34. TaskReward float64 `orm:"task_reward" json:"task_reward"` // 达人赏金
  35. TalentPayment float64 `orm:"talent_payment" json:"talent_payment"` // 达人垫付金额
  36. IsPayPayment int `orm:"is_pay_payment" json:"is_pay_payment"` // 企业是否返样品钱
  37. IsPayReward int `orm:"is_pay_reward" json:"is_pay_reward"` // 企业是否结算悬赏
  38. TaskMode int `orm:"task_mode" json:"task_mode"` // 任务形式,1、2分别表示悬赏任务、纯佣带货',
  39. SampleMode int `orm:"sample_mode" json:"sample_mode"` // 领样形式,1-3分别表示免费领样、垫付买样、不提供样品
  40. TaskStatus int `orm:"task_status" json:"task_status"` // 任务状态 1待选 2已选 3落选
  41. TaskStage int `orm:"task_stage" json:"task_stage"` // 任务阶段,详情见info_sec_task_stage表
  42. CreateDate *gtime.Time `orm:"create_date" json:"create_date"` // 创建时间
  43. SelectDate *gtime.Time `orm:"select_date" json:"select_date"` // 反选时间
  44. DeliveryDate *gtime.Time `orm:"delivery_date" json:"delivery_date"` // 发货时间
  45. CompleteDate *gtime.Time `orm:"complete_date" json:"complete_date"` // 结束时间
  46. WithdrawDate *gtime.Time `orm:"withdraw_date" json:"withdraw_date"` // 提现时间
  47. CompleteStatus int `orm:"complete_status" json:"complete_status"` // 结束方式 1未结束 2正常结束 3反选失败
  48. LogisticsStatus int `orm:"logistics_status" json:"logistics_status"` // 发货状态 1 待发货 2已发货 3 已签收
  49. AssignmentStatus uint `orm:"assignment_status" json:"assignment_status"` // 作业上传状态 1-5分别代表待添加、已添加、待修改、已修改、已通过
  50. UpdateAt *gtime.Time `orm:"update_at" json:"update_at"` // 更新时间
  51. WithdrawStatus int `orm:"withdraw_status" json:"withdraw_status"` // 提现状态,1-4分别代表不可提现、可提现、提现中、已提现
  52. LeadTeamId string `orm:"lead_team_id" json:"lead_team_id"` // 作为团长的young之团id,对应younggee_talent_team中的team_id字段
  53. TeamId string `orm:"team_id" json:"team_id"` // 作为团员的young之团id,对应younggee_talent_team中的team_id字段
  54. TeamIncome int `orm:"team_income" json:"team_income"` // young之团团长现金收益
  55. TeamPoint int `orm:"team_point" json:"team_point"` // young之团团长积分收益
  56. FansNum int `orm:"fans_num" json:"fans_num"` // 粉丝数
  57. SaleNum int `orm:"sale_num" json:"sale_num"` // 30天橱窗销量
  58. FreeStage int `orm:"free_stage" json:"free_stage"` // 免费领样阶段,1-5分别代表已申请、已拒绝、待发货、已发货、已收货',
  59. RewardStage int `orm:"reward_stage" json:"reward_stage"` //悬赏阶段,1-2分别代表待结算、已结算',
  60. SaleActual int `orm:"sale_actual" json:"sale_actual"`
  61. SaleNumAll int `orm:"sale_num_all" json:"sale_num_all"` //达人对此商品的全部销售量(大于1表示已出单)
  62. RewardStrategy []*RewardStrategy `orm:"with:selection_id=selection_id"` // 悬赏策略表
  63. SelectionInfo *model.YounggeeSelectionInfo `orm:"with:selection_id=selection_id"` //选品表
  64. YounggeeProduct *YounggeeProduct `orm:"with:product_id=product_id"` // 商品基本表
  65. YounggeeProductPhoto []*YounggeeProductPhoto `orm:"with:product_id=product_id"` // 商品图片表
  66. PlatformInfo *PlatformInfo `orm:"with:platform_id=platform_id"` //platform_id=8的是快手平台信息,含有粉丝数和作品数
  67. KsUserInfo []*KuaishouUserInfo `orm:"with:open_id=open_id"`
  68. TaskDdl *gtime.Time `json:"task_ddl"`
  69. }
  70. type SecTaskInfoWindowDetail struct {
  71. gmeta.Meta `orm:"table:younggee_sec_task_info"`
  72. Id int `orm:"id,primary" json:"id"` // 递增id
  73. TaskId string `orm:"task_id" json:"task_id"` // 选品任务id
  74. SelectionId string `orm:"selection_id" json:"selection_id"` // 选品id
  75. OpenId string `orm:"open_id" json:"open_id"` //快手账号标识
  76. ProductId string `orm:"product_id" json:"product_id"`
  77. TalentId string `orm:"talent_id" json:"talent_id"` // 达人id
  78. AccountId int `orm:"account_id" json:"account_id"` // 账号id
  79. PlatformId int `orm:"platform_id" json:"platform_id"` // 平台id
  80. TalentPlatformInfoSnap string `orm:"talent_platform_info_snap" json:"talent_platform_info_snap"` // 达人平台信息快照
  81. TalentPersonalInfoSnap string `orm:"talent_personal_info_snap" json:"talent_personal_info_snap"` // 达人个人信息快照
  82. //TalentPostAddrSnap string `orm:"talent_post_addr_snap" json:"talent_post_addr_snap"` // 收货地址快照 加入橱窗不需要收获地址
  83. TaskReward float64 `orm:"task_reward" json:"task_reward"` // 达人赏金
  84. TalentPayment float64 `orm:"talent_payment" json:"talent_payment"` // 达人垫付金额
  85. IsPayPayment int `orm:"is_pay_payment" json:"is_pay_payment"` // 企业是否返样品钱
  86. IsPayReward int `orm:"is_pay_reward" json:"is_pay_reward"` // 企业是否结算悬赏
  87. TaskMode int `orm:"task_mode" json:"task_mode"` // 任务形式,1、2分别表示悬赏任务、纯佣带货',
  88. SampleMode int `orm:"sample_mode" json:"sample_mode"` // 领样形式,1-3分别表示免费领样、垫付买样、不提供样品
  89. TaskStatus int `orm:"task_status" json:"task_status"` // 任务状态 1待选 2已选 3落选
  90. TaskStage int `orm:"task_stage" json:"task_stage"` // 任务阶段,详情见info_sec_task_stage表
  91. CreateDate *gtime.Time `orm:"create_date" json:"create_date"` // 创建时间
  92. SelectDate *gtime.Time `orm:"select_date" json:"select_date"` // 反选时间
  93. DeliveryDate *gtime.Time `orm:"delivery_date" json:"delivery_date"` // 发货时间
  94. CompleteDate *gtime.Time `orm:"complete_date" json:"complete_date"` // 结束时间
  95. WithdrawDate *gtime.Time `orm:"withdraw_date" json:"withdraw_date"` // 提现时间
  96. CompleteStatus int `orm:"complete_status" json:"complete_status"` // 结束方式 1未结束 2正常结束 3反选失败
  97. LogisticsStatus int `orm:"logistics_status" json:"logistics_status"` // 发货状态 1 待发货 2已发货 3 已签收
  98. AssignmentStatus uint `orm:"assignment_status" json:"assignment_status"` // 作业上传状态 1-5分别代表待添加、已添加、待修改、已修改、已通过
  99. UpdateAt *gtime.Time `orm:"update_at" json:"update_at"` // 更新时间
  100. WithdrawStatus int `orm:"withdraw_status" json:"withdraw_status"` // 提现状态,1-4分别代表不可提现、可提现、提现中、已提现
  101. LeadTeamId string `orm:"lead_team_id" json:"lead_team_id"` // 作为团长的young之团id,对应younggee_talent_team中的team_id字段
  102. TeamId string `orm:"team_id" json:"team_id"` // 作为团员的young之团id,对应younggee_talent_team中的team_id字段
  103. TeamIncome int `orm:"team_income" json:"team_income"` // young之团团长现金收益
  104. TeamPoint int `orm:"team_point" json:"team_point"` // young之团团长积分收益
  105. FansNum int `orm:"fans_num" json:"fans_num"` // 粉丝数
  106. SaleNum int `orm:"sale_num" json:"sale_num"` // 30天橱窗销量
  107. FreeStage int `orm:"free_stage" json:"free_stage"` // 免费领样阶段,1-5分别代表已申请、已拒绝、待发货、已发货、已收货',
  108. RewardStage int `orm:"reward_stage" json:"reward_stage"` //悬赏阶段,1-2分别代表待结算、已结算',
  109. SaleActual int `orm:"sale_actual" json:"sale_actual"`
  110. SaleNumAll int `orm:"sale_num_all" json:"sale_num_all"` //达人对此商品的全部销售量(大于1表示已出单)
  111. RewardStrategy []*RewardStrategy `orm:"with:selection_id=selection_id"` // 悬赏策略表
  112. SelectionInfo *model.YounggeeSelectionInfo `orm:"with:selection_id=selection_id"` //选品表
  113. YounggeeProduct *YounggeeProduct `orm:"with:product_id=product_id"` // 商品基本表
  114. YounggeeProductPhoto []*YounggeeProductPhoto `orm:"with:product_id=product_id"` // 商品图片表
  115. PlatformInfo *PlatformInfo `orm:"with:platform_id=platform_id"`
  116. TaskDdl *gtime.Time `json:"task_ddl"`
  117. }
  118. type SecTaskInfoBrief struct {
  119. TaskId string `json:"task_id"` // 选品任务id
  120. SelectionId string `json:"selection_id"` // 选品id
  121. ProductId int `json:"product_id"` // 商品id
  122. TalentId string `json:"talent_id"` // 达人id
  123. AccountId int `json:"account_id"` // 账号id
  124. TalentPlatformInfoSnap string `json:"talent_platform_info_snap"` // 达人平台信息快照
  125. TalentPersonalInfoSnap string `json:"talent_personal_info_snap"` // 达人个人信息快照
  126. TalentPostAddrSnap string `json:"talent_post_addr_snap"` // 收货地址快照
  127. TaskReward float64 `json:"task_reward"` // 达人赏金
  128. TalentPayment float64 `json:"talent_payment"` // 达人垫付金额
  129. IsPayPayment int `json:"is_pay_payment"` // 企业是否返样品钱
  130. IsPayReward int `json:"is_pay_reward"` // 企业是否结算悬赏
  131. TaskMode int `json:"task_mode"` // 任务形式,1、2分别表示纯佣带货、悬赏任务
  132. SampleMode int `json:"sample_mode"` // 领样形式,1-3分别表示免费领样、垫付买样、不提供样品
  133. TaskStatus int `json:"task_status"` // 任务状态 1待选 2已选 3落选
  134. TaskStage int `json:"task_stage"` // 任务阶段,详情见info_sec_task_stage表
  135. CreateDate *gtime.Time `json:"create_date"` // 创建时间
  136. SelectDate *gtime.Time `json:"select_date"` // 反选时间
  137. DeliveryDate *gtime.Time `json:"delivery_date"` // 发货时间
  138. CompleteDate *gtime.Time `json:"complete_date"` // 结束时间
  139. WithdrawDate *gtime.Time `json:"withdraw_date"` // 提现时间
  140. CompleteStatus int `json:"complete_status"` // 结束方式 1未结束 2正常结束 3反选失败
  141. LogisticsStatus int `json:"logistics_status"` // 发货状态 1 待发货 2已发货 3 已签收
  142. AssignmentStatus uint `json:"assignment_status"` // 作业上传状态 1-5分别代表待添加、已添加、待修改、已修改、已通过
  143. UpdateAt *gtime.Time `json:"update_at"` // 更新时间
  144. WithdrawStatus int `json:"withdraw_status"` // 提现状态,1-4分别代表不可提现、可提现、提现中、已提现
  145. LeadTeamId string `json:"lead_team_id"` // 作为团长的young之团id,对应younggee_talent_team中的team_id字段
  146. TeamId string `json:"team_id"` // 作为团员的young之团id,对应younggee_talent_team中的team_id字段
  147. TeamIncome float64 `json:"team_income"` // young之团团长现金收益
  148. TeamPoint int `json:"team_point"` // young之团团长积分收益
  149. PlatformIconUrl string `json:"platform_icon_url"`
  150. PlatformName string `json:"platform_name"`
  151. PlatformNickName string `json:"platform_nick_name"`
  152. SelectionName string `json:"selection_name"`
  153. ProductPhotoSnap string `json:"product_photo_snap"`
  154. //YounggeeProductPhoto *[]model.YounggeeProductPhoto // 商品图片表
  155. TaskDdl *gtime.Time `json:"task_ddl"`
  156. }
  157. type SecTaskDetailResp struct {
  158. SecTaskInfo *SecTaskInfoDetail `json:"sec_task_info"`
  159. SelectionDetail *SelectionDetail `json:"selection_detail"`
  160. WithdrawStatus int `json:"withdraw_status"`
  161. }