supplier.js 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. const state = {
  2. suppliers: {
  3. default: [],
  4. values: []
  5. },
  6. filteredSuppliers: {
  7. default: [],
  8. values: []
  9. },
  10. supplierSelected: {
  11. default: null,
  12. value: null
  13. },
  14. showSupplierForm: {
  15. default: false,
  16. value: false
  17. }
  18. }
  19. const getters = {
  20. /**
  21. *
  22. * @param {*} state
  23. */
  24. suppliers(state) {
  25. return state.suppliers.values
  26. },
  27. /**
  28. *
  29. * @param {*} state
  30. */
  31. visibleSuppliers(state) {
  32. return state.filteredSuppliers.values.length === 0 ? state.suppliers.values : state.filteredSuppliers.values
  33. },
  34. /**
  35. *
  36. * @param {*} state
  37. */
  38. supplierSelected(state) {
  39. return state.supplierSelected.value
  40. },
  41. /**
  42. *
  43. * @param {*} state
  44. */
  45. showSupplierForm(state) {
  46. return state.showSupplierForm.value
  47. }
  48. }
  49. const mutations = {
  50. /**
  51. *
  52. * @param {*} state
  53. * @param {*} payload
  54. */
  55. setSuppliers(state, payload) {
  56. state.suppliers.values = [...payload]
  57. },
  58. /**
  59. *
  60. * @param {*} state
  61. * @param {*} payload
  62. */
  63. setSupplierSelected(state, payload) {
  64. state.supplierSelected.value = payload
  65. },
  66. /**
  67. *
  68. * @param {*} state
  69. * @param {*} payload
  70. */
  71. setFilteredSuppliers(state, payload) {
  72. state.filteredSuppliers.values = [...payload]
  73. },
  74. /**
  75. *
  76. * @param {*} state
  77. * @param {*} payload
  78. */
  79. setShowSupplierForm(state, payload) {
  80. state.showSupplierForm.value = !!payload
  81. }
  82. }
  83. const actions = {
  84. /**
  85. *
  86. * @param {*} param0
  87. * @param {*} payload
  88. */
  89. selectSupplier({ commit }, payload) {
  90. commit('setSupplierSelected', payload)
  91. },
  92. /**
  93. *
  94. * @param {*} param0
  95. * @param {*} payload
  96. */
  97. filterSuppliers({ commit }, payload) {
  98. commit('setFilteredSuppliers', payload)
  99. },
  100. /**
  101. *
  102. * @param {*} param0
  103. */
  104. showSupplierForm({ commit }) {
  105. commit('setShowSupplierForm', true)
  106. },
  107. /**
  108. *
  109. * @param {*} param0
  110. */
  111. hideSupplierForm({ commit }) {
  112. commit('setShowSupplierForm', false)
  113. },
  114. /**
  115. *
  116. * @param {*} param0
  117. */
  118. submitSupplier({ dispatch }, payload) {
  119. if (payload) {
  120. if (!payload.name || !payload.ruc || !payload.phone) {
  121. dispatch('notify', 'Complete los campos para guardar')
  122. return
  123. }
  124. dispatch('createSupplier', payload)
  125. }
  126. dispatch('hideSupplierForm')
  127. }
  128. }
  129. export default {
  130. state,
  131. getters,
  132. mutations,
  133. actions
  134. }