upload, parse and store door lock entries
This commit is contained in:
@@ -4,14 +4,21 @@ import {
|
||||
UPLOAD_DOOR_LOCK_DATA_FAILED
|
||||
} from "../constants";
|
||||
|
||||
export const uploadDoorLockData = (dispatch) => {
|
||||
import API from '../../utilities/api';
|
||||
|
||||
export const uploadDoorLockData = (dispatch, doorLockDataFile) => {
|
||||
const formData = new FormData();
|
||||
formData.append('doorLockDataFile', doorLockDataFile);
|
||||
const additionalConfig = {
|
||||
headers: {'content-type': 'multipart/form-data'}
|
||||
};
|
||||
|
||||
dispatch({type: UPLOAD_DOOR_LOCK_DATA_PENDING});
|
||||
fetch('/api/doorLockData')
|
||||
.then(response => response.json())
|
||||
.then(data => {
|
||||
dispatch({type: UPLOAD_DOOR_LOCK_DATA_SUCCESS, payload: data})
|
||||
})
|
||||
.catch(err => {
|
||||
dispatch({type: UPLOAD_DOOR_LOCK_DATA_FAILED, payload: err})
|
||||
API.post('doorLock/upload', formData, additionalConfig)
|
||||
.then(response => {
|
||||
dispatch({type: UPLOAD_DOOR_LOCK_DATA_SUCCESS, payload: response.data})
|
||||
})
|
||||
.catch(error => {
|
||||
dispatch({type: UPLOAD_DOOR_LOCK_DATA_FAILED, payload: error.response})
|
||||
});
|
||||
};
|
||||
|
||||
@@ -7,7 +7,7 @@ import {
|
||||
const initialState = {
|
||||
pending: false,
|
||||
result: {},
|
||||
error: '',
|
||||
error: null,
|
||||
};
|
||||
|
||||
export const doorLockData = (state, action) => {
|
||||
@@ -18,15 +18,18 @@ export const doorLockData = (state, action) => {
|
||||
case UPLOAD_DOOR_LOCK_DATA_PENDING:
|
||||
return Object.assign({}, state, {
|
||||
pending: true,
|
||||
error: null,
|
||||
});
|
||||
case UPLOAD_DOOR_LOCK_DATA_SUCCESS:
|
||||
return Object.assign({}, state, {
|
||||
pending: false,
|
||||
result: action.payload,
|
||||
error: null,
|
||||
});
|
||||
case UPLOAD_DOOR_LOCK_DATA_FAILED:
|
||||
return Object.assign({}, state, {
|
||||
pending: false,
|
||||
result: {},
|
||||
error: action.payload,
|
||||
});
|
||||
default:
|
||||
|
||||
Reference in New Issue
Block a user