Files
nobat724_front/services/clinicApi.js
T
2025-10-27 10:58:26 +03:30

35 lines
1.1 KiB
JavaScript

// src/services/clinicApi.js
export async function getClinicDoctors(slug, params = {}) {
try {
const baseUrl = process.env.NEXT_PUBLIC_API_URL;
if (!baseUrl) throw new Error("❌ NEXT_PUBLIC_API_URL is not defined");
if (!slug) throw new Error("❌ slug is missing");
const query = new URLSearchParams(params).toString();
const finalUrl = `${baseUrl}/api/v1/clinic/doctor-list/${slug}?${query}`;
const response = await fetch(finalUrl, { method: "GET" });
if (!response.ok) {
const text = await response.text();
throw new Error(`HTTP ${response.status}: ${text}`);
}
const json = await response.json();
// ✅ خروجی همیشه ساختار ثابت دارد
return {
data: json?.data || [],
page: json?.page || json?.pages || { total_pages: 1, current: 1 },
};
} catch (error) {
console.error("❌ خطا در دریافت دکترهای کلینیک:", error);
// ✅ ساختار خروجی در حالت خطا هم مثل حالت عادی
return {
data: [],
page: { total_pages: 1, current: 1 },
};
}
}