From d8c0a33079a9b88e04b78ac1f67d4db50eb379f6 Mon Sep 17 00:00:00 2001 From: Eric Fernandez Date: Wed, 12 Jun 2019 18:09:07 -0300 Subject: [PATCH] fix cisterna sin articulo, numero remito --- src/js/controller.js | 45 +++++++++++++++++++++++++++++++++++++-------- src/js/service.js | 16 ++++++++++++++-- 2 files changed, 51 insertions(+), 10 deletions(-) diff --git a/src/js/controller.js b/src/js/controller.js index 7b58a16..e8b3302 100644 --- a/src/js/controller.js +++ b/src/js/controller.js @@ -10,9 +10,10 @@ angular.module('focaModalDescarga') 'remito', 'focaModalDetalleHojaRutaService', 'focaSeguimientoService', + 'crearRemitoService', function ($scope, focaModalDescargasService, $filter, focaModalService, $timeout, $uibModalInstance, $uibModal, remito, - focaModalDetalleHojaRutaService, focaSeguimientoService) { + focaModalDetalleHojaRutaService, focaSeguimientoService, crearRemitoService) { //#region variables console.log(remito); @@ -20,10 +21,26 @@ angular.module('focaModalDescarga') $scope.remito = remito; $scope.nroRecibo = 0; $scope.cisternas = remito.cisternas; - $scope.nroRemito = "00" + remito.sucursal + "-000000000" + remito.numeroRemito; + $scope.nroRemito; $scope.articulos = []; //#endregion + function init () { + crearRemitoService.getNumeroRemito().then( + function (res) { + + $scope.nroRemito = rellenar(res.data.sucursal, 4) + '-' + + rellenar(res.data.numeroRemito, 8); + }, + function (err) { + focaModalService.alert('La terminal no esta configurada correctamente'); + console.info(err); + } + ); + }; + + init(); + $scope.crearRemito = function () { if (!$scope.remito.cliente) { focaModalService.alert("No has seleccionado cliente"); @@ -92,7 +109,7 @@ angular.module('focaModalDescarga') remitoId = res.data.id descargar(remitoId); focaModalDescargasService. - addArticulos($scope.articulos, remitoId, 1); + addArticulos($scope.remito.articulosRemito, $scope.articulos, remitoId, 1); focaModalService.alert("Descarga realizada") .then(function () { $uibModalInstance.dismiss(); @@ -104,15 +121,15 @@ angular.module('focaModalDescarga') $scope.getTotal = function () { var total = 0; $scope.cisternas.forEach(function (cisterna) { - $scope.articulos.push(cisterna.cisternaCarga.articulo); + total += cisterna.cisternaCarga.articulo.PreVen * cisterna.cisternaCarga.descargar; + cisterna.cisternaCarga.articulo.cantidad = cisterna.cisternaCarga.descargar; + $scope.articulos.push(cisterna.cisternaCarga.articulo); }); - // for (var i = 0; i < articulos.length; i++) { - // total += articulos[i].PreVen * articulos[i].cantidad; - // } return parseFloat(total.toFixed(2)); }; function descargar(idRemito) { + for (var i = 0; i < $scope.cisternas.length; i++) { var descarga = $scope.cisternas[i].cisternaCarga.descargar; var hojaRutaMovimientos = []; @@ -141,6 +158,9 @@ angular.module('focaModalDescarga') reciboDescarga: $scope.nroRecibo, idRemito: idRemito }; + + cisternaCarga = angular.copy($scope.cisternas[i].cisternaCarga); + delete cisternaCarga.articulo; delete cisternaCarga.descargar; cisternaCargas.push(cisternaCarga); @@ -162,7 +182,7 @@ angular.module('focaModalDescarga') .guardarPosicion( 'Entrega de producto', res.data[0].id, - $scope.remito.observaciones); + ''); $scope.aDescargar = []; }; }; @@ -207,5 +227,14 @@ angular.module('focaModalDescarga') $scope.cancelar = function () { $uibModalInstance.dismiss(); } + + + function rellenar(relleno, longitud) { + relleno = '' + relleno; + while (relleno.length < longitud) { + relleno = '0' + relleno; + } + return relleno; + } } ]); diff --git a/src/js/service.js b/src/js/service.js index 3e4c44a..7d70c6a 100644 --- a/src/js/service.js +++ b/src/js/service.js @@ -6,13 +6,25 @@ angular.module('focaModalDescarga') crearRemito: function (remito) { return $http.post(route + '/remito', remito); }, - addArticulos: function (articulosRemito, idRemito, cotizacion) { + addArticulos: function (articulosRemito, articulosBase, idRemito, cotizacion) { + for (var i = 0; i < articulosRemito.length; i++) { + + var articuloReferencia = articulosBase.filter(function(articulo) { + return articulosRemito[i].idArticulo == articulo.id; + })[0]; + + delete articulosRemito[i].id delete articulosRemito[i].editCantidad; delete articulosRemito[i].editPrecio; + articulosRemito[i].idRemito = articulosRemito[i].idRemito !== -1 ? idRemito : articulosRemito[i].idRemito; - articulosRemito[i].precio = articulosRemito[i].precio * cotizacion; + + articulosRemito[i].precio = articuloReferencia.PreVen * cotizacion; + articulosRemito[i].cantidad = articuloReferencia.cantidad; + articulosRemito[i].cantidadDescargada = articuloReferencia.cantidad; + delete articulosRemito[i].idNotaPedido; crearRemitoService.crearArticulosParaRemito(articulosRemito[i]); } -- 1.9.1