Browse Source

[Redux] /analysis 미사용 코드 제거 및 경로 변경

master
junh_eee(이준희) 8 months ago
parent
commit
42baf69569
  1. 2
      src/containers/analysis/history/AnalysisHistoryContainer.js
  2. 2
      src/containers/analysis/history/AnalysisHistoryDetailContainer.js
  3. 19
      src/containers/analysis/simulator/AnalysisSimulationContainer.js
  4. 8
      src/modules/analysis/history/actions/index.ts
  5. 13
      src/modules/analysis/history/apis/index.ts
  6. 9
      src/modules/analysis/history/index.ts
  7. 8
      src/modules/analysis/history/models/index.ts
  8. 6
      src/modules/analysis/history/reducers/index.ts
  9. 19
      src/modules/analysis/history/sagas/index.ts
  10. 10
      src/modules/analysis/simulation/actions/analysisSimulatorAction.ts
  11. 67
      src/modules/analysis/simulation/actions/index.ts
  12. 2
      src/modules/analysis/simulation/apis/annalysisSimulatorApi.ts
  13. 28
      src/modules/analysis/simulation/apis/index.ts
  14. 9
      src/modules/analysis/simulation/index.ts
  15. 2
      src/modules/analysis/simulation/models/analysisSimulatorModel.ts
  16. 78
      src/modules/analysis/simulation/models/index.ts
  17. 17
      src/modules/analysis/simulation/reducers/analysisSimulatorReducer.ts
  18. 59
      src/modules/analysis/simulation/reducers/index.ts
  19. 12
      src/modules/analysis/simulation/sagas/analysisSimulatorSaga.ts
  20. 82
      src/modules/analysis/simulation/sagas/index.ts
  21. 3
      src/modules/control/gp/sagas/controlGpSaga.ts

2
src/containers/analysis/history/AnalysisHistoryContainer.js

