Commit 5b8426e39b368d1c3b56172bb06efe5f0cac10ee

Authored by Jose Pinto
1 parent 7a8d5d0121
Exists in master

si el chofer tiene hoja ruta asignada, avisa modal confirm

src/js/controller.js
1 1 angular.module('focaActivarHojaRuta')
2 2 .controller('focaActivarHojaRutaController', [
3   - '$scope', 'focaActivarHojaRutaService', '$location', 'focaModalService',
4   - '$uibModal', 'focaBotoneraLateralService', '$timeout',
5   - function($scope, focaActivarHojaRutaService, $location, focaModalService,
6   - $uibModal, focaBotoneraLateralService, $timeout) {
  3 + '$scope', 'focaActivarHojaRutaService', 'focaModalService', 'focaBotoneraLateralService',
  4 + '$filter',
  5 + function($scope, focaActivarHojaRutaService, focaModalService, focaBotoneraLateralService,
  6 + $filter) {
7 7 config();
8 8  
9 9 //METODOS
... ... @@ -65,19 +65,50 @@ angular.module('focaActivarHojaRuta')
65 65 });
66 66  
67 67 $scope.hojasRuta = hojasRutas.data;
68   - })
69   - }, function() {
  68 + });
  69 + }, function() {}
  70 + );
  71 + };
  72 +
  73 + $scope.activarHojaRuta = function(hoja_ruta) {
  74 + validarChoferDisponible().then(function(hojaRutaAsignada) {
70 75  
  76 + if (hojaRutaAsignada) {
  77 + var texto = 'El chofer tiene asignada la Hoja de Ruta Nº ' +
  78 + $filter('comprobante')([hojaRutaAsignada.sucursal,
  79 + hojaRutaAsignada.numeroHojaRuta]) +
  80 + ', ¿desea reemplazarla por esta?';
  81 +
  82 + focaModalService
  83 + .confirm(texto)
  84 + .then(function(res) {
  85 + if (res) activar();
  86 + });
  87 + } else {
  88 + activar();
71 89 }
72   - );
  90 +
  91 + function activar() {
  92 + focaActivarHojaRutaService
  93 + .activarHojaRuta(hoja_ruta.id, $scope.chofer)
  94 + .then(function(hojaRuta) {
  95 + init();
  96 + focaModalService.alert('Hoja de ruta activada');
  97 + });
  98 + }
  99 +
  100 + });
73 101 };
74 102  
75   - $scope.activarHojaRuta = function(hoja_ruta_id) {
76   - focaActivarHojaRutaService.activarHojaRuta(hoja_ruta_id, $scope.chofer)
77   - .then(function(hojaRuta) {
78   - init();
79   - focaModalService.alert('Hoja de ruta activada');
80   - })
  103 + function validarChoferDisponible() {
  104 + return new Promise(function(resolve, reject) {
  105 + focaActivarHojaRutaService
  106 + .getHojaRutaByIdChofer($scope.chofer)
  107 + .then(function(res) {
  108 + resolve(res.data);
  109 + })
  110 + .catch(reject);
  111 + });
81 112 }
82 113  
83 114  
... ... @@ -6,6 +6,9 @@ angular.module('focaActivarHojaRuta')
6 6 },
7 7 activarHojaRuta: function(hoja_ruta, chofer) {
8 8 return $http.get(API_ENDPOINT.URL + '/hoja-ruta/activar/' + hoja_ruta + '/' + chofer);
  9 + },
  10 + getHojaRutaByIdChofer: function(chofer) {
  11 + return $http.get(API_ENDPOINT.URL + '/hoja-ruta/chofer/' + chofer);
9 12 }
10 13 };
11 14 }]);
src/views/activar-hoja-ruta.html
... ... @@ -34,13 +34,13 @@
34 34 <tbody>
35 35 <tr ng-repeat="hojaRuta in hojasRuta | filter:filtros">
36 36 <td ng-bind="[hojaRuta.sucursal, hojaRuta.numeroHojaRuta] | comprobante"></td>
37   - <td ng-bind="hojaRuta.fechaReparto | date:'yyyy-MM-dd'"></td>
  37 + <td ng-bind="hojaRuta.fechaReparto | date:'yyyy-MM-dd':'-0300'"></td>
38 38 <td ng-bind="hojaRuta.remitos.length"></td>
39 39 <td class="text-center">
40 40 <button
41 41 class="btn btn-outline-dark boton-accion"
42 42 title="Activar"
43   - ng-click="activarHojaRuta(hojaRuta.id)"
  43 + ng-click="activarHojaRuta(hojaRuta)"
44 44 >
45 45 <i class="fa fa-check"></i>
46 46 </button>