activity.ts 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217
  1. import { server } from "@/utils/client";
  2. export interface GetJackpotRequestParams {}
  3. export interface GetJackpotResponse {
  4. Background: string;
  5. act_page: number;
  6. act_promotion_url: string;
  7. act_time_type: number;
  8. background_type: number;
  9. display_end_time: number;
  10. display_start_time: number;
  11. end_at: number;
  12. id: number;
  13. list: Record<number | string, JackpotItem>;
  14. name: string;
  15. pay_amount: number;
  16. remark: string;
  17. reward: number;
  18. start_at: number;
  19. total_bet: number;
  20. type: number;
  21. tally_time: number;
  22. }
  23. interface JackpotItem {
  24. arr: {
  25. id: number;
  26. max: number;
  27. min: number;
  28. show_max: number;
  29. show_min: number;
  30. }[];
  31. coin_type: number;
  32. extra_bet: number;
  33. extra_num: number;
  34. extra_pay_amount: number;
  35. id: number;
  36. img: string;
  37. is_suss: boolean;
  38. is_unlock: boolean;
  39. time?: string;
  40. }
  41. export const getJackpotInfo = (data: GetJackpotRequestParams) => {
  42. return server.post<GetJackpotResponse>({
  43. url: "/v1/api/user/activity/secretBonusInfo",
  44. data,
  45. });
  46. };
  47. export const claimActivityReward = (data: { id: number; activity_id: number }) => {
  48. return server.post<any>({
  49. url: "/v1/api/user/activity/claimActivityReward",
  50. data,
  51. });
  52. };
  53. export interface ContinuousResult {
  54. id: number;
  55. name: string;
  56. type: number;
  57. act_time_type: number;
  58. start_at: number;
  59. end_at: number;
  60. display_start_time: number;
  61. display_end_time: number;
  62. act_page: number;
  63. background_type: number;
  64. Background: string;
  65. act_promotion_url: string;
  66. pay_amount: number;
  67. total_bet: number;
  68. reward: number;
  69. cur_num: number;
  70. tally_time: number;
  71. is_op: boolean;
  72. remark: string;
  73. list: {
  74. stage: ContinuousStageItem[];
  75. list: Record<number, Record<number, ContinuousListItem>>;
  76. reward_list: Record<number, Record<number, ContinuousRewardItem>>;
  77. config_list: ContinuousCfgItem[];
  78. };
  79. }
  80. export interface ContinuousCfgItem {
  81. claim_time: number;
  82. days: number;
  83. diff_num: number;
  84. end_at: number;
  85. id: number;
  86. is_sign: number;
  87. is_suss: number;
  88. pay_num: number;
  89. start_at: number;
  90. target_num: number;
  91. target_reward: number;
  92. isCanClaim?: boolean;
  93. }
  94. export interface ContinuousStageItem {
  95. id: number;
  96. is_sign: number;
  97. pay_num: number;
  98. target_num: number;
  99. target_reward: number;
  100. diff_num: number;
  101. is_suss: number;
  102. start_at: number;
  103. end_at: number;
  104. claim_time: number;
  105. }
  106. export interface ContinuousListItem {
  107. id: number;
  108. is_sign: number;
  109. pay_num: number;
  110. target_num: number;
  111. target_reward: number;
  112. diff_num: number;
  113. is_suss: number;
  114. start_at: number;
  115. end_at: number;
  116. claim_time: number;
  117. }
  118. export interface ContinuousRewardItem {
  119. id: number;
  120. is_sign: number;
  121. pay_num: number;
  122. target_num: number;
  123. target_reward: number;
  124. diff_num: number;
  125. is_suss: number;
  126. start_at: number;
  127. end_at: number;
  128. claim_time: number;
  129. }
  130. // 连续充值
  131. export const getContinuousRechargeInfo = async (data: { activity_id: number }) => {
  132. // return (await import("@/mock/activety")).getContinuousInfo();
  133. return server.post<ContinuousResult>({
  134. url: "/v1/api/user/activity/continuousRechargeInfo",
  135. data,
  136. });
  137. };
  138. export interface PromoterInfo {
  139. id: number;
  140. name: string;
  141. type: number;
  142. act_time_type: number;
  143. start_at: number;
  144. end_at: number;
  145. display_start_time: number;
  146. display_end_time: number;
  147. act_page: number;
  148. background_type: number;
  149. Background: string;
  150. act_promotion_url: string;
  151. pay_amount: number;
  152. total_bet: number;
  153. reward: number;
  154. cur_num: number;
  155. tally_time: number;
  156. is_op: boolean;
  157. remark: string;
  158. list: { count: number; conf: PromoterItem[]; condition: PromoterCondition; total: number };
  159. }
  160. export interface PromoterCondition {
  161. first_pay_num: number;
  162. total_pay_num: number;
  163. total_bet: number;
  164. total_pay_days: number;
  165. total_pay_times: number;
  166. }
  167. export interface PromoterItem {
  168. id: number;
  169. coin_type: number;
  170. target_num: number;
  171. num: number;
  172. claim_time: number;
  173. is_suss: boolean;
  174. is_unlock: boolean;
  175. img: string;
  176. }
  177. // 代理宝箱
  178. export const getPromoterInfo = async (data: { activity_id: number }) => {
  179. // return (await import("@/mock/activety")).getPromoterInfo();
  180. return server.post<PromoterInfo>({
  181. url: "/v1/api/user/activity/promoterBoxInfo",
  182. data,
  183. });
  184. };
  185. export interface ChildItem {
  186. create_at: number;
  187. renter_uid: string;
  188. first_pay_deposit: number;
  189. first_pay_at: number;
  190. deposit: number;
  191. deposit_time: number;
  192. to_day_pay_times: number;
  193. total_bet: number;
  194. activity_mp: any;
  195. }
  196. export const getPromoteList = async () => {
  197. // return (await import("@/mock/activety")).getPromotChild();
  198. return server.post<ChildItem[]>({
  199. url: "/v1/api/user/activity/childPromoterList",
  200. });
  201. };