user.ts 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334
  1. import { GameListRep } from "@/api/home";
  2. import { server } from "@/utils/client";
  3. // 前台用户绑定手机号
  4. export const getBindPhoneApi = () => {
  5. return server.post<any>({
  6. url: "/v1/api/user/bind_phone",
  7. toast: true,
  8. });
  9. };
  10. // 前台用户手机号是否存在
  11. export const getCheckUserPhoneExistApi = (params: any) => {
  12. return server.get<any>({
  13. url: "/v1/api/user/check_user_phone_exist",
  14. params,
  15. toast: true,
  16. });
  17. };
  18. // 找回密码
  19. export const getFindPwdApi = (data: any) => {
  20. return server.post<any>({
  21. url: "/v1/api/user/find_pwd",
  22. data,
  23. toast: true,
  24. });
  25. };
  26. // 前台用户谷歌登录
  27. export const getGoogleLoginApi = () => {
  28. return server.post<any>({
  29. url: "/v1/api/user/google_login",
  30. });
  31. };
  32. // 前台用户登录
  33. export const getLoginApi = (data: any) => {
  34. return server.post<any>({
  35. url: "/v1/api/user/login",
  36. data,
  37. toast: true,
  38. });
  39. };
  40. // 前台用户登出
  41. export const getLogoutApi = () => {
  42. return server.post<any>({
  43. url: "/v1/api/user/logout",
  44. toast: true,
  45. });
  46. };
  47. // 前台用户注册
  48. export const getRegisterApi = (data: any) => {
  49. return server.post<any>({
  50. url: "/v1/api/user/register",
  51. data,
  52. toast: true,
  53. });
  54. };
  55. // 前台用户注册发送验证码
  56. export const getSendCodeApi = (params: any) => {
  57. return server.get<any>({
  58. url: "/v1/api/user/send_code",
  59. params,
  60. toast: true,
  61. });
  62. };
  63. /**
  64. * @description 验证验证码
  65. */
  66. export const checkCodeApi = (data: { mobile: string; code: string }) => {
  67. return server.post({
  68. url: "/v1/api/user/check_code",
  69. data,
  70. });
  71. };
  72. export interface UserInfoRep {
  73. /**
  74. * 账号
  75. */
  76. account?: string;
  77. /**
  78. * 用户头像
  79. */
  80. avatar_url?: string;
  81. /**
  82. * 邮箱地址
  83. */
  84. email?: string;
  85. /**
  86. * ID
  87. */
  88. id?: number;
  89. /**
  90. * 用户标签
  91. */
  92. label?: string;
  93. /**
  94. * 真实姓名
  95. */
  96. nick_name?: string;
  97. /**
  98. * 推荐码
  99. */
  100. referrer_code?: string;
  101. /**
  102. * 上级名字
  103. */
  104. referrer_name?: string;
  105. /**
  106. * 用户地址
  107. */
  108. user_address?: string;
  109. /**
  110. * 用户名
  111. */
  112. user_name?: string;
  113. /**
  114. * 用户电话号码
  115. */
  116. user_phone?: string;
  117. // 正在进行中的游戏
  118. play_list?: GameListRep[];
  119. }
  120. // 前台用户获取信息
  121. export const getUserInfoApi = () => {
  122. return server.post<UserInfoRep>({
  123. url: "/v1/api/user/user_info",
  124. });
  125. };
  126. export interface Wallet {
  127. /**
  128. * 用户头像
  129. */
  130. avatar_url: string;
  131. /**
  132. * 货币类型
  133. */
  134. currency: string;
  135. /**
  136. * 当前免费钱包打码量
  137. */
  138. current_free_score_rollover: number;
  139. /**
  140. * 当前输钱钱包打码量
  141. */
  142. current_lose_score_rollover: number;
  143. /**
  144. * 当前奖金打码量
  145. */
  146. current_point_rollover: number;
  147. /**
  148. * 当前现金打码量
  149. */
  150. current_score_rollover: number;
  151. /**
  152. * 累计充值金额
  153. */
  154. deposit: number;
  155. /**
  156. * 第一次充值时间
  157. */
  158. first_pay_time: number;
  159. /**
  160. * 免费币
  161. */
  162. free_score: number;
  163. /**
  164. * 锁定活动代币
  165. */
  166. lock_point: number;
  167. /**
  168. * 锁定积分
  169. */
  170. lock_score: number;
  171. /**
  172. * 重玩币
  173. */
  174. lose_score: number;
  175. /**
  176. * 真实姓名
  177. */
  178. nick_name: string;
  179. /**
  180. * 活动代币
  181. */
  182. point: number;
  183. /**
  184. * 积分
  185. */
  186. score: number | undefined;
  187. /**
  188. * 目标免费钱包打码量
  189. */
  190. target_free_score_rollover: number;
  191. /**
  192. * 目标输钱钱包打码量
  193. */
  194. target_lose_score_rollover: number;
  195. /**
  196. * 目标奖金打码量
  197. */
  198. target_point_rollover: number;
  199. /**
  200. * 目标现金打码量
  201. */
  202. target_score_rollover: number;
  203. /**
  204. * 累计免费钱包打码量
  205. */
  206. total_free_score_rollover: number;
  207. /**
  208. * 累计输钱钱包打码量
  209. */
  210. total_lose_score_rollover: number;
  211. /**
  212. * 累计奖金打码量
  213. */
  214. total_point_rollover: number;
  215. /**
  216. * 历史领取红包总次数
  217. */
  218. total_receive_red_packet: number;
  219. /**
  220. * 历史红包总金额
  221. */
  222. total_red_packet: number;
  223. /**
  224. * 累计现金打码量
  225. */
  226. total_score_rollover: number;
  227. /**
  228. * 用户名
  229. */
  230. user_name: string;
  231. notice: {
  232. lose_score: number;
  233. };
  234. /**
  235. * 是否允许转移彩金
  236. */
  237. is_point_transfer: boolean;
  238. /**
  239. * 是否允许转移免费币
  240. */
  241. is_free_transfer: boolean;
  242. /**
  243. * 是否允许转移重玩币
  244. */
  245. is_lose_transfer: boolean;
  246. }
  247. // 前台用户获取金额信息
  248. export const getUserMoneyApi = () => {
  249. return server.post<Wallet>({
  250. url: "/v1/api/user/user_money",
  251. });
  252. };
  253. // 前台用户充值
  254. export const getUserRechargeApi = (data: any) => {
  255. return server.post<{ pay_url?: string }>({
  256. url: "/v1/api/user/user_recharge",
  257. data,
  258. toast: true,
  259. });
  260. };
  261. // 前台用户VIP信息
  262. // POST /v1/api/user/user_vip_info
  263. // 接口ID:201160713
  264. // 接口地址:https://app.apifox.com/link/project/4790544/apis/api-201160713
  265. export interface UserVipInfo {
  266. /**
  267. * vip经验
  268. */
  269. vip_exp: number;
  270. /**
  271. * vip等级
  272. */
  273. vip_level: number;
  274. /**
  275. * 下一级vip等级
  276. */
  277. vip_next_level: any;
  278. /**
  279. * vip等级经验
  280. */
  281. vip_score_exp: number;
  282. }
  283. export const getUserVipApi = () => {
  284. return server.post<UserVipInfo>({
  285. url: "/v1/api/user/user_vip_info",
  286. });
  287. };
  288. export interface DepositsRep {
  289. id: string;
  290. /**
  291. * 充值金额
  292. */
  293. amount: number;
  294. /**
  295. * 充值状态:created、pending、finished、canceled
  296. */
  297. status: string;
  298. /**
  299. * 充值时间:时间戳秒
  300. */
  301. time: number;
  302. /**
  303. * 充值标题说明
  304. */
  305. title: string;
  306. /**
  307. * 类型
  308. */
  309. type: number;
  310. /**
  311. * 活动类型
  312. */
  313. sub_type: number;
  314. }
  315. // 用户钱包余额转移
  316. export const getUserTransferApi = (data: {wallet_type: number}) => {
  317. return server.post<any>({
  318. url: "/v1/api/user/user_transfer",
  319. data
  320. });
  321. };