Browse Source

laanc 폴더 구조 변경 및 const -> function 변경

pull/2/head
sanguu516(박상현) 1 year ago
parent
commit
d3e6ed7483
  1. 20
      src/containers/laanc/LaancContainer.js
  2. 19
      src/containers/laanc/LaancPlanContainer.js
  3. 67
      src/views/laanc/LaancStep1.js
  4. 7
      src/views/laanc/LaancStep2.js
  5. 8
      src/views/laanc/LaancView.js
  6. 4
      src/views/laanc/LeftMenu.js

20
src/containers/basis/flight/laanc/LaancContainer.js → src/containers/laanc/LaancContainer.js

@ -1,18 +1,18 @@
import React, { useEffect, useState } from 'react'; import React, { useEffect, useState } from 'react';
import moment from 'moment'; import moment from 'moment';
import { useHistory } from 'react-router-dom'; import { useHistory } from 'react-router-dom';
import FlightPlanGrid from '../../../../components/basis/flight/plan/FlightPlanGrid'; import FlightPlanGrid from '../../components/basis/flight/plan/FlightPlanGrid';
import { CustomMainLayout } from '../../../../components/layout/CustomMainLayout'; import { CustomMainLayout } from '../../components/layout/CustomMainLayout';
import FlightPlanSearch from '../../../../components/basis/flight/plan/FlightPlanSearch'; import FlightPlanSearch from '../../components/basis/flight/plan/FlightPlanSearch';
import { useDispatch, useSelector, shallowEqual } from 'react-redux'; import { useDispatch, useSelector, shallowEqual } from 'react-redux';
import * as FlightAction from '../../../../modules/basis/flight/actions/basisFlightAction'; import * as FlightAction from '../../modules/basis/flight/actions/basisFlightAction';
import { Row, Col, Button } from 'reactstrap'; import { Row, Col, Button } from 'reactstrap';
import { import {
JOIN_LIST, JOIN_LIST,
GROUP_LIST GROUP_LIST
} from '../../../../modules/basis/group/actions/basisGroupAction'; } from '../../modules/basis/group/actions/basisGroupAction';
import FlightPlanGroupGrid from '../../../../components/basis/flight/plan/FlightPlanGroupGrid'; import FlightPlanGroupGrid from '../../components/basis/flight/plan/FlightPlanGroupGrid';
import LaancPlanContainer from '../laanc/LaancPlanContainer'; import LaancPlanContainer from './LaancPlanContainer';
const initSearchData = { const initSearchData = {
schFltStDt: moment() schFltStDt: moment()
.set({ date: 1, h: 0, m: 0, s: 0 }) .set({ date: 1, h: 0, m: 0, s: 0 })
@ -25,7 +25,7 @@ const initSearchData = {
cstmrSno: 0 cstmrSno: 0
}; };
// const columns = [{}]; // const columns = [{}];
const LaancContainer = () => { export default function LaancContainer() {
const dispatch = useDispatch(); const dispatch = useDispatch();
const history = useHistory(); const history = useHistory();
const [open, setOpen] = useState(false); const [open, setOpen] = useState(false);
@ -551,6 +551,4 @@ const LaancContainer = () => {
</div> </div>
</CustomMainLayout> </CustomMainLayout>
); );
}; }
export default LaancContainer;

19
src/containers/basis/flight/laanc/LaancPlanContainer.js → src/containers/laanc/LaancPlanContainer.js

