'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"},
];
//