From 281638edcc2e6e24a5ef43e12674c9f8c0487c36 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=A1s?= Date: Wed, 20 Feb 2019 12:02:19 -0300 Subject: [PATCH] fix inicializacion de moneda --- src/js/controller.js | 49 +++++++++++++++++++++++++++++-------------------- 1 file changed, 29 insertions(+), 20 deletions(-) diff --git a/src/js/controller.js b/src/js/controller.js index 9598da5..3819905 100644 --- a/src/js/controller.js +++ b/src/js/controller.js @@ -34,18 +34,6 @@ angular.module('focaCrearNotaPedido') .controller('notaPedidoCtrl', minDate: new Date(2010, 0, 1) }; - //Trabajo con la cotización más reciente, por eso uso siempre la primera '[0]' - var monedaPorDefecto; - crearNotaPedidoService.getCotizacionByIdMoneda(1).then(function(res) { - monedaPorDefecto = res.data[0]; - - $scope.notaPedido.moneda = monedaPorDefecto; - $scope.inicial.notaPedido.moneda = $scope.notaPedido.moneda; - - $scope.notaPedido.cotizacion = monedaPorDefecto.cotizaciones[0]; - $scope.inicial.notaPedido.cotizacion = $scope.notaPedido.cotizacion; - }); - //SETEO BOTONERA LATERAL $timeout(function() { focaBotoneraLateralService.showSalir(false); @@ -61,8 +49,14 @@ angular.module('focaCrearNotaPedido') .controller('notaPedidoCtrl', } else { $scope.botonera = crearNotaPedidoService.getBotonera(); } - - init(); + + //Trabajo con la cotización más reciente, por eso uso siempre la primera '[0]' + crearNotaPedidoService.getCotizacionByIdMoneda(1).then(function(res) { + $scope.monedaDefecto = res.data[0]; + $scope.cotizacionDefecto = $scope.monedaDefecto.cotizaciones[0]; + + init(); + }); } function init() { @@ -73,7 +67,9 @@ angular.module('focaCrearNotaPedido') .controller('notaPedidoCtrl', cliente: {}, proveedor: {}, domicilio: {dom: ''}, - vendedor: {} + vendedor: {}, + moneda: $scope.monedaDefecto, + cotizacion: $scope.cotizacionDefecto }; $scope.articulosTabla = []; @@ -600,10 +596,14 @@ angular.module('focaCrearNotaPedido') .controller('notaPedidoCtrl', $scope.getTotal = function() { var total = 0; - var arrayTempArticulos = $scope.articulosTabla; - for (var i = 0; i < arrayTempArticulos.length; i++) { - total += arrayTempArticulos[i].precio * arrayTempArticulos[i].cantidad; + + if ($scope.articulosTabla) { + var arrayTempArticulos = $scope.articulosTabla; + for (var i = 0; i < arrayTempArticulos.length; i++) { + total += arrayTempArticulos[i].precio * arrayTempArticulos[i].cantidad; + } } + return parseFloat(total.toFixed(2)); }; @@ -757,26 +757,35 @@ angular.module('focaCrearNotaPedido') .controller('notaPedidoCtrl', templateUrl: 'modal-cotizacion.html', controller: 'focaModalCotizacionController', size: 'lg', - resolve: {idMoneda: function() {return moneda.ID;}} + resolve: { + idMoneda: function() { + return moneda.ID; + } + } } ); modalInstance.result.then( function(cotizacion) { var articulosTablaTemp = $scope.articulosTabla; + for(var i = 0; i < articulosTablaTemp.length; i++) { articulosTablaTemp[i].precio = articulosTablaTemp[i].precio * $scope.notaPedido.cotizacion.VENDEDOR; articulosTablaTemp[i].precio = articulosTablaTemp[i].precio / cotizacion.VENDEDOR; } + $scope.articulosTabla = articulosTablaTemp; $scope.notaPedido.moneda = moneda; + $scope.monedaDefecto = moneda; + $scope.cotizacionDefecto = cotizacion; $scope.notaPedido.cotizacion = cotizacion; + if(moneda.DETALLE === 'PESOS ARGENTINOS') { $scope.$broadcast('removeCabecera', 'Moneda:'); $scope.$broadcast('removeCabecera', 'Fecha cotizacion:'); $scope.$broadcast('removeCabecera', 'Cotizacion:'); - }else { + } else { $scope.$broadcast('addCabecera', { label: 'Moneda:', valor: moneda.DETALLE -- 1.9.1