task_info.go 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. package youngee_talent_model
  2. import (
  3. "youngmini_server/app/model"
  4. "github.com/gogf/gf/util/gmeta"
  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. AccountId int `json:"account_id"` // 账号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 SignTaskInfo struct {
  33. ProjectId string `json:"project_id"`
  34. AddressId uint64 `json:"address_id"`
  35. StrategyId int `json:"strategy_id"`
  36. Offer int `json:"offer"`
  37. }
  38. type TaskInfoBrief struct {
  39. TaskId string `json:"task_id"`
  40. PlatformIconUrl string `json:"platform_icon_url"`
  41. PlatformName string `json:"platform_name"`
  42. PlatformNickName string `json:"platform_nick_name"`
  43. ProjectName string `json:"project_name"`
  44. ProductPhotoSnap string `json:"product_photo_snap"`
  45. TaskStatus int `json:"task_status"`
  46. TaskStage int `json:"task_stage"`
  47. ScriptStatus uint `json:"script_status"` // 脚本上传状态 1-5分别代表待添加、已添加、待修改、已修改、已通过
  48. SketchStatus uint `json:"sketch_status"` // 初稿上传状态 1-5分别代表待添加、已添加、待修改、已修改、已通过
  49. LinkStatus uint `json:"link_status"` // 链接上传状态 1-5分别代表待添加、已添加、待修改、已修改、已通过
  50. DataStatus uint `json:"data_status"` // 数据上传状态 1-5分别代表待添加、已添加、待修改、已修改、已通过
  51. TaskReward float64 `json:"task_reward"` // 达人报酬
  52. BreakRate int `json:"break_rate"` // 违约扣款比例,百分之
  53. CurBreakAt *gtime.Time `json:"cur_break_at"` // 当前阶段截止时间
  54. FeeForm int `json:"fee_form"` // 稿费形式,1,2,3分别代表产品置换、固定稿费、自报价
  55. }
  56. type TaskInfoBriefList struct {
  57. AllTaskInfoList []*TaskInfoBrief `json:"all_Task_info_list"`
  58. SignUpTaskInfoList []*TaskInfoBrief `json:"sgin_up_Task_info_list"`
  59. GoingOnTaskInfoList []*TaskInfoBrief `json:"going_on_Task_info_list"`
  60. CompletedTaskInfoList []*TaskInfoBrief `json:"completed_Task_info_list"`
  61. }
  62. type EXETaskInfoBriefList struct {
  63. List1 []*TaskInfoBrief `json:"list1"`
  64. List2 []*TaskInfoBrief `json:"list2"`
  65. List3 []*TaskInfoBrief `json:"list3"`
  66. List4 []*TaskInfoBrief `json:"list4"`
  67. }
  68. type TaskNum struct {
  69. AllNum int `json:"all_num"`
  70. SignUpNum int `json:"sign_up_num"`
  71. GoingOnNum int `json:"going_on_num"`
  72. CompletedNum int `json:"completed_num"`
  73. }
  74. type ExeTaskNum struct {
  75. ScriptNum int `json:"script_num"`
  76. SketchNum int `json:"sketch_num"`
  77. LinkNum int `json:"link_num"`
  78. DataNum int `json:"data_num"`
  79. }
  80. type TaskDetail struct {
  81. TaskInfo *model.YoungeeTaskInfo `json:"task_info"`
  82. ProjectDetail *ProjectDetail `json:"project_detail"`
  83. ProductPhoto *model.YounggeeProductPhoto `json:"product_photo"`
  84. Strategy *model.RecruitStrategy `json:"strategy"`
  85. WithdrawStatus int `json:"withdraw_status"`
  86. }
  87. type IsSign struct {
  88. IsSign int `json:"is_sign"`
  89. IsAgree int `json:"is_agree"`
  90. TaskInfo *model.YoungeeTaskInfo `json:"task_info"`
  91. }
  92. type IsSignSecTask struct {
  93. IsSign int `json:"is_sign"`
  94. SecTaskInfo *model.YounggeeSecTaskInfo `json:"sec_task_info"`
  95. }