Redux -> simple fixes & upgrade slices
parent
39c796eb1a
commit
e660ccce6f
|
|
@ -16,7 +16,7 @@ const _getList = async (endpoint, token) => {
|
||||||
|
|
||||||
const _getOne = async (endpoint, objectId, token) => {
|
const _getOne = async (endpoint, objectId, token) => {
|
||||||
return await responseAbstract(
|
return await responseAbstract(
|
||||||
endpoint + objectId,
|
endpoint + objectId + '/',
|
||||||
'GET',
|
'GET',
|
||||||
token,
|
token,
|
||||||
defaultBody
|
defaultBody
|
||||||
|
|
@ -34,7 +34,7 @@ const _post = async (endpoint, body, token) => {
|
||||||
|
|
||||||
const _patch = async (endpoint, objectId, body, token) => {
|
const _patch = async (endpoint, objectId, body, token) => {
|
||||||
return await responseAbstract(
|
return await responseAbstract(
|
||||||
endpoint + objectId,
|
endpoint + objectId + '/',
|
||||||
'PATCH',
|
'PATCH',
|
||||||
token,
|
token,
|
||||||
body
|
body
|
||||||
|
|
@ -43,7 +43,7 @@ const _patch = async (endpoint, objectId, body, token) => {
|
||||||
|
|
||||||
const _put = async (endpoint, objectId, body, token) => {
|
const _put = async (endpoint, objectId, body, token) => {
|
||||||
return await responseAbstract(
|
return await responseAbstract(
|
||||||
endpoint + objectId,
|
endpoint + objectId + '/',
|
||||||
'PUT',
|
'PUT',
|
||||||
token,
|
token,
|
||||||
body
|
body
|
||||||
|
|
@ -52,7 +52,7 @@ const _put = async (endpoint, objectId, body, token) => {
|
||||||
|
|
||||||
const _delete = async (endpoint, objectId, token) => {
|
const _delete = async (endpoint, objectId, token) => {
|
||||||
return await responseAbstract(
|
return await responseAbstract(
|
||||||
endpoint + objectId,
|
endpoint + objectId + '/',
|
||||||
'DELETE',
|
'DELETE',
|
||||||
token,
|
token,
|
||||||
defaultBody
|
defaultBody
|
||||||
|
|
|
||||||
|
|
@ -17,6 +17,25 @@ const fetchGetAllUsers = createAsyncThunk(
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param body:
|
||||||
|
* param token: token
|
||||||
|
* param user_id: user_id
|
||||||
|
*/
|
||||||
|
const fetchGetOneUser = createAsyncThunk(
|
||||||
|
'user/fetchGetAllUsers',
|
||||||
|
async (
|
||||||
|
body,
|
||||||
|
thunkAPI
|
||||||
|
) => {
|
||||||
|
return await abstractService._getOne(
|
||||||
|
endpoint,
|
||||||
|
body.user_id,
|
||||||
|
body.token
|
||||||
|
)
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param body:
|
* @param body:
|
||||||
* param username: username string
|
* param username: username string
|
||||||
|
|
@ -30,14 +49,60 @@ const fetchRegister = createAsyncThunk(
|
||||||
thunkAPI
|
thunkAPI
|
||||||
) => {
|
) => {
|
||||||
return await abstractService._post(
|
return await abstractService._post(
|
||||||
trueEndpoint,
|
endpoint,
|
||||||
body,
|
body,
|
||||||
''
|
''
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param body:
|
||||||
|
* param token: token
|
||||||
|
* param user_id: user_id
|
||||||
|
* param user:
|
||||||
|
* param username: username
|
||||||
|
* param password: password
|
||||||
|
* param email: email
|
||||||
|
*/
|
||||||
|
const fetchUpdateUser = createAsyncThunk(
|
||||||
|
'user/fetchRegister',
|
||||||
|
async (
|
||||||
|
body,
|
||||||
|
thunkAPI
|
||||||
|
) => {
|
||||||
|
return await abstractService._patch(
|
||||||
|
endpoint,
|
||||||
|
body.user_id,
|
||||||
|
body.user,
|
||||||
|
body.token
|
||||||
|
)
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param body:
|
||||||
|
* param user_id: user_id
|
||||||
|
* param token: user token
|
||||||
|
*/
|
||||||
|
const fetchDeleteUser = createAsyncThunk(
|
||||||
|
'user/fetchRegister',
|
||||||
|
async (
|
||||||
|
body,
|
||||||
|
thunkAPI
|
||||||
|
) => {
|
||||||
|
return await abstractService._delete(
|
||||||
|
endpoint,
|
||||||
|
body.user_id,
|
||||||
|
body.token
|
||||||
|
)
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
fetchGetAllUsers,
|
fetchGetAllUsers,
|
||||||
fetchRegister
|
fetchGetOneUser,
|
||||||
|
fetchRegister,
|
||||||
|
fetchUpdateUser,
|
||||||
|
fetchDeleteUser
|
||||||
}
|
}
|
||||||
|
|
@ -5,13 +5,13 @@ const renderCrudSlice = createSlice(
|
||||||
{
|
{
|
||||||
name: 'render',
|
name: 'render',
|
||||||
initialState: {
|
initialState: {
|
||||||
models_list: [],
|
render_list: [],
|
||||||
download_zip_file: ''
|
download_zip_file: ''
|
||||||
},
|
},
|
||||||
reducers: {},
|
reducers: {},
|
||||||
extraReducers: {
|
extraReducers: {
|
||||||
[renderCrudAsyncThunk.fetchGetAllRenders.fulfilled.type]: (state, action) => {
|
[renderCrudAsyncThunk.fetchGetAllRenders.fulfilled.type]: (state, action) => {
|
||||||
state.renders_list = action.payload.data
|
state.render_list = action.payload.data.render_list
|
||||||
},
|
},
|
||||||
[renderCrudAsyncThunk.fetchGetOneRenderAndDownload.fulfilled.type]: (state, action) => {
|
[renderCrudAsyncThunk.fetchGetOneRenderAndDownload.fulfilled.type]: (state, action) => {
|
||||||
state.download_zip_file = action.payload.data
|
state.download_zip_file = action.payload.data
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,37 @@
|
||||||
|
import { createSlice } from '@reduxjs/toolkit'
|
||||||
|
import userAuthAsyncThunk from '../asyncThunks/userAuthAsyncThunk'
|
||||||
|
|
||||||
|
const userAuthSlice = createSlice(
|
||||||
|
{
|
||||||
|
name: 'user/auth',
|
||||||
|
initialState: {
|
||||||
|
token: '',
|
||||||
|
user: {
|
||||||
|
id: 0,
|
||||||
|
username: '',
|
||||||
|
email: ''
|
||||||
|
}
|
||||||
|
},
|
||||||
|
reducers: {},
|
||||||
|
extraReducers: {
|
||||||
|
[userAuthAsyncThunk.fetchLogin.fulfilled.type]: (state, action) => {
|
||||||
|
state.token = action.payload.data.Authorization
|
||||||
|
state.user.id = action.payload.data.user.id
|
||||||
|
state.user.username = action.payload.data.user.username
|
||||||
|
state.user.email = action.payload.data.user.email
|
||||||
|
state.info = 'login success'
|
||||||
|
},
|
||||||
|
[userAuthAsyncThunk.fetchLogout.fulfilled.type]: (state, action) => {
|
||||||
|
state.token = ''
|
||||||
|
state.user.id = 0
|
||||||
|
state.user.username = ''
|
||||||
|
state.user.email = ''
|
||||||
|
state.info = action.payload.data.info
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
export const userAuthReducer = userAuthSlice.reducer
|
||||||
|
|
||||||
|
export const userAuthSelector = state => state.userAuthReducer
|
||||||
|
|
@ -0,0 +1,41 @@
|
||||||
|
import { createSlice } from '@reduxjs/toolkit'
|
||||||
|
import userCrudAsyncThunk from '../asyncThunks/userCrudAsyncThunk'
|
||||||
|
|
||||||
|
const userCrudSlice = createSlice(
|
||||||
|
{
|
||||||
|
name: 'user',
|
||||||
|
initialState: {
|
||||||
|
users_list: [],
|
||||||
|
user_get: {},
|
||||||
|
user_register: {},
|
||||||
|
user_update: {},
|
||||||
|
user_delete: ''
|
||||||
|
},
|
||||||
|
reducers: {},
|
||||||
|
extraReducers: {
|
||||||
|
[userCrudAsyncThunk.fetchGetAllUsers.fulfilled.type]: (state, action) => {
|
||||||
|
state.users_list = action.payload.data
|
||||||
|
},
|
||||||
|
[userCrudAsyncThunk.fetchGetOneUser.fulfilled.type]: (state, action) => {
|
||||||
|
state.user_get = action.payload.data
|
||||||
|
},
|
||||||
|
[userCrudAsyncThunk.fetchRegister.fulfilled.type]: (state, action) => {
|
||||||
|
state.user_register = action.payload.data
|
||||||
|
},
|
||||||
|
[userCrudAsyncThunk.fetchUpdateUser.fulfilled.type]: (state, action) => {
|
||||||
|
state.user_update = action.payload.data
|
||||||
|
},
|
||||||
|
[userCrudAsyncThunk.fetchDeleteUser.fulfilled.type]: (state, action) => {
|
||||||
|
state.users_list = []
|
||||||
|
state.user_get = {}
|
||||||
|
state.user_register = {}
|
||||||
|
state.user_update = {}
|
||||||
|
state.user_delete = 'true'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
export const userCrudReducer = userCrudSlice.reducer
|
||||||
|
|
||||||
|
export const userCrudSelector = state => state.userCrudReducer
|
||||||
Loading…
Reference in New Issue