fix filter gender, req and set new data when delete all filters, show date time with timestamp in doctors list, fix send data in home page list specialty, change data of params for request to doctors in doctors page

This commit is contained in:
Ehsan
2025-09-13 15:05:50 +03:30
parent 6414293d1c
commit f0e8a753c3
11 changed files with 227 additions and 114 deletions
+4 -1
View File
@@ -10,6 +10,9 @@ import Link from "next/link";
import CustomLoading from "./loading/Custom";
import TextLoading from "./loading/Text";
import CircularLoading from "./loading/Circular";
import moment from "moment-jalaali";
moment.loadPersian({ dialect: "persian-modern" });
function ItemDoctor({ doctor }) {
return (
@@ -78,7 +81,7 @@ function ItemDoctor({ doctor }) {
}`}
>
{Number(doctor?.active)
? `اولین نوبت آزاد: ${Number(doctor?.active)}`
? `اولین نوبت آزاد: ${moment(doctor?.free_turn * 1000)?.format("dddd jD jMMMM")}`
: "نوبت ندارد"}
</p>
</CustomLoading>
-2
View File
@@ -21,8 +21,6 @@ function Content({
const handleClick = () => {
setLoading(true);
sendReq().finally(() => {
console.log("asd");
setLoading(false);
handleClose();
});
+5 -20
View File
@@ -1,39 +1,24 @@
import DoctorsPage from "@/components/doctors";
import Layout from "@/components/layout/StLayout";
import { buildDoctorParams } from "@/helper";
import { getStateInfo } from "@/lib/getStateInfo";
import axios from "axios";
// Data
import states from "@/data/state.json";
import cities from "@/data/city.json";
async function Doctors({ searchParams }) {
const { matchedCity, matchedState } = getStateInfo();
const API_URL = process.env.NEXT_PUBLIC_API_URL;
let doctors = null;
try {
const params = {};
const state = searchParams.state;
const city = searchParams.city;
console.log(state);
console.log(city);
if (matchedCity)
params.city = city
? cities.find((item) => item.name === city)?.id
: matchedCity?.id || null;
if (matchedState)
params.state = state
? states.find((item) => item.name === state)?.id
: matchedState?.id || null;
if (searchParams.search) params.name = searchParams.search;
const params = buildDoctorParams(searchParams);
const response = await axios.get(`${API_URL}/api/v1/doctors`, {
params,
});
doctors = response.data.data;
} catch (error) {}
} catch (error) {
console.error("Error fetching doctors:", error);
}
return (
<Layout>