project_detail.go 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177
  1. package youngee_talent_model
  2. import (
  3. "github.com/gogf/gf/os/gtime"
  4. "github.com/gogf/gf/util/gmeta"
  5. )
  6. type PlatformInfo struct {
  7. gmeta.Meta `orm:"table:info_third_platform"`
  8. PlatformId int `json:"platform_id"`
  9. PlatformIcon string `json:"platform_icon"`
  10. PlatformName string `json:"platform_name"`
  11. }
  12. type ProductInfo struct {
  13. gmeta.Meta `orm:"table:younggee_product"`
  14. ProductId int `json:"product_id"` // 商品id
  15. ProductName string `json:"product_name"` // 商品名称
  16. ProductType int `json:"product_type"` // 商品类型
  17. ShopAddress string `json:"shop_address"` // 店铺地址,商品类型为线下品牌时需填写
  18. ProductPrice int64 `json:"product_price"` // 商品价值
  19. ProductDetail string `json:"product_detail"` // 商品详情
  20. ProductUrl string `json:"product_url"` // 商品链接,可为电商网址、公司官网、大众点评的店铺地址等可以说明商品信息或者品牌信息的线上地址;
  21. BrandName string `json:"brand_name"` // 品牌名称
  22. ProductPhoto []*ProductPhoto `orm:"with:product_id=product_id"`
  23. }
  24. type ProductPhoto struct {
  25. gmeta.Meta `orm:"table:younggee_product_photo"`
  26. ProductPhotoId int `json:"product_photo_id"` // 商品图片id
  27. PhotoUrl string `json:"photo_url"` // 图片或视频url
  28. Symbol int `json:"symbol"` // 图片为主图或详情图标志位,1为主图,2为详情图,3为视频
  29. ProductId int `json:"product_id"` // 所属商品id
  30. }
  31. type RecruitStrategy struct {
  32. gmeta.Meta `orm:"table:recruit_strategy"`
  33. RecruitStrategyId int `json:"recruit_strategy_id"` // 招募策略id
  34. FeeForm int `json:"fee_form"` // 稿费形式,1-3分别代表产品置换、固定稿费、自报价
  35. StrategyId int `json:"strategy_id"` // 策略id
  36. FollowersLow int `json:"followers_low"` // 达人粉丝数下限
  37. FollowersUp int `json:"followers_up"` // 达人粉丝数上限
  38. RecruitNumber int `json:"recruit_number"` // 招募数量 每个策略招募的人数可以不一样
  39. Offer int `json:"offer"` // 商家or服务商的报价
  40. TOffer int `json:"t_offer"` // 达人真实所见的稿费,
  41. ProjectId string `json:"project_id"` // 所属项目id
  42. ServiceCharge float64 `json:"service_charge"` // 平台服务费,稿费形式为产品置换时必填
  43. ServiceRate float64 `json:"service_rate"` //服务费率
  44. IsFit int `json:"is_fit"` //此策略是否匹配成功
  45. }
  46. // 种草brief
  47. type ProjectBrief struct {
  48. gmeta.Meta `orm:"table:project_brief"`
  49. ProjectBriefId int `json:"project_brief_id"` // 项目图片id
  50. PhotoUrl string `json:"photo_url"` // 图片url
  51. PhotoUid string `json:"photo_uid"` //
  52. ProjectId string `json:"project_id"` // 所属项目id
  53. FileName string `json:"file_name"` // 文件名称
  54. }
  55. // 种草素材
  56. type ProjectMaterial struct {
  57. gmeta.Meta `orm:"table:project_material"`
  58. Material int `json:"material_id"` // 项目图片id
  59. PhotoUrl string `json:"photo_url"` // 图片url
  60. PhotoUid string `json:"photo_uid"` //
  61. ProjectId string `json:"project_id"` // 所属项目id
  62. FileName string `json:"file_name"` // 文件名称
  63. }
  64. // 商家表
  65. type Enterprise struct {
  66. gmeta.Meta `orm:"table:enterprise"`
  67. EnterpriseId int `orm:"enterprise_id" json:"enterprise_id"` // 企业id,用户ID的生成规则为:1(企业用户代码)+分秒数字+四位随机数字
  68. Industry int `orm:"industry" json:"industry"` // 行业,1-14分别代表能源、化工、材料、机械设备/军工、企业服务/造纸印刷、运输设备、旅游酒店、媒体/信息通信服务、批发/零售、消费品、卫生保健/医疗、金融、建材/建筑/房地产、公共事业
  69. BusinessName string `orm:"business_name" json:"business_name"` // 公司或组织名称
  70. UserId int `orm:"user_id,unique" json:"user_id"` // 对应用户id
  71. Balance float64 `orm:"balance" json:"balance"` // 账户余额
  72. FrozenBalance float64 `orm:"frozen_balance" json:"frozen_balance"` // 冻结余额
  73. AvailableBalance float64 `orm:"available_balance" json:"available_balance"` // 可用余额
  74. BillableAmount float64 `orm:"billable_amount" json:"billable_amount"` // 可开票金额
  75. Invoicing float64 `orm:"invoicing" json:"invoicing"` // 开票中金额
  76. Recharging float64 `orm:"recharging" json:"recharging"` // 充值中金额
  77. CreatedAt *gtime.Time `orm:"created_at" json:"created_at"` // 创建时间
  78. UpdatedAt *gtime.Time `orm:"updated_at" json:"updated_at"` // 更新时间
  79. AuthStatus int `orm:"auth_status" json:"auth_status"` // 商家认证状态,0未认证,1已认证
  80. }
  81. type YounggeeSupplier struct {
  82. gmeta.Meta `orm:"table:younggee_supplier"`
  83. SupplierId int `orm:"supplier_id" json:"supplier_id"` // 服务商ID
  84. SupplierName string `orm:"supplier_name" json:"supplier_name"` // 服务商名称
  85. PhoneNumber string `orm:"phone_number" json:"phone_number"` // 手机号
  86. BusinessLicense string `orm:"business_license" json:"business_license"` // 营业执照url
  87. USCI string `orm:"usci" json:"usci"` // 统一社会信用代码
  88. CompanyName string `orm:"company_name" json:"company_name"` // 公司名称
  89. IdFront string `orm:"id_front" json:"id_front"` // 身份证人像面url
  90. IdBack string `orm:"id_back" json:"id_back"` // 身份证国徽面url
  91. IdNumber string `orm:"id_number" json:"id_number"` // 身份证号
  92. Name string `orm:"name" json:"name"` // 姓名
  93. UserId int `orm:"user_id" json:"user_id"` // 用户表中的用户ID
  94. SupplierType int `orm:"supplier_type" json:"supplier_type"` // 服务商用户类型,1为个人PR,2为机构
  95. }
  96. // 服务商接手的项目信息
  97. type ProjectInfoSupplier struct {
  98. gmeta.Meta `orm:"table:younggee_s_project_info"`
  99. SProjectID int `orm:"s_project_id" json:"s_project_id"` // 服务商种草任务ID
  100. ProjectID string `orm:"project_id" json:"project_id"` // 被服务商加入商单的原种草任务ID
  101. ProjectStatus int8 `orm:"project_status" json:"project_status"` // 项目状态
  102. ProjectType int8 `orm:"project_type" json:"project_type"` // 种草任务类型
  103. ProjectName string `orm:"project_name" json:"project_name"` // 种草任务名称
  104. ProjectPlatform int8 `orm:"project_platform" json:"project_platform"` // 种草任务平台
  105. ProjectForm int8 `orm:"project_form" json:"project_form"` // 任务形式
  106. ContentType int8 `orm:"content_type" json:"content_type"` // 内容形式
  107. ShareCode string `orm:"share_code" json:"share_code"` // 分享码URL
  108. SupplierID int `orm:"supplier_id" json:"supplier_id"` // 服务商ID
  109. EnterpriseID string `orm:"enterprise_id" json:"enterprise_id"` // 所属企业ID
  110. ApplyNum int `orm:"apply_num" json:"apply_num"` // 报名人数
  111. RecruitNum int `orm:"recruit_num" json:"recruit_num"` // 已招募人数
  112. SettleNum int `orm:"settle_num" json:"settle_num"` // 已结算人数
  113. SubAccountID int `orm:"sub_account_id" json:"sub_account_id"` // 服务商子账号ID
  114. ServiceCharge float64 `orm:"service_charge" json:"service_charge"` // 服务商预估可赚服务费
  115. ServiceChargeActual float64 `orm:"service_charge_actual" json:"service_charge_actual"` // 服务商实际可赚服务费
  116. OperatorType int `orm:"operator_type" json:"operator_type"`
  117. }
  118. type ProjectDetail struct {
  119. gmeta.Meta `orm:"table:project_info"`
  120. ProjectId string `json:"project_id"` // 项目id
  121. ProjectName string `json:"project_name"` // 项目名称
  122. ProjectType int `json:"project_type"` // 项目类型,1代表全流程项目,2代表专项项目
  123. ProjectStatus int `json:"project_status"` // 项目状态,1-10分别代表创建中、待审核、审核通过、招募中、招募完毕、待支付、已支付、失效、执行中、已结案
  124. ProjectPlatform int `json:"project_platform"` // 项目平台,1-7分别代表小红书、抖音、微博、快手、b站、大众点评、知乎
  125. ProjectForm int `json:"project_form"` // 项目形式,1-4分别代表实体商品寄拍、虚拟产品测评、线下探店打卡、素材微原创
  126. TalentType string `json:"talent_type"` // 达人类型
  127. RecruitDdl *gtime.Time `json:"recruit_ddl"` // 招募截止时间
  128. ContentType int `json:"content_type"` // 内容形式,1代表图文,2代表视频
  129. ProjectDetail string `json:"project_detail"` // 项目详情
  130. ApplyNum int `json:"apply_num"` // 报名人数
  131. ProductId int `json:"product_id"` // 关联商品id
  132. EnterpriseId string `json:"enterprise_id"` // 所属企业id
  133. //SupplierId string `json:"supplier_id"` //所属服务商id
  134. WatchedNum int `json:"watched_num"` // 浏览量
  135. ProjectBrief []*ProjectBrief `orm:"with:project_id=project_id"` // 项目brief图
  136. ProjectMaterial []*ProjectMaterial `orm:"with:project_id=project_id"` // 项目brief图
  137. RecruitStrategy []*RecruitStrategy `orm:"with:project_id=project_id"` // 招募策略
  138. Enterprise *Enterprise //商家信息
  139. ProjectInfoSupplier *ProjectInfoSupplier //服务商单的project
  140. YounggeeSupplier *YounggeeSupplier //服务商信息
  141. PlatformInfo *PlatformInfo `orm:"with:platform_id=project_platform"` //平台信息,目前为快手
  142. ProductSnap string `orm:"product_snap" json:"product_snap"` // 商品信息快照
  143. ProductPhotoSnap string `orm:"product_photo_snap" json:"product_photo_snap"` // 商品图片快照
  144. ServiceChargeRate float64 `orm:"service_charge_rate" json:"service_charge_rate"` //服务费率
  145. ViewNum int `orm:"view_num" json:"view_num"` //浏览量
  146. //违约说明
  147. AutoTaskId int `orm:"auto_task_id" json:"auto_task_id"`
  148. AutoDefaltId int `orm:"auto_defalt_id" json:"auto_defalt_id"`
  149. DraftDefault *DraftDefault `json:"draft_default"` //初稿违约说明
  150. LinkDefault *LinkDefault `json:"link_breach"` //链接违约说明
  151. DataDefault *DataDefault `json:"data_default"` //数据违约说明
  152. }
  153. type DraftDefault struct {
  154. BreakTime int `json:"break_time"`
  155. BreakPecent int `json:"break_pecent"`
  156. }
  157. type LinkDefault struct {
  158. BreakTime int `json:"break_time"`
  159. BreakPecent int `json:"break_pecent"`
  160. }
  161. type DataDefault struct {
  162. BreakTime int `json:"break_time"`
  163. BreakPecent int `json:"break_pecent"`
  164. }