|
|
@ -10,17 +10,38 @@ import { yupResolver } from '@hookform/resolvers/yup'; |
|
|
|
import * as Actions from '../../../../modules/basis/flight/actions/basisFlightAction'; |
|
|
|
import * as Actions from '../../../../modules/basis/flight/actions/basisFlightAction'; |
|
|
|
import { useForm } from 'react-hook-form'; |
|
|
|
import { useForm } from 'react-hook-form'; |
|
|
|
|
|
|
|
|
|
|
|
const FlightPlanDetailContainer = () => { |
|
|
|
const FlightPlanDetailContainer = props => { |
|
|
|
const dispatch = useDispatch(); |
|
|
|
const dispatch = useDispatch(); |
|
|
|
const history = useHistory(); |
|
|
|
const history = useHistory(); |
|
|
|
|
|
|
|
const [pageType, setPageType] = useState('create'); |
|
|
|
const { flightPlanArea } = useSelector(state => state.flightState); |
|
|
|
const { flightPlanArea } = useSelector(state => state.flightState); |
|
|
|
const [areaInfo, setAreaInfo] = useState();
|
|
|
|
const [areaInfo, setAreaInfo] = useState();
|
|
|
|
const [modal, setModal] = useState({ |
|
|
|
const [modal, setModal] = useState({ |
|
|
|
isOpen: false, |
|
|
|
isOpen: false, |
|
|
|
title: '',
|
|
|
|
title: '',
|
|
|
|
}); |
|
|
|
}); |
|
|
|
|
|
|
|
const { listFlightP, flightCount, isRefreshFlight } = useSelector( |
|
|
|
|
|
|
|
state => state.flightState |
|
|
|
|
|
|
|
); |
|
|
|
|
|
|
|
const [flightPlanData, setFlightPlanData] = useState({ |
|
|
|
|
|
|
|
id: '', |
|
|
|
|
|
|
|
memberName: '', |
|
|
|
|
|
|
|
clncd: '', |
|
|
|
|
|
|
|
hpno: '', |
|
|
|
|
|
|
|
email:'', |
|
|
|
|
|
|
|
createDt: '', |
|
|
|
|
|
|
|
createUserId: '', |
|
|
|
|
|
|
|
updateUserId: '', |
|
|
|
|
|
|
|
updateDt: '' |
|
|
|
|
|
|
|
}); |
|
|
|
|
|
|
|
useEffect(() => { |
|
|
|
|
|
|
|
console.log('isRefreshFlight>>>>', isRefreshFlight); |
|
|
|
|
|
|
|
if (isRefreshFlight) { |
|
|
|
|
|
|
|
console.log(isRefreshFlight); |
|
|
|
|
|
|
|
handlerSearch(); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
}, [isRefreshFlight]); |
|
|
|
|
|
|
|
const [flightPlanDataList, setFlightPlanDataList] = useState([]); |
|
|
|
/* Form Validation Checking */ |
|
|
|
/* Form Validation Checking */ |
|
|
|
const validSchema = yup.object().shape({
|
|
|
|
const validSchema = yup.object().shape({
|
|
|
|
}); |
|
|
|
}); |
|
|
@ -31,29 +52,68 @@ const FlightPlanDetailContainer = () => { |
|
|
|
altitude_m: '', |
|
|
|
altitude_m: '', |
|
|
|
altitude_ft: '', |
|
|
|
altitude_ft: '', |
|
|
|
}, |
|
|
|
}, |
|
|
|
resolver: yupResolver(validSchema) |
|
|
|
resolver: yupResolver(validSchema)
|
|
|
|
}) |
|
|
|
}) |
|
|
|
|
|
|
|
|
|
|
|
const saveFlightPlanArea = () => { |
|
|
|
const saveFlightPlanArea = () => { |
|
|
|
console.log('비행 구역 설정 저장'); |
|
|
|
console.log('비행 구역 설정 저장'); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
useEffect(() => { |
|
|
|
|
|
|
|
if (props.id) { |
|
|
|
|
|
|
|
handlerSearch(); |
|
|
|
|
|
|
|
setPageType('update'); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
// console.log(selectData);
|
|
|
|
|
|
|
|
}, []); |
|
|
|
|
|
|
|
useEffect(() => { |
|
|
|
|
|
|
|
let newArr = []; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
listFlightP?.map(item => { |
|
|
|
|
|
|
|
newArr.push({ ...item }); |
|
|
|
|
|
|
|
}); |
|
|
|
|
|
|
|
setFlightPlanDataList(listFlightP); |
|
|
|
|
|
|
|
}, [listFlightP]); |
|
|
|
const openModal = () => { |
|
|
|
const openModal = () => { |
|
|
|
setModal({
|
|
|
|
setModal({
|
|
|
|
isOpen: true, |
|
|
|
isOpen: true, |
|
|
|
title: '비행 구역 설정',
|
|
|
|
title: '비행 구역 설정',
|
|
|
|
}); |
|
|
|
}); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
const handlerCreate = async data => { |
|
|
|
|
|
|
|
console.log('data>>>>>', data); |
|
|
|
|
|
|
|
console.log('flightPlanData>>>',flightPlanData); |
|
|
|
|
|
|
|
let saveArr = flightPlanData; |
|
|
|
|
|
|
|
dispatch( |
|
|
|
|
|
|
|
Actions.FLIGHT_PLAN_CREATE.request({ |
|
|
|
|
|
|
|
data: saveArr |
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
); |
|
|
|
|
|
|
|
}; |
|
|
|
|
|
|
|
const onChange = (e) => { |
|
|
|
|
|
|
|
setFlightPlanData({ |
|
|
|
|
|
|
|
...flightPlanData, |
|
|
|
|
|
|
|
[e.target.name]: e.target.value, |
|
|
|
|
|
|
|
}); |
|
|
|
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const handlerDelete = async data => { |
|
|
|
|
|
|
|
// dispatch(Actions.IDNTF_DELETE.request(data.arcrftSno));
|
|
|
|
|
|
|
|
}; |
|
|
|
useEffect(() => { |
|
|
|
useEffect(() => { |
|
|
|
setAreaInfo(flightPlanArea); |
|
|
|
setAreaInfo(flightPlanArea); |
|
|
|
}, [flightPlanArea]); |
|
|
|
}, [flightPlanArea]); |
|
|
|
|
|
|
|
|
|
|
|
return ( |
|
|
|
return ( |
|
|
|
<CustomDetailLayout title={"비행 계획 신청서"}> |
|
|
|
<CustomDetailLayout title={"비행 계획 신청서"}> |
|
|
|
<FlightPlanForm |
|
|
|
<FlightPlanForm |
|
|
|
|
|
|
|
data={flightPlanData} |
|
|
|
openModal={openModal} |
|
|
|
openModal={openModal} |
|
|
|
areaInfo={areaInfo} |
|
|
|
areaInfo={areaInfo} |
|
|
|
|
|
|
|
handlerSave={ |
|
|
|
|
|
|
|
pageType === 'create' ? handlerCreate : handlerUpdate |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
onChange={onChange} |
|
|
|
|
|
|
|
handlerDelete={handlerDelete} |
|
|
|
/> |
|
|
|
/> |
|
|
|
<FlightPlanAreaModal
|
|
|
|
<FlightPlanAreaModal
|
|
|
|
modal={modal} |
|
|
|
modal={modal} |
|
|
|