diff --git a/src/App.js b/src/App.js index 2cb77b27..535ee4cd 100644 --- a/src/App.js +++ b/src/App.js @@ -1,6 +1,6 @@ // ** Router Import import Router from './router/Router'; -// if (process.env.NODE_ENV === 'production') console.log = function () {}; +if (process.env.NODE_ENV === 'production') console.log = function () {}; const App = props => ; export default App; diff --git a/src/components/map/naver/dron/DronMarker.js b/src/components/map/naver/dron/DronMarker.js index 516a10dd..ad4e9e1a 100644 --- a/src/components/map/naver/dron/DronMarker.js +++ b/src/components/map/naver/dron/DronMarker.js @@ -37,7 +37,7 @@ export const DronMarker = props => { const { joinList } = useSelector(state => state.groupState); const [arrMarkers, setArrMarkers] = useState([]); - // const [arrInfos, setArrInfos] = useState([]); + const [arrInfos, setArrInfos] = useState([]); let naver = props.naver; let map = props.map; @@ -95,6 +95,12 @@ export const DronMarker = props => { ); }, []); + useEffect(() => { + if (arrMarkers.length != 0) { + markerInfo(arrMarkers); + } + }, [arrMarkers]); + useEffect(() => { markerInit(); }, [controlGpList]); @@ -133,28 +139,21 @@ export const DronMarker = props => { //마커를 그린다. const addMarkers = (position, id, controlId, gps) => { const markerOption = {}; - console.log(gps, 'gps'); - console.log(id, 'idntfNum'); if (id.substring(0, 2) === 'PA') { const pal = controlGroupAuthInfo?.find( prev => prev.idntfNum === gps.objectId ); - console.log(pal, '등록된 식별장치'); if (pal) { - console.log('맞음'); markerOption.url = DronIcon; markerOption.type = 'DRONE'; } else { - console.log('아님'); if (user.authId === 'SUPER' || user.authId === 'ADMIN') { console.log('super, admin'); markerOption.url = FlightIcon; markerOption.type = 'FLIGHT'; } else { - console.log('user'); const terminal = joinList?.find(prev => prev.trmnlId === gps.trmnlId); - console.log(terminal, 'trmnlId 일치 있음'); if ( terminal?.groupAuthCd === 'MASTER' || terminal?.groupAuthCd === 'LEADER' @@ -309,6 +308,16 @@ export const DronMarker = props => { const arrData = arrMarkers.filter(item => item.id != marker.id); removeArrMarkers(arrData); + dispatch(objectUnClickAction()); + } + }); + arrInfos.map(info => { + const isExists = controlGpList.find(item => item.objectId === info._id); + if (!isExists) { + removeInfos(info); + const arrData = arrInfos.filter(item => item.id != info._id); + removeArrInfos(arrData); + dispatch(objectUnClickAction()); } }); @@ -324,10 +333,10 @@ export const DronMarker = props => { if (arrMarkers) { const isExists = arrMarkers.find(ele => ele.id === item.objectId); - // const isInfos = arrInfos.find( info => info._id === item.objectId ) + const isInfos = arrInfos.find(info => info._id === item.objectId); if (isExists) { moveMarkers(isExists, position, item); - // moveInfos(isInfos, position); + moveInfos(isInfos, position); } else { addMarkers(position, item.objectId, item.controlId, item); } @@ -447,9 +456,9 @@ export const DronMarker = props => { setArrInfos(arrData); }; - const markerInfo = () => { + const markerInfo = arrMarkers => { arrMarkers.forEach((marker, idx) => { - // infoInit(marker, controlGpList[idx], idx); + infoInit(marker, controlGpList[idx], idx); if (controlGpList.length != 0) { const info = new CustomOverlay({