fix(appointment): convert picker timestamp to date and fix summary panel
Follow-ups found while sweeping for stale shapes: - The date picker emits a unix timestamp, but appointment-slots needs Y-m-d; convert with moment before calling (slots never loaded before). - Appointment summary (information/Detail.js) used the auth-required getDoctorAddress and selectedSlot.time; derive the address from the loaded doctor.address by location_id and use selectedSlot.start_time. - SendAppo: drop the dead postAppointment block, unused useParams/loading, and a duplicate disabled prop on the button. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -7,30 +7,12 @@ import LocationA from "@/components/icons/LocationA";
|
||||
import TickCircleOrange from "@/components/icons/TickCircleOrange";
|
||||
import { Button } from "@mui/material";
|
||||
import moment from "moment-jalaali";
|
||||
import { useEffect, useState } from "react";
|
||||
import { request } from "@/services/response";
|
||||
|
||||
function Detail({ doctor, step, setStep, selectedSlot, selectedDate }) {
|
||||
const [address, setAddress] = useState("آدرس موجود نیست");
|
||||
|
||||
// دریافت آدرس بر اساس location_id از اسلات انتخاب شده
|
||||
useEffect(() => {
|
||||
if (selectedSlot?.location_id) {
|
||||
request
|
||||
.getDoctorAddress(selectedSlot.location_id)
|
||||
.then((res) => {
|
||||
if (res?.address) {
|
||||
setAddress(res.address);
|
||||
}
|
||||
})
|
||||
.catch((err) => {
|
||||
console.error("Error fetching address:", err);
|
||||
});
|
||||
} else if (doctor?.address?.[0]?.address) {
|
||||
// اگر اسلات location_id نداشت، از آدرس دکتر استفاده کن
|
||||
setAddress(doctor.address[0].address);
|
||||
}
|
||||
}, [selectedSlot, doctor]);
|
||||
const matchedAddress = selectedSlot?.location_id
|
||||
? doctor?.address?.find((a) => String(a.id) === String(selectedSlot.location_id))?.address
|
||||
: doctor?.address?.[0]?.address;
|
||||
const address = matchedAddress || "آدرس موجود نیست";
|
||||
|
||||
// فرمت کردن تاریخ به شمسی
|
||||
const formattedDate = selectedDate
|
||||
@@ -38,7 +20,7 @@ function Detail({ doctor, step, setStep, selectedSlot, selectedDate }) {
|
||||
: "تاریخ انتخاب نشده";
|
||||
|
||||
// فرمت کردن زمان
|
||||
const formattedTime = selectedSlot?.time || "زمان انتخاب نشده";
|
||||
const formattedTime = selectedSlot?.start_time || "زمان انتخاب نشده";
|
||||
|
||||
return (
|
||||
<div className="">
|
||||
|
||||
Reference in New Issue
Block a user