Commit d8c0a33079a9b88e04b78ac1f67d4db50eb379f6
1 parent
d0d33876d9
Exists in
master
fix cisterna sin articulo, numero remito
Showing
2 changed files
with
51 additions
and
10 deletions
Show diff stats
src/js/controller.js
... | ... | @@ -10,9 +10,10 @@ angular.module('focaModalDescarga') |
10 | 10 | 'remito', |
11 | 11 | 'focaModalDetalleHojaRutaService', |
12 | 12 | 'focaSeguimientoService', |
13 | + 'crearRemitoService', | |
13 | 14 | function ($scope, focaModalDescargasService, $filter, |
14 | 15 | focaModalService, $timeout, $uibModalInstance, $uibModal, remito, |
15 | - focaModalDetalleHojaRutaService, focaSeguimientoService) { | |
16 | + focaModalDetalleHojaRutaService, focaSeguimientoService, crearRemitoService) { | |
16 | 17 | |
17 | 18 | //#region variables |
18 | 19 | console.log(remito); |
... | ... | @@ -20,10 +21,26 @@ angular.module('focaModalDescarga') |
20 | 21 | $scope.remito = remito; |
21 | 22 | $scope.nroRecibo = 0; |
22 | 23 | $scope.cisternas = remito.cisternas; |
23 | - $scope.nroRemito = "00" + remito.sucursal + "-000000000" + remito.numeroRemito; | |
24 | + $scope.nroRemito; | |
24 | 25 | $scope.articulos = []; |
25 | 26 | //#endregion |
26 | 27 | |
28 | + function init () { | |
29 | + crearRemitoService.getNumeroRemito().then( | |
30 | + function (res) { | |
31 | + | |
32 | + $scope.nroRemito = rellenar(res.data.sucursal, 4) + '-' + | |
33 | + rellenar(res.data.numeroRemito, 8); | |
34 | + }, | |
35 | + function (err) { | |
36 | + focaModalService.alert('La terminal no esta configurada correctamente'); | |
37 | + console.info(err); | |
38 | + } | |
39 | + ); | |
40 | + }; | |
41 | + | |
42 | + init(); | |
43 | + | |
27 | 44 | $scope.crearRemito = function () { |
28 | 45 | if (!$scope.remito.cliente) { |
29 | 46 | focaModalService.alert("No has seleccionado cliente"); |
... | ... | @@ -92,7 +109,7 @@ angular.module('focaModalDescarga') |
92 | 109 | remitoId = res.data.id |
93 | 110 | descargar(remitoId); |
94 | 111 | focaModalDescargasService. |
95 | - addArticulos($scope.articulos, remitoId, 1); | |
112 | + addArticulos($scope.remito.articulosRemito, $scope.articulos, remitoId, 1); | |
96 | 113 | focaModalService.alert("Descarga realizada") |
97 | 114 | .then(function () { |
98 | 115 | $uibModalInstance.dismiss(); |
... | ... | @@ -104,15 +121,15 @@ angular.module('focaModalDescarga') |
104 | 121 | $scope.getTotal = function () { |
105 | 122 | var total = 0; |
106 | 123 | $scope.cisternas.forEach(function (cisterna) { |
107 | - $scope.articulos.push(cisterna.cisternaCarga.articulo); | |
124 | + | |
108 | 125 | total += cisterna.cisternaCarga.articulo.PreVen * cisterna.cisternaCarga.descargar; |
126 | + cisterna.cisternaCarga.articulo.cantidad = cisterna.cisternaCarga.descargar; | |
127 | + $scope.articulos.push(cisterna.cisternaCarga.articulo); | |
109 | 128 | }); |
110 | - // for (var i = 0; i < articulos.length; i++) { | |
111 | - // total += articulos[i].PreVen * articulos[i].cantidad; | |
112 | - // } | |
113 | 129 | return parseFloat(total.toFixed(2)); |
114 | 130 | }; |
115 | 131 | function descargar(idRemito) { |
132 | + | |
116 | 133 | for (var i = 0; i < $scope.cisternas.length; i++) { |
117 | 134 | var descarga = $scope.cisternas[i].cisternaCarga.descargar; |
118 | 135 | var hojaRutaMovimientos = []; |
... | ... | @@ -141,6 +158,9 @@ angular.module('focaModalDescarga') |
141 | 158 | reciboDescarga: $scope.nroRecibo, |
142 | 159 | idRemito: idRemito |
143 | 160 | }; |
161 | + | |
162 | + cisternaCarga = angular.copy($scope.cisternas[i].cisternaCarga); | |
163 | + | |
144 | 164 | delete cisternaCarga.articulo; |
145 | 165 | delete cisternaCarga.descargar; |
146 | 166 | cisternaCargas.push(cisternaCarga); |
... | ... | @@ -162,7 +182,7 @@ angular.module('focaModalDescarga') |
162 | 182 | .guardarPosicion( |
163 | 183 | 'Entrega de producto', |
164 | 184 | res.data[0].id, |
165 | - $scope.remito.observaciones); | |
185 | + ''); | |
166 | 186 | $scope.aDescargar = []; |
167 | 187 | }; |
168 | 188 | }; |
... | ... | @@ -207,5 +227,14 @@ angular.module('focaModalDescarga') |
207 | 227 | $scope.cancelar = function () { |
208 | 228 | $uibModalInstance.dismiss(); |
209 | 229 | } |
230 | + | |
231 | + | |
232 | + function rellenar(relleno, longitud) { | |
233 | + relleno = '' + relleno; | |
234 | + while (relleno.length < longitud) { | |
235 | + relleno = '0' + relleno; | |
236 | + } | |
237 | + return relleno; | |
238 | + } | |
210 | 239 | } |
211 | 240 | ]); |
src/js/service.js
... | ... | @@ -6,13 +6,25 @@ angular.module('focaModalDescarga') |
6 | 6 | crearRemito: function (remito) { |
7 | 7 | return $http.post(route + '/remito', remito); |
8 | 8 | }, |
9 | - addArticulos: function (articulosRemito, idRemito, cotizacion) { | |
9 | + addArticulos: function (articulosRemito, articulosBase, idRemito, cotizacion) { | |
10 | + | |
10 | 11 | for (var i = 0; i < articulosRemito.length; i++) { |
12 | + | |
13 | + var articuloReferencia = articulosBase.filter(function(articulo) { | |
14 | + return articulosRemito[i].idArticulo == articulo.id; | |
15 | + })[0]; | |
16 | + | |
17 | + delete articulosRemito[i].id | |
11 | 18 | delete articulosRemito[i].editCantidad; |
12 | 19 | delete articulosRemito[i].editPrecio; |
20 | + | |
13 | 21 | articulosRemito[i].idRemito = articulosRemito[i].idRemito !== -1 ? |
14 | 22 | idRemito : articulosRemito[i].idRemito; |
15 | - articulosRemito[i].precio = articulosRemito[i].precio * cotizacion; | |
23 | + | |
24 | + articulosRemito[i].precio = articuloReferencia.PreVen * cotizacion; | |
25 | + articulosRemito[i].cantidad = articuloReferencia.cantidad; | |
26 | + articulosRemito[i].cantidadDescargada = articuloReferencia.cantidad; | |
27 | + | |
16 | 28 | delete articulosRemito[i].idNotaPedido; |
17 | 29 | crearRemitoService.crearArticulosParaRemito(articulosRemito[i]); |
18 | 30 | } |