|
|
@ -1,5 +1,5 @@ |
|
|
|
import moment from 'moment'; |
|
|
|
import dayjs from 'dayjs'; |
|
|
|
import { useEffect, useState, useCallback } from 'react'; |
|
|
|
import { useEffect, useState } from 'react'; |
|
|
|
import { useDispatch, useSelector, shallowEqual } from 'react-redux'; |
|
|
|
import { useDispatch, useSelector, shallowEqual } from 'react-redux'; |
|
|
|
import { Link } from 'react-router-dom'; |
|
|
|
import { Link } from 'react-router-dom'; |
|
|
|
import { AnalysisHistoryGrid } from '../../../components/analysis/history/AnalysisHistoryGrid'; |
|
|
|
import { AnalysisHistoryGrid } from '../../../components/analysis/history/AnalysisHistoryGrid'; |
|
|
@ -58,9 +58,6 @@ export const AnalysisHistoryContainer = props => { |
|
|
|
// user: 로그인한 user 정보
|
|
|
|
// user: 로그인한 user 정보
|
|
|
|
const { user } = useSelector(state => state.authState, shallowEqual); |
|
|
|
const { user } = useSelector(state => state.authState, shallowEqual); |
|
|
|
|
|
|
|
|
|
|
|
// const [isClick, setIsClick] = useState(-1);
|
|
|
|
|
|
|
|
// const [dateType, setDateType] = useState(1);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
* Modal 초기값 state |
|
|
|
* Modal 초기값 state |
|
|
|
*/ |
|
|
|
*/ |
|
|
@ -76,11 +73,11 @@ export const AnalysisHistoryContainer = props => { |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
const [params, setParams] = useState({ |
|
|
|
const [params, setParams] = useState({ |
|
|
|
stDate: selectGroup.stDate |
|
|
|
stDate: selectGroup.stDate |
|
|
|
? moment(selectGroup.stDate).format('YYYY-MM-DD') |
|
|
|
? dayjs(selectGroup.stDate).format('YYYY-MM-DD') |
|
|
|
: moment().subtract(7, 'day').format('YYYY-MM-DD'), |
|
|
|
: dayjs().subtract(7, 'day').format('YYYY-MM-DD'), |
|
|
|
endDate: selectGroup.endDate |
|
|
|
endDate: selectGroup.endDate |
|
|
|
? moment(selectGroup.endDate).format('YYYY-MM-DD') |
|
|
|
? dayjs(selectGroup.endDate).format('YYYY-MM-DD') |
|
|
|
: moment().subtract(0, 'day').format('YYYY-MM-DD'), |
|
|
|
: dayjs().subtract(0, 'day').format('YYYY-MM-DD'), |
|
|
|
search1: selectGroup.search1 ? selectGroup.search1 : '', |
|
|
|
search1: selectGroup.search1 ? selectGroup.search1 : '', |
|
|
|
groupId: selectGroup.groupId ? selectGroup.groupId : '' |
|
|
|
groupId: selectGroup.groupId ? selectGroup.groupId : '' |
|
|
|
}); |
|
|
|
}); |
|
|
@ -109,17 +106,12 @@ export const AnalysisHistoryContainer = props => { |
|
|
|
|
|
|
|
|
|
|
|
const handleGroupSelect = ({ groupId }) => { |
|
|
|
const handleGroupSelect = ({ groupId }) => { |
|
|
|
// 권한 상관 없이 모두 조회 가능
|
|
|
|
// 권한 상관 없이 모두 조회 가능
|
|
|
|
// const param = params;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// param.groupId = groupId;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
dispatch(FlightAction.FLIGHT_PLAN_GROUP_SELECT({ groupId: groupId })); |
|
|
|
dispatch(FlightAction.FLIGHT_PLAN_GROUP_SELECT({ groupId: groupId })); |
|
|
|
|
|
|
|
|
|
|
|
// groupId sessionStorage에 보관 (1 브라우저 1 tab에만 유효)
|
|
|
|
// groupId sessionStorage에 보관 (1 브라우저 1 tab에만 유효)
|
|
|
|
sessionStorage.setItem('groupId', groupId); |
|
|
|
sessionStorage.setItem('groupId', groupId); |
|
|
|
sessionStorage.setItem('cstmrSno', user.cstmrSno); |
|
|
|
sessionStorage.setItem('cstmrSno', user.cstmrSno); |
|
|
|
|
|
|
|
|
|
|
|
// setIsClick(7);
|
|
|
|
|
|
|
|
setParams(prevState => ({ ...prevState, groupId })); |
|
|
|
setParams(prevState => ({ ...prevState, groupId })); |
|
|
|
dispatch(Actions.LIST_INITAL()); |
|
|
|
dispatch(Actions.LIST_INITAL()); |
|
|
|
dispatch( |
|
|
|
dispatch( |
|
|
@ -139,7 +131,6 @@ export const AnalysisHistoryContainer = props => { |
|
|
|
search1: '' |
|
|
|
search1: '' |
|
|
|
}) |
|
|
|
}) |
|
|
|
); |
|
|
|
); |
|
|
|
// setIsClick(0);
|
|
|
|
|
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
const titleName = '비행이력 현황'; |
|
|
|
const titleName = '비행이력 현황'; |
|
|
@ -159,7 +150,7 @@ export const AnalysisHistoryContainer = props => { |
|
|
|
minWidth: '102px', |
|
|
|
minWidth: '102px', |
|
|
|
// sortable: true,
|
|
|
|
// sortable: true,
|
|
|
|
cell: row => { |
|
|
|
cell: row => { |
|
|
|
return <div>{moment(row?.cntrlStDt).format('YYYY년 MM월DD일')}</div>; |
|
|
|
return <div>{dayjs(row?.cntrlStDt).format('YYYY년 MM월 DD일')}</div>; |
|
|
|
} |
|
|
|
} |
|
|
|
}, |
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
@ -187,57 +178,18 @@ export const AnalysisHistoryContainer = props => { |
|
|
|
minWidth: '102px', |
|
|
|
minWidth: '102px', |
|
|
|
sortable: true, |
|
|
|
sortable: true, |
|
|
|
cell: row => { |
|
|
|
cell: row => { |
|
|
|
return <div>{moment(row?.cntrlStDt).format('DD일 HH:mm:ss')}</div>; |
|
|
|
return <div>{dayjs(row?.cntrlStDt).format('DD일 HH:mm:ss')}</div>; |
|
|
|
} |
|
|
|
} |
|
|
|
}, |
|
|
|
}, |
|
|
|
// {
|
|
|
|
|
|
|
|
// name: '종료위치',
|
|
|
|
|
|
|
|
// selector: 'cntrlStDate',
|
|
|
|
|
|
|
|
// minWidth: '102px',
|
|
|
|
|
|
|
|
// sortable: true,
|
|
|
|
|
|
|
|
// cell: row => {
|
|
|
|
|
|
|
|
// return <div>{row.endArea}</div>;
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
// },
|
|
|
|
|
|
|
|
{ |
|
|
|
{ |
|
|
|
name: '종료시간', |
|
|
|
name: '종료시간', |
|
|
|
selector: row => row.cntrlEndDt, |
|
|
|
selector: row => row.cntrlEndDt, |
|
|
|
minWidth: '102px', |
|
|
|
minWidth: '102px', |
|
|
|
sortable: true, |
|
|
|
sortable: true, |
|
|
|
cell: row => { |
|
|
|
cell: row => { |
|
|
|
return <div>{moment(row?.cntrlEndDt).format('DD일 HH:mm:ss')}</div>; |
|
|
|
return <div>{dayjs(row?.cntrlEndDt).format('DD일 HH:mm:ss')}</div>; |
|
|
|
} |
|
|
|
} |
|
|
|
}, |
|
|
|
}, |
|
|
|
// ,
|
|
|
|
|
|
|
|
// {
|
|
|
|
|
|
|
|
// name: '거리',
|
|
|
|
|
|
|
|
// selector: 'cntrlStDate',
|
|
|
|
|
|
|
|
// minWidth: '102px',
|
|
|
|
|
|
|
|
// sortable: true,
|
|
|
|
|
|
|
|
// cell: row => {
|
|
|
|
|
|
|
|
// return (
|
|
|
|
|
|
|
|
// <div>
|
|
|
|
|
|
|
|
// {' '}
|
|
|
|
|
|
|
|
// {row.ttlDstnc}
|
|
|
|
|
|
|
|
// {row.ttlDstncType}
|
|
|
|
|
|
|
|
// </div>
|
|
|
|
|
|
|
|
// );
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
// },
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// {
|
|
|
|
|
|
|
|
// name: '시간',
|
|
|
|
|
|
|
|
// selector: 'cntrlStDate',
|
|
|
|
|
|
|
|
// minWidth: '102px',
|
|
|
|
|
|
|
|
// sortable: true,
|
|
|
|
|
|
|
|
// cell: row => {
|
|
|
|
|
|
|
|
// return (
|
|
|
|
|
|
|
|
// <div>
|
|
|
|
|
|
|
|
// {row.ttlTime} {row.ttlTimeType}
|
|
|
|
|
|
|
|
// </div>
|
|
|
|
|
|
|
|
// );
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
// },
|
|
|
|
|
|
|
|
{ |
|
|
|
{ |
|
|
|
name: '이력보기', |
|
|
|
name: '이력보기', |
|
|
|
selector: row => row.cntrlStDate, |
|
|
|
selector: row => row.cntrlStDate, |
|
|
@ -268,7 +220,6 @@ export const AnalysisHistoryContainer = props => { |
|
|
|
color: 'modal-danger' |
|
|
|
color: 'modal-danger' |
|
|
|
}); |
|
|
|
}); |
|
|
|
} else { |
|
|
|
} else { |
|
|
|
// dispatch(Actions.LIST_INITAL());
|
|
|
|
|
|
|
|
dispatch(FlightAction.FLIGHT_PLAN_GROUP_SELECT({ ...params })); |
|
|
|
dispatch(FlightAction.FLIGHT_PLAN_GROUP_SELECT({ ...params })); |
|
|
|
dispatch(Actions.list.request({ searchParams: params, page: 1 })); |
|
|
|
dispatch(Actions.list.request({ searchParams: params, page: 1 })); |
|
|
|
} |
|
|
|
} |
|
|
@ -283,22 +234,19 @@ export const AnalysisHistoryContainer = props => { |
|
|
|
if (val.length == 2) { |
|
|
|
if (val.length == 2) { |
|
|
|
setParams({ |
|
|
|
setParams({ |
|
|
|
...params, |
|
|
|
...params, |
|
|
|
stDate: moment(val[0]).format('YYYY-MM-DD'), |
|
|
|
stDate: dayjs(val[0]).format('YYYY-MM-DD'), |
|
|
|
endDate: moment(val[1]).format('YYYY-MM-DD') |
|
|
|
endDate: dayjs(val[1]).format('YYYY-MM-DD') |
|
|
|
}); |
|
|
|
}); |
|
|
|
// setIsClick(-1);
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
// 최근 1일, 최근 7일... 탭 click handler
|
|
|
|
// 최근 1일, 최근 7일... 탭 click handler
|
|
|
|
const handlerClickDate = val => { |
|
|
|
const handlerClickDate = val => { |
|
|
|
// setDateType(val);
|
|
|
|
|
|
|
|
// setIsClick(val);
|
|
|
|
|
|
|
|
setParams(prev => ({ |
|
|
|
setParams(prev => ({ |
|
|
|
...prev, |
|
|
|
...prev, |
|
|
|
stDate: moment().subtract(val, 'day').format('YYYY-MM-DD'), |
|
|
|
stDate: dayjs().subtract(val, 'day').format('YYYY-MM-DD'), |
|
|
|
endDate: moment().subtract(0, 'day').format('YYYY-MM-DD') |
|
|
|
endDate: dayjs().subtract(0, 'day').format('YYYY-MM-DD') |
|
|
|
})); |
|
|
|
})); |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
@ -309,19 +257,8 @@ export const AnalysisHistoryContainer = props => { |
|
|
|
|
|
|
|
|
|
|
|
return ( |
|
|
|
return ( |
|
|
|
<CustomMainLayout title={titleName}> |
|
|
|
<CustomMainLayout title={titleName}> |
|
|
|
{/* <div className='pal-card-box'> */} |
|
|
|
|
|
|
|
<div className='pal-card-box'> |
|
|
|
<div className='pal-card-box'> |
|
|
|
<Row> |
|
|
|
<Row> |
|
|
|
{/* <Col sm='4'> |
|
|
|
|
|
|
|
<FlightPlanGroupGrid |
|
|
|
|
|
|
|
data={joinList} |
|
|
|
|
|
|
|
count={joinListCount} |
|
|
|
|
|
|
|
selectGroup={selectGroup} |
|
|
|
|
|
|
|
handleGroupSelect={handleGroupSelect} |
|
|
|
|
|
|
|
handlerGroupCancel={handlerGroupCancel} |
|
|
|
|
|
|
|
/> |
|
|
|
|
|
|
|
</Col> */} |
|
|
|
|
|
|
|
{/* <Col sm='4'> */} |
|
|
|
|
|
|
|
{/* 그룹목록 */} |
|
|
|
{/* 그룹목록 */} |
|
|
|
<Col sm='12' lg='12'> |
|
|
|
<Col sm='12' lg='12'> |
|
|
|
{user ? ( |
|
|
|
{user ? ( |
|
|
@ -355,14 +292,11 @@ export const AnalysisHistoryContainer = props => { |
|
|
|
params={params} |
|
|
|
params={params} |
|
|
|
onKeyPress={onKeyPress} |
|
|
|
onKeyPress={onKeyPress} |
|
|
|
setParams={setParams} |
|
|
|
setParams={setParams} |
|
|
|
// isClick={isClick}
|
|
|
|
|
|
|
|
// dateType={dateType}
|
|
|
|
|
|
|
|
handlerClickDate={handlerClickDate} |
|
|
|
handlerClickDate={handlerClickDate} |
|
|
|
searchData={params} |
|
|
|
searchData={params} |
|
|
|
/> |
|
|
|
/> |
|
|
|
</> |
|
|
|
</> |
|
|
|
) : ( |
|
|
|
) : ( |
|
|
|
// <div className='no-dataTable'>
|
|
|
|
|
|
|
|
<div className='mt-2 no-dataTable'> |
|
|
|
<div className='mt-2 no-dataTable'> |
|
|
|
그룹 목록에서 상세보기를 클릭하세요. |
|
|
|
그룹 목록에서 상세보기를 클릭하세요. |
|
|
|
</div> |
|
|
|
</div> |
|
|
|