import { Box, Button, Stack, Typography } from "@mui/material"; import { HasChildren } from "@types"; import { reOrderSticker } from "api/season-ticket-contract"; import { FormProvider, RHFTextField } from "components/hook-form"; import { RHFUpload } from "components/hook-form/RHFUpload"; import { useSeasonTicketContractContext } from "contexts/dashboard/SeasonTicketContractContext"; import useAPICall from "hooks/useAPICall"; import useDashboard from "hooks/useDashBoard"; import useNavigateCustom from "hooks/useNavigateCustom"; import useSnackbarCustom from "hooks/useSnackbarCustom"; import { useUpload } from "hooks/useUpload"; import { PageID, TabID } from "pages"; import { useEffect, useState } from "react"; import { useForm } from "react-hook-form"; import { getPath } from "routes/path"; type AreaBoxProps = { label: string; } & HasChildren; function AreaBox({ label, children }: AreaBoxProps) { return ( {label} {children} ); } type FormProps = { upload1: File[]; }; export default function StickerReOrder() { const { setHeaderTitle, setTabs } = useDashboard( PageID.DASHBOARD_SEASON_TICKET_CONTRACT_STICKER_RE_ORDER, TabID.NONE ); const form = useForm({ defaultValues: { upload1: [], }, }); const { navigateWhenChanged, navigate } = useNavigateCustom(); const { error } = useSnackbarCustom(); const { selectedseasonTicketContract } = useSeasonTicketContractContext(); const [done, setDone] = useState(false); const { callAPI: callReOrderSticker } = useAPICall({ apiMethod: reOrderSticker, backDrop: true, onSuccess: () => { setDone(true); }, onFailed: () => { error("依頼失敗しました"); }, }); const handleSubmit = (data: FormProps) => { console.log(data); return; // if (selectedseasonTicketContract === null) return; // callReOrderSticker({ // season_ticket_contract_record_no: // selectedseasonTicketContract.season_ticekt_contract_record_no ?? "", // }); }; useEffect(() => { setHeaderTitle("シール再発行依頼"); setTabs(null); }, [setHeaderTitle, setTabs]); useEffect(() => { if (selectedseasonTicketContract === null) { navigateWhenChanged( getPath(PageID.DASHBOARD_SEASON_TICKET_CONTRACT_LIST) ); } }, [selectedseasonTicketContract]); if (selectedseasonTicketContract === null) { return null; } if (done) { return ( 依頼しました ); } return ( ); }