import { useEffect, useState } from 'react'; import { useHistory, Link } from 'react-router-dom'; import moment from 'moment'; import axios from 'axios'; import { CircularProgress } from '@material-ui/core'; import Alert from '../../component/alert'; import ModalPdf from '../../component/pdf/modal_pdf'; import ModalMemo from '../../component/modal_memo'; import ModalConfirm from '../../component/modal_confirm'; const MeetingDetail = (props) => { const history = useHistory(); const [loaded, setLoaded] = useState(false); const [submit, setSubmit] = useState(false); const [meeting, setMeeting] = useState(null); const [thumbnail, setThumbnail] = useState(''); const [_400error, set400Error] = useState(''); const [_success, setSuccess] = useState(props.history.location.state); const [show_confirm_modal, setShowConfirmModal] = useState(false); const [show_pdf_modal, setShowPDFModal] = useState(false); const [show_memo_modal, setShowMemoModal] = useState(false); useEffect(() => { setLoaded(false); axios.get(`/api/admin/meetings/detail/${props.match.params?.meeting_id}`) .then((response) => { setLoaded(true); if(response.data.status_code==200){ var list = response.data.params; var total=0, num=0; if(list.approval){ for(var i in list.approval) { if(list.approval[i].approval_at) num ++; total ++; } } setMeeting({...list, denominator:total, numerator:num}); if(list.meeting_image.length > 0) setThumbnail(list.meeting_image[0].image); } else { set400Error("失敗しました。"); } }); }, []); async function handleAcceptDelete() { setSubmit(true); axios.delete(`/api/admin/meetings/delete/${props.match.params?.meeting_id}`) .then(response => { setShowConfirmModal(false); setSubmit(false); switch(response.data.status_code){ case 200:{ history.push({pathname: '/admin/meeting', state: '削除に成功しました!'}); break; } case 400: set400Error("削除に失敗しました。"); break; } }); }; return (

ミーティング詳細

{ !loaded && } { loaded && meeting &&
  • {meeting.numerator}
  • {meeting.denominator}
    { meeting.approval?.map((x, k)=>
  • name
  • ) }

{ meeting.title }

{ thumbnail && thumbnail }
{ meeting.meeting_image?.map((x, k)=>
{x.image}setThumbnail(x.image)}/>
) }

{ meeting.text }

setShowMemoModal(false)} /> setShowPDFModal(false)} />
}
setShowConfirmModal(false)} handleAccept={handleAcceptDelete} loading={submit} /> { _400error && set400Error('')}> {_400error} } { _success && setSuccess('')}> {_success} }
) } export default MeetingDetail;