@ -5,7 +5,7 @@ import { Link } from 'react-router-dom';
import { AnalysisHistoryGrid } from '../../../components/analysis/history/AnalysisHistoryGrid';
import { AnalysisHistorySearch } from '../../../components/analysis/history/AnalysisHistorySearch';
import { CustomMainLayout } from '../../../components/layout/CustomMainLayout';
import * as Actions from '../../../modules/analysis/history/actions/analysisHistoryAction';
import * as Actions from '../../../modules/analysis/history';
import FlightPlanGroupGrid from '../../../components/basis/flight/plan/FlightPlanGroupGrid';
import { JOIN_LIST, GROUP_LIST } from '../../../modules/basis/group/actions';
import {

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

@ -5,7 +5,7 @@ import { useParams } from 'react-router-dom';
import { AnalysisHistoryDetailGrid } from '../../../components/analysis/history/AnalysisHistoryDetailGrid';
import { AnalysisHistoryDetailStatic } from '../../../components/analysis/history/AnalysisHistoryDetailStatic';
import { CustomDetailLayout } from '../../../components/layout/CustomDetailLayout';
import * as Actions from '../../../modules/analysis/history/actions/analysisHistoryAction';
import * as Actions from '../../../modules/analysis/history';
export const AnalysisHistoryDetailContainer = () => {
// 비행이력 목록

19
src/containers/analysis/simulator/AnalysisSimulationContainer.js

@ -8,8 +8,8 @@ import { AnalysisSimulationInfo } from '../../../components/analysis/simulation/
import { AnalysisSimulationMap } from '../../../components/analysis/simulation/AnalysisSimulationMap';
import { AnalysisSimulationPolyline } from '../../../components/analysis/simulation/AnalysisSimulationPolyline';
import { AnalysisSimulationMarker } from '../../../components/analysis/simulation/AnalysisSimulationMarker';
import * as Actions from '../../../modules/analysis/simulation/actions/analysisSimulatorAction';
import * as Action from '../../../modules/account/login/actions';
import * as SmltActions from '../../../modules/analysis/simulation/actions';
import * as AuthAction from '../../../modules/account/login/actions';
let playCount = 0;
let playCounts = 0;
@ -190,21 +190,24 @@ export const AnalysisSimulationContainer = props => {
const handlerSearch = search1 => {
setParams({ ...params, search1 });
dispatch(
Actions.list.request({ searchParams: { ...params, search1 }, page: 1 })
SmltActions.list.request({
searchParams: { ...params, search1 },
page: 1
})
);
};
const handlerDetailSearch = id => {
dispatch(Actions.detail.request(id));
dispatch(SmltActions.detail.request(id));
};
const handlerLogSearch = id => {
dispatch(Actions.log.request(id));
dispatch(SmltActions.log.request(id));
};
//
const handlerStcsSearch = id => {
dispatch(Actions.stcs.request(id));
dispatch(SmltActions.stcs.request(id));
};
// 검색
@ -236,7 +239,7 @@ export const AnalysisSimulationContainer = props => {
// 로그아웃
const handlerLogout = () => {
dispatch(Action.logout.request());
dispatch(AuthAction.logout.request());
};
// 비행 시물레이션 데이터 닫기
@ -247,7 +250,7 @@ export const AnalysisSimulationContainer = props => {
// 비행 시물레이션 데이터 호출
const handlerPageList = useCallback(() => {
dispatch(
Actions.list.request({ searchParams: { ...params }, page: page + 1 })
SmltActions.list.request({ searchParams: { ...params }, page: page + 1 })
);
}, [params, list, page]);

8
src/modules/analysis/history/actions/analysisHistoryAction.ts → src/modules/analysis/history/actions/index.ts

@ -4,21 +4,25 @@ import {
AnalysisHistoryData,
AnalysisHistoryLogData,
AnalysisHistoryState
} from '../models/analysisHitoryModel';
} from '../models';
// 비행 이력 현황 목록
const LIST_REQUEST = 'anls/hstry/LIST_REQUEST';
const LIST_SUCCESS = 'anls/hstry/LIST_SUCCESS';
const LIST_FAILURE = 'anls/hstry/LIST_FAILURE';
// 비행 이력 로그
const LOG_REQUEST = 'anls/hstry/LOG_REQUEST';
const LOG_SUCCESS = 'anls/hstry/LOG_SUCCESS';
const LOG_FAILURE = 'anls/hstry/LOG_FAILURE';
// 비행 이력 상세
const DETAIL_REQUEST = 'anls/hstry/DETAIL_REQUEST';
const DETAIL_SUCCESS = 'anls/hstry/DETAIL_SUCCESS';
const DETAIL_FAILURE = 'anls/hstry/DETAIL_FAILURE';
const DISPATCH_SEARCH = 'amls/hstry/DISPATCH_SEARCH';
// 검색
const DISPATCH_SEARCH = 'anls/hstry/DISPATCH_SEARCH';
const LIST_INIT = 'anls/hstry/LIST_INIT';

13
src/modules/analysis/history/apis/annalysisHistoryApi.ts → src/modules/analysis/history/apis/index.ts

@ -1,8 +1,5 @@
import axios from '../../../utils/customAxiosUtil';
import qs from 'qs';
import { AnalysisHistoryState } from '../models/analysisHitoryModel';
// import { ReponseControlGpHistory } from '../models/controlGpModel';
export const analysisHistory = {
list: async (data: string, page: number) => {
@ -20,14 +17,4 @@ export const analysisHistory = {
log: async (id: string) => {
return await axios.get(`/api/anls/hstry/log/${id}`);
}
// getHistory: async (id: string) => {
// if (!id) {
// return null;
// }
// const { data }: ReponseControlGpHistory = await axios.get(
// `api/ctr/cntrl/history/${id}`
// );
// return data;
// }
};

9
src/modules/analysis/history/index.ts

@ -1,4 +1,5 @@
export * from './actions/analysisHistoryAction';
export * from './models/analysisHitoryModel';
export * from './reducers/analysisHitoryReducer';
export * from './sagas/analysisHistorySaga';
export * from './actions';
export * from './apis';
export * from './models';
export * from './reducers';
export * from './sagas';

8
src/modules/analysis/history/models/analysisHitoryModel.ts → src/modules/analysis/history/models/index.ts

@ -15,12 +15,6 @@ export interface AnalysisHistoryDetailState {
analysisHistoryDetail: AnalysisHistoryData | undefined;
}
// export interface SearchAnalysisHistory {
// idntfNum: string;
// cntrlStDate: string;
// cntrlEndDate: string;
// }
export interface AnalysisHistoryData {
cntrlId: string;
idntfNum: string;
@ -69,7 +63,7 @@ export interface ReponseAnalysisHistoryData {
count: number;
}
export const initResponseAnalysisHistoryData = {
export const initResponseAnalysisHistoryData: AnalysisHistoryState = {
data: undefined,
detail: undefined,
log: undefined,

6
src/modules/analysis/history/reducers/analysisHitoryReducer.ts → src/modules/analysis/history/reducers/index.ts

@ -1,13 +1,11 @@
import { createReducer } from 'typesafe-actions';
import produce from 'immer';
import * as Actions from '../actions/analysisHistoryAction';
import * as Actions from '../actions';
import {
initResponseAnalysisHistoryData,
AnalysisHistoryData,
AnalysisHistoryState
} from '../models/analysisHitoryModel';
import { controlGpSaga } from '../../../control/gp';
} from '../models';
export const analysisHistoryReducer = createReducer<
AnalysisHistoryState,

19
src/modules/analysis/history/sagas/analysisHistorySaga.ts → src/modules/analysis/history/sagas/index.ts

@ -1,15 +1,8 @@
import {
call,
put,
select,
takeEvery,
takeLatest
} from '@redux-saga/core/effects';
import { call, put, takeEvery } from '@redux-saga/core/effects';
import { ActionType } from 'typesafe-actions';
import * as Actions from '../actions/analysisHistoryAction';
import * as Apis from '../apis/annalysisHistoryApi';
import * as Models from '../models/analysisHitoryModel';
import * as Actions from '../actions';
import * as Apis from '../apis';
function* listSaga(action: ActionType<typeof Actions.list.request>) {
try {
@ -28,7 +21,7 @@ function* listSaga(action: ActionType<typeof Actions.list.request>) {
total
})
);
} catch (error) {
} catch (error: any) {
yield put(Actions.list.failure(error));
}
}
@ -44,7 +37,7 @@ function* detailSaga(action: ActionType<typeof Actions.detail.request>) {
detail: data
})
);
} catch (error) {
} catch (error: any) {
yield put(Actions.detail.failure(error));
}
}
@ -60,7 +53,7 @@ function* logSaga(action: ActionType<typeof Actions.log.request>) {
log: data
})
);
} catch (error) {
} catch (error: any) {
yield put(Actions.log.failure(error));
}
}

