import { ChevronDownIcon } from "@chakra-ui/icons"; import React, { useEffect, useState } from "react"; import { Badge, Button, FormControl, FormLabel, Menu, MenuButton, MenuItem, MenuList, Modal, ModalBody, ModalCloseButton, ModalContent, ModalFooter, ModalHeader, ModalOverlay, FormErrorMessage } from "@chakra-ui/react"; import { useGetIOprepopulateDataQuery, useUpdateStatusIoMutation, } from "../../../../Services/io.service"; import { useParams } from "react-router-dom"; const UpdateIOStatus = ({ isOpen, onClose, status }) => { const params = useParams(); const id = params?.id; const [selectedItem, setSelectedItem] = useState(); const [isLoadingg, setIsLoading] = useState(false); const [error, setError] = useState(""); const [selectedStatusId, setSelectedStatusId] = useState(''); const { data } = useGetIOprepopulateDataQuery(); const [updateStatusIo] = useUpdateStatusIoMutation(); // useEffect(() => { // setSelectedStatusId(status?.[0]?.id); // }, [status]); const handleMenuItemClick = (item, id) => { setSelectedItem(item); setSelectedStatusId(id); }; const handleSubmit = async () => { if (!selectedStatusId) { setError("Please select status"); return; } setError(""); setIsLoading(true); try { const res = await updateStatusIo({ data: { ioStatus_xid: selectedStatusId, }, id, }); console.log(res); setIsLoading(false); handleClose(); } catch (error) { setIsLoading(false); } }; const handleClose = () => { setSelectedItem(null) setSelectedStatusId(null) onClose() setError("") } return ( Update IO Status Transaction Status } fontSize={"sm"} fontWeight={500} w={"100%"} textAlign={"left"} > {selectedItem ? ( {selectedItem} ) : "Select Item"} {status?.length > 0 ? {status?.map(({ id, statusAdmin }) => ( handleMenuItemClick(statusAdmin, id)} > {statusAdmin} ))} :""} {error} ); }; export default UpdateIOStatus;