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 (
);
}