ソースを参照

fix: 更新登录注册/跳转逻辑

Before 10 ヶ月 前
コミット
5a75e634b2

+ 5 - 2
messages/br.json

@@ -257,11 +257,14 @@
     "content6-1":"Inscrições - Número de usuários registrados",
     "content6-2":"Novos Jogadores - Novos jogadores pagantes entre os usuários registrados de hoje",
     "content6-3":"Aposta válidas em equiper[num] - Total de valor de apostas válidas provenientes de indicações e contribuições de suas equipes. num - Número total de indicações e membros de suas equipes que contribuíram com apostas válidas."
+  },
+  "cashback": {
+
   },
   "code": {
-      "1005": "Contrasinha errada",
+      "1005": "Nome de usuário ou senha incorreta. ",
       "1009": "Não existe esse usuário",
-      "1010": "O usuário está registrado",
+      "1010": "O número de telefone já está vinculado a outro cliente. ",
       "10008": "O número de telefone é incorrectamente formatado"
     }
 }

+ 2 - 2
messages/en.json

@@ -260,9 +260,9 @@
     "content6-3":"Aposta válidas em equiper[num] - Total de valor de apostas válidas provenientes de indicações e contribuições de suas equipes. num - Número total de indicações e membros de suas equipes que contribuíram com apostas válidas."
   },
   "code": {
-    "1005": "Wrong password",
+    "1005": "Invalid username or password.",
     "1009": "There is no such user",
-    "1010": "The user is registered",
+    "1010": "The phone number is already connected to another client.",
     "10008": "Phone number is incorrectly formatted"
   }
 }

+ 1 - 1
messages/zh.json

