diff --git a/src/js/controller.js b/src/js/controller.js
index 5aa783c..4c7a767 100644
--- a/src/js/controller.js
+++ b/src/js/controller.js
@@ -124,6 +124,7 @@ angular.module('focaAbmVehiculo')
var codigo = ('00000' + res.data[0].COD).slice(-5);
$scope.vehiculo.idTransportista = res.data[0].COD;
$scope.vehiculo.transportista = res.data;
+ $scope.vehiculo.capacidad = 0;
$scope.$broadcast('addCabecera', {
label: 'Transportista:',
valor: codigo + ' - ' + res.data[0].ALI
@@ -217,19 +218,22 @@ angular.module('focaAbmVehiculo')
$scope.crear = true;
};
- $scope.seleccionarUnidadMedida = function (cisterna) {
- var modalInstance = $uibModal.open(
- {
- ariaLabelledBy: 'Busqueda de Unidades de medida',
- templateUrl: 'modal-unidad-medida.html',
- controller: 'focaModalUnidadMedidaCtrl',
- size: 'lg'
- }
- );
- modalInstance.result.then(function (unidaMedida) {
- cisterna.idUnidadMedida = unidaMedida.ID;
- cisterna.unidadMedida = unidaMedida;
- });
+ $scope.seleccionarUnidadMedida = function (key,cisterna) {
+
+ if (key === 13) {
+ var modalInstance = $uibModal.open(
+ {
+ ariaLabelledBy: 'Busqueda de Unidades de medida',
+ templateUrl: 'modal-unidad-medida.html',
+ controller: 'focaModalUnidadMedidaCtrl',
+ size: 'lg'
+ }
+ );
+ modalInstance.result.then(function (unidaMedida) {
+ cisterna.idUnidadMedida = unidaMedida.ID;
+ cisterna.unidadMedida = unidaMedida;
+ });
+ }
};
$scope.guardar = function (key) {
@@ -254,15 +258,6 @@ angular.module('focaAbmVehiculo')
} else if (!$scope.vehiculo.semi) {
focaModalService.alert('Ingrese dominio semi');
return;
- } else if (!$scope.vehiculo.capacidad) {
- focaModalService.alert('Ingrese capacidad total');
- return;
- }
- //Valida si existe numero de unidad
- if (!validaTotalCargas() && !$scope.nuevo) {
- focaModalService.alert('La suma de las capacidades de las cisternas' +
- ' debe ser igual a la capacidad total del vehículo');
- return;
}
if ($scope.nuevo) {
@@ -280,6 +275,9 @@ angular.module('focaAbmVehiculo')
focaModalService.alert('Código de unidad existente');
});
} else {
+ delete $scope.vehiculo.cisternas;
+ delete $scope.vehiculo.transportista;
+ focaAbmVehiculoService.guardarVehiculo($scope.vehiculo);
guardarCisternas($scope.cisternas).then(function () {
angular.element('#guardar').addClass('guardado');
$timeout(function () {$location.path('/vehiculo');},500);
@@ -325,6 +323,7 @@ angular.module('focaAbmVehiculo')
.then(function (data) {
if (data) {
cisterna.desactivado = true;
+ validaTotalCargas();
}
});
return;
@@ -355,9 +354,11 @@ angular.module('focaAbmVehiculo')
$scope.cisternas.forEach(function (cisterna) {
if (!cisterna.desactivado) {
total += parseInt(cisterna.capacidad);
+ } else {
+ $scope.vehiculo.capacidad -= parseInt(cisterna.capacidad);
}
});
- return $scope.vehiculo.capacidad >= total;
+ return $scope.vehiculo.capacidad = total;
}
function guardarCisternas() {
@@ -391,7 +392,8 @@ angular.module('focaAbmVehiculo')
} else if (cisterna.id === undefined) {
cisterna.id = 0;
}
-
+
+ validaTotalCargas();
validaCodigo(cisterna);
};
diff --git a/src/views/foca-abm-vehiculos-item.html b/src/views/foca-abm-vehiculos-item.html
index 05d0e52..4c13113 100644
--- a/src/views/foca-abm-vehiculos-item.html
+++ b/src/views/foca-abm-vehiculos-item.html
@@ -67,7 +67,7 @@
ng-required="true"
foca-focus="focused == 4"
ng-focus="focused = 4"
- ng-disabled="!nuevo"
+ ng-disabled="nuevo || !nuevo"
/>
@@ -185,6 +185,7 @@
@@ -193,7 +194,7 @@
ladda="searchLoading"
class="btn btn-outline-secondary form-control"
type="button"
- ng-click="seleccionarUnidadMedida(cisterna)"
+ ng-click="seleccionarUnidadMedida(13,cisterna)"
foca-focus="focused == 3"
>