@ -1,13 +1,13 @@
import FlightPlan from '../../../../views/laanc/FlightPlan'; import LaancStep1 from '../../views/laanc/LaancStep1'; // laanc step 1
import Apply from '../../../../views/laanc/Apply'; import LaancStep2 from '../../views/laanc/LaancStep2'; // laanc step 2
import { useEffect, useState } from 'react'; import { useEffect, useState } from 'react';
import moment from 'moment'; import moment from 'moment';
import { WeatherContainer } from '../plan/WeatherContainer'; import { WeatherContainer } from '../basis/flight/plan/WeatherContainer';
import { ErrorModal } from '../../../../components/modal/ErrorModal'; import { ErrorModal } from '../../components/modal/ErrorModal';
import { import {
initFlight, initFlight,
initFlightBas initFlightBas
} from '../../../../modules/basis/flight/models/basisFlightModel'; } from '../../modules/basis/flight/models/basisFlightModel';
import { import {
Row, Row,
Col, Col,
@ -22,7 +22,7 @@ import {
Input Input
} from 'reactstrap'; } from 'reactstrap';
const LaancPlanContainer = () => { export default function LaancPlanContainer() {
const [step, setStep] = useState(1); const [step, setStep] = useState(1);
const [detailData, setDetailData] = useState(initFlightBas.initDetail); const [detailData, setDetailData] = useState(initFlightBas.initDetail);
const [centeredModal, setCenteredModal] = useState(false); const [centeredModal, setCenteredModal] = useState(false);
@ -204,7 +204,7 @@ const LaancPlanContainer = () => {
> >
{step === 1 && ( {step === 1 && (
<> <>
<FlightPlan <LaancStep1
// handlerStep={handlerStep} // handlerStep={handlerStep}
data={detailData} data={detailData}
handleChange={handleChange} handleChange={handleChange}
@ -219,7 +219,7 @@ const LaancPlanContainer = () => {
)} )}
{step === 2 && ( {step === 2 && (
<Apply <LaancStep2
handlerStep={handlerStep} handlerStep={handlerStep}
data={detailData} data={detailData}
disabledAnimation={disabledAnimation} disabledAnimation={disabledAnimation}
@ -233,5 +233,4 @@ const LaancPlanContainer = () => {
</div> </div>
</> </>
); );
}; }
export default LaancPlanContainer;

67
src/views/laanc/FlightPlan.js → src/views/laanc/LaancStep1.js

@ -41,7 +41,7 @@ import {
import { useHistory } from 'react-router-dom'; import { useHistory } from 'react-router-dom';
import FlightArea from './FlightArea'; import FlightArea from './FlightArea';
const FlightPlan = ({ export default function LaancStep1({
handleChange, handleChange,
handlerNext, handlerNext,
data, data,
@ -50,7 +50,7 @@ const FlightPlan = ({
setDisabledAnimation, setDisabledAnimation,
centeredModal, centeredModal,
setCenteredModal setCenteredModal
}) => { }) {
const { user } = useSelector(state => state.authState); const { user } = useSelector(state => state.authState);
const history = useHistory(); const history = useHistory();
@ -120,7 +120,8 @@ const FlightPlan = ({
defaultValue={data.schFltStDt} defaultValue={data.schFltStDt}
value={data.schFltStDt} value={data.schFltStDt}
options={{ options={{
minDate: moment().format('YYYY-MM-DD') minDate: moment().format('YYYY-MM-DD'),
maxDate: moment().add(1, 'year').format('YYYY-MM-DD')
}} }}
onChange={date => { onChange={date => {
const value = const value =
@ -148,7 +149,8 @@ const FlightPlan = ({
defaultValue={data.schFltEndDt} defaultValue={data.schFltEndDt}
value={data.schFltEndDt} value={data.schFltEndDt}
options={{ options={{
minDate: moment().format('YYYY-MM-DD') minDate: moment().format('YYYY-MM-DD'),
maxDate: moment().add(1, 'year').format('YYYY-MM-DD')
}} }}
onChange={date => { onChange={date => {
const value = const value =
@ -159,7 +161,6 @@ const FlightPlan = ({
}); });
}} }}
placeholder='비행 종료일자 선택(클릭)' placeholder='비행 종료일자 선택(클릭)'
// {...{options:{minDate: "today"}}}
/> />
</FormGroup> </FormGroup>
</Col> </Col>
@ -182,19 +183,24 @@ const FlightPlan = ({
value value
}); });
}} }}
// innerRef={data}
// className={classnames({
// 'is-invalid': errors.arcrftTypeCd
// })}
> >
{/* TODO CDNOT 코드연동 필요 */}
<option value=''>= 선택 =</option> <option value=''>= 선택 =</option>
<option value='시험비행'>= 시험비행 =</option>
<option value='교육비행'>= 교육비행 =</option> <option value='교육비행'>= 교육비행 =</option>
<option value='교통관리'>= 교통관리 =</option>
<option value='공중광고'>= 공중광고 =</option>
<option value='계도비행'>= 계도비행 =</option>
<option value='농약살포'>= 농약살포 =</option>
<option value='레저비행'>= 레저비행 =</option>
<option value='사진/영상촬영'>= 사진/영상촬영 =</option> <option value='사진/영상촬영'>= 사진/영상촬영 =</option>
<option value='비행훈련'>= 비행훈련 =</option> <option value='수송'>= 수송 =</option>
<option value='수색구조'>= 수색구조 =</option>
<option value='시험비행'>= 시험비행 =</option>
<option value='산림관측'>= 산림관측 =</option>
<option value='비행교육'>= 비행교육 =</option> <option value='비행교육'>= 비행교육 =</option>
<option value='비행시연'>= 비행시연 =</option>
<option value='비행실기시험'>= 비행실기시험 =</option> <option value='비행실기시험'>= 비행실기시험 =</option>
<option value='비행훈련'>= 비행훈련 =</option>
<option value='항공측량'>= 항공측량 =</option>
</Input> </Input>
</FormGroup> </FormGroup>
</Col> </Col>
@ -278,15 +284,14 @@ const FlightPlan = ({
placeholder='' placeholder=''
> >
<option value=''>= 선택 =</option> <option value=''>= 선택 =</option>
<option value='시험비행'>= 시계비행 =</option> <option value='격자비행'>= 격자비행 =</option>
<option value='교육비행'>= 선화비행 =</option> <option value='군집비행'>= 군집비행 =</option>
<option value='사진/영상촬영'>= 계기비행 =</option> <option value='사진/영상촬영'>= 계기비행 =</option>
<option value='비행훈련'>= 격자비행 =</option> <option value='시계비행'>= 시계비행 =</option>
<option value='비행교육'>= 수직이착륙비행 =</option> <option value='선화비행'>= 선화비행 =</option>
<option value='비행실기시험'>= 수동조종비행 =</option> <option value='수동조종비행'>= 수동조종비행 =</option>
<option value='비행실기시험'>= 군집비행 =</option> <option value='수직이착륙비행'>= 수직이착륙비행 =</option>
<option value='비행실기시험'>= 직접입력 =</option> <option value='직접입력'>= 직접입력 =</option>
비행방식
</Input> </Input>
</FormGroup> </FormGroup>
</Col> </Col>
@ -298,6 +303,7 @@ const FlightPlan = ({
<Input <Input
type='text' type='text'
id='test' id='test'
// value={}
bssize='sm' bssize='sm'
placeholder='직접입력 선택 후 활성화' placeholder='직접입력 선택 후 활성화'
disabled disabled
@ -314,7 +320,22 @@ const FlightPlan = ({
<Label for='test'> <Label for='test'>
<span className='necessary'>*</span> <span className='necessary'>*</span>
</Label> </Label>
<Input type='text' id='test' bssize='sm' placeholder='' /> <Input type='select' id='test' bssize='sm' placeholder=''>
<option value=''>= 선택 =</option>
<option value='최대이륙중량 250g 이하'>
= 최대이륙중량 250g 이하 =
</option>
<option value='250g초과 ~ 2kg 이하'>
= 250g초과 ~ 2kg 이하 =
</option>
<option value='2kg초과~7kg이하'>
= 2kg초과~7kg이하 =
</option>
<option value='7kg초과~25kg이하'>
= 7kg초과~25kg이하 =
</option>
<option value='25kg초과'>= 25kg초과 =</option>
</Input>
</FormGroup> </FormGroup>
</Col> </Col>
<Col className='list-input' md='4'> <Col className='list-input' md='4'>
@ -384,7 +405,6 @@ const FlightPlan = ({
</Button> </Button>
</div> </div>
<div className='laanc-map-sm'> <div className='laanc-map-sm'>
여기가 지도 영역
<FlightArea <FlightArea
centeredModal={centeredModal} centeredModal={centeredModal}
setCenteredModal={setCenteredModal} setCenteredModal={setCenteredModal}
@ -442,5 +462,4 @@ const FlightPlan = ({
</ModalFooter> </ModalFooter>
</> </>
); );
}; }
export default FlightPlan;

7
src/views/laanc/Apply.js → src/views/laanc/LaancStep2.js

@ -40,14 +40,14 @@ import {
sensorClickAction sensorClickAction
} from '../../modules/control/map/actions/controlMapActions'; } from '../../modules/control/map/actions/controlMapActions';
const Apply = ({ export default function LaancStep2({
data, data,
handlerStep, handlerStep,
disabledAnimation, disabledAnimation,
setDisabledAnimation, setDisabledAnimation,
centeredModal, centeredModal,
setCenteredModal setCenteredModal
}) => { }) {
const [detailData, setDetailData] = useState(initFlightBas.initDetail); const [detailData, setDetailData] = useState(initFlightBas.initDetail);
const { user } = useSelector(state => state.authState); const { user } = useSelector(state => state.authState);
@ -363,5 +363,4 @@ const Apply = ({
</ModalFooter> </ModalFooter>
</> </>
); );
}; }
export default Apply;

8
src/views/laanc/LaancView.js

@ -1,10 +1,8 @@
import '@styles/react/libs/flatpickr/flatpickr.scss'; import '@styles/react/libs/flatpickr/flatpickr.scss';
import '@styles/react/libs/tables/react-dataTable-component.scss'; import '@styles/react/libs/tables/react-dataTable-component.scss';
import React from 'react'; import React from 'react';
import LaancContainer from '../../containers/basis/flight/laanc/LaancContainer'; import LaancContainer from '../../containers/laanc/LaancContainer';
import '../../assets/css/custom.css'; import '../../assets/css/custom.css';
const LaancView = props => { export default function LaancView() {
return <LaancContainer />; return <LaancContainer />;
}; }
export default LaancView;

4
src/views/laanc/LeftMenu.js

@ -1,8 +1,8 @@
import logo from '../../assets/images/pal_logo.png'; import logo from '../../assets/images/pal_logo.png';
import tp_logo from '../../assets/images/tplogo_wh.png'; import tp_logo from '../../assets/images/tplogo_wh.png';
import kac_logo from '../../assets/images/kac_logo_wh.png'; import kac_logo from '../../assets/images/kac_logo_wh.png';
import FlightPlan from './FlightPlan'; import FlightPlan from './LaancStep1';
import Apply from './Apply'; import Apply from './LaancStep2';
import { useEffect, useState } from 'react'; import { useEffect, useState } from 'react';
import { AiOutlinePoweroff, AiOutlineExclamation } from 'react-icons/ai'; import { AiOutlinePoweroff, AiOutlineExclamation } from 'react-icons/ai';
import WebsocketClient from '../../components/websocket/WebsocketClient'; import WebsocketClient from '../../components/websocket/WebsocketClient';

Loading…
Cancel
Save