123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- import { message } from 'antd';
- import { routerRedux } from 'dva/router';
- import {
- queryCoursewareList,
- queryCoursewareItem,
- createCoursewareItem,
- updateCoursewareItem,
- deleteCoursewareItem,
- } from '../services/courseware';
- export default {
- namespace: 'courseware',
- state: {
- list: [],
- pageNo: 1,
- pageSize: 15,
- totalSize: 0,
- currentItem: {},
- },
- effects: {
- *fetchCoursewareList({ payload }, { call, put }) {
- const response = yield call(queryCoursewareList, payload);
- if (response.success) {
- message.success('加载课件列表成功');
- yield put({
- type: 'querySuccess',
- payload: {
- list: response.data.list || [],
- pageSize: response.data.pageSize,
- totalSize: response.data.totalSize,
- pageNo: response.data.pageNo,
- },
- });
- }
- },
- *fetchCoursewareItem({ payload }, { call, put }) {
- const response = yield call(queryCoursewareItem, payload);
- if (response.success) {
- message.success('加载课件详情成功');
- yield put({
- type: 'querySuccess',
- payload: {
- currentItem: response.data || {},
- },
- });
- }
- },
- *createCoursewareItem({ payload, state }, { call, put }) {
- const response = yield call(createCoursewareItem, payload);
- if (response.success) {
- message.success('创建课件成功');
- yield put(routerRedux.push({
- state,
- pathname: '/product/courseware',
- }));
- }
- },
- *deleteCoursewareItem({ payload, states }, { call, put }) {
- const response = yield call(deleteCoursewareItem, payload);
- if (response.success) {
- message.success('删除课件成功');
- yield put({
- type: 'fetchCoursewareList',
- payload: states.Queryers,
- });
- }
- },
- *updateCoursewareItem({ payload, states }, { call, put }) {
- const response = yield call(updateCoursewareItem, payload);
- if (response.success) {
- message.success('修改课件成功');
- yield put(routerRedux.push({
- pathname: '/product/courseware',
- state: states,
- }));
- }
- },
- },
- reducers: {
- querySuccess(state, action) {
- return {
- ...state,
- ...action.payload,
- };
- },
- fixResourceList(state, action) {
- return {
- ...state,
- currentItem: {
- ...state.currentItem,
- resourceList: action.payload,
- }
- };
- },
- cleanItemState(state) {
- return {
- ...state,
- currentItem: {},
- };
- },
- },
- };
|