angular.module('focaAgendarVisita') .controller('focaAgendarVisitaController', [ '$scope', 'focaAgendarVisitaService', '$location', '$timeout', '$uibModal', 'focaBotoneraLateralService', '$filter', 'focaLoginService', 'focaModalService', 'focaSeguimientoService', function($scope, focaAgendarVisitaService, $location, $timeout, $uibModal, focaBotoneraLateralService, $filter, focaLoginService, focaModalService, focaSeguimientoService) { $scope.focused = 0; $scope.rol = 1; $scope.visita = {}; $scope.now = new Date(); $scope.botonera = [ { label: 'Agendar', image: 'precios-condiciones.png' } ]; $timeout(function() { focaBotoneraLateralService.showSalir(true); focaBotoneraLateralService.showPausar(true); focaBotoneraLateralService.showGuardar(true, $scope.guardar); }); $scope.seleccionarCliente = function() { var modalInstance = $uibModal.open( { ariaLabelledBy: 'Busqueda de Cliente', templateUrl: 'foca-busqueda-cliente-modal.html', controller: 'focaBusquedaClienteModalController', resolve: { vendedor: function() { return null; } }, size: 'lg' } ); modalInstance.result.then( function(cliente) { $scope.visita.cliente = cliente; } ); }; $scope.seleccionarVisitante = function() { var parametrosModal = { query: '/vendedor-cobrador', columnas: [ { propiedad: 'NUM', nombre: 'Codigo', filtro: { nombre: 'rellenarDigitos', parametro: 3 } }, { propiedad: 'NOM', nombre: 'Nombre' } ], titulo:'Búsqueda de vendedores y cobradores', size: 'md' }; focaModalService.modal(parametrosModal).then(function(vendedorCobrador) { $scope.visita.visitante = vendedorCobrador; }); }; $scope.next = function(key) { if (key === 13) $scope.focused ++; }; $scope.guardar = function() { var rol; if($scope.visita.visitante.rol === 1){ rol = 'Nota de pedido'; } else if($scope.visita.visitante.rol === 2){ rol = 'Cobranza'; } else { rol = ($scope.rol === 1) ? 'Nota de pedido' : 'Cobranza'; } focaAgendarVisitaService .guardarVisita({ idVisitante: $scope.visita.visitante.NUM, tipoVisitante: ($scope.visita.visitante.rol !== 3) ? $scope.visita.visitante.rol : $scope.rol, idCliente: $scope.visita.cliente.cod }) .then(function(data) { focaSeguimientoService.guardarPosicion( rol, data.data.id, $scope.visita.observacion, true ); }) .then(function() { $location.path('/'); }); }; } ]);