feat : fetch mobile number by api

This commit is contained in:
2025-10-13 13:40:23 +05:30
parent f394300498
commit 242e8d544b
4 changed files with 62 additions and 53 deletions

View File

@@ -9,6 +9,7 @@ import logo from '@/app/image/logo1.jpg';
import NextImage from 'next/image';
import { notifications } from '@mantine/notifications';
import { useDisclosure, useMediaQuery } from '@mantine/hooks';
import { fetchAndStoreUserName } from '../_util/userdetails';
export default function RootLayout({ children }: { children: React.ReactNode }) {
const router = useRouter();
@@ -38,51 +39,6 @@ export default function RootLayout({ children }: { children: React.ReactNode })
router.push("/login");
}
async function handleFetchUserName() {
try {
const token = localStorage.getItem("access_token");
const response = await fetch('/api/customer', {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${token}`
},
});
if (!response.ok) {
notifications.show({
withBorder: true,
color: "red",
title: "Error",
message: "Internal Server Error",
autoClose: 5000,
});
localStorage.removeItem("access_token");
localStorage.removeItem("remitter_name");
return;
}
const data = await response.json();
if (response.ok && Array.isArray(data)) {
if (data.length > 0) {
const name = data[0].custname;
const mobileNumber = data[0].mobileno;
localStorage.setItem("remitter_name", name);
localStorage.setItem("remitter_mobile_no", mobileNumber);
setCustname(name);
}
} else {
throw new Error();
}
} catch {
notifications.show({
withBorder: true,
color: "red",
title: "Please try again later",
message: "Unable to Fetch, Please try again later",
autoClose: 5000,
});
}
}
// When reload and click on back then logout
useEffect(() => {
// Push fake history state to trap navigation
@@ -113,7 +69,10 @@ export default function RootLayout({ children }: { children: React.ReactNode })
}
else {
SetAuthorized(true);
handleFetchUserName();
fetchAndStoreUserName(token).then(() => {
const name = localStorage.getItem("remitter_name");
if (name) setCustname(name);
});
}
}, []);