Преглед изворни кода

fix: 418 【bcwin网站】优化-新用户注册引导页面优化

Before пре 7 месеци
родитељ
комит
66f69f157a

+ 19 - 0
src/api/config.ts

@@ -0,0 +1,19 @@
+import { server } from "@/utils/server";
+
+export interface ConfigType {
+    show_free_game: 1 | 2;
+    show_again_game: 1 | 2;
+}
+export const getConfigApi = async () => {
+    return server
+        .request<ConfigType>({
+            url: "/v1/api/front/system/configs",
+            method: "POST",
+        })
+        .then((res) => {
+            return res.data;
+        })
+        .catch((err) => {
+            return { show_free_game: 1, show_again_game: 1 } as ConfigType;
+        });
+};

+ 2 - 4
src/app/[locale]/(TabBar)/[[...share]]/_home/HomeTabs.tsx

@@ -1,4 +1,5 @@
 "use client";
+import { ConfigType } from "@/api/config";
 import { GroupType } from "@/api/home";
 import Box from "@/components/Box";
 import { useRouter } from "@/i18n/routing";
@@ -118,10 +119,7 @@ const TabItem = ({
 
 interface Props {
     tabs: GroupType[];
-    config: {
-        show_free_game: 1 | 2;
-        show_again_game: 1 | 2;
-    };
+    config: ConfigType;
 }
 const Tabs: FC<Props> = (props) => {
     const { tabs, config = { show_free_game: 2, show_again_game: 2 } } = props;

+ 1 - 14
src/app/[locale]/(TabBar)/[[...share]]/page.tsx

@@ -1,4 +1,5 @@
 "use server";
+import { getConfigApi } from "@/api/config";
 import { GroupType } from "@/api/home";
 import { server } from "@/utils/server";
 import HomeTabs from "./_home/HomeTabs";
@@ -17,20 +18,6 @@ const getGames = async () => {
         });
 };
 
-const getConfigApi = async () => {
-    return server
-        .request<any>({
-            url: "/v1/api/front/system/configs",
-            method: "POST",
-        })
-        .then((res) => {
-            return res.data;
-        })
-        .catch((err) => {
-            return { show_free_game: 1, show_again_game: 1 };
-        });
-};
-
 export default async function Page() {
     const group = await getGames();
 

+ 93 - 78
src/app/[locale]/(navbar)/recharge/page.tsx

@@ -1,3 +1,4 @@
+import { getConfigApi } from "@/api/config";
 import { PayDataType } from "@/api/promo";
 import DomainFooter from "@/components/DomainFooter";
 import { Link } from "@/i18n/routing";
@@ -24,6 +25,8 @@ const Page = async () => {
         hasEndTimeActivities && hasEndTimeActivities.end_time > 0
             ? hasEndTimeActivities.end_time * 1000
             : 0;
+
+    const config = await getConfigApi();
     return (
         <>
             <div className={"flex flex-col [min-height:calc(100%-0.81rem)]"}>
@@ -64,52 +67,54 @@ const Page = async () => {
                             </span>
                         </div>
 
-                        <div
-                            className={
-                                "mt-[0.2778rem] flex rounded-[0.0347rem] bg-[#fbe6c6]" +
-                                " p-[0.0694rem]" +
-                                " items-center text-[#000]"
-                            }
-                        >
-                            <div>
-                                <Image
-                                    src={"/recharge/activity-1.png"}
-                                    alt={"activity-1"}
-                                    width={80}
-                                    height={40}
-                                />
-                            </div>
-                            <div className={"ml-[20px] w-[100%]"}>
-                                <div className={"flex items-center"}>
-                                    <div className={"flex-1"}>
-                                        <DownNumber endTime={endtime} />
-                                    </div>
-                                    <Link href={"/deposit"}>
-                                        <div
-                                            className={
-                                                "bg-[url(/recharge/button-1.png)] " +
-                                                " bg-[length:100%_100%] bg-no-repeat" +
-                                                " h-[0.4167rem] w-[0.8333rem] pt-[0.0347rem]"
-                                            }
-                                        >
-                                            <span
+                        {hasEndTimeActivities && (
+                            <div
+                                className={
+                                    "mt-[0.2778rem] flex rounded-[0.0347rem] bg-[#fbe6c6]" +
+                                    " p-[0.0694rem]" +
+                                    " items-center text-[#000]"
+                                }
+                            >
+                                <div>
+                                    <Image
+                                        src={"/recharge/activity-1.png"}
+                                        alt={"activity-1"}
+                                        width={80}
+                                        height={40}
+                                    />
+                                </div>
+                                <div className={"ml-[20px] w-[100%]"}>
+                                    <div className={"flex items-center"}>
+                                        <div className={"flex-1"}>
+                                            <DownNumber endTime={endtime} />
+                                        </div>
+                                        <Link href={"/deposit"}>
+                                            <div
                                                 className={
-                                                    "flex items-center text-[0.125rem]" +
-                                                    " font-bold" +
-                                                    " justify-center text-[#fff]"
+                                                    "bg-[url(/recharge/button-1.png)] " +
+                                                    " bg-[length:100%_100%] bg-no-repeat" +
+                                                    " h-[0.4167rem] w-[0.8333rem] pt-[0.0347rem]"
                                                 }
                                             >
-                                                Deposito
-                                            </span>
-                                        </div>
-                                    </Link>
-                                </div>
-                                <div>
-                                    Deposite dentro de duas horas, você receberá 100 bônus em
-                                    dinheiro.
+                                                <span
+                                                    className={
+                                                        "flex items-center text-[0.125rem]" +
+                                                        " font-bold" +
+                                                        " justify-center text-[#fff]"
+                                                    }
+                                                >
+                                                    Deposito
+                                                </span>
+                                            </div>
+                                        </Link>
+                                    </div>
+                                    <div>
+                                        Deposite dentro de duas horas, você receberá 100 bônus em
+                                        dinheiro.
+                                    </div>
                                 </div>
                             </div>
-                        </div>
+                        )}
 
                         {/*   2*/}
                         <div
@@ -120,7 +125,11 @@ const Page = async () => {
                             }
                         >
                             <Image
-                                src={"/recharge/activity-2.png"}
+                                src={
+                                    hasEndTimeActivities
+                                        ? "/recharge/activity-2.png"
+                                        : "/recharge/activity-1.png"
+                                }
                                 alt={"activity-1"}
                                 width={60}
                                 height={40}
@@ -130,47 +139,53 @@ const Page = async () => {
                         </div>
 
                         {/*  3 */}
-                        <div
-                            className={
-                                "mt-[10px] flex rounded-[0.0347rem] bg-[#fbe6c6]" +
-                                " p-[0.0694rem]" +
-                                " items-center text-[#000]"
-                            }
-                        >
-                            <div>
-                                <Image
-                                    src={"/recharge/activity-3.png"}
-                                    alt={"activity-3"}
-                                    width={80}
-                                    height={40}
-                                />
-                            </div>
-                            <div className={"ml-[20px] w-[100%]"}>
-                                <div className={"flex items-center"}>
-                                    <div className={"flex-1"}>De registo prémios</div>
-                                    <Link href={"/freeGames"}>
-                                        <div
-                                            className={
-                                                "bg-[url(/recharge/button-1.png)] " +
-                                                " bg-[length:100%_100%] bg-no-repeat" +
-                                                " h-[0.4167rem] w-[0.8333rem] pt-[0.0347rem]"
-                                            }
-                                        >
-                                            <span
+                        {config.show_free_game === 1 && (
+                            <div
+                                className={
+                                    "mt-[10px] flex rounded-[0.0347rem] bg-[#fbe6c6]" +
+                                    " p-[0.0694rem]" +
+                                    " items-center text-[#000]"
+                                }
+                            >
+                                <div>
+                                    <Image
+                                        src={
+                                            hasEndTimeActivities
+                                                ? "/recharge/activity-3.png"
+                                                : "/recharge/activity-2.png"
+                                        }
+                                        alt={"activity-3"}
+                                        width={80}
+                                        height={40}
+                                    />
+                                </div>
+                                <div className={"ml-[20px] w-[100%]"}>
+                                    <div className={"flex items-center"}>
+                                        <div className={"flex-1"}>De registo prémios</div>
+                                        <Link href={"/freeGames"}>
+                                            <div
                                                 className={
-                                                    "flex items-center text-[0.125rem]" +
-                                                    " font-bold" +
-                                                    " justify-center text-[#fff]"
+                                                    "bg-[url(/recharge/button-1.png)] " +
+                                                    " bg-[length:100%_100%] bg-no-repeat" +
+                                                    " h-[0.4167rem] w-[0.8333rem] pt-[0.0347rem]"
                                                 }
                                             >
-                                                Jogo
-                                            </span>
-                                        </div>
-                                    </Link>
+                                                <span
+                                                    className={
+                                                        "flex items-center text-[0.125rem]" +
+                                                        " font-bold" +
+                                                        " justify-center text-[#fff]"
+                                                    }
+                                                >
+                                                    Jogo
+                                                </span>
+                                            </div>
+                                        </Link>
+                                    </div>
+                                    <div>100 grátis grátis para começar a jogar imediatamente</div>
                                 </div>
-                                <div>100 grátis grátis para começar a jogar imediatamente</div>
                             </div>
-                        </div>
+                        )}
                     </div>
                 </div>