'use strict'; var app = angular.module('App2', ['ngStorage', 'ngRoute', 'ngPagination', 'ngFileUpload', 'ngDialog', 'angucomplete-alt']); var app3 = angular.module('App3', ['ngStorage']); app.directive('uiSelectWrap', uiSelectWrap); uiSelectWrap.$inject = ['$document', 'uiGridEditConstants']; function uiSelectWrap($document, uiGridEditConstants) { return function link($scope, $elm, $attr) { $document.on('click', docClick); function docClick(evt) { if ($(evt.target).closest('.ui-select-container').length === 0) { $scope.$emit(uiGridEditConstants.events.END_CELL_EDIT); $document.off('click', docClick); } } }; } app.config(function ($routeProvider) { /*home*/ $routeProvider.when('/', { controller: 'MainCtrl', templateUrl: '/templates/home.html' }); /*NUEVO USUARIO*/ $routeProvider.when('/nuevousuario', { controller: 'UsuariosCtrl', templateUrl: '/templates/nuevousuario.html', resolve: { 'guestService1': 'userService', 'guestService2': 'horarios_service', 'guestService3': 'supervisoresservice', 'guestService4': 'gerentesservice' } }); $routeProvider.when('/update_usuario/:id_usuario', { controller : 'UpdateUsuario', templateUrl: '/templates/updateusuario.html', resolve : { 'guestService': 'userService' , 'guestService2': 'horarios_service', 'guestService3': 'supervisoresservice', 'guestService4': 'gerentesservice' } }); $routeProvider.when('/captura', { controller: 'Captura', templateUrl: '/templates/capturamovimientos.html', resolve: { 'guestService1': 'userService', 'guestService2': 'cat_estatus_service', 'guestService3': 'perfilService', 'guestService4': 'horarios_service', 'guestService5': 'incisosotService' } }); $routeProvider.when('/consultaot', { controller: 'Consulta', templateUrl: '/templates/consultaot.html', resolve: { 'guestService1': 'userService', 'guestService2': 'cat_estatus_service', 'guestService3': 'perfilService', 'guestService4': 'horarios_service' } }); $routeProvider.when('/carga', { controller: 'Carga', templateUrl: '/templates/carga.html', resolve: { 'guestService1': 'userService' } }); /*usuarios*/ $routeProvider.when('/admin_usuarios', { controller: 'UsuariosCtrl', templateUrl: '/templates/usuarios.html', resolve: { 'guestService0': 'userService', 'guestService1': 'perfilService' , 'guestService2': 'horarios_service' } }); /*perfiles*/ $routeProvider.when('/admin_perfiles', { controller: 'adminPerfilCtrl', templateUrl: '/templates/perfiles.html', resolve: { 'guestService': 'perfilService' } }); $routeProvider.otherwise({ redirectTo: '/' }); }); /*daños*/ /*usuarios*/ app.factory('userService', function ($sessionStorage, $rootScope, $http, $q, $log) { var deferred = $q.defer(); $http.post('rest/admin_users',$sessionStorage.userLocal) .success(function (data, status, headers, config) { $rootScope.cat_users = data; deferred.resolve(); }); return deferred.promise; }); app.factory('supervisoresservice', function ($sessionStorage,$rootScope, $http, $q, $log) { var deferred = $q.defer(); $http.post('rest/supervisores',$sessionStorage.userLocal) .success(function (data, status, headers, config) { $rootScope.supervisores = data; deferred.resolve(); }); return deferred.promise; }); app.factory('gerentesservice', function ($sessionStorage, $rootScope, $http, $q, $log) { var deferred = $q.defer(); $http.post('rest/gerentes', $sessionStorage.userLocal) .success(function (data, status, headers, config) { $rootScope.gerentes = data; deferred.resolve(); //console.log(data); }); return deferred.promise; }); app.factory('cat_estatus_service', function ($sessionStorage, $rootScope, $http, $q, $log) { var deferred = $q.defer(); $http.post('rest/cat_estatus',$sessionStorage.userLocal) .success(function (data, status, headers, config) { $rootScope.cat_estatus = data; deferred.resolve(); }); return deferred.promise; }); app.factory('horarios_service', function ($sessionStorage,$rootScope, $http, $q, $log) { var deferred = $q.defer(); $http.post('rest/traehorarios',$sessionStorage.userLocal) .success(function (data, status, headers, config) { $rootScope.cat_horarios = data; deferred.resolve(); }); return deferred.promise; }); /*perfiles*/ app.factory('perfilService', function ($rootScope, $http, $q, $log, $sessionStorage) { var deferred = $q.defer(); $http.post('rest/perfiles', $sessionStorage.userLocal) .success(function (data, status, headers, config) { $rootScope.perfil = data; deferred.resolve(); }); return deferred.promise; }); /*incisos por OT*/ app.factory('incisosotService', function ($rootScope, $http, $q, $log, $sessionStorage) { var deferred = $q.defer(); $http.post('rest/incisosot', $sessionStorage.userLocal) .success(function (data, status, headers, config) { $rootScope.incisosot = data; deferred.resolve(); }); return deferred.promise; }); app3.controller('gac', function ($scope, $window, $q, $http, $rootScope, $location, $sessionStorage, $timeout) { $scope.solicAccesAlert = false; var auth2; $scope.user = {}; $window.onload = function () { gapi.load('auth2', initSigninV2); }; var initSigninV2 = function () { auth2 = gapi.auth2.getAuthInstance(); auth2.isSignedIn.listen(signinChanged); auth2.currentUser.listen(userChanged); if (auth2.isSignedIn.get() == true) { auth2.signIn(); } }; //variables de Google var signinChanged = function (isSignedIn) { if (isSignedIn) { var googleUser = auth2.currentUser.get(); var authResponse = googleUser.getAuthResponse(); var profile = googleUser.getBasicProfile(); $scope.user.id = profile.getId(); $scope.user.fullName = profile.getName(); $scope.user.firstName = profile.getGivenName(); $scope.user.lastName = profile.getFamilyName(); $scope.user.photo = profile.getImageUrl(); $scope.user.email = profile.getEmail(); $scope.user.domain = googleUser.getHostedDomain(); $scope.user.timestamp = moment().format('x'); $scope.user.idToken = authResponse.id_token; $scope.user.expiresAt = authResponse.expires_at; $scope.$digest(); } else { $scope.user = {}; $scope.$digest(); } //console.log($scope.user) $rootScope.user = $scope.user; }; var userChanged = function (user) {}; //botton continuar// $scope.submitLogin = function () { var deferred = $q.defer(); $http.post('rest/login', $scope.user) .success(function (data, status, headers, config) { var salida = []; angular.forEach(data, function (value, key) { if (value.email == $scope.user.email && value.activo == 'S') salida.push(value); }) //console.log(salida) deferred.resolve(); if (salida.length > 0) { $scope.userData = { 'id_user': salida[0].id_usuario, 'name': $scope.user.fullName, 'email': $scope.user.email, 'perfil': salida[0].id_perfil, 'img': $scope.user.photo, 'nivel': salida[0].nivel, 'autoridad': salida[0].autoridad, 'horario': salida[0].horario, 'idsesion': salida[0].idsesion, 'tk': salida[0].tk }; $sessionStorage.userLocal = $scope.userData; loginSuccess(); $timeout(function () { $window.location.href = ('index.html') }, 1400); } else { loginError(); $scope.solicAccesAlert = true; } }); return deferred.promise; } }); app.controller('MasterController', function ($scope, $location, $rootScope, $window, $sessionStorage, ngDialog) { $scope.userActivo = $sessionStorage.userLocal; //MODAL COMUNICADOS// $scope.imgActive = 1; $scope.prev = function(){ $scope.imgActive = $scope.imgActive - 1 } $scope.next = function(){ $scope.imgActive = $scope.imgActive + 1 } }); app.controller('MainCtrl', function ($scope, $rootScope, $interval, ngDialog, $log, $http, $routeParams, $location, $route, $q, $window, $timeout,$sessionStorage) { $scope.Listusuarios = $rootScope.cat_users; $scope.usuarioactual = $sessionStorage.userLocal; $http.post('/rest/perfiles', $scope.usuarioactual) .success(function (data, status, headers, config) { $rootScope.perfil = data; }); var tres tres = $interval(function() { //Intervalos($rootScope.tiempo); $http.post('/rest/actualiza_sesion', $scope.usuarioactual) .success(function(data, status, headers, config) { }); }, 180000); var ocho ocho = $interval(function() { //Intervalos($rootScope.tiempo); if ($rootScope.tiempo >= 450) { $http.post('/rest/actualiza_sesion', $scope.usuarioactual) .success(function(data, status, headers, config) { $rootScope.tiempo = 0; $window.location.href = ('login.html') }) }; }, 480000); var cuenta cuenta = $interval(function() { $rootScope.tiempo = $rootScope.tiempo + 1 ; }, 1000); }); app.controller('UsuariosCtrl', function ($scope, $http, $rootScope,$location, $q, $parse, Upload, $timeout, ngDialog, $window) { $scope.usuario = {}; $scope.Listperfiles = $rootScope.cat_perfil; $scope.users = $rootScope.cat_users; $scope.horarios = $rootScope.cat_horarios; $scope.supervisores = $rootScope.supervisores; $scope.gerentes = $rootScope.gerentes; $rootScope.perfilesusuario = []; $scope.nuevousuario = function() { $location.path('/nuevousuario'); } //abrir modal nuevos $scope.AdminPerfiles = function(perfilactual){ ngDialog.openConfirm({ template: 'templates/adminperfiles.html', plain: false, closeByDocument: false, className: 'ngdialog-theme-default', controllerAs: 'AdmonPerfiles', width: '70%', scope:$scope, }).then(function (value) { }, function (perfilactual) { }); } $scope.AgregarUsuario = function(usuario){ // xxxxxxxxxxxxxx VALIDACIONES xxxxxxxxxxxxxxxx if (!usuario.nombre) { obligatorios(': Nombre del Asesor'); $window.document.getElementById('nombreasesor').focus(); return; } if (!usuario.email) { obligatorios(': Correo Electronico'); $window.document.getElementById('email').focus(); return; } if (!usuario.horario) { obligatorios(': Horario Laboral'); $window.document.getElementById('horario').focus(); return; } if (!usuario.autoridad) { obligatorios(': Tipo Usuario'); $window.document.getElementById('autoridad').focus(); return; } if ($rootScope.perfilesusuario.length < 1 && usuario.autoridad == 3) { obligatorios(': Indique por lo menos un perfil'); $window.document.getElementById('botonperfiles').focus(); return; } if ((usuario.autoridad == 3 || usuario.autoridad == 2) && !usuario.gerente) { obligatorios(': Indique el nombre del gerente'); $window.document.getElementById('gerente').focus(); return; } if ($scope.usuario.autoridad == 3) { for (var i=0; i<$scope.supervisores.length; i++) { if ($scope.supervisores[i].nombre == $scope.usuario.supervisor) { $scope.usuario.supervisor = $scope.supervisores[i].email; } } }else { $scope.usuario.supervisor = $scope.usuario.email; }; if ($scope.usuario.autoridad == 4 || $scope.usuario.autoridad == 1) { $scope.usuario.supervisor = $scope.usuario.email; $scope.usuario.gerente = $scope.usuario.email; } for (var i=0; i<$scope.gerentes.length; i++) { if ($scope.gerentes[i].nombre == $scope.usuario.gerente) { $scope.usuario.gerente = $scope.gerentes[i].email; } } $http.post('/rest/create_Usuarios', usuario) .success(function (data, status, headers, config) { if(status >= 200){ for (var i=0; i<$rootScope.perfilesusuario.length; i++) { var deferred = $q.defer(); $rootScope.perfilesusuario[i].id_usuario = data.idnew $http.post('/rest/grabaperfiles', $rootScope.perfilesusuario[i]) .success(function (data, status, headers, config) { deferred.resolve(); return deferred.promise; }) } saveSuccess(); ngDialog.close(); $timeout(function () { //$rootScope.$apply(); $window.location.reload();//recarga la pagina }, 3000); } }) } $scope.EditUsuario = function(usuario) { $location.path('/update_usuario/' + usuario.id_usuario); }; }); app.controller('UpdateUsuario', function ($scope, $http,$routeParams, $sessionStorage, $rootScope,$location, $parse, Upload, $timeout, ngDialog, $window) { $rootScope.perfilesusuario = []; $scope.horarios = $rootScope.cat_horarios; $scope.supervisores = $rootScope.supervisores; $scope.gerentes = $rootScope.gerentes; for (var i=0; i<$rootScope.cat_users.length; i++) { if ($rootScope.cat_users[i].id_usuario == $routeParams.id_usuario) { $scope.usuario = angular.copy($rootScope.cat_users[i]); } } // TRAEMOS LOS PERFILES DEL USUARIO $scope.usuario.tk = $sessionStorage.userLocal.tk; $http.post('/rest/traeperfiles', $scope.usuario) .success(function(data, status, headers, config) { $rootScope.perfilesusuario = data; }); $scope.update = function() { // xxxxxxxxxxxxxx VALIDACIONES xxxxxxxxxxxxxxxx if (!$scope.usuario.nombre) { obligatorios(': Nombre del Asesor'); $window.document.getElementById('nombreasesor').focus(); return; } if (!$scope.usuario.email) { obligatorios(': Correo Electronico'); $window.document.getElementById('email').focus(); return; } if (!$scope.usuario.horario) { obligatorios(': Horario Laboral'); $window.document.getElementById('horario').focus(); return; } if (!$scope.usuario.autoridad) { obligatorios(': Tipo Usuario'); $window.document.getElementById('autoridad').focus(); return; } if ($rootScope.perfilesusuario.length < 1 && $scope.autoridad == 3) { obligatorios(': Indique por lo menos un perfil'); $window.document.getElementById('botonperfiles').focus(); return; } for (var i=0; i<$scope.supervisores.length; i++) { if ($scope.supervisores[i].nombre == $scope.usuario.supervisor) { $scope.usuario.supervisor = $scope.supervisores[i].email; } } for (var i=0; i<$scope.gerentes.length; i++) { if ($scope.gerentes[i].nombre == $scope.usuario.gerente) { $scope.usuario.gerente = $scope.gerentes[i].email; } } $rootScope.status = 'Actualizando...'; $scope.usuario.tk = $sessionStorage.userLocal.tk; $http.post('/rest/update_Usuarios', $scope.usuario) .success(function(data, status, headers, config) { for (var i=0; i<$rootScope.cat_users.length; i++) { if ($rootScope.cat_users[i].id_usuario == $scope.usuario.id_usuario) { $rootScope.cat_users.splice(i,1); break; } } $rootScope.cat_users.push(data); }); for (var i=0; i<$rootScope.perfilesusuario.length; i++) { $rootScope.perfilesusuario[i].id_usuario = $scope.usuario.id_usuario; $rootScope.perfilesusuario[i].tk = $sessionStorage.userLocal.tk; $http.post('/rest/grabaperfiles', $rootScope.perfilesusuario[i]) .success(function (data, status, headers, config) { }) } $rootScope.IsVisible = 1; $location.path('/admin_usuarios'); }; $scope.AdminPerfiles = function(perfilactual){ ngDialog.openConfirm({ template: 'templates/adminperfiles.html', plain: false, closeByDocument: false, className: 'ngdialog-theme-default', controllerAs: 'AdmonPerfiles', width: '70%', scope:$scope, }).then(function (value) { }, function (perfilactual) { }); } }); app.controller('Captura', function ($scope, $http,$routeParams,$q, $rootScope,$sessionStorage,$location, $parse, Upload, $timeout, ngDialog, $window) { $scope.ListPerfiles = $rootScope.perfil; $scope.captura = { nombre: $sessionStorage.userLocal.name, horario: $sessionStorage.userLocal.horario, id_usuario: $sessionStorage.userLocal.id_user, tk: $sessionStorage.userLocal.tk } $scope.Listestatus = $rootScope.cat_estatus $scope.notramites = false; $scope.leyendanumero = "Cantidad de Tramites" $scope.estadoboton = 'Registrar'; $scope.onBlur = function(evento) { var cadena = $window.document.getElementById('perfil').options[$window.document.getElementById('perfil').selectedIndex].text; var arreglo = cadena.split(" -> "); $scope.filtro = []; for (var cont=0; cont<$scope.Listestatus.length; cont++) { if($scope.Listestatus[cont].skill == arreglo[1] && $scope.Listestatus[cont].tramoramo == arreglo[0]) { $scope.Listestatus[cont].visible = 'S'; } else{ $scope.Listestatus[cont].visible = 'N'; } }; if(arreglo[1] == 'CARGA MASIVA' || arreglo[1] == 'PAGO DE ASISTENCIA' || arreglo[1] == 'ALTA DE CUENTAS' ) { if( arreglo[1] != 'ALTA DE CUENTAS'){ $scope.leyendanumero = "Cantidad de Tramites" } else{ $scope.leyendanumero = "No. de Beneficiarios" } $scope.notramites = true; } else { $scope.notramites = false; } ; }; /* $scope.onBlur = function($event) { var cadena = $window.document.getElementById('perfil').options[$window.document.getElementById('perfil').selectedIndex].text; var arreglo = cadena.split(" -> "); $scope.filtro = []; for (var cont=0; cont<$scope.Listestatus.length; cont++) { if($scope.Listestatus[cont].skill == arreglo[1] && $scope.Listestatus[cont].tramoramo == arreglo[0]) { $scope.Listestatus[cont].visible = 'S'; } else{ $scope.Listestatus[cont].visible = 'N'; } }; if(arreglo[1] == 'CARGA MASIVA' || arreglo[1] == 'PAGO DE ASISTENCIA' || arreglo[1] == 'ALTA DE CUENTAS' ) { if( arreglo[1] != 'ALTA DE CUENTAS'){ $scope.leyendanumero = "Cantidad de Tramites" } else{ $scope.leyendanumero = "No. de Beneficiarios" } $scope.notramites = true; } else { $scope.notramites = false; } ; }; */ $scope.insertarcaptura = function() { // xxxxxxxxxxxxxx VALIDACIONES xxxxxxxxxxxxxxxx if (!$scope.captura.ot) { obligatorios(': Folio'); $window.document.getElementById('ot').focus(); return; } if (!$scope.captura.id_perfil) { obligatorios(': Perfil del movimiento'); $window.document.getElementById('perfil').focus(); return; } if (!$scope.captura.id_estatus) { obligatorios(': Actividad'); $window.document.getElementById('estatus').focus(); return; } if (!$scope.captura.noincisos) { $scope.captura.noincisos = 1; } if ($scope.captura.noincisos > 10000) { longitudincisos(); $window.document.getElementById('noincisos').focus(); return; } //DESHABILITAMOS EL BOTON DE ACEPTAR $window.document.getElementById('botonguardar').disabled = true; $scope.estadoboton = 'Registrando'; var deferred = $q.defer(); $http.post('/rest/insertar_captura', $scope.captura) .success(function(data, status, headers, config) { altaAlert(); deferred.resolve(); $timeout(function () { //$rootScope.$apply(); $window.location.reload();//recarga la pagina }, 1700); return deferred.promise; }); }; }); app.controller('AdmonPerfiles', function ($scope, $http,$routeParams,$q, $filter,$rootScope,$sessionStorage,$location, $parse, Upload, $timeout, ngDialog, $window) { $scope.perfiles = []; $scope.nuevo = {}; $scope.today = $filter('date')(new Date(), 'yyyy-MM-dd'); if ($rootScope.perfilesusuario.length > 0){ $scope.perfiles = angular.copy($rootScope.perfilesusuario); } $scope.actividades = [ {actividad: "ASIGNACION DANOS"}, {actividad: "ASIGNACION VIDA GRUPO"}, {actividad: "ASIGNACION VIDA INDIVIDUAL"}, {actividad: "ASIGNACION VENCIMIENTOS"}, {actividad: "ASIGNACION FIDUCIARIO"}, ]; //