|
@@ -1,12 +1,12 @@
|
|
|
import * as types from "../constants/actionTypes";
|
|
|
|
|
|
-import data from "../utils/fakeData";
|
|
|
-
|
|
|
const initState = {
|
|
|
- list: data,
|
|
|
- loads: [{ id: new Date().getTime(), name: "" }],
|
|
|
- initialValues: {}
|
|
|
- // editObject: {}
|
|
|
+ list: [],
|
|
|
+ isFetchng: false,
|
|
|
+ error: null,
|
|
|
+ initialValues: {},
|
|
|
+ editObject: {},
|
|
|
+ addObject: {}
|
|
|
};
|
|
|
|
|
|
export default (state = initState, { type, payload, meta }) => {
|
|
@@ -48,6 +48,50 @@ export default (state = initState, { type, payload, meta }) => {
|
|
|
// return state;
|
|
|
// }
|
|
|
|
|
|
+ case types.GET_LOADS: {
|
|
|
+ return { ...state, isFetchng: true };
|
|
|
+ }
|
|
|
+ case types.GET_LOADS_SUCCESS: {
|
|
|
+ const { data } = payload;
|
|
|
+
|
|
|
+ const list = Object.keys(data).reduce((prev, el) => {
|
|
|
+ return prev.concat({ ...data[el], id: el });
|
|
|
+ }, []);
|
|
|
+ return { ...state, isFetchng: false, list };
|
|
|
+ }
|
|
|
+ case types.GET_LOADS_FAIL: {
|
|
|
+ return { ...state, isFetchng: false, error: payload };
|
|
|
+ }
|
|
|
+
|
|
|
+ case types.POST_LOADS: {
|
|
|
+ return { ...state, isFetchng: true, addObject: payload };
|
|
|
+ }
|
|
|
+ case types.POST_LOADS_SUCCESS: {
|
|
|
+ const { data } = payload;
|
|
|
+ const newObject = { ...state.addObject, id: data.name };
|
|
|
+
|
|
|
+ return { ...state, isFetchng: false, list: state.list.concat(newObject) };
|
|
|
+ }
|
|
|
+ case types.POST_LOADS_FAIL: {
|
|
|
+ return { ...state, isFetchng: false, error: payload };
|
|
|
+ }
|
|
|
+
|
|
|
+ case types.EDIT_LOADS_REQUEST: {
|
|
|
+ return { ...state, isFetchng: true };
|
|
|
+ }
|
|
|
+ case types.EDIT_LOADS_REQUEST_SUCCESS: {
|
|
|
+ const { data } = payload;
|
|
|
+
|
|
|
+ const list = state.list.map(el => (el.id === data.id ? data : el));
|
|
|
+
|
|
|
+ console.log(list);
|
|
|
+
|
|
|
+ return { ...state, isFetchng: false, list };
|
|
|
+ }
|
|
|
+ case types.EDIT_LOADS_REQUEST_FAIL: {
|
|
|
+ return { ...state, isFetchng: false, error: payload };
|
|
|
+ }
|
|
|
+
|
|
|
default:
|
|
|
return state;
|
|
|
}
|