Browse Source

비행이력현황페이징-(서버 작업 대기)

pull/2/head
sanguu(박상현) 2 years ago
parent
commit
ce69940b22
  1. 7
      src/containers/analysis/history/AnalysisHistoryDetailContainer.js
  2. 6
      src/modules/analysis/history/actions/analysisHistoryAction.ts
  3. 6
      src/modules/analysis/history/apis/annalysisHistoryApi.ts
  4. 2
      src/modules/analysis/history/reducers/analysisHitoryReducer.ts
  5. 15
      src/modules/analysis/history/sagas/analysisHistorySaga.ts

7
src/containers/analysis/history/AnalysisHistoryDetailContainer.js

@ -12,7 +12,6 @@ export const AnalysisHistoryDetailContainer = () => {
const dispatch = useDispatch(); const dispatch = useDispatch();
const { id } = useParams(); const { id } = useParams();
const titleName = '비행이력'; const titleName = '비행이력';
useEffect(() => { useEffect(() => {
@ -20,9 +19,12 @@ export const AnalysisHistoryDetailContainer = () => {
}, []); }, []);
const handlerSearch = () => { const handlerSearch = () => {
dispatch(Actions.detail.request(id)); dispatch(Actions.detail.request({ searchParams: { id, page: 1 } }));
}; };
const handlerPageChange = page => {
dispatch(Actions.detail.request({ id, page }));
};
const handlerInput = (type, val) => { const handlerInput = (type, val) => {
if (type === 'search1') { if (type === 'search1') {
setParams({ ...params, search1: val }); setParams({ ...params, search1: val });
@ -151,6 +153,7 @@ export const AnalysisHistoryDetailContainer = () => {
excelHeaders={excelHeaders} excelHeaders={excelHeaders}
count={log?.length} count={log?.length}
pagination={true} pagination={true}
handlerPageChange={handlerPageChange}
/> />
</CustomDetailLayout> </CustomDetailLayout>
); );

6
src/modules/analysis/history/actions/analysisHistoryAction.ts

@ -41,7 +41,11 @@ export const detail = createAsyncAction(
DETAIL_REQUEST, DETAIL_REQUEST,
DETAIL_SUCCESS, DETAIL_SUCCESS,
DETAIL_FAILURE DETAIL_FAILURE
)<string, { detail: AnalysisHistoryData }, AxiosError>(); )<
AnalysisHistoryState,
{ detail: AnalysisHistoryData; count: number; total: number },
AxiosError
>();
export const LIST_INITAL = createAction(LIST_INIT)(); export const LIST_INITAL = createAction(LIST_INIT)();

6
src/modules/analysis/history/apis/annalysisHistoryApi.ts

@ -14,7 +14,11 @@ export const analysisHistory = {
return await axios.get(`/api/anls/hstry/list${queryString}&page=${page}`); return await axios.get(`/api/anls/hstry/list${queryString}&page=${page}`);
}, },
detail: async (id: string) => { detail: async (id: string) => {
return await axios.get(`/api/anls/hstry/detail/${id}`); const queryString = qs.stringify(id, {
addQueryPrefix: true,
arrayFormat: 'repeat'
});
return await axios.get(`/api/anls/hstry/detail/${queryString}`);
}, },
log: async (id: string) => { log: async (id: string) => {

2
src/modules/analysis/history/reducers/analysisHitoryReducer.ts

@ -38,14 +38,12 @@ export const analysisHistoryReducer = createReducer<
.handleAction(Actions.detail.success, (state, action) => .handleAction(Actions.detail.success, (state, action) =>
produce(state, draft => { produce(state, draft => {
const { detail } = action.payload; const { detail } = action.payload;
draft.detail = detail; draft.detail = detail;
}) })
) )
.handleAction(Actions.log.success, (state, action) => .handleAction(Actions.log.success, (state, action) =>
produce(state, draft => { produce(state, draft => {
const { log } = action.payload; const { log } = action.payload;
draft.log = log; draft.log = log;
}) })
) )

15
src/modules/analysis/history/sagas/analysisHistorySaga.ts

@ -35,13 +35,18 @@ function* listSaga(action: ActionType<typeof Actions.list.request>) {
function* detailSaga(action: ActionType<typeof Actions.detail.request>) { function* detailSaga(action: ActionType<typeof Actions.detail.request>) {
try { try {
const id = action.payload; const { searchParams } = action.payload;
const res = yield call(Apis.analysisHistory.detail, id); const res = yield call(Apis.analysisHistory.detail, searchParams);
yield put(Actions.log.request(id)); yield put(Actions.log.request(searchParams));
const { data } = res; const {
data: { items, total },
count
} = res;
yield put( yield put(
Actions.detail.success({ Actions.detail.success({
detail: data detail: items,
count,
total
}) })
); );
} catch (error) { } catch (error) {

Loading…
Cancel
Save