task_info.go 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287
  1. package youngee_talent_model
  2. import (
  3. "github.com/gogf/gf/util/gmeta"
  4. "youngmini_server/app/model"
  5. "github.com/gogf/gf/os/gtime"
  6. )
  7. // type YoungeeTaskInfo struct {
  8. // gmeta.Meta `orm:"table:youngee_task_info"`
  9. // TaskId string `json:"task_id"` // 任务id
  10. // ProjectId string `json:"project_id"` // 项目id
  11. // TalentId string `json:"talent_id"` // 达人id
  12. // OpenId string `json:"open_id"` //快手唯一标识
  13. // TalentPlatformInfoSnap string `json:"talent_platform_info_snap"` // 达人平台信息快照
  14. // TalentPersonalInfoSnap string `json:"talent_personal_info_snap"` // 达人个人信息快照
  15. // TalentPostAddrSnap string `json:"talent_post_addr_snap"` // 收货地址快照
  16. // StrategyId int `json:"strategy_id"` // 报名选择的招募策略id
  17. // TaskReward float64 `json:"task_reward"` // 达人报酬
  18. // SettleAmount float64 `json:"settle_amount"` // 达人实际所得(扣除违约扣款)
  19. // AllPayment float64 `json:"all_payment"` // 企业支付
  20. // RealPayment float64 `json:"real_payment"` // 企业实际支付(扣除违约扣款)
  21. // Penalty int `json:"penalty"` // 违约扣款比例,百分之
  22. // FeeForm int `json:"fee_form"` // 稿费形式,1,2,3分别代表产品置换、固定稿费、自报价
  23. // ServiceCharge float64 `json:"service_charge"` // 服务费
  24. // ServiceRate int `json:"service_rate"` // 服务费率,千分之
  25. // TaskStatus int `json:"task_status"` // 任务状态 1待选 2已选 3落选
  26. // TaskStage int `json:"task_stage"` // 任务阶段
  27. // CreateDate *gtime.Time `json:"create_date"` // 创建时间
  28. // SelectDate *gtime.Time `json:"select_date"` // 反选时间
  29. // CompleteStatus int `json:"complete_status"` // 结束方式 1未结束 2正常结束 3反选失败 4被解约
  30. // CompleteDate *gtime.Time `json:"complete_date"` // 结束时间
  31. // }
  32. type YoungeeTaskInfo struct {
  33. gmeta.Meta `orm:"table:youngee_task_info"`
  34. TaskId string `json:"task_id"` // 任务ID
  35. ProjectId string `json:"project_id"` // 项目ID
  36. TalentId string `json:"talent_id"` // 达人ID
  37. AccountId int `json:"account_id"` // 账号ID
  38. PlatformId int `json:"platform_id"`
  39. OpenId string `json:"open_id"` // 快手唯一标识
  40. StrategyId int `json:"strategy_id"` // 报名选择的招募策略ID
  41. TalentPlatformInfoSnap string `json:"talent_platform_info_snap"` // 达人平台信息快照
  42. TalentPersonalInfoSnap string `json:"talent_personal_info_snap"` // 达人个人信息快照
  43. TalentPostAddrSnap string `json:"talent_post_addr_snap"` // 收货地址快照
  44. TaskReward float64 `json:"task_reward"` // 达人报酬
  45. SettleAmount float64 `json:"settle_amount"` // 达人实际所得(扣除违约扣款)
  46. AllPayment float64 `json:"all_payment"` // 企业支付总额
  47. RealPayment float64 `json:"real_payment"` // 企业实际支付(扣除违约扣款)
  48. ServiceRate float64 `json:"service_rate"` // 服务费率(千分比)
  49. ServiceCharge float64 `json:"service_charge"` // 服务费
  50. FeeForm int `json:"fee_form"` // 稿费形式 1: 产品置换 2: 固定稿费 3: 自报价
  51. ErrBreakRate int `json:"err_break_rate"` // 未上传类型违约扣款比例(百分比)
  52. ScriptBreakRate int `json:"script_break_rate"` // 脚本超时违约扣款比例(百分比)
  53. SketchBreakRate int `json:"sketch_break_rate"` // 初稿超时违约扣款比例(百分比)
  54. LinkBreakRate int `json:"link_break_rate"` // 链接超时违约扣款比例(百分比)
  55. DataBreakRate int `json:"data_break_rate"` // 数据超时违约扣款比例(百分比)
  56. TaskStage int `json:"task_stage"` // 任务阶段
  57. TaskStatus int `json:"task_status"` // 商家任务状态 1: 待选 2: 已选 3: 落选
  58. LogisticsStatus int `json:"logistics_status"` // 发货状态 1: 待发货 2: 已发货 3: 已签收
  59. ScriptStatus int `json:"script_status"` // 脚本上传状态 1-5 表示各阶段
  60. SketchStatus int `json:"sketch_status"` // 初稿上传状态 1-5 表示各阶段
  61. LinkStatus int `json:"link_status"` // 链接上传状态 1-5 表示各阶段
  62. DataStatus int `json:"data_status"` // 数据上传状态 1-5 表示各阶段
  63. CompleteStatus int `json:"complete_status"` // 结束方式 1: 未结束 2: 正常结束 3: 反选失败 4: 被解约
  64. UpdateAt *gtime.Time `json:"update_at"` // 更新时间
  65. CreateDate *gtime.Time `json:"create_date"` // 创建时间
  66. SelectDate *gtime.Time `json:"select_date"` // 反选时间
  67. DeliveryDate *gtime.Time `json:"delivery_date"` // 发货时间
  68. CompleteDate *gtime.Time `json:"complete_date"` // 结束时间
  69. WithdrawDate *gtime.Time `json:"withdraw_date"` // 提现时间
  70. CurDefaultType int `json:"cur_default_type"` // 当前处于的违约类型
  71. WithdrawStatus int `json:"withdraw_status"` // 提现状态 1-4 表示不同状态
  72. LeadTeamId string `json:"lead_team_id"` // 团长young之团ID
  73. TeamId string `json:"team_id"` // 团员young之团ID
  74. SettleStatus int `json:"settle_status"` // 结算状态 1: 待结算 2: 已结算
  75. TeamIncome float64 `json:"team_income"` // 团长现金收益
  76. TeamPoint int `json:"team_point"` // 团长积分收益
  77. CurBreakAt *gtime.Time `json:"cur_break_at"` // 当前阶段截止时间
  78. SupplierId int `json:"supplier_id"` // 服务商ID
  79. SupplierStatus int `json:"supplier_status"` // 服务商任务状态
  80. DraftFee float64 `json:"draft_fee"` // 达人稿费
  81. SupportFee float64 `json:"support_fee"` //提报价格
  82. SignedTime *gtime.Time `json:"signed_time"` // 签收时间
  83. FansNum int `json:"fans_num"` // 粉丝数
  84. VoteAvg int `json:"vote_avg"` // 平均点赞数
  85. CommitAvg int `json:"commit_avg"` // 平均评论数
  86. BOperator string `json:"b_operator"` // 商家确定达人操作人ID
  87. BOperatorType int `json:"b_operator_type"` // 商家操作人类型
  88. SOperator int `json:"s_operator"` // 服务商提报达人操作人ID
  89. SOperatorType int `json:"s_operator_type"` // 服务商操作人类型
  90. SProjectId int `json:"s_project_id"` // 服务商种草任务ID
  91. ProjectDetail *ProjectDetail `json:"project_detail"` //项目详情
  92. WxNum string `json:"wx_num"`
  93. }
  94. type YoungeeLocalTaskInfo struct {
  95. gmeta.Meta `orm:"table:youngee_local_task_info"`
  96. TaskId string `json:"task_id"` // 任务ID
  97. LocalId string `json:"local_id"` // 项目ID
  98. TalentId string `json:"talent_id"` // 达人ID
  99. PlatformId int `json:"platform_id"`
  100. AccountId int `json:"account_id"` // 账号ID
  101. OpenId string `json:"open_id"` // 快手唯一标识
  102. StrategyId int `json:"strategy_id"` // 报名选择的招募策略ID
  103. TalentPlatformInfoSnap string `json:"talent_platform_info_snap"` // 达人平台信息快照
  104. TalentPersonalInfoSnap string `json:"talent_personal_info_snap"` // 达人个人信息快照
  105. TalentPostAddrSnap string `json:"talent_post_addr_snap"` // 收货地址快照
  106. TaskReward float64 `json:"task_reward"` // 达人报酬
  107. SettleAmount float64 `json:"settle_amount"` // 达人实际所得(扣除违约扣款)
  108. AllPayment float64 `json:"all_payment"` // 企业支付总额
  109. RealPayment float64 `json:"real_payment"` // 企业实际支付(扣除违约扣款)
  110. ServiceRate float64 `json:"service_rate"` // 服务费率(千分比)
  111. ServiceCharge float64 `json:"service_charge"` // 服务费
  112. FeeForm int `json:"fee_form"` // 稿费形式 1: 产品置换 2: 固定稿费 3: 自报价
  113. ErrBreakRate int `json:"err_break_rate"` // 未上传类型违约扣款比例(百分比)
  114. ScriptBreakRate int `json:"script_break_rate"` // 脚本超时违约扣款比例(百分比)
  115. SketchBreakRate int `json:"sketch_break_rate"` // 初稿超时违约扣款比例(百分比)
  116. LinkBreakRate int `json:"link_break_rate"` // 链接超时违约扣款比例(百分比)
  117. DataBreakRate int `json:"data_break_rate"` // 数据超时违约扣款比例(百分比)
  118. TaskStage int `json:"task_stage"` // 任务阶段
  119. TaskStatus int `json:"task_status"` // 商家任务状态 1: 待选 2: 已选 3: 落选
  120. LogisticsStatus int `json:"logistics_status"` // 发货状态 1: 待发货 2: 已发货 3: 已签收
  121. BookStatus int `json:"book_status"` // 脚本上传状态 1-5 表示各阶段
  122. SketchStatus int `json:"sketch_status"` // 初稿上传状态 1-5 表示各阶段
  123. LinkStatus int `json:"link_status"` // 链接上传状态 1-5 表示各阶段
  124. DataStatus int `json:"data_status"` // 数据上传状态 1-5 表示各阶段
  125. CompleteStatus int `json:"complete_status"` // 结束方式 1: 未结束 2: 正常结束 3: 反选失败 4: 被解约
  126. UpdateAt *gtime.Time `json:"update_at"` // 更新时间
  127. CreateDate *gtime.Time `json:"create_date"` // 创建时间
  128. SelectDate *gtime.Time `json:"select_date"` // 反选时间
  129. DeliveryDate *gtime.Time `json:"delivery_date"` // 发货时间
  130. CompleteDate *gtime.Time `json:"complete_date"` // 结束时间
  131. WithdrawDate *gtime.Time `json:"withdraw_date"` // 提现时间
  132. CurDefaultType int `json:"cur_default_type"` // 当前处于的违约类型
  133. WithdrawStatus int `json:"withdraw_status"` // 提现状态 1-4 表示不同状态
  134. LeadTeamId string `json:"lead_team_id"` // 团长young之团ID
  135. TeamId string `json:"team_id"` // 团员young之团ID
  136. SettleStatus int `json:"settle_status"` // 结算状态 1: 待结算 2: 已结算
  137. TeamIncome float64 `json:"team_income"` // 团长现金收益
  138. TeamPoint int `json:"team_point"` // 团长积分收益
  139. CurBreakAt *gtime.Time `json:"cur_break_at"` // 当前阶段截止时间
  140. SupplierId int `json:"supplier_id"` // 服务商ID
  141. SupplierStatus int `json:"supplier_status"` // 服务商任务状态
  142. DraftFee float64 `json:"draft_fee"` // 达人稿费
  143. SupportFee float64 `json:"support_fee"` //提报价格
  144. SignedTime *gtime.Time `json:"signed_time"` // 签收时间
  145. FansNum int `json:"fans_num"` // 粉丝数
  146. VoteAvg int `json:"vote_avg"` // 平均点赞数
  147. CommitAvg int `json:"commit_avg"` // 平均评论数
  148. BOperator string `json:"b_operator"` // 商家确定达人操作人ID
  149. BOperatorType int `json:"b_operator_type"` // 商家操作人类型
  150. SOperator int `json:"s_operator"` // 服务商提报达人操作人ID
  151. SOperatorType int `json:"s_operator_type"` // 服务商操作人类型
  152. SProjectId int `json:"s_project_id"` // 服务商种草任务ID
  153. ProjectDetail *ProjectDetail `json:"project_detail"` //项目详情
  154. WxNum string `json:"wx_num"`
  155. }
  156. type SignTaskInfo struct {
  157. ProjectId string `json:"project_id"`
  158. SProjectId int `json:"s_project_id"` //服务商加入商单
  159. OpenID string `json:"open_id"` //选中快手账号唯一标识
  160. AddressId uint64 `json:"address_id"`
  161. StrategyId int `json:"strategy_id"`
  162. Offer float64 `json:"offer"` //最终提交时的稿费
  163. WxNum string `json:"wx_num"`
  164. }
  165. type SignLocalTaskInfo struct {
  166. LocalId string `json:"local_id"`
  167. SLocalId int `json:"s_local_id"` //服务商加入商单
  168. OpenID string `json:"open_id"` //选中快手账号唯一标识
  169. StrategyId int `json:"strategy_id"`
  170. Offer float64 `json:"offer"` //最终提交时的稿费
  171. WxNum string `json:"wx_num"`
  172. }
  173. type TaskInfoBrief struct {
  174. TaskId string `json:"task_id"`
  175. PlatformIconUrl string `json:"platform_icon_url"`
  176. PlatformName string `json:"platform_name"`
  177. PlatformNickName string `json:"platform_nick_name"`
  178. ProjectName string `json:"project_name"`
  179. ProductPhotoSnap string `json:"product_photo_snap"`
  180. TaskStatus int `json:"task_status"`
  181. TaskStage int `json:"task_stage"`
  182. ScriptStatus int `json:"script_status"` // 脚本上传状态 1-5分别代表待添加、已添加、待修改、已修改、已通过
  183. SketchStatus int `json:"sketch_status"` // 初稿上传状态 1-5分别代表待添加、已添加、待修改、已修改、已通过
  184. LinkStatus int `json:"link_status"` // 链接上传状态 1-5分别代表待添加、已添加、待修改、已修改、已通过
  185. DataStatus int `json:"data_status"` // 数据上传状态 1-5分别代表待添加、已添加、待修改、已修改、已通过
  186. TaskReward float64 `json:"task_reward"` // 达人报酬
  187. BreakRate int `json:"break_rate"` // 违约扣款比例,百分之
  188. CurBreakAt *gtime.Time `json:"cur_break_at"` // 当前阶段截止时间
  189. FeeForm int `json:"fee_form"` // 稿费形式,1,2,3分别代表产品置换、固定稿费、自报价
  190. ProjectDetail *ProjectDetail `json:"project_detail"`
  191. AccountInfo *KuaishouUserInfo `json:"account_info"` //报名平台账号信息
  192. TaskInfo *YoungeeTaskInfo `json:"task_info"`
  193. SignUpTime *gtime.Time `json:"sign_up_time"` //报名时间
  194. }
  195. type LocalTaskInfoBrief struct {
  196. TaskId string `json:"task_id"`
  197. PlatformIconUrl string `json:"platform_icon_url"`
  198. PlatformName string `json:"platform_name"`
  199. PlatformNickName string `json:"platform_nick_name"`
  200. ProjectName string `json:"project_name"`
  201. ProductPhotoSnap string `json:"product_photo_snap"`
  202. TaskStatus int `json:"task_status"`
  203. TaskStage int `json:"task_stage"`
  204. ScriptStatus int `json:"script_status"` // 脚本上传状态 1-5分别代表待添加、已添加、待修改、已修改、已通过
  205. SketchStatus int `json:"sketch_status"` // 初稿上传状态 1-5分别代表待添加、已添加、待修改、已修改、已通过
  206. LinkStatus int `json:"link_status"` // 链接上传状态 1-5分别代表待添加、已添加、待修改、已修改、已通过
  207. DataStatus int `json:"data_status"` // 数据上传状态 1-5分别代表待添加、已添加、待修改、已修改、已通过
  208. TaskReward float64 `json:"task_reward"` // 达人报酬
  209. BreakRate int `json:"break_rate"` // 违约扣款比例,百分之
  210. CurBreakAt *gtime.Time `json:"cur_break_at"` // 当前阶段截止时间
  211. FeeForm int `json:"fee_form"` // 稿费形式,1,2,3分别代表产品置换、固定稿费、自报价
  212. LocalDetail *LocalInfoDetail `json:"local_detail"`
  213. AccountInfo *KuaishouUserInfo `json:"account_info"` //报名平台账号信息
  214. TaskInfo *YoungeeLocalTaskInfo `json:"task_info"`
  215. SignUpTime *gtime.Time `json:"sign_up_time"` //报名时间
  216. }
  217. type TaskInfoBriefList struct {
  218. AllTaskInfoList []*TaskInfoBrief `json:"all_Task_info_list"`
  219. SignUpTaskInfoList []*TaskInfoBrief `json:"sign_up_Task_info_list"`
  220. GoingOnTaskInfoList []*TaskInfoBrief `json:"going_on_Task_info_list"`
  221. CompletedTaskInfoList []*TaskInfoBrief `json:"completed_Task_info_list"`
  222. }
  223. type LocalTaskInfoBriefList struct {
  224. AllTaskInfoList []*LocalTaskInfoBrief `json:"all_Task_info_list"`
  225. WaitBookList []*LocalTaskInfoBrief `json:"book_Task_info_list"`
  226. SignUpTaskInfoList []*LocalTaskInfoBrief `json:"sign_up_Task_info_list"`
  227. GoingOnTaskInfoList []*LocalTaskInfoBrief `json:"going_on_Task_info_list"`
  228. CompletedTaskInfoList []*LocalTaskInfoBrief `json:"completed_Task_info_list"`
  229. }
  230. type EXETaskInfoBriefList struct {
  231. List1 []*TaskInfoBrief `json:"list1"`
  232. List2 []*TaskInfoBrief `json:"list2"`
  233. List3 []*TaskInfoBrief `json:"list3"`
  234. List4 []*TaskInfoBrief `json:"list4"`
  235. }
  236. type TaskNum struct {
  237. AllNum int `json:"all_num"`
  238. SignUpNum int `json:"sign_up_num"`
  239. GoingOnNum int `json:"going_on_num"`
  240. CompletedNum int `json:"completed_num"`
  241. }
  242. type ExeTaskNum struct {
  243. ScriptNum int `json:"script_num"`
  244. SketchNum int `json:"sketch_num"`
  245. LinkNum int `json:"link_num"`
  246. DataNum int `json:"data_num"`
  247. }
  248. type TaskDetail struct {
  249. TaskInfo *model.YoungeeTaskInfo `json:"task_info"`
  250. ProjectDetail *ProjectDetail `json:"project_detail"`
  251. ProductPhoto *model.YounggeeProductPhoto `json:"product_photo"`
  252. Strategy *model.RecruitStrategy `json:"strategy"`
  253. WithdrawStatus int `json:"withdraw_status"`
  254. }
  255. type LocalTaskDetail struct {
  256. TaskInfo *YoungeeLocalTaskInfo `json:"task_info"`
  257. LocalDetail *LocalInfoDetail `json:"local_detail"`
  258. ProductPhoto *YounggeeProductPhoto `json:"product_photo"`
  259. Strategy *RecruitStrategy `json:"strategy"`
  260. WithdrawStatus int `json:"withdraw_status"`
  261. }
  262. type IsSign struct {
  263. IsSign int `json:"is_sign"`
  264. IsAgree int `json:"is_agree"`
  265. TaskInfo *model.YoungeeTaskInfo `json:"task_info"`
  266. }
  267. type IsSignSecTask struct {
  268. IsSign int `json:"is_sign"`
  269. SecTaskInfo *SecTaskInfoDetail `json:"sec_task_info"`
  270. }