Commit 3e5491ca9a71e7c1de4a2ccce01115a638a8d3f2

Authored by Eric Fernandez
1 parent 304ab2418e
Exists in master

levantar popup con datos del remito

src/js/controller.js
1 angular.module('focaHojaRuta') 1 angular.module('focaHojaRuta')
2 .controller('listaHojaRutaCtrl', 2 .controller('listaHojaRutaCtrl',
3 [ 3 [
4 '$scope', '$filter', '$uibModal', 'hojaRutaService', 4 '$scope', '$filter', '$uibModal', 'hojaRutaService',
5 function($scope, $filter, $uibModal, hojaRutaService) { 5 function($scope, $filter, $uibModal, hojaRutaService) {
6 hojaRutaService.getHojasRuta().then(function(res) { 6 hojaRutaService.getHojasRuta().then(function(res) {
7 $scope.hojasRuta = res.data; 7 var hojaRuta = res.data.pop();
8 $scope.puntoVenta = rellenar(res.data[0].sucursal, 4); 8 $scope.hojasRuta = hojaRuta;
9 $scope.comprobante = rellenar(res.data[0].numeroHojaRuta, 8); 9 $scope.puntoVenta = rellenar(hojaRuta.sucursal, 4);
10 $scope.comprobante = rellenar(hojaRuta.numeroHojaRuta, 8);
11 addCabecera('Transportista:', hojaRuta.transportista[0].nombre);
12 addCabecera('Chofer:', hojaRuta.chofer[0].nombre);
13 addCabecera('Vehículo:', hojaRuta.vehiculo[0].tractor);
10 }); 14 });
11 $scope.cabecera = []; 15 $scope.cabecera = [];
12 $scope.showCabecera = true; 16 $scope.showCabecera = true;
13 addCabecera('Transportista:', 'Andesmar'); 17
14 addCabecera('Chofer:', 'Carlos');
15 addCabecera('Vehículo:', 'SCANIA');
16 $scope.now = new Date(); 18 $scope.now = new Date();
17 $scope.puntoVenta = '0000'; 19 $scope.puntoVenta = '0000';
18 $scope.comprobante = '00000000'; 20 $scope.comprobante = '00000000';
19 $scope.verDetalle = function() { 21 $scope.verDetalle = function(remito) {
20 var modalInstance = $uibModal.open( 22 var modalInstance = $uibModal.open(
21 { 23 {
22 ariaLabelledBy: 'Detalle hoja ruta', 24 ariaLabelledBy: 'Detalle hoja ruta',
23 templateUrl: 'modal-detalle-hoja-ruta.html', 25 templateUrl: 'modal-detalle-hoja-ruta.html',
24 controller: 'focaModalDetalleHojaRutaController', 26 controller: 'focaModalDetalleHojaRutaController',
25 resolve: { 27 resolve: {
26 parametrosDetalleHojaRuta: function(){ 28 parametrosDetalleHojaRuta: function(){
27 return { 29 return {
28 remito: '00001-00000001', 30 remito: remito.numeroRemito,
29 cliente: 'Rubén Gomez', 31 cliente: remito.nombreCliente,
30 domicilio: 'Patricias Mendocinas 5050', 32 domicilio: remito.domicilioStamp,
31 producto: 'Super', 33 producto: 'Super',
32 litros: 20 34 contacto: remito.nombreCliente,
35 telefonoContacto: '-',
36 litros: remito.carga
33 }; 37 };
34 } 38 }
35 }, 39 },
36 size: 'lg' 40 size: 'lg'
37 } 41 }
38 ); 42 );
39 modalInstance.result.then(function() { 43 modalInstance.result.then(function() {
40 44
41 }); 45 });
42 }; 46 };
43 47
44 function addCabecera(label, valor) { 48 function addCabecera(label, valor) {
45 var propiedad = $filter('filter')($scope.cabecera, {label: label}, true); 49 var propiedad = $filter('filter')($scope.cabecera, {label: label}, true);
46 if(propiedad.length === 1) { 50 if(propiedad.length === 1) {
47 propiedad[0].valor = valor; 51 propiedad[0].valor = valor;
48 } else { 52 } else {
49 $scope.cabecera.push({label: label, valor: valor}); 53 $scope.cabecera.push({label: label, valor: valor});
50 } 54 }
51 } 55 }
52 //TODO Descomentar cuando se use 56 //TODO Descomentar cuando se use
53 // function removeCabecera(label) { 57 // function removeCabecera(label) {
54 // var propiedad = $filter('filter')($scope.cabecera, {label: label}, true); 58 // var propiedad = $filter('filter')($scope.cabecera, {label: label}, true);
55 // if(propiedad.length === 1) { 59 // if(propiedad.length === 1) {
56 // $scope.cabecera.splice($scope.cabecera.indexOf(propiedad[0]), 1); 60 // $scope.cabecera.splice($scope.cabecera.indexOf(propiedad[0]), 1);
57 // } 61 // }
58 // } 62 // }
59 63
60 function rellenar(relleno, longitud) { 64 function rellenar(relleno, longitud) {
61 relleno = '' + relleno; 65 relleno = '' + relleno;
62 while (relleno.length < longitud) { 66 while (relleno.length < longitud) {
63 relleno = '0' + relleno; 67 relleno = '0' + relleno;
64 } 68 }
65 69
66 return relleno; 70 return relleno;
67 } 71 }
68 } 72 }
69 ]); 73 ]);
src/views/lista-hoja-ruta.html
1 <div> 1 <div>
2 <div class="col-md-10 offset-md-1 col-lg-8 offset-lg-2"> 2 <div class="col-md-10 offset-md-1 col-lg-8 offset-lg-2">
3 <div class="row p-1 panel-informativo"> 3 <div class="row p-1 panel-informativo">
4 <div class="col-12"> 4 <div class="col-12">
5 <div class="row"> 5 <div class="row">
6 <div class="col-12 col-sm-4 nota-pedido"> 6 <div class="col-12 col-sm-4 nota-pedido">
7 <h5>Hojas de ruta</h5> 7 <h5>Hojas de ruta</h5>
8 </div> 8 </div>
9 <div class="col-5 col-sm-4 numero-pedido" 9 <div class="col-5 col-sm-4 numero-pedido"
10 >Nº {{puntoVenta}}-{{comprobante}} 10 >Nº {{puntoVenta}}-{{comprobante}}
11 </div> 11 </div>
12 <div class="col-7 col-sm-4 text-right"> 12 <div class="col-7 col-sm-4 text-right">
13 Fecha: 13 Fecha:
14 <span 14 <span
15 ng-show="!datepickerAbierto" 15 ng-show="!datepickerAbierto"
16 ng-bind="now | date:'dd/MM/yyyy HH:mm'" 16 ng-bind="now | date:'dd/MM/yyyy HH:mm'"
17 ng-click="datepickerAbierto = true" 17 ng-click="datepickerAbierto = true"
18 > 18 >
19 </span> 19 </span>
20 <input 20 <input
21 ng-show="datepickerAbierto" 21 ng-show="datepickerAbierto"
22 type="date" 22 type="date"
23 ng-model="now" 23 ng-model="now"
24 ng-change="datepickerAbierto = false" 24 ng-change="datepickerAbierto = false"
25 ng-blur="datepickerAbierto = false" 25 ng-blur="datepickerAbierto = false"
26 class="form-control form-control-sm col-8 float-right" 26 class="form-control form-control-sm col-8 float-right"
27 foca-focus="datepickerAbierto" 27 foca-focus="datepickerAbierto"
28 hasta-hoy 28 hasta-hoy
29 /> 29 />
30 </div> 30 </div>
31 </div> 31 </div>
32 <div class="row"> 32 <div class="row">
33 <div class="col-auto" ng-repeat="cab in cabecera" ng-show="showCabecera"> 33 <div class="col-auto" ng-repeat="cab in cabecera" ng-show="showCabecera">
34 <span class="label" ng-bind="cab.label"></span> 34 <span class="label" ng-bind="cab.label"></span>
35 <span class="valor" ng-bind="cab.valor"></span> 35 <span class="valor" ng-bind="cab.valor"></span>
36 </div> 36 </div>
37 <a 37 <a
38 class="btn col-12 btn-secondary d-sm-none" 38 class="btn col-12 btn-secondary d-sm-none"
39 ng-show="cabecera.length > 0" 39 ng-show="cabecera.length > 0"
40 ng-click="showCabecera = !showCabecera" 40 ng-click="showCabecera = !showCabecera"
41 > 41 >
42 <i 42 <i
43 class="fa fa-chevron-down" 43 class="fa fa-chevron-down"
44 ng-hide="showCabecera" 44 ng-hide="showCabecera"
45 aria-hidden="true" 45 aria-hidden="true"
46 > 46 >
47 </i> 47 </i>
48 <i 48 <i
49 class="fa fa-chevron-up" 49 class="fa fa-chevron-up"
50 ng-show="showCabecera" 50 ng-show="showCabecera"
51 aria-hidden="true"> 51 aria-hidden="true">
52 </i> 52 </i>
53 </a> 53 </a>
54 </div> 54 </div>
55 </div> 55 </div>
56 </div> 56 </div>
57 <div class="row p-1 botonera-secundaria"> 57 <div class="row p-1 botonera-secundaria">
58 <div class="col-12"> 58 <div class="col-12">
59 <div class="row"> 59 <div class="row">
60 <div class="col-6 col-sm-3 px-0 py-0" ng-repeat="boton in botonera"> 60 <div class="col-6 col-sm-3 px-0 py-0" ng-repeat="boton in botonera">
61 <button 61 <button
62 type="button" 62 type="button"
63 class="btn btn-default btn-block btn-xs text-left py-2" 63 class="btn btn-default btn-block btn-xs text-left py-2"
64 ng-click="boton.accion()" 64 ng-click="boton.accion()"
65 ng-class="{'d-none d-sm-block': boton.texto == ''}" 65 ng-class="{'d-none d-sm-block': boton.texto == ''}"
66 > 66 >
67 <i 67 <i
68 class="fa fa-arrow-circle-right" 68 class="fa fa-arrow-circle-right"
69 ng-show="boton.texto != ''" 69 ng-show="boton.texto != ''"
70 ></i> 70 ></i>
71 &nbsp; 71 &nbsp;
72 {{boton.texto}} 72 {{boton.texto}}
73 </button> 73 </button>
74 </div> 74 </div>
75 </div> 75 </div>
76 </div> 76 </div>
77 </div> 77 </div>
78 </div> 78 </div>
79 <div class="col-12 col-md-10 col-lg-8 offset-md-1 offset-lg-2"> 79 <div class="col-12 col-md-10 col-lg-8 offset-md-1 offset-lg-2">
80 <div class="row grilla-articulo d-none d-sm-flex"> 80 <div class="row grilla-articulo d-none d-sm-flex">
81 <table class="table tabla-articulo table-striped table-sm table-dark"> 81 <table class="table tabla-articulo table-striped table-sm table-dark">
82 <thead> 82 <thead>
83 <tr class="d-flex"> 83 <tr class="d-flex">
84 <th>#</th> 84 <th>#</th>
85 <th>Fecha creacion</th> 85 <th>Razon Social</th>
86 <th>sucursal</th> 86 <th>Domicilio</th>
87 <th>idTransportista</th> 87 <th>#Remito</th>
88 <th>idChofer</th> 88 <th>Litros</th>
89 <th>idVehiculo</th>
90 <th></th> 89 <th></th>
91 </tr> 90 </tr>
92 </thead> 91 </thead>
93 <tbody class="tabla-articulo-body"> 92 <tbody class="tabla-articulo-body">
94 <tr 93 <tr
95 ng-repeat="(key, hojaRuta) in hojasRuta" class="d-flex" 94 ng-repeat="(key, remito) in remitos" class="d-flex"
96 > 95 >
97 <td ng-bind="key + 1"></td> 96 <td ng-bind="key + 1"></td>
98 <td ng-bind="hojaRuta.sucursal"></td> 97 <td ng-bind="remito.nombreCliente"></td>
99 <td ng-bind="hojaRuta.fechaCreacion"></td> 98 <td ng-bind="remito.domicilioStamp"></td>
100 <td ng-bind="hojaRuta.sucursal"></td> 99 <td ng-bind="remito.numeroRemito"></td>
101 <td ng-bind="hojaRuta.transportista[0].nombre"></td> 100 <td ng-bind="remito.remitoCarga"></td>
102 <td ng-bind="hojaRuta.chofer[0].nombre"></td>
103 <td ng-bind="hojaRuta.vehiculo[0].tractor"></td>
104 <td> 101 <td>
105 <button 102 <button
106 class="btn btn-secondary" 103 class="btn btn-secondary"
107 type="button" 104 type="button"
108 ng-click="verDetalle(hojaRuta)" 105 ng-click="verDetalle(remito)"
109 ><i class="fa fa-search" aria-hidden="true"></i> 106 ><i class="fa fa-search" aria-hidden="true"></i>
110 </button> 107 </button>
111 </td> 108 </td>
112 </tr> 109 </tr>
113 </tbody> 110 </tbody>
114 </table> 111 </table>
115 </div> 112 </div>
116 </div> 113 </div>
117 </div> 114 </div>
118 115