fetch and display door lock incidents on frontend

This commit is contained in:
Bilal Catic
2019-06-17 12:45:23 +02:00
parent f9bd84c9c5
commit 781943026a
7 changed files with 199 additions and 6 deletions

View File

@@ -5,7 +5,10 @@ import {
ADD_NEW_MAPPING_PENDING,
ADD_NEW_MAPPING_SUCCESS,
ADD_NEW_MAPPING_FAILED,
} from "../constants";
FETCH_INCIDENTS_PENDING,
FETCH_INCIDENTS_SUCCESS,
FETCH_INCIDENTS_FAILED,
} from '../constants';
import API from '../../utilities/api';
@@ -32,3 +35,14 @@ export const addNewMapping = (dispatch, mapping) => {
dispatch({type: ADD_NEW_MAPPING_FAILED, payload: error.response});
});
};
export const fetchIncidents = (dispatch) => {
dispatch({type: FETCH_INCIDENTS_PENDING});
API.get('integration/report/allIncidents')
.then(response => {
dispatch({type: FETCH_INCIDENTS_SUCCESS, payload: response.data});
})
.catch(error => {
dispatch({type: FETCH_INCIDENTS_FAILED, payload: error.response});
});
};

View File

@@ -9,3 +9,7 @@ export const FETCH_MAPPINGS_FAILED = 'FETCH_MAPPINGS_FAILED';
export const ADD_NEW_MAPPING_PENDING = 'ADD_NEW_MAPPING_PENDING';
export const ADD_NEW_MAPPING_SUCCESS = 'ADD_NEW_MAPPING_SUCCESS';
export const ADD_NEW_MAPPING_FAILED = 'ADD_NEW_MAPPING_FAILED';
export const FETCH_INCIDENTS_PENDING = 'FETCH_INCIDENTS_PENDING';
export const FETCH_INCIDENTS_SUCCESS = 'FETCH_INCIDENTS_SUCCESS';
export const FETCH_INCIDENTS_FAILED = 'FETCH_INCIDENTS_FAILED';

View File

@@ -0,0 +1,38 @@
import {
FETCH_INCIDENTS_PENDING,
FETCH_INCIDENTS_SUCCESS,
FETCH_INCIDENTS_FAILED,
} from '../constants';
const initialState = {
pending: false,
result: null,
error: null,
};
export const incidentsReport = (state, action) => {
state = state || initialState;
action = action || {};
switch(action.type){
case FETCH_INCIDENTS_PENDING:
return Object.assign({}, state, {
pending: true,
error: null,
});
case FETCH_INCIDENTS_SUCCESS:
return Object.assign({}, state, {
pending: false,
result: action.payload,
error: null,
});
case FETCH_INCIDENTS_FAILED:
return Object.assign({}, state, {
pending: false,
result: {},
error: action.payload,
});
default:
return state;
}
};

View File

@@ -1,12 +1,14 @@
import { combineReducers } from "redux";
import { combineReducers } from 'redux';
import { doorLockData} from "./doorLockReducers";
import { mappingsData } from "./mappingsReducer";
import { doorLockData} from './doorLockReducers';
import { mappingsData } from './mappingsReducer';
import { addMapping } from './addMappingReducer';
import { incidentsReport } from './incidentsReportReducer';
export const rootReducer = combineReducers({
doorLockData,
mappingsData,
addMapping,
incidentsReport,
});