Przeglądaj źródła

[FIX] Registro de Operaciones bancarias (cheques, tarjetas, vale, etc)

adrielso 7 lat temu
rodzic
commit
699d6b68a9

+ 1 - 1
__openerp__.py

@@ -4,7 +4,7 @@
     'author': "Adrielso Kunert",
     'category': 'Uncategorized',
     'version': '0.1',
-    'depends': ['base', 'account', 'voucher_print', 'eiru_bank_payments_references'],
+    'depends': ['base', 'account', 'currency_utility'],
     'data': [
         'views/template.xml',
     ]

+ 107 - 22
controllers/main.py

@@ -212,6 +212,7 @@ class PaymentsSales(http.Controller):
             })
 
         return paymentsJournals
+
     '''
         Get Currency
     '''
@@ -235,21 +236,74 @@ class PaymentsSales(http.Controller):
         Get bank
     '''
     def get_bank(self):
-        return [{
-            'id': bank.id,
-            'name': bank.name
-        } for bank in request.env['res.bank'].search([('active', '=', True)])]
+        resBank = []
+
+        if self.check_module('eiru_bank_payments_references'):
+            resBank = [{
+                'id': bank.id,
+                'name': bank.name
+            } for bank in request.env['res.bank'].search([('active', '=', True)])]
+
+        return resBank
 
     '''
         Get Bank Payments Type
     '''
     def get_bank_payments_type(self):
-        return [{
-            'id': bank_type.id,
-            'name': bank_type.name,
-            'code': bank_type.code,
-            'default_state': bank_type.default_state
-        } for bank_type in request.env['res.bank.payments.type'].search([('is_receipt', '=', True)])]
+        resBankType = []
+
+        if self.check_module('eiru_bank_payments_references'):
+            resBankType = [{
+                'id': bank_type.id,
+                'name': bank_type.name,
+                'code': bank_type.code,
+                'default_state': bank_type.default_state
+            } for bank_type in request.env['res.bank.payments.type'].search([('is_receipt', '=', True)])]
+
+        return resBankType
+
+    '''
+        GET BANK PAYMNETS
+    '''
+    def get_bank_Payments(self):
+        bankPaymnets = []
+
+        if self.check_module('eiru_bank_payments_references'):
+            bankPaymnets = [{
+                'id': bankPayments.id,
+                'number': bankPayments.number,
+                'dateMaturity': bankPayments.date_maturity,
+                'state': bankPayments.state,
+                'numberCta': bankPayments.number_cta,
+                'nameHolder': bankPayments.name_holder,
+                'amountTotal': bankPayments.amount_total,
+                'amountReceipt': bankPayments.amount_receipt,
+                'amountPayment': bankPayments.amount_payment,
+                'bankId': {
+                    'id': bankPayments.bank_id.id,
+                    'name': bankPayments.bank_id.name
+                },
+                'bankPaymentsType':{
+                    'id': bankPayments.bank_payments_type_id.id,
+                    'name': bankPayments.bank_payments_type_id.name,
+                    'code': bankPayments.bank_payments_type_id.code,
+                    'default_state': bankPayments.bank_payments_type_id.default_state
+                },
+                'paymentsLine':[{
+                    'amount': line.amount,
+                    'date': line.date,
+                    'typeOperation': line.type_operation
+                } for line in request.env['res.bank.payments.line'].search([('bank_payments_id', 'in',[bankPayments.id]),('type_operation','=', 'receipt')])]
+            } for bankPayments in request.env['res.bank.payments'].search([('bank_payments_type_id.code','=','CH')])]
+
+        return bankPaymnets
+
+    '''
+        Check if module is installed
+    '''
+    def check_module(self, module_name):
+        module = request.env['ir.module.module'].search([('name', '=', module_name), ('state', '=', 'installed')])
+        return len(module) != 0
 
     '''
         Make JSON response
@@ -295,7 +349,8 @@ class PaymentsSales(http.Controller):
             'journals': self.get_journals(),
             'currencies': self.get_currency(),
             'bank': self.get_bank(),
-            'bankType': self.get_bank_payments_type()
+            'bankType': self.get_bank_payments_type(),
+            'bankPayments': self.get_bank_Payments()
         })
 
     '''
@@ -410,7 +465,6 @@ class PaymentsSales(http.Controller):
         Create Statamente Line
     '''
     def create_bank_statement_line(self, account_voucher, statement):
-
         # Create line bank
         bank_statement_line = {
             'name': account_voucher.reference,
@@ -431,23 +485,52 @@ class PaymentsSales(http.Controller):
     '''
         Bank Line
     '''
-    def create_bank_paymnets_line(self, statement_line, account_voucher, date_server, bankId, bankTypeId, paymentsBankRef, paymentsBankDateMaturity, paymentsBankNumber_cta, paymentsBankName_holder):
+    def create_bank_paymnets(self, account_voucher, date_server, bankId, bankTypeId, paymentsBankRef, paymentsBankDateMaturity, paymentsBankNumber_cta, paymentsBankName_holder, bankAmount):
         bank_id = request.env['res.bank'].browse(bankId)
         bank_type_id = request.env['res.bank.payments.type'].browse(bankTypeId)
+        paymnets_bank = request.env['res.bank.payments'].search([('number', '=', paymentsBankRef)])
 
-        bank_line ={
+        bank_payments = {
             'number': paymentsBankRef,
-            'date_maturity': paymentsBankDateMaturity,
-            'amount': account_voucher.amount,
+            'date_maturity': paymentsBankDateMaturity if (paymentsBankDateMaturity) else date_server ,
             'date': date_server,
             'state': bank_type_id.default_state,
             'bank_id': bank_id.id,
             'bank_payments_type_id': bank_type_id.id,
-            'statement_line_id': statement_line.id,
             'comment': 'Np ',
             'number_cta': paymentsBankNumber_cta,
-            'name_holder': paymentsBankName_holder
+            'name_holder': paymentsBankName_holder,
+            'amount_total': bankAmount,
+            'currency_id': account_voucher.currency_id.id,
+            'partner_id': account_voucher.partner_id.id
         }
+
+        if (paymnets_bank):
+            paymnets_bank.write(bank_payments)
+        else:
+            paymnets_bank=request.env['res.bank.payments'].create(bank_payments)
+
+
+        return paymnets_bank
+
+    '''
+        Create Bnak Paymnets Line
+    '''
+    def create_bank_paymnets_line(self, voucher, bank_payments, bank_statement_line, bank_statement, date_server):
+        account_voucher = request.env['account.voucher'].browse(voucher.id)
+        res_bank_payments = request.env['res.bank.payments'].browse(bank_payments.id)
+        statement_line = request.env['account.bank.statement.line'].browse(bank_statement_line.id)
+        statement = request.env['account.bank.statement'].browse(bank_statement.id)
+
+        bank_line = {
+            'amount': account_voucher.amount,
+            'date': date_server,
+            'bank_payments_id': res_bank_payments.id,
+            'statement_line_id': bank_statement_line.id,
+            'statement_id': bank_statement.id,
+            'type_operation': account_voucher.type
+        }
+
         paymnets_line = request.env['res.bank.payments.line'].create(bank_line)
 
         return paymnets_line
@@ -485,11 +568,13 @@ class PaymentsSales(http.Controller):
         bank_statement_line = self.create_bank_statement_line(voucher, bank_statement)
         self.make_info_log('[OK] creating bank statement Line')
 
-        if (kw.get('journalType') == 'bank'):
-            bank_payments_line =  self.create_bank_paymnets_line(bank_statement_line, voucher, date_server, kw.get('bankId'), kw.get('bankTypeId'), kw.get('bankRef'), kw.get('bankDateMaturity'), kw.get('paymentsBankNumber_cta'), kw.get('paymentsBankName_holder'))
-            self.make_info_log('[OK] creating bank payments line')
-
+        if ((self.check_module('eiru_bank_payments_references')) and (kw.get('journalType') == 'bank')):
+            bank_payments =  self.create_bank_paymnets( voucher, date_server, kw.get('bankId'), kw.get('bankTypeId'), kw.get('bankRef'), kw.get('bankDateMaturity'), kw.get('paymentsBankNumber_cta'), kw.get('paymentsBankName_holder'), kw.get('bankAmount'))
+            self.make_info_log('[OK] creating bank payments')
 
+            bank_payments_Line = self.create_bank_paymnets_line(voucher, bank_payments, bank_statement_line, bank_statement, date_server)
+            self.make_info_log('[OK] creating bank payments Line')
+            
         return {
             'process': True
         }

+ 4 - 2
package.json

@@ -16,6 +16,7 @@
 		"css-loader": "^0.28.4",
 		"extract-text-webpack-plugin": "^3.0.0",
 		"file-loader": "^0.11.2",
+		"hard-source-webpack-plugin": "^0.5.16",
 		"node-sass": "^4.5.3",
 		"pug": "^2.0.0-rc.2",
 		"sass-loader": "^6.0.6",
@@ -24,15 +25,16 @@
 		"vue-loader": "^12.2.2",
 		"vue-template-compiler": "^2.4.1",
 		"webpack": "^3.3.0",
-		"webpack-livereload-plugin": "^0.11.0"
+		"webpack-livereload-plugin": "^1.0.0"
 	},
 	"dependencies": {
 		"axios": "^0.17.0",
 		"fuse.js": "^3.0.5",
 		"vue": "^2.4.1",
 		"vue-form-wizard": "^0.6.1",
-		"vue-js-modal": "^1.3.4",
+		"vue-js-modal": "^1.3.9",
 		"vue-simple-spinner": "^1.2.1",
+		"vue2-datepicker": "^1.8.2",
 		"vuex": "^2.3.1"
 	}
 }

+ 10 - 21
src/Payments.vue

@@ -1,6 +1,6 @@
 <template lang="pug">
 	.payments
-		form-wizard(title="" subtitle="" finishButtonText="Finalizar" color="#7c7bad" backButtonText="Volver" :hideButtons='processingPayments' nextButtonText="Continuar" transition="fade" ref='wizard' @on-complete="paymentProcess()" @on-change="(prev, next) => setChangeTabStepsSales({prev,next})")
+		form-wizard(title="" subtitle="" finishButtonText="Finalizar" color="#7c7bad" backButtonText="Volver" :hideButtons='processingPayments' nextButtonText="Continuar" transition="fade" ref='wizard' @on-complete="paymentsProcess()" @on-change="(prev, next) => setChangeTabStepsSales({prev,next})")
 			tab-content(title="Quien es el cliente?" :beforeChange="checkCustomer")
 				customers
 			tab-content(title="Cual es la factura?" :beforeChange="checkInvoice")
@@ -12,21 +12,10 @@
 </template>
 
 <script>
+	
 	import { mapActions, mapGetters } from 'vuex'
-	import {
-		REMOVE_MOVE_PAYMENTS_ALL,
-		PAYMENTS_PROCESS,
-		CHECK_CUSTOMER,
-		CHECK_INVOICE,
-		CHECK_MOVE,
-		CHECK_PAYMENTS,
-		RESET_PAYMENT_CUSTOMER,
-		SET_CHANGE_TAB_STEPS_SALES
-	} from '@/constants/actionTypes'
-
 	import { FormWizard, TabContent } from 'vue-form-wizard'
 	import 'vue-form-wizard/dist/vue-form-wizard.min.css'
-
 	import Customers from '@@/steps/Partner'
 	import Invoices from '@@/steps/Invoices'
 	import MoveLine from '@@/steps/MoveLine'
@@ -39,7 +28,7 @@
 			Customers,
 			Invoices,
 			MoveLine,
-			Payments
+			Payments,
 		},
 		computed: mapGetters([
 			'processingPayments',
@@ -47,13 +36,13 @@
 		]),
 		methods: mapActions([
 			'initPayments',
-			PAYMENTS_PROCESS,
-			CHECK_CUSTOMER,
-			CHECK_INVOICE,
-			CHECK_MOVE,
-			CHECK_PAYMENTS,
-			RESET_PAYMENT_CUSTOMER,
-			SET_CHANGE_TAB_STEPS_SALES
+			'paymentsProcess',
+			'checkCustomer',
+			'checkInvoice',
+			'checkMove',
+			'checkPayments',
+			'resetPaymentCustomer',
+			'setChangeTabStepsSales'
 		]),
 		watch: {
 			completedPayments(value) {

+ 167 - 0
src/components/common/DropdownSearcher.vue

@@ -0,0 +1,167 @@
+<template lang="pug">
+    .searcher
+        span.input-icon.fa.fa-search(@click='onClickOptions')
+        input.search-input(v-model='search' :placeholder='placeholder' autofocus @keyup.enter='enterPressed')
+        .dropdown-options(:class="{'input-show': showOptions }" )
+            ul.input-options
+                li.input-option(v-for='option in getOptions()' :key='option.id' @click='onSelectOption(option)') {{ option[dispalyOption] }}
+</template>
+
+<script>
+    export default {
+        props: {
+            placeholder: {
+                type: String,
+                default: 'Buscar'
+            },
+            autofocus: {
+                type: Boolean,
+                default: false
+            },
+            items: {
+                type: Array,
+                default: [],
+                required: true
+            },
+            keys: {
+                type: Array,
+                default: [],
+                required: true
+            },
+            dispalyOption :{
+                type: Array,
+                default: [],
+            },
+            acceptEnter: {
+                type: Boolean,
+                default: false
+            }
+        },
+        watch: {
+            search(value, lastValue) {
+                value = value.trim()
+
+                if (!value && value.length != lastValue.length) {
+                    this.selectedOption = null
+                }
+
+                this.showOptions = !!value && !this.selectedOption
+
+                this.performSearch(value)
+            }
+        },
+        methods: {
+            enterPressed(){
+                if(!this.acceptEnter)
+                    return
+
+                let item = {
+                    'item': this.search,
+                    'state' : 'new'
+                }
+                if (this.getOptions().length === 1 && this.getOptions()[0].number === this.search)
+                    item = this.getOptions()[0]
+
+                this.showOptions = false
+                this.$emit('onSelect', item)
+            },
+            getOptions() {
+                return this.results.length == 0 ? this.items : this.results
+            },
+            performSearch(value) {
+                this.results = []
+
+                if (this.selectedOption) {
+                    return
+                }
+
+                for (let item of this.items) {
+                    for (let field in item) {
+
+                        if (typeof item[field] !== 'string') {
+                            continue
+                        }
+
+                        if (this.keys.length !== 0 && this.keys.indexOf(field) === -1) {
+                            continue
+                        }
+
+                        if (item[field].toLowerCase().indexOf(value.toLowerCase()) !== -1) {
+                            this.results.push(item)
+                            break
+                        }
+                    }
+                }
+            },
+            onClickOptions() {
+                this.showOptions = !this.showOptions || !!this.search
+            },
+            onSelectOption(item) {
+                this.selectedOption = item
+                this.search =  item[this.dispalyOption]
+                this.results = []
+                this.$emit('onSelect', item)
+            }
+        },
+        data() {
+            return {
+                search: '',
+                results: [],
+                selectedOption: null,
+                showOptions: false
+            }
+        }
+    }
+</script>
+
+<style lang="sass">
+    @import '../../assets/variables'
+    .searcher
+        width: 100%
+        height: 35px
+        position: relative
+        .input-icon
+            position: absolute
+            top: 14px
+            right: 10px
+            font-size: 12pt
+            color: $app-dark-color
+            &:hover
+                cursor: pointer
+        .search-input
+            width: 100%
+            height: 100%
+            border-radius: 0
+            font-size: 12pt
+            font-weight: normal
+        .dropdown-options
+            display: none
+            position: absolute
+            background: $app-light-color
+            border: 1px solid $app-separator-color
+            box-shadow: 0 3px 5px $app-separator-color
+            z-index: 10
+            top: 45px
+            left: 0
+            right: 0
+            bottom: -325px
+            padding: 0
+            animation-duration: 500ms
+            overflow-y: auto
+            &.input-show
+                display: block
+            ul
+                li
+                    height: 35px
+                    display: block
+                    text-align: left
+                    margin: 10px 0 0 10px
+                    font-size: 12pt
+                    font-weight: normal
+                    border-bottom: 1px solid $app-border-color
+                    &:last-child
+                        margin-bottom: 10px
+                    &:hover
+                        border-bottom: 2px solid $app-main-color
+                        cursor: pointer
+</style>

+ 4 - 2
src/components/common/index.js

@@ -1,9 +1,11 @@
 import CardGrid from './CardGrid'
 import Cart from './Cart'
 import Searcher from './Searcher'
+import DropdownSearcher from './DropdownSearcher'
 
 export {
     CardGrid,
     Cart,
-    Searcher
-}
+    Searcher,
+    DropdownSearcher
+}

+ 1 - 7
src/components/froms/CustomerDetails.vue

@@ -58,13 +58,7 @@
                     decimalPlaces: 0
                 }
             }
-        },
-        // methods: {
-        //     // getCurrencyFormat(item) {
-        //     //     // return  item.toFixed(0).replace(".", ",").replace(/(\d)(?=(\d\d\d)+(?!\d))/g, '$1'+'.')
-        //     //     // return this.currency.symbol+" "+item.toFixed(this.currency.decimalPlaces).replace(".", ",").replace(/(\d)(?=(\d\d\d)+(?!\d))/g, '$1'+this.currency.thousandsSeparator)
-        //     // },
-        // }
+        }
     }
 </script>
 

