import { routerRedux } from 'dva/router'; import { message } from 'antd'; import { createImage, deleteImage, updateImage, queryImageResource, queryVideoResource, } from '../services/resource'; export default { namespace: 'resource', state: { list: [], pageNo: 1, pageSize: 15, totalSize: 0, }, effects: { *fetchImageList({ payload }, { call, put }) { const response = yield call(queryImageResource, payload); if (response.success) { yield put({ type: 'querySuccess', payload: { list: response.data.list || [], pageSize: response.data.pageSize, totalSize: response.data.totalSize, pageNo: response.data.pageNo, }, }); } }, *fetchVideoList({ payload }, { call, put }) { const response = yield call(queryVideoResource, payload); if (response.success) { yield put({ type: 'querySuccess', payload: { list: response.data.list || [], pageSize: response.data.pageSize, totalSize: response.data.totalSize, pageNo: response.data.pageNo, }, }); } }, *createImage({ payload }, { call, put }) { const response = yield call(createImage, payload); if (response && response.success) { yield put( routerRedux.push({ pathname: '/resource/picture-upload/result', state: response.data, }) ); } }, *updateImage({ payload, states }, { call, put }) { const response = yield call(updateImage, payload); if (response && response.success) { message.success('修改图片成功'); yield put(routerRedux.push({ pathname: '/resource/picture', state: states, })); } }, *deleteImage({ payload, states }, { call, put }) { const response = yield call(deleteImage, payload); if (response && response.success) { message.success('删除图片成功'); yield put({ type: 'fetchImageList', payload: states, }); } }, }, reducers: { querySuccess(state, action) { return { ...state, ...action.payload, }; }, }, };