@omegabigdata/honoplay-redux-helper
Version:
honoplay-redux-helper
100 lines (92 loc) • 2.63 kB
JavaScript
import {
CREATE_CLASSROOM_FAILED,
CREATE_CLASSROOM_SUCCESS,
CREATING_CLASSROOM,
FETCHING_CLASSROOM,
FETCHING_CLASSROOM_LIST,
FETCH_CLASSROOM_FAILED,
FETCH_CLASSROOM_LIST_FAILED,
FETCH_CLASSROOM_LIST_SUCCESS,
FETCH_CLASSROOM_SUCCESS,
UPDATE_CLASSROOM_FAILED,
UPDATE_CLASSROOM_SUCCESS,
UPDATING_CLASSROOM,
FETCHING_CLASSROOM_BY_TRAININGID_LIST,
FETCH_CLASSROOM_BY_TRAININGID_LIST_FAILED,
FETCH_CLASSROOM_BY_TRAININGID_LIST_SUCCESS
} from "../helpers/ActionTypes/Classroom";
import { Classroom } from "@omegabigdata/honoplay-api-helper-node";
const fetchClassroomListByTrainingId = trainingId => dispatch => {
dispatch({ type: FETCHING_CLASSROOM_BY_TRAININGID_LIST });
Classroom.getClassroomByTrainingId(
trainingId,
success => {
dispatch({
type: FETCH_CLASSROOM_BY_TRAININGID_LIST_SUCCESS,
data: success.data
});
},
error => {
dispatch({
type: FETCH_CLASSROOM_BY_TRAININGID_LIST_FAILED,
data: { error }
});
}
);
};
const fetchClassroomList = (skip = null, take = null) => dispatch => {
dispatch({ type: FETCHING_CLASSROOM_LIST });
Classroom.getClassroomList(
skip,
take,
success => {
dispatch({ type: FETCH_CLASSROOM_LIST_SUCCESS, data: success.data });
},
error => {
dispatch({ type: FETCH_CLASSROOM_LIST_FAILED, data: { error } });
}
);
};
const fetchClassroom = classroomId => dispatch => {
dispatch({ type: FETCHING_CLASSROOM });
Classroom.getClassroom(
classroomId,
success => {
dispatch({ type: FETCH_CLASSROOM_SUCCESS, data: success.data });
},
error => {
dispatch({ type: FETCH_CLASSROOM_FAILED, data: { error } });
}
);
};
const createClassroom = classroomModel => dispatch => {
dispatch({ type: CREATING_CLASSROOM });
Classroom.postClassroom(
classroomModel,
success => {
dispatch({ type: CREATE_CLASSROOM_SUCCESS, data: success.data });
},
error => {
dispatch({ type: CREATE_CLASSROOM_FAILED, data: { error } });
}
);
};
const updateClassroom = classroomModel => dispatch => {
dispatch({ type: UPDATING_CLASSROOM });
Classroom.putClassroom(
classroomModel,
success => {
dispatch({ type: UPDATE_CLASSROOM_SUCCESS, data: success.data });
},
error => {
dispatch({ type: UPDATE_CLASSROOM_FAILED, data: { error } });
}
);
};
export {
fetchClassroomList,
fetchClassroom,
createClassroom,
updateClassroom,
fetchClassroomListByTrainingId
};