From 81976540875d48b5b7f4a1eeab949dace0ee530f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?sanguu516=28=EB=B0=95=EC=83=81=ED=98=84=29?= Date: Mon, 18 Sep 2023 16:59:46 +0900 Subject: [PATCH] =?UTF-8?q?laanc=20=EC=8A=A4=ED=85=9D2=20Html=20=EC=9E=91?= =?UTF-8?q?=EC=97=85=EC=A4=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/control/setting/LAANC/Apply.js | 330 ++++++++++++++++++ src/views/control/setting/LAANC/FlightPlan.js | 36 +- 2 files changed, 354 insertions(+), 12 deletions(-) create mode 100644 src/views/control/setting/LAANC/Apply.js diff --git a/src/views/control/setting/LAANC/Apply.js b/src/views/control/setting/LAANC/Apply.js new file mode 100644 index 00000000..2f41bc55 --- /dev/null +++ b/src/views/control/setting/LAANC/Apply.js @@ -0,0 +1,330 @@ +import React, { useEffect, useState } from 'react'; +import { Search } from 'react-feather'; +import { BiBuildings, BiGridAlt } from 'react-icons/bi'; +import { CgTrees } from 'react-icons/cg'; +import { VscRadioTower } from 'react-icons/vsc'; +import { useDispatch, useSelector } from 'react-redux'; +import Flatpickr from 'react-flatpickr'; +import '@styles/react/libs/flatpickr/flatpickr.scss'; +import moment from 'moment'; +import { + Button, + InputGroup, + ButtonGroup, + InputGroupAddon, + Input, + Row, + Col, + FormGroup, + Label, + Card, + CardBody, + CustomInput +} from 'reactstrap'; +import { + initFlight, + initFlightBas +} from '../../../../modules/basis/flight/models/basisFlightModel'; +import { + areaClickAction, + environmentClickAction, + mapTypeChangeAction, + sensorClickAction +} from '../../../../modules/control/map/actions/controlMapActions'; + +const Apply = props => { + const [detailData, setDetailData] = useState(initFlightBas.initDetail); + // 변경감지 + const handleChange = ({ name, value, type, index, pIndex }) => { + setDetailData(prevState => ({ + ...prevState, + [name]: value + })); + }; + + return ( +
+
+
+

LAANC 승인 요청

+ {/* */} + props.handlerLaanc()} + > + 취소 + +
+
+ + + + +
+
+
+
+
+
+
+

유효성 검사 정보

+
+ + +
+ +
+

LAANC 승인 사전 결과 확인

+
+ +
+ + + + + { + const value = + moment(date[0]).format('YYYY-MM-DD HH:mm:ss') || + ''; + handleChange({ + name: 'schFltStDt', + value + }); + }} + placeholder='비행 시작일자 선택(클릭)' + /> + + + + + + { + const value = + moment(date[0]).format('YYYY-MM-DD HH:mm:ss') || + ''; + handleChange({ + name: 'schFltEndDt', + value + }); + }} + placeholder='비행 종료일자 선택(클릭)' + // {...{options:{minDate: "today"}}} + /> + + + + + + { + const { name, value } = e.target; + handleChange({ + type: 'plan', + name, + value + }); + }} + // innerRef={props.data} + // className={classnames({ + // 'is-invalid': props.errors.arcrftTypeCd + // })} + > + {/* TODO CDNOT 코드연동 필요 */} + + + + + + + + + + + +
+
+ + + + + { + const { name, value } = e.target; + handleChange({ + type: 'plan', + name, + value + }); + }} + // innerRef={props.data} + placeholder='100m' + /> + + + + + + { + const { name, value } = e.target; + handleChange({ + type: 'plan', + name, + value + }); + }} + // innerRef={props.data} + placeholder='100m' + /> + + + + + + { + const { name, value } = e.target; + handleChange({ + type: 'plan', + name, + value + }); + }} + // innerRef={props.data} + placeholder='' + /> + + + +
+
+

조종사 준수사항 처벌 동의 약관

+
+ +
+ + 이전 + + + 다음 + +
+
+
+ +
+ +
+
+ ); +}; +export default Apply; diff --git a/src/views/control/setting/LAANC/FlightPlan.js b/src/views/control/setting/LAANC/FlightPlan.js index dcf4adb1..57b254c1 100644 --- a/src/views/control/setting/LAANC/FlightPlan.js +++ b/src/views/control/setting/LAANC/FlightPlan.js @@ -21,6 +21,10 @@ import { CardBody, CustomInput } from 'reactstrap'; +import { + initFlight, + initFlightBas +} from '../../../../modules/basis/flight/models/basisFlightModel'; import { areaClickAction, environmentClickAction, @@ -29,6 +33,15 @@ import { } from '../../../../modules/control/map/actions/controlMapActions'; const FlightPlan = props => { + const [detailData, setDetailData] = useState(initFlightBas.initDetail); + + const handleChange = ({ name, value, type, index, pIndex }) => { + setDetailData(prevState => ({ + ...prevState, + [name]: value + })); + }; + return (
@@ -213,7 +226,6 @@ const FlightPlan = props => { moment(date[0]).format('YYYY-MM-DD HH:mm:ss') || ''; handleChange({ - type: 'plan', name: 'schFltStDt', value }); @@ -241,7 +253,6 @@ const FlightPlan = props => { moment(date[0]).format('YYYY-MM-DD HH:mm:ss') || ''; handleChange({ - type: 'plan', name: 'schFltEndDt', value }); @@ -344,7 +355,7 @@ const FlightPlan = props => { }); }} // innerRef={props.data} - placeholder='' + placeholder='100m' /> @@ -369,7 +380,7 @@ const FlightPlan = props => { }); }} // innerRef={props.data} - placeholder='100m' + placeholder='' /> @@ -461,14 +472,7 @@ const FlightPlan = props => {

유의사항

{/*
- - 저장 - + {data.planSno ? ( { ) : null}
*/} + + 다음 +