user.ts 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185
  1. // User Profile
  2. export interface UserProfileVO {
  3. id: string
  4. userNo: string
  5. avatar: string
  6. nickname: string
  7. age: number
  8. gender: 0 | 1 | 2 // 0=unknown, 1=male, 2=female
  9. intro: string
  10. playmate: boolean
  11. }
  12. // User Wallet
  13. export interface WalletUserVO {
  14. diamond: number
  15. totalConsume: number
  16. goldCoin: number
  17. totalGoldCoinConsume: number
  18. }
  19. // User Info Response
  20. export interface UserInfoVO {
  21. userProfile: UserProfileVO
  22. wallet: WalletUserVO
  23. }
  24. // User Login Response
  25. export interface UserLoginVO {
  26. userProfile: UserProfileVO
  27. wallet: WalletUserVO
  28. createAt: number
  29. token: string
  30. }
  31. // Google Login Request
  32. export interface UserThirdLoginDTO {
  33. data: string
  34. }
  35. // Token Renewal Response
  36. export interface TokenRenewalVO {
  37. token?: string
  38. [key: string]: unknown
  39. }
  40. // User Info Edit Request
  41. export interface UserInfoEditDTO {
  42. /** 年龄 - 非必填 */
  43. age?: number
  44. /** 头像 - 非必填 */
  45. avatar?: string
  46. /** 昵称 - 非必填 */
  47. nickname?: string
  48. /** 性别 - 非必填 - 0=未知,1=男,2=女 */
  49. gender?: 0 | 1 | 2
  50. }
  51. /**
  52. * Skill simple info for playmate profile
  53. * 对应后端 SkillSimpleDTO
  54. */
  55. export interface SkillSimpleDTO {
  56. /** 技能商品id */
  57. id: string
  58. /** 技能商品品类名称 */
  59. name: string
  60. /** 图标 */
  61. icon: string
  62. /** 价格 */
  63. price: number
  64. /** 单位 */
  65. unit: string
  66. /** 封面 */
  67. cover: string
  68. /** 订单数量(部分接口会返回) */
  69. orderCount?: number
  70. }
  71. /**
  72. * Batch query users request
  73. * 对应后端 QueryUsersDTO
  74. */
  75. export interface QueryUsersDTO {
  76. /** 用户编号列表,最多20个人 */
  77. userNos: string[]
  78. }
  79. /**
  80. * Batch query users item
  81. * 对应后端 PlaymateInfoVo(用于 /user/get/infos)
  82. */
  83. export interface UserInfoItemVO {
  84. avatar: string
  85. nickname: string
  86. age: number
  87. gender: 0 | 1 | 2
  88. area: string
  89. cover: string
  90. userNo: string
  91. languageNames: string[]
  92. photos: string[]
  93. intro: string
  94. playmate: boolean
  95. star: number
  96. skills: SkillSimpleDTO[]
  97. fansCount: number
  98. voiceBar: string
  99. follow: boolean
  100. rated: boolean
  101. }
  102. /**
  103. * Batch query users response data
  104. * 对应后端 ListVOPlaymateInfoVo
  105. */
  106. export interface UserInfosVO {
  107. list: UserInfoItemVO[]
  108. }
  109. /**
  110. * User online state item
  111. * 对应后端 UserOnlineStateVo(用于 /user/getUsersOnlineState)
  112. */
  113. export interface UserOnlineStateVO {
  114. /** 用户编号 */
  115. userNo: string
  116. /** 是否在线 */
  117. online: boolean
  118. }
  119. /**
  120. * Batch query users online state response data
  121. * 对应后端 ListVOUserOnlineStateVo
  122. */
  123. export interface UsersOnlineStateVO {
  124. list: UserOnlineStateVO[]
  125. }
  126. /**
  127. * Playmate profile info
  128. * 对应后端 PlaymateInfoVo
  129. */
  130. export interface PlaymateInfoVO {
  131. /** 头像 */
  132. avatar: string
  133. /** 昵称 */
  134. nickname: string
  135. /** 年龄 */
  136. age: number
  137. /** 性别:0:未知,1:男,2:女 */
  138. gender: 0 | 1 | 2
  139. /** 评分 */
  140. star: number
  141. /** 所在区域 */
  142. area: string
  143. /** 语言列表 */
  144. languageNames: string[]
  145. /** 用户封面图片 */
  146. cover: string
  147. /** 用户编号 */
  148. userNo: string
  149. /** 用户照片墙 */
  150. photos: string[]
  151. /** 用户简介 */
  152. intro: string
  153. /** 技能商品简易信息 */
  154. skills: SkillSimpleDTO[]
  155. /** 是否已评分 */
  156. rated: boolean
  157. }
  158. /**
  159. * Playmate last order info
  160. * 对应后端 PlaymateLastOrderInfoVo
  161. */
  162. export interface PlaymateLastOrderInfoVO {
  163. /** 买家头像 */
  164. avatar: string
  165. /** 买家昵称 */
  166. nickname: string
  167. /** 订单完成时间(时间戳,毫秒) */
  168. finishTime: number
  169. /** 分类名称(如:网球) */
  170. bizCateGoryName: string
  171. }