import { Box, Button, Paper, Stack, Table, TableBody, TableCell, TableRow, Typography, } from "@mui/material"; import { useSeasonTicketContractContext } from "contexts/dashboard/SeasonTicketContractContext"; import useDashboard from "hooks/useDashBoard"; import useNavigateCustom from "hooks/useNavigateCustom"; import { PageID, TabID } from "pages"; import { useEffect, useMemo } from "react"; import { useParams } from "react-router-dom"; import { getPath } from "routes/path"; import { numberFormat } from "utils/string"; import PayingPlanList from "./component/PayingPlanList"; export default function ContractDetail() { const { setHeaderTitle, setTabs } = useDashboard( PageID.DASHBOARD_SEASON_TICKET_CONTRACT_DETAIL, TabID.NONE ); const { id: paramId } = useParams(); const { initialized, selectedseasonTicketContract: seasonTicketContract, seasonTicketContracts, select, } = useSeasonTicketContractContext(); const { navigate, navigateWhenChanged } = useNavigateCustom(); const moveToList = () => { navigateWhenChanged(getPath(PageID.DASHBOARD_SEASON_TICKET_CONTRACT_LIST)); }; const endDate = useMemo(() => { if (seasonTicketContract) { const { contract_end_date } = seasonTicketContract; if (contract_end_date === "2121/12/31") { return ""; } return contract_end_date; } return ""; }, [seasonTicketContract]); const vehcleNo = useMemo(() => { if (seasonTicketContract) { const { vehicle_no } = seasonTicketContract; if (vehicle_no !== "") { return vehicle_no; } return "未登録"; } return ""; }, [seasonTicketContract]); useEffect(() => { setHeaderTitle("契約詳細"); setTabs(null); }, [setHeaderTitle, setTabs]); useEffect(() => { if (initialized && !!paramId) { const target = seasonTicketContracts.find((ele) => { return ele.season_ticekt_contract_record_no === paramId; }); if (target) { select(target); } else { select(null); moveToList(); } } }, [initialized]); if (!initialized || seasonTicketContract === null) { return null; } return ( 契約情報 駐車場名 {seasonTicketContract.parking_name} 区画 {seasonTicketContract.room_no} 契約金額 {numberFormat(seasonTicketContract.contract_amount)}円 車両番号 {vehcleNo} 契約期間 {seasonTicketContract.contract_start_date}-{endDate}
{seasonTicketContract.can_some_apply && ( <> 各種申請 {seasonTicketContract.has_sticker && ( )} {seasonTicketContract.has_season_ticket && ( )} {seasonTicketContract.can_parking_certificate_apply && ( )} {seasonTicketContract.can_change_plan_apply && ( )} 各種証明証提出 )}
); }