123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- // import { query as queryUsers, queryCurrent } from '../services/user';
- import { query as queryUsers, queryCurrent, queryMenus } from '../services/user';
- import {getMenuData} from "../common/menu";
-
- export default {
- namespace: 'user',
-
- state: {
- list: [],
- currentUser: {},
- menuData: [],
- },
-
- effects: {
- *fetch(_, { call, put }) {
- const response = yield call(queryUsers);
- yield put({
- type: 'save',
- payload: response,
- });
- },
- *fetchCurrent(_, { call, put }) {
- const response = yield call(queryCurrent);
- yield put({
- type: 'saveCurrentUser',
- payload: response,
- });
- },
- *fetchMenus(_, { call, put }) {
- const response = yield call(queryMenus);
- const menus = getMenuData(response)
- yield put({
- type: 'saveMenus',
- payload: menus,
- });
- },
- },
-
- reducers: {
- save(state, action) {
- return {
- ...state,
- list: action.payload,
- };
- },
- saveCurrentUser(state, action) {
- return {
- ...state,
- currentUser: action.payload,
- };
- },
- changeNotifyCount(state, action) {
- return {
- ...state,
- currentUser: {
- ...state.currentUser,
- notifyCount: action.payload,
- },
- };
- },
- saveMenus(state, action) {
- return {
- ...state,
- menuData: action.payload,
- };
- },
- },
- };
|