procurement-vuex
Version:
Commerce vuex module
57 lines (56 loc) • 1.68 kB
JavaScript
import humps from 'lodash-humps'
import purchaseOrderChangesetService from './purchase_order_changeset.service'
const { doFetchList } = purchaseOrderChangesetService
export default {
namespaced: true,
state: {
list: [],
inProgress: false,
},
mutations: {
inProgress(state, yesOrNo) {
state.inProgress = yesOrNo
},
setList(state, list) {
state.list = list;
},
setEmptyList(state, list) {
state.list = list;
},
},
actions: {
fetchList: async ({ commit}, { appId, purchaseOrderId, sortByDate }) => {
commit('inProgress', true);
try {
let details = await doFetchList({ appId, purchaseOrderId, sortByDate });
if(details){
commit('setList', humps(details))
commit('inProgress', false)
return ({ list: humps(details) })
}else{
commit('setList', [])
commit('inProgress', false)
return []
}
} catch (err) {
throw 'error'
}
finally {
commit('inProgress', false);
}
},
setEmptyChangesetList: async ({ commit}) => {
commit('inProgress', true);
try {
commit('setList', [])
commit('inProgress', false)
return []
} catch (err) {
throw 'error'
}
finally {
commit('inProgress', false);
}
}
},
}