From e185ae60a6945c97a41f3808ba96c67702427e82 Mon Sep 17 00:00:00 2001 From: mpuebla Date: Wed, 16 Oct 2019 12:20:05 -0300 Subject: [PATCH] Agregado modal de configuraciones. --- src/js/controller.js | 29 +++++++++++++--- src/js/controllerConfiguracion.js | 45 ++++++++++++++++++++++++ src/js/service.js | 35 ++++++++++++------- src/views/foca-login.html | 9 ++++- src/views/modal-configuracion.html | 71 ++++++++++++++++++++++++++++++++++++++ 5 files changed, 171 insertions(+), 18 deletions(-) create mode 100644 src/js/controllerConfiguracion.js create mode 100644 src/views/modal-configuracion.html diff --git a/src/js/controller.js b/src/js/controller.js index 017a0c0..0a7475e 100644 --- a/src/js/controller.js +++ b/src/js/controller.js @@ -1,16 +1,21 @@ angular.module('focaLogin') .controller('focaLoginController', [ - '$scope', 'focaLoginService', '$location', '$cookies', 'focaModalService', 'md5', 'APP', - function ($scope, focaLoginService, $location, $cookies, focaModalService, md5, APP) { + '$scope', 'focaLoginService', '$location', '$cookies', 'focaModalService', 'md5', 'APP', '$uibModal', + function ($scope, focaLoginService, $location, $cookies, focaModalService, md5, APP, $uibModal) { + $scope.paso = 1; $scope.hidePassword = true; + $scope.timer = 0; + $scope.enviar = function () { + angular.element('#password').blur(); focaLoginService.login({ idUsuario: $scope.usuario.idUsuario, clave: APP != 'facturador' ? md5.createHash($scope.usuario.clave) : $scope.usuario.clave }).then(function (datos) { + if (datos.data.chofer && datos.data.chofer.id) { $cookies.put('chofer', datos.data.chofer.id); $cookies.put('nombreUsuario', datos.data.chofer.nombre); @@ -24,12 +29,11 @@ angular.module('focaLogin') focaModalService.alert('Existe un error con el usuario ingresado'); return; } - - console.info(datos.data); $cookies.put('token', datos.data.token); $location.path('/'); $scope.$emit('blur'); }, function (error) { + if (error.status === 401) { focaModalService .alert('El usuario o la contraseña han sido mal introducidos'); @@ -41,14 +45,31 @@ angular.module('focaLogin') } }); }; + $scope.irPaso = function (numeroPaso) { + $scope.paso = numeroPaso; }; + + $scope.abrirModalConfiguracion = function () { + + $scope.timer++; + if ($scope.timer < 5) { return; } + $scope.timer = 0; + + $uibModal.open({ + templateUrl: 'modal-configuracion.html', + controller: 'focaModalConfiguracionController', + size: 'md', + backdrop: false, + }); + }; } ]) .controller('focaLogoutController', [ '$cookies', '$location', function ($cookies, $location) { + $cookies.remove('chofer'); $cookies.remove('vendedorCobrador'); $cookies.remove('vendedorPlaya'); diff --git a/src/js/controllerConfiguracion.js b/src/js/controllerConfiguracion.js new file mode 100644 index 0000000..de52a78 --- /dev/null +++ b/src/js/controllerConfiguracion.js @@ -0,0 +1,45 @@ +angular.module('focaLogin') + .controller('focaModalConfiguracionController', [ + '$scope', '$uibModalInstance', 'focaLoginService', '$timeout', '$localStorage', + function ($scope, $uibModalInstance, focaLoginService, $timeout, $localStorage) { + + $scope.puntosVenta = []; + $scope.impresoras = []; + $scope.selectedPuntoVenta = localStorage.pve ? localStorage.pve : null; + $scope.selectedImpresora = $localStorage.impresoraPVE ? $localStorage.impresoraPVE : null; + $scope.usePlanillaPropia = false; + + init(); + + function init() { + + var promisePuntosVenta = focaLoginService.getAllPuntoVenta(); + var promiseImpresoras = focaLoginService.getAllImpresoras(); + + Promise.all([promisePuntosVenta, promiseImpresoras]) + .then(function (res) { + + $timeout(function () { + + $scope.puntosVenta = res[0].data; + $scope.impresoras = res[1].data; + }); + }) + .catch(function (err) { + console.error(err); + }); + } + + $scope.cancel = function () { + + $uibModalInstance.dismiss('cancel'); + }; + + $scope.acept = function () { + + $localStorage.pve = $scope.selectedPuntoVenta ? parseInt($scope.selectedPuntoVenta) : null; + $localStorage.impresoraPVE = $scope.selectedImpresora ? parseInt($scope.selectedImpresora) : null; + $scope.cancel(); + } + } + ]); diff --git a/src/js/service.js b/src/js/service.js index 5323510..5a7c88c 100644 --- a/src/js/service.js +++ b/src/js/service.js @@ -1,30 +1,39 @@ angular.module('focaLogin') .factory('focaLoginService', [ '$http', 'API_ENDPOINT', 'APP', '$cookies', - function($http, API_ENDPOINT, APP, $cookies) { + function ($http, API_ENDPOINT, APP, $cookies) { return { - login: function(usuario) { - var param = ''; + login: function (usuario) { - if (APP) { - param = '/' + APP; - } - - return $http.post(API_ENDPOINT.URL + '/usuario/login' + param , usuario); + var param = APP ? '/' + APP : ''; + return $http.post(API_ENDPOINT.URL + '/usuario/login' + param, usuario); }, - getLoginData: function() { + getLoginData: function () { + if ($cookies.get('chofer')) { - return {chofer: $cookies.get('chofer')}; + return { chofer: $cookies.get('chofer') }; } if ($cookies.get('vendedorCobrador')) { - return {vendedorCobrador: $cookies.get('vendedorCobrador')}; + return { vendedorCobrador: $cookies.get('vendedorCobrador') }; } if ($cookies.get('vendedorPlaya')) { - return {vendedorPlaya: $cookies.get('vendedorPlaya')}; + return { vendedorPlaya: $cookies.get('vendedorPlaya') }; } - } + }, + getAllPuntoVenta: function () { + + return $http.get(API_ENDPOINT.URL_AUTOSERVICIO + '/get/puntos-venta'); + }, + getAllImpresoras: function () { + + return $http.get(API_ENDPOINT.URL_AUTOSERVICIO + '/get/impresoras'); + }, + getByIdPuntoVenta: function (id) { + + return $http.get(API_ENDPOINT.URL_AUTOSERVICIO + '/get/punto-venta/' + id); + }, }; } ]); diff --git a/src/views/foca-login.html b/src/views/foca-login.html index 86fde7c..4a10b04 100644 --- a/src/views/foca-login.html +++ b/src/views/foca-login.html @@ -1,6 +1,13 @@
- +