import Vue from 'vue';
import Vuex from 'vuex';
import _ from 'lodash';
//用户的菜单选项增删改查
Vue.use(Vuex);
const api = {
  interface: `/api/onlive/user`,
  getMenu: `/api/onlive/user/menus`,
  bindInfo: `/api/onlive/user/bind`,
};
const state = () => ({});
const mutations = {};

const actions = {
  async query({ commit }, { skip = 0, limit = undefined, ...info } = {}) {
    const res = await this.$axios.$get(api.interface, { skip, limit, ...info });
    return res;
  },
  async create({ commit }, payload) {
    const res = await this.$axios.$post(`${api.interface}`, payload);
    return res;
  },
  async fetch({ commit }, payload) {
    //特殊变化,查用户菜单
    const res = await this.$axios.$get(`${api.getMenu}`, payload);
    return res;
  },
  async update({ commit }, { id, ...info } = {}) {
    const res = await this.$axios.$post(`${api.interface}/update/${id}`, {
      ...info,
    });
    return res;
  },
  async delete({ commit }, payload) {
    const res = await this.$axios.$delete(`${api.interface}/${payload}`);
    return res;
  },
  async bind({ commit }, payload) {
    const res = await this.$axios.$post(`${api.bindInfo}`, payload);
    return res;
  },
};

export default {
  namespaced: true,
  state,
  mutations,
  actions,
};
