Browse Source

[ADD] add more modules from resources

Gogs 7 years ago
parent
commit
4e84790e6a

+ 0 - 15
src/plugins/AxiosPlugin.js

@@ -1,15 +0,0 @@
-import Axios from 'axios'
-
-console.log(Axios)
-
-const AxiosPlugin = {
-    install(Vue, options) {
-        Vue.mixin({
-            mounted() {
-                console.log('mounted')
-            }
-        })
-    }
-}
-
-export default AxiosPlugin

+ 42 - 3
src/store/actions.js

@@ -1,14 +1,53 @@
 import axios from 'axios'
 
-const url = '/eiru_purchases/new'
+const newUrl = '/eiru_purchases/new'
+
+const createUrl = '/eiru_purchases/create'
 
 const actions = {
+    /**
+     * Get all resources to init purchase app
+     * @param {*} param0 
+     */
     initPurchase({ dispatch }) {
-        return axios.get(url).then(response => {
-            console.log(response.data)
+        return axios.get(newUrl).then(response => {
+            dispatch('explodeData', response.data)
+        }).catch(error => {
+            console.log(error)
+        })
+    },
+    /**
+     * 
+     * @param {*} param0 
+     * @param {*} payload 
+     */
+    explodeData({ commit }, payload) {
+        commit('setDate', payload.date)
+        commit('setUser', payload.user)
+        commit('setCurrencies', payload.currencies)
+        commit('setProducts', payload.products)
+        commit('setPickingTypes', payload.pickingTypes)
+        commit('setPaymentTerms', payload.paymentTerms)
+    },
+    /**
+     * Send data to create concrete purchase
+     * @param {*} param0 
+     */
+    createPurchase({ commit, dispatch }) {
+        return axios.post(createUrl, {
+
+        }).then(response => {
+            dispatch('resetPurchase')
         }).catch(error => {
             console.log(error)
         })
+    },
+    /**
+     * Reset all default app state 
+     * @param {*} param0 
+     */
+    resetPurchase({ getters }) {
+        console.log('reseting')
     }
 }
 

+ 11 - 0
src/store/getters.js

@@ -0,0 +1,11 @@
+const getters = {
+    /**
+     * Get date state
+     * @param {*} state 
+     */
+    date(state) {
+        return state.date.value
+    }
+}
+
+export default getters

+ 20 - 1
src/store/index.js

@@ -1,14 +1,33 @@
 import Vue from 'vue'
 import Vuex from 'vuex'
 
-import actions from '@/store/actions'
 import state from '@/store/state'
+import getters from '@/store/getters'
+import mutations from '@/store/mutations'
+import actions from '@/store/actions'
+
+import user from '@/store/modules/user'
+import currency from '@/store/modules/currency'
+import supplier from '@/store/modules/supplier'
+import product from '@/store/modules/product'
+import picking from '@/store/modules/picking'
+import payment from '@/store/modules/payment'
 
 Vue.use(Vuex)
 
 const store = new Vuex.Store({
     state,
+    getters,
+    mutations,
     actions,
+    modules: {
+        user,
+        currency,
+        supplier,
+        product,
+        picking,
+        payment
+    }
 })
 
 export default store

+ 44 - 0
src/store/modules/currency.js

@@ -0,0 +1,44 @@
+const state = {
+    currency: {
+        default: [],
+        values: this.default
+    }
+}
+
+const getters = {
+    /**
+     * 
+     * @param {*} state 
+     */
+    currencies(state) {
+        return state.currency.values
+    }
+}
+
+const mutations = {
+    /**
+     * 
+     * @param {*} state 
+     * @param {*} payload 
+     */
+    setCurrencies(state, payload) {
+        state.currency.values = [...payload]
+    }
+}
+
+const actions = {
+    /**
+     * 
+     * @param {*} param0 
+     */
+    setCurrencies({ commit }, payload) {
+        commit('setCurrencies', payload)
+    }
+}
+
+export default {
+    state,
+    getters,
+    mutations,
+    actions
+}

+ 40 - 0
src/store/modules/journal.js

@@ -0,0 +1,40 @@
+const state = {
+    journal: {
+        default: [],
+        values: this.default
+    }
+}
+
+const getters = {
+    /**
+     * 
+     * @param {*} state 
+     */
+    journals(state) {
+        return state.journal.values
+    }
+}
+
+const mutations = {
+    setJournals(state, payload) {
+        state.journal.values = [...payload]
+    }
+}
+
+const actions = {
+    /**
+     * 
+     * @param {*} param0 
+     * @param {*} payload 
+     */
+    setJournals({ commit }, payload) {
+        commit('setJournals', payload)
+    }
+}
+
+export default {
+    state,
+    getters,
+    mutations,
+    actions
+}

+ 41 - 0
src/store/modules/payment.js

@@ -0,0 +1,41 @@
+const state = {
+    paymentTerm: {
+        default: [],
+        values: this.default
+    }
+}
+
+const getters = {
+    /**
+     * 
+     * @param {*} state 
+     * @param {*} payload 
+     */
+    paymentTerms(state) {
+        return state.paymentTerm.values
+    }
+}
+
+const mutations = {
+    /**
+     * 
+     * @param {*} state 
+     * @param {*} payload 
+     */
+    setPaymentTerms(state, payload) {
+        state.paymentTerm.values = [...payload]
+    }
+}
+
+const actions = {
+    setPaymentTerms({ commit }, payload) {
+        commit('setPaymentTerms', payload)
+    }
+}
+
+export default {
+    state,
+    getters,
+    mutations,
+    actions
+}

+ 44 - 0
src/store/modules/picking.js

@@ -0,0 +1,44 @@
+const state = {
+    pickingType: {
+        default: [],
+        values: this.default
+    }
+}
+
+const getters = {
+    /**
+     * 
+     * @param {*} state 
+     */
+    pickingTypes(state) {
+        return state.pickingType.values
+    }
+}
+
+const mutations = {
+    /**
+     * 
+     * @param {*} state 
+     * @param {*} payload 
+     */
+    setPickingTypes(state, payload) {
+        state.pickingType.values = [...payload]
+    }
+}
+
+const actions = {
+    /**
+     * 
+     * @param {*} param0 
+     */
+    setPickingTypes({ commit }) {
+        commit('setPickingTypes')
+    }
+}
+
+export default {
+    state,
+    getters,
+    mutations,
+    actions
+}

+ 28 - 11
src/store/modules/product.js

@@ -3,30 +3,47 @@ import axios from 'axios'
 const url = '/eiru_purchases/new'
 
 const state = {
-    products: {
+    product: {
         default: [],
-        value: []
+        values: []
     }
 }
 
 const getters = {
+    /**
+     * 
+     * @param {*} state 
+     */
     products(state) {
-        return state.products
+        return state.product.values
     }
 }
 
 const mutations = {
-    pushProducts(state, payload) {
-        state.products = [...payload]
+    /**
+     * 
+     * @param {*} state 
+     * @param {*} payload 
+     */
+    setProducts(state, payload) {
+        state.product.values = [...payload]
     }
 }
 
 const actions = {
-    fecthProducts({ commit, dispatch }) {
-        return axios.get(url).then(data => {
-            console.log(data)
-        }).catch(error => {
-            console.log(error)
-        })
+    /**
+     * 
+     * @param {*} param0 
+     * @param {*} payload 
+     */
+    setProducts({ commit }, payload) {
+        commit('setProducts', payload)
     }
+}
+
+export default {
+    state,
+    getters,
+    mutations,
+    actions
 }

+ 44 - 0
src/store/modules/supplier.js

@@ -0,0 +1,44 @@
+const state = {
+    supplier: {
+        default: [],
+        values: this.default
+    }
+}
+
+const getters = {
+    /**
+     * 
+     * @param {*} state 
+     */
+    suppliers(state) {
+        return state.supplier.values
+    }
+}
+
+const mutations = {
+    /**
+     * 
+     * @param {*} state 
+     * @param {*} payload 
+     */
+    setSupplier(state, payload) {
+        state.supplier.values = [...payload]
+    }
+}
+
+const actions = {
+    /**
+     * 
+     * @param {*} param0 
+     */
+    setSupplier({ commit }, payload) {
+        commit('setSupplier', payload)
+    }
+}
+
+export default {
+    state,
+    getters,
+    mutations,
+    actions
+}

+ 45 - 0
src/store/modules/user.js

@@ -0,0 +1,45 @@
+const state = {
+    user: {
+        default: null,
+        value: null
+    }
+}
+
+const getters = {
+    /**
+     * 
+     * @param {*} state 
+     */
+    user(state) {
+        return state.user.value
+    }
+}
+
+const mutations = {
+    /**
+     * 
+     * @param {*} state 
+     * @param {*} payload 
+     */
+    setUser(state, payload) {
+        state.user.value = payload
+    }
+}
+
+const actions = {
+    /**
+     * 
+     * @param {*} param0 
+     * @param {*} payload 
+     */
+    setUser({ commit }, payload) {
+        commit('setUser', payload)
+    }
+}
+
+export default {
+    state,
+    getters,
+    mutations,
+    actions
+}

+ 12 - 0
src/store/mutations.js

@@ -0,0 +1,12 @@
+const mutations = {
+    /**
+     * Setter date state
+     * @param {*} state 
+     * @param {*} payload 
+     */
+    setDate(state, payload) {
+        state.date.value = payload
+    }
+}
+
+export default mutations

+ 3 - 3
src/store/state.js

@@ -1,7 +1,7 @@
 const state = {
-    data: {
-        default: [],
-        value: []
+    date: {
+        default: null,
+        value: null
     }
 }