+ 248 - 0
src/components/modals/BankPaymentsModal.vue

@@ -0,0 +1,248 @@
+<template lang="pug">
+    modal(  name='payments-reference-modal' transition='nice-modal-fade' @before-close="beforeClose" @before-open="beforeOpen" height='auto' width='670' :classes="['v--modal', 'payments-reference-modal']")
+        h2.modal-title
+        form
+            .payment-reference-item
+                label.payment-reference-item-label Banco / Entidad
+                dropdown-searcher.payment-reference-item-input(:items='bank' :keys="['name']" :dispalyOption="['name']" placeholder='Seleccione un banco' @onSelect='selectBank')
+            .payment-reference-item
+                label.payment-reference-item-label Tipo de Pago
+                select.payment-reference-item-input(v-model="selectBankType" :disabled="recordExists")
+                    option(v-for="type in this.paymentTypes" :value="type") {{ type.name }}
+            .payment-reference-item(:style="{ display: !this.isCard() ? 'block' : 'none' }")
+                label.payment-reference-item-label Nº de Cuenta
+                input.payment-reference-item-input(v-model='data.numberCta' :disabled='this.recordExists')
+            .payment-reference-item
+                label.payment-reference-item-label Nº de {{ isCard() ? 'Boleta' : 'Cheque' }}
+                bank-payments.payment-reference-item-input(:items='bankPayments' :keys="['number']" :dispalyOption="['number']" placeholder='Ingrese el numero de (cheque, boleto, o vale)' @onSelect='selectBankPayments' :acceptEnter='true')
+            .payment-reference-item
+                label.payment-reference-item-label Monto Total
+                input.payment-reference-item-input(v-model='amountTotal' :disabled="recordExists")
+            .payment-reference-item
+                label.payment-reference-item-label Vencimiento
+                date-picker(v-model='dateMaturity' lang='es' format='DD/MM/YYYY' input-class='date-input' type='date' )
+            .payment-reference-item(:style="{ display: !this.isCard() ? 'block' : 'none' }")
+                label.payment-reference-item-label Titular
+                input.payment-reference-item-input(v-model='data.nameHolder')
+            .payment-reference-options
+                button.payments-reference-button(value='accept' @click.stop.prevent='onSubmit' :disabled='!isValid()') Aceptar
+                button.payments-reference-button(value='cancel' @click.stop.prevent='onSubmit') Cancelar
+</template>
+
+<script>
+
+    import DropdownSearcher from '@@/common/DropdownSearcher'
+    import BankPayments from '@@/modals/SearcherBankPayments'
+    export default {
+        components : {
+            DropdownSearcher,
+            BankPayments
+        },
+        props: {
+            show: {
+                type: Boolean,
+                default: false
+            },
+            bank:{
+                type: Array,
+                default: []
+            },
+            paymentTypes: {
+                type: Array,
+                default: []
+            },
+            bankPayments:{
+                type: Array,
+                default: []
+            },
+            currency: {
+                type: Object,
+                default: {
+                    name: '',
+                    symbol: '',
+                    position:'before',
+                    rateSilent: 0,
+                    thousandsSeparator: '.',
+                    decimalSeparator: ',',
+                    decimalPlaces: 0
+                }
+            },
+        },
+        computed: {
+            selectBankType: {
+                get() {
+                    if (!this.data.bankType && this.paymentTypes.length > 0) {
+                       this.data.bankType = this.paymentTypes[0]
+                   }
+                   return (this.data.bankType ) || 1
+                },
+                set(value) {
+                    this.data.bankType = this.paymentTypes.find(type => type.id === value.id)
+
+                    if (this.isCard()){
+                        this.data.number = null
+                        this.data.numberCta = null
+                        this.data.amountTotal = ''
+                        this.data.dateMaturity = null
+                        this.data.nameHolder = ''
+                    }
+                }
+            },
+            dateMaturity : {
+                get() {
+                    if (!this.data.dateMaturity){
+                        this.data.dateMaturity = moment().format("DD/MM/YYYY")
+                    }
+                    return this.data.dateMaturity
+                },
+                set(value) {
+                    if (value)
+                        value = moment(value).format("DD/MM/YYYY")
+                    this.data.dateMaturity = value
+                }
+            },
+            amountTotal: {
+                get() {
+                    let formatted = this.$options.filters.currency(this.data.amountTotal, {...this.currency})
+                    return !!this.data.amountTotal ? formatted : formatted.replace(/\d/, '')
+                },
+                set(value) {
+                    value = value.replace(/[\.|,](\d{0,2}$)/, '?$1').split(/\?/)
+                    value[0] = value[0].replace(/[^0-9]/g, '')
+                    value = Number.parseFloat(value.join('.')) || 0
+
+                    this.data.amountTotal = value
+                    this.data.amountReceipt = value
+                },
+            },
+        },
+        methods: {
+            selectBank(bank) {
+                this.data.bank = bank
+            },
+
+            selectBankPayments(paymnets) {
+                let recordExists = true
+
+                if (paymnets.state === 'new')
+                    recordExists = false
+
+                this.data.bank = !!paymnets.bankId ?paymnets.bankId :this.data.bank
+                this.data.bankType = !!paymnets.bankPaymentsType ?paymnets.bankPaymentsType :this.data.bankType
+                this.data.numberCta = !!paymnets.numberCta ?paymnets.numberCta :this.data.numberCta
+                this.data.number = paymnets.number
+                this.data.amountTotal = paymnets.amountTotal
+                this.data.dateMaturity = paymnets.dateMaturity
+                this.data.nameHolder = paymnets.nameHolder
+                this.data.amountReceipt = paymnets.amountReceipt
+                this.recordExists = recordExists
+            },
+
+            beforeClose(e) {
+                if (this.show) {
+                    e.stop()
+                }
+            },
+
+            beforeOpen(e) {
+                this.data.bank = null
+                this.data.bankType =  null
+                this.data.numberCta = null
+                this.data.number = null
+                this.data.amountTotal = ''
+                this.data.dateMaturity = null
+                this.data.nameHolder = ''
+                this.data.amountReceipt = 0
+                this.recordExists = false
+            },
+
+            isValid() {
+                let noBank = !!this.data.bank && !!this.data.bankType && !!this.data.number
+                return this.isCard() ? noBank :  noBank && !!this.data.numberCta && !!this.data.amountTotal && !!this.data.dateMaturity && !!this.data.nameHolder
+            },
+
+            isCard() {
+                return (this.data.bankType && this.data.bankType.code === 'TJ') || false
+            },
+
+            onSubmit(e) {
+                if (e.target.value === 'cancel') {
+                    this.data.bank = null
+                    this.data.bankType = null
+                    this.data.bankNumber = null
+                    this.data.dueDate = null
+                    this.data.accountNumber = null
+                    this.data.holder = null
+                }
+                this.$emit('onSubmit',this.data )
+            }
+        },
+        watch: {
+            show(value) {
+                if (!value) {
+                    this.$modal.hide('payments-reference-modal')
+                    return
+                }
+                    this.$modal.show('payments-reference-modal')
+            }
+        },
+        data() {
+            return {
+                data: {
+                    bank: null,
+                    bankType: null,
+                    numberCta: null,
+                    number: null,
+                    amountTotal: '',
+                    dateMaturity: null,
+                    nameHolder: '',
+                    amountReceipt: 0
+                },
+                recordExists: false,
+            }
+        }
+    }
+</script>
+
+<style lang="sass">
+    @import '../../assets/variables'
+    .payments-reference-modal
+        padding: 15px !important
+        form
+            width: 100%
+            height: 100%
+            .payment-reference-item
+                width: 100%
+                height: 45px
+                margin-bottom: 10px
+                .payment-reference-item-label
+                    width: 30%
+                    height: 45px
+                    font-size: 14pt
+                .payment-reference-item-input
+                    width: 70%
+                    height: 45px
+                    font-size: 14pt
+                    border-radius: 0
+                    display: inline-block
+                .date-input
+                    width: 100%
+                    height: 45px
+                    font-size: 14pt
+                    border-radius: 0
+                    display: inline-block
+                .mx-datepicker
+                    .mx-datepicker-popup
+                        bottom: -160% !important
+            .payment-reference-options
+                float: right
+                .payments-reference-button
+                    width: 150px
+                    height: 40px
+                    border: none
+                    box-shadow: none
+                    border-radius: 0
+                    margin-right: 5px
+                    background: $app-main-color
+                    color: $app-bg-color
+</style>

+ 0 - 246
src/components/modals/PaymentReferenceModals.vue

@@ -1,246 +0,0 @@
-<template lang="pug">
-    modal(name='payments-reference' transition='nice-modal-fade' :classes="['v--modal', 'payments-reference', is_not_completed &&'is-not-completed']" @before-close="beforeClose" @before-open="beforeOpen")
-        form
-            .payment-reference-title
-                h3 Detalles de Operaciones Bancarias
-                hr
-            .payment-reference-item
-                label.payment-reference-item-label Banco / Entidad
-                select.payment-reference-item-input(v-model='selectBank' :class="{'item-input-invalid': !this.selectedPaymentsBank}")
-                    option(v-for="bank in bank" :value="bank") {{ bank.name }}
-            .payment-reference-item
-                label.payment-reference-item-label Tipo de Operación
-                select.payment-reference-item-input(v-model="selectBankType" :class="{'item-input-invalid': !this.selectedPaymentsBankType}")
-                    option(v-for="bankType in bankType" :value="bankType") {{ bankType.name }}
-            .payment-reference-item
-                label.payment-reference-item-label Nº cheque / boleta
-                input.payment-reference-item-input(v-model='bankRef' required='required' :class="{'item-input-invalid': !this.paymentsBankRef}")
-            .payment-reference-item
-                label.payment-reference-item-label Fecha de Vencimiento
-                input.payment-reference-item-input(v-model='dateMaturity' type="date" value='' :class="{'item-input-invalid': !this.paymentsBankDateMaturity}")
-            .payment-reference-item(:class="{'item-disabled': this.bankTypeSelected}")
-                label.payment-reference-item-label Nº  Cuenta
-                input.payment-reference-item-input(:disabled="this.bankTypeSelected" v-model='bankNumberCta' value='')
-            .payment-reference-item(:class="{'item-disabled': this.bankTypeSelected}")
-                label.payment-reference-item-label Titular
-                input.payment-reference-item-input(:disabled="this.bankTypeSelected" v-model='bankNameHolder' value='')
-            hr
-            .payment-reference-options
-                button.payments-reference-button(@click.prevent='onAccept') Aceptar
-                button.payments-reference-button(@click.prevent='onCancel') Cancelar
-</template>
-
-<script>
-
-    import { mapGetters, mapActions } from 'vuex'
-    import {
-        SELECT_PAYMENTS_BANK,
-        SELECT_PAYMENTS_BANK_TYPE,
-        CHANGE_PAYMENTS_BANK_REF,
-        CHANGE_PAYMENTS_BANK_DATE_MATURITY,
-        CHANGE_PAYMENTS_BANK_NAME_HOLDER,
-        CHANGE_PAYMENTS_BANK_NUMBER_CTA
-    } from '@/constants/actionTypes'
-
-    export default {
-        props: {
-            show: {
-                type: Boolean,
-                default: false
-            },
-        },
-
-        computed: {
-            selectBank: {
-                get() {
-                    return (this.selectedPaymentsBank) || -1
-                },
-                set(value) {
-                    if (value)
-                        this.selectPaymentsBank(value)
-                        this.is_not_completed = false
-                }
-            },
-
-            selectBankType: {
-                get() {
-                    return (this.selectedPaymentsBankType) || -1
-                },
-                set(value) {
-                    if (value)
-                        this.selectPaymentsBankType(value)
-                        this.bankTypeSelected = value.code === "TJ"
-                        this.is_not_completed = false
-                }
-            },
-
-            dateMaturity: {
-                get() {
-                    return this.paymentsBankDateMaturity || ''
-                },
-                set(value){
-                    this.changePaymentsBankDateMaturity(value)
-                    this.is_not_completed = false
-                }
-            },
-
-            bankRef: {
-                get() {
-                    return this.paymentsBankRef || ''
-                },
-                set(value){
-                    this.changePaymentsBankRef(value)
-                    this.is_not_completed = false
-                }
-            },
-            bankNumberCta: {
-                get() {
-                    return this.paymentsBankNumberCta || ''
-                },
-                set(value) {
-                    this.changePaymentsBankNumberCta(value)
-                }
-            },
-
-            bankNameHolder: {
-                get() {
-                    return this.paymentsBankNameHolder || ''
-                },
-                set(value) {
-                    this.changePaymentsBankNameHolder(value)
-                }
-            },
-
-            ...mapGetters([
-                'bank',
-                'bankType',
-                'selectedPaymentsBank',
-                'selectedPaymentsBankType',
-                'paymentsBankRef',
-                'paymentsBankDateMaturity',
-                'paymentsBankNumberCta',
-                'paymentsBankNameHolder'
-            ]),
-        },
-        methods: {
-            beforeClose(e) {
-                if ((!this.isValid()) && (this.is_cancel === false)) {
-                    this.is_not_completed = true
-                    e.stop()
-                }
-            },
-            beforeOpen(e){
-                this.is_cancel = false
-                this.is_not_completed = false
-                this.bankTypeSelected = false
-            },
-            onAccept(e) {
-                if (!this.isValid())
-                    return
-                this.$emit('onAccept', 'Accept')
-            },
-            onCancel(e) {
-                this.is_cancel= true
-                this.$emit('onCancel', 'Cancel')
-            },
-
-            isValid() {
-
-                if (!this.selectedPaymentsBank) {
-                    return false
-                }
-
-                if (!this.selectedPaymentsBankType) {
-                    return false
-                }
-
-                if (!this.paymentsBankDateMaturity) {
-                    return false
-                }
-
-                if (!this.paymentsBankRef) {
-                    return false
-                }
-                /*Return final si pasa todas las validaciones */
-                return true
-            },
-            ...mapActions([
-                SELECT_PAYMENTS_BANK,
-                SELECT_PAYMENTS_BANK_TYPE,
-                CHANGE_PAYMENTS_BANK_REF,
-                CHANGE_PAYMENTS_BANK_DATE_MATURITY,
-                CHANGE_PAYMENTS_BANK_NAME_HOLDER,
-                CHANGE_PAYMENTS_BANK_NUMBER_CTA
-            ])
-        },
-        watch: {
-            show(value) {
-                if (value) {
-                    this.$modal.show('payments-reference')
-                } else {
-                    this.$modal.hide('payments-reference')
-                }
-            }
-        },
-        data() {
-            return {
-                is_cancel: false,
-                is_not_completed: false,
-                bankTypeSelected: false
-            }
-        }
-    }
-</script>
-
-<style lang="sass">
-    @import '../../assets/variables'
-    .payments-reference
-        width: 600px
-        height: 400px !important
-        transition: box-shadow 1s
-        &.is-not-completed
-            box-shadow: 0 24px 80px -2px rgba(255, 0, 0, .6) !important
-        form
-            width: 100%
-            height: 290px
-            padding: 15px
-            .payment-reference-title
-                h3
-                    color: $app-separator-color
-                    font-size: 15pt
-                    margin-top: 10px
-                hr
-                    margin-top: 10px
-                    margin-bottom: 10px
-            .payment-reference-item
-                width: 100%
-                height: 30px
-                margin-bottom: 10px
-                &.item-disabled
-                    color: #9e9e9e
-                .payment-reference-item-label
-                    width: 30%
-                    height: 30px
-                    font-size: 10pt
-                .payment-reference-item-input
-                    width: 70% !important
-                    height: 30px
-                    font-size: 10pt
-                    float: right
-                    &.item-input-invalid
-                        border-color: $app-error-color
-                        box-shadow: 1px 1px 2px $app-error-color, -1px -1px 2px $app-error-color
-                hr
-
-            .payment-reference-options
-                float: right
-                .payments-reference-button
-                    width: 160px
-                    height: 40px
-                    border: none
-                    box-shadow: none
-                    border-radius: 0
-                    margin-right: 5px
-                    background: $app-main-color
-                    color: $app-bg-color
-</style>

+ 192 - 0
src/components/modals/SearcherBankPayments.vue

