diff --git a/.gitignore b/.gitignore index 4e6901b..0aa1f37 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ package-lock\.json /src/etc/develop.js tmp/ +debug.log \ No newline at end of file diff --git a/spec/controllerSpec.js b/spec/controllerSpec.js index 3f4a7ca..1b1d4d8 100644 --- a/spec/controllerSpec.js +++ b/spec/controllerSpec.js @@ -25,7 +25,8 @@ describe('controladores módulo crear cobranza', function() { //act var controlador = $controller('cobranzaController', { $scope: { - $broadcast: function() { } + $broadcast: function() { }, + $watch: function() { } }, $timeout: $timeout, $uibModal: {}, @@ -48,7 +49,8 @@ describe('controladores módulo crear cobranza', function() { focaSeguimientoService: {}, focaBotoneraLateralService: {}, APP: {}, - focaLoginService: {} + focaLoginService: {}, + $localStorage: true }); //assert @@ -59,7 +61,8 @@ describe('controladores módulo crear cobranza', function() { //arrange var scope = { - $broadcast: function() { } + $broadcast: function() { }, + $watch: function() { } }; var focaModalService = { alert: function() { } @@ -88,7 +91,8 @@ describe('controladores módulo crear cobranza', function() { focaSeguimientoService: {}, focaBotoneraLateralService: {}, APP: {}, - focaLoginService: {} + focaLoginService: {}, + $localStorage: true }); //act @@ -103,7 +107,8 @@ describe('controladores módulo crear cobranza', function() { //arrange var scope = { - $broadcast: function() { } + $broadcast: function() { }, + $watch: function() { } }; var focaModalService = { alert: function() { } @@ -132,10 +137,14 @@ describe('controladores módulo crear cobranza', function() { focaSeguimientoService: {}, focaBotoneraLateralService: {}, APP: {}, - focaLoginService: {} + focaLoginService: {}, + $localStorage: true }); scope.cobranza = { - cliente: { } + cliente: { + COD: true + }, + cobrador: {} }; //act @@ -150,7 +159,8 @@ describe('controladores módulo crear cobranza', function() { //arrange var scope = { - $broadcast: function() { } + $broadcast: function() { }, + $watch: function() { } }; var focaModalService = { alert: function() { } @@ -179,11 +189,17 @@ describe('controladores módulo crear cobranza', function() { focaSeguimientoService: {}, focaBotoneraLateralService: {}, APP: {}, - focaLoginService: {} + focaLoginService: {}, + $localStorage: true }); scope.cobranza = { - cliente: { }, - cobrador: { } + cliente: { + COD: true + }, + cobrador: { + NUM: true + }, + facturas: [] }; //act @@ -198,7 +214,8 @@ describe('controladores módulo crear cobranza', function() { //arrange var scope = { - $broadcast: function() { } + $broadcast: function() { }, + $watch: function() { } }; var focaModalService = { alert: function() { } @@ -227,12 +244,20 @@ describe('controladores módulo crear cobranza', function() { focaSeguimientoService: {}, focaBotoneraLateralService: {}, APP: {}, - focaLoginService: {} + focaLoginService: {}, + $localStorage: true }); scope.cobranza = { - cliente: {}, - cobrador: {}, - moneda: { SIMBOLO: '' } + cliente: { + COD: true + }, + cobrador: { + NUM: true + }, + cotizacion: { + moneda: { SIMBOLO: '' }, + }, + facturas: [1] }; scope.facturaTabla = [1]; @@ -250,7 +275,8 @@ describe('controladores módulo crear cobranza', function() { //arrange var scope = { - $broadcast: function() { } + $broadcast: function() { }, + $watch: function() { } }; var focaBotoneraLateralService = { startGuardar: function() { } @@ -276,20 +302,48 @@ describe('controladores módulo crear cobranza', function() { $uibModal: {}, $location: {}, focaCrearCobranzaService: focaCrearCobranzaService, - focaModalService: {}, + focaModalService: { + alert: function() {} + }, $filter: $filter, focaSeguimientoService: {}, focaBotoneraLateralService: focaBotoneraLateralService, APP: {}, - focaLoginService: {} + focaLoginService: {}, + $localStorage: true }); scope.cobranza = { - cliente: {}, - cobrador: {}, - moneda: { SIMBOLO: '' }, - cotizacion: {} + cliente: { + COD: true + }, + cobrador: { + NUM: true + }, + cotizacion: { + moneda: { + ID: true, + SIMBOLO: '' + } + }, + facturas: [1], + cobros: [{ + fecha: new Date(), + fechaPresentacion: new Date(), + fechaEmision: new Date(), + tipo: true, + banco: { + ID: true + }, + localidad: { + ID: true, + NOMBRE: true + }, + provincia: { + ID: true + } + }], + fecha: new Date() }; - scope.facturaTabla = [1]; //act spyOn(focaBotoneraLateralService, 'startGuardar'); @@ -308,7 +362,8 @@ describe('controladores módulo crear cobranza', function() { //arrange var scope = { - $broadcast: function() { } + $broadcast: function() { }, + $watch: function() { } }; $controller('cobranzaController', { @@ -334,7 +389,8 @@ describe('controladores módulo crear cobranza', function() { focaSeguimientoService: {}, focaBotoneraLateralService: {}, APP: {}, - focaLoginService: {} + focaLoginService: {}, + $localStorage: true }); //act @@ -348,7 +404,8 @@ describe('controladores módulo crear cobranza', function() { //arrange var scope = { - $broadcast: function() { } + $broadcast: function() { }, + $watch: function() { } }; $controller('cobranzaController', { @@ -374,7 +431,8 @@ describe('controladores módulo crear cobranza', function() { focaSeguimientoService: {}, focaBotoneraLateralService: {}, APP: {}, - focaLoginService: {} + focaLoginService: {}, + $localStorage: true }); //act @@ -388,7 +446,8 @@ describe('controladores módulo crear cobranza', function() { //arrange var scope = { - $broadcast: function() { } + $broadcast: function() { }, + $watch: function() { } }; var uibModal = { open: function() { } @@ -417,7 +476,8 @@ describe('controladores módulo crear cobranza', function() { focaSeguimientoService: {}, focaBotoneraLateralService: {}, APP: {}, - focaLoginService: {} + focaLoginService: {}, + $localStorage: true }); var respuesta = { facturas: 1, cobros: 2, cliente: { } }; var promesa = { result: Promise.resolve(respuesta) }; @@ -431,8 +491,8 @@ describe('controladores módulo crear cobranza', function() { promesa.result.then(function() { expect(uibModal.open).toHaveBeenCalled(); expect(scope.$broadcast).toHaveBeenCalledWith('cleanCabecera'); - expect(scope.facturaTabla).toEqual(respuesta.facturas); - expect(scope.cobrosTabla).toEqual(respuesta.cobros); + expect(scope.cobranza.facturas).toEqual(respuesta.facturas); + expect(scope.cobranza.cobros).toEqual(respuesta.cobros); done(); }); }); @@ -441,7 +501,8 @@ describe('controladores módulo crear cobranza', function() { //arrange var scope = { - $broadcast: function() { } + $broadcast: function() { }, + $watch: function() { } }; var uibModal = { open: function() { } @@ -470,7 +531,8 @@ describe('controladores módulo crear cobranza', function() { focaSeguimientoService: {}, focaBotoneraLateralService: {}, APP: {}, - focaLoginService: {} + focaLoginService: {}, + $localStorage: true }); scope.cobranza = { cobrador: {} @@ -495,7 +557,8 @@ describe('controladores módulo crear cobranza', function() { //arrange var scope = { - $broadcast: function() { } + $broadcast: function() { }, + $watch: function() { } }; var focaModalService = { alert: function() { } @@ -504,7 +567,15 @@ describe('controladores módulo crear cobranza', function() { $controller('cobranzaController', { $scope: scope, $timeout: $timeout, - $uibModal: {}, + $uibModal: { + open: function() { + return { + result: { + then: function() { } + } + }; + } + }, $location: {}, focaCrearCobranzaService: { getCotizacionByIdMoneda: function() { @@ -524,7 +595,8 @@ describe('controladores módulo crear cobranza', function() { focaSeguimientoService: {}, focaBotoneraLateralService: {}, APP: {}, - focaLoginService: {} + focaLoginService: {}, + $localStorage: true }); //act @@ -539,7 +611,8 @@ describe('controladores módulo crear cobranza', function() { //arrange var scope = { - $broadcast: function() { } + $broadcast: function() { }, + $watch: function() { } }; var uibModal = { open: function() { } @@ -563,15 +636,20 @@ describe('controladores módulo crear cobranza', function() { }; } }, - focaModalService: {}, + focaModalService: { + alert: function() {} + }, $filter: $filter, focaSeguimientoService: {}, focaBotoneraLateralService: {}, APP: {}, - focaLoginService: {} + focaLoginService: {}, + $localStorage: true }); scope.cobranza = { - cliente: { } + cliente: { + COD: true + } }; var respuesta = { result: { then: function() { } } }; @@ -588,7 +666,8 @@ describe('controladores módulo crear cobranza', function() { //arrange var scope = { - $broadcast: function() { } + $broadcast: function() { }, + $watch: function() { } }; var uibModal = { open: function() { } @@ -617,7 +696,8 @@ describe('controladores módulo crear cobranza', function() { focaSeguimientoService: {}, focaBotoneraLateralService: {}, APP: {}, - focaLoginService: {} + focaLoginService: {}, + $localStorage: true }); scope.cobranza = { cliente: { } @@ -637,7 +717,8 @@ describe('controladores módulo crear cobranza', function() { //arrange var scope = { - $broadcast: function() { } + $broadcast: function() { }, + $watch: function() { } }; var uibModal = { open: function() { } @@ -666,7 +747,8 @@ describe('controladores módulo crear cobranza', function() { focaSeguimientoService: {}, focaBotoneraLateralService: {}, APP: {}, - focaLoginService: {} + focaLoginService: {}, + $localStorage: true }); scope.cobranza = { cliente: { } @@ -686,7 +768,8 @@ describe('controladores módulo crear cobranza', function() { //arrange var scope = { - $broadcast: function() { } + $broadcast: function() { }, + $watch: function() { } }; var uibModal = { open: function() { } @@ -715,7 +798,8 @@ describe('controladores módulo crear cobranza', function() { focaSeguimientoService: {}, focaBotoneraLateralService: {}, APP: {}, - focaLoginService: {} + focaLoginService: {}, + $localStorage: true }); scope.cobranza = { cliente: { } @@ -735,7 +819,8 @@ describe('controladores módulo crear cobranza', function() { //arrange var scope = { - $broadcast: function() { } + $broadcast: function() { }, + $watch: function() { } }; var focaModalService = { modal: function() { } @@ -764,7 +849,8 @@ describe('controladores módulo crear cobranza', function() { focaSeguimientoService: {}, focaBotoneraLateralService: {}, APP: {}, - focaLoginService: {} + focaLoginService: {}, + $localStorage: true }); var respuesta = 1; @@ -787,7 +873,8 @@ describe('controladores módulo crear cobranza', function() { //arrange var scope = { - $broadcast: function() { } + $broadcast: function() { }, + $watch: function() { } }; var uibModal = { open: function() { } @@ -816,7 +903,8 @@ describe('controladores módulo crear cobranza', function() { focaSeguimientoService: {}, focaBotoneraLateralService: {}, APP: {}, - focaLoginService: {} + focaLoginService: {}, + $localStorage: true }); var respuesta = 1; @@ -840,7 +928,8 @@ describe('controladores módulo crear cobranza', function() { //arrange var scope = { - $broadcast: function() { } + $broadcast: function() { }, + $watch: function() { } }; var focaModalService = { modal: function() { } @@ -869,7 +958,8 @@ describe('controladores módulo crear cobranza', function() { focaSeguimientoService: {}, focaBotoneraLateralService: {}, APP: {}, - focaLoginService: {} + focaLoginService: {}, + $localStorage: true }); var respuesta = 1; @@ -893,7 +983,8 @@ describe('controladores módulo crear cobranza', function() { //arrange var scope = { - $broadcast: function() { } + $broadcast: function() { }, + $watch: function() { } }; $controller('cobranzaController', { @@ -919,9 +1010,12 @@ describe('controladores módulo crear cobranza', function() { focaSeguimientoService: {}, focaBotoneraLateralService: {}, APP: {}, - focaLoginService: {} + focaLoginService: {}, + $localStorage: true }); - scope.facturaTabla = [{ IPA: 1 }]; + scope.cobranza = { + facturas: [{ IPA: 1 }] + }; //act var esperado = 1; @@ -935,7 +1029,8 @@ describe('controladores módulo crear cobranza', function() { //arrange var scope = { - $broadcast: function() { } + $broadcast: function() { }, + $watch: function() { } }; $controller('cobranzaController', { @@ -961,9 +1056,12 @@ describe('controladores módulo crear cobranza', function() { focaSeguimientoService: {}, focaBotoneraLateralService: {}, APP: {}, - focaLoginService: {} + focaLoginService: {}, + $localStorage: true }); - scope.cobrosTabla = [{ importe: 1 }]; + scope.cobranza = { + cobros: [{ importe: 1 }] + }; //act var esperado = 1; @@ -977,7 +1075,8 @@ describe('controladores módulo crear cobranza', function() { //arrange var scope = { - $broadcast: function() { } + $broadcast: function() { }, + $watch: function() { } }; $controller('cobranzaController', { @@ -1003,7 +1102,8 @@ describe('controladores módulo crear cobranza', function() { focaSeguimientoService: {}, focaBotoneraLateralService: {}, APP: {}, - focaLoginService: {} + focaLoginService: {}, + $localStorage: true }); scope.articuloACargar = { precio: 2, @@ -1024,7 +1124,8 @@ describe('controladores módulo crear cobranza', function() { //arrange var scope = { - $broadcast: function() { } + $broadcast: function() { }, + $watch: function() { } }; $controller('cobranzaController', { @@ -1050,7 +1151,8 @@ describe('controladores módulo crear cobranza', function() { focaSeguimientoService: {}, focaBotoneraLateralService: {}, APP: {}, - focaLoginService: {} + focaLoginService: {}, + $localStorage: true }); //act @@ -1065,7 +1167,8 @@ describe('controladores módulo crear cobranza', function() { //arrange var scope = { - $broadcast: function() { } + $broadcast: function() { }, + $watch: function() { } }; $controller('cobranzaController', { @@ -1091,7 +1194,8 @@ describe('controladores módulo crear cobranza', function() { focaSeguimientoService: {}, focaBotoneraLateralService: {}, APP: {}, - focaLoginService: {} + focaLoginService: {}, + $localStorage: true }); var parametro = { diff --git a/src/js/controller.js b/src/js/controller.js index 37d33ce..723f166 100644 --- a/src/js/controller.js +++ b/src/js/controller.js @@ -57,9 +57,11 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', $scope.cobranza = { fecha: new Date(), - cotizacion: $scope.cotizacionPorDefecto, + cotizacion: {}, facturas: [], - cobros: [] + cobros: [], + cliente: {}, + cobrador: {} }; if (APP === 'cobranza') { @@ -108,19 +110,19 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', }, true); $scope.crearCobranza = function() { - if(!$scope.cobranza.cliente) { + if (!$scope.cobranza.cliente.COD) { focaModalService.alert('Ingrese Cliente'); return; } - if(!$scope.cobranza.cobrador) { + if (!$scope.cobranza.cobrador.NUM) { focaModalService.alert('Ingrese Cobrador'); return; } - if($scope.cobranza.facturas.length < 1) { + if ($scope.cobranza.facturas.length < 1) { focaModalService.alert('Ingrese al menos una factura'); return; } - if($scope.getTotalCobrado() + $scope.getTotalDeuda() !== 0) { + if ($scope.getTotalCobrado() + $scope.getTotalDeuda() !== 0) { focaModalService.alert('La diferencia debe ser ' + $scope.cobranza.cotizacion.moneda.SIMBOLO + '0,00'); return; @@ -391,7 +393,7 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', }; $scope.seleccionarFactura = function() { - if(!$scope.cobranza.cliente) { + if(!$scope.cobranza.cliente.COD) { focaModalService.alert('Seleccione primero un cliente'); return; } @@ -573,11 +575,11 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', function(cotizacion) { $scope.cobranza.cotizacion.moneda = moneda; $scope.cobranza.cotizacion = cotizacion; - if(moneda.DETALLE === 'PESOS ARGENTINOS') { + 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 @@ -708,14 +710,14 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', $scope.editando = true; $scope.$broadcast('cleanCabecera'); - if(cobranza.cliente) { + if (cobranza.cliente) { $scope.$broadcast('addCabecera', { label: 'Cliente:', valor: $filter('rellenarDigitos')(cobranza.cliente.COD, 5) + ' - ' + cobranza.cliente.NOM }); } - if(cobranza.cobrador.NUM) { + if (cobranza.cobrador && cobranza.cobrador.NUM) { $scope.$broadcast('addCabecera', { label: 'Cobrador:', valor: (cobranza.cobrador.NUM) ?