util.js 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. //这个js是查询单条的工具接口,因为不是所有查询单条的情况都有id
  2. //可能用几个条件就可以确定数据的唯一性,所以有这个接口
  3. import Vue from 'vue';
  4. import Vuex from 'vuex';
  5. import _ from 'lodash';
  6. import axios from 'axios';
  7. Vue.use(Vuex);
  8. const api = {
  9. interface: modelname => `/api/train/common/findone/${modelname}`,
  10. findModel: model => `/api/train/common/findbymodel?modelname=${model}`,
  11. findByIds: model => `/api/train/common/findbyids/${model}`,
  12. util: `/api/train/util`,
  13. };
  14. const state = () => ({});
  15. const mutations = {};
  16. const actions = {
  17. async fetch({ commit }, { skip, limit, model, ...info } = {}) {
  18. const res = await this.$axios.$get(`${api.interface(model)}`, { skip, limit, ...info });
  19. return res;
  20. },
  21. async findModel({ commit }, payload) {
  22. const res = await this.$axios.$get(`${api.findModel(payload)}`);
  23. return res;
  24. },
  25. async findIds({ commit }, { model, ids }) {
  26. const res = await this.$axios.$get(`${api.findByIds(model)}`, { data: ids });
  27. return res;
  28. },
  29. async utilMethod({ commit }, payload) {
  30. const res = await this.$axios.$post(`${api.util}`, payload);
  31. },
  32. };
  33. export default {
  34. namespaced: true,
  35. state,
  36. mutations,
  37. actions,
  38. };