|
|
@ -7,7 +7,8 @@ import DroneFlightSchedule from '../../../components/dashboard/DroneFlightSchedu |
|
|
|
import { DashboardGroupList } from '../../../components/dashboard/DashboardGroupList'; |
|
|
|
import { DashboardGroupList } from '../../../components/dashboard/DashboardGroupList'; |
|
|
|
import { DashboardStcsArea } from '../../../components/dashboard/DashboardStcsArea'; |
|
|
|
import { DashboardStcsArea } from '../../../components/dashboard/DashboardStcsArea'; |
|
|
|
import { DashboardStcsDay } from '../../../components/dashboard/DashboardStcsDay'; |
|
|
|
import { DashboardStcsDay } from '../../../components/dashboard/DashboardStcsDay'; |
|
|
|
import * as Actions from '../../../modules/main/dash/actions/mainDashAction'; |
|
|
|
import * as DashActions from '../../../modules/main/dash/actions/mainDashAction'; |
|
|
|
|
|
|
|
import * as GroupActions from '../../../modules/basis/group/actions/basisGroupAction'; |
|
|
|
import { MessageErrorModal } from '../../../components/message/MessageErrorModal'; |
|
|
|
import { MessageErrorModal } from '../../../components/message/MessageErrorModal'; |
|
|
|
import '@styles/react/libs/flatpickr/flatpickr.scss'; |
|
|
|
import '@styles/react/libs/flatpickr/flatpickr.scss'; |
|
|
|
import '@styles/react/libs/tables/react-dataTable-component.scss'; |
|
|
|
import '@styles/react/libs/tables/react-dataTable-component.scss'; |
|
|
@ -27,75 +28,66 @@ export const MainDashContainer = () => { |
|
|
|
const { stcsDayList, stcsAreaList } = useSelector( |
|
|
|
const { stcsDayList, stcsAreaList } = useSelector( |
|
|
|
state => state.mainDashState |
|
|
|
state => state.mainDashState |
|
|
|
); |
|
|
|
); |
|
|
|
const { user } = useSelector(state => state.authState, shallowEqual); |
|
|
|
const { user } = useSelector(state => state.authState); |
|
|
|
|
|
|
|
|
|
|
|
const [dayStartDate, setDayStartDate] = useState(new Date()); |
|
|
|
const [dayStartDate, setDayStartDate] = useState(new Date()); |
|
|
|
const [areaStartDate, setAreaStartDate] = useState(new Date()); |
|
|
|
const [areaStartDate, setAreaStartDate] = useState(new Date()); |
|
|
|
const history = useHistory(); |
|
|
|
const history = useHistory(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
useEffect(() => { |
|
|
|
|
|
|
|
// 일일 비행계획 현황, 일일 비행건수 현황, 일일 비정상상황 현황 Promise.all 처리
|
|
|
|
|
|
|
|
dispatch(DashActions.DASHBOARD_DATA.request()); |
|
|
|
|
|
|
|
handlerStcsDaySearch(dayStartDate); |
|
|
|
|
|
|
|
handlerStcsAreaSearch(areaStartDate); |
|
|
|
|
|
|
|
}, []); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
useEffect(() => { |
|
|
|
|
|
|
|
handlerDronOperationList(user.cptAuthCode); |
|
|
|
|
|
|
|
}, [user]); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 일 별 비행횟수 통계 날짜 리스트 dispatch
|
|
|
|
const handlerStcsDaySearch = date => { |
|
|
|
const handlerStcsDaySearch = date => { |
|
|
|
dispatch( |
|
|
|
dispatch( |
|
|
|
Actions.STCS_DAY.request({ |
|
|
|
DashActions.STCS_DAY.request({ |
|
|
|
yyyymm: moment(date).format('YYYY-MM') |
|
|
|
yyyymm: moment(date).format('YYYY-MM') |
|
|
|
}) |
|
|
|
}) |
|
|
|
); |
|
|
|
); |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// top5 지역 별 비행횟수 통계 리스트 dispatch
|
|
|
|
const handlerStcsAreaSearch = date => { |
|
|
|
const handlerStcsAreaSearch = date => { |
|
|
|
dispatch( |
|
|
|
dispatch( |
|
|
|
Actions.STCS_AREA.request({ |
|
|
|
DashActions.STCS_AREA.request({ |
|
|
|
yyyymm: moment(date).format('YYYY-MM') |
|
|
|
yyyymm: moment(date).format('YYYY-MM') |
|
|
|
}) |
|
|
|
}) |
|
|
|
); |
|
|
|
); |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
const handlerGroupSearch = () => { |
|
|
|
// 드론 별 비행운항 목록 리스트 dispatch
|
|
|
|
dispatch( |
|
|
|
const handlerDronOperationList = data => { |
|
|
|
Actions.GROUP_LIST.request({ |
|
|
|
dispatch(DashActions.DRON_OPERRATION_LIST.request(data)); |
|
|
|
cstmrSno: user?.cstmrSno |
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
); |
|
|
|
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const handlerDronSearch = () => { |
|
|
|
|
|
|
|
dispatch( |
|
|
|
|
|
|
|
Actions.DRON_LIST.request({ |
|
|
|
|
|
|
|
cstmrSno: user?.cstmrSno |
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
); |
|
|
|
|
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 일 별 비행횟수 통계 날짜 변경 핸들러
|
|
|
|
const handlerStcsDayParam = date => { |
|
|
|
const handlerStcsDayParam = date => { |
|
|
|
setDayStartDate(date); |
|
|
|
setDayStartDate(date); |
|
|
|
handlerStcsDaySearch(date); |
|
|
|
handlerStcsDaySearch(date); |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// top5 지역 별 비행횟수 통계 날짜 변경 핸들러
|
|
|
|
const handlerStcsAreaParam = date => { |
|
|
|
const handlerStcsAreaParam = date => { |
|
|
|
setAreaStartDate(date); |
|
|
|
setAreaStartDate(date); |
|
|
|
handlerStcsAreaSearch(date); |
|
|
|
handlerStcsAreaSearch(date); |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
const handlerDronDetail = () => { |
|
|
|
// 드론 별 비행운항 목록 그룹 체인지 핸들러
|
|
|
|
history.push('/basis/dron/index'); |
|
|
|
const handlerDronOperationChange = data => { |
|
|
|
|
|
|
|
handlerDronOperationList(data); |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
const handlerGroupDetail = useCallback(val => { |
|
|
|
const handlerMovePage = url => { |
|
|
|
history.push('/basis/group/index'); |
|
|
|
|
|
|
|
}, []); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const movePage = url => { |
|
|
|
|
|
|
|
history.push(url); |
|
|
|
history.push(url); |
|
|
|
}; |
|
|
|
}; |
|
|
|
useEffect(() => { |
|
|
|
|
|
|
|
dispatch( |
|
|
|
|
|
|
|
Actions.DASHBOARD_DATA.request({ |
|
|
|
|
|
|
|
serviceType: 'all' |
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
); |
|
|
|
|
|
|
|
handlerStcsDaySearch(dayStartDate); |
|
|
|
|
|
|
|
handlerStcsAreaSearch(areaStartDate); |
|
|
|
|
|
|
|
// handlerGroupSearch();
|
|
|
|
|
|
|
|
// handlerDronSearch();
|
|
|
|
|
|
|
|
}, []); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return ( |
|
|
|
return ( |
|
|
|
<div className='main-dashboard'> |
|
|
|
<div className='main-dashboard'> |
|
|
@ -103,21 +95,21 @@ export const MainDashContainer = () => { |
|
|
|
<Row> |
|
|
|
<Row> |
|
|
|
<Col md={4}> |
|
|
|
<Col md={4}> |
|
|
|
<DashboardGroupList |
|
|
|
<DashboardGroupList |
|
|
|
pageMove={handlerGroupDetail} |
|
|
|
handlerMovePage={handlerMovePage} |
|
|
|
title='dailyFlightPlan' |
|
|
|
title='dailyFlightPlan' |
|
|
|
data={dashboardData?.dailyFlightPlan || []} |
|
|
|
data={dashboardData?.dailyFlightPlan || []} |
|
|
|
/> |
|
|
|
/> |
|
|
|
</Col> |
|
|
|
</Col> |
|
|
|
<Col md={4}> |
|
|
|
<Col md={4}> |
|
|
|
<DashboardGroupList |
|
|
|
<DashboardGroupList |
|
|
|
pageMove={handlerGroupDetail} |
|
|
|
handlerMovePage={handlerMovePage} |
|
|
|
title='dailyFlightCount' |
|
|
|
title='dailyFlightCount' |
|
|
|
data={dashboardData?.dailyFlightCount || []} |
|
|
|
data={dashboardData?.dailyFlightCount || []} |
|
|
|
/> |
|
|
|
/> |
|
|
|
</Col> |
|
|
|
</Col> |
|
|
|
<Col md={4}> |
|
|
|
<Col md={4}> |
|
|
|
<DashboardGroupList |
|
|
|
<DashboardGroupList |
|
|
|
pageMove={handlerGroupDetail} |
|
|
|
handlerMovePage={handlerMovePage} |
|
|
|
title='dailyFlightWarn' |
|
|
|
title='dailyFlightWarn' |
|
|
|
data={dashboardData?.dailyFlightWarn || []} |
|
|
|
data={dashboardData?.dailyFlightWarn || []} |
|
|
|
/> |
|
|
|
/> |
|
|
@ -128,8 +120,9 @@ export const MainDashContainer = () => { |
|
|
|
<Row> |
|
|
|
<Row> |
|
|
|
<Col lg={8} md={12} className='dashboard-chart'> |
|
|
|
<Col lg={8} md={12} className='dashboard-chart'> |
|
|
|
<DroneFlightSchedule |
|
|
|
<DroneFlightSchedule |
|
|
|
pageMove={handlerGroupDetail} |
|
|
|
handlerMovePage={handlerMovePage} |
|
|
|
data={dashboardData?.dronOperationList || []} |
|
|
|
handlerDronOperationChange={handlerDronOperationChange} |
|
|
|
|
|
|
|
user={user} |
|
|
|
/> |
|
|
|
/> |
|
|
|
</Col> |
|
|
|
</Col> |
|
|
|
|
|
|
|
|
|
|
@ -153,6 +146,7 @@ export const MainDashContainer = () => { |
|
|
|
startDate={dayStartDate} |
|
|
|
startDate={dayStartDate} |
|
|
|
setStartDate={handlerStcsDayParam} |
|
|
|
setStartDate={handlerStcsDayParam} |
|
|
|
data={stcsDayList || []} |
|
|
|
data={stcsDayList || []} |
|
|
|
|
|
|
|
handlerMovePage={handlerMovePage} |
|
|
|
/> |
|
|
|
/> |
|
|
|
</Col> |
|
|
|
</Col> |
|
|
|
<Col lg={4} md={12} className='dashboard-chart'> |
|
|
|
<Col lg={4} md={12} className='dashboard-chart'> |
|
|
@ -164,23 +158,11 @@ export const MainDashContainer = () => { |
|
|
|
setStartDate={handlerStcsAreaParam} |
|
|
|
setStartDate={handlerStcsAreaParam} |
|
|
|
data={stcsAreaList || []} |
|
|
|
data={stcsAreaList || []} |
|
|
|
title='flightsRegion' |
|
|
|
title='flightsRegion' |
|
|
|
|
|
|
|
handlerMovePage={handlerMovePage} |
|
|
|
/> |
|
|
|
/> |
|
|
|
</Col> |
|
|
|
</Col> |
|
|
|
</Row> |
|
|
|
</Row> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
{/* <div className='dashboard-section'> |
|
|
|
|
|
|
|
<Row> |
|
|
|
|
|
|
|
<Col md={6}> |
|
|
|
|
|
|
|
<DashboardGroupList |
|
|
|
|
|
|
|
data={groupList} |
|
|
|
|
|
|
|
pageMove={handlerGroupDetail} |
|
|
|
|
|
|
|
/> |
|
|
|
|
|
|
|
</Col> |
|
|
|
|
|
|
|
<Col md={6}> |
|
|
|
|
|
|
|
<DashboardDronList data={dronList} pageMove={handlerDronDetail} /> |
|
|
|
|
|
|
|
</Col> |
|
|
|
|
|
|
|
</Row> |
|
|
|
|
|
|
|
</div> */} |
|
|
|
|
|
|
|
<MessageErrorModal /> |
|
|
|
<MessageErrorModal /> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
); |
|
|
|
); |
|
|
|