controller.js 5.53 KB
angular.module('focaModalCheque')
    .controller('focaModalChequeController', 
        [
            '$filter',
            '$scope',
            '$uibModalInstance',
            '$uibModal',
            'sugerido',
            'focaModalService',
            function($filter, $scope, $uibModalInstance, $uibModal, sugerido, focaModalService) {
                $scope.cheque = {
                    banco: {
                        desbco: ''//Nombre del banco
                    },
                    provincia: {
                        NOMBRE:''
                    },
                    localidad: {
                        NOMBRE: ''
                    },
                    fechaEmision: new Date()
                };
                $scope.focused = 1;

                if(sugerido && sugerido < 0) {
                    $scope.cheque.importe = Math.abs(sugerido);
                }
                $scope.next = function(key) {
                    if(key === 13) $scope.focused++;
                };

                $scope.seleccionarBanco = function(key) {
                    if(key === 13) {
                        var parametrosModal = {
                            query: '/banco',
                            columnas: [
                                {
                                    propiedad: 'ID',
                                    nombre: 'Codigo',
                                    filtro: {
                                        nombre: 'rellenarDigitos',
                                        parametro: 3}
                                    },
                                {
                                    propiedad: 'desbco',
                                    nombre: 'Nombre'
                                }
                            ],
                            titulo:'Búsqueda de bancos',
                            size: 'md'
                        };
                        focaModalService.modal(parametrosModal).then(function(banco) {
                            $scope.cheque.banco = banco;
                            $scope.focused = 2;
                        }, function() {
                            //TODO: función llamada cuando cancela el modal
                        });
                    }
                };

                $scope.seleccionarProvincia = function(key) {
                    if(key === 13) {
                        var parametrosModal = {
                            query: '/provincia',
                            columnas: [
                                {
                                    propiedad: 'ID',
                                    nombre: 'Codigo',
                                    filtro: {
                                        nombre: 'rellenarDigitos',
                                        parametro: 3}
                                    },
                                {
                                    propiedad: 'NOMBRE',
                                    nombre: 'Nombre'
                                }
                            ],
                            titulo:'Búsqueda de provincias',
                            size: 'md'
                        };
                        focaModalService.modal(parametrosModal).then(function(provincia) {
                            $scope.cheque.provincia = provincia;
                            $scope.focused = 3;
                        }, function() {
                            //TODO: función llamada cuando cancela el modal
                        });
                    }
                };

                $scope.seleccionarLocalidad = function(key) {
                    if($scope.cheque.provincia.ID === undefined) {
                        focaModalService.alert('Seleccione una provincia');
                        return;
                    }
                    if(key === 13) {
                        var parametrosModal = {
                            query: '/localidad/' + $scope.cheque.provincia.ID,
                            columnas: [
                                {
                                    propiedad: 'ID',
                                    nombre: 'Codigo',
                                    filtro: {
                                        nombre: 'rellenarDigitos',
                                        parametro: 3}
                                    },
                                {
                                    propiedad: 'NOMBRE',
                                    nombre: 'Nombre'
                                }
                            ],
                            titulo:'Búsqueda de localidades',
                            size: 'md'
                        };
                        focaModalService.modal(parametrosModal).then(function(localidad) {
                            $scope.cheque.localidad = localidad;
                            $scope.focused = 4;
                        }, function() {
                            //TODO: función llamada cuando cancela el modal
                        });
                    }
                };

                $scope.aceptar = function() {
                    delete $scope.cheque.provincia.localidades;
                    //TODO: al enviar el importe con punto se pone como mil, no como decimal
                    $scope.cheque.importe = parseFloat($scope.cheque.importe);
                    $uibModalInstance.close($scope.cheque);
                };

                $scope.cancel = function() {
                    $uibModalInstance.dismiss('cancel');
                };
            }
        ]
    );