parent
e782c49e4b
commit
428d4a7137
@ -0,0 +1,168 @@
|
||||
import React, { useEffect } from "react";
|
||||
import { Modal, Form, Input, DatePicker } from "antd";
|
||||
import dayjs from "dayjs";
|
||||
import { taskController } from "../../../API/LayoutApi/tasks";
|
||||
|
||||
interface ShiftAndCoDriverEditModalProps {
|
||||
open: boolean;
|
||||
onCancel: () => void;
|
||||
recordTask?: any;
|
||||
}
|
||||
|
||||
const ShiftAndCoDriverEditModal: React.FC<ShiftAndCoDriverEditModalProps> = ({
|
||||
open,
|
||||
onCancel,
|
||||
recordTask,
|
||||
}) => {
|
||||
const [form] = Form.useForm();
|
||||
|
||||
useEffect(() => {
|
||||
if (recordTask) {
|
||||
form.setFieldsValue({
|
||||
shift_date: recordTask.shift_date ? dayjs(recordTask.shift_date) : null,
|
||||
shift_location: recordTask.shift_location,
|
||||
|
||||
cycle_date: recordTask.cycle_date ? dayjs(recordTask.cycle_date) : null,
|
||||
cycle_location: recordTask.cycle_location,
|
||||
|
||||
pickup_date: recordTask.pickup_date
|
||||
? dayjs(recordTask.pickup_date)
|
||||
: null,
|
||||
pickup_location: recordTask.pickup_location,
|
||||
|
||||
driver_name: recordTask.driver_name,
|
||||
co_driver_name: recordTask.co_driver_name,
|
||||
co_driver_pickup_location: recordTask.co_driver_pickup_location,
|
||||
co_driver_pickup_date: recordTask.co_driver_pickup_date
|
||||
? dayjs(recordTask.co_driver_pickup_date)
|
||||
: null,
|
||||
co_driver_drop_date: recordTask.co_driver_drop_date
|
||||
? dayjs(recordTask.co_driver_drop_date)
|
||||
: null,
|
||||
co_driver_drop_location: recordTask.co_driver_drop_location,
|
||||
});
|
||||
}
|
||||
}, [recordTask, form]);
|
||||
|
||||
const handleOk = async () => {
|
||||
try {
|
||||
const values = await form.validateFields();
|
||||
// Date fieldlarni string formatga o'tkazib yuboramiz
|
||||
const formattedValues = {
|
||||
...values,
|
||||
shift_date: values.shift_date ? values.shift_date.toISOString() : null,
|
||||
pickup_date: values.pickup_date
|
||||
? values.pickup_date.toISOString()
|
||||
: null,
|
||||
cycle_date: values.cycle_date ? values.cycle_date.toISOString() : null,
|
||||
co_driver_pickup_date: values.co_driver_pickup_date
|
||||
? values.co_driver_pickup_date.toISOString()
|
||||
: null,
|
||||
co_driver_drop_date: values.co_driver_drop_date
|
||||
? values.co_driver_drop_date.toISOString()
|
||||
: null,
|
||||
};
|
||||
taskController.taskPatch(formattedValues, recordTask.id);
|
||||
onCancel();
|
||||
form.resetFields();
|
||||
} catch (error) {
|
||||
console.log("Validation Failed:", error);
|
||||
}
|
||||
};
|
||||
|
||||
return (
|
||||
<Modal
|
||||
open={open}
|
||||
title="Edit Shift & Co-Driver Data"
|
||||
okText="Save"
|
||||
cancelText="Cancel"
|
||||
onCancel={onCancel}
|
||||
onOk={handleOk}
|
||||
destroyOnClose
|
||||
>
|
||||
<Form form={form} layout="vertical">
|
||||
{/* shift */}
|
||||
<Form.Item label="Shift Date" name="shift_date">
|
||||
<DatePicker
|
||||
style={{ width: "100%" }}
|
||||
format="MM-DD-YYYY hh:mm:ss A"
|
||||
showTime={{ format: "hh:mm:ss A" }}
|
||||
/>
|
||||
</Form.Item>
|
||||
|
||||
<Form.Item label="Shift Location" name="shift_location">
|
||||
<Input placeholder="Enter location" />
|
||||
</Form.Item>
|
||||
|
||||
{/* cycle */}
|
||||
|
||||
<Form.Item label="Cycle Date" name="cycle_date">
|
||||
<DatePicker
|
||||
style={{ width: "100%" }}
|
||||
format="MM-DD-YYYY hh:mm:ss A"
|
||||
showTime={{ format: "hh:mm:ss A" }}
|
||||
/>
|
||||
</Form.Item>
|
||||
|
||||
<Form.Item label="Cycle Location" name="cycle_location">
|
||||
<Input placeholder="Enter location" />
|
||||
</Form.Item>
|
||||
|
||||
{/* pick up */}
|
||||
|
||||
<Form.Item label="Pick Up Date" name="pickup_date">
|
||||
<DatePicker
|
||||
style={{ width: "100%" }}
|
||||
format="MM-DD-YYYY hh:mm:ss A"
|
||||
showTime={{ format: "hh:mm:ss A" }}
|
||||
/>
|
||||
</Form.Item>
|
||||
|
||||
<Form.Item label="Pick Up Location" name="cycle_location">
|
||||
<Input placeholder="Enter location" />
|
||||
</Form.Item>
|
||||
|
||||
{/* co driver */}
|
||||
|
||||
<Form.Item label="Driver Name" name="driver_name">
|
||||
<Input placeholder="Driver name" />
|
||||
</Form.Item>
|
||||
|
||||
<Form.Item label="Co-Driver Name" name="co_driver_name">
|
||||
<Input placeholder="Co-driver name" />
|
||||
</Form.Item>
|
||||
|
||||
<Form.Item label="Co-Driver Pick Up Date" name="co_driver_pickup_date">
|
||||
<DatePicker
|
||||
style={{ width: "100%" }}
|
||||
format="MM-DD-YYYY hh:mm:ss A"
|
||||
showTime={{ format: "hh:mm:ss A" }}
|
||||
/>
|
||||
</Form.Item>
|
||||
|
||||
<Form.Item
|
||||
label="Co-Driver Pick Up Location"
|
||||
name="co_driver_pickup_location"
|
||||
>
|
||||
<Input placeholder="Enter pickup location" />
|
||||
</Form.Item>
|
||||
|
||||
<Form.Item label="Co-Driver Drop Date" name="co_driver_drop_date">
|
||||
<DatePicker
|
||||
style={{ width: "100%" }}
|
||||
format="MM-DD-YYYY hh:mm:ss A"
|
||||
showTime={{ format: "hh:mm:ss A" }}
|
||||
/>
|
||||
</Form.Item>
|
||||
<Form.Item
|
||||
label="Co-Driver Drop Location"
|
||||
name="co_driver_drop_location"
|
||||
>
|
||||
<Input placeholder="Drop location" />
|
||||
</Form.Item>
|
||||
</Form>
|
||||
</Modal>
|
||||
);
|
||||
};
|
||||
|
||||
export default ShiftAndCoDriverEditModal;
|
Loading…
Reference in new issue