10
src/modules/analysis/simulation/actions/analysisSimulatorAction.ts

@ -5,27 +5,29 @@ import {
AnalysisSimulatorLogData,
AnalysisSimulatorState,
AnalysisSimulatorStcsData
} from '../models/analysisSimulatorModel';
} from '../models';
// 시뮬레이션 목록
const LIST_REQUEST = 'anls/smlt/LIST_REQUEST';
const LIST_SUCCESS = 'anls/smlt/LIST_SUCCESS';
const LIST_FAILURE = 'anls/smlt/LIST_FAILURE';
// 시뮬레이션 상세 로그 목록
const LOG_REQUEST = 'anls/smlt/LOG_REQUEST';
const LOG_SUCCESS = 'anls/smlt/LOG_SUCCESS';
const LOG_FAILURE = 'anls/smlt/LOG_FAILURE';
// 시뮬레이션 상세 정보
const DETAIL_REQUEST = 'anls/smlt/DETAIL_REQUEST';
const DETAIL_SUCCESS = 'anls/smlt/DETAIL_SUCCESS';
const DETAIL_FAILURE = 'anls/smlt/DETAIL_FAILURE';
// 시뮬레이션 분 단위 통계 정보
const STATICS_REQUEST = 'anls/smlt/STATICS_REQUEST';
const STATICS_SUCCESS = 'anls/smlt/STATICS_SUCCESS';
const STATICS_FAILURE = 'anls/smlt/STATICS_FAILURE';
const DISPATCH_SEARCH = 'amls/smlt/DISPATCH_SEARCH';
const INIT_LIST = 'amls/smlt/INIT_LIST';
const DISPATCH_SEARCH = 'anls/smlt/DISPATCH_SEARCH';
export const dispatchSearch =
createAction(DISPATCH_SEARCH)<{ searchParams: string }>();

67
src/modules/analysis/simulation/actions/index.ts