@@ -259,7 +259,7 @@
     "content6-3": "有效团队投注[num] - 来源于推荐和团队成员的有效投注总金额。num - 提供有效投注的总推荐次数和团队成员数量。"
   },
   "code": {
-    "1005": "密码错误",
+    "1005": "用户名或密码无效",
     "1009": "无此用户",
     "1010": "用户已注册",
     "10008": "电话号码格式错误"

+ 12 - 13
src/app/[locale]/(TabBar)/(ordinary)/deposit/DepositData.tsx

@@ -13,32 +13,34 @@ interface Props {
 
 const DepositData: FC<Props> = (props) => {
     const { deposits } = props;
-    console.log(`🚀🚀🚀🚀🚀-> in DepositData.tsx on 16`, deposits);
     const t = useTranslations("DepositPage");
 
     const [activeType, setActiveType] = useState<DepositsTypes>(deposits[0]);
 
-    let [amount, setAmount] = useState(0);
+    let [amount, setAmount] = useState("");
     const ChangeAmount = (e: any) => {
         let newAmount = e.target.value.replace(/[^0-9]/g, "");
         if (newAmount > activeType.max_amount) newAmount = activeType.max_amount;
-        if (newAmount < activeType.min_amount) newAmount = activeType.min_amount;
+        // if (newAmount < activeType.min_amount) newAmount = activeType.min_amount;
         setAmount(newAmount);
     };
 
     const userRechargeRequest = async () => {
-        if (amount < activeType.min_amount) return;
+        if (+amount < activeType.min_amount) {
+            Toast.show(`Min  ${activeType.min_amount}`);
+            return;
+        }
         let res = await getUserRechargeApi({
-            amount: parseInt(amount as any),
+            amount: parseInt(amount),
             channel_id: activeType.id,
         });
         if (res.code === 200) {
-            setAmount(0);
+            setAmount("");
             Toast.show({ icon: "success", content: t("RechargeSuc"), maskClickable: false });
         }
     };
     const titleChangeHandler = (item: DepositsTypes, index: number) => {
-        setAmount(0);
+        setAmount("");
         setActiveType(item);
     };
 
@@ -78,9 +80,9 @@ const DepositData: FC<Props> = (props) => {
                     <ul className="ul-box">
                         {activeType.products.map((item, index) => (
                             <li
-                                className={amount == item.amount ? "active" : ""}
+                                className={+amount == item.amount ? "active" : ""}
                                 key={index}
-                                onClick={() => setAmount(item.amount)}
+                                onClick={() => setAmount(`${item.amount}`)}
                             >
                                 {!!item.badge && <span className="hot"></span>}
                                 <div className="amountContent">
@@ -96,10 +98,7 @@ const DepositData: FC<Props> = (props) => {
             </div>
 
             <div className="topUp">
-                <ButtonOwn
-                    active={amount >= activeType.min_amount}
-                    callbackFun={userRechargeRequest}
-                >
+                <ButtonOwn active={amount !== ""} callbackFun={userRechargeRequest}>
                     {t("DepositarAgora")}
                 </ButtonOwn>
                 <div className={"mt-[5px] text-[0.12rem] text-primary-color"}>

+ 1 - 1
src/app/[locale]/(TabBar)/(ordinary)/gameList/[[...gameListFlag]]/page.tsx

@@ -19,7 +19,7 @@ const GameListFlag: FC<Props> = (props) => {
     });
     const params = useRef<SearchProps>({
         current_page: 0,
-        page_size: 12,
+        page_size: 15,
         use_page: true,
         provider_id: +searchParams.gameListFlag,
     });

+ 7 - 1
src/app/[locale]/(TabBar)/(ordinary)/profile/component/ItemCom/index.tsx

@@ -22,7 +22,13 @@ const links = [
         url: "/affiliate/summary",
     },
     { label: "pray", desc: "", icon: "icon-mianfei", color: "#20894d", url: "/" },
-    { label: "cashback", desc: "", icon: "icon-qiandai", color: "rgb(255, 147, 35)", url: "/" },
+    {
+        label: "cashback",
+        desc: "",
+        icon: "icon-qiandai",
+        color: "rgb(255, 147, 35)",
+        url: "/cashback",
+    },
     { label: "gamblingBets", desc: "", icon: "", url: "/betrecord" },
     { label: "league", desc: "", icon: "", url: "/" },
     { label: "instant", desc: "", icon: "", url: "/" },

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

@@ -7,7 +7,7 @@ const getActivities = async () => {
             url: "/v1/api/front/activity_home",
             method: "POST",
             body: JSON.stringify({}),
-            next: { revalidate: 30 },
+            next: { revalidate: 0 },
         })
         .then((res) => {
             if (res.code === 200) {

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

@@ -7,7 +7,7 @@ const getNotices = async () => {
             url: "/v1/api/front/marquee",
             method: "POST",
             body: JSON.stringify({}),
-            next: { revalidate: 30 },
+            next: { revalidate: 0 },
         })
         .then((res) => {
             if (res.code === 200) return res.data;

+ 2 - 2
src/app/[locale]/(TabBar)/[[...share]]/@popupWidget/page.tsx

@@ -7,7 +7,7 @@ const getPromotions = async () => {
         .request<PromotionRep[]>({
             url: "/v1/api/front/pop_list",
             method: "POST",
-            next: { revalidate: 30 },
+            next: { revalidate: 0 },
         })
         .then((res) => {
             if (res.code === 200) return res.data;
@@ -20,7 +20,7 @@ const getNotices = async () => {
         .request<NoticeRep[]>({
             url: "/v1/api/front/notice_list",
             method: "post",
-            next: { revalidate: 30 },
+            next: { revalidate: 0 },
         })
         .then((res) => {
             if (res.code === 200) return res.data;

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

@@ -7,7 +7,7 @@ const getBanners = async () => {
             url: "/v1/api/front/banner_list",
             method: "POST",
             body: JSON.stringify({}),
-            next: { revalidate: 30 },
+            next: { revalidate: 0 },
         })
         .then((res) => {
             if (res.code === 200) return res.data;

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

@@ -5,7 +5,7 @@ import { server } from "@/utils/server";
 import HomeActions from "./_home/HomeActions";
 import HomeTabs from "./_home/HomeTabs";
 
-const TIME = 30;
+const TIME = 0;
 const getGames = async () => {
     return server
         .request<GroupType[]>({
@@ -22,6 +22,7 @@ const getGames = async () => {
 
 export default async function Page() {
     const group = await getGames();
+
     return (
         <>
             <HomeTabs tabs={group} />

+ 12 - 7
src/app/[locale]/(enter)/components/FromCom/action.ts

@@ -1,14 +1,20 @@
 "use server";
 import { loginApi, registerApi, userInfoApi } from "@/api/login";
+import { getTranslations } from "next-intl/server";
 import { cookies } from "next/headers";
 
 export async function loginAction(formData: FormData) {
     const userPhone = formData.get("userPhone") as string;
     const pwd = formData.get("pwd") as string;
+
+    const t = await getTranslations("code");
+
     try {
         const response = await loginApi({ user_phone: userPhone, pwd });
         const { data } = response;
-        cookies().set("Token", response.data.token as string);
+        if (response.data.token) {
+            cookies().set("Token", response.data.token as string);
+        }
         if (!Array.isArray(data)) {
             const userInfo = await userInfoApi();
             return {
@@ -19,13 +25,12 @@ export async function loginAction(formData: FormData) {
         }
         return {
             success: false,
-            message: "Login failed",
+            message: t(`${response.code}`),
         };
     } catch (error: any) {
-        console.log(`🎯🎯🎯🎯🎯-> in action.ts on 37`, error);
         return {
             success: false,
-            message: error.msg || "",
+            message: t(`${error.code}`) || "",
         };
     }
 }
@@ -34,17 +39,17 @@ export async function registerAction(formData: FormData) {
     const userPhone = formData.get("userPhone") as string;
     const pwd = formData.get("pwd") as string;
     const referrer_code = formData.get("referrer_code") as string;
+    const t = await getTranslations("code");
     try {
         const response = await registerApi({ user_phone: userPhone, pwd, referrer_code });
         return {
             success: true,
-            message: response.msg || "",
+            message: t(`${response.code}`) || "",
         };
     } catch (error: any) {
-        console.log(`🎯🎯🎯🎯🎯-> in action.ts on 37`, error);
         return {
             success: false,
-            message: error.msg || "",
+            message: t(`${error.code}`) || "",
         };
     }
 }

+ 0 - 3
src/app/[locale]/(enter)/components/FromCom/index.tsx

@@ -2,7 +2,6 @@
 import ButtonOwn from "@/components/ButtonOwn";
 import { Link, useRouter } from "@/i18n";
 import { useGlobalStore } from "@/stores";
-import { setCookies } from "@/utils/Cookies";
 import { Toast } from "antd-mobile";
 import clsx from "clsx";
 import { useTranslations } from "next-intl";
@@ -59,8 +58,6 @@ const FromCom: FC<PropsWithChildren<FromComProps>> = ({ type = "login", msgError
         if (type === "login") {
             const result = await loginAction(formData);
             setUserInfo(result.user);
-            console.log(`🚀🚀🚀🚀🚀-> in index.tsx on 62`, result);
-            setCookies("Token", result.token!);
             setLoginFormStatus(result);
             if (result.success) {
                 router.replace(searchParams.get("redirect") || "/");

+ 19 - 0
src/app/[locale]/(navbar)/cashback/layout.tsx

@@ -0,0 +1,19 @@
+import HeaderBack from "@/components/HeaderBack";
+import { getTranslations } from "next-intl/server";
+import { ReactNode } from "react";
+
+export default async function Layout({
+    children,
+    params: { locale },
+}: {
+    children: ReactNode;
+    params: { locale: string };
+}) {
+    const t = await getTranslations("ProfilePage");
+    return (
+        <>
+            <HeaderBack showBack={true} title={t("message")} />
+            <main className={"main-header bg-[#282828]"}>{children}</main>
+        </>
+    );
+}

+ 5 - 0
src/app/[locale]/(navbar)/cashback/page.tsx

@@ -0,0 +1,5 @@
+const page = () => {
+    return <div>123</div>;
+};
+
+export default page;

+ 0 - 1
src/app/[locale]/(navbar)/notification/page.tsx

@@ -3,7 +3,6 @@ import Tabs from "@/components/Tabs";
 import { server } from "@/utils/server";
 import Notices from "./components/Notices";
 
-interface Props {}
 const getSystemNotifications = async () => {
     return server.request<GlobalNoticeRep[]>({
         url: "/v1/api/front/notice_list",

+ 1 - 1
src/components/Card/Card.tsx

@@ -40,7 +40,7 @@ const Card: FC<PropsWithChildren<CardProps>> = (props) => {
     };
     const playGameHandler = () => {
         if (!token) {
-            router.push("/login?redirect=/withdraw");
+            router.push("/login?redirect=/");
             return;
         }
         if (urlRef.current) {

+ 2 - 0
src/components/Header/HerderTitle.tsx

@@ -1,4 +1,5 @@
 "use client";
+import action from "@/components/Header/action";
 import { useRouter } from "@/i18n";
 import { CenterPopup } from "antd-mobile";
 import Cookies from "js-cookie";
@@ -41,6 +42,7 @@ const HeaderTitle: FC<PropsWithChildren<Props>> = (props) => {
 
     const languageHandler = async (language: (typeof languages)[number]) => {
         Cookies.set("language", language.value);
+        await action();
         router.replace("/", { locale: language.value });
     };
 

+ 6 - 0
src/components/Header/action.ts

@@ -0,0 +1,6 @@
+"use server";
+import { revalidatePath } from "next/cache";
+const action = async () => {
+    revalidatePath("/");
+};
+export default action;