|
@@ -1,6 +1,9 @@
|
|
|
"use client";
|
|
|
+import { CashbackTypes } from "@/api/cashback";
|
|
|
import FooterTip from "@/components/FooterTip";
|
|
|
import { useRouter } from "@/i18n/routing";
|
|
|
+import { server } from "@/utils/client";
|
|
|
+import { useRequest } from "ahooks";
|
|
|
import clsx from "clsx";
|
|
|
import dynamic from "next/dynamic";
|
|
|
import { useSearchParams } from "next/navigation";
|
|
@@ -12,6 +15,30 @@ const Form = dynamic(() => import("../components/Form"));
|
|
|
const LoginService = dynamic(() => import("./LoginService"));
|
|
|
const Adbox = dynamic(() => import("./adbox"));
|
|
|
|
|
|
+const getCashBackApi = async () => {
|
|
|
+ return server
|
|
|
+ .request<CashbackTypes>({
|
|
|
+ url: "/v1/api/front/activity_cash",
|
|
|
+ method: "post",
|
|
|
+ })
|
|
|
+ .then((res) => {
|
|
|
+ return res.data;
|
|
|
+ })
|
|
|
+ .catch((error) => {
|
|
|
+ return {
|
|
|
+ rules: [],
|
|
|
+ last_period: { end_time: 0, start_time: 0 },
|
|
|
+ next_period: {
|
|
|
+ end_time: 0,
|
|
|
+ start_time: 0,
|
|
|
+ },
|
|
|
+ amount: 0,
|
|
|
+ bet: 0,
|
|
|
+ status: "expired",
|
|
|
+ };
|
|
|
+ });
|
|
|
+};
|
|
|
+
|
|
|
const Login = () => {
|
|
|
const searchParams = useSearchParams();
|
|
|
|
|
@@ -34,6 +61,17 @@ const Login = () => {
|
|
|
},
|
|
|
];
|
|
|
}, []);
|
|
|
+ const { data: cashback } = useRequest<any, any>(getCashBackApi, {
|
|
|
+ pollingErrorRetryCount: 1,
|
|
|
+ });
|
|
|
+
|
|
|
+ // const vip_cashback = useVipStore((state) => state.vipData?.vip_cashback ?? 0);
|
|
|
+ const vip_cashback = React.useMemo(() => {
|
|
|
+ if (!cashback?.rules?.length) return 30;
|
|
|
+ const len = cashback?.rules.length;
|
|
|
+ const rules = cashback?.rules.sort((a: any, b: any) => a.level - b.level);
|
|
|
+ return rules[len - 1].cashback;
|
|
|
+ }, [cashback]);
|
|
|
|
|
|
return (
|
|
|
<div className={styles.page}>
|
|
@@ -44,6 +82,13 @@ const Login = () => {
|
|
|
>
|
|
|
<i className="iconfont icon-guanbi text-[.13rem]"></i>
|
|
|
</div>
|
|
|
+ <div className="absolute left-[.15rem] top-[1rem] text-[.15rem]">
|
|
|
+ <div>Cashback em dinheiro de</div>
|
|
|
+ <div>
|
|
|
+ <span className="text-[.2rem] text-[#ffe400]">{vip_cashback}% </span>
|
|
|
+ <span>toda semana</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
<div className="flex min-h-[0] flex-1 flex-col">
|
|
|
<div className="pb-[.4rem] text-center text-[.16rem] font-bold">
|