@ -0,0 +1,67 @@
import { AxiosError } from 'axios';
import { ActionType, createAction, createAsyncAction } from 'typesafe-actions';
import {
AnalysisSimulatorData,
AnalysisSimulatorLogData,
AnalysisSimulatorState,
AnalysisSimulatorStcsData
} from '../models';
// 시뮬레이션 목록
const LIST_REQUEST = 'anls/smlt/LIST_REQUEST';
const LIST_SUCCESS = 'anls/smlt/LIST_SUCCESS';
const LIST_FAILURE = 'anls/smlt/LIST_FAILURE';
// 시뮬레이션 상세 로그 목록
const LOG_REQUEST = 'anls/smlt/LOG_REQUEST';
const LOG_SUCCESS = 'anls/smlt/LOG_SUCCESS';
const LOG_FAILURE = 'anls/smlt/LOG_FAILURE';
// 시뮬레이션 상세 정보
const DETAIL_REQUEST = 'anls/smlt/DETAIL_REQUEST';
const DETAIL_SUCCESS = 'anls/smlt/DETAIL_SUCCESS';
const DETAIL_FAILURE = 'anls/smlt/DETAIL_FAILURE';
// 시뮬레이션 분 단위 통계 정보
const STATICS_REQUEST = 'anls/smlt/STATICS_REQUEST';
const STATICS_SUCCESS = 'anls/smlt/STATICS_SUCCESS';
const STATICS_FAILURE = 'anls/smlt/STATICS_FAILURE';
const DISPATCH_SEARCH = 'anls/smlt/DISPATCH_SEARCH';
export const dispatchSearch =
createAction(DISPATCH_SEARCH)<{ searchParams: string }>();
export const list = createAsyncAction(LIST_REQUEST, LIST_SUCCESS, LIST_FAILURE)<
AnalysisSimulatorState,
{ data: AnalysisSimulatorData[]; count: number; total: number; page: number },
AxiosError
>();
export const log = createAsyncAction(LOG_REQUEST, LOG_SUCCESS, LOG_FAILURE)<
string,
{ log: AnalysisSimulatorLogData[] },
AxiosError
>();
export const detail = createAsyncAction(
DETAIL_REQUEST,
DETAIL_SUCCESS,
DETAIL_FAILURE
)<string, { data: AnalysisSimulatorData }, AxiosError>();
export const stcs = createAsyncAction(
STATICS_REQUEST,
STATICS_SUCCESS,
STATICS_FAILURE
)<string, { data: AnalysisSimulatorStcsData[]; count: number }, AxiosError>();
const actions = {
list,
detail,
log,
stcs,
dispatchSearch
};
export type AnalysisSimulatorAction = ActionType<typeof actions>;

2
src/modules/analysis/simulation/apis/annalysisSimulatorApi.ts

