diff --git a/src/components/analysis/history/AnalysisHistoryGrid.js b/src/components/analysis/history/AnalysisHistoryGrid.js
index ade2fd2..5b5d6ba 100644
--- a/src/components/analysis/history/AnalysisHistoryGrid.js
+++ b/src/components/analysis/history/AnalysisHistoryGrid.js
@@ -48,6 +48,7 @@ export const AnalysisHistoryGrid = props => {
handlerPageChange={props.handlerPageChange}
paginationPerPage={props.paginationPerPage}
paginationRowsPerPageOptions={props.paginationRowsPerPageOptions}
+ page={props.page}
/>
diff --git a/src/components/analysis/history/AnalysisHistorySearch.js b/src/components/analysis/history/AnalysisHistorySearch.js
index c971031..a81407c 100644
--- a/src/components/analysis/history/AnalysisHistorySearch.js
+++ b/src/components/analysis/history/AnalysisHistorySearch.js
@@ -1,5 +1,5 @@
import moment from 'moment';
-import { useEffect } from 'react';
+import { useState } from 'react';
import { Calendar, Search } from 'react-feather';
import Flatpickr from 'react-flatpickr';
import {
@@ -13,18 +13,22 @@ import {
} from 'reactstrap';
export const AnalysisHistorySearch = props => {
-
- useEffect(() => {
- if (props.isClick > 0) {
-
- props.setParams({
- ...props.params,
- stDate: moment().subtract(props.dateType, 'day').format('YYYY-MM-DD'),
- endDate: moment().subtract(0, 'day').format('YYYY-MM-DD'),
- groupId: props.searchData.groupId
- });
- }
- }, [props.dateType, props.isClick]);
+ // useEffect(() => {
+ // if (props.isClick != -1) {
+ // props.setParams({
+ // ...props.params,
+ // stDate: moment().subtract(props.dateType, 'day').format('YYYY-MM-DD'),
+ // endDate: moment().subtract(0, 'day').format('YYYY-MM-DD'),
+ // groupId: props.searchData.groupId
+ // });
+ // }
+ // }, [props.dateType, props.isClick]);
+ const [diffDay, setDiffDay] = useState(
+ moment(props.searchData.endDate).diff(
+ moment(props.searchData.stDate),
+ 'days'
+ )
+ );
return (
//
@@ -86,36 +90,44 @@ export const AnalysisHistorySearch = props => {
diff --git a/src/components/crud/grid/GridDatatable.js b/src/components/crud/grid/GridDatatable.js
index ebfbbc0..9c7705d 100644
--- a/src/components/crud/grid/GridDatatable.js
+++ b/src/components/crud/grid/GridDatatable.js
@@ -27,6 +27,7 @@ export const GridDatabase = props => {
responsive={true}
sortIcon={
}
className='react-dataTable pal-dateTable'
+ paginationDefaultPage={props.page || 1}
// defaultSortField='invoiceId'
// paginationDefaultPage={currentPage}
// paginationComponent={CustomPagination}
diff --git a/src/containers/analysis/history/AnalysisHistoryContainer.js b/src/containers/analysis/history/AnalysisHistoryContainer.js
index fbe298d..6fb2c38 100644
--- a/src/containers/analysis/history/AnalysisHistoryContainer.js
+++ b/src/containers/analysis/history/AnalysisHistoryContainer.js
@@ -1,5 +1,5 @@
import moment from 'moment';
-import { useEffect, useState } from 'react';
+import { useEffect, useState, useCallback } from 'react';
import { useDispatch, useSelector, shallowEqual } from 'react-redux';
import { Link } from 'react-router-dom';
import { AnalysisHistoryGrid } from '../../../components/analysis/history/AnalysisHistoryGrid';
@@ -25,18 +25,10 @@ import { useHistory } from 'react-router-dom';
import { MessageErrorModal } from '../../../components/message/MessageErrorModal';
export const AnalysisHistoryContainer = props => {
- const { data, count, searchParams, total } = useSelector(
+ const { data, count, searchParams, total, page } = useSelector(
state => state.analysisHistoryState
);
- const initSearchData = {
- //stDate: moment().subtract(1, 'day').format('YYYY-MM-DD'),
- //endDate: moment().subtract(0, 'day').format('YYYY-MM-DD'),
- // stDate: moment().set({ 'date': 1, 'h': 0, 'm': 0, 's': 0 }).format('YYYY-MM-DD HH:mm:ss'),
- // endDate: moment().set({ 'h': 23, 'm': 59, 's': 59 }).format('YYYY-MM-DD HH:mm:ss'),
- groupId: ''
- };
- const [searchData, setSearchData] = useState(initSearchData);
const {
list: aprvList,
aprvProc,
@@ -47,8 +39,8 @@ export const AnalysisHistoryContainer = props => {
);
const { user } = useSelector(state => state.authState, shallowEqual);
- const [isClick, setIsClick] = useState(-1);
- const [dateType, setDateType] = useState(1);
+ // const [isClick, setIsClick] = useState(-1);
+ // const [dateType, setDateType] = useState(1);
const [modal, setModal] = useState({
isOpen: false,
@@ -57,9 +49,20 @@ export const AnalysisHistoryContainer = props => {
color: ''
});
+ const [params, setParams] = useState({
+ stDate: selectGroup.stDate
+ ? moment(selectGroup.stDate).format('YYYY-MM-DD')
+ : moment().subtract(7, 'day').format('YYYY-MM-DD'),
+ endDate: selectGroup.endDate
+ ? moment(selectGroup.endDate).format('YYYY-MM-DD')
+ : moment().subtract(0, 'day').format('YYYY-MM-DD'),
+ search1: selectGroup.search1 ? selectGroup.search1 : '',
+ groupId: selectGroup.groupId ? selectGroup.groupId : ''
+ });
+
useEffect(() => {
if (aprvProc && aprvProc.result > 0) {
- handleSearch(searchData);
+ handlerSearch(params);
}
}, [aprvProc]);
@@ -77,23 +80,6 @@ export const AnalysisHistoryContainer = props => {
}
}, [user]);
- useEffect(() => {
- setParams({
- ...params,
- stDate: moment().subtract(7, 'day').format('YYYY-MM-DD'),
- endDate: moment().subtract(0, 'day').format('YYYY-MM-DD'),
- // stDate: '',
- // endDate: '',
- search1: '',
- groupId: searchData.groupId
- });
-
- }, [searchData.groupId]);
-
- // useEffect(() => {
- // handlerGroupCancel();
- // }, []);
-
const onKeyPress = e => {
if (e.key == 'Enter') {
handlerSearch();
@@ -102,8 +88,8 @@ export const AnalysisHistoryContainer = props => {
const handleGroupSelect = ({ groupId }) => {
// 권한 상관 없이 모두 조회 가능
- const param = searchData;
- // param.cstmrSno = user.cstmrSno;
+ const param = params;
+
param.groupId = groupId;
dispatch(FlightAction.FLIGHT_PLAN_GROUP_SELECT({ groupId: groupId }));
@@ -111,16 +97,11 @@ export const AnalysisHistoryContainer = props => {
// groupId sessionStorage에 보관 (1 브라우저 1 tab에만 유효)
sessionStorage.setItem('groupId', groupId);
sessionStorage.setItem('cstmrSno', user.cstmrSno);
- setDateType(7);
- setIsClick(7);
- setSearchData(prevState => {
- return {
- ...prevState,
- // cstmrSno: user.cstmrSno,
- groupId: groupId
- };
- });
+
+ // setIsClick(7);
+ setParams(prevState => ({ ...prevState, groupId }));
dispatch(Actions.LIST_INITAL());
+ dispatch(Actions.list.request({ searchParams: params, page: 1 }));
};
const handlerGroupCancel = () => {
dispatch(
@@ -129,10 +110,11 @@ export const AnalysisHistoryContainer = props => {
groupId: '',
groupNm: '',
endDate: '',
- stDate: ''
+ stDate: '',
+ search1: ''
})
);
- setIsClick(7);
+ // setIsClick(0);
};
const dispatch = useDispatch();
@@ -246,13 +228,6 @@ export const AnalysisHistoryContainer = props => {
}
];
- const [params, setParams] = useState({
- stDate: moment().subtract(1, 'day').format('YYYY-MM-DD'),
- endDate: moment().subtract(-1, 'day').format('YYYY-MM-DD'),
- search1: '',
- groupId: searchData.groupId
- });
-
const handlerSearch = () => {
if (!params.stDate || !params.endDate) {
setModal({
@@ -269,7 +244,8 @@ export const AnalysisHistoryContainer = props => {
color: 'modal-danger'
});
} else {
- dispatch(Actions.LIST_INITAL());
+ // dispatch(Actions.LIST_INITAL());
+ dispatch(FlightAction.FLIGHT_PLAN_GROUP_SELECT({ ...params }));
dispatch(Actions.list.request({ searchParams: params, page: 1 }));
}
};
@@ -285,18 +261,24 @@ export const AnalysisHistoryContainer = props => {
stDate: moment(val[0]).format('YYYY-MM-DD'),
endDate: moment(val[1]).format('YYYY-MM-DD')
});
- setIsClick(-1);
+ // setIsClick(-1);
}
}
};
const handlerClickDate = val => {
- setDateType(val);
- setIsClick(val);
+ // setDateType(val);
+ // setIsClick(val);
+ setParams(prev => ({
+ ...prev,
+ stDate: moment().subtract(val, 'day').format('YYYY-MM-DD'),
+ endDate: moment().subtract(0, 'day').format('YYYY-MM-DD')
+ }));
};
const handlerPageChange = page => {
dispatch(Actions.list.request({ searchParams: params, page }));
};
+
return (
{/* */}
@@ -344,10 +326,10 @@ export const AnalysisHistoryContainer = props => {
params={params}
onKeyPress={onKeyPress}
setParams={setParams}
- isClick={isClick}
- dateType={dateType}
+ // isClick={isClick}
+ // dateType={dateType}
handlerClickDate={handlerClickDate}
- searchData={searchData}
+ searchData={params}
/>
>
) : (
@@ -372,6 +354,7 @@ export const AnalysisHistoryContainer = props => {
pagination={true}
paginationPerPage={10}
paginationRowsPerPageOptions={[10, 20, 30, 40]}
+ page={page}
/>
>
) : (
diff --git a/src/modules/basis/flight/models/basisFlightModel.ts b/src/modules/basis/flight/models/basisFlightModel.ts
index 400555e..52a8f94 100644
--- a/src/modules/basis/flight/models/basisFlightModel.ts
+++ b/src/modules/basis/flight/models/basisFlightModel.ts
@@ -19,8 +19,8 @@ export interface FlightState {
conut: number | 0;
weather: resweatherData | undefined;
selectGroup: SelectGroupData | undefined;
- listSelect: SelectGroupData | undefined;
- aprvSelect: SelectGroupData | undefined;
+ listSelect: ListGroupData | undefined;
+ aprvSelect: ListGroupData | undefined;
}
export interface weatherData {
serviceKey: string;
@@ -62,6 +62,15 @@ export interface SelectGroupData {
cstmrSno: number;
groupId: string;
groupNm: string;
+ search1: string;
+ stDate: string;
+ endDate: string;
+}
+
+export interface ListGroupData {
+ cstmrSno: number;
+ groupId: string;
+ groupNm: string;
}
export interface PublicAreaData {
@@ -242,7 +251,10 @@ export const initFlight = {
selectGroup: {
cstmrSno: 0,
groupId: '',
- groupNm: ''
+ groupNm: '',
+ search1: '',
+ stDate: '',
+ endDate: ''
},
listSelect: {
cstmrSno: 0,