From 36c0aa7550248b332855039db047b66f4b6e0a98 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?junh=5Feee=28=EC=9D=B4=EC=A4=80=ED=9D=AC=29?= Date: Tue, 19 Jul 2022 17:47:39 +0900 Subject: [PATCH] =?UTF-8?q?Reducer,=20Action=20=EC=83=9D=EC=84=B1=20?= =?UTF-8?q?=EB=B0=8F=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../flight/actions/basisFlightDrawAction.ts | 33 +++++++++++ .../flight/reducers/basisFlightDrawReducer.ts | 59 +++++++++++++++++++ .../control/map/reducers/controlMapReducer.ts | 7 ++- src/redux/reducers/rootReducer.ts | 4 ++ 4 files changed, 100 insertions(+), 3 deletions(-) create mode 100644 src/modules/basis/flight/actions/basisFlightDrawAction.ts create mode 100644 src/modules/basis/flight/reducers/basisFlightDrawReducer.ts diff --git a/src/modules/basis/flight/actions/basisFlightDrawAction.ts b/src/modules/basis/flight/actions/basisFlightDrawAction.ts new file mode 100644 index 0000000..1dc7b23 --- /dev/null +++ b/src/modules/basis/flight/actions/basisFlightDrawAction.ts @@ -0,0 +1,33 @@ + // draw 옵션 변경 Action + export const polylineChangeAction = (value: any) => dispatch => + dispatch({type: 'POLYLINE_CHANGE', value}); + + export const guidelineChangeAction = (value: any) => dispatch => + dispatch({type: 'GUIDELINE_CHANGE', value}); + + export const bufferpolylineChangeAction = (value: any) => dispatch => + dispatch({type: 'BUFFERPOLYLINE_CHANGE', value}); + + export const polygonChangeAction = (value: any) => dispatch => + dispatch({type: 'POLYGON_CHANGE', value}); + + export const circleChangeAction = (value: any) => dispatch => + dispatch({type: 'CIRCLE_CHANGE', value}); + + export const radiuslineChangeAction = (value: any) => dispatch => + dispatch({type: 'RADIUSLINE_CHANGE', value}); + + export const clickEveChangeAction = (value: any) => dispatch => + dispatch({type: 'CLICKEVE_CHANGE', value}); + + export const mousedownEveChangeAction = (value: any) => dispatch => + dispatch({type: 'MOUSEDOWNEVE_CHANGE', value}); + + export const rightclickEveChangeAction = (value: any) => dispatch => + dispatch({type: 'RIGHTCLICKEVE_CHANGE', value}); + + export const dragCircleChangeAction = (value: any) => dispatch => + dispatch({type: 'DRAGCIRCLE_CHANGE', value}); + + export const checkChangeAction = (value: any) => dispatch => + dispatch({type: 'CHECK_CHANGE', value}); \ No newline at end of file diff --git a/src/modules/basis/flight/reducers/basisFlightDrawReducer.ts b/src/modules/basis/flight/reducers/basisFlightDrawReducer.ts new file mode 100644 index 0000000..2e6287b --- /dev/null +++ b/src/modules/basis/flight/reducers/basisFlightDrawReducer.ts @@ -0,0 +1,59 @@ +// ** Initial State +const initial = { + polyline: '', + guideline: '', + bufferPolyline: '', + + polygon: '', + + circle: '', + radiusline: '', + + clickEve: '', + mousedownEve: '', + rightclickEve: '', + + dragCircle: [], + check: '' +}; + +const drawReducerReducer = (state = initial, action) => { + switch (action.type) { + case 'POLYLINE_CHANGE': + return {...state, polyline: action.value}; + + case 'GUIDELINE_CHANGE': + return { ...state, guideline: action.value}; + + case 'BUFFERPOLYLINE_CHANGE': + return {...state, bufferPolyline: action.value}; + + case 'POLYGON_CHANGE': + return {...state, polygon: action.value}; + + case 'CIRCLE_CHANGE': + return {...state, circle: action.value}; + + case 'RADIUSLINE_CHANGE': + return {...state, radiusline: action.value}; + + case 'CLICKEVE_CHANGE': + return {...state, clickEve: action.value}; + + case 'MOUSEDOWNEVE_CHANGE': + return {...state, mousedownEve: action.value}; + + case 'RIGHTCLICKEVE_CHANGE': + return {...state, rightclickEve: action.value}; + + case 'DRAGCIRCLE_CHANGE': + return {...state, dragCircle: action.value}; + + case 'CHECK_CHANGE': + return {...state, check: action.value}; + default: + return state; + } +}; + +export default drawReducerReducer; diff --git a/src/modules/control/map/reducers/controlMapReducer.ts b/src/modules/control/map/reducers/controlMapReducer.ts index a454b86..612123c 100644 --- a/src/modules/control/map/reducers/controlMapReducer.ts +++ b/src/modules/control/map/reducers/controlMapReducer.ts @@ -1,6 +1,6 @@ // ** Initial State const initialState = { - mapType: 'HYBRID', + mapType: 'NORMAL', objectId: null, isClickObject: false, area0001: true, // 비행금지 구역 @@ -11,9 +11,10 @@ const initialState = { area0006: true, // 초경량비행장치 sensor: 'dust', - drawType: '', + drawType: null, - drawCheck: false + // drawCheck: false + drawCheck: '' }; const controlReducerReducer = (state = initialState, action) => { diff --git a/src/redux/reducers/rootReducer.ts b/src/redux/reducers/rootReducer.ts index 57d7156..0af8c25 100644 --- a/src/redux/reducers/rootReducer.ts +++ b/src/redux/reducers/rootReducer.ts @@ -22,6 +22,9 @@ import { ControlGpState } from '../../modules/control/gp'; import controlMapReducer from '../../modules/control/map/reducers/controlMapReducer'; + +import basisFlightDrawReducer from '../../modules/basis/flight/reducers/basisFlightDrawReducer'; + import { mainDahReducer } from '../../modules/main/dash/reducers/mainDashReducer'; import { mainDashSaga } from '../../modules/main/dash/sagas/mainDashSaga'; import { menuReducer } from '../../modules/menu/reducers/menuReducer'; @@ -53,6 +56,7 @@ const rootReducer = combineReducers({ navbar, layout, controlMapReducer, + basisFlightDrawReducer, mainDashState: mainDahReducer, messageState: messageReducer, groupState: groupReducer,