|
|
|
@ -12,7 +12,10 @@ import {
|
|
|
|
|
GET_WGHT_TYPE_CD |
|
|
|
|
} from '../../../utility/CondeUtil'; |
|
|
|
|
import dfsxyconv from '../../../utility/dfsxyconv'; |
|
|
|
|
import { controlGpLogAction, controlweatherAction } from '../../../modules/control/gp'; |
|
|
|
|
import { |
|
|
|
|
controlGpLogAction, |
|
|
|
|
controlweatherAction |
|
|
|
|
} from '../../../modules/control/gp'; |
|
|
|
|
import ControlAlarmDetail from '../alarm/ControlAlarmDetail'; |
|
|
|
|
import axios from '../../../modules/utils/customAxiosUtil'; |
|
|
|
|
import { |
|
|
|
@ -36,7 +39,6 @@ const ControlReportDetail = props => {
|
|
|
|
|
//const { controlWheather } = useSelector(state => state.ControlGpWeatherState);
|
|
|
|
|
const { controlGpWarnLog } = useSelector(state => state.controlGpLogState); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function a() { |
|
|
|
|
if (controlDetail) { |
|
|
|
|
let wheatherDetail = controlDetail.items.item; |
|
|
|
@ -47,8 +49,7 @@ const ControlReportDetail = props => {
|
|
|
|
|
return <CloudSnow />; |
|
|
|
|
} else if (skyDetail == 0 || wheatherDetail[5].fcstValue == 1) { |
|
|
|
|
return <Sun />; |
|
|
|
|
} else |
|
|
|
|
return <Cloud />; |
|
|
|
|
} else return <Cloud />; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
// console.log("time", time);
|
|
|
|
@ -122,7 +123,6 @@ const ControlReportDetail = props => {
|
|
|
|
|
|
|
|
|
|
// }, [controlGpDetail])
|
|
|
|
|
useEffect(() => { |
|
|
|
|
|
|
|
|
|
if (historyModal) { |
|
|
|
|
if (controlGpDetail) { |
|
|
|
|
dispatch(controlGpLogAction.request({ id: controlGpDetail.controlId })); |
|
|
|
@ -238,10 +238,11 @@ const ControlReportDetail = props => {
|
|
|
|
|
<dt> |
|
|
|
|
<div className='list-left-txt'>시작시간</div> |
|
|
|
|
<div className='list-right-txt'> |
|
|
|
|
{moment( |
|
|
|
|
controlDetail?.cntrlStDt, |
|
|
|
|
'YYYYMMDDHHmmss' |
|
|
|
|
).format('MM-DD HH:mm:ss')} |
|
|
|
|
{controlDetail?.cntrlStDt |
|
|
|
|
? moment(controlDetail?.cntrlStDt, 'YYYYMMDDHHmmss').format( |
|
|
|
|
'MM-DD HH:mm:ss' |
|
|
|
|
) |
|
|
|
|
: '-'} |
|
|
|
|
</div> |
|
|
|
|
</dt> |
|
|
|
|
{/* <dt> |
|
|
|
@ -253,19 +254,25 @@ const ControlReportDetail = props => {
|
|
|
|
|
<dt> |
|
|
|
|
<div className='list-left-txt'>속도</div> |
|
|
|
|
<div className='list-right-txt'> |
|
|
|
|
{controlGpDetail?.speed} {controlGpDetail?.speedType} |
|
|
|
|
{controlGpDetail?.speed && controlGpDetail?.speedType |
|
|
|
|
? `${controlGpDetail?.speed} ${controlGpDetail?.speedType}` |
|
|
|
|
: '-'} |
|
|
|
|
</div> |
|
|
|
|
</dt> |
|
|
|
|
<dt> |
|
|
|
|
<div className='list-left-txt'>고도</div> |
|
|
|
|
<div className='list-right-txt'> |
|
|
|
|
{controlGpDetail?.elev} {controlGpDetail?.elevType} |
|
|
|
|
{controlGpDetail?.elev && controlGpDetail?.elevType |
|
|
|
|
? `${controlGpDetail?.elev} ${controlGpDetail?.elevType}` |
|
|
|
|
: '-'} |
|
|
|
|
</div> |
|
|
|
|
</dt> |
|
|
|
|
<dt> |
|
|
|
|
<div className='list-left-txt'>좌표(위도/경도)</div> |
|
|
|
|
<div className='list-right-txt'> |
|
|
|
|
{controlGpDetail?.lat} / {controlGpDetail?.lng} |
|
|
|
|
{controlGpDetail?.lat && controlGpDetail?.lng |
|
|
|
|
? `${controlGpDetail?.lat} / ${controlGpDetail?.lng}` |
|
|
|
|
: '-'} |
|
|
|
|
</div> |
|
|
|
|
</dt> |
|
|
|
|
{/* <dt> |
|
|
|
@ -278,7 +285,7 @@ const ControlReportDetail = props => {
|
|
|
|
|
<dt> |
|
|
|
|
<div className='list-left-txt'>헤딩 방위각</div> |
|
|
|
|
<div className='list-right-txt'> |
|
|
|
|
{controlGpDetail?.heading} |
|
|
|
|
{nullMessage(controlGpDetail?.heading)} |
|
|
|
|
</div> |
|
|
|
|
</dt> |
|
|
|
|
{/* <dt> |
|
|
|
@ -290,11 +297,12 @@ const ControlReportDetail = props => {
|
|
|
|
|
<dt> |
|
|
|
|
<div className='list-left-txt'>위치정보 수신 시간</div> |
|
|
|
|
<div className='list-right-txt'> |
|
|
|
|
{' '} |
|
|
|
|
{moment( |
|
|
|
|
{controlGpDetail?.serverRcvDt |
|
|
|
|
? moment( |
|
|
|
|
controlGpDetail?.serverRcvDt, |
|
|
|
|
'YYYYMMDDHHmmss' |
|
|
|
|
).format('MM-DD HH:mm:ss')} |
|
|
|
|
).format('MM-DD HH:mm:ss') |
|
|
|
|
: '-'} |
|
|
|
|
</div> |
|
|
|
|
</dt> |
|
|
|
|
</dl> |
|
|
|
@ -315,7 +323,6 @@ const ControlReportDetail = props => {
|
|
|
|
|
<dt> |
|
|
|
|
<div className='list-left-txt'>담당자 이름</div> |
|
|
|
|
<div className='list-right-txt'> |
|
|
|
|
{' '} |
|
|
|
|
{nullMessage(controlDetail?.ownerNm)} |
|
|
|
|
</div> |
|
|
|
|
</dt> |
|
|
|
@ -330,15 +337,18 @@ const ControlReportDetail = props => {
|
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
<div className='layer-content'> |
|
|
|
|
<div className="layer-ti"> |
|
|
|
|
<div className='layer-ti'> |
|
|
|
|
<h4>날씨 정보</h4> |
|
|
|
|
</div> |
|
|
|
|
<div className="layer-content-box"> |
|
|
|
|
<div className="layer-content-info"> |
|
|
|
|
<div className="layer-weather-table"> |
|
|
|
|
<div className="layer-weather-address"> |
|
|
|
|
<div className='layer-content-box'> |
|
|
|
|
<div className='layer-content-info'> |
|
|
|
|
<div className='layer-weather-table'> |
|
|
|
|
<div className='layer-weather-address'> |
|
|
|
|
현재위치의 날씨 정보입니다. |
|
|
|
|
<span><Compass size={20} />{controlDetail?.stAreaNm}</span> |
|
|
|
|
<span> |
|
|
|
|
<Compass size={20} /> |
|
|
|
|
{controlDetail?.stAreaNm} |
|
|
|
|
</span> |
|
|
|
|
</div> |
|
|
|
|
<Table responsive> |
|
|
|
|
<thead> |
|
|
|
@ -352,10 +362,18 @@ const ControlReportDetail = props => {
|
|
|
|
|
</thead> |
|
|
|
|
<tbody> |
|
|
|
|
<tr> |
|
|
|
|
<td>{controlDetail?.items.item[12].fcstTime.substring(0, 2)}시</td> |
|
|
|
|
<td> |
|
|
|
|
{controlDetail?.items.item[12].fcstTime.substring(0, 2)}시 |
|
|
|
|
</td> |
|
|
|
|
<td>{a()}</td> |
|
|
|
|
<td>{controlDetail?.items.item[12].fcstValue}℃</td> |
|
|
|
|
<td><Navigation2 style={{ transform: `rotate(${controlDetail?.items.item[3].fcstValue}deg)` }} /></td> |
|
|
|
|
<td> |
|
|
|
|
<Navigation2 |
|
|
|
|
style={{ |
|
|
|
|
transform: `rotate(${controlDetail?.items.item[3].fcstValue}deg)` |
|
|
|
|
}} |
|
|
|
|
/> |
|
|
|
|
</td> |
|
|
|
|
<td>{controlDetail?.items.item[4].fcstValue}m/s</td> |
|
|
|
|
</tr> |
|
|
|
|
</tbody> |
|
|
|
|