@ -1,8 +1,6 @@
import qs from 'qs';
import axios from '../../../utils/customAxiosUtil';
// import { ReponseControlGpHistory } from '../models/controlGpModel';
export const analysisSimulator = {
//비행 현황 목록
list: async (data: string, page: number) => {

28
src/modules/analysis/simulation/apis/index.ts

@ -0,0 +1,28 @@
import qs from 'qs';
import axios from '../../../utils/customAxiosUtil';
export const analysisSimulator = {
//비행 현황 목록
list: async (data: string, page: number) => {
const queryString = qs.stringify(data, {
addQueryPrefix: true,
arrayFormat: 'repeat'
});
return await axios.get(`/api/anls/smlt/list${queryString}&page=${page}`);
},
// 비행 이력 데이터 조회
logList: async (id: string) => {
return await axios.get(`/api/anls/smlt/hist/${id}`);
},
//비행 상세 데이터 조회
detail: async (id: string) => {
return await axios.get(`/api/anls/smlt/detail/${id}`);
},
//비행 통계 데이터 조회
stcsList: async (id: string) => {
return await axios.get(`/api/anls/smlt/stcs/${id}`);
}
};

9
src/modules/analysis/simulation/index.ts

@ -1,4 +1,5 @@
export * from './actions/analysisSimulatorAction';
export * from './models/analysisSimulatorModel';
export * from './reducers/analysisSimulatorReducer';
export * from './sagas/analysisSimulatorSaga';
export * from './actions';
export * from './apis';
export * from './models';
export * from './reducers';
export * from './sagas';

2
src/modules/analysis/simulation/models/analysisSimulatorModel.ts

@ -65,7 +65,7 @@ export interface AnalysisSimulatorStcsData {
maxBttrLvl: number;
}
export const initResponseAnalysisSimulatorData = {
export const initialState: AnalysisSimulatorState = {
list: undefined,
detail: undefined,
count: 0,

78
src/modules/analysis/simulation/models/index.ts

@ -0,0 +1,78 @@
export interface AnalysisSimulatorState {
list: AnalysisSimulatorData[] | undefined;
detail: AnalysisSimulatorData | undefined;
count: number | 0;
log: AnalysisSimulatorLogData[] | undefined;
searchParams: string;
stcsList: AnalysisSimulatorStcsData[] | undefined;
stcsCount: number | 0;
page: number | 1;
total: number | 0;
}
export interface AnalysisSimulatorData {
cntrlId: string;
idntfNum: string;
flghtStDt: Date;
flghtEndDt: Date;
cntrlStDt: Date;
cntrlEndDt: Date;
ttlTime: number;
ttlTimeType: string;
ttlDstnc: number;
ttlDstncType: string;
avrgSpeed: number;
avrgSpeedType: string;
bttrCnsmptn: number;
stArea: string;
endArea: string;
arcrftTypeCd: string;
prdctNum: string;
arcrftModelNm: string;
imageUrl: string;
}
export interface AnalysisSimulatorLogData {
hstrySno: number;
cntrlId: string;
trmnlId: string;
mssgTypeCd: string;
statusCd: string;
lat: number;
lon: number;
speed: number;
speedType: string;
heading: number;
elev: number;
elevType: string;
mvDstnc: number;
bttrLvl: number;
bttrVltg: number;
trmnlRcvDt: string;
srvrRcvDt: string;
}
export interface AnalysisSimulatorStcsData {
dateCd: string;
timeCd: string;
avrgSpeed: number;
speedType: string;
avrgElev: number;
elevType: string;
avrgMvDstnc: number;
mvDstncType: string;
minBttrLvl: number;
maxBttrLvl: number;
}
export const initialState: AnalysisSimulatorState = {
list: undefined,
detail: undefined,
count: 0,
log: undefined,
searchParams: '',
stcsList: undefined,
stcsCount: 0,
page: 1,
total: 0
};

17
src/modules/analysis/simulation/reducers/analysisSimulatorReducer.ts

@ -1,29 +1,18 @@
import produce from 'immer';
import { createReducer } from 'typesafe-actions';
import * as Actions from '../actions/analysisSimulatorAction';
import {
AnalysisSimulatorState,
initResponseAnalysisSimulatorData
} from '../models/analysisSimulatorModel';
import * as Actions from '../actions';
import { AnalysisSimulatorState, initialState } from '../models';
export const analysisSimulatorReducer = createReducer<
AnalysisSimulatorState,
Actions.AnalysisSimulatorAction
>(initResponseAnalysisSimulatorData)
>(initialState)
.handleAction(Actions.dispatchSearch, (state, action) =>
produce(state, draft => {
const { searchParams } = action.payload;
draft.searchParams = searchParams;
})
)
// .handleAction(Actions.list.request, (state, action) =>
// produce(state, draft => {
// const { searchParams, page } = action.payload;
// draft.searchParams = searchParams;
// draft.page = page;
// })
// )
.handleAction(Actions.list.success, (state, action) =>
produce(state, draft => {
const { data, count, total, page } = action.payload;

59
src/modules/analysis/simulation/reducers/index.ts

@ -0,0 +1,59 @@
import produce from 'immer';
import { createReducer } from 'typesafe-actions';
import * as Actions from '../actions';
import { AnalysisSimulatorState, initialState } from '../models';
export const analysisSimulatorReducer = createReducer<
AnalysisSimulatorState,
Actions.AnalysisSimulatorAction
>(initialState)
.handleAction(Actions.dispatchSearch, (state, action) =>
produce(state, draft => {
const { searchParams } = action.payload;
draft.searchParams = searchParams;
})
)
.handleAction(Actions.list.success, (state, action) =>
produce(state, draft => {
const { data, count, total, page } = action.payload;
if (!state.list) {
draft.list = data;
} else {
if (page === 1) {
draft.list = data;
draft.page = page;
return;
}
draft.list = state.list?.concat(data);
}
draft.page = page;
draft.count = count;
draft.total = total;
})
)
.handleAction(Actions.detail.success, (state, action) =>
produce(state, draft => {
const { data } = action.payload;
draft.detail = data;
})
)
.handleAction(Actions.stcs.success, (state, action) =>
produce(state, draft => {
const { data, count } = action.payload;
draft.stcsList = data;
draft.stcsCount = count;
})
)
.handleAction(Actions.log.success, (state, action) =>
produce(state, draft => {
const { log } = action.payload;
const data = log.sort((p: any, n: any): any => {
const a = p.srvrRcvDt.replace(/[^0-9\.]+/g, '');
const b = n.srvrRcvDt.replace(/[^0-9\.]+/g, '');
return a - b;
});
draft.log = log;
})
);

12
src/modules/analysis/simulation/sagas/analysisSimulatorSaga.ts

@ -1,7 +1,7 @@
import { call, put, takeEvery } from '@redux-saga/core/effects';
import { ActionType } from 'typesafe-actions';
import * as Actions from '../actions/analysisSimulatorAction';
import * as Apis from '../apis/annalysisSimulatorApi';
import * as Actions from '../actions';
import * as Apis from '../apis';
function* listSaga(action: ActionType<typeof Actions.list.request>) {
try {
@ -20,7 +20,7 @@ function* listSaga(action: ActionType<typeof Actions.list.request>) {
page: res.data.page
})
);
} catch (error) {
} catch (error: any) {
yield put(Actions.list.failure(error));
}
}
@ -36,7 +36,7 @@ function* detailSaga(action: ActionType<typeof Actions.detail.request>) {
data: data
})
);
} catch (error) {
} catch (error: any) {
yield put(Actions.detail.failure(error));
}
}
@ -53,7 +53,7 @@ function* stcsSaga(action: ActionType<typeof Actions.stcs.request>) {
count: count
})
);
} catch (error) {
} catch (error: any) {
yield put(Actions.detail.failure(error));
}
}
@ -69,7 +69,7 @@ function* logSaga(action: ActionType<typeof Actions.log.request>) {
log: data
})
);
} catch (error) {
} catch (error: any) {
yield put(Actions.log.failure(error));
}
}

