Commit c393faa6f8783ca9dbf9f6436a004b1e03b39b9b
Exists in
master
Merge branch 'master' into 'master'
Master See merge request !27
Showing
4 changed files
Show diff stats
gulpfile.js
| ... | ... | @@ -11,6 +11,7 @@ const replace = require('gulp-replace'); |
| 11 | 11 | const connect = require('gulp-connect'); |
| 12 | 12 | const header = require('gulp-header'); |
| 13 | 13 | const footer = require('gulp-footer'); |
| 14 | +const gulpSequence = require('gulp-sequence'); | |
| 14 | 15 | |
| 15 | 16 | var paths = { |
| 16 | 17 | srcJS: 'src/js/*.js', |
| ... | ... | @@ -20,7 +21,9 @@ var paths = { |
| 20 | 21 | dist: 'dist/' |
| 21 | 22 | }; |
| 22 | 23 | |
| 23 | -gulp.task('templates', ['clean'], function() { | |
| 24 | +gulp.task('uglify', gulpSequence('clean', ['templates', 'uglify-spec'], 'uglify-app')); | |
| 25 | + | |
| 26 | +gulp.task('templates', function() { | |
| 24 | 27 | return pump( |
| 25 | 28 | [ |
| 26 | 29 | gulp.src(paths.srcViews), |
| ... | ... | @@ -34,7 +37,7 @@ gulp.task('templates', ['clean'], function() { |
| 34 | 37 | ); |
| 35 | 38 | }); |
| 36 | 39 | |
| 37 | -gulp.task('uglify', ['templates', 'uglify-spec'], function() { | |
| 40 | +gulp.task('uglify-app', function() { | |
| 38 | 41 | return pump( |
| 39 | 42 | [ |
| 40 | 43 | gulp.src([ |
| ... | ... | @@ -83,7 +86,7 @@ gulp.task('pre-commit', function() { |
| 83 | 86 | gulp.task('webserver', function() { |
| 84 | 87 | pump [ |
| 85 | 88 | connect.server({port: 3300, host: '0.0.0.0'}) |
| 86 | - ] | |
| 89 | + ]; | |
| 87 | 90 | }); |
| 88 | 91 | |
| 89 | 92 | gulp.task('clean-post-install', function() { |
src/js/controller.js
| ... | ... | @@ -9,9 +9,10 @@ angular.module('focaCrearHojaRuta') .controller('hojaRutaCtrl', |
| 9 | 9 | 'focaModalService', |
| 10 | 10 | 'focaBotoneraLateralService', |
| 11 | 11 | 'focaLoginService', |
| 12 | + '$localStorage', | |
| 12 | 13 | function($scope, $uibModal, $location, $filter, $timeout, |
| 13 | 14 | focaCrearHojaRutaService, focaModalService, focaBotoneraLateralService, |
| 14 | - focaLoginSrv) | |
| 15 | + focaLoginSrv, $localStorage) | |
| 15 | 16 | { |
| 16 | 17 | config(); |
| 17 | 18 | |
| ... | ... | @@ -33,6 +34,7 @@ angular.module('focaCrearHojaRuta') .controller('hojaRutaCtrl', |
| 33 | 34 | }); |
| 34 | 35 | |
| 35 | 36 | init(); |
| 37 | + $timeout(function() {getLSHojaRuta();}); | |
| 36 | 38 | } |
| 37 | 39 | |
| 38 | 40 | function init() { |
| ... | ... | @@ -48,10 +50,9 @@ angular.module('focaCrearHojaRuta') .controller('hojaRutaCtrl', |
| 48 | 50 | transportista: {}, |
| 49 | 51 | tarifario: { |
| 50 | 52 | costo: null |
| 51 | - } | |
| 53 | + }, | |
| 54 | + remitosTabla: [] | |
| 52 | 55 | }; |
| 53 | - | |
| 54 | - $scope.remitosTabla = []; | |
| 55 | 56 | $scope.idLista = undefined; |
| 56 | 57 | |
| 57 | 58 | focaCrearHojaRutaService.getNumeroHojaRuta().then( |
| ... | ... | @@ -65,15 +66,18 @@ angular.module('focaCrearHojaRuta') .controller('hojaRutaCtrl', |
| 65 | 66 | } |
| 66 | 67 | ); |
| 67 | 68 | |
| 68 | - $scope.inicial = { | |
| 69 | - hojaRuta: angular.copy($scope.hojaRuta), | |
| 70 | - remitosTabla: angular.copy($scope.remitosTabla), | |
| 71 | - idLista: angular.copy($scope.idLista) | |
| 72 | - }; | |
| 69 | + $scope.inicial = angular.copy($scope.hojaRuta); | |
| 73 | 70 | } |
| 74 | 71 | |
| 72 | + $scope.$watch('hojaRuta', function(newValue, oldValue) { | |
| 73 | + focaBotoneraLateralService.setPausarData({ | |
| 74 | + label: 'hojaRuta', | |
| 75 | + val: newValue | |
| 76 | + }); | |
| 77 | + }, true); | |
| 78 | + | |
| 75 | 79 | $scope.crearHojaRuta = function() { |
| 76 | - if(!$scope.remitosTabla.length) { | |
| 80 | + if(!$scope.hojaRuta.remitosTabla.length) { | |
| 77 | 81 | focaModalService.alert('Ingrese Remitos'); |
| 78 | 82 | return; |
| 79 | 83 | } |
| ... | ... | @@ -107,10 +111,10 @@ angular.module('focaCrearHojaRuta') .controller('hojaRutaCtrl', |
| 107 | 111 | idChofer: $scope.hojaRuta.chofer.id, |
| 108 | 112 | idVehiculo: $scope.hojaRuta.vehiculo.id, |
| 109 | 113 | tarifaFlete: $scope.hojaRuta.tarifario.costo, |
| 110 | - fechaReparto: $scope.fechaReparto.toISOString().substring(0, 10), | |
| 114 | + fechaReparto: new Date($scope.hojaRuta.fechaReparto).toISOString().substring(0, 10), | |
| 111 | 115 | estado: 0 |
| 112 | 116 | }, |
| 113 | - remitos: $scope.remitosTabla | |
| 117 | + remitos: $scope.hojaRuta.remitosTabla | |
| 114 | 118 | }; |
| 115 | 119 | save.hojaRuta = angular.extend({}, save.hojaRuta, $scope.hojaRuta.datosExtra); |
| 116 | 120 | focaCrearHojaRutaService.crearHojaRuta(save).then( |
| ... | ... | @@ -251,8 +255,8 @@ angular.module('focaCrearHojaRuta') .controller('hojaRutaCtrl', |
| 251 | 255 | modalInstance.result.then( |
| 252 | 256 | function(remito) { |
| 253 | 257 | // TODO: borrar cuando no se use definitivamente |
| 254 | - // for (var i = $scope.remitosTabla.length - 1; i >= 0; i--) { | |
| 255 | - // if ($scope.remitosTabla[i].id === remito.id) { | |
| 258 | + // for (var i = $scope.hojaRuta.remitosTabla.length - 1; i >= 0; i--) { | |
| 259 | + // if ($scope.hojaRuta.remitosTabla[i].id === remito.id) { | |
| 256 | 260 | // focaModalService.alert('Remito ya incluido'); |
| 257 | 261 | // return; |
| 258 | 262 | // } |
| ... | ... | @@ -283,7 +287,7 @@ angular.module('focaCrearHojaRuta') .controller('hojaRutaCtrl', |
| 283 | 287 | // remito.litros = litros; |
| 284 | 288 | // $scope.hojaRuta.litros = $scope.hojaRuta.litros + litros; |
| 285 | 289 | $scope.cargarCisterna(remito.id).then(function() { |
| 286 | - $scope.remitosTabla.push(remito); | |
| 290 | + $scope.hojaRuta.remitosTabla.push(remito); | |
| 287 | 291 | $scope.seleccionarRemitos(); |
| 288 | 292 | }, function() { |
| 289 | 293 | $scope.seleccionarRemitos(); |
| ... | ... | @@ -310,7 +314,7 @@ angular.module('focaCrearHojaRuta') .controller('hojaRutaCtrl', |
| 310 | 314 | resolve: { |
| 311 | 315 | idVehiculo: function() {return $scope.hojaRuta.vehiculo.id;}, |
| 312 | 316 | idRemito: function() {return idRemito;}, |
| 313 | - fechaReparto: function() {return $scope.fechaReparto;} | |
| 317 | + fechaReparto: function() {return $scope.hojaRuta.fechaReparto;} | |
| 314 | 318 | } |
| 315 | 319 | } |
| 316 | 320 | ); |
| ... | ... | @@ -318,7 +322,7 @@ angular.module('focaCrearHojaRuta') .controller('hojaRutaCtrl', |
| 318 | 322 | }; |
| 319 | 323 | |
| 320 | 324 | $scope.seleccionarFechaEntrega = function() { |
| 321 | - if(!$scope.fechaReparto) { | |
| 325 | + if (!$scope.hojaRuta.fechaReparto) { | |
| 322 | 326 | elegirFecha(); |
| 323 | 327 | return; |
| 324 | 328 | } |
| ... | ... | @@ -359,9 +363,9 @@ angular.module('focaCrearHojaRuta') .controller('hojaRutaCtrl', |
| 359 | 363 | focaModalService.confirm('ยฟEstรก seguro que desea desasociar este remito del' + |
| 360 | 364 | ' vehรญculo?').then(function() { |
| 361 | 365 | focaCrearHojaRutaService.desasociarRemitos(idsRemito, |
| 362 | - $scope.hojaRuta.vehiculo.id, $scope.remitosTabla.length <= 1).then( | |
| 366 | + $scope.hojaRuta.vehiculo.id, $scope.hojaRuta.remitosTabla.length <= 1).then( | |
| 363 | 367 | function() { |
| 364 | - $scope.remitosTabla.splice(key, 1); | |
| 368 | + $scope.hojaRuta.remitosTabla.splice(key, 1); | |
| 365 | 369 | focaModalService.alert('Remito desasociado con รฉxito'); |
| 366 | 370 | } |
| 367 | 371 | ); |
| ... | ... | @@ -374,7 +378,7 @@ angular.module('focaCrearHojaRuta') .controller('hojaRutaCtrl', |
| 374 | 378 | label: 'Fecha de entrega:', |
| 375 | 379 | valor: fecha.toLocaleDateString() |
| 376 | 380 | }); |
| 377 | - $scope.fechaReparto = fecha; | |
| 381 | + $scope.hojaRuta.fechaReparto = fecha; | |
| 378 | 382 | }); |
| 379 | 383 | } |
| 380 | 384 | |
| ... | ... | @@ -387,7 +391,7 @@ angular.module('focaCrearHojaRuta') .controller('hojaRutaCtrl', |
| 387 | 391 | } |
| 388 | 392 | |
| 389 | 393 | function eligioFecha() { |
| 390 | - if(!$scope.fechaReparto) { | |
| 394 | + if(!$scope.hojaRuta.fechaReparto) { | |
| 391 | 395 | focaModalService.alert('Primero seleccione fecha de reparto'); |
| 392 | 396 | return false; |
| 393 | 397 | } |
| ... | ... | @@ -406,7 +410,7 @@ angular.module('focaCrearHojaRuta') .controller('hojaRutaCtrl', |
| 406 | 410 | var parametrosModal = {}; |
| 407 | 411 | if(preCargados) { |
| 408 | 412 | parametrosModal.query = '/vehiculo/obtener/pre-confirmados/' + |
| 409 | - $scope.fechaReparto.toISOString().substring(0, 10); | |
| 413 | + new Date($scope.hojaRuta.fechaReparto).toISOString().substring(0, 10); | |
| 410 | 414 | parametrosModal.titulo = 'Bรบsqueda de vehiculos pre confirmados'; |
| 411 | 415 | }else { |
| 412 | 416 | parametrosModal.query = '/vehiculo'; |
| ... | ... | @@ -439,15 +443,15 @@ angular.module('focaCrearHojaRuta') .controller('hojaRutaCtrl', |
| 439 | 443 | ' - ' + vehiculo.transportista.NOM |
| 440 | 444 | }); |
| 441 | 445 | focaCrearHojaRutaService |
| 442 | - .getRemitosByIdVehiculo(vehiculo.id, $scope.fechaReparto) | |
| 446 | + .getRemitosByIdVehiculo(vehiculo.id, $scope.hojaRuta.fechaReparto) | |
| 443 | 447 | .then(function(res) { |
| 444 | - $scope.remitosTabla = res.data; | |
| 448 | + $scope.hojaRuta.remitosTabla = res.data; | |
| 445 | 449 | }); |
| 446 | 450 | }else { |
| 447 | 451 | focaCrearHojaRutaService |
| 448 | - .getRemitosByIdVehiculo(vehiculo.id, $scope.fechaReparto, true) | |
| 452 | + .getRemitosByIdVehiculo(vehiculo.id, $scope.hojaRuta.fechaReparto, true) | |
| 449 | 453 | .then(function(res) { |
| 450 | - $scope.remitosTabla = res.data; | |
| 454 | + $scope.hojaRuta.remitosTabla = res.data; | |
| 451 | 455 | }); |
| 452 | 456 | } |
| 453 | 457 | $scope.$broadcast('addCabecera', { |
| ... | ... | @@ -467,11 +471,12 @@ angular.module('focaCrearHojaRuta') .controller('hojaRutaCtrl', |
| 467 | 471 | |
| 468 | 472 | function vehiculoEnUso(vehiculo) { |
| 469 | 473 | var idUsuario = focaLoginSrv.getLoginData().vendedorCobrador; |
| 470 | - for(var i = 0; i < vehiculo.cisternas.length; i++) { | |
| 471 | - for(var j = 0; j < vehiculo.cisternas[i].cisternasCarga.length; j++) { | |
| 474 | + for (var i = 0; i < vehiculo.cisternas.length; i++) { | |
| 475 | + for (var j = 0; j < vehiculo.cisternas[i].cisternasCarga.length; j++) { | |
| 472 | 476 | var cisternaCarga = vehiculo.cisternas[i].cisternasCarga[j]; |
| 473 | - if(cisternaCarga.fechaReparto.substring(0, 10) === $scope.fechaReparto | |
| 474 | - .toISOString().substring(0, 10) && cisternaCarga.idUsuarioProceso && | |
| 477 | + if (cisternaCarga.fechaReparto.substring(0, 10) === | |
| 478 | + new Date($scope.hojaRuta.fechaReparto).toISOString().substring(0, 10) && | |
| 479 | + cisternaCarga.idUsuarioProceso && | |
| 475 | 480 | cisternaCarga.idUsuarioProceso !== idUsuario) |
| 476 | 481 | { |
| 477 | 482 | focaModalService.alert('El vehรญculo estรก siendo usado por otro' + |
| ... | ... | @@ -486,11 +491,9 @@ angular.module('focaCrearHojaRuta') .controller('hojaRutaCtrl', |
| 486 | 491 | function salir() { |
| 487 | 492 | var confirmacion = false; |
| 488 | 493 | |
| 489 | - angular.forEach($scope.inicial, function(valor, key) { | |
| 490 | - if (!angular.equals($scope[key], $scope.inicial[key])) { | |
| 491 | - confirmacion = true; | |
| 492 | - } | |
| 493 | - }); | |
| 494 | + if (!angular.equals($scope.hojaRuta, $scope.inicial)) { | |
| 495 | + confirmacion = true; | |
| 496 | + } | |
| 494 | 497 | |
| 495 | 498 | if (confirmacion) { |
| 496 | 499 | focaModalService.confirm( |
| ... | ... | @@ -504,5 +507,70 @@ angular.module('focaCrearHojaRuta') .controller('hojaRutaCtrl', |
| 504 | 507 | $location.path('/'); |
| 505 | 508 | } |
| 506 | 509 | } |
| 510 | + | |
| 511 | + function setearHojaRuta(hojaRuta) { | |
| 512 | + $scope.$broadcast('cleanCabecera'); | |
| 513 | + | |
| 514 | + var cabeceras = []; | |
| 515 | + if (hojaRuta.fechaReparto) { | |
| 516 | + cabeceras.push({ | |
| 517 | + label: 'Fecha de entrega:', | |
| 518 | + valor: $filter('date')(hojaRuta.fechaReparto, 'dd/MM/yyyy') | |
| 519 | + }); | |
| 520 | + } | |
| 521 | + if (hojaRuta.transportista.COD) { | |
| 522 | + cabeceras.push({ | |
| 523 | + label: 'Transportista:', | |
| 524 | + valor: $filter('rellenarDigitos')(hojaRuta.transportista.COD, 5) + ' - ' + | |
| 525 | + hojaRuta.transportista.NOM | |
| 526 | + }); | |
| 527 | + } | |
| 528 | + if (hojaRuta.chofer.id) { | |
| 529 | + cabeceras.push({ | |
| 530 | + label: 'Chofer:', | |
| 531 | + valor: $filter('rellenarDigitos')(hojaRuta.chofer.id, 3) + | |
| 532 | + ' - ' + hojaRuta.chofer.nombre | |
| 533 | + }); | |
| 534 | + } | |
| 535 | + if (hojaRuta.vehiculo.id) { | |
| 536 | + cabeceras.push({ | |
| 537 | + label: 'Tractor:', | |
| 538 | + valor: hojaRuta.vehiculo.tractor | |
| 539 | + }); | |
| 540 | + cabeceras.push({ | |
| 541 | + label: 'Semi:', | |
| 542 | + valor: hojaRuta.vehiculo.semi | |
| 543 | + }); | |
| 544 | + cabeceras.push({ | |
| 545 | + label: 'Capacidad:', | |
| 546 | + valor: hojaRuta.vehiculo.capacidad | |
| 547 | + }); | |
| 548 | + } | |
| 549 | + if (hojaRuta.tarifario.costo) { | |
| 550 | + cabeceras.push({ | |
| 551 | + label: 'Tarifario:', | |
| 552 | + valor: hojaRuta.tarifario.costo | |
| 553 | + }); | |
| 554 | + } | |
| 555 | + | |
| 556 | + addArrayCabecera(cabeceras); | |
| 557 | + $scope.hojaRuta = hojaRuta; | |
| 558 | + } | |
| 559 | + | |
| 560 | + function getLSHojaRuta() { | |
| 561 | + var hojaRuta = JSON.parse($localStorage.hojaRuta || null); | |
| 562 | + if (hojaRuta) { | |
| 563 | + setearHojaRuta(hojaRuta); | |
| 564 | + delete $localStorage.hojaRuta; | |
| 565 | + } | |
| 566 | + } | |
| 567 | + function addArrayCabecera(array) { | |
| 568 | + for(var i = 0; i < array.length; i++) { | |
| 569 | + $scope.$broadcast('addCabecera', { | |
| 570 | + label: array[i].label, | |
| 571 | + valor: array[i].valor | |
| 572 | + }); | |
| 573 | + } | |
| 574 | + } | |
| 507 | 575 | } |
| 508 | 576 | ]); |
src/js/service.js
| 1 | 1 | angular.module('focaCrearHojaRuta') |
| 2 | - .service('focaCrearHojaRutaService', ['$http', 'API_ENDPOINT', function($http, API_ENDPOINT) { | |
| 2 | + .service('focaCrearHojaRutaService', ['$http', 'API_ENDPOINT', | |
| 3 | + function($http, API_ENDPOINT) { | |
| 3 | 4 | var route = API_ENDPOINT.URL; |
| 4 | 5 | return { |
| 5 | 6 | crearHojaRuta: function(hojaRuta) { |
src/views/hoja-ruta.html
| ... | ... | @@ -45,9 +45,9 @@ |
| 45 | 45 | </thead> |
| 46 | 46 | <tbody class="tabla-articulo-body"> |
| 47 | 47 | <tr |
| 48 | - ng-repeat="(key, remito) in remitosTabla" | |
| 48 | + ng-repeat="(key, remito) in hojaRuta.remitosTabla" | |
| 49 | 49 | class="d-flex" |
| 50 | - ng-show="show || key == remitosTabla.length - 1" | |
| 50 | + ng-show="show || key == hojaRuta.remitosTabla.length - 1" | |
| 51 | 51 | > |
| 52 | 52 | <td ng-bind="key + 1" class="col-auto"></td> |
| 53 | 53 | <td |
| ... | ... | @@ -70,7 +70,7 @@ |
| 70 | 70 | <tr class="d-flex"> |
| 71 | 71 | <td class="col-auto px-1"> |
| 72 | 72 | <strong>Remitos:</strong> |
| 73 | - <a ng-bind="remitosTabla.length"></a> | |
| 73 | + <a ng-bind="hojaRuta.remitosTabla.length"></a> | |
| 74 | 74 | </td> |
| 75 | 75 | <td class="col"></td> |
| 76 | 76 | <td class="col-auto px-1"> |