Browse Source

드론교통관리 비정상 토스트 표출 및 알림음 재생

pull/2/head
junh_eee(이준희) 10 months ago
parent
commit
d4dcf0b1d5
  1. 13
      src/components/map/mapbox/MapBoxMap.js
  2. 13
      src/components/map/mapbox/dron/DronToast.js

13
src/components/map/mapbox/MapBoxMap.js

@ -27,6 +27,7 @@ import flatGimpo from '../../map/geojson/flatGimpoAirportAirArea.json';
import { mapInitAction } from '../../../modules/control/map/actions/controlMapActions'; import { mapInitAction } from '../../../modules/control/map/actions/controlMapActions';
import DronPlan from './dron/DronPlan'; import DronPlan from './dron/DronPlan';
import DronToast from './dron/DronToast';
const uamPosition = { const uamPosition = {
type: 'FeatureCollection', type: 'FeatureCollection',
@ -269,10 +270,10 @@ export default function MapBoxMap() {
const dispatch = useDispatch(); const dispatch = useDispatch();
const mapControl = useSelector(state => state.controlMapReducer); const mapControl = useSelector(state => state.controlMapReducer);
const planGeo = { const [planGeo, setPlanGeo] = useState({
type: 'FeatureCollection', type: 'FeatureCollection',
features: [] features: []
}; });
useLayoutEffect(() => { useLayoutEffect(() => {
mapBoxMapInit(); mapBoxMapInit();
@ -807,10 +808,8 @@ export default function MapBoxMap() {
{isMapLoaded && mapObject ? ( {isMapLoaded && mapObject ? (
<> <>
<DronMarker map={mapObject} mapboxgl={mapboxgl} /> <DronMarker map={mapObject} mapboxgl={mapboxgl} />
<DronPlan map={mapObject} planGeo={planGeo} /> <DronPlan map={mapObject} planGeo={planGeo} setPlanGeo={setPlanGeo} />
<DronToast />
{/* <DronPlan map={mapObject} naver={naver} />
<NewDronPlan map={mapObject} naver={naver} /> */}
{/* <MapBoxMapControl map={mapObject} /> */} {/* <MapBoxMapControl map={mapObject} /> */}
@ -827,8 +826,6 @@ export default function MapBoxMap() {
handleHistoryInit={handleHistoryInit} handleHistoryInit={handleHistoryInit}
/> */} /> */}
{/* <DronToast /> */}
<FeatureAirZone map={mapObject} mapboxgl={mapboxgl} /> <FeatureAirZone map={mapObject} mapboxgl={mapboxgl} />
{/* <NaverMapSearch map={mapObject} naver={naver} /> */} {/* <NaverMapSearch map={mapObject} naver={naver} /> */}
{/* <SensorZone map={mapObject} naver={naver} /> */} {/* <SensorZone map={mapObject} naver={naver} /> */}

13
src/components/map/mapbox/dron/DronToast.js

@ -9,6 +9,8 @@ import {
controlGpDtlAction, controlGpDtlAction,
controlGpFlightPlanAction controlGpFlightPlanAction
} from '../../../../modules/control/gp'; } from '../../../../modules/control/gp';
import Avatar from '../../../../@core/components/avatar';
import { Info } from 'react-feather';
export default function DronToast() { export default function DronToast() {
const dispatch = useDispatch(); const dispatch = useDispatch();
@ -25,7 +27,7 @@ export default function DronToast() {
if (!toastId) { if (!toastId) {
for (let i = 0; i < controlGpArcrftWarnList.length; i++) { for (let i = 0; i < controlGpArcrftWarnList.length; i++) {
if (controlGpArcrftWarnList[i].controlWarnCd) { if (controlGpArcrftWarnList[i].controlWarnCd) {
const id = toast.info( const id = toast.warning(
toastRender( toastRender(
`${controlGpArcrftWarnList[i].idntfNum} 비정상 상황 알림`, `${controlGpArcrftWarnList[i].idntfNum} 비정상 상황 알림`,
`경로 상에 비행 구역을 이탈했습니다.` `경로 상에 비행 구역을 이탈했습니다.`
@ -73,8 +75,11 @@ export default function DronToast() {
<Fragment> <Fragment>
<div className='toastify-header'> <div className='toastify-header'>
<div className='title-wrapper'> <div className='title-wrapper'>
<Avatar size='sm' color='info' icon={<Info size={10} />} /> <Avatar size='sm' color='warning' icon={<Info size={10} />} />
<h6 className='text-info ml-50 mb-0' style={{ fontSize: 'small' }}> <h6
className='text-warning ml-50 mb-0'
style={{ fontSize: 'small' }}
>
{title} {title}
</h6> </h6>
</div> </div>
@ -88,6 +93,4 @@ export default function DronToast() {
}; };
return null; return null;
return <div>DronToast</div>;
} }

Loading…
Cancel
Save