junh_eee(이준희)
7 months ago
14 changed files with 1011 additions and 126 deletions
@ -0,0 +1,76 @@
|
||||
import { createSlice } from '@reduxjs/toolkit'; |
||||
import { IGetJoinGroupListRs, initGroup } from './groupState'; |
||||
import { |
||||
createGroupId, |
||||
getAprvList, |
||||
getAvailGroupList, |
||||
getGroupDetail, |
||||
getGroupList, |
||||
getJoinGroupList, |
||||
getMyGroupList, |
||||
getUserList |
||||
} from './groupThunk'; |
||||
|
||||
const groupSlice = createSlice({ |
||||
name: 'groupSlice', |
||||
initialState: initGroup, |
||||
reducers: { |
||||
clientSelectAprvGroup: (state, action) => { |
||||
const selectData = action.payload; |
||||
state.aprvSelect = selectData; |
||||
}, |
||||
clientSelectUserGroup: (state, action) => { |
||||
const selectData = action.payload; |
||||
state.userSelect = selectData; |
||||
} |
||||
}, |
||||
extraReducers: builder => { |
||||
builder |
||||
.addCase(getGroupList.fulfilled, (state, action) => { |
||||
const { data, count } = action.payload; |
||||
state.groupList = data; |
||||
state.groupListCount = count; |
||||
}) |
||||
.addCase(getAvailGroupList.fulfilled, (state, action) => { |
||||
const { data, count } = action.payload; |
||||
state.joinList = data; |
||||
state.joinListCount = count; |
||||
}) |
||||
.addCase(getMyGroupList.fulfilled, (state, action) => { |
||||
const { data, count } = action.payload; |
||||
state.myList = data; |
||||
state.myListCount = count; |
||||
}) |
||||
.addCase(getJoinGroupList.fulfilled, (state, action) => { |
||||
const { data } = action.payload; |
||||
|
||||
const agreeList = data.filter((res: IGetJoinGroupListRs) => { |
||||
if (res.aprvlYn === 'Y') return res; |
||||
}); |
||||
state.joinList = agreeList; |
||||
state.joinListCount = agreeList.length; |
||||
}) |
||||
.addCase(getGroupDetail.fulfilled, (state, action) => { |
||||
state.groupDetail = action.payload; |
||||
}) |
||||
.addCase(createGroupId.fulfilled, (state, action) => { |
||||
state.newGroupId = action.payload; |
||||
}) |
||||
.addCase(getAprvList.fulfilled, (state, action) => { |
||||
const { data, count, total } = action.payload; |
||||
state.aprvList = data; |
||||
state.count = count; |
||||
state.total = total; |
||||
}) |
||||
.addCase(getUserList.fulfilled, (state, action) => { |
||||
const { data, count, total } = action.payload; |
||||
state.userList = data; |
||||
state.count = count; |
||||
state.total = total; |
||||
}); |
||||
} |
||||
}); |
||||
|
||||
export const { clientSelectAprvGroup, clientSelectUserGroup } = |
||||
groupSlice.actions; |
||||
export const groupReducer2 = groupSlice.reducer; |
@ -0,0 +1,192 @@
|
||||
import { ErrorModel } from '@src/modules/models/ComnModel'; |
||||
|
||||
export const initGroup: IGroupState = { |
||||
groupList: undefined, |
||||
groupListCount: 0, |
||||
|
||||
myList: undefined, |
||||
myListCount: 0, |
||||
|
||||
joinList: undefined, |
||||
joinListCount: 0, |
||||
|
||||
aprvList: undefined, |
||||
aprvCount: 0, |
||||
aprvSelect: undefined, |
||||
|
||||
userList: undefined, |
||||
userCount: 0, |
||||
userSelect: undefined, |
||||
|
||||
groupId: '', |
||||
newGroupId: '', |
||||
|
||||
groupDetail: undefined, |
||||
|
||||
searchParams: '', |
||||
count: 0, |
||||
total: 0, |
||||
page: 1, |
||||
error: undefined |
||||
}; |
||||
|
||||
export interface IGroupState { |
||||
groupList: IGetGroupListRs[] | undefined; |
||||
groupListCount: number | 0; |
||||
|
||||
myList: IGetMyGroupListRs[] | undefined; |
||||
myListCount: number | 0; |
||||
|
||||
joinList: IGetJoinGroupListRs[] | undefined; |
||||
joinListCount: number | 0; |
||||
|
||||
aprvList: IGetApprovalListRs[] | undefined; |
||||
aprvCount: number | 0; |
||||
aprvSelect: ISelectGroup | undefined; |
||||
|
||||
userList: IGetUserListRs[] | undefined; |
||||
userCount: number | 0; |
||||
userSelect: ISelectGroup | undefined; |
||||
|
||||
groupId: string | ''; |
||||
newGroupId: String | ''; |
||||
|
||||
groupDetail: IGroup | undefined; |
||||
|
||||
searchParams: string | ''; |
||||
count: number | 0; |
||||
total: number | 0; |
||||
page: number | 1; |
||||
error: ErrorModel | undefined; |
||||
} |
||||
|
||||
export interface ISelectGroup { |
||||
groupId: string; |
||||
groupNm: string; |
||||
} |
||||
|
||||
export interface IGetGroupListRs { |
||||
cstmrGroupSno: number; |
||||
groupId: string; |
||||
groupNm: string; |
||||
aprvlYn: string; |
||||
joinYn: string; |
||||
groupAuthCd: string; |
||||
createDt: Date; |
||||
myGroupAuthCd: string; |
||||
} |
||||
|
||||
export interface IGetAvailGroupListRs { |
||||
cstmrGroupSno: number; |
||||
groupId: string; |
||||
groupNm: string; |
||||
groupTypeCd: string; |
||||
cstmrSno: number; |
||||
aprvlYn: string; |
||||
joinYn: string; |
||||
joinDt: Date; |
||||
aprvlDt: Date; |
||||
groupAuthCd: string; |
||||
createDt: Date; |
||||
updateDt: Date; |
||||
} |
||||
|
||||
export interface IGetMyGroupListRs { |
||||
groupId: string; |
||||
groupNm: string; |
||||
groupTypeCd: string; |
||||
cstmrSno: number; |
||||
createDt: Date; |
||||
updateDt: Date; |
||||
} |
||||
|
||||
export interface IGetJoinGroupListRs { |
||||
cstmrGroupSno: number; |
||||
groupId: string; |
||||
groupNm: string; |
||||
groupTypeCd: string; |
||||
cstmrSno: number; |
||||
aprvlYn: string; |
||||
joinYn: string; |
||||
joinDt: Date; |
||||
aprvlDt: Date; |
||||
groupAuthCd: string; |
||||
createDt: Date; |
||||
updateDt: Date; |
||||
} |
||||
|
||||
export interface IGroup { |
||||
groupId: string; |
||||
groupNm: string; |
||||
groupTypeCd: string; |
||||
cstmrSno: number; |
||||
createDt: Date; |
||||
updateDt: Date; |
||||
} |
||||
|
||||
export interface ICreateGroupRq { |
||||
groupId: string; |
||||
groupNm: string; |
||||
groupTypeCd: string; |
||||
cstmrSno: string; |
||||
} |
||||
|
||||
export interface IUpdateGroupRq { |
||||
groupId: string; |
||||
groupNm: string; |
||||
groupTypeCd: string; |
||||
} |
||||
|
||||
export interface IJoinGroupRq { |
||||
cstmrSno: number; |
||||
groupAuthCd: string; |
||||
groupId: string; |
||||
} |
||||
|
||||
export interface ILeaveGroupRq { |
||||
cstmrGroupSno: number; |
||||
joinYn: string; |
||||
} |
||||
|
||||
export interface IGetApprovalListRs { |
||||
cstmrGroupSno: number; |
||||
groupId: string; |
||||
groupNm: string; |
||||
groupTypeCd: string; |
||||
cstmrSno: number; |
||||
aprvlYn: string; |
||||
joinYn: string; |
||||
memberName: string; |
||||
userId: string; |
||||
aprvlDt: Date; |
||||
joinDt: Date; |
||||
groupAuthCd?: string; |
||||
} |
||||
|
||||
export interface IUpdateApprovalRq { |
||||
cstmrGroupSno: number; |
||||
aprvlYn: string; |
||||
groupAuthCd: string; |
||||
aprvUserId: string; |
||||
trmnlId: string; |
||||
} |
||||
|
||||
export interface IGetUserListRs { |
||||
cstmrGroupSno: number; |
||||
groupId: string; |
||||
groupNm: string; |
||||
groupTypeCd: string; |
||||
cstmrSno: number; |
||||
memberName: string; |
||||
userId: string; |
||||
aprvlDt: Date; |
||||
joinDt: Date; |
||||
joinYn: string; |
||||
groupAuthCd: string; |
||||
} |
||||
|
||||
export interface IUpdateUserAccessRq { |
||||
cstmrGroupSno: number; |
||||
groupAuthCd: string; |
||||
joinYn: string; |
||||
} |
@ -0,0 +1,516 @@
|
||||
import axios from '../../../../modules/utils/customAxiosUtil'; |
||||
import qs from 'qs'; |
||||
|
||||
import { createAsyncThunk } from '@reduxjs/toolkit'; |
||||
|
||||
import { isError, isMessage } from '../../comn/message/messageSlice'; |
||||
import { |
||||
ERROR_MESSAGE, |
||||
SAVE_MESSAGE, |
||||
DELETE_MESSAGE |
||||
} from '@src/configs/constants'; |
||||
import { |
||||
ICreateGroupRq, |
||||
IJoinGroupRq, |
||||
ILeaveGroupRq, |
||||
IUpdateApprovalRq, |
||||
IUpdateGroupRq, |
||||
IUpdateUserAccessRq |
||||
} from './groupState'; |
||||
|
||||
/** |
||||
* 나와 관련된 그룹 조회(생성 + 참여) |
||||
* super, admin은 모든 그룹 조회 |
||||
*/ |
||||
export const getGroupList = createAsyncThunk( |
||||
'basis/getGroupList', |
||||
async (cstmrSno: number, thunkAPI) => { |
||||
const { rejectWithValue } = thunkAPI; |
||||
|
||||
try { |
||||
const res: any = await axios.get( |
||||
`api/bas/group/grouplist?cstmrSno=${cstmrSno}` |
||||
); |
||||
const { data, count } = res; |
||||
|
||||
return { data, count }; |
||||
} catch (error) { |
||||
return rejectWithValue(error); |
||||
} |
||||
} |
||||
); |
||||
|
||||
// 가입 가능한 그룹 목록 조회
|
||||
export const getAvailGroupList = createAsyncThunk( |
||||
'basis/getAvailGroupList', |
||||
async (rq: string, thunkAPI) => { |
||||
const { rejectWithValue } = thunkAPI; |
||||
|
||||
try { |
||||
const queryString = qs.stringify(rq, { |
||||
addQueryPrefix: true, |
||||
arrayFormat: 'repeat' |
||||
}); |
||||
const res: any = await axios.get(`api/bas/group/join/list${queryString}`); |
||||
const { data, count } = res; |
||||
|
||||
return { data, count }; |
||||
} catch (error) { |
||||
return rejectWithValue(error); |
||||
} |
||||
} |
||||
); |
||||
|
||||
// 생성한 그룹 목록 조회
|
||||
export const getMyGroupList = createAsyncThunk( |
||||
'basis/getMyGroupList', |
||||
async (cstmrSno: number, thunkAPI) => { |
||||
const { rejectWithValue } = thunkAPI; |
||||
|
||||
try { |
||||
const res: any = await axios.get( |
||||
`api/bas/group/mylist?cstmrSno=${cstmrSno}` |
||||
); |
||||
const { data, count, errorCode } = res; |
||||
|
||||
if (errorCode) { |
||||
thunkAPI.dispatch( |
||||
isError({ |
||||
errorCode: errorCode, |
||||
errorMessage: '처리중 오류가 발생하였습니다', |
||||
isHistoryBack: false, |
||||
isRefresh: false |
||||
}) |
||||
); |
||||
throw Error; |
||||
} |
||||
|
||||
return { |
||||
data, |
||||
count |
||||
}; |
||||
} catch (error) { |
||||
return rejectWithValue(error); |
||||
} |
||||
} |
||||
); |
||||
|
||||
// 가입한 그룹 목록 조회
|
||||
export const getJoinGroupList = createAsyncThunk( |
||||
'basis/getJoinGroupList', |
||||
async (cstmrSno: number, thunkAPI) => { |
||||
const { rejectWithValue } = thunkAPI; |
||||
try { |
||||
const res: any = await axios.get( |
||||
`api/bas/group/joinlist?cstmrSno=${cstmrSno}` |
||||
); |
||||
const { data, count, errorCode } = res; |
||||
|
||||
if (errorCode) { |
||||
thunkAPI.dispatch( |
||||
isError({ |
||||
errorCode: errorCode, |
||||
errorMessage: '처리중 오류가 발생하였습니다', |
||||
isHistoryBack: false, |
||||
isRefresh: false |
||||
}) |
||||
); |
||||
throw Error; |
||||
} |
||||
|
||||
return { |
||||
data, |
||||
count |
||||
}; |
||||
} catch (error) { |
||||
return rejectWithValue(error); |
||||
} |
||||
} |
||||
); |
||||
|
||||
// 그룹 상세 조회
|
||||
export const getGroupDetail = createAsyncThunk( |
||||
'basis/getGroupDetail', |
||||
async (id: string, thunkAPI) => { |
||||
const { rejectWithValue } = thunkAPI; |
||||
|
||||
try { |
||||
const { data } = await axios.get(`api/bas/group/detail/${id}`); |
||||
return data; |
||||
} catch (error) { |
||||
return rejectWithValue(error); |
||||
} |
||||
} |
||||
); |
||||
|
||||
// 그룹 생성
|
||||
export const createGroup = createAsyncThunk( |
||||
'basis/createGroup', |
||||
async (rq: ICreateGroupRq, thunkAPI) => { |
||||
const { rejectWithValue } = thunkAPI; |
||||
|
||||
try { |
||||
const { data } = await axios.post('api/bas/group/create', rq); |
||||
|
||||
if (data.result) { |
||||
thunkAPI.dispatch( |
||||
isMessage({ |
||||
messageCode: SAVE_MESSAGE.code, |
||||
message: SAVE_MESSAGE.message, |
||||
isHistoryBack: true, |
||||
isRefresh: false |
||||
}) |
||||
); |
||||
} else { |
||||
if (data.errorCode === 'DT002') { |
||||
thunkAPI.dispatch( |
||||
isError({ |
||||
errorCode: ERROR_MESSAGE.code, |
||||
errorMessage: data.errorMessage + ' (그룹명)', |
||||
isHistoryBack: false, |
||||
isRefresh: false |
||||
}) |
||||
); |
||||
} |
||||
throw Error; |
||||
} |
||||
} catch (error) { |
||||
thunkAPI.dispatch( |
||||
isError({ |
||||
errorCode: ERROR_MESSAGE.code, |
||||
errorMessage: ERROR_MESSAGE.message, |
||||
isHistoryBack: false, |
||||
isRefresh: false |
||||
}) |
||||
); |
||||
return rejectWithValue(error); |
||||
} |
||||
} |
||||
); |
||||
|
||||
// 그룹 수정
|
||||
export const updateGroup = createAsyncThunk( |
||||
'basis/updateGroup', |
||||
async (rq: IUpdateGroupRq, thunkAPI) => { |
||||
const { rejectWithValue } = thunkAPI; |
||||
|
||||
try { |
||||
const { data } = await axios.put('api/bas/group/update', rq); |
||||
|
||||
if (data.result) { |
||||
thunkAPI.dispatch( |
||||
isMessage({ |
||||
messageCode: SAVE_MESSAGE.code, |
||||
message: SAVE_MESSAGE.message, |
||||
isHistoryBack: true, |
||||
isRefresh: false |
||||
}) |
||||
); |
||||
} else { |
||||
if (data.errorCode === 'DT002') { |
||||
thunkAPI.dispatch( |
||||
isError({ |
||||
errorCode: ERROR_MESSAGE.code, |
||||
errorMessage: data.errorMessage + ' (그룹명)', |
||||
isHistoryBack: false, |
||||
isRefresh: false |
||||
}) |
||||
); |
||||
} |
||||
throw Error; |
||||
} |
||||
} catch (error) { |
||||
thunkAPI.dispatch( |
||||
isError({ |
||||
errorCode: ERROR_MESSAGE.code, |
||||
errorMessage: ERROR_MESSAGE.message, |
||||
isHistoryBack: false, |
||||
isRefresh: false |
||||
}) |
||||
); |
||||
return rejectWithValue(error); |
||||
} |
||||
} |
||||
); |
||||
|
||||
// 그룹 삭제
|
||||
export const deleteGroup = createAsyncThunk( |
||||
'basis/deleteGroup', |
||||
async (id: string, thunkAPI) => { |
||||
const { rejectWithValue } = thunkAPI; |
||||
|
||||
try { |
||||
const { data } = await axios.delete(`api/bas/group/delete/${id}`); |
||||
|
||||
if (data.result) { |
||||
thunkAPI.dispatch( |
||||
isMessage({ |
||||
messageCode: DELETE_MESSAGE.code, |
||||
message: DELETE_MESSAGE.message, |
||||
isHistoryBack: true, |
||||
isRefresh: false |
||||
}) |
||||
); |
||||
} else { |
||||
throw Error; |
||||
} |
||||
} catch (error) { |
||||
thunkAPI.dispatch( |
||||
isError({ |
||||
errorCode: ERROR_MESSAGE.code, |
||||
errorMessage: ERROR_MESSAGE.message, |
||||
isHistoryBack: false, |
||||
isRefresh: false |
||||
}) |
||||
); |
||||
return rejectWithValue(error); |
||||
} |
||||
} |
||||
); |
||||
|
||||
// 그룹 코드 생성
|
||||
export const createGroupId = createAsyncThunk( |
||||
'basis/createGroupId', |
||||
async (_, thunkAPI) => { |
||||
const { rejectWithValue } = thunkAPI; |
||||
try { |
||||
const { data } = await axios.get('api/bas/group/createid'); |
||||
return data.result; |
||||
} catch (error) { |
||||
return rejectWithValue(error); |
||||
} |
||||
} |
||||
); |
||||
|
||||
// 그룹 가입 요청
|
||||
export const joinGroup = createAsyncThunk( |
||||
'basis/joinGroup', |
||||
async (rq: IJoinGroupRq, thunkAPI) => { |
||||
const { rejectWithValue } = thunkAPI; |
||||
|
||||
try { |
||||
const { data } = await axios.post('api/bas/group/join/create', rq); |
||||
|
||||
if (data.result) { |
||||
thunkAPI.dispatch( |
||||
isMessage({ |
||||
messageCode: SAVE_MESSAGE.code, |
||||
message: SAVE_MESSAGE.message, |
||||
isHistoryBack: true, |
||||
isRefresh: false |
||||
}) |
||||
); |
||||
} else { |
||||
throw Error; |
||||
} |
||||
} catch (error) { |
||||
thunkAPI.dispatch( |
||||
isError({ |
||||
errorCode: ERROR_MESSAGE.code, |
||||
errorMessage: ERROR_MESSAGE.message, |
||||
isHistoryBack: false, |
||||
isRefresh: false |
||||
}) |
||||
); |
||||
return rejectWithValue(error); |
||||
} |
||||
} |
||||
); |
||||
|
||||
// 가입한 그룹 상태값 변경
|
||||
export const leaveGroup = createAsyncThunk( |
||||
'basis/leaveGroup', |
||||
async (rq: ILeaveGroupRq, thunkAPI) => { |
||||
const { rejectWithValue } = thunkAPI; |
||||
|
||||
try { |
||||
const { data } = await axios.put('api/bas/group/join/update', rq); |
||||
|
||||
if (data.result) { |
||||
thunkAPI.dispatch( |
||||
isMessage({ |
||||
messageCode: SAVE_MESSAGE.code, |
||||
message: SAVE_MESSAGE.message, |
||||
isHistoryBack: false, |
||||
isRefresh: true |
||||
}) |
||||
); |
||||
} else { |
||||
throw Error; |
||||
} |
||||
} catch (error) { |
||||
thunkAPI.dispatch( |
||||
isError({ |
||||
errorCode: ERROR_MESSAGE.code, |
||||
errorMessage: ERROR_MESSAGE.message, |
||||
isHistoryBack: false, |
||||
isRefresh: false |
||||
}) |
||||
); |
||||
return rejectWithValue(error); |
||||
} |
||||
} |
||||
); |
||||
|
||||
// 승인관리 목록
|
||||
export const getAprvList = createAsyncThunk( |
||||
'basis/getAprvList', |
||||
async (data: string, thunkAPI) => { |
||||
const { rejectWithValue } = thunkAPI; |
||||
|
||||
try { |
||||
const queryString = qs.stringify(data, { |
||||
addQueryPrefix: true, |
||||
arrayFormat: 'repeat' |
||||
}); |
||||
const res: any = await axios.get(`api/bas/group/aprv/list${queryString}`); |
||||
|
||||
const { |
||||
data: { items, total }, |
||||
count |
||||
} = res; |
||||
|
||||
return { |
||||
data: items, |
||||
count, |
||||
total |
||||
}; |
||||
} catch (error) { |
||||
return rejectWithValue(error); |
||||
} |
||||
} |
||||
); |
||||
|
||||
// 승인처리
|
||||
export const updateAprv = createAsyncThunk( |
||||
'basis/updateAprv', |
||||
async (rq: IUpdateApprovalRq, thunkAPI) => { |
||||
const { rejectWithValue } = thunkAPI; |
||||
|
||||
try { |
||||
const { data } = await axios.put('api/bas/group/aprv/update', rq); |
||||
|
||||
if (data.result) { |
||||
thunkAPI.dispatch( |
||||
isMessage({ |
||||
messageCode: SAVE_MESSAGE.code, |
||||
message: SAVE_MESSAGE.message, |
||||
isHistoryBack: false, |
||||
isRefresh: true |
||||
}) |
||||
); |
||||
} else { |
||||
throw Error; |
||||
} |
||||
} catch (error) { |
||||
thunkAPI.dispatch( |
||||
isError({ |
||||
errorCode: ERROR_MESSAGE.code, |
||||
errorMessage: ERROR_MESSAGE.message, |
||||
isHistoryBack: false, |
||||
isRefresh: false |
||||
}) |
||||
); |
||||
return rejectWithValue(error); |
||||
} |
||||
} |
||||
); |
||||
|
||||
// 사용자관리 목록
|
||||
export const getUserList = createAsyncThunk( |
||||
'basis/getUserList', |
||||
async (rq: string, thunkAPI) => { |
||||
const { rejectWithValue } = thunkAPI; |
||||
|
||||
try { |
||||
const queryString = qs.stringify(rq, { |
||||
addQueryPrefix: true, |
||||
arrayFormat: 'repeat' |
||||
}); |
||||
const res: any = await axios.get(`api/bas/group/user/list${queryString}`); |
||||
|
||||
const { |
||||
data: { items, total }, |
||||
count |
||||
} = res; |
||||
|
||||
return { |
||||
data: items, |
||||
count, |
||||
total |
||||
}; |
||||
} catch (error) { |
||||
return rejectWithValue(error); |
||||
} |
||||
} |
||||
); |
||||
|
||||
// 사용자 권한 수정
|
||||
export const updateUserAccess = createAsyncThunk( |
||||
'basis/updateUserAccess', |
||||
async (rq: IUpdateUserAccessRq, thunkAPI) => { |
||||
const { rejectWithValue } = thunkAPI; |
||||
|
||||
try { |
||||
const { data } = await axios.put('api/bas/group/user/update', rq); |
||||
|
||||
if (data.result) { |
||||
thunkAPI.dispatch( |
||||
isMessage({ |
||||
messageCode: SAVE_MESSAGE.code, |
||||
message: SAVE_MESSAGE.message, |
||||
isHistoryBack: false, |
||||
isRefresh: true |
||||
}) |
||||
); |
||||
} else { |
||||
throw Error; |
||||
} |
||||
} catch (error) { |
||||
thunkAPI.dispatch( |
||||
isError({ |
||||
errorCode: ERROR_MESSAGE.code, |
||||
errorMessage: ERROR_MESSAGE.message, |
||||
isHistoryBack: false, |
||||
isRefresh: false |
||||
}) |
||||
); |
||||
return rejectWithValue(error); |
||||
} |
||||
} |
||||
); |
||||
|
||||
// master 권한 위임
|
||||
export const delegateUser = createAsyncThunk( |
||||
'basis/delegateUser', |
||||
async (rq: IUpdateUserAccessRq[], thunkAPI) => { |
||||
const { rejectWithValue } = thunkAPI; |
||||
|
||||
try { |
||||
const { data } = await axios.put('api/bas/group/user/delegate', rq); |
||||
|
||||
if (data.result) { |
||||
thunkAPI.dispatch( |
||||
isMessage({ |
||||
messageCode: SAVE_MESSAGE.code, |
||||
message: SAVE_MESSAGE.message, |
||||
isHistoryBack: false, |
||||
isRefresh: true |
||||
}) |
||||
); |
||||
} else { |
||||
throw Error; |
||||
} |
||||
} catch (error) { |
||||
thunkAPI.dispatch( |
||||
isError({ |
||||
errorCode: ERROR_MESSAGE.code, |
||||
errorMessage: ERROR_MESSAGE.message, |
||||
isHistoryBack: false, |
||||
isRefresh: false |
||||
}) |
||||
); |
||||
return rejectWithValue(error); |
||||
} |
||||
} |
||||
); |
Loading…
Reference in new issue