project_detail.go 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174
  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. FileUrl string `json:"file_url"` //文件url
  51. FileUid string `json:"file_uid"` //文件uid
  52. ProjectId string `json:"project_id"` // 所属项目id
  53. FileName string `json:"file_name"` // 文件名称
  54. Type string `json:"type"` //(1图片 2文档)
  55. }
  56. // 种草
  57. type ProjectMaterial struct {
  58. gmeta.Meta `orm:"table:project_material"`
  59. Material int `json:"material_id"` // 项目图片id
  60. FileUrl string `json:"file_url"` //文件url
  61. FileUid string `json:"file_uid"` //文件uid
  62. ProjectId string `json:"project_id"` // 所属项目id
  63. FileName string `json:"file_name"` // 文件名称
  64. Type string `json:"type"` //(1图片 2文档)
  65. }
  66. // 商家表
  67. type Enterprise struct {
  68. gmeta.Meta `orm:"table:enterprise"`
  69. EnterpriseId int `orm:"enterprise_id" json:"enterprise_id"` // 企业id,用户ID的生成规则为:1(企业用户代码)+分秒数字+四位随机数字
  70. Industry int `orm:"industry" json:"industry"` // 行业,1-14分别代表能源、化工、材料、机械设备/军工、企业服务/造纸印刷、运输设备、旅游酒店、媒体/信息通信服务、批发/零售、消费品、卫生保健/医疗、金融、建材/建筑/房地产、公共事业
  71. BusinessName string `orm:"business_name" json:"business_name"` // 公司或组织名称
  72. UserId int `orm:"user_id,unique" json:"user_id"` // 对应用户id
  73. Balance float64 `orm:"balance" json:"balance"` // 账户余额
  74. FrozenBalance float64 `orm:"frozen_balance" json:"frozen_balance"` // 冻结余额
  75. AvailableBalance float64 `orm:"available_balance" json:"available_balance"` // 可用余额
  76. BillableAmount float64 `orm:"billable_amount" json:"billable_amount"` // 可开票金额
  77. Invoicing float64 `orm:"invoicing" json:"invoicing"` // 开票中金额
  78. Recharging float64 `orm:"recharging" json:"recharging"` // 充值中金额
  79. CreatedAt *gtime.Time `orm:"created_at" json:"created_at"` // 创建时间
  80. UpdatedAt *gtime.Time `orm:"updated_at" json:"updated_at"` // 更新时间
  81. AuthStatus int `orm:"auth_status" json:"auth_status"` // 商家认证状态,0未认证,1已认证
  82. Avatar string `orm:"avatar" json:"avatar"`
  83. }
  84. type YounggeeSupplier struct {
  85. gmeta.Meta `orm:"table:younggee_supplier"`
  86. SupplierId int `orm:"supplier_id" json:"supplier_id"` // 服务商ID
  87. SupplierName string `orm:"supplier_name" json:"supplier_name"` // 服务商名称
  88. PhoneNumber string `orm:"phone_number" json:"phone_number"` // 手机号
  89. BusinessLicense string `orm:"business_license" json:"business_license"` // 营业执照url
  90. USCI string `orm:"usci" json:"usci"` // 统一社会信用代码
  91. CompanyName string `orm:"company_name" json:"company_name"` // 公司名称
  92. IdFront string `orm:"id_front" json:"id_front"` // 身份证人像面url
  93. IdBack string `orm:"id_back" json:"id_back"` // 身份证国徽面url
  94. IdNumber string `orm:"id_number" json:"id_number"` // 身份证号
  95. Name string `orm:"name" json:"name"` // 姓名
  96. UserId int `orm:"user_id" json:"user_id"` // 用户表中的用户ID
  97. SupplierType int `orm:"supplier_type" json:"supplier_type"` // 服务商用户类型,1为个人PR,2为机构
  98. }
  99. // 服务商接手的项目信息
  100. type ProjectInfoSupplier struct {
  101. gmeta.Meta `orm:"table:younggee_s_project_info"`
  102. SProjectID int `orm:"s_project_id" json:"s_project_id"` // 服务商种草任务ID
  103. ProjectID string `orm:"project_id" json:"project_id"` // 被服务商加入商单的原种草任务ID
  104. ProjectStatus int8 `orm:"project_status" json:"project_status"` // 项目状态
  105. ProjectType int8 `orm:"project_type" json:"project_type"` // 种草任务类型
  106. ProjectName string `orm:"project_name" json:"project_name"` // 种草任务名称
  107. ProjectPlatform int8 `orm:"project_platform" json:"project_platform"` // 种草任务平台
  108. ProjectForm int8 `orm:"project_form" json:"project_form"` // 任务形式
  109. ContentType int8 `orm:"content_type" json:"content_type"` // 内容形式
  110. ShareCode string `orm:"share_code" json:"share_code"` // 分享码URL
  111. SupplierID int `orm:"supplier_id" json:"supplier_id"` // 服务商ID
  112. EnterpriseID string `orm:"enterprise_id" json:"enterprise_id"` // 所属企业ID
  113. ApplyNum int `orm:"apply_num" json:"apply_num"` // 报名人数
  114. RecruitNum int `orm:"recruit_num" json:"recruit_num"` // 已招募人数
  115. SettleNum int `orm:"settle_num" json:"settle_num"` // 已结算人数
  116. SubAccountID int `orm:"sub_account_id" json:"sub_account_id"` // 服务商子账号ID
  117. ServiceCharge float64 `orm:"service_charge" json:"service_charge"` // 服务商预估可赚服务费
  118. ServiceChargeActual float64 `orm:"service_charge_actual" json:"service_charge_actual"` // 服务商实际可赚服务费
  119. OperatorType int `orm:"operator_type" json:"operator_type"`
  120. }
  121. type ProjectDetail struct {
  122. gmeta.Meta `orm:"table:project_info"`
  123. ProjectId string `json:"project_id"` // 项目id
  124. ProjectName string `json:"project_name"` // 项目名称
  125. ProjectType int `json:"project_type"` // 项目类型,1代表全流程项目,2代表专项项目
  126. ProjectStatus int `json:"project_status"` // 项目状态,1-10分别代表创建中、待审核、审核通过、招募中、招募完毕、待支付、已支付、失效、执行中、已结案
  127. ProjectPlatform int `json:"project_platform"` // 项目平台,1-7分别代表小红书、抖音、微博、快手、b站、大众点评、知乎
  128. ProjectForm int `json:"project_form"` // 项目形式,1-4分别代表实体商品寄拍、虚拟产品测评、线下探店打卡、素材微原创
  129. ProductCategory string `json:"product_category"` // 商品类型
  130. TalentType string `json:"talent_type"` // 达人类型
  131. RecruitDdl *gtime.Time `json:"recruit_ddl"` // 招募截止时间
  132. ContentType int `json:"content_type"` // 内容形式,1代表图文,2代表视频
  133. ProjectDetail string `json:"project_detail"` // 项目详情
  134. ApplyNum int `json:"apply_num"` // 报名人数
  135. ProductId int `json:"product_id"` // 关联商品id
  136. EnterpriseId string `json:"enterprise_id"` // 所属企业id
  137. //SupplierId string `json:"supplier_id"` //所属服务商id
  138. WatchedNum int `json:"watched_num"` // 浏览量
  139. ProjectBrief []*ProjectBrief `orm:"with:project_id=project_id"` // 项目brief图
  140. ProjectMaterial []*ProjectMaterial `orm:"with:project_id=project_id"` // 项目brief图
  141. RecruitStrategy []*RecruitStrategy `orm:"with:project_id=project_id"` // 招募策略
  142. Enterprise *Enterprise `orm:"with:enterprise_id=enterprise_id"` //商家信息
  143. ProjectInfoSupplier *ProjectInfoSupplier //服务商单的project
  144. YounggeeSupplier *YounggeeSupplier //服务商信息
  145. YounggeeProduct *YounggeeProduct `orm:"with:product_id=product_id"` // 商品基本表
  146. YounggeeProductPhoto []*YounggeeProductPhoto `orm:"with:product_id=product_id"` // 商品图片表
  147. PlatformInfo *PlatformInfo `orm:"with:platform_id=project_platform"` //平台信息,目前为快手
  148. ProductSnap string `orm:"product_snap" json:"product_snap"` // 商品信息快照
  149. ProductPhotoSnap string `orm:"product_photo_snap" json:"product_photo_snap"` // 商品图片快照
  150. ServiceChargeRate float64 `orm:"service_charge_rate" json:"service_charge_rate"` //服务费率
  151. ViewNum int `orm:"view_num" json:"view_num"` //浏览量
  152. //违约说明
  153. AutoTaskId int `orm:"auto_task_id" json:"auto_task_id"`
  154. AutoDefaultId int `orm:"auto_default_id" json:"auto_default_id"`
  155. DraftBreakTime int `json:"draft_break_time"` //初稿上传截止时间
  156. DraftBreakPercent int `json:"draft_break_percent"` //初稿扣款比例
  157. LinkBreakTime int `json:"link_break_time"` //链接上传截止
  158. LinkBreakPercent int `json:"link_break_percent"` //超时扣款比例
  159. DataBreakTime int `json:"data_break_time"` //数据上传截止时间
  160. DataBreakPercent int `json:"data_break_percent"` //超时扣款比例
  161. IsCollected int `json:"is_collected"` //此达人是否收藏 1表示已收藏,0表示没有收藏
  162. }