diff --git a/src/js/controller.js b/src/js/controller.js
index 904de84..f7b0df7 100644
--- a/src/js/controller.js
+++ b/src/js/controller.js
@@ -29,9 +29,11 @@ angular.module('focaModalDetalleCisternas')
var promesaVehiculo = focaModalDetalleCisternasService.obtenerVehiculoById(idVehiculo);
var promesaCisternas = focaModalDetalleCisternasService
.obtenerCisternasPorFecha(idVehiculo);
+
if(idRemito !== -1) {
promesaRemito = focaModalDetalleCisternasService.obtenerRemitoById(idRemito);
}
+
Promise.all([promesaVehiculo, promesaCisternas, promesaRemito]).then(function(res) {
if (idRemito !== -1 && !validarCargas(res[1].data, res[2].data)) {
var error = 'Los artÃculos del remito exceden la cantidad disponible del ' +
@@ -76,7 +78,9 @@ angular.module('focaModalDetalleCisternas')
}
$scope.$digest();
});
+
$scope.aceptar = function() {
+
$scope.cargando = true;
for(var i = 0; i < $scope.cisternasCarga.length; i++) {
$scope.cisternasCarga[i].idUsuarioProceso =
@@ -84,41 +88,51 @@ angular.module('focaModalDetalleCisternas')
delete $scope.cisternasCarga[i].articulo;
delete $scope.cisternasCarga[i].remitos;
}
+
var cisterna = {
cisternaMovimientos: cisternaMovimientos,
cisternaCargas: $scope.cisternasCarga,
idVehiculo: $scope.vehiculo.id,
fechaReparto: focaModalDetalleCisternasService.fecha
};
+
if(!focaModalDetalleCisternasService.idUsuario) {
focaModalService.alert('No logeado como vendedor');
$scope.cargando = false;
return;
}
+
focaModalDetalleCisternasService.guardarCisternas(cisterna, $scope.remito.id)
.then(function() {
+
$scope.cargando = false;
$uibModalInstance.close();
+
}).catch(function(error) {
+
$scope.cargando = false;
$uibModalInstance.close();
+
if (error.status === 403) {
focaModalService.alert('ERROR: ' + error.data);
return;
}
+
focaModalService.alert('Hubo un error al cargar las cisternas');
});
};
+
$scope.cancelar = function() {
$uibModalInstance.dismiss();
};
+
$scope.cargarACisternas = function() {
for(var i = 0; i < $scope.cisternas.length; i++) {
var cisterna = $scope.cisternas[i];
var aCargar = parseFloat($scope.aCargar[i]);
var fechaReparto = focaModalDetalleCisternasService.fecha;
//validaciones
- if(!aCargar) {
+ if(!aCargar || cisterna.disabled) {
continue;
}
//cargar
@@ -178,20 +192,25 @@ angular.module('focaModalDetalleCisternas')
$scope.articuloSeleccionado = articulo;
$scope.cisternaDisponible();
$scope.autoCompletar();
- $scope.actualizarArticulo();
+ // $scope.actualizarArticulo();
};
$scope.actualizarArticulo = function() {
$scope.articuloSeleccionado.cantidadCargada = 0;
for(var i = 0; i < $scope.aCargar.length; i++) {
- $scope.articuloSeleccionado.cantidadCargada +=
+ if (!$scope.cisternas[i].disabled) {
+
+ $scope.articuloSeleccionado.cantidadCargada +=
parseFloat($scope.aCargar[i]) || 0;
+ }
}
};
$scope.autoCompletar = function() {
+
var arrayMismoProducto = [];
var arrayVacioProducto = [];
+
for(var i = 0; i < $scope.cisternas.length; i++) {
var cisterna = $scope.cisternas[i];
cisterna.posicion = i;
@@ -214,12 +233,12 @@ angular.module('focaModalDetalleCisternas')
for (var j = 0; j < cisternas.length; j++) {
var aCargar = $scope.articuloSeleccionado.cantidad -
($scope.articuloSeleccionado.cantidadCargada || 0);
-
- if(aCargar > cisternas[j].disponible) {
+
+ if (aCargar > cisternas[j].disponible) {
aCargar = cisternas[j].disponible;
}
-
- if(aCargar > 0) {
+
+ if (aCargar > 0) {
$scope.aCargar[cisternas[j].posicion] = aCargar;
$scope.actualizarArticulo();
}
@@ -232,7 +251,7 @@ angular.module('focaModalDetalleCisternas')
// $scope.cisternas[i].disabled = true;
// continue;
// }
- if($scope.cisternas[i].cisternaCarga &&
+ if ($scope.cisternas[i].cisternaCarga &&
$scope.cisternas[i].cisternaCarga.idProducto &&
$scope.articuloSeleccionado.idArticulo !==
$scope.cisternas[i].cisternaCarga.idProducto)
diff --git a/src/views/foca-detalle-vehiculo.html b/src/views/foca-detalle-vehiculo.html
index d35b022..31023c9 100644
--- a/src/views/foca-detalle-vehiculo.html
+++ b/src/views/foca-detalle-vehiculo.html
@@ -101,7 +101,7 @@
class="btn btn-outline-secondary"
ng-disabled="!cisterna.cisternaCarga.remitos.length"
ng-click="verRemitos(cisterna.cisternaCarga.remitos)">
-
+