Commit 34519c4b29deee90506da6597e84ef0d939730a7

Authored by Jose Pinto
1 parent 740b50ea56
Exists in master

agrego foca-cabecera-facturador

Showing 2 changed files with 80 additions and 123 deletions   Show diff stats
src/js/controller.js
... ... @@ -144,13 +144,23 @@ angular.module('focaCrearNotaPedido') .controller('notaPedidoCtrl',
144 144  
145 145 focaModalService.alert('Nota pedido creada');
146 146 $scope.saveLoading = false;
147   - $scope.cabecera = [];
148   - addCabecera('Moneda:', $scope.notaPedido.moneda.DETALLE);
149   - addCabecera(
150   - 'Fecha cotizacion:',
151   - $filter('date')($scope.notaPedido.cotizacion.FECHA, 'dd/MM/yyyy')
152   - );
153   - addCabecera('Cotizacion:', $scope.notaPedido.cotizacion.VENDEDOR);
  147 + $scope.$broadcast('cleanCabecera');
  148 + $scope.$broadcast('addCabecera', {
  149 + label: 'Moneda:',
  150 + valor: $scope.notaPedido.moneda.DETALLE
  151 + });
  152 + $scope.$broadcast('addCabecera', {
  153 + label: 'Fecha cotizacion:',
  154 + valor: $filter('date')($scope.notaPedido.cotizacion.FECHA, 'dd/MM/yyyy')
  155 + });
  156 + $scope.$broadcast('addCabecera', {
  157 + label: 'Moneda:',
  158 + valor: $scope.notaPedido.moneda.DETALLE
  159 + });
  160 + $scope.$broadcast('addCabecera', {
  161 + label: 'Cotizacion:',
  162 + valor: $scope.notaPedido.cotizacion.VENDEDOR
  163 + });
154 164 crearNotaPedidoService.getNumeroNotaPedido().then(
155 165 function(res) {
156 166 $scope.puntoVenta = rellenar(res.data.sucursal, 4);
... ... @@ -195,8 +205,8 @@ angular.module('focaCrearNotaPedido') .controller('notaPedidoCtrl',
195 205 $scope.now = new Date(notaPedido.fechaCarga);
196 206 //añado cabeceras
197 207 $scope.notaPedido.id = notaPedido.id;
198   - removeCabecera('Bomba:');
199   - removeCabecera('Kilometros:');
  208 + $scope.$broadcast('removeCabecera', 'Bomba:');
  209 + $scope.$broadcast('removeCabecera', 'Kilometros:');
200 210 var cabeceras = [
201 211 {
202 212 label: 'Moneda:',
... ... @@ -349,7 +359,10 @@ angular.module('focaCrearNotaPedido') .controller('notaPedidoCtrl',
349 359 );
350 360 modalInstance.result.then(
351 361 function(vendedor) {
352   - addCabecera('Vendedor:', vendedor.NomVen);
  362 + $scope.$broadcast('addCabecera',{
  363 + label: 'Vendedor:',
  364 + valor: vendedor.NomVen
  365 + });
353 366 $scope.notaPedido.vendedor = vendedor;
354 367 }, function() {
355 368  
... ... @@ -376,7 +389,10 @@ angular.module('focaCrearNotaPedido') .controller('notaPedidoCtrl',
376 389 modalInstance.result.then(
377 390 function(proveedor) {
378 391 $scope.notaPedido.proveedor = proveedor;
379   - addCabecera('Proveedor:', proveedor.NOM);
  392 + $scope.$broadcast('addCabecera',{
  393 + label: 'Proveedor:',
  394 + valor: proveedor.NOM
  395 + });
380 396 }, function() {
381 397  
382 398 }
... ... @@ -422,12 +438,19 @@ angular.module('focaCrearNotaPedido') .controller('notaPedidoCtrl',
422 438 CUIT: cliente.cuit,
423 439 NOM: cliente.nom
424 440 };
425   - addCabecera('Cliente:', cliente.nom);
426 441 var domicilioStamp =
427 442 domicilio.Calle + ' ' + domicilio.Numero + ', ' +
428 443 domicilio.Localidad + ', ' + domicilio.Provincia;
429 444 $scope.notaPedido.domicilioStamp = domicilioStamp;
430   - addCabecera('Domicilio:', domicilioStamp);
  445 +
  446 + $scope.$broadcast('addCabecera',{
  447 + label: 'Cliente:',
  448 + valor: cliente.nom
  449 + });
  450 + $scope.$broadcast('addCabecera',{
  451 + label: 'Domicilio:',
  452 + valor: domicilioStamp
  453 + });
431 454 }, function() {
432 455 $scope.seleccionarCliente();
433 456 return;
... ... @@ -483,7 +506,10 @@ angular.module('focaCrearNotaPedido') .controller('notaPedidoCtrl',
483 506 cabecera = 'Ingreso manual ' + plazosConcat.trim();
484 507 }
485 508 $scope.articulosTabla = [];
486   - addCabecera('Precios y condiciones:', cabecera);
  509 + $scope.$broadcast('addCabecera',{
  510 + label: 'Precios y condiciones:',
  511 + valor: cabecera
  512 + });
487 513 }, function() {
488 514  
489 515 }
... ... @@ -522,13 +548,22 @@ angular.module('focaCrearNotaPedido') .controller('notaPedidoCtrl',
522 548 $scope.notaPedido.fob = datos.FOB;
523 549 $scope.notaPedido.bomba = datos.bomba;
524 550 $scope.notaPedido.kilometros = datos.kilometros;
525   - addCabecera('Flete:', datos.FOB ? 'FOB' : (datos.flete ? 'Si' : 'No'));
  551 + $scope.$broadcast('addCabecera',{
  552 + label: 'Flete:',
  553 + valor: datos.FOB ? 'FOB' : (datos.flete ? 'Si' : 'No')
  554 + });
526 555 if(datos.flete) {
527   - addCabecera('Bomba:', datos.bomba ? 'Si' : 'No');
528   - addCabecera('Kilometros:', datos.kilometros);
  556 + $scope.$broadcast('addCabecera',{
  557 + label: 'Bomba:',
  558 + valor: datos.bomba ? 'Si' : 'No'
  559 + });
  560 + $scope.$broadcast('addCabecera',{
  561 + label: 'Kilometros:',
  562 + valor: datos.kilometros
  563 + });
529 564 } else {
530   - removeCabecera('Bomba:');
531   - removeCabecera('Kilometros:');
  565 + $scope.$broadcast('removeCabecera', 'Bomba:');
  566 + $scope.$broadcast('removeCabecera', 'Kilometros:');
532 567 $scope.notaPedido.bomba = false;
533 568 $scope.notaPedido.kilometros = null;
534 569 }
... ... @@ -582,16 +617,22 @@ angular.module('focaCrearNotaPedido') .controller('notaPedidoCtrl',
582 617 $scope.notaPedido.moneda = moneda;
583 618 $scope.notaPedido.cotizacion = cotizacion;
584 619 if(moneda.DETALLE === 'PESOS ARGENTINOS'){
585   - removeCabecera('Moneda:');
586   - removeCabecera('Fecha cotizacion:');
587   - removeCabecera('Cotizacion:');
  620 + $scope.$broadcast('removeCabecera', 'Moneda:');
  621 + $scope.$broadcast('removeCabecera', 'Fecha cotizacion:');
  622 + $scope.$broadcast('removeCabecera', 'Cotizacion:');
588 623 }else{
589   - addCabecera('Moneda:', moneda.DETALLE);
590   - addCabecera(
591   - 'Fecha cotizacion:',
592   - $filter('date')(cotizacion.FECHA, 'dd/MM/yyyy')
593   - );
594   - addCabecera('Cotizacion:', cotizacion.VENDEDOR);
  624 + $scope.$broadcast('addCabecera',{
  625 + label: 'Moneda:',
  626 + valor: moneda.DETALLE
  627 + });
  628 + $scope.$broadcast('addCabecera',{
  629 + label: 'Fecha cotizacion:',
  630 + valor: $filter('date')(cotizacion.FECHA, 'dd/MM/yyyy')
  631 + });
  632 + $scope.$broadcast('addCabecera',{
  633 + label: 'Cotizacion:',
  634 + valor: cotizacion.VENDEDOR
  635 + });
595 636 }
596 637 }, function() {
597 638  
... ... @@ -669,23 +710,10 @@ angular.module('focaCrearNotaPedido') .controller('notaPedidoCtrl',
669 710  
670 711 function addArrayCabecera(array) {
671 712 for(var i = 0; i < array.length; i++) {
672   - addCabecera(array[i].label, array[i].valor);
673   - }
674   - }
675   -
676   - function addCabecera(label, valor) {
677   - var propiedad = $filter('filter')($scope.cabecera, {label: label}, true);
678   - if(propiedad.length === 1) {
679   - propiedad[0].valor = valor;
680   - } else {
681   - $scope.cabecera.push({label: label, valor: valor});
682   - }
683   - }
684   -
685   - function removeCabecera(label) {
686   - var propiedad = $filter('filter')($scope.cabecera, {label: label}, true);
687   - if(propiedad.length === 1) {
688   - $scope.cabecera.splice($scope.cabecera.indexOf(propiedad[0]), 1);
  713 + $scope.$broadcast('addCabecera',{
  714 + label: array[i].label,
  715 + valor: array[i].valor
  716 + });
689 717 }
690 718 }
691 719  
src/views/nota-pedido.html
1 1 <div class="crear-nota-pedido foca-crear row">
2   - <form name="formCrearNota" ng-submit="crearNotaPedido()" class="mb-0 col-lg-12">
3   - <div class="row">
4   - <div class="col-md-10 col-lg-12">
5   - <div class="row panel-informativo">
6   - <div class="col-12">
7   - <div class="row titulares">
8   - <div class="col-12 col-sm-3 nota-pedido border border-left-0 border-white align-middle">
9   - <h5 class="mb-0">NOTA DE PEDIDO</h5>
10   - </div>
11   - <div class="col-12 col-sm-3 numero-pedido border border-white align-middle"
12   - >Nº {{puntoVenta}}-{{comprobante}}
13   - <button
14   - class="btn btn-xs btn-outline-light float-right"
15   - type="button"
16   - ng-click="seleccionarNotaPedido()"
17   - >
18   - <i class="fa fa-search"></i>
19   - </button>
20   - </div>
21   - <div class="col-7 col-sm-3 border border-white align-middle">
22   - Fecha:&#32;
23   - <span
24   - ng-show="!datepickerAbierto"
25   - ng-bind="now | date:'dd/MM/yyyy'"
26   - ng-click="datepickerAbierto = true"
27   - >
28   - </span>
29   - <input
30   - ng-show="datepickerAbierto"
31   - type="date"
32   - ng-model="now"
33   - ng-change="datepickerAbierto = false"
34   - ng-blur="datepickerAbierto = false"
35   - class="form-control form-control-sm col-8 float-right"
36   - foca-focus="datepickerAbierto"
37   - hasta-hoy
38   - />
39   - </div>
40   - <div class="col-5 col-sm-3 border border-white border-right-0 align-middle">
41   - Hora:&#32;
42   - <span
43   - ng-show="!datepickerAbierto"
44   - ng-bind="now | date:'HH:mm'"
45   - ng-click="datepickerAbierto = true"
46   - >
47   - </span>
48   - </div>
49   - </div>
50   - <div class="row py-2">
51   - <div class="col-auto" ng-repeat="cab in cabecera" ng-show="showCabecera">
52   - <span class="label" ng-bind="cab.label"></span>
53   - <span class="valor" ng-bind="cab.valor" ng-if="!isNumber(cab.valor)"></span>
54   - <span class="valor" ng-bind="cab.valor | number:2" ng-if="isNumber(cab.valor)"></span>
55   - </div>
56   - <a
57   - class="btn col-12 btn-secondary d-sm-none"
58   - ng-show="cabecera.length > 0"
59   - ng-click="showCabecera = !showCabecera"
60   - >
61   - <i
62   - class="fa fa-chevron-down"
63   - ng-hide="showCabecera"
64   - aria-hidden="true"
65   - >
66   - </i>
67   - <i
68   - class="fa fa-chevron-up"
69   - ng-show="showCabecera"
70   - aria-hidden="true">
71   - </i>
72   - </a>
73   - </div>
74   - </div>
75   - </div>
76   -
77   - </div>
78   - </div>
79   - </form>
  2 + <foca-cabecera-facturador
  3 + titulo="'NOTA DE PEDIDO'"
  4 + numero="puntoVenta + '-' + comprobante"
  5 + fecha="now"
  6 + class="mb-0 col-lg-12"
  7 + busqueda="seleccionarNotaPedido"
  8 + ></foca-cabecera-facturador>
80 9 <div class="col-lg-12">
81 10 <div class="row mt-4">
82 11 <div class="col-12 col-md-10 col-lg-10 border border-light rounded">