82
src/modules/analysis/simulation/sagas/index.ts

@ -0,0 +1,82 @@
import { call, put, takeEvery } from '@redux-saga/core/effects';
import { ActionType } from 'typesafe-actions';
import * as Actions from '../actions';
import * as Apis from '../apis';
function* listSaga(action: ActionType<typeof Actions.list.request>) {
try {
const { searchParams, page } = action.payload;
const res = yield call(Apis.analysisSimulator.list, searchParams, page);
const {
data: { items, total },
count
} = res;
yield put(
Actions.list.success({
data: items,
count: count,
total,
page: res.data.page
})
);
} catch (error: any) {
yield put(Actions.list.failure(error));
}
}
function* detailSaga(action: ActionType<typeof Actions.detail.request>) {
try {
const id = action.payload;
const res = yield call(Apis.analysisSimulator.detail, id);
// yield put(Actions.log.request(id));
const { data } = res;
yield put(
Actions.detail.success({
data: data
})
);
} catch (error: any) {
yield put(Actions.detail.failure(error));
}
}
function* stcsSaga(action: ActionType<typeof Actions.stcs.request>) {
try {
const id = action.payload;
const res = yield call(Apis.analysisSimulator.stcsList, id);
// yield put(Actions.log.request(id));
const { data, count } = res;
yield put(
Actions.stcs.success({
data: data,
count: count
})
);
} catch (error: any) {
yield put(Actions.detail.failure(error));
}
}
function* logSaga(action: ActionType<typeof Actions.log.request>) {
try {
const id = action.payload;
const res = yield call(Apis.analysisSimulator.logList, id);
const { data } = res;
yield put(
Actions.log.success({
log: data
})
);
} catch (error: any) {
yield put(Actions.log.failure(error));
}
}
export function* analysisSimulatorSaga() {
yield takeEvery(Actions.list.request, listSaga);
yield takeEvery(Actions.detail.request, detailSaga);
yield takeEvery(Actions.stcs.request, stcsSaga);
yield takeEvery(Actions.log.request, logSaga);
}

3
src/modules/control/gp/sagas/controlGpSaga.ts

@ -8,9 +8,6 @@ import {
import * as Actions from '../actions/controlGpAction';
import { controlGpApi } from '../apis/controlGpApi';
import decode from 'jwt-decode';
import { ControlGpData } from '../models/controlGpModel';
import { detail } from '../../../analysis/history/actions/analysisHistoryAction';
import { useSelector } from 'react-redux';
const token = cookieStorage.getCookie(COOKIE_ACCESS_TOKEN);

Loading…
Cancel
Save