selection_task.go 17 KB

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