controller.js 5.02 KB
angular.module('focaModalFormaPago')
    .controller('focaModalFormaPagoController', [
        '$timeout', '$filter', '$scope', '$uibModal',
        '$uibModalInstance', 'focaModalFormaPagoService', 'parametros',
        function ($timeout, $filter, $scope, $uibModal,
            $uibModalInstance, focaModalFormaPagoService, parametros) {

            //#region Variables
            $scope.botones = [];
            //#endregion

            init();

            function init() {
                $scope.botones = focaModalFormaPagoService.getBotonera();
            }

            $scope.seleccionarEfectivo = function () {
                var modalInstance = abrirModal('modal-tarjetas.html',
                    'focaModalTarjetasController');
                modalInstance.result
                    .then(function (data) {
                        console.log(data);
                    })
                    .catch(function (e) { console.error(e); });
            };

            $scope.seleccionarTarjetas = function () {
                var modalInstance = abrirModal('modal-tarjetas.html',
                    'focaModalTarjetasController');
                modalInstance.result
                    .then(function (data) {
                        $uibModalInstance.close({data: data, tipo: 'tarjeta'});
                    })
                    .catch(function (e) { console.error(e); });
            };

            $scope.seleccionarCheque = function () {
                var modalInstance = abrirModal('modal-tarjetas.html',
                    'focaModalTarjetasController');
                modalInstance.result
                    .then(function (data) {
                        console.log(data);
                    })
                    .catch(function (e) { console.error(e); });
            };

            $scope.seleccionarVales = function () {
                var modalInstance = abrirModal('modal-tarjetas.html',
                    'focaModalTarjetasController');
                modalInstance.result
                    .then(function (data) {
                        console.log(data);
                    })
                    .catch(function (e) { console.error(e); });
            };

            $scope.seleccionarPagoElectronico = function () {
                var modalInstance = abrirModal('modal-tarjetas.html',
                    'focaModalTarjetasController');
                modalInstance.result
                    .then(function (data) {
                        console.log(data);
                    })
                    .catch(function (e) { console.error(e); });
            };

            function abrirModal(templateUrl, controller) {
                return $uibModal.open(
                    {
                        templateUrl: templateUrl,
                        controller: controller,
                        resolve: {
                            parametros: function () { return {
                                importe: parametros.importe
                            }; },
                        },
                        size: 'lg',
                    }
                );

            }

            $scope.cancel = function () {
                $uibModalInstance.dismiss('cancel');
            };
        }]
    )
    .controller('focaModalTarjetasController', [
        '$timeout', '$filter', '$scope', '$uibModalInstance', 'focaModalTarjetasService',
        'parametros',
        function ($timeout, $filter, $scope, $uibModalInstance, focaModalTarjetasService,
            parametros)
        {

            $scope.parametros = parametros;

            //#region Variables
            $scope.botonesTarjetas = [];
            $scope.showForm = false;

            //#endregion

            init();

            function init() {

                focaModalTarjetasService.getTarjetas().then(function(res) {

                    res.data.forEach(function (boton) {
                        $scope.botonesTarjetas.push({
                            id: boton.ID,
                            label: 'tarjeta',
                            nombre: boton.NOM,
                            image: boton.nombreImagen,
                            imageDefault: 'tarjetaDefault.svg'
                        });
                    });

                });

            }

            $scope.seleccionarTarjeta = function (tarjeta) {
                $scope.tarjeta = tarjeta;
                animateForm();
            };

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

            $scope.aceptarFormaDePago = function () {
                $uibModalInstance.close({
                    tarjeta: $scope.tarjeta,
                    terminal: $scope.terminal,
                    numeroCupon: $scope.numeroCupon,
                    cuotas: $scope.cuotas
                });
            };

            function animateForm() {
                $scope.showForm = false;
                $timeout(function () {
                    $scope.showForm = true;
                }, 100);
            }
        }]
    );