Commit 8fe02f5aa8436cb46f8a68b0fe9f3a6bdd247480
1 parent
ee3db70dc0
Exists in
master
refactor validations
Showing
4 changed files
with
43 additions
and
46 deletions
Show diff stats
src/js/controller.js
| ... | ... | @@ -40,17 +40,14 @@ angular.module('focaLogisticaPedidoRuta') .controller('focaLogisticaPedidoRutaCo |
| 40 | 40 | $scope.idVendedor = 0; |
| 41 | 41 | getSeguimiento(); |
| 42 | 42 | $scope.$broadcast('removeCabecera', cabecera); |
| 43 | - $scope.$broadcast('addCabecera',{ | |
| 43 | + $scope.$broadcast('addCabecera', { | |
| 44 | 44 | label: 'General', |
| 45 | 45 | valor: '' |
| 46 | 46 | }); |
| 47 | 47 | }; |
| 48 | 48 | |
| 49 | 49 | $scope.cargar = function(idVehiculo, punto) { |
| 50 | - if(!$scope.fechaReparto) { | |
| 51 | - focaModalService.alert('Primero seleccione fecha de reparto'); | |
| 52 | - return; | |
| 53 | - } | |
| 50 | + if(!eligioFecha()) return; | |
| 54 | 51 | var idRemito; |
| 55 | 52 | if(punto === -1) { |
| 56 | 53 | idRemito = -1; |
| ... | ... | @@ -76,21 +73,8 @@ angular.module('focaLogisticaPedidoRuta') .controller('focaLogisticaPedidoRutaCo |
| 76 | 73 | }; |
| 77 | 74 | |
| 78 | 75 | $scope.quitarVehiculo = function(vehiculo) { |
| 79 | - //TODO: Pasar validación a función | |
| 80 | - $scope.fechaReparto.setHours(0, 0, 0, 0); | |
| 81 | - var idUsuario = focaLogisticaPedidoRutaService.idUsuario; | |
| 82 | - for(var i = 0; i < vehiculo.cisternas.length; i++) { | |
| 83 | - for(var j = 0; j < vehiculo.cisternas[i].cisternasCarga.length; j++) { | |
| 84 | - var cisternaCarga = vehiculo.cisternas[i].cisternasCarga[j]; | |
| 85 | - if(cisternaCarga.fechaReparto.substring(0, 10) === $scope.fechaReparto | |
| 86 | - .toISOString().substring(0, 10) && cisternaCarga.idUsuarioProceso !== | |
| 87 | - idUsuario) | |
| 88 | - { | |
| 89 | - focaModalService.alert('El vehículo está siendo usado por otro usuario'); | |
| 90 | - return; | |
| 91 | - } | |
| 92 | - } | |
| 93 | - } | |
| 76 | + if(!eligioFecha()) return; | |
| 77 | + if(vehiculoEnUso(vehiculo)) return; | |
| 1 |
|
|
| 94 | 78 | focaModalService.confirm('Esta seguro que desea eliminar el vehículo ' + |
| 95 | 79 | vehiculo.codigo + '?').then(function() { |
| 96 | 80 | eliminarVehiculo(vehiculo); |
| ... | ... | @@ -98,25 +82,9 @@ angular.module('focaLogisticaPedidoRuta') .controller('focaLogisticaPedidoRutaCo |
| 98 | 82 | }; |
| 99 | 83 | |
| 100 | 84 | $scope.hacerHojaRuta = function(vehiculo) { |
| 101 | - if(!$scope.fechaReparto) { | |
| 102 | - focaModalService.alert('Primero seleccione fecha de reparto'); | |
| 103 | - return; | |
| 104 | - } | |
| 105 | - //TODO: Pasar validación a función | |
| 106 | - $scope.fechaReparto.setHours(0, 0, 0, 0); | |
| 107 | - var idUsuario = focaLogisticaPedidoRutaService.idUsuario; | |
| 108 | - for(var i = 0; i < vehiculo.cisternas.length; i++) { | |
| 109 | - for(var j = 0; j < vehiculo.cisternas[i].cisternasCarga.length; j++) { | |
| 110 | - var cisternaCarga = vehiculo.cisternas[i].cisternasCarga[j]; | |
| 111 | - if(cisternaCarga.fechaReparto.substring(0, 10) === $scope.fechaReparto | |
| 112 | - .toISOString().substring(0, 10) && cisternaCarga.idUsuarioProceso !== | |
| 113 | - idUsuario) | |
| 114 | - { | |
| 115 | - focaModalService.alert('El vehículo está siendo usado por otro usuario'); | |
| 116 | - return; | |
| 117 | - } | |
| 118 | - } | |
| 119 | - } | |
| 85 | + if(!eligioFecha()) return; | |
| 86 | + if(vehiculoEnUso(vehiculo)) return; | |
| 1 |
|
|
| 87 | + | |
| 120 | 88 | var modalInstance = $uibModal.open( |
| 121 | 89 | { |
| 122 | 90 | ariaLabelledBy: 'Creación hoja ruta', |
| ... | ... | @@ -124,7 +92,8 @@ angular.module('focaLogisticaPedidoRuta') .controller('focaLogisticaPedidoRutaCo |
| 124 | 92 | controller: 'focaModalCerrarVehiculo', |
| 125 | 93 | size: 'lg', |
| 126 | 94 | resolve: { |
| 127 | - idVehiculo: function() {return vehiculo.id;} | |
| 95 | + idVehiculo: function() {return vehiculo.id;}, | |
| 96 | + fechaReparto: function() {return $scope.fechaReparto;} | |
| 128 | 97 | } |
| 129 | 98 | } |
| 130 | 99 | ); |
| ... | ... | @@ -269,6 +238,32 @@ angular.module('focaLogisticaPedidoRuta') .controller('focaLogisticaPedidoRutaCo |
| 269 | 238 | } |
| 270 | 239 | }); |
| 271 | 240 | } |
| 241 | + | |
| 242 | + function eligioFecha() { | |
| 243 | + if(!$scope.fechaReparto) { | |
| 244 | + focaModalService.alert('Primero seleccione fecha de reparto'); | |
| 245 | + return false; | |
| 246 | + } | |
| 247 | + return true; | |
| 248 | + } | |
| 249 | + | |
| 250 | + function vehiculoEnUso(vehiculo) { | |
| 251 | + $scope.fechaReparto.setHours(0, 0, 0, 0); | |
| 252 | + var idUsuario = focaLogisticaPedidoRutaService.idUsuario; | |
| 253 | + for(var i = 0; i < vehiculo.cisternas.length; i++) { | |
| 254 | + for(var j = 0; j < vehiculo.cisternas[i].cisternasCarga.length; j++) { | |
| 255 | + var cisternaCarga = vehiculo.cisternas[i].cisternasCarga[j]; | |
| 256 | + if(cisternaCarga.fechaReparto.substring(0, 10) === $scope.fechaReparto | |
| 257 | + .toISOString().substring(0, 10) && cisternaCarga.idUsuarioProceso !== | |
| 258 | + idUsuario) | |
| 259 | + { | |
| 260 | + focaModalService.alert('El vehículo está siendo usado por otro usuario'); | |
| 261 | + return true; | |
| 262 | + } | |
| 263 | + } | |
| 264 | + } | |
| 265 | + return false; | |
| 266 | + } | |
| 272 | 267 | // TODO: descomentar en produccion |
| 273 | 268 | // $interval(function() { |
| 274 | 269 | // getSeguimiento(); |
src/js/controllerCerrarVehiculo.js
| ... | ... | @@ -7,11 +7,12 @@ angular.module('focaLogisticaPedidoRuta') |
| 7 | 7 | 'idVehiculo', |
| 8 | 8 | 'focaModalService', |
| 9 | 9 | '$filter', |
| 10 | + 'fechaReparto', | |
| 10 | 11 | function($scope, $uibModalInstance, $uibModal, focaLogisticaPedidoRutaService, |
| 11 | - idVehiculo, focaModalService, $filter) { | |
| 12 | + idVehiculo, focaModalService, $filter, fechaReparto) { | |
| 12 | 13 | $scope.vehiculo = {}; |
| 13 | 14 | $scope.remitos = []; |
| 14 | - $scope.now = new Date(); | |
| 15 | + $scope.now = fechaReparto; | |
| 15 | 16 | focaLogisticaPedidoRutaService.obtenerVehiculoById(idVehiculo).then(function(res) { |
| 16 | 17 | $scope.vehiculo = res.data; |
| 17 | 18 | }); |
src/js/controllerDetalleVehiculo.js
| ... | ... | @@ -31,7 +31,10 @@ angular.module('focaLogisticaPedidoRuta') |
| 31 | 31 | $scope.cargandoDatos = false; |
| 32 | 32 | $scope.vehiculo = res[0].data; |
| 33 | 33 | $scope.cisternas = res[1].data; |
| 34 | - if(!res[2]) return; | |
| 34 | + if(!res[2]) { | |
| 35 | + $scope.$digest(); | |
| 36 | + return; | |
| 37 | + } | |
| 35 | 38 | $scope.remito = res[2].data; |
| 36 | 39 | if($scope.remito.idUsuarioProceso) { |
| 37 | 40 | focaModalService.alert('Remito ya asignado'); |
| ... | ... | @@ -40,7 +43,7 @@ angular.module('focaLogisticaPedidoRuta') |
| 40 | 43 | $scope.articulos = $scope.remito.articulosRemito; |
| 41 | 44 | $scope.seleccionarArticulo($scope.articulos[0]); |
| 42 | 45 | var tieneUsuario = $scope.cisternas.filter(function(cisterna) { |
| 43 | - if(cisterna.cisternaCarga) { | |
| 46 | + if(cisterna.cisternaCarga && cisterna.cisternaCarga.idUsuarioProceso) { | |
| 44 | 47 | return cisterna.cisternaCarga.idUsuarioProceso !== |
| 45 | 48 | focaLogisticaPedidoRutaService.idUsuario; |
| 46 | 49 | } |
| ... | ... | @@ -48,7 +51,6 @@ angular.module('focaLogisticaPedidoRuta') |
| 48 | 51 | if(tieneUsuario.length) { |
| 49 | 52 | focaModalService.alert('Otro usario esta usando este vehículo'); |
| 50 | 53 | $uibModalInstance.close(); |
| 51 | - return; | |
| 52 | 54 | } |
| 53 | 55 | $scope.$digest(); |
| 54 | 56 | }); |