Commit 34519c4b29deee90506da6597e84ef0d939730a7
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:  | |
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:  | |
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"> |