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



                $scope.seleccionarBanco = function(key) {
                    if(key === 13) {
                        var modalInstance = $uibModal.open(
                            {
                                ariaLabelledBy: 'Busqueda de Bancos',
                                templateUrl: 'modal-bancos.html',
                                controller: 'focaModalBancoController',
                                size: 'md',
                                resolve: {filters: function() {return $scope.cheque.banco.desbco;}}
                            }
                        );
                        modalInstance.result.then(function(banco) {
                            $scope.cheque.banco = banco;
                        }, 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;
                        }, 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;
                        }, 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');
                };
            }
        ]
    );