payments.js 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290
  1. const initialState = {
  2. paidTotal: 0,
  3. paymentsReturned: 0,
  4. paymentCurrencyTotal: 0,
  5. selectedPaymentsBank: null,
  6. selectedPaymentsBankType: null,
  7. paymentsBankRef: '',
  8. paymentsBankDateMaturity: '',
  9. paymentsBankAmount: 0,
  10. recidualAMountReceipt: 0,
  11. paymentsBankNumberCta: '',
  12. paymentsBankNameHolder: '',
  13. showBankPaymentModal: false
  14. }
  15. const state = {
  16. paidTotal: initialState.paidTotal,
  17. paymentsReturned: initialState.paymentsReturned,
  18. paymentCurrencyTotal: initialState.paymentCurrencyTotal,
  19. selectedPaymentsBank: initialState.selectedPaymentsBank,
  20. selectedPaymentsBankType: initialState.selectedPaymentsBankType,
  21. paymentsBankRef: initialState.paymentsBankRef,
  22. paymentsBankDateMaturity: initialState.paymentsBankDateMaturity,
  23. paymentsBankNumberCta: initialState.paymentsBankNumberCta,
  24. paymentsBankNameHolder: initialState.paymentsBankNameHolder,
  25. paymentsBankAmount: initialState.paymentsBankAmount,
  26. showBankPaymentModal: initialState.showBankPaymentModal,
  27. recidualAMountReceipt: initialState.recidualAMountReceipt
  28. }
  29. const getters = {
  30. /**
  31. * [paidTotal description]
  32. */
  33. paidTotal (state) {
  34. return state.paidTotal
  35. },
  36. /**
  37. * [paymentsReturned description]
  38. */
  39. paymentsReturned (state) {
  40. return state.paymentsReturned
  41. },
  42. /**
  43. * [paymentCurrencyTotal description]
  44. */
  45. paymentCurrencyTotal (state) {
  46. return state.paymentCurrencyTotal
  47. },
  48. /**
  49. * [selectedPaymentsBank description]
  50. */
  51. selectedPaymentsBank(state) {
  52. return state.selectedPaymentsBank
  53. },
  54. /**
  55. * [selectedPaymentsBankType description]
  56. */
  57. selectedPaymentsBankType(state) {
  58. return state.selectedPaymentsBankType
  59. },
  60. /**
  61. * [paymentsBankRef description]
  62. */
  63. paymentsBankRef (state) {
  64. return state.paymentsBankRef
  65. },
  66. /**
  67. * [paymentsBankDateMaturity description]
  68. */
  69. paymentsBankDateMaturity (state) {
  70. return state.paymentsBankDateMaturity
  71. },
  72. /**
  73. * [paymentsBankNumberCta description]
  74. */
  75. paymentsBankNumberCta ( state ) {
  76. return state.paymentsBankNumberCta
  77. },
  78. /**
  79. * [paymentsBankNameHolder description]
  80. */
  81. paymentsBankNameHolder( state ) {
  82. return state.paymentsBankNameHolder
  83. },
  84. /**
  85. * [showBankPaymentModal description]
  86. */
  87. showBankPaymentModal( state ) {
  88. return state.showBankPaymentModal
  89. },
  90. /**
  91. * [paymentsBankAmount description]
  92. */
  93. paymentsBankAmount(state) {
  94. return state.paymentsBankAmount
  95. },
  96. /**
  97. * [recidualAMountReceipt description]
  98. */
  99. recidualAMountReceipt(state){
  100. return state.recidualAMountReceipt
  101. }
  102. }
  103. const mutations = {
  104. /**
  105. * [paidTotal description]
  106. */
  107. setPaidTotal (state, payload) {
  108. state.paidTotal = payload
  109. },
  110. /**
  111. * [paymentCurrencyTotal description]
  112. */
  113. setCurrencyTotal (state, payload) {
  114. state.paymentCurrencyTotal = payload
  115. },
  116. /**
  117. * [SET_CALCULATE_CURRENCY_TOTAL]
  118. */
  119. setCalculateCurrencyTotal (state, payload) {
  120. let currencyJournal = payload.movesCurrencyAmount.find(item => item.id ===payload.currency.id)
  121. let total = currencyJournal.amount
  122. if (!currencyJournal)
  123. total = 0
  124. state.paymentCurrencyTotal = total
  125. },
  126. /**
  127. * [selectedPaymentsBank description]
  128. */
  129. setselectedBank (state, payload) {
  130. state.selectedPaymentsBank = payload
  131. },
  132. /**
  133. * [selectedPaymentsBankType description]
  134. */
  135. setSelectedBankType (state, payload) {
  136. state.selectedPaymentsBankType = payload
  137. },
  138. /**
  139. * [paymentsBankRef description]
  140. */
  141. setPaymentsBankRef (state, payload) {
  142. state.paymentsBankRef = payload
  143. },
  144. /**
  145. * [paymentsBankDateMaturity description]
  146. */
  147. setPaymentsBankDateMaturity (state, payload) {
  148. state.paymentsBankDateMaturity = payload
  149. },
  150. /**
  151. * [paymentsBankNumberCta description]
  152. */
  153. setPaymentsBankNumberCta (state, payload) {
  154. state.paymentsBankNumberCta = payload
  155. },
  156. /**
  157. * [actions description]
  158. */
  159. setPaymentsBankNameHolder (state, payload) {
  160. state.paymentsBankNameHolder = payload
  161. },
  162. /**
  163. * [actions description]
  164. */
  165. setShowBankPaymentModal (state, payload) {
  166. state.showBankPaymentModal = payload
  167. },
  168. /**
  169. * [actions description]
  170. */
  171. setPaymentsBankAmount (state, payload) {
  172. state.paymentsBankAmount = payload
  173. },
  174. /**
  175. * [recidualAMountReceipt description]
  176. */
  177. setRecidualAmountReceipt ( state, payload ) {
  178. state.recidualAMountReceipt = payload
  179. }
  180. }
  181. const actions = {
  182. /**
  183. * [CHANGE_INITIAL_PAID]
  184. */
  185. changeInitialPaid ({ commit, getters, dispatch },payload) {
  186. let bank = !!getters.bank.length && !!getters.bankType.length && !!getters.selectedJournal && getters.selectedJournal.type === 'bank' && payload > getters.recidualAMountReceipt
  187. if (!!bank){
  188. dispatch('paymentsNotify','El monto de entrega no puede superar el saldo del cheque (valor disponible '+getters.recidualAMountReceipt+')')
  189. return
  190. }
  191. commit('setPaidTotal', payload)
  192. },
  193. /**
  194. * [CALCULATE_CURRENCY_TOTAL]
  195. */
  196. calculateCurrencyTotal ({commit, getters}, payload) {
  197. let currency = []
  198. if (payload.currency.id){
  199. currency = payload.currency
  200. } else {
  201. currency = getters.currencyCompany
  202. }
  203. commit('setCalculateCurrencyTotal', {
  204. currency: currency,
  205. movesCurrencyAmount: getters.currencyAmount
  206. })
  207. commit('setPaidTotal', 0)
  208. if (payload.type === 'bank') {
  209. commit('setShowBankPaymentModal', !!getters.bank.length && !!getters.bankType.length)
  210. }
  211. },
  212. /**
  213. * [amount description]
  214. */
  215. submitBankPayments ( { commit, dispatch, getters }, payload){
  216. if (!payload.bank){
  217. dispatch('resetPaymentsBank')
  218. return
  219. }
  220. if (payload.amountReceipt <= 0 ){
  221. dispatch('paymentsNotify','Cheque sin saldo')
  222. dispatch('resetPaymentsBank')
  223. return
  224. }
  225. commit('setselectedBank', payload.bank)
  226. commit('setSelectedBankType', payload.bankType)
  227. commit('setPaymentsBankRef', payload.number)
  228. commit('setPaymentsBankDateMaturity', payload.dateMaturity)
  229. commit('setPaymentsBankNumberCta', payload.numberCta)
  230. commit('setPaymentsBankNameHolder', payload.nameHolder)
  231. commit('setPaymentsBankAmount', payload.amountTotal)
  232. commit('setRecidualAmountReceipt', payload.amountReceipt)
  233. commit('setShowBankPaymentModal', false)
  234. let amount = payload.amountReceipt
  235. if (amount > getters.paymentCurrencyTotal)
  236. amount = getters.paymentCurrencyTotal
  237. commit('setPaidTotal', amount)
  238. },
  239. /**
  240. * [RESET_PAYMENTS_BANK]
  241. */
  242. resetPaymentsBank ({commit, dispatch}) {
  243. commit('setselectedBank', null)
  244. commit('setSelectedBankType', null)
  245. commit('setPaymentsBankRef', '')
  246. commit('setPaymentsBankDateMaturity', '')
  247. commit('setPaymentsBankNumberCta', '')
  248. commit('setPaymentsBankNameHolder', '')
  249. commit('setPaymentsBankAmount', 0)
  250. commit('setRecidualAmountReceipt', 0)
  251. commit('setPaidTotal', 0)
  252. commit('setCurrencyTotal', 0)
  253. dispatch('resetSelectedJournal')
  254. commit('setShowBankPaymentModal', false)
  255. },
  256. /**
  257. * [RESET_PAYMENTS]
  258. */
  259. resetPayments ({ commit }) {
  260. commit('setPaidTotal', 0)
  261. commit('setCurrencyTotal', 0)
  262. commit('setselectedBank', null)
  263. commit('setSelectedBankType', null)
  264. commit('setPaymentsBankRef', '')
  265. commit('setPaymentsBankDateMaturity', '')
  266. commit('setPaymentsBankNumberCta', '')
  267. commit('setPaymentsBankNameHolder', '')
  268. commit('setShowBankPaymentModal', false)
  269. }
  270. }
  271. export default {
  272. state,
  273. getters,
  274. mutations,
  275. actions
  276. }