import React, { useRef, useEffect, useState } from 'react'; import { Link, useLocation, useNavigate, useParams } from 'react-router-dom'; import moment from 'moment'; import Notification from '../../component/notification'; import ModalConfirm from '../../component/modal_confirm'; import Alert from '../../component/alert'; import PageLoader from '../../component/page_loader'; const ParentChildDetail = () => { const navigator = useNavigate(); const location = useLocation(); const params = useParams(); const [notice, setNotice] = useState(localStorage.getItem('notice')); const [loaded, setLoaded] = useState(false); const [show_delete, setShowDelete] = useState(false); const [submit, setSubmit] = useState(false); const [child, setChild] = useState(null); const [_400error, set400Error] = useState(''); const [_404error, set404Error] = useState(''); const [_success, setSuccess] = useState(location.state); const father_id = localStorage.getItem('kiki_acc_id'); const child_id = params?.child_id; const isMountedRef = useRef(true); useEffect( async () => { isMountedRef.current = false; setLoaded(false); await axios.get('/api/fathers/children/detail/'+child_id, {params:{father_id: father_id}}) .then(response => { setLoaded(true); setNotice(response.data.notice); if(response.data.status_code==200){ setChild(response.data.params); } else { set400Error("失敗しました。"); } }) .catch(err=>{ setLoaded(true); setNotice(err.response.data.notice); if(err.response.status==404){ set404Error(err.response.data.message); } }) },[]); //------------------------------------------------------------- useEffect(()=>{ var navbar_list = document.getElementsByClassName("mypage-nav-list__item"); for(let i=0; i { setSubmit(true); await axios.delete(`/api/fathers/relations/deleteRelationChild/${child_id}`) .then(response => { setSubmit(false); setShowDelete(false); setNotice(response.data.notice); switch(response.data.status_code){ case 200: { navigator('/p-account/child', { state: "子の削除に成功しました。" }); break; } case 400: set400Error('子の削除に失敗しました。'); break; } }); }; return (

子詳細

{ !loaded && } { loaded && child &&
child-image

{`${child.last_name} ${child.first_name}`}

会社名

{child.company ? child.company: '未入力'}

日付

{ moment(child.father_relations?.hire_at).format('YYYY/MM/DD') || '' }

入社日を変更
setShowDelete(false)} handleAccept={handleAcceptDelete} loading={submit} />
}
{ _400error && set400Error('')}>{_400error} } { _success && setSuccess('')}>{_success} } { _404error && { set404Error(''); navigator('/p-account/child', {state: ''}); }}> {_404error} }
) } export default ParentChildDetail;