From 6f8b4a30efc30fd5723bfe339ba8a7d48f48d1ac Mon Sep 17 00:00:00 2001 From: geun <1416geun@naver.com> Date: Thu, 20 Oct 2022 16:00:15 +0900 Subject: [PATCH 1/4] . --- src/assets/css/custom.css | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/assets/css/custom.css b/src/assets/css/custom.css index c5e699c3..d2ce580f 100644 --- a/src/assets/css/custom.css +++ b/src/assets/css/custom.css @@ -819,5 +819,4 @@ background-size: 75% auto; .grid-loading span{display:block;font-weight:500;margin-top:4px;} .pa-input-box{display:flex;} -.pa-input-box input + input {margin-left:8px;} -.pa-input{width:48px;} \ No newline at end of file +.pa-input{width:48px;margin-right:8px;} \ No newline at end of file From 9b9e2c6cef126ad9c2f0f3ab299ffae98a73ce26 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: Thu, 20 Oct 2022 16:00:46 +0900 Subject: [PATCH 2/4] =?UTF-8?q?=EA=B4=80=EC=A0=9C=20prefix=20=ED=95=84?= =?UTF-8?q?=ED=84=B0=20=EB=B0=8F=20=EA=B6=8C=ED=95=9C=EC=9E=91=EC=97=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/map/naver/dron/DronMarker.js | 27 ++++++++++++++++++- src/modules/control/gp/sagas/controlGpSaga.ts | 17 ++++-------- 2 files changed, 31 insertions(+), 13 deletions(-) diff --git a/src/components/map/naver/dron/DronMarker.js b/src/components/map/naver/dron/DronMarker.js index e612fadb..981954ff 100644 --- a/src/components/map/naver/dron/DronMarker.js +++ b/src/components/map/naver/dron/DronMarker.js @@ -23,6 +23,9 @@ export const DronMarker = props => { const { objectId, isClickObject } = useSelector( state => state.controlMapReducer ); + const { controlGroupAuthInfo } = useSelector( + state => state.controlGroupAuthState + ); const [arrMarkers, setArrMarkers] = useState([]); // const [arrInfos, setArrInfos] = useState([]); @@ -113,8 +116,30 @@ export const DronMarker = props => { const addMarkers = (position, id, controlId, gps) => { const iconOption = {}; + if (id.indexOf('PALDRONE') > -1) { + iconOption.url = DronIcon; + // let tt = controlGroupAuthInfo.find(prev => { + // prev.idntfNum === gps.objectId; + // }); + // if (tt) { + // iconOption.url = DronIcon; + // } else { + // iconOption.url = FlightIcon; + // } + // controlGroupAuthInfo.forEach(prev => { + // if (prev.idntfNum === gps.objectId) { + // iconOption.url = DronIcon; + // } else { + // iconOption.url = FlightIcon; + // } + // }); + // iconOption.url = DronIcon; + } else { + iconOption.url = FlightIcon; + } + const homePath = window.HOME_PATH || '.'; - iconOption.url = id.indexOf('PALDRONE') > -1 ? DronIcon : FlightIcon; + // iconOption.url = id.indexOf('PALDRONE') > -1 ? DronIcon : FlightIcon; iconOption.origin = new naver.maps.Point(0, 0); iconOption.anchor = new naver.maps.Point(15, 15); diff --git a/src/modules/control/gp/sagas/controlGpSaga.ts b/src/modules/control/gp/sagas/controlGpSaga.ts index 34ce38a7..d86308b6 100644 --- a/src/modules/control/gp/sagas/controlGpSaga.ts +++ b/src/modules/control/gp/sagas/controlGpSaga.ts @@ -10,6 +10,7 @@ import { controlGpApi } from '../apis/controlGpApi'; import decode from 'jwt-decode'; import { ControlGpData } from '../models/controlGpModel'; import { detail } from '../../../analysis/history/actions/analysisHistoryAction'; +import { useSelector } from 'react-redux'; function* getControlGpSaga( action: ActionType @@ -28,24 +29,15 @@ function* getControlGpSaga( //사용자가 등록한 기체(식별장치 포함)만 관제에서 볼 수 있게 필터처리 if (controlGroupAuthInfo.length > 0) { controlGroupAuthInfo.forEach(auth => { - // if (auth.groupAuthCd === 'CREATER' || auth.groupAuthCd === 'ADMIN') { - if (gpsData.length > 0) return false; - gpsData = data.filter(gps => auth.idntfNum === gps.objectId); - // } - - // 식별장치 마다 user를 판단할 수 없기 때문에 일단 주석 처리 - // if (auth.groupAuthCd === 'USER') { - // if (gpsData.length > 0) return false; - - // gpsData.filter(gps => auth.createUserId && auth.idntfNum === gps.objectId); - // } + // gpsData = data.filter(gps => auth.idntfNum === gps.objectId); }); } yield put( Actions.controlGpAction.success({ + // controlGpList: gpsData controlGpList: data }) ); @@ -54,7 +46,8 @@ function* getControlGpSaga( const controlIds: any = []; data.forEach(gps => { - if (gps.controlId && gps.objectId.indexOf("PALDRONE") > -1) controlIds.push(gps.controlId); + if (gps.controlId && gps.objectId.indexOf('PALDRONE') > -1) + controlIds.push(gps.controlId); }); const param = controlIds.join(','); From 7327afeeba46376d28225cb42dc78c1f6691d61d 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: Thu, 20 Oct 2022 16:17:07 +0900 Subject: [PATCH 3/4] =?UTF-8?q?=EA=B4=80=EC=A0=9C=20prefix=20=ED=95=84?= =?UTF-8?q?=ED=84=B0=20=ED=91=9C=EC=B6=9C=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../map/naver/draw/FlightPlanDraw.js | 12 +++++----- src/components/map/naver/dron/DronMarker.js | 24 ++++--------------- 2 files changed, 11 insertions(+), 25 deletions(-) diff --git a/src/components/map/naver/draw/FlightPlanDraw.js b/src/components/map/naver/draw/FlightPlanDraw.js index 0f558404..758ed6ee 100644 --- a/src/components/map/naver/draw/FlightPlanDraw.js +++ b/src/components/map/naver/draw/FlightPlanDraw.js @@ -31,6 +31,8 @@ export const FlightPlanDraw_init = props => { desc: '' }); + const [radiusCircle, setRadiusCircle] = useState(); + const naver = props.naver; const map = props.map; let mode = props.mode; @@ -58,12 +60,6 @@ export const FlightPlanDraw_init = props => { let distanceMarker = []; - const handleBufferList = () => { - dispatch(Actions.FLIGHT_PLAN_AREA_BUFFER_LIST.request(areaDetail)); - }; - - const [radiusCircle, setRadiusCircle] = useState(); - useEffect(() => { setRadiusCircle(props.dragSize); }, [props.dragSize]); @@ -89,6 +85,10 @@ export const FlightPlanDraw_init = props => { } }, [areaDetail]); + const handleBufferList = () => { + dispatch(Actions.FLIGHT_PLAN_AREA_BUFFER_LIST.request(areaDetail)); + }; + const drawInit = () => { if (mapControl.drawType === 'LINE') { onClickButton('LINE'); diff --git a/src/components/map/naver/dron/DronMarker.js b/src/components/map/naver/dron/DronMarker.js index 981954ff..dcb59288 100644 --- a/src/components/map/naver/dron/DronMarker.js +++ b/src/components/map/naver/dron/DronMarker.js @@ -115,30 +115,16 @@ export const DronMarker = props => { //마커를 그린다. const addMarkers = (position, id, controlId, gps) => { const iconOption = {}; + const homePath = window.HOME_PATH || '.'; if (id.indexOf('PALDRONE') > -1) { - iconOption.url = DronIcon; - // let tt = controlGroupAuthInfo.find(prev => { - // prev.idntfNum === gps.objectId; - // }); - // if (tt) { - // iconOption.url = DronIcon; - // } else { - // iconOption.url = FlightIcon; - // } - // controlGroupAuthInfo.forEach(prev => { - // if (prev.idntfNum === gps.objectId) { - // iconOption.url = DronIcon; - // } else { - // iconOption.url = FlightIcon; - // } - // }); - // iconOption.url = DronIcon; + const pal = controlGroupAuthInfo.find( + prev => prev.idntfNum === gps.objectId + ); + iconOption.url = pal ? DronIcon : FlightIcon; } else { iconOption.url = FlightIcon; } - - const homePath = window.HOME_PATH || '.'; // iconOption.url = id.indexOf('PALDRONE') > -1 ? DronIcon : FlightIcon; iconOption.origin = new naver.maps.Point(0, 0); iconOption.anchor = new naver.maps.Point(15, 15); From b4efd1bf37d6bf18f08f8d3bd45cb316eb74a133 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?scnoh=28=EB=85=B8=EC=8A=B9=EC=B2=A0=29?= Date: Thu, 20 Oct 2022 16:25:49 +0900 Subject: [PATCH 4/4] =?UTF-8?q?=EC=8B=9D=EB=B3=84=EC=9E=A5=EC=B9=98=20pref?= =?UTF-8?q?ix=20=EB=B3=80=EA=B2=BD=EC=9C=BC=EB=A1=9C=20=EC=9D=B8=ED=95=9C?= =?UTF-8?q?=20=EC=9E=91=EC=97=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/map/naver/dron/DronMarker.js | 28 ++++++++++--------- src/modules/control/gp/sagas/controlGpSaga.ts | 7 +++-- 2 files changed, 20 insertions(+), 15 deletions(-) diff --git a/src/components/map/naver/dron/DronMarker.js b/src/components/map/naver/dron/DronMarker.js index dcb59288..84e0e087 100644 --- a/src/components/map/naver/dron/DronMarker.js +++ b/src/components/map/naver/dron/DronMarker.js @@ -83,7 +83,7 @@ export const DronMarker = props => { arrMarkers.map(clickMarker => { if (objectId === clickMarker.controlId && isClickObject) { imageUrl = - clickMarker.id.indexOf('PALDRONE') > -1 + clickMarker.type === 'DRONE' ? DronDetailIcon : FlightDetailIcon; clickMarker.setIcon({ @@ -93,7 +93,7 @@ export const DronMarker = props => { }); } else { imageUrl = - clickMarker.id.indexOf('PALDRONE') > -1 ? DronIcon : FlightIcon; + clickMarker.type === 'DRONE' ? DronIcon : FlightIcon; clickMarker.setIcon({ content: ``, origin: new naver.maps.Point(0, 0), @@ -114,30 +114,32 @@ export const DronMarker = props => { //마커를 그린다. const addMarkers = (position, id, controlId, gps) => { - const iconOption = {}; - const homePath = window.HOME_PATH || '.'; + const markerOption = {}; - if (id.indexOf('PALDRONE') > -1) { + if (id.substring(0, 2) === 'PA') { const pal = controlGroupAuthInfo.find( prev => prev.idntfNum === gps.objectId ); - iconOption.url = pal ? DronIcon : FlightIcon; + markerOption.url = pal ? DronIcon : FlightIcon; + markerOption.type = pal ? 'DRONE' : 'FLIGHT'; } else { - iconOption.url = FlightIcon; + markerOption.url = FlightIcon; + markerOption.type = 'FLIGHT'; } - // iconOption.url = id.indexOf('PALDRONE') > -1 ? DronIcon : FlightIcon; - iconOption.origin = new naver.maps.Point(0, 0); - iconOption.anchor = new naver.maps.Point(15, 15); + + markerOption.origin = new naver.maps.Point(0, 0); + markerOption.anchor = new naver.maps.Point(15, 15); const marker = new naver.maps.Marker({ position: position, title: id, id: id, controlId: controlId, + type: markerOption.type, icon: { - content: ``, - origin: iconOption.origin, - anchor: iconOption.anchor + content: ``, + origin: markerOption.origin, + anchor: markerOption.anchor }, gps: gps }); diff --git a/src/modules/control/gp/sagas/controlGpSaga.ts b/src/modules/control/gp/sagas/controlGpSaga.ts index d86308b6..75d2c696 100644 --- a/src/modules/control/gp/sagas/controlGpSaga.ts +++ b/src/modules/control/gp/sagas/controlGpSaga.ts @@ -46,8 +46,11 @@ function* getControlGpSaga( const controlIds: any = []; data.forEach(gps => { - if (gps.controlId && gps.objectId.indexOf('PALDRONE') > -1) - controlIds.push(gps.controlId); + if (gps.controlId && gps.objectId.substring(0, 2) === 'PA') { + const arcrft = controlGroupAuthInfo.find(auth => auth.idntfNum === gps.objectId); + + if (arcrft) controlIds.push(gps.controlId); + } }); const param = controlIds.join(',');