Browse Source

비행 구역 초기화 수정

feature/flight-plan
노승철 2 years ago
parent
commit
377bb78479
  1. 1
      src/components/basis/flight/plan/FlightPlanForm.js
  2. 3
      src/components/map/naver/draw/FlightPlanDrawTest.js
  3. 2
      src/containers/basis/flight/plan/FlightPlanAreaContainer.js
  4. 2
      src/containers/basis/flight/plan/FlightPlanAreaDetailContainer.js
  5. 7
      src/containers/basis/flight/plan/FlightPlanContainer.js
  6. 16
      src/containers/basis/flight/plan/FlightPlanDetailContainer.js
  7. 9
      src/modules/basis/flight/actions/basisFlightAction.ts
  8. 11
      src/modules/basis/flight/reducers/basisFlightReducer.ts

1
src/components/basis/flight/plan/FlightPlanForm.js

@ -18,6 +18,7 @@ import { FlightPlanModal } from './FlightPlanModal';
import FlightPlanArcrftContainer from '../../../../containers/basis/flight/plan/FlightPlanArcrftContainer';
import FlightPlanAreaContainer from '../../../../containers/basis/flight/plan/FlightPlanAreaContainer';
import { X } from 'react-feather';
import { useDispatch } from 'react-redux';
const FlightPlanForm = ({data, handleModal, handleChange, handleSave, handleDelete, modal, handleDeleteArray }) => {

3
src/components/map/naver/draw/FlightPlanDrawTest.js

@ -475,8 +475,7 @@ export const FlightPlanDrawTest = props => {
const handleDetailDrwa = () => {
if (props.areaCoordList) {
console.log('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>')
console.log('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>')
const areas = props.areaCoordList[0];

2
src/containers/basis/flight/plan/FlightPlanAreaContainer.js

@ -29,7 +29,7 @@ const FlightPlanAreaContainer = ({handleModal}) => {
dispatch(Actions.AREA_COORDINATE_LIST_SAVE(areaList))
}
useEffect(() => {
useEffect(() => {
dispatch(drawTypeChangeAction(''));
getAirAreaList();
}, []);

2
src/containers/basis/flight/plan/FlightPlanAreaDetailContainer.js

@ -9,7 +9,7 @@ import {initFlightBas} from '../../../../modules/basis/flight/models/basisFlight
const FlightPlanAreaDetailContainer = ({ handleModal }) => {
const dispatch = useDispatch();
const { areaCoordList, areaList, detail } = useSelector(state => state.flightState);
const { areaCoordList, detail } = useSelector(state => state.flightState);
const [areaDetail, setAreaDetail] = useState(initFlightBas.initDetail.areaList);
const handleClose = (status) => {

7
src/containers/basis/flight/plan/FlightPlanContainer.js

@ -13,7 +13,7 @@ import FlightPlanGroupGrid from '../../../../components/basis/flight/plan/Flight
const initSearchData = {
schFltStDt: moment().set({'date': 1, 'h': 0, 'm': 0, 's': 0}).format('YYYY-MM-DD HH:mm:ss'),
schFltStDt: moment().set({'m': 7, 'date': 1, 'h': 0, 'm': 0, 's': 0}).format('YYYY-MM-DD HH:mm:ss'),
schFltEndDt: moment().set({'h': 23, 'm': 59, 's': 59}).format('YYYY-MM-DD HH:mm:ss'),
aprvlYn: 'N',
groupId: '',
@ -24,7 +24,7 @@ const FlightPlanContainer = () => {
const dispatch = useDispatch();
const history = useHistory();
const [searchData, setSerchData] = useState(initSearchData);
const {list: planListData, detail: planDetailData, selectGroup} = useSelector(state => state.flightState);
const {list: planListData, detail: planDetailData, selectGroup, areaCoordList } = useSelector(state => state.flightState);
const { joinList, joinListCount } = useSelector(state => state.groupState);
const { user } = useSelector(state => state.authState, shallowEqual);
@ -35,6 +35,9 @@ const FlightPlanContainer = () => {
if(planDetailData){
dispatch(FlightAction.FLIGHT_PLAN_DETAIL_INIT());
}
if(areaCoordList) {
dispatch(FlightAction.AREA_DETAIL_INIT());
}
history.push('/basis/flight/plan/create');
};

16
src/containers/basis/flight/plan/FlightPlanDetailContainer.js

@ -101,7 +101,7 @@ const FlightPlanDetailContainer = () => {
}
}, [arcrftSelect])
useEffect(() => {
useEffect(() => {
if(areaList !== undefined) {
const areas = detailData.areaList.concat();
@ -135,17 +135,25 @@ const FlightPlanDetailContainer = () => {
...prevState,
['areaList']: createAreaList
}
})
})
// dispatch(Actions.AREA_DETAIL_INIT());
}
}, [areaList]);
useEffect(() => {
// 조종사, 기체 정보 Redux 초기화
dispatch(Actions.PILOT_ARCRFT_SELECT_INIT());
})
dispatch(Actions.PILOT_ARCRFT_SELECT_INIT());
}, []);
const handleModal = (modal) => {
if(modal.target === 'area' && modal.isOpen) {
if(detailData.areaList) {
dispatch(Actions.FLIGHT_PLAN_AREA_BUFFER_LIST.request(detailData.areaList));
}
}
setModal(prevState => ({
...initModal,
[modal.target]: modal.isOpen

9
src/modules/basis/flight/actions/basisFlightAction.ts

@ -75,6 +75,9 @@ const AREA_DETAIL_LIST = 'basis/flight/plan/area/DETAIL_LIST';
// 비행계획서 그룹 선택
const ROUP_SELECT = 'basis/flight/plan/group/select';
// 조종사, 기체 선택 초기화
const AREA_DETAIL_INITIAL = 'basis/flight/plan/detail/AREA_DETAIL_INIT';
// 버퍼 좌표 가져오기
const AREA_BUFFER_LIST_REQUEST = 'basis/flight/plan/area/BUFFER_LIST_REQUEST';
const AREA_BUFFER_LIST_SUCCESS = 'basis/flight/plan/area/BUFFER_LIST_SUCCESS';
@ -160,6 +163,9 @@ export const AREA_DETAIL_LIST_SAVE = createAction(AREA_DETAIL_LIST)<FlightPlanAr
// 비행 계획서 그룹 선택
export const FLIGHT_PLAN_GROUP_SELECT = createAction(ROUP_SELECT)<SelectGroupData>();
// 비행 구역 상세 값 초기화
export const AREA_DETAIL_INIT = createAction(AREA_DETAIL_INITIAL)();
// 버퍼 좌표 가져오기
export const FLIGHT_PLAN_AREA_BUFFER_LIST = createAsyncAction(
AREA_BUFFER_LIST_REQUEST,
@ -184,7 +190,8 @@ const actions = {
AREA_COORDINATE_LIST_SAVE,
AREA_DETAIL_LIST_SAVE,
FLIGHT_PLAN_GROUP_SELECT,
FLIGHT_PLAN_AREA_BUFFER_LIST
FLIGHT_PLAN_AREA_BUFFER_LIST,
AREA_DETAIL_INIT
};
export type FlightAction = ActionType<typeof actions>;

11
src/modules/basis/flight/reducers/basisFlightReducer.ts

@ -71,7 +71,7 @@ export const flightReducer = createReducer<FlightState, Actions.FlightAction>(in
produce(state, draft => {
draft.arcrftSelect = undefined;
draft.pilotSelect = undefined;
draft.areaList = undefined;
// draft.areaList = undefined;
// draft.areaCoordList = undefined;
})
)
@ -97,10 +97,17 @@ export const flightReducer = createReducer<FlightState, Actions.FlightAction>(in
draft.selectGroup = data;
})
)
// 비행 계획서 그룹 선택
// 비행 계획서 버퍼 영역 조회
.handleAction(Actions.FLIGHT_PLAN_AREA_BUFFER_LIST.success, (state, action) =>
produce(state, draft => {
const data = action.payload;
draft.areaCoordList = data;
})
)
// 조종사, 기체 선택 초기화
.handleAction(Actions.AREA_DETAIL_INIT, (state, action) =>
produce(state, draft => {
draft.areaList = undefined;
draft.areaCoordList = undefined;
})
)

Loading…
Cancel
Save