diff --git a/app/dashboard/page.js b/app/dashboard/page.js
index f17f92d..2257b12 100644
--- a/app/dashboard/page.js
+++ b/app/dashboard/page.js
@@ -27,20 +27,37 @@ export default async function Dashboard({ searchParams }) {
// may still carry the OTP uuid, which 404s against user-profile.
const userInfo = safeJsonParse(cookieStore.get("userInfo")?.value);
const userUuid = userInfo?.uuid || cookieStore.get("uuid")?.value;
- let profile = null;
- if (userUuid) {
- profile = await fetchReq(
- `${process.env.NEXT_PUBLIC_API_URL}/api/v1/user-profile/${userUuid}`,
- { headers: { Authorization: `Bearer ${token.value}` } }
- );
- }
+ const authHeader = { headers: { Authorization: `Bearer ${token.value}` } };
+ const API = process.env.NEXT_PUBLIC_API_URL;
+
+ const [profile, appointmentsRes, paymentsRes] = await Promise.all([
+ userUuid
+ ? fetchReq(`${API}/api/v1/user-profile/${userUuid}`, authHeader)
+ : Promise.resolve(null),
+ fetchReq(`${API}/api/v1/my/appointments?page=1&limit=1`, authHeader),
+ fetchReq(`${API}/api/v1/my/payments?page=1&limit=200`, authHeader),
+ ]);
+
+ const numberOfTurns = appointmentsRes?.meta?.totalRecords ?? 0;
+ const payments = paymentsRes?.data ?? [];
+ const totalRials = payments
+ .filter((p) => p.status === "success")
+ .reduce((sum, p) => sum + (Number(p.amount_rials) || 0), 0);
+ const totalTransactions = Math.round(totalRials / 10); // ریال → تومان
+
+ const extras = {
+ mobile: userInfo?.mobile_number ?? "",
+ realName: userInfo?.realName ?? "",
+ number_of_turns: numberOfTurns,
+ total_transactions: totalTransactions,
+ };
return (
- {user.total_transactions}{" "} + {Number(user?.total_transactions || 0).toLocaleString("fa-IR")}{" "} تومان
- {user.number_of_turns} + {Number(user?.number_of_turns || 0).toLocaleString("fa-IR")}
تعداد نوبت های شما
diff --git a/components/dashboard/userAccount/detailUser/information/form/index.js b/components/dashboard/userAccount/detailUser/information/form/index.js
index 7e822b9..f686934 100644
--- a/components/dashboard/userAccount/detailUser/information/form/index.js
+++ b/components/dashboard/userAccount/detailUser/information/form/index.js
@@ -25,7 +25,7 @@ function Form({ insurance, errors, changeData, information }) {
name="work_phone"
isTransparent={true}
changeData={changeData}
- data={parsedUserInfo?.username}
+ data={parsedUserInfo?.mobile_number ?? parsedUserInfo?.username}
/>