actions.js 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. const actions = {
  2. notify({ commit }, payload) {
  3. openerp.web.notification.do_warn('Atención', payload)
  4. },
  5. initSale({ commit, dispatch }, payload) {
  6. commit('setPosInstance', payload)
  7. let promises = [
  8. dispatch('fetchCompany'),
  9. dispatch('fetchCurrencies'),
  10. dispatch('fetchProducts'),
  11. dispatch('fetchCustomers'),
  12. dispatch('fetchJournals'),
  13. dispatch('fetchPeriods'),
  14. dispatch('fetchPaymentTerms')
  15. ]
  16. Promise.all(promises).then(() => {
  17. console.log('loaded')
  18. }).catch(error => {
  19. console.log(error)
  20. })
  21. },
  22. completeSale({ getters }) {
  23. return new Promise((resolve, reject) => {
  24. let AccountVoucher = new openerp.web.Model('account.voucher')
  25. AccountVoucher.call('create_from_pos', [
  26. {
  27. customer_id: getters.selectedCustomer.id,
  28. cart_items: getters.cartItems.map(item => {
  29. return {
  30. id: item.id,
  31. qty: item.qty,
  32. price: item.list_price
  33. }
  34. }),
  35. cart_total: getters.total,
  36. amount_paid: getters.amountPaid
  37. }
  38. ], {
  39. context: new openerp.web.CompoundContext()
  40. }).then(response => {
  41. console.log(response)
  42. resolve(response)
  43. }).fail(error => {
  44. reject(error)
  45. })
  46. })
  47. }
  48. }
  49. export default actions