@@ -0,0 +1,192 @@
+<template lang="pug">
+    .searcher
+        span.input-icon.fa.fa-search(@click='onClickOptions')
+        input.search-input(v-model='search' :placeholder='placeholder' autofocus @keyup.enter='enterPressed' @keyup.delete='keyupDelete')
+        .dropdown-options(:class="{'input-show-paymnets-bank': showOptions }")
+            ul.input-options
+                li.input-option(v-for='option in getOptions()' :key='option.id' @click='onSelectOption(option)') {{ option[dispalyOption] }}
+</template>
+
+<script>
+
+    export default {
+        props: {
+            placeholder: {
+                type: String,
+                default: 'Buscar'
+            },
+            autofocus: {
+                type: Boolean,
+                default: false
+            },
+            items: {
+                type: Array,
+                default: [],
+                required: true
+            },
+            keys: {
+                type: Array,
+                default: [],
+                required: true
+            },
+            dispalyOption :{
+                type: Array,
+                default: [],
+            },
+            acceptEnter: {
+                type: Boolean,
+                default: false
+            }
+        },
+        watch: {
+            search(value, lastValue) {
+                value = value.trim()
+
+                if (!value && value.length != lastValue.length) {
+                    this.selectedOption = null
+                }
+                this.performSearch(value)
+            }
+        },
+        methods: {
+            keyupDelete() {
+                this.enterPressed()
+                this.selectedOption = null
+            },
+
+            enterPressed(){
+                if(!this.acceptEnter)
+                    return
+
+                let item = {
+                    'bankId': '',
+                    'bankPaymentsType': '',
+                    'numberCta':  '',
+                    'number': this.search,
+                    'amountTotal': 0,
+                    'dateMaturity': '',
+                    'nameHolder': '',
+                    'amountReceipt': '',
+                    'state' : 'new'
+                }
+
+                if (this.getOptions().length === 1 && this.getOptions()[0].number === this.search)
+                    item = this.getOptions()[0]
+
+                this.showOptions = false
+                this.$emit('onSelect', item)
+            },
+
+            getOptions() {
+                return this.results.length == 0 ? this.items : this.results
+            },
+
+            performSearch(value) {
+                this.results = []
+
+                if (!value){
+                    this.showOptions = false
+                    return
+                }
+
+                if (this.selectedOption) {
+                    this.showOptions = false
+                    return
+                }
+
+                for (let item of this.items) {
+                    for (let field in item) {
+                        if (typeof item[field] !== 'string') {
+                            continue
+                        }
+
+                        if (this.keys.length !== 0 && this.keys.indexOf(field) === -1) {
+                            continue
+                        }
+                        if (item[field].toLowerCase().indexOf(value.toLowerCase()) !== -1) {
+                            this.results.push(item)
+                            this.showOptions = true
+                            break
+                        }
+                        if (!this.results.length){
+                            this.showOptions = false
+                        }
+                    }
+                }
+            },
+
+            onClickOptions() {
+                this.showOptions = !this.showOptions || !!this.search
+            },
+
+            onSelectOption(item) {
+                this.selectedOption = item
+                this.showOptions = false
+                this.search = item[this.dispalyOption]
+                this.search =  item[this.dispalyOption]
+                this.$emit('onSelect', item)
+            }
+        },
+        data() {
+            return {
+                search: '',
+                results: [],
+                selectedOption: null,
+                showOptions: false
+            }
+        }
+    }
+</script>
+
+<style lang="sass">
+    @import '../../assets/variables'
+    .searcher
+        width: 100%
+        height: 35px
+        position: relative
+        .input-icon
+            position: absolute
+            top: 14px
+            right: 10px
+            font-size: 12pt
+            color: $app-dark-color
+            &:hover
+                cursor: pointer
+        .search-input
+            width: 100%
+            height: 100%
+            border-radius: 0
+            font-size: 12pt
+            font-weight: normal
+        .dropdown-options
+            display: none
+            position: absolute
+            background: $app-light-color
+            border: 1px solid $app-separator-color
+            box-shadow: 0 3px 5px $app-separator-color
+            z-index: 10
+            top: 45px
+            left: 0
+            right: 0
+            bottom: -325px
+            padding: 0
+            animation-duration: 500ms
+            overflow-y: auto
+            &.input-show-paymnets-bank
+                display: block
+                height: 170px
+            ul
+                li
+                    height: 35px
+                    display: block
+                    text-align: left
+                    margin: 10px 0 0 10px
+                    font-size: 12pt
+                    font-weight: normal
+                    border-bottom: 1px solid $app-border-color
+                    &:last-child
+                        margin-bottom: 10px
+                    &:hover
+                        border-bottom: 2px solid $app-main-color
+                        cursor: pointer
+</style>

+ 2 - 4
src/components/steps/Invoices.vue

@@ -8,8 +8,6 @@
 <script>
     import { mapGetters, mapActions } from 'vuex'
     import { Searcher } from '@@/common'
-    import { SELECT_INVOICE, FILTER_PAYMENTS_INVOICE } from '@/constants/actionTypes'
-
     import Grid from '@@/invoices/InvoicesGrid'
 
     export default {
@@ -22,8 +20,8 @@
             'invoicesVisible'
         ]),
         methods: mapActions([
-            SELECT_INVOICE,
-            FILTER_PAYMENTS_INVOICE
+            'selectInvoice',
+            'filterPaymentsInvoice',
         ]),
     }
 </script>

+ 14 - 20
src/components/steps/MethodPayment.vue

@@ -19,7 +19,6 @@
                 label.method-form-label Método de pago
                 select.method-form-input(v-model="paymentJournals")
                     option(v-for="journal in journals" :value="journal") {{ journal.displayName }}
-            payment-reference(:show="this.typeJournal === 'bank'" @onAccept='methodbutton' @onCancel='methodbutton' )
             .method-form-item
                 label.method-form-label Total
                 input.method-form-input-number(readonly :value="paymentCurrencyTotal | currency(...currency)")
@@ -29,20 +28,20 @@
             .method-form-item
                 label.method-form-label Monto a Devolver
                 input.method-form-input-number(readonly :value='paymentsReturned | currency(...currency)')
+        payment-bank(:show="showBankPaymentModal" :paymentTypes='this.bankType' :bank='this.bank' :bankPayments='this.bankPayments' :currency='currencyJournal' @onSubmit='submitButton')
 </template>
 
 <script>
     import { mapGetters, mapActions } from 'vuex'
     import Ticket from '@@/payments/VoucherTicket'
-    import PaymentReference from '@@/modals/PaymentReferenceModals'
+    import PaymentBank from '@@/modals/BankPaymentsModal'
     import Spinner from '@@/common/Spinner'
-    import { SELECT_JOURNAL, CHANGE_INITIAL_PAID, RESET_PAYMENTS_BANK }from '@/constants/actionTypes'
 
     export default {
         components: {
             Ticket,
             Spinner,
-            PaymentReference
+            PaymentBank
         },
         computed:{
             paymentJournals: {
@@ -53,12 +52,6 @@
                 set(value) {
                     if (value)
                         this.selectJournal(value)
-                        this.typeJournal= value.type
-
-                        if (value.type === 'bank'){
-                            this.changeInitialPaid(this.paymentCurrencyTotal)
-                            this.computePayment(this.paymentCurrencyTotal)
-                        }
                 }
             },
             paid: {
@@ -95,29 +88,30 @@
                 'paymentsReturned',
                 'paymentCurrencyTotal',
                 'processingPayments',
-                'currencyAmount'
+                'currencyAmount',
+                'bank',
+                'bankType',
+                'bankPayments',
+                'showBankPaymentModal'
             ]),
         },
         methods: {
             computePayment(value) {
                 this.paymentsReturned = value < this.paymentCurrencyTotal ? 0 : value - this.paymentCurrencyTotal
             },
-            methodbutton(value) {
-                    this.typeJournal = ''
-                if (value === 'Cancel') {
-                    this.resetPaymentsBank()
-                }
+            submitButton(value) {
+                this.submitBankPayments(value)
             },
             ...mapActions([
-                SELECT_JOURNAL,
-                CHANGE_INITIAL_PAID,
-                RESET_PAYMENTS_BANK
+                'selectJournal',
+                'changeInitialPaid',
+                'submitBankPayments'
             ])
         },
         data() {
             return {
                 paymentsReturned: 0,
-                typeJournal:'',
+                // typeJournal:'',
             }
 
             }

+ 2 - 4
src/components/steps/MoveLine.vue

@@ -7,9 +7,7 @@
 <script>
     import Grid from '@@/moveLine/MovesGrid'
     import SelectMoves from '@@/moveLine/SelectedMovesGrid'
-
     import {mapGetters, mapActions } from 'vuex'
-    import { SELECT_MOVE, REMOVE_MOVE_PAYMENTS } from '@/constants/actionTypes'
 
     export default {
         components: {
@@ -23,8 +21,8 @@
             'currencyInvoice',
         ]),
         methods: mapActions([
-            SELECT_MOVE,
-            REMOVE_MOVE_PAYMENTS
+            'selectMove',
+            'removeMovePayments',
         ])
     }
 </script>

+ 2 - 3
src/components/steps/Partner.vue

@@ -12,7 +12,6 @@
     import { mapGetters, mapActions } from 'vuex'
     import { Searcher, CardGrid } from '@@/common'
     import CustomerDetails from '@@/froms/CustomerDetails'
-    import { SELECT_PAYMENTS_CUSTOMER, FILTER_PAYMENTS_CUSTOMERS } from '@/constants/actionTypes'
 
     export default {
         components: {
@@ -28,8 +27,8 @@
             'customerVisible'
         ]),
         methods: mapActions([
-            SELECT_PAYMENTS_CUSTOMER,
-            FILTER_PAYMENTS_CUSTOMERS
+            'selectPaymentsCustomer',
+            'filterPaymentsCustomers'
         ])
     }
 </script>

+ 0 - 101
src/constants/actionTypes.js

@@ -1,101 +0,0 @@
-const PAYMENTS_NOTIFY = 'paymentsNotify'
-const INIT_PAYMENTS = 'initPayments'
-const EXPLODE_DATA = 'explodeData'
-//Processar Pagos
-const PAYMENTS_PROCESS = 'paymentProcess'
-const COMPLETED_PAYMENTS = 'completedPayments'
-const RESET_PAYMENT_CUSTOMER = 'resetPaymentCustomer'
-const SET_CHANGE_TAB_STEPS_SALES = 'setChangeTabStepsSales'
-/**
- * [DATE]
- */
-const INIT_PAYMENTS_DATE = 'initPaymentsDate'
-/**
- * [USER-COMPANY-CURRENCY_COMPANY ]
- */
-const INIT_PAYMENTS_USER = 'initPaymentsUser'
-const INIT_PAYMENTS_COMPANY = 'initPaymentsCompany'
-// const SELECT_CURRENCY_COMPANY = 'selectCurencyCompany'
-/**
- * [CUSTOMERS]
- */
-const INIT_PAYMENTS_CUSTOMERS = 'initPaymentsCustomers'
-const SELECT_PAYMENTS_CUSTOMER = 'selectPaymentsCustomer'
-const FILTER_PAYMENTS_CUSTOMERS = 'filterPaymentsCustomers'
-/* invoice */
-const SELECT_CUSTOMER_INVOICES = 'selectCustomerInvoices'
-const SELECT_INVOICE = 'selectInvoice'
-const ADD_MOVE_IN_INVOICE = 'addMoveInInvoice'
-const FILTER_PAYMENTS_INVOICE ='filterPaymentsInvoice'
-/* Move Line */
-const SELECT_MOVE_INVOICE = 'selectMoveInvoice'
-const SELECT_MOVE = 'selectMove'
-const REMOVE_MOVE_PAYMENTS = 'removeMovePayments'
-const REMOVE_MOVE_PAYMENTS_ALL = 'removeMovePaymentsAll'
-const SET_MOVE_PAYMENTS = 'setMovePayments'
-/**
- * [JOURNALS]
- */
-const INIT_PAYMENTS_JOURNALS = 'initPaymentsJournals'
-const SELECT_JOURNAL = 'selectJournal'
-const CHANGE_INITIAL_PAID ='changeInitialPaid'
-const RESET_SELECTED_JOURNAL= 'resetSelectedJournal'
-/**
- * [CURRENCIES]
- */
-const INIT_PAYMENTS_CURRENCIES = 'initPaymentsCurrencies'
-const INIT_CURRENCIES_AMOUNT = 'initCurenciesAmount'
-/**
- * [payments]
- */
-const CALCULATE_CURRENCY_TOTAL = 'calculateCurrencyTotal'
-/* BANK */
-const INIT_PAYMENTS_BANK = 'initPaymentsBank'
-const SELECT_PAYMENTS_BANK = 'selectPaymentsBank'
-const INIT_PAYMENTS_BANK_TYPE = 'initPaymentsBankType'
-const SELECT_PAYMENTS_BANK_TYPE = 'selectPaymentsBankType'
-const CHANGE_PAYMENTS_BANK_REF  =   'changePaymentsBankRef'
-const CHANGE_PAYMENTS_BANK_DATE_MATURITY = 'changePaymentsBankDateMaturity'
-const CHANGE_PAYMENTS_BANK_NUMBER_CTA = 'changePaymentsBankNumberCta'
-const CHANGE_PAYMENTS_BANK_NAME_HOLDER = 'changePaymentsBankNameHolder'
-/*
-    Check
- */
- const CHECK_CUSTOMER = 'checkCustomer'
- const CHECK_INVOICE = 'checkInvoice'
- const CHECK_MOVE = 'checkMove'
- const CHECK_PAYMENTS = 'checkPayments'
- /**
-  * Reset
-  */
-const RESET_DATE = 'resetDate'
-const RESET_USER = 'resetUser'
-const RESET_COMPANY = 'resetCompany'
-const RESET_CUSTOMERS = 'resetCustomers'
-const RESET_INVOICES = 'resetInvoices'
-const RESET_MOVE_LINES = 'resetMoveLines'
-const RESET_JOURNALS = 'resetJournals'
-const RESET_CURRENCY = 'resetCurrency'
-const RESET_PAYMENTS = 'resetPayments'
-const RESET_BANK_TYPE = 'resetBankType'
-const RESET_BANK = 'resetBank'
-const RESET_PAYMENTS_BANK = 'resetPaymentsBank'
-// const RESET_SELECTED_BANKS = 'resetSelectedBanks'
-
-export {
-    PAYMENTS_NOTIFY, INIT_PAYMENTS, EXPLODE_DATA, PAYMENTS_PROCESS, COMPLETED_PAYMENTS, SET_CHANGE_TAB_STEPS_SALES, //initial
-    INIT_PAYMENTS_DATE, //date
-    INIT_PAYMENTS_USER, INIT_PAYMENTS_COMPANY, //user
-    INIT_PAYMENTS_CUSTOMERS, SELECT_PAYMENTS_CUSTOMER, FILTER_PAYMENTS_CUSTOMERS, //customer
-    SELECT_CUSTOMER_INVOICES, SELECT_INVOICE, ADD_MOVE_IN_INVOICE,FILTER_PAYMENTS_INVOICE, //Customer -invoice
-    SELECT_MOVE_INVOICE, SELECT_MOVE,REMOVE_MOVE_PAYMENTS, REMOVE_MOVE_PAYMENTS_ALL, SET_MOVE_PAYMENTS, //Customer -Move
-    INIT_PAYMENTS_JOURNALS, SELECT_JOURNAL, CHANGE_INITIAL_PAID, RESET_SELECTED_JOURNAL,//Journal
-    INIT_PAYMENTS_CURRENCIES, INIT_CURRENCIES_AMOUNT,//currency
-    CALCULATE_CURRENCY_TOTAL, //payments
-    INIT_PAYMENTS_BANK, SELECT_PAYMENTS_BANK, //BANK
-    INIT_PAYMENTS_BANK_TYPE,  SELECT_PAYMENTS_BANK_TYPE, //BANK TYPE
-    CHANGE_PAYMENTS_BANK_REF, CHANGE_PAYMENTS_BANK_DATE_MATURITY,CHANGE_PAYMENTS_BANK_NUMBER_CTA, CHANGE_PAYMENTS_BANK_NAME_HOLDER, // number, datematutity
-    CHECK_CUSTOMER, CHECK_INVOICE, CHECK_MOVE, CHECK_PAYMENTS, //Check
-    RESET_PAYMENT_CUSTOMER, RESET_DATE, RESET_USER, RESET_COMPANY, RESET_CUSTOMERS, RESET_INVOICES,
-    RESET_MOVE_LINES, RESET_JOURNALS, RESET_CURRENCY, RESET_PAYMENTS, RESET_PAYMENTS_BANK, RESET_BANK_TYPE, RESET_BANK //RESET STATE
-}

+ 0 - 89
src/constants/mutationTypes.js

@@ -1,89 +0,0 @@
-/**
- * [Date]
- * @type {String}
- */
-const SET_DATE = 'setDate'
-const SET_LOADING_DATE = 'setLoadingDate'
-/**
- * [SET_PROCESSING_PAYMENTS description]
- * @type {String}
- */
-const SET_PROCESSING_PAYMENTS ='setProcessingPayments'
-const SET_COMPLETED_PAYMENTS = 'setCompletedPayments'
-/**
- * [USER]
- * @type {String}
- */
-const SET_USER = 'setUser'
-const SET_LOADING_USER = 'setLoadingUser'
-const SET_SELECTED_COMPANY = 'setSelectedCompany'
-const SET_SELECTED_CURRENCY_COMPANY = 'setSelectedCurrencyCompany'
-/**
- * [CUSTOMERS ]
- * @type {String}
- */
-const SET_CUSTOMERS = 'setCustomers'
-const SET_LOADING_CUSTOMERS = 'setLoadingCustomers'
-const SET_SELECTED_CUSTOMER = 'setSelectCustomer'
-const SET_FILTER_PAYMENTS_CUSTOMERS = 'setFilterPaymentsCustomers'
-/*invoices*/
-const SET_INVOICES = 'setInvoices'
-const SET_SELECTED_INVOICE = 'setSelectedInvoice'
-const SET_SELECTED_CURRENCY_INVOICE = 'setSelectedCurrencyInvoice'
-const SET_MOVE_IN_INVOICE = 'setMoveInInvoice'
-const SET_FILTER_PAYMENTS_INVOICE = 'setFilterPaymentsInvoice'
-/* Moves Lines */
-const SET_MOVES = 'setMoves'
-const SET_SELECTED_MOVE_LINE = 'setSelectedMoveLine'
-const SET_SELECTED_MOVE_PAYMENTS = 'setSelectedMovePayments'
-const REMOVE_MOVE_LINE = 'removeMoveLine'
-const REMOVE_PAYMENTS_MOVE = 'removePaymentsMove'
-const SET_TOTAL_MOVE_PAYMENTS = 'setTotalMovePayments'
-const SET_ORDER_MOVE_LINE = 'setOrderMoveLine'
-const SET_ORDER_PAYMENTS_MOVE = 'setOrderPaymentsMove'
-/**
- * [JOURNALS]
- * @type {String}
- */
-const SET_JOURNALS = 'setJournals'
-const SET_LOADING_JOURNALS = 'setLoadingJournals'
-const SET_SELECTED_JOURNAL = 'setSelectedJournal'
-const SET_PAID_TOTAL = 'setPaidTotal'
-const SET_CURRENCY_JOURNAL = 'setCurrencyJournal'
-// const SET_PAYMENTS_RETURNED = 'setPaymentsReturned'
-
-/**
- * [CURRENCIES]
- * @type {String}
- */
-const SET_CURRENCIES = 'setCurrencies'
-const SET_LOADING_CURRENCIES = 'setLoadingCurrencies'
-const SET_CURRENCIES_AMOUNT = 'setCurrenciesAmount'
-/**
- * [Payments]
- */
-const SET_CALCULATE_CURRENCY_TOTAL = 'setCalculateCurencytotal'
-const SET_CURRENCY_TOTAL = 'setCurrencyTotal'
-/* BANK */
-const SET_BANK = 'setBank'
-const SET_SELECTED_BANK = 'setSelectedBank'
-const SET_BANK_TYPE = 'setBankType'
-const SET_SELECTED_BANK_TYPE = 'setSelectedBankType'
-const SET_PAYMENTS_BANK_REF  =   'setPaymentsBankRef'
-const SET_PAYMENTS_BANK_DATE_MATURITY = 'setPaymentsBankDateMaturity'
-const SET_PAYMENTS_BANK_NUMBER_CTA = 'setPaymentsbankNumberCta'
-const SET_PAYMENTS_BANK_NAME_HOLDER = 'setPaymentsbankNameHolder'
-
-export {
-    SET_PROCESSING_PAYMENTS, SET_COMPLETED_PAYMENTS,
-    SET_DATE, SET_LOADING_DATE, //Date
-    SET_USER, SET_LOADING_USER, SET_SELECTED_COMPANY, SET_SELECTED_CURRENCY_COMPANY, //User
-    SET_CUSTOMERS, SET_LOADING_CUSTOMERS, SET_SELECTED_CUSTOMER, SET_FILTER_PAYMENTS_CUSTOMERS, //customer
-    SET_INVOICES, SET_SELECTED_INVOICE, SET_SELECTED_CURRENCY_INVOICE, SET_MOVE_IN_INVOICE,SET_FILTER_PAYMENTS_INVOICE, //customer - invoice
-    SET_MOVES, SET_SELECTED_MOVE_LINE, SET_SELECTED_MOVE_PAYMENTS, REMOVE_MOVE_LINE, REMOVE_PAYMENTS_MOVE, SET_TOTAL_MOVE_PAYMENTS,SET_ORDER_MOVE_LINE ,SET_ORDER_PAYMENTS_MOVE, //customer -Move
-    SET_JOURNALS, SET_LOADING_JOURNALS, SET_SELECTED_JOURNAL, SET_PAID_TOTAL, SET_CURRENCY_JOURNAL,//Journal
-    SET_CURRENCIES, SET_LOADING_CURRENCIES, SET_CURRENCIES_AMOUNT,//Currency
-    SET_CALCULATE_CURRENCY_TOTAL, SET_CURRENCY_TOTAL, SET_PAYMENTS_BANK_NUMBER_CTA,SET_PAYMENTS_BANK_NAME_HOLDER,// payments
-    //bank
-    SET_BANK,SET_SELECTED_BANK,SET_BANK_TYPE, SET_SELECTED_BANK_TYPE, SET_PAYMENTS_BANK_REF, SET_PAYMENTS_BANK_DATE_MATURITY
-}

+ 3 - 1
src/index.js

@@ -6,11 +6,13 @@ import store from '@/store'
 import currency from '@@/filters/currency'
 import dateFormat from '@@/filters/dateFormat'
 
+import DatePicker from 'vue2-datepicker'
+
 Vue.filter('currency', currency)
 Vue.filter('dateFormat', dateFormat)
 
 Vue.use(VModal)
-
+Vue.use(DatePicker)
 // Vue.config.
 Vue.config.productionTip = false
 Vue.config.silent = true

+ 190 - 0
src/store/PaymentsStore.js

@@ -0,0 +1,190 @@
+import axios from 'axios'
+import {
+    INIT_PAYMENTS_URL,
+    PAYMENTS_PROCESS_URL
+} from '@/constants/resourcePaths'
+
+const state = {
+    processingPayments: false,
+    completedPayments: false
+}
+
+const getters = {
+    /**
+     * [processingPayments description]
+     */
+    processingPayments (state) {
+        return state.processingPayments
+    },
+    /**
+     * [completedPayments description]
+     */
+    completedPayments (state) {
+        return state.completedPayments
+    }
+}
+
+const mutations = {
+    /**
+     * [processingPayments description]
+    */
+    setProcessingPayments(state, payload) {
+        state.processingPayments = payload
+    },
+    /**
+     * [completedPayments description]
+     * @type {[type]}
+     */
+    setCompletedPayments(state, payload) {
+        state.completedPayments = payload
+    }
+}
+
+const actions = {
+    /**
+     * [PAYMENTS_NOTIFY]
+     */
+    paymentsNotify ({ commit },payload) {
+        openerp.web.notification.do_warn('Atencion', payload)
+        return false
+    },
+    /**
+     * [INIT_PAYMENTS]
+     */
+    initPayments ({ dispatch }) {
+        return axios.get(INIT_PAYMENTS_URL).then(response => {
+            dispatch('completedPayments', false)
+            dispatch('explodeData', response.data)
+        }).catch(error => {
+            console.log(error);
+        })
+    },
+    /**
+     * [EXPLODE_DATA]
+     */
+    explodeData ({ dispatch }, payload) {
+        for (let value in payload) {
+            dispatch(`initPayments${value[0].toUpperCase()}${value.slice(1)}`,payload[value])
+        }
+    },
+    /**
+     * [CHECK_CUSTOMER]
+     */
+    checkCustomer ({ getters, dispatch }) {
+        return !!getters.selectedCustomer ||dispatch('paymentsNotify','Necesitas seleccionar un cliente para continuar.')
+    },
+    /**
+     * [checkInvoice]
+     */
+    checkInvoice ({ getters, dispatch }) {
+        return !!getters.selectedInvoice ||dispatch('paymentsNotify', 'Necesitas seleccionar una factura para continuar.')
+    },
+    /**
+     * [checkMove]
+     */
+    checkMove({ getters, dispatch }) {
+        return !!getters.movesPayments.length || dispatch('paymentsNotify','Necesitas seleccionar al menos una cuota para continuar.')
+    },
+    /**
+     * [checkPayments]
+     */
+    checkPayments ({ getters, dispatch }) {
+        if (!getters.selectedJournal || getters.selectedJournal.length <= 0) {
+             return dispatch('paymentsNotify', 'Necesitas seleccionar un método de pago')
+        }
+        if (getters.paidTotal <= 0){
+            return dispatch('paymentsNotify', 'Necesitas ingresar un monto a pagar')
+        }
+        let bank = !!getters.selectedJournal && getters.selectedJournal.type ==='bank' && !!getters.bank.length && !!getters.bankType.length
+
+        if (bank) {
+            if (!getters.selectedPaymentsBank || getters.selectedPaymentsBank.length <= 0) {
+                 return dispatch('paymentsNotify', 'Necesitas seleccionar un banco')
+            }
+            if (!getters.selectedPaymentsBankType || getters.selectedPaymentsBankType.length <= 0) {
+                 return dispatch('paymentsNotify', 'Necesitas seleccionar el tipo de transacción bancaria')
+            }
+            if (!getters.paymentsBankRef){
+                return dispatch('paymentsNotify', 'Necesitas ingresar el Nº cheque / boleta')
+            }
+            if (!getters.paymentsBankDateMaturity){
+                return dispatch('paymentsNotify', 'Necesitas ingresar una fecha de vencimiento')
+            }
+        }
+
+        return true
+    },
+    /**
+     * [PAYMENTS_PROCESS]
+     */
+    paymentsProcess ({ getters, commit, dispatch }, payload ) {
+        commit('setProcessingPayments', true)
+        let bank = !!getters.selectedJournal && getters.selectedJournal.type ==='bank' && !!getters.bank.length && !!getters.bankType.length
+        const data = {
+            jsonrpc: '2.0',
+            method: 'call',
+            params: {
+                invoiceId: getters.selectedInvoice.id,
+                journalId: getters.selectedJournal.id,
+                customerId: getters.selectedCustomer.id,
+                amountPayments: getters.paidTotal <= getters.paymentCurrencyTotal ? getters.paidTotal : getters.paymentCurrencyTotal,
+                journalType: getters.selectedJournal.type,
+                bankId: !!bank ? getters.selectedPaymentsBank.id : '',
+                bankTypeId: !!bank ? getters.selectedPaymentsBankType.id : '',
+                bankRef: !!bank ? getters.paymentsBankRef : '',
+                bankAmount: !!bank ? getters.paymentsBankAmount : 0,
+                bankDateMaturity: !!bank ? getters.paymentsBankDateMaturity : '',
+                paymentsBankNumber_cta: !!bank ? getters.paymentsBankNumberCta : '',
+                paymentsBankName_holder: !!bank ? getters.paymentsBankNameHolder : '',
+                moveLines: getters.movesPayments.map(item => {
+                    return item.id
+                })
+            }
+        }
+
+        return axios.post(PAYMENTS_PROCESS_URL, data).then(response => {
+            commit('setProcessingPayments', !response.data.result)
+            dispatch('completedPayments', response.data.result)
+        }).catch(error => {
+            console.log(error);
+            commit('setProcessingPayments', false)
+        })
+    },
+    /**
+     * [COMPLETED_PAYMENTS]
+     */
+    completedPayments({ commit }, payload) {
+        commit('setCompletedPayments', !!payload)
+    },
+    /**
+     * [RESET_PAYMENT_CUSTOMER]
+     */
+    resetPaymentCustomer({ rootState, commit, dispatch }){
+        for (let key in rootState) {
+            if (!(rootState[key] instanceof Object)){
+                continue
+            }
+            dispatch(`reset${key[0].toUpperCase()}${key.slice(1)}`)
+        }
+        dispatch('initPayments')
+    },
+    /**
+     * [prev description]
+     */
+    setChangeTabStepsSales({ commit, dispatch, getters }, payload) {
+        if (payload.prev === 0 && payload.next === -1) {
+            dispatch('resetPaymentCustomer')
+        }
+        // Reset STEPS 3-4
+        if (payload.prev >= 2 && payload.next <= 1){
+            dispatch('removeMovePaymentsAll')
+        }
+    }
+}
+
+export default {
+    state,
+    getters,
+    mutations,
+    actions
+}

+ 0 - 194
src/store/actions.js

@@ -1,194 +0,0 @@
-import axios from 'axios'
-import {
-    INIT_PAYMENTS_URL,
-    PAYMENTS_PROCESS_URL
-} from '@/constants/resourcePaths'
-/*Action */
-import {
-    PAYMENTS_NOTIFY,
-    INIT_PAYMENTS,
-    EXPLODE_DATA,
-    INIT_PAYMENTS_DATE,
-    INIT_PAYMENTS_USER,
-    INIT_PAYMENTS_CUSTOMERS,
-    INIT_PAYMENTS_JOURNALS,
-    INIT_PAYMENTS_CURRENCIES,
-    PAYMENTS_PROCESS,
-    CHECK_CUSTOMER,
-    CHECK_INVOICE,
-    CHECK_MOVE,
-    CHECK_PAYMENTS,
-    COMPLETED_PAYMENTS,
-    RESET_PAYMENT_CUSTOMER,
-    RESET_DATE,
-    RESET_USER,
-    RESET_COMPANY,
-    RESET_CUSTOMERS,
-    RESET_INVOICES,
-    RESET_MOVE_LINES,
-    RESET_JOURNALS,
-    RESET_CURRENCY,
-    RESET_PAYMENTS,
-    RESET_BANK_TYPE,
-    RESET_BANK,
-    SET_CHANGE_TAB_STEPS_SALES,
-    REMOVE_MOVE_PAYMENTS_ALL
-} from '@/constants/actionTypes'
-// Mutations
-import {
-    SET_PROCESSING_PAYMENTS,
-    SET_COMPLETED_PAYMENTS
-} from '@/constants/mutationTypes'
-
-const actions = {
-    /**
-     * [PAYMENTS_NOTIFY]
-     * @type {[type]}
-     */
-    [PAYMENTS_NOTIFY] ({ commit },payload) {
-        openerp.web.notification.do_warn('Atencion', payload)
-        return false
-    },
-    /**
-     * [INIT_PAYMENTS]
-     * @param {*} param0
-     */
-    [INIT_PAYMENTS] ({ dispatch }) {
-        return axios.get(INIT_PAYMENTS_URL).then(response => {
-            dispatch(COMPLETED_PAYMENTS, false)
-            dispatch('explodeData', response.data)
-        }).catch(error => {
-            console.log(error);
-        })
-    },
-    /**
-     * [EXPLODE_DATA]
-     * @param {*} param0
-     * @param {*} payload
-     */
-    [EXPLODE_DATA] ({ dispatch }, payload) {
-        for (let value in payload) {
-            dispatch(`initPayments${value[0].toUpperCase()}${value.slice(1)}`,payload[value])
-        }
-    },
-    /**
-     * [CHECK_CUSTOMER]
-     */
-    [CHECK_CUSTOMER] ({ getters, dispatch }) {
-        return !!getters.selectedCustomer ||dispatch(PAYMENTS_NOTIFY,'Necesitas seleccionar un cliente para continuar.')
-    },
-    /**
-     * [CHECK_INVOICE]
-     */
-    [CHECK_INVOICE] ({ getters, dispatch }) {
-        return !!getters.selectedInvoice ||dispatch(PAYMENTS_NOTIFY, 'Necesitas seleccionar una factura para continuar.')
-    },
-    /**
-     * [data description]
-     * @type {Object}
-     */
-    [CHECK_MOVE]({ getters, dispatch }) {
-        return !!getters.movesPayments.length || dispatch(PAYMENTS_NOTIFY,'Necesitas seleccionar al menos una cuota para continuar.')
-    },
-    /**
-     * [data description]
-     * @type {Object}
-     */
-    [CHECK_PAYMENTS]({ getters, dispatch }) {
-        if (!getters.selectedJournal || getters.selectedJournal.length <= 0) {
-             return dispatch(PAYMENTS_NOTIFY, 'Necesitas seleccionar un método de pago')
-        }
-        if (getters.paidTotal <= 0){
-            return dispatch(PAYMENTS_NOTIFY, 'Necesitas ingresar un monto a pagar')
-        }
-        if (getters.selectedJournal && getters.selectedJournal.type ==='bank') {
-            if (!getters.selectedPaymentsBank || getters.selectedPaymentsBank.length <= 0) {
-                 return dispatch(PAYMENTS_NOTIFY, 'Necesitas seleccionar un banco')
-            }
-            if (!getters.selectedPaymentsBankType || getters.selectedPaymentsBankType.length <= 0) {
-                 return dispatch(PAYMENTS_NOTIFY, 'Necesitas seleccionar el tipo de transacción bancaria')
-            }
-            if (!getters.paymentsBankRef){
-                return dispatch(PAYMENTS_NOTIFY, 'Necesitas ingresar el Nº cheque / boleta')
-            }
-            if (!getters.paymentsBankDateMaturity){
-                return dispatch(PAYMENTS_NOTIFY, 'Necesitas ingresar una fecha de vencimiento')
-            }
-        }
-
-        return true
-    },
-    /**
-     * [PAYMENTS_PROCESS]
-     * @param {*} param0
-     * @param {*} payload
-     */
-    [PAYMENTS_PROCESS] ({ getters, commit, dispatch }, payload ) {
-        commit(SET_PROCESSING_PAYMENTS, true)
-        const data = {
-            jsonrpc: '2.0',
-            method: 'call',
-            params: {
-                invoiceId: getters.selectedInvoice.id,
-                journalId: getters.selectedJournal.id,
-                customerId: getters.selectedCustomer.id,
-                amountPayments: getters.paidTotal <= getters.paymentCurrencyTotal ? getters.paidTotal : getters.paymentCurrencyTotal,
-
-                journalType: getters.selectedJournal.type,
-                bankId: getters.selectedJournal.type ==='bank' ? getters.selectedPaymentsBank.id : '',
-                bankTypeId: getters.selectedJournal.type ==='bank' ? getters.selectedPaymentsBankType.id : '',
-                bankRef: getters.selectedJournal.type ==='bank' ? getters.paymentsBankRef : '',
-                bankDateMaturity: getters.selectedJournal.type ==='bank' ? getters.paymentsBankDateMaturity : '',
-                paymentsBankNumber_cta: getters.selectedJournal.type ==='bank' ? getters.paymentsBankNumberCta : '',
-                paymentsBankName_holder: getters.selectedJournal.type ==='bank' ? getters.paymentsBankNameHolder : '',
-
-                moveLines: getters.movesPayments.map(item => {
-                    return item.id
-                })
-            }
-        }
-
-        return axios.post(PAYMENTS_PROCESS_URL, data).then(response => {
-            commit(SET_PROCESSING_PAYMENTS, !response.data.result)
-            dispatch(COMPLETED_PAYMENTS, response.data.result)
-        }).catch(error => {
-            console.log(error);
-            commit(SET_PROCESSING_PAYMENTS, false)
-        })
-    },
-    /**
-     * [COMPLETED_PAYMENTS]
-     *
-     */
-    [COMPLETED_PAYMENTS] ({ commit }, payload) {
-        commit(SET_COMPLETED_PAYMENTS, !!payload)
-    },
-    /**
-     * [RESET_PAYMENT_CUSTOMER]
-     */
-    [RESET_PAYMENT_CUSTOMER] ({ rootState, commit, dispatch }){
-        for (let key in rootState) {
-            if (!(rootState[key] instanceof Object)){
-                continue
-            }
-            dispatch(`reset${key[0].toUpperCase()}${key.slice(1)}`)
-        }
-        dispatch(INIT_PAYMENTS)
-    },
-    /**
-     * [prev description]
-     * @type {[type]}
-     */
-    [SET_CHANGE_TAB_STEPS_SALES] ({ commit, dispatch, getters }, payload) {
-        // Resetaer all
-        if (payload.prev === 0 && payload.next === -1) {
-            dispatch(RESET_PAYMENT_CUSTOMER)
-        }
-        // Reset STEPS 3-4
-        if (payload.prev >= 2 && payload.next <= 1){
-            dispatch(REMOVE_MOVE_PAYMENTS_ALL)
-        }
-    }
-}
-
-export default actions

+ 0 - 22
src/store/getters.js

@@ -1,22 +0,0 @@
-const getters = {
-    /**
-     * [processingPayments description]
-     * @method processingPayments
-     * @param  {[type]}           state [description]
-     * @return {[type]}                 [description]
-     */
-    processingPayments (state) {
-        return state.processingPayments
-    },
-    /**
-     * [completedPayments description]
-     * @method completedPayments
-     * @param  {[type]}          state [description]
-     * @return {[type]}                [description]
-     */
-    completedPayments (state) {
-        return state.completedPayments
-    }
-}
-
-export default getters

+ 5 - 9
src/store/index.js

@@ -1,10 +1,7 @@
 import Vue from 'vue'
 import Vuex from 'vuex'
 
-import actions from '@/store/actions'
-import getters from '@/store/getters'
-import mutations from '@/store/mutations'
-import state from '@/store/state'
+import PaymentStore from '@/store/PaymentsStore'
 
 /* date*/
 import date from '@/store/modules/date'
@@ -24,14 +21,12 @@ import payments  from '@/store/modules/payments'
 /* BANK*/
 import bank from '@/store/modules/bank'
 import bankType  from '@/store/modules/bankType'
+import bankPayments  from '@/store/modules/bankPayments'
 
 Vue.use(Vuex)
 
 const store = new Vuex.Store({
-    state,
-    getters,
-    mutations,
-    actions,
+    ...PaymentStore,
     modules: {
         date,
         user,
@@ -43,7 +38,8 @@ const store = new Vuex.Store({
         currency,
         payments,
         bank,
-        bankType
+        bankType,
+        bankPayments
     },
     strict: true
 })

+ 6 - 15
src/store/modules/bank.js

@@ -1,13 +1,3 @@
-/* Actions */
-import {
-    INIT_PAYMENTS_BANK,
-    RESET_BANK
-} from '@/constants/actionTypes'
-/* Mutations */
-import {
-    SET_BANK
-} from '@/constants/mutationTypes'
-
 const initialState = {
     bank: []
 }
@@ -32,23 +22,24 @@ const mutations = {
      * [bank description]
      * @type {[type]}
      */
-    [SET_BANK] (state, payload) {
+    setBank (state, payload) {
         state.bank = payload
     }
 }
+
 const actions = {
     /**
      * [INIT_PAYMENTS_BANK]
      *
      */
-    [INIT_PAYMENTS_BANK] ({ commit }, payload) {
-        commit(SET_BANK, payload)
+    initPaymentsBank ({ commit }, payload) {
+        commit('setBank', payload)
     },
     /**
      * [RESET_BANK]
      */
-    [RESET_BANK] ({ commit }, payload) {
-        commit(SET_BANK, [])
+    resetBank ({ commit }, payload) {
+        commit('setBank', [])
     }
 }
 

+ 47 - 0
src/store/modules/bankPayments.js

@@ -0,0 +1,47 @@
+const initialState = {
+    bankPayments: []
+}
+
+const state = {
+    bankPayments: initialState.bankPayments
+}
+
+const getters = {
+    /**
+     * [bankPayments description]
+     */
+    bankPayments (state) {
+        return state.bankPayments
+    }
+}
+
+const mutations = {
+    /**
+     * [bankPayments description]
+     */
+    setBankPayments (state, payload) {
+        state.bankPayments = payload
+    }
+}
+
+const actions = {
+    /**
+     * [INIT_PAYMENTS_BANK_PAYMENTS]
+     */
+    initPaymentsBankPayments ({ commit }, payload) {
+        commit('setBankPayments', payload)
+    },
+    /**
+     * resetBankPayments
+     */
+    resetBankPayments ({commit}) {
+        commit('setBankPayments', [])
+    }
+}
+
+export default {
+    state,
+    getters,
+    mutations,
+    actions
+}

+ 5 - 14
src/store/modules/bankType.js

@@ -1,9 +1,3 @@
-/* Actions */
-import { INIT_PAYMENTS_BANK_TYPE, RESET_BANK_TYPE } from '@/constants/actionTypes'
-
-/* Mutations */
-import { SET_BANK_TYPE } from '@/constants/mutationTypes'
-
 const initialState = {
     bankType: []
 }
@@ -15,8 +9,6 @@ const state = {
 const getters = {
     /**
      * [bankType description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     bankType(state){
         return state.bankType
@@ -26,9 +18,8 @@ const getters = {
 const mutations = {
     /**
      * [bankType description]
-     * @type {[type]}
      */
-    [SET_BANK_TYPE] (state, payload) {
+    setBankType (state, payload) {
         state.bankType = payload
     }
 }
@@ -38,14 +29,14 @@ const actions = {
      *  [INIT_PAYMENTS_BANK_TYPE]
      *  @type {[type]}
      */
-    [INIT_PAYMENTS_BANK_TYPE] ({ commit }, payload ) {
-        commit(SET_BANK_TYPE, payload)
+    initPaymentsBankType ({ commit }, payload ) {
+        commit('setBankType', payload)
     },
     /**
      * [RESET_BANK_TYPE]
      */
-    [RESET_BANK_TYPE] ({ commit }, payload) {
-        commit(SET_BANK_TYPE, [])
+    resetBankType ({ commit }, payload) {
+        commit('setBankType', [])
     }
 }
 

+ 11 - 21
src/store/modules/company.js

@@ -1,6 +1,3 @@
-import { INIT_PAYMENTS_COMPANY, RESET_COMPANY } from '@/constants/actionTypes'
-import { SET_SELECTED_COMPANY, SET_SELECTED_CURRENCY_COMPANY } from '@/constants/mutationTypes'
-
 const initialState = {
     company: null,
     currencyCompany: null
@@ -14,16 +11,12 @@ const state = {
 const getters = {
     /**
      * [company description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     company(state) {
         return state.company
     },
     /**
      * [currencyCompany description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     currencyCompany(state) {
         return state.currencyCompany
@@ -33,35 +26,32 @@ const getters = {
 const mutations = {
     /**
      * [company description]
-     * @param  {[type]} state [description]
-     * @param  {[type]} payload [description]
      */
-    [SET_SELECTED_COMPANY] (state, payload) {
+    setSelectedCompany(state, payload) {
         state.company = payload
     },
     /**
      * [currencyCompany description]
-     * @param  {[type]} state [description]
-     * @param  {[type]} payload [description]
      */
-    [SET_SELECTED_CURRENCY_COMPANY] (state, payload) {
+    setSelectedCurrencyCompany (state, payload) {
         state.currencyCompany = payload
     }
 }
+
 const actions = {
     /**
-     *
+     *[initPaymentsCompany]
      */
-    [INIT_PAYMENTS_COMPANY] ({commit}, payload) {
-        commit(SET_SELECTED_COMPANY,payload.company)
-        commit(SET_SELECTED_CURRENCY_COMPANY, payload.currency)
+    initPaymentsCompany ({commit}, payload) {
+        commit('setSelectedCompany',payload.company)
+        commit('setSelectedCurrencyCompany', payload.currency)
     },
     /**
-     *
+     *[RESET_COMPANY]
      */
-    [RESET_COMPANY] ({ commit}) {
-        commit(SET_SELECTED_COMPANY, [])
-        commit(SET_SELECTED_CURRENCY_COMPANY, [])
+    resetCompany ({ commit}) {
+        commit('setSelectedCompany', [])
+        commit('setSelectedCurrencyCompany', [])
     }
 }
 

+ 12 - 31
src/store/modules/currency.js

@@ -1,7 +1,3 @@
-import { INIT_PAYMENTS_CURRENCIES, RESET_CURRENCY, INIT_CURRENCIES_AMOUNT, RESET_PAYMENTS } from '@/constants/actionTypes'
-import { SET_CURRENCIES, SET_LOADING_CURRENCIES, SET_CURRENCIES_AMOUNT } from '@/constants/mutationTypes'
-
-
 const initialState = {
     currency: [],
     loadingCurrency: false,
@@ -17,24 +13,18 @@ const state = {
 const getters = {
     /**
      * [currency]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     currency(state) {
         return state.currency
     },
     /**
      * [loadingCurrency]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     loadingCurrency(state) {
         return state.loadingCurrency
     },
     /**
      * [currencyAmount description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     currencyAmount (state) {
         return state.currencyAmount
@@ -44,25 +34,20 @@ const getters = {
 const mutations = {
     /**
      * [currency]
-     * @param  {[type]} state [description]
-     * @param  {[type]} payload [description]
      */
-    [SET_CURRENCIES] (state, payload) {
+    setCurrencies (state, payload) {
         state.currency = payload
     },
     /**
      * [loadingCurrency]
-     * @param  {[type]} state [description]
-     * @param  {[type]} payload [description]
      */
-    [SET_LOADING_CURRENCIES] (state, payload) {
+    setLoadingCurrencies (state, payload) {
         state.loadingCurrency = !!payload
     },
     /**
      * [actions description]
-     * @type {Object}
      */
-    [SET_CURRENCIES_AMOUNT] (state, payload) {
+    setCurrenciesAmount (state, payload) {
         let currency = payload.currency
         let currencyMove = payload.currencyMovePayments
         let amountCurrency = []
@@ -74,7 +59,7 @@ const mutations = {
                 amount = amount + currencyMoveLine.amountCurencyResidual
             })
             amountCurrency.push({
-                    id: item.id, 
+                    id: item.id,
                     symbolCurrency: item.symbol,
                     amount: amount,
                     symbol: ' ',
@@ -92,30 +77,26 @@ const mutations = {
 const actions = {
     /**
      * [INIT_CURRENCIES]
-     * @param {*} param0
-     * @param {*} payload
      */
-    [INIT_PAYMENTS_CURRENCIES] ({commit}, payload) {
-        commit(SET_CURRENCIES, payload)
-        commit(SET_LOADING_CURRENCIES, payload)
+    initPaymentsCurrencies ({commit}, payload) {
+        commit('setCurrencies', payload)
+        commit('setLoadingCurrencies', payload)
     },
     /**
      * [currencyInvoiceRate description]
-     * @type {[type]}
      */
-    [RESET_CURRENCY] ({ commit }) {
-        commit(SET_CURRENCIES, [] )
+    resetCurrency({ commit }) {
+        commit('setCurrencies', [] )
     },
     /**
      * [currencyInvoiceRate description]
-     * @type {[type]}
      */
-    [INIT_CURRENCIES_AMOUNT] ({ commit, getters, dispatch}) {
-        commit(SET_CURRENCIES_AMOUNT, {
+    initCurrenciesAmount ({ commit, getters, dispatch}) {
+        commit('setCurrenciesAmount', {
             currencyMovePayments: getters.movesPayments,
             currency: getters.currency
         })
-        dispatch(RESET_PAYMENTS)
+        dispatch('resetPayments')
     }
 }
 

+ 28 - 54
src/store/modules/customers.js

@@ -1,18 +1,3 @@
-import {
-    INIT_PAYMENTS_CUSTOMERS,
-    SELECT_PAYMENTS_CUSTOMER,
-    SELECT_CUSTOMER_INVOICES,
-    FILTER_PAYMENTS_CUSTOMERS,
-    RESET_CUSTOMERS
-} from '@/constants/actionTypes'
-
-import {
-    SET_CUSTOMERS,
-    SET_LOADING_CUSTOMERS,
-    SET_SELECTED_CUSTOMER,
-    SET_FILTER_PAYMENTS_CUSTOMERS
-} from '@/constants/mutationTypes'
-
 const initialState = {
     customers: [],
     filterCustomers: [],
@@ -30,97 +15,86 @@ const state = {
 const getters = {
     /**
      * [customers description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     customers(state) {
         return state.customers
     },
     /**
      * [loadingcustomers description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     loadingCustomers(state) {
         return state.loadingCustomers
     },
     /**
      * [selectedCustomer description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     selectedCustomer(state) {
         return state.selectedCustomer
     },
+    /**
+     * [customerVisible description]
+     */
     customerVisible (state) {
         return state.filterCustomers.length === 0 ? state.customers : state.filterCustomers
     }
 }
+
 const mutations = {
     /**
      * [actions description]
-     * @param  {[type]} state [description]
-     * @param  {[type]} payload [description]
      */
-    [SET_CUSTOMERS] (state, payload) {
+    setCustomers (state, payload) {
         state.customers = payload
     },
     /**
      * [loadingcustomers description]
-     * @param  {[type]} state [description]
-     * @param  {[type]} payload [description]
      */
-    [SET_LOADING_CUSTOMERS] (state, payload) {
+    setLoadingCutomers (state, payload) {
         state.loadingCustomers = !payload
     },
     /**
      * [selectedCustomer description]
-     * @param  {[type]} state [description]
-     * @param  {[type]} payload [description]
      */
-    [SET_SELECTED_CUSTOMER] (state, payload) {
+    setSelectedCustomer (state, payload) {
         state.selectedCustomer = payload
     },
-    [SET_FILTER_PAYMENTS_CUSTOMERS] (state, payload) {
+    /**
+     * [filterCustomers description]
+     */
+    setFilterPaymentsCustomers (state, payload) {
         state.filterCustomers = payload
     }
-
 }
+
 const actions = {
     /**
-     *
-     * @param {*} param0
-     * @param {*} payload
+     * [INIT_PAYMENTS_CUSTOMERS]
      */
-    [INIT_PAYMENTS_CUSTOMERS] ({commit}, payload) {
-        commit(SET_CUSTOMERS, payload)
-        commit(SET_LOADING_CUSTOMERS, payload)
+     initPaymentsCustomers({commit}, payload) {
+        commit('setCustomers', payload)
+        commit('setLoadingCutomers', payload)
     },
     /**
-     * @param {*} param0
-     * @param {*} payload
+     * [SELECT_PAYMENTS_CUSTOMER]
      */
-    [SELECT_PAYMENTS_CUSTOMER] ({ commit, dispatch }, payload ) {
-        commit(SET_SELECTED_CUSTOMER, payload)
-        dispatch(SELECT_CUSTOMER_INVOICES, payload.invoices)
+     selectPaymentsCustomer ({ commit, dispatch }, payload ) {
+        commit('setSelectedCustomer', payload)
+        dispatch('selectCustomerInvoices', payload.invoices)
     },
     /**
-     * @param {*} param0
-     * @param {*} payload
-     *
+     * [FILTER_PAYMENTS_CUSTOMERS]
      */
-    [FILTER_PAYMENTS_CUSTOMERS] ({ commit }, payload) {
-        commit(SET_FILTER_PAYMENTS_CUSTOMERS, payload)
+    filterPaymentsCustomers ({ commit }, payload) {
+        commit('setFilterPaymentsCustomers', payload)
     },
     /**
      * [RESET_CUSTOMERS]
-     * @param {*} param0
      */
-    [RESET_CUSTOMERS] ({ commit }) {
-        commit(SET_CUSTOMERS, [])
-        commit(SET_SELECTED_CUSTOMER, null)
-        commit(SET_FILTER_PAYMENTS_CUSTOMERS, [])
-        commit(SET_LOADING_CUSTOMERS, true)
+    resetCustomers ({ commit }) {
+        commit('setCustomers', [])
+        commit('setSelectedCustomer', null)
+        commit('setFilterPaymentsCustomers', [])
+        commit('setLoadingCutomers', true)
     }
 }
 

+ 9 - 24
src/store/modules/date.js

@@ -1,6 +1,3 @@
-import { INIT_PAYMENTS_DATE, RESET_DATE } from '@/constants/actionTypes'
-import { SET_DATE, SET_LOADING_DATE } from '@/constants/mutationTypes'
-
 const initialState = {
     date: null,
     loadingDate: false
@@ -14,16 +11,12 @@ const state = {
 const getters = {
     /**
      * [date description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     date(state) {
         return state.date
     },
     /**
      * [loadingDate description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     loadingDate(state) {
         return state.loadingDate
@@ -33,39 +26,31 @@ const getters = {
 const mutations = {
     /**
      * [date description]
-     * @param  {[type]} state [description]
-     * @param  {[type]} payload [description]
      */
-    [SET_DATE] (state, payload) {
+    setDate (state, payload) {
         state.date = payload
     },
     /**
      * [loadingDate description]
-     * @param  {[type]} state [description]
-     * @param  {[type]} payload [description]
      */
-    [SET_LOADING_DATE](state, payload) {
+    setLoadingDate(state, payload) {
         state.loadingDate = !!payload
     }
 }
 
 const actions = {
     /**
-     *
-     * @param {*} param0
-     * @param {*} payload
+     *[INIT_PAYMENTS_DATE]
      */
-    [INIT_PAYMENTS_DATE] ({ commit}, payload) {
-        commit(SET_DATE, payload)
-        commit(SET_LOADING_DATE, payload)
+    initPaymentsDate ({ commit}, payload) {
+        commit('setDate', payload)
+        commit('setLoadingDate', payload)
     },
     /**
-     *
-     * @param {*} param0
-     * @param {*} payload
+     * [RESET_DATE]
      */
-    [RESET_DATE] ({ commit }) {
-        commit(SET_DATE, [])
+    resetDate ({ commit }) {
+        commit('setDate', [])
     }
 }
 

+ 25 - 69
src/store/modules/invoices.js

@@ -1,20 +1,3 @@
-import {
-    SELECT_CUSTOMER_INVOICES,
-    SELECT_INVOICE,
-    SELECT_MOVE_INVOICE,
-    ADD_MOVE_IN_INVOICE,
-    FILTER_PAYMENTS_INVOICE,
-    RESET_INVOICES
-} from '@/constants/actionTypes'
-
-import {
-    SET_INVOICES,
-    SET_SELECTED_INVOICE,
-    SET_SELECTED_CURRENCY_INVOICE,
-    SET_MOVE_IN_INVOICE,
-    SET_FILTER_PAYMENTS_INVOICE
-} from '@/constants/mutationTypes'
-
 const initialState = {
     invoices: [],
     filterPaymentsInvoice: [],
@@ -32,33 +15,24 @@ const state = {
 const getters = {
     /**
      * [invoices description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     invoices(state) {
         return state.invoices
     },
     /**
      * [currencyInvoice description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     currencyInvoice(state) {
         return state.currencyInvoice
     },
     /**
      * [selectedInvoice description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     selectedInvoice(state) {
         return state.selectedInvoice
     },
     /**
      * [invoicesVisible]
-     * @method invoicesVisible
-     * @param  {[type]}        state [description]
-     * @return {[type]}              [description]
      */
     invoicesVisible(state) {
         return state.filterPaymentsInvoice.length === 0 ?state.invoices : state.filterPaymentsInvoice
@@ -68,38 +42,26 @@ const getters = {
 const mutations = {
     /**
      * [invoices description]
-     * @type {[type]}
-     * @param  {[type]} state [description]
-     * @param  {[type]} payload [description]
      */
-    [SET_INVOICES] (state, payload) {
+    setInvoices (state, payload) {
         state.invoices = payload
     },
     /**
      * [selectedInvoice description]
-     * @type {[type]}
-     * @param  {[type]} state [description]
-     * @param  {[type]} payload [description]
      */
-    [SET_SELECTED_INVOICE] (state, payload) {
+    setSelectedInvoice (state, payload) {
         state.selectedInvoice = payload
     },
     /**
      * [currencyInvoice description]
-     * @type {[type]}
-     * @param  {[type]} state [description]
-     * @param  {[type]} payload [description]
      */
-    [SET_SELECTED_CURRENCY_INVOICE] (state, payload) {
+    setSelectedCurrencyInvoice (state, payload) {
         state.currencyInvoice = payload
     },
     /**
      * [moveLines description]
-     * @type {Array}
-     * @param  {[type]} state [description]
-     * @param  {[type]} payload [description]
      */
-    [SET_MOVE_IN_INVOICE] (state, payload) {
+    setMoveInInvoice (state, payload) {
         if (payload.mode === 'full') {
             payload.moveLine.forEach(moves => {
                 let movesFound = state.selectedInvoice.moveLines.find(item => item.id === moves.id)
@@ -117,11 +79,8 @@ const mutations = {
     },
     /**
      * [filterPaymentsInvoice description]
-     * @type {[type]}
-     * @param  {[type]} state [description]
-     * @param  {[type]} payload [description]
      */
-    [SET_FILTER_PAYMENTS_INVOICE] (state, payload) {
+    setFilterPaymentsInvoice (state, payload) {
         return state.filterPaymentsInvoice = payload
     }
 }
@@ -129,41 +88,38 @@ const mutations = {
 const actions = {
     /**
      * [Selecciona las factura del cliente seleccionado]
-     * @param {*} param0
-     * @param {*} payload
      */
-    [SELECT_CUSTOMER_INVOICES] ({ commit }, payload) {
-        commit(SET_INVOICES, payload)
+    selectCustomerInvoices ({ commit }, payload) {
+        commit('setInvoices', payload)
     },
     /**
      * [Seleccionar una factura]
-     * @param {*} param0
-     * @param {*} payload
      */
-    [SELECT_INVOICE] ({ commit, dispatch }, payload) {
-        commit(SET_SELECTED_INVOICE, payload)
-        commit(SET_SELECTED_CURRENCY_INVOICE, payload.currency)
-        dispatch(SELECT_MOVE_INVOICE, payload.moveLines)
+    selectInvoice ({ commit, dispatch }, payload) {
+        commit('setSelectedInvoice', payload)
+        commit('setSelectedCurrencyInvoice', payload.currency)
+        dispatch('selectMoveInvoice', payload.moveLines)
     },
     /**
-     *
+     *[ADD_MOVE_IN_INVOICE]
      */
-    [ADD_MOVE_IN_INVOICE] ({ commit }, payload) {
-        commit(SET_MOVE_IN_INVOICE, payload)
+    addMoveInInvoice ({ commit }, payload) {
+        commit('setMoveInInvoice', payload)
     },
     /**
-     *
-     * @param {*} param0
-     * @param {*} payload
+     *[FILTER_PAYMENTS_INVOICE]
      */
-    [FILTER_PAYMENTS_INVOICE] ({ commit }, payload ){
-        commit(SET_FILTER_PAYMENTS_INVOICE, payload)
+    filterPaymentsInvoice ({ commit }, payload ){
+        commit('setFilterPaymentsInvoice', payload)
     },
-    [RESET_INVOICES] ({ commit }) {
-        commit(SET_INVOICES, [] )
-        commit(SET_SELECTED_INVOICE, null)
-        commit(SET_SELECTED_CURRENCY_INVOICE, [] )
-        commit(SET_FILTER_PAYMENTS_INVOICE, [] )
+    /**
+     * [RESET_INVOICES]
+     */
+    resetInvoices ({ commit }) {
+        commit('setInvoices', [] )
+        commit('setSelectedInvoice', null)
+        commit('setSelectedCurrencyInvoice', [] )
+        commit('setFilterPaymentsInvoice', [] )
     }
  }
 

+ 21 - 62
src/store/modules/journals.js

@@ -1,18 +1,3 @@
-/* Actions */
-import {
-    INIT_PAYMENTS_JOURNALS,
-    SELECT_JOURNAL,
-    RESET_JOURNALS,
-    CALCULATE_CURRENCY_TOTAL,
-    RESET_SELECTED_JOURNAL
-} from '@/constants/actionTypes'
-/* Mutations */
-import {
-    SET_JOURNALS,
-    SET_LOADING_JOURNALS,
-    SET_SELECTED_JOURNAL,
-    SET_CURRENCY_JOURNAL
-} from '@/constants/mutationTypes'
 
 const initialState ={
     journals: [],
@@ -20,105 +5,85 @@ const initialState ={
     selectedJournal: null,
     currencyJournal: []
 }
+
 const state = {
     journals: initialState.journals,
     loadingJournal: initialState.loadingJournal,
     selectedJournal: initialState.selectedJournal,
     currencyJournal: initialState.currencyJournal
 }
+
 const getters = {
     /**
      * [journals description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     journals(state) {
         return state.journals
     },
     /**
      * [loadingJournal description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     loadingJournal(state) {
         return state.loadingJournal
     },
     /**
      * [selectedJournal description]
-     * @method selectedJournal
-     * @param  {[type]}        state [description]
-     * @return {[type]}              [description]
      */
     selectedJournal (state) {
         return state.selectedJournal
     },
     /**
      * [currencyJournal description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     currencyJournal (state) {
         return state.currencyJournal
     }
-
 }
 
 const mutations = {
     /**
-     * [journals description]
-     * @param  {[type]} state [description]
-     * @param  {[type]} payload [description]
+     * [SET_JOURNALS description]
      */
-    [SET_JOURNALS] (state, payload) {
+    setJournals (state, payload) {
         state.journals = payload
     },
     /**
      * [loadingJournal description]
-     * @param  {[type]} state [description]
-     * @param  {[type]} payload [description]
      */
-    [SET_LOADING_JOURNALS] (state, payload) {
+    setLoadingJournals (state, payload) {
         state.loadingJournal = !!payload
     },
     /**
      * [selectedJournal description]
-     * @type {[type]}
-     * @param  {[type]} state [description]
-     * @param  {[type]} payload [description]
      */
-    [SET_SELECTED_JOURNAL] (state, payload) {
+    setSelectedJournal (state, payload) {
         state.selectedJournal = payload
     },
     /**
      * [currencyJournal description]
-     * @type {[type]}
      */
-    [SET_CURRENCY_JOURNAL] (state, payload) {
+    setCurrencyJournal (state, payload) {
         state.currencyJournal = payload
     }
-
 }
 
 const actions = {
     /**
      * [INIT_PAYMENTS_JOURNALS]
-     * @param {*} param0
-     * @param {*} payload
      */
-    [INIT_PAYMENTS_JOURNALS] ({ commit },payload ) {
-        commit(SET_JOURNALS, payload)
-        commit(SET_LOADING_JOURNALS, payload)
+    initPaymentsJournals ({ commit },payload ) {
+        commit('setJournals', payload)
+        commit('setLoadingJournals', payload)
     },
     /**
      * [SELECT_JOURNAL]
-     * @param {*} param0
-     * @param {*} payload
      */
-    [SELECT_JOURNAL] ({ commit, dispatch, getters },payload ) {
+    selectJournal ({ commit, dispatch, getters },payload ) {
         let currency = []
-        commit(SET_SELECTED_JOURNAL, payload)
 
-        dispatch(CALCULATE_CURRENCY_TOTAL, payload)
+        dispatch('resetPaymentsBank')
+        commit('setSelectedJournal', payload)
+        dispatch('calculateCurrencyTotal' , payload)
 
         if (payload.currency.id){
             currency = payload.currency
@@ -126,28 +91,22 @@ const actions = {
             currency = getters.currencyCompany
         }
 
-        commit(SET_CURRENCY_JOURNAL, currency)
+        commit('setCurrencyJournal', currency)
     },
     /**
      *  [RESET_SELECTED_JOURNAL]
      */
-    [RESET_SELECTED_JOURNAL] ({ commit, dispatch }){
-        commit(SET_SELECTED_JOURNAL, null)
-
-        // dispatch(CALCULATE_CURRENCY_TOTAL, payload)
-
-        commit(SET_CURRENCY_JOURNAL, [])
-
+    resetSelectedJournal ({ commit, dispatch }){
+        commit('setSelectedJournal', null)
+        commit('setCurrencyJournal', [])
     },
     /**
      *  [RESET_JOURNALS]
      */
-    [RESET_JOURNALS] ({ commit }) {
-        commit(SET_JOURNALS, [] )
-        commit(SET_SELECTED_JOURNAL, null )
-
+    resetJournals ({ commit }) {
+        commit('setJournals', [] )
+        commit('setSelectedJournal', null )
     }
-
 }
 
 export default {

+ 40 - 115
src/store/modules/moveLines.js

@@ -1,27 +1,3 @@
-import {
-    SELECT_MOVE_INVOICE,
-    SELECT_MOVE,
-    REMOVE_MOVE_PAYMENTS,
-    ADD_MOVE_IN_INVOICE,
-    REMOVE_MOVE_PAYMENTS_ALL,
-    RESET_MOVE_LINES,
-    SET_MOVE_PAYMENTS,
-    INIT_CURRENCIES_AMOUNT,
-    RESET_JOURNALS,
-    RESET_SELECTED_JOURNAL
-} from '@/constants/actionTypes'
-
-import {
-    SET_MOVES,
-    SET_SELECTED_MOVE_LINE,
-    SET_SELECTED_MOVE_PAYMENTS,
-    REMOVE_MOVE_LINE,
-    REMOVE_PAYMENTS_MOVE,
-    SET_TOTAL_MOVE_PAYMENTS,
-    SET_ORDER_MOVE_LINE,
-    SET_ORDER_PAYMENTS_MOVE
-} from '@/constants/mutationTypes'
-
 const initialState = {
     moves : null,
     selectedMoveLine: null,
@@ -39,98 +15,66 @@ const state = {
 const getters = {
     /**
      * [moves description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     moves (state) {
         return state.moves
     },
     /**
      * [selectedMoveLine description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     selectedMoveLine (state){
         return state.selectedMoveLine
     },
     /**
      * [movesPayments description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     movesPayments (state) {
         return state.movesPayments
     },
     /**
      * [movesPaymentsTotal description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     movesPaymentsTotal (state) {
         return state.movesPaymentsTotal
-    },
-    /**
-     * [movesPaymentsBalance description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
-     */
-    // movesPaymentsBalance (state) {
-    //     return state.movesPaymentsBalance
-    // }
+    }
 }
 
 const mutations = {
     /**
      * [moves description]
-     * @type {[type]}
-     * @param  {[type]} state [description]
-     * @param  {[type]} payload [description]
      */
-    [SET_MOVES] (state, payload) {
+    setMoves (state, payload) {
         state.moves =  payload
     },
     /**
      * [movesPayments description]
-     * @type {[type]}
      */
-    [SET_MOVE_PAYMENTS] (state, payload) {
+    setMovePayments (state, payload) {
         state.movesPayments = payload
     },
     /**
      * [selectedMoveLine description]
-     * @type {[type]}
-     * @param  {[type]} state [description]
-     * @param  {[type]} payload [description]
      */
-    [SET_SELECTED_MOVE_LINE] (state, payload) {
+    setSelectedMoveLine (state, payload) {
         state.selectedMoveLine = payload
     },
     /**
      * [movesPayments description]
-     * @type {[type]}
-     * @param  {[type]} state [description]
-     * @param  {[type]} payload [description]
      */
-    [SET_SELECTED_MOVE_PAYMENTS] (state, payload) {
+    setSelectedMovePayments (state, payload) {
         state.movesPayments = [payload, ...state.movesPayments]
     },
     /**
      * [actions description]
-     * @type {Object}
-     * @param  {[type]} state [description]
-     * @param  {[type]} payload [description]
      */
-    [REMOVE_MOVE_LINE] (state, payload) {
+    removeMoveLine (state, payload) {
         let moveFoundIndex = state.moves.findIndex(item => item.id === payload.id)
         state.moves.splice(moveFoundIndex, 1)
     },
     /**
      * [actions description]
-     * @type {Object}
-     * @param  {[type]} state [description]
-     * @param  {[type]} payload [description]
      */
-    [REMOVE_PAYMENTS_MOVE]( state, payload) {
+    removePaymentsMove ( state, payload) {
         if (payload.mode ==='full') {
             payload.moveLine.forEach(moves => {
                 let movesFoundIndex = state.moves.find(item => item.id === moves.id)
@@ -152,11 +96,8 @@ const mutations = {
     },
     /**
      * [total description]
-     * @type {[type]}
-     * @param  {[type]} state [description]
-     * @param  {[type]} payload [description]
      */
-    [SET_TOTAL_MOVE_PAYMENTS] (state) {
+    setTotalMovePayments (state) {
         let total = 0
 
         state.movesPayments.forEach(item => {
@@ -167,20 +108,16 @@ const mutations = {
     },
     /**
      * [actions description]
-     * @type {Object}
-     * @param  {[type]} state [description]
      */
-    [SET_ORDER_MOVE_LINE] (state) {
+    setOrderMoveLine (state) {
         state.moves =  state.moves.sort((a, b) => {
             return a.dateMaturity > b.dateMaturity
         })
     },
     /**
      * [actions description]
-     * @type {Object}
-     * @param  {[type]} state [description]
      */
-    [SET_ORDER_PAYMENTS_MOVE] (state) {
+    setOrderPaymentsMove (state) {
         state.movesPayments = state.movesPayments.sort((a, b) => {
             return a.dateMaturity > b.dateMaturity
         })
@@ -190,80 +127,68 @@ const mutations = {
 const actions = {
     /**
      * [SELECT_MOVE_INVOICE]
-     * @param {*} param0
-     * @param {*} payload
      */
-    [SELECT_MOVE_INVOICE] ({ commit }, payload) {
-        commit(SET_MOVES, payload)
-        commit(SET_ORDER_MOVE_LINE)
+    selectMoveInvoice ({ commit }, payload) {
+        commit('setMoves', payload)
+        commit('setOrderMoveLine')
     },
     /**
      * [SELECT_MOVE]
-     * @param {*} param0
-     * @param {*} payload
      */
-    [SELECT_MOVE] ({ commit, dispatch }, payload) {
-        commit(SET_SELECTED_MOVE_PAYMENTS, payload)
-        commit(SET_SELECTED_MOVE_LINE, payload)
+    selectMove ({ commit, dispatch }, payload) {
+        commit('setSelectedMovePayments', payload)
+        commit('setSelectedMoveLine', payload)
         /* Remover Move Line */
-        commit(REMOVE_MOVE_LINE, payload)
-        commit(SET_TOTAL_MOVE_PAYMENTS)
-        commit(SET_ORDER_PAYMENTS_MOVE)
+        commit('removeMoveLine', payload)
+        commit('setTotalMovePayments')
+        commit('setOrderPaymentsMove')
 
-        dispatch(INIT_CURRENCIES_AMOUNT)
+        dispatch('initCurrenciesAmount')
     },
     /**
-     *
-     * @param {*} param0
-     * @param {*} payload
+     *[REMOVE_MOVE_PAYMENTS]
      */
-    [REMOVE_MOVE_PAYMENTS] ({ commit, dispatch }, payload) {
-        dispatch(ADD_MOVE_IN_INVOICE, {
+    removeMovePayments ({ commit, dispatch }, payload) {
+        dispatch('ADD_MOVE_IN_INVOICE', {
             moveLine: payload,
             mode: 'partial'
         })
-
-        commit(REMOVE_PAYMENTS_MOVE, {
+        commit('removePaymentsMove', {
             moveLine: payload,
             mode: 'partial'
         })
-
-        commit(SET_ORDER_MOVE_LINE)
-        commit(SET_TOTAL_MOVE_PAYMENTS)
-
-        dispatch(INIT_CURRENCIES_AMOUNT)
+        commit('setOrderMoveLine')
+        commit('setTotalMovePayments')
+        dispatch('initCurrenciesAmount')
     },
     /**
-     * [length description]
-     * @type {[type]}
+     * [REMOVE_MOVE_PAYMENTS_ALL]
      */
-    [REMOVE_MOVE_PAYMENTS_ALL] ({commit, dispatch, getters}) {
-        dispatch(ADD_MOVE_IN_INVOICE,{
+    removeMovePaymentsAll ({commit, dispatch, getters}) {
+        dispatch('addMoveInInvoice',{
             moveLine: getters.movesPayments.map(item => {
                 return item
             }),
             mode: 'full'
         })
-        commit(REMOVE_PAYMENTS_MOVE, {
+        commit('removePaymentsMove' , {
             moveLine: getters.movesPayments.map(item => {
                 return item
             }),
             mode: 'full'
         })
-        dispatch(RESET_SELECTED_JOURNAL)
-        // dispatch(RESET_PAYMENTS)
-        commit(SET_ORDER_MOVE_LINE)
-        commit(SET_TOTAL_MOVE_PAYMENTS)
-
+        dispatch('resetSelectedJournal')
+        commit('setOrderMoveLine')
+        commit('setTotalMovePayments')
     },
     /**
-     *
+     * [RESET_MOVE_LINES]
      */
-    [RESET_MOVE_LINES] ({ commit }) {
-        commit(SET_MOVES, [] )
-        commit(SET_SELECTED_MOVE_LINE, null )
-        commit(SET_MOVE_PAYMENTS, [] )
-        commit(SET_TOTAL_MOVE_PAYMENTS)
+    resetMoveLines ({ commit }) {
+        commit('setMoves', [] )
+        commit('setSelectedMoveLine', null )
+        commit('setMovePayments', [] )
+        commit('setTotalMovePayments')
     }
 }
 

+ 122 - 126
src/store/modules/payments.js

@@ -1,30 +1,3 @@
-/* ACTIONS */
-import {
-    CHANGE_INITIAL_PAID,
-    RESET_PAYMENTS,
-    CALCULATE_CURRENCY_TOTAL,
-    SELECT_PAYMENTS_BANK,
-    SELECT_PAYMENTS_BANK_TYPE,
-    CHANGE_PAYMENTS_BANK_REF,
-    CHANGE_PAYMENTS_BANK_DATE_MATURITY,
-    CHANGE_PAYMENTS_BANK_NUMBER_CTA,
-    CHANGE_PAYMENTS_BANK_NAME_HOLDER,
-    RESET_SELECTED_JOURNAL,
-    RESET_PAYMENTS_BANK
-} from '@/constants/actionTypes'
-/* MUTATIONS */
-import {
-    SET_PAID_TOTAL,
-    SET_CALCULATE_CURRENCY_TOTAL,
-    SET_CURRENCY_TOTAL,
-    SET_SELECTED_BANK,
-    SET_SELECTED_BANK_TYPE,
-    SET_PAYMENTS_BANK_REF,
-    SET_PAYMENTS_BANK_DATE_MATURITY,
-    SET_PAYMENTS_BANK_NUMBER_CTA,
-    SET_PAYMENTS_BANK_NAME_HOLDER
-} from '@/constants/mutationTypes'
-
 const initialState = {
     paidTotal: 0,
     paymentsReturned: 0,
@@ -33,9 +6,13 @@ const initialState = {
     selectedPaymentsBankType: null,
     paymentsBankRef: '',
     paymentsBankDateMaturity: '',
+    paymentsBankAmount: 0,
+    recidualAMountReceipt: 0,
     paymentsBankNumberCta: '',
-    paymentsBankNameHolder: ''
+    paymentsBankNameHolder: '',
+    showBankPaymentModal: false
 }
+
 const state = {
     paidTotal: initialState.paidTotal,
     paymentsReturned: initialState.paymentsReturned,
@@ -45,107 +22,104 @@ const state = {
     paymentsBankRef: initialState.paymentsBankRef,
     paymentsBankDateMaturity: initialState.paymentsBankDateMaturity,
     paymentsBankNumberCta: initialState.paymentsBankNumberCta,
-    paymentsBankNameHolder: initialState.paymentsBankNameHolder
-
+    paymentsBankNameHolder: initialState.paymentsBankNameHolder,
+    paymentsBankAmount: initialState.paymentsBankAmount,
+    showBankPaymentModal: initialState.showBankPaymentModal,
+    recidualAMountReceipt: initialState.recidualAMountReceipt
 }
 
 const getters = {
     /**
      * [paidTotal description]
-     * @method paidTotal
-     * @param  {[type]}     state [description]
-     * @return {[type]}     [description]
      */
     paidTotal (state) {
         return state.paidTotal
     },
     /**
      * [paymentsReturned description]
-     * @method paymentsReturned
-     * @param  {[type]}         state [description]
-     * @return {[type]}               [description]
      */
     paymentsReturned (state) {
         return state.paymentsReturned
     },
     /**
      * [paymentCurrencyTotal description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     paymentCurrencyTotal (state) {
         return state.paymentCurrencyTotal
     },
     /**
      * [selectedPaymentsBank description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     selectedPaymentsBank(state) {
         return state.selectedPaymentsBank
     },
     /**
      * [selectedPaymentsBankType description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     selectedPaymentsBankType(state) {
         return state.selectedPaymentsBankType
     },
     /**
      * [paymentsBankRef description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     paymentsBankRef (state) {
         return state.paymentsBankRef
     },
     /**
      * [paymentsBankDateMaturity description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     paymentsBankDateMaturity (state) {
         return state.paymentsBankDateMaturity
     },
     /**
      * [paymentsBankNumberCta description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     paymentsBankNumberCta ( state ) {
         return state.paymentsBankNumberCta
     },
     /**
      * [paymentsBankNameHolder description]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     paymentsBankNameHolder( state ) {
         return state.paymentsBankNameHolder
+    },
+    /**
+     * [showBankPaymentModal description]
+     */
+    showBankPaymentModal( state ) {
+        return state.showBankPaymentModal
+    },
+    /**
+     * [paymentsBankAmount description]
+     */
+    paymentsBankAmount(state) {
+        return state.paymentsBankAmount
+    },
+    /**
+     * [recidualAMountReceipt description]
+     */
+    recidualAMountReceipt(state){
+        return state.recidualAMountReceipt
     }
 }
 
 const mutations = {
     /**
      * [paidTotal description]
-     * @type {[type]}
      */
-    [SET_PAID_TOTAL] (state, payload) {
+    setPaidTotal (state, payload) {
         state.paidTotal = payload
     },
     /**
      * [paymentCurrencyTotal description]
-     * @type {[type]}
      */
-    [SET_CURRENCY_TOTAL] (state, payload) {
+    setCurrencyTotal (state, payload) {
         state.paymentCurrencyTotal = payload
     },
     /**
      * [SET_CALCULATE_CURRENCY_TOTAL]
-     * @type {[type]}
      */
-    [SET_CALCULATE_CURRENCY_TOTAL] (state, payload) {
+    setCalculateCurrencyTotal (state, payload) {
         let currencyJournal = payload.movesCurrencyAmount.find(item => item.id ===payload.currency.id)
         let total = currencyJournal.amount
         if (!currencyJournal)
@@ -154,45 +128,57 @@ const mutations = {
     },
     /**
      * [selectedPaymentsBank description]
-     * @type {[type]}
      */
-    [SET_SELECTED_BANK] (state, payload) {
+    setselectedBank (state, payload) {
         state.selectedPaymentsBank = payload
     },
     /**
      * [selectedPaymentsBankType description]
-     * @type {[type]}
      */
-    [SET_SELECTED_BANK_TYPE] (state, payload) {
+    setSelectedBankType (state, payload) {
         state.selectedPaymentsBankType = payload
     },
     /**
      * [paymentsBankRef description]
-     * @type {[type]}
      */
-    [SET_PAYMENTS_BANK_REF] (state, payload) {
+    setPaymentsBankRef (state, payload) {
         state.paymentsBankRef = payload
     },
     /**
      * [paymentsBankDateMaturity description]
-     * @type {[type]}
      */
-    [SET_PAYMENTS_BANK_DATE_MATURITY] (state, payload) {
+    setPaymentsBankDateMaturity (state, payload) {
         state.paymentsBankDateMaturity = payload
     },
     /**
      * [paymentsBankNumberCta description]
-     * @type {[type]}
      */
-    [SET_PAYMENTS_BANK_NUMBER_CTA] (state, payload) {
+    setPaymentsBankNumberCta (state, payload) {
         state.paymentsBankNumberCta =  payload
     },
     /**
      * [actions description]
-     * @type {Object}
      */
-    [SET_PAYMENTS_BANK_NAME_HOLDER] (state, payload) {
+    setPaymentsBankNameHolder (state, payload) {
         state.paymentsBankNameHolder = payload
+    },
+    /**
+     * [actions description]
+     */
+    setShowBankPaymentModal (state, payload) {
+        state.showBankPaymentModal = payload
+    },
+    /**
+     * [actions description]
+     */
+    setPaymentsBankAmount (state, payload) {
+        state.paymentsBankAmount = payload
+    },
+    /**
+     * [recidualAMountReceipt description]
+     */
+    setRecidualAmountReceipt ( state, payload ) {
+        state.recidualAMountReceipt = payload
     }
 }
 
@@ -200,89 +186,99 @@ const actions = {
     /**
      * [CHANGE_INITIAL_PAID]
      */
-    [CHANGE_INITIAL_PAID] ({ commit },payload) {
-        commit(SET_PAID_TOTAL, payload)
+    changeInitialPaid ({ commit, getters, dispatch },payload) {
+        let bank = !!getters.bank.length && !!getters.bankType.length && !!getters.selectedJournal && getters.selectedJournal.type === 'bank' && payload > getters.recidualAMountReceipt
+        if (!!bank){
+            dispatch('paymentsNotify','El monto de entrega no puede superar el saldo del cheque (valor disponible '+getters.recidualAMountReceipt+')')
+            return
+        }
+        commit('setPaidTotal', payload)
     },
     /**
      * [CALCULATE_CURRENCY_TOTAL]
      */
-    [CALCULATE_CURRENCY_TOTAL] ({commit, getters}, payload) {
+    calculateCurrencyTotal ({commit, getters}, payload) {
         let currency = []
         if (payload.currency.id){
             currency = payload.currency
         } else {
             currency = getters.currencyCompany
         }
-        commit(SET_CALCULATE_CURRENCY_TOTAL, {
+        commit('setCalculateCurrencyTotal', {
             currency: currency,
             movesCurrencyAmount: getters.currencyAmount
         })
-        commit(SET_PAID_TOTAL, 0)
-    },
-    /**
-     * [SELECT_PAYMENTS_BANK]
-     */
-    [SELECT_PAYMENTS_BANK] ({ commit }, payload){
-        commit(SET_SELECTED_BANK, payload)
-    },
-    /**
-     * [SELECT_PAYMENTS_BANK_TYPE]
-     */
-    [SELECT_PAYMENTS_BANK_TYPE] ({ commit }, payload) {
-        commit(SET_SELECTED_BANK_TYPE, payload)
-    },
-    /**
-     * [CHANGE_PAYMENTS_BANK_REF]
-     */
-    [CHANGE_PAYMENTS_BANK_REF] ({ commit }, payload) {
-            commit(SET_PAYMENTS_BANK_REF, payload)
-    },
-    /**
-     * [CHANGE_PAYMENTS_BANK_DATE_MATURITY]
-     */
-    [CHANGE_PAYMENTS_BANK_DATE_MATURITY] ({ commit }, payload) {
-        commit(SET_PAYMENTS_BANK_DATE_MATURITY, payload)
-    },
-    /**
-     * [CHANGE_PAYMENTS_BANK_NUMBER_CTA]
-     */
-    [CHANGE_PAYMENTS_BANK_NUMBER_CTA] ({ commit }, payload) {
-        commit(SET_PAYMENTS_BANK_NUMBER_CTA, payload)
+        commit('setPaidTotal', 0)
+
+        if (payload.type === 'bank') {
+            commit('setShowBankPaymentModal', !!getters.bank.length && !!getters.bankType.length)
+        }
     },
     /**
-     * [CHANGE_PAYMENTS_BANK_NAME_HOLDER]
+     * [amount description]
      */
-    [CHANGE_PAYMENTS_BANK_NAME_HOLDER] ({ commit }, payload) {
-        commit(SET_PAYMENTS_BANK_NAME_HOLDER, payload)
+    submitBankPayments ( { commit, dispatch, getters }, payload){
+        if (!payload.bank){
+            dispatch('resetPaymentsBank')
+            return
+        }
+        if (payload.amountReceipt <= 0 ){
+            dispatch('paymentsNotify','Cheque sin saldo')
+            dispatch('resetPaymentsBank')
+            return
+        }
+
+        commit('setselectedBank', payload.bank)
+        commit('setSelectedBankType', payload.bankType)
+        commit('setPaymentsBankRef', payload.number)
+        commit('setPaymentsBankDateMaturity', payload.dateMaturity)
+        commit('setPaymentsBankNumberCta', payload.numberCta)
+        commit('setPaymentsBankNameHolder', payload.nameHolder)
+        commit('setPaymentsBankAmount', payload.amountTotal)
+        commit('setRecidualAmountReceipt', payload.amountReceipt)
+        commit('setShowBankPaymentModal', false)
+
+        let amount = payload.amountReceipt
+
+        if (amount > getters.paymentCurrencyTotal)
+            amount = getters.paymentCurrencyTotal
+
+        commit('setPaidTotal', amount)
     },
     /**
      * [RESET_PAYMENTS_BANK]
      */
-    [RESET_PAYMENTS_BANK] ({commit, dispatch}) {
-        commit(SET_SELECTED_BANK, null)
-        commit(SET_SELECTED_BANK_TYPE, null)
-        commit(SET_PAYMENTS_BANK_REF, '')
-        commit(SET_PAYMENTS_BANK_DATE_MATURITY, '')
-        commit(SET_PAYMENTS_BANK_NUMBER_CTA, '')
-        commit(SET_PAYMENTS_BANK_NAME_HOLDER, '')
+    resetPaymentsBank ({commit, dispatch}) {
+        commit('setselectedBank', null)
+        commit('setSelectedBankType', null)
+        commit('setPaymentsBankRef', '')
+        commit('setPaymentsBankDateMaturity', '')
+        commit('setPaymentsBankNumberCta', '')
+        commit('setPaymentsBankNameHolder', '')
+        commit('setPaymentsBankAmount', 0)
+        commit('setRecidualAmountReceipt', 0)
 
-        commit(SET_PAID_TOTAL, 0)
-        commit(SET_CURRENCY_TOTAL, 0)
-        
-        dispatch(RESET_SELECTED_JOURNAL)
+        commit('setPaidTotal', 0)
+        commit('setCurrencyTotal', 0)
+
+        dispatch('resetSelectedJournal')
+
+        commit('setShowBankPaymentModal', false)
     },
     /**
      * [RESET_PAYMENTS]
      */
-    [RESET_PAYMENTS] ({ commit }) {
-        commit(SET_PAID_TOTAL, 0)
-        commit(SET_CURRENCY_TOTAL, 0)
-        commit(SET_SELECTED_BANK, null)
-        commit(SET_SELECTED_BANK_TYPE, null)
-        commit(SET_PAYMENTS_BANK_REF, '')
-        commit(SET_PAYMENTS_BANK_DATE_MATURITY, '')
-        commit(SET_PAYMENTS_BANK_NUMBER_CTA, '')
-        commit(SET_PAYMENTS_BANK_NAME_HOLDER, '')
+    resetPayments ({ commit }) {
+        commit('setPaidTotal', 0)
+        commit('setCurrencyTotal', 0)
+        commit('setselectedBank', null)
+        commit('setSelectedBankType', null)
+        commit('setPaymentsBankRef', '')
+        commit('setPaymentsBankDateMaturity', '')
+        commit('setPaymentsBankNumberCta', '')
+        commit('setPaymentsBankNameHolder', '')
+
+        commit('setShowBankPaymentModal', false)
     }
 }
 

+ 10 - 22
src/store/modules/user.js

@@ -1,10 +1,8 @@
-import { INIT_PAYMENTS_USER, INIT_PAYMENTS_COMPANY, RESET_USER} from '@/constants/actionTypes'
-import { SET_USER, SET_LOADING_USER } from '@/constants/mutationTypes'
-
 const initialState = {
     user: null,
     loadingUser: false,
 }
+
 const state = {
     user: initialState.user,
     loadingUser: initialState.loadingUser,
@@ -13,36 +11,29 @@ const state = {
 const getters = {
     /**
      * [user]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     user (state) {
         return state.user
     },
     /**
      * [loadingUser]
-     * @param  {[type]} state [description]
-     * @return {[type]}       [description]
      */
     loadingUser (state) {
         return state.loadingUser
     }
 }
+
 const mutations = {
     /**
      * [actions description]
-     * @param  {[type]} state [description]
-     * @param  {[type]} payload [description]
      */
-    [SET_USER] (state, payload) {
+    setUser (state, payload) {
         state.user = payload
     },
     /**
      * [actions description]
-     * @param  {[type]} state [description]
-     * @param  {[type]} payload [description]
      */
-    [SET_LOADING_USER] (state, payload) {
+    setLoadingUser (state, payload) {
         state.loadingUser = !!payload
     }
 }
@@ -50,21 +41,18 @@ const mutations = {
 const actions ={
     /**
     * [INIT_PAYMENTS_USER]
-    * @param {*} param0
-    * @param {*} payload
      */
-    [INIT_PAYMENTS_USER] ({commit, dispatch}, payload) {
-        commit(SET_USER, payload)
-        commit(SET_LOADING_USER, payload)
-
-        dispatch(INIT_PAYMENTS_COMPANY, payload)
+    initPaymentsUser({commit, dispatch}, payload) {
+        commit('setUser', payload)
+        commit('setLoadingUser', payload)
 
+        dispatch('initPaymentsCompany', payload)
     },
     /**
      * [INIT_PAYMENTS_USER]
      */
-    [RESET_USER] ({ commit }) {
-        commit(SET_USER, [])
+    resetUser ({ commit }) {
+        commit('setUser', [])
     }
 }
 

+ 0 - 23
src/store/mutations.js

@@ -1,23 +0,0 @@
-import {
-    SET_PROCESSING_PAYMENTS,
-    SET_COMPLETED_PAYMENTS
-} from '@/constants/mutationTypes'
-
-const mutations = {
-    /**
-     * [processingPayments description]
-     * @type {[type]}
-     */
-    [SET_PROCESSING_PAYMENTS] (state, payload) {
-        state.processingPayments = payload
-    },
-    /**
-     * [completedPayments description]
-     * @type {[type]}
-     */
-    [SET_COMPLETED_PAYMENTS] (state, payload) {
-        state.completedPayments = payload
-    }
-}
-
-export default mutations

+ 0 - 6
src/store/state.js

@@ -1,6 +0,0 @@
-const state = {
-    processingPayments: false,
-    completedPayments: false
-}
-
-export default state

+ 15 - 1
webpack.config.js

@@ -1,6 +1,7 @@
 var Path = require('path');
 var LiveReloadPlugin = require('webpack-livereload-plugin')
 var ExtractTextPlugin = require('extract-text-webpack-plugin')
+var HardSourceWebpackPlugin = require('hard-source-webpack-plugin')
 
 var prod = process.env.NODE_ENV === 'production'
 
@@ -23,7 +24,20 @@ module.exports = {
                 hostname: "192.168.88.130",
                 port: 8071
         }),
-        new ExtractTextPlugin('main.css')
+        new ExtractTextPlugin('main.css'),
+
+        new HardSourceWebpackPlugin({
+            cacheDirectory: 'node_modules/.cache/hard-source/[confighash]',
+            recordsPath: 'node_modules/.cache/hard-source/[confighash]/records.json',
+            configHash: function(webpackConfig) {
+                return require('node-object-hash')({sort: false}).hash(webpackConfig)
+            },
+	        nvironmentHash: {
+                root: process.cwd(),
+                directories: [],
+                files: ['package-lock.json', 'yarn.lock'],
+	        }
+	    })
     ],
     module: {
         rules: [

+ 105 - 19
yarn.lock

@@ -30,9 +30,9 @@ acorn@^5.0.0:
   version "5.1.1"
   resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.1.1.tgz#53fe161111f912ab999ee887a90a0bc52822fd75"
 
-ajv-keywords@^2.0.0:
-  version "2.1.0"
-  resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-2.1.0.tgz#a296e17f7bfae7c1ce4f7e0de53d29cb32162df0"
+ajv-keywords@^3.1.0:
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.1.0.tgz#ac2b27939c543e95d2c06e7f7f5c27be4aa543be"
 
 ajv@^4.9.1:
   version "4.11.8"
@@ -41,7 +41,7 @@ ajv@^4.9.1:
     co "^4.6.0"
     json-stable-stringify "^1.0.1"
 
-ajv@^5.0.0, ajv@^5.1.5:
+ajv@^5.0.0:
   version "5.2.2"
   resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.2.2.tgz#47c68d69e86f5d953103b0074a9430dc63da5e39"
   dependencies:
@@ -50,6 +50,14 @@ ajv@^5.0.0, ajv@^5.1.5:
     json-schema-traverse "^0.3.0"
     json-stable-stringify "^1.0.1"
 
+ajv@^6.1.0:
+  version "6.1.1"
+  resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.1.1.tgz#978d597fbc2b7d0e5a5c3ddeb149a682f2abfa0e"
+  dependencies:
+    fast-deep-equal "^1.0.0"
+    fast-json-stable-stringify "^2.0.0"
+    json-schema-traverse "^0.3.0"
+
 align-text@^0.1.1, align-text@^0.1.3:
   version "0.1.4"
   resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117"
@@ -1493,6 +1501,10 @@ detect-indent@^4.0.0:
   dependencies:
     repeating "^2.0.0"
 
+detect-indent@^5.0.0:
+  version "5.0.0"
+  resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d"
+
 diffie-hellman@^5.0.0:
   version "5.0.2"
   resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.2.tgz#b5835739270cfe26acf632099fded2a07f209e5e"
@@ -1725,6 +1737,10 @@ fast-deep-equal@^1.0.0:
   version "1.0.0"
   resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz#96256a3bc975595eb36d82e9929d060d893439ff"
 
+fast-json-stable-stringify@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2"
+
 fastparse@^1.1.1:
   version "1.1.1"
   resolved "https://registry.yarnpkg.com/fastparse/-/fastparse-1.1.1.tgz#d1e2643b38a94d7583b479060e6c4affc94071f8"
@@ -1947,7 +1963,7 @@ globule@^1.0.0:
     lodash "~4.17.4"
     minimatch "~3.0.2"
 
-graceful-fs@^4.1.2:
+graceful-fs@^4.1.11, graceful-fs@^4.1.2:
   version "4.1.11"
   resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658"
 
@@ -1975,6 +1991,20 @@ har-validator@~4.2.1:
     ajv "^4.9.1"
     har-schema "^1.0.5"
 
+hard-source-webpack-plugin@^0.5.16:
+  version "0.5.18"
+  resolved "https://registry.yarnpkg.com/hard-source-webpack-plugin/-/hard-source-webpack-plugin-0.5.18.tgz#4f328e344ad5305227c7db526d5365e8d7786712"
+  dependencies:
+    lodash "^4.15.0"
+    mkdirp "^0.5.1"
+    node-object-hash "^1.2.0"
+    rimraf "^2.6.2"
+    source-list-map "^0.1.6"
+    source-map "^0.5.6"
+    webpack-core "~0.6.0"
+    webpack-sources "^1.0.1"
+    write-json-file "^2.3.0"
+
 has-ansi@^2.0.0:
   version "2.0.0"
   resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91"
@@ -2093,6 +2123,10 @@ ieee754@^1.1.4:
   version "1.1.8"
   resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.8.tgz#be33d40ac10ef1926701f6f08a2d86fbfd1ad3e4"
 
+imurmurhash@^0.1.4:
+  version "0.1.4"
+  resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
+
 in-publish@^2.0.0:
   version "2.0.0"
   resolved "https://registry.yarnpkg.com/in-publish/-/in-publish-2.0.0.tgz#e20ff5e3a2afc2690320b6dc552682a9c7fadf51"
@@ -2518,7 +2552,7 @@ lodash.uniq@^4.5.0:
   version "4.5.0"
   resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773"
 
-lodash@^4.0.0, lodash@^4.14.0, lodash@^4.17.4, lodash@^4.2.0, lodash@~4.17.4:
+lodash@^4.0.0, lodash@^4.14.0, lodash@^4.15.0, lodash@^4.17.4, lodash@^4.2.0, lodash@~4.17.4:
   version "4.17.4"
   resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae"
 
@@ -2738,6 +2772,10 @@ node-libs-browser@^2.0.0:
     util "^0.10.3"
     vm-browserify "0.0.4"
 
+node-object-hash@^1.2.0:
+  version "1.3.0"
+  resolved "https://registry.yarnpkg.com/node-object-hash/-/node-object-hash-1.3.0.tgz#7f294f5afec6b08d713e40d40a95ec793e05baf3"
+
 node-pre-gyp@^0.6.36:
   version "0.6.36"
   resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.36.tgz#db604112cb74e0d477554e9b505b17abddfab786"
@@ -3737,6 +3775,12 @@ rimraf@2, rimraf@^2.5.1, rimraf@^2.6.1:
   dependencies:
     glob "^7.0.5"
 
+rimraf@^2.6.2:
+  version "2.6.2"
+  resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36"
+  dependencies:
+    glob "^7.0.5"
+
 ripemd160@^2.0.0, ripemd160@^2.0.1:
   version "2.0.1"
   resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.1.tgz#0f4584295c53a3628af7e6d79aca21ce57d1c6e7"
@@ -3833,7 +3877,7 @@ sigmund@^1.0.1:
   version "1.0.1"
   resolved "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590"
 
-signal-exit@^3.0.0:
+signal-exit@^3.0.0, signal-exit@^3.0.2:
   version "3.0.2"
   resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d"
 
@@ -3853,6 +3897,16 @@ sort-keys@^1.0.0:
   dependencies:
     is-plain-obj "^1.0.0"
 
+sort-keys@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128"
+  dependencies:
+    is-plain-obj "^1.0.0"
+
+source-list-map@^0.1.6, source-list-map@~0.1.7:
+  version "0.1.8"
+  resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-0.1.8.tgz#c550b2ab5427f6b3f21f5afead88c4f5587b2106"
+
 source-list-map@^2.0.0:
   version "2.0.0"
   resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.0.tgz#aaa47403f7b245a92fbc97ea08f250d6087ed085"
@@ -3863,7 +3917,7 @@ source-map-support@^0.4.15:
   dependencies:
     source-map "^0.5.6"
 
-source-map@0.4.x, source-map@^0.4.2:
+source-map@0.4.x, source-map@^0.4.2, source-map@~0.4.1:
   version "0.4.4"
   resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b"
   dependencies:
@@ -4241,9 +4295,9 @@ vue-hot-reload-api@^2.1.0:
   version "2.1.0"
   resolved "https://registry.yarnpkg.com/vue-hot-reload-api/-/vue-hot-reload-api-2.1.0.tgz#9ca58a6e0df9078554ce1708688b6578754d86de"
 
-vue-js-modal@^1.3.4:
-  version "1.3.8"
-  resolved "https://registry.yarnpkg.com/vue-js-modal/-/vue-js-modal-1.3.8.tgz#72a51d7e9979c9f5bb91d4367a84386d30479e69"
+vue-js-modal@^1.3.9:
+  version "1.3.10"
+  resolved "https://registry.yarnpkg.com/vue-js-modal/-/vue-js-modal-1.3.10.tgz#2451764e6bc62a9d4fecd22f41553df6beb78507"
 
 vue-loader@^12.2.2:
   version "12.2.2"
@@ -4285,7 +4339,13 @@ vue-template-es2015-compiler@^1.2.2:
   version "1.5.3"
   resolved "https://registry.yarnpkg.com/vue-template-es2015-compiler/-/vue-template-es2015-compiler-1.5.3.tgz#22787de4e37ebd9339b74223bc467d1adee30545"
 
-vue@^2.4.1:
+vue2-datepicker@^1.8.2:
+  version "1.8.3"
+  resolved "https://registry.yarnpkg.com/vue2-datepicker/-/vue2-datepicker-1.8.3.tgz#f2c5d865bf4b391b8bb203a8dc65bf162d9cc253"
+  dependencies:
+    vue "^2.2.1"
+
+vue@^2.2.1, vue@^2.4.1:
   version "2.5.13"
   resolved "https://registry.yarnpkg.com/vue/-/vue-2.5.13.tgz#95bd31e20efcf7a7f39239c9aa6787ce8cf578e1"
 
@@ -4301,9 +4361,16 @@ watchpack@^1.4.0:
     chokidar "^1.7.0"
     graceful-fs "^4.1.2"
 
-webpack-livereload-plugin@^0.11.0:
-  version "0.11.0"
-  resolved "https://registry.yarnpkg.com/webpack-livereload-plugin/-/webpack-livereload-plugin-0.11.0.tgz#7b90bb258286e6638b95394520b9da901611f571"
+webpack-core@~0.6.0:
+  version "0.6.9"
+  resolved "https://registry.yarnpkg.com/webpack-core/-/webpack-core-0.6.9.tgz#fc571588c8558da77be9efb6debdc5a3b172bdc2"
+  dependencies:
+    source-list-map "~0.1.7"
+    source-map "~0.4.1"
+
+webpack-livereload-plugin@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/webpack-livereload-plugin/-/webpack-livereload-plugin-1.0.0.tgz#c197397ebe2a922d91da81642e000eb52c949299"
   dependencies:
     tiny-lr "^0.2.0"
 
@@ -4315,13 +4382,13 @@ webpack-sources@^1.0.1:
     source-map "~0.5.3"
 
 webpack@^3.3.0:
-  version "3.10.0"
-  resolved "https://registry.yarnpkg.com/webpack/-/webpack-3.10.0.tgz#5291b875078cf2abf42bdd23afe3f8f96c17d725"
+  version "3.11.0"
+  resolved "https://registry.yarnpkg.com/webpack/-/webpack-3.11.0.tgz#77da451b1d7b4b117adaf41a1a93b5742f24d894"
   dependencies:
     acorn "^5.0.0"
     acorn-dynamic-import "^2.0.0"
-    ajv "^5.1.5"
-    ajv-keywords "^2.0.0"
+    ajv "^6.1.0"
+    ajv-keywords "^3.1.0"
     async "^2.1.2"
     enhanced-resolve "^3.4.0"
     escope "^3.6.0"
@@ -4401,6 +4468,25 @@ wrappy@1:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
 
+write-file-atomic@^2.0.0:
+  version "2.3.0"
+  resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.3.0.tgz#1ff61575c2e2a4e8e510d6fa4e243cce183999ab"
+  dependencies:
+    graceful-fs "^4.1.11"
+    imurmurhash "^0.1.4"
+    signal-exit "^3.0.2"
+
+write-json-file@^2.3.0:
+  version "2.3.0"
+  resolved "https://registry.yarnpkg.com/write-json-file/-/write-json-file-2.3.0.tgz#2b64c8a33004d54b8698c76d585a77ceb61da32f"
+  dependencies:
+    detect-indent "^5.0.0"
+    graceful-fs "^4.1.2"
+    make-dir "^1.0.0"
+    pify "^3.0.0"
+    sort-keys "^2.0.0"
+    write-file-atomic "^2.0.0"
+
 xtend@^4.0.0:
   version "4.0.1"
   resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af"