import Vue from 'vue';
import Vuex from 'vuex';
const _ = require('lodash');
Vue.use(Vuex);
const api = {
  url: '/point/v1/api/goods',
};

const state = () => ({});
const mutations = {};

const actions = {
  async query({ commit }, { skip = 0, limit, ...info } = {}) {
    const res = await this.$axios.$get(`${api.url}`, {
      skip,
      limit,
      ...info,
    });
    return res;
  },
  async create({ commit }, payload) {
    const res = await this.$axios.$post(`${api.url}`, payload);
    return res;
  },
  async fetch({ commit }, payload) {
    const res = await this.$axios.$get(`${api.url}/${payload}`);
    return res;
  },
  async update({ commit }, payload) {
    const id = _.get(payload, 'id', _.get(payload, '_id'));
    const res = await this.$axios.$post(`${api.url}/${id}`, payload);
    return res;
  },
  async delete({ commit }, payload) {
    const res = await this.$axios.$delete(`${api.url}/${payload}`);
    return res;
  },
};
export default {
  namespaced: true,
  state,
  mutations,
  actions,
};
