diff --git a/src/js/controller.js b/src/js/controller.js
index 5803b57..7efff1a 100644
--- a/src/js/controller.js
+++ b/src/js/controller.js
@@ -37,7 +37,7 @@ angular.module('focaAdminSeguimiento') .controller('focaAdminSeguimientoControll
label: 'General',
valor: ''
});
- })
+ });
//SETEO BOTONERA LATERAL
focaBotoneraLateralService.showSalir(true);
diff --git a/src/js/osm-directive.js b/src/js/osm-directive.js
index 32cb637..01a5cbe 100644
--- a/src/js/osm-directive.js
+++ b/src/js/osm-directive.js
@@ -15,134 +15,184 @@ angular.module('focaAdminSeguimiento').directive('osm', function() {
}
$scope.markers = [];
+ var observacion = '';
+
angular.forEach($scope.marcadores, function(marcador) {
- var observacion = '';
-
if ($scope.parametros.actividad === 'Nota de pedido') {
- observacion +=
- 'Vendedor: ' + marcador.notaPedido.idVendedor + ' - ' +
- (
- marcador.notaPedido.vendedor ?
- marcador.notaPedido.vendedor.NomVen :
- ''
- ) + '
';
-
- if (!$scope.parametros.individual) {
- observacion += 'Ultima Nota de Pedido
';
- }
- observacion += 'Fecha: ' +
- $filter('date')(marcador.fecha.slice(0,10), 'dd/MM/yyyy') + ' ' +
- marcador.fecha.slice(11,19) + '
';
- observacion += 'Nº: ' + $filter('comprobante')([
- marcador.notaPedido.sucursal,
- marcador.notaPedido.numeroNotaPedido
- ]) + '
';
- observacion += 'Cliente: ' +
- marcador.notaPedido.cliente.NOM + '
';
-
- if ($scope.parametros.individual) {
- observacion +=
- 'Total: ' + $filter('currency')(marcador.notaPedido.total, '$');
- observacion = 'Orden: ' + marcador.orden + '
' + observacion;
-
- if (marcador.distancia) {
- observacion += '
Distancia a casa central: ' +
- marcador.distancia + 'km';
- }
- } else {
- observacion += 'Cantidad de nota de pedido: ' +
- marcador.cantidad + '
';
- observacion += 'Total Vendido: ' +
- $filter('currency')(marcador.total, '$');
- }
+ observacion = generarObservacion(getNotaPedido(marcador));
}
if ($scope.parametros.actividad === 'Cobranza') {
- observacion += 'Cobrador: ' + marcador.recibo.cobrador.id + ' - ' +
- marcador.recibo.CFE + '
';
+ observacion = getCobranza(marcador);
+ }
+
+ if ($scope.parametros.actividad === 'Entrega de producto') {
+ observacion = getEntrega(marcador);
+ }
+
+ if (observacion) {
+ $scope.markers.push(
+ L.marker([marcador.latitud, marcador.longitud]).addTo($scope.map)
+ .bindPopup(observacion)
+ );
+
+ $scope.markers[0].openPopup();
+ }
+ });
- if (!$scope.parametros.individual) {
- observacion += 'Ultima Cobranza
';
+ function getNotaPedido(marcador) {
+ var observacion = [];
+
+ if (!marcador.notaPedido.id) {
+ return false;
+ }
+
+ var notaPedido = marcador.notaPedido;
+ var textVendedor = notaPedido.idVendedor + ' - ';
+
+ if (notaPedido.vendedor) {
+ textVendedor += notaPedido.vendedor.NomVen;
+ }
+
+ observacion.push(['Vendedor', textVendedor]);
+
+ if (!$scope.parametros.individual) {
+ observacion.push(['Ultima Nota de Pedido', '']);
+ }
+
+ var textFecha = $filter('date')(marcador.fecha.slice(0,10), 'dd/MM/yyyy') +
+ ' ' + marcador.fecha.slice(11,19);
+ observacion.push(['Fecha', textFecha]);
+
+ observacion.push(['Nº',
+ $filter('comprobante')([notaPedido.sucursal, notaPedido.numeroNotaPedido ])
+ ]);
+
+ if (notaPedido.cliente) {
+ observacion.push(['Cliente', notaPedido.cliente.NOM]);
+ }
+
+ if ($scope.parametros.individual) {
+ observacion.push(['Total', $filter('currency')(notaPedido.total, '$')]);
+ observacion.unshift(['Orden', marcador.orden]);
+
+ if (marcador.distancia) {
+ observacion.push(['Distancia a casa central',
+ marcador.distancia + 'km'
+ ]);
}
+ } else {
+ observacion.push(['Cantidad de nota de pedido',
+ marcador.cantidad
+ ]);
+
+ observacion.push(['Total Vendido',
+ $filter('currency')(marcador.total, '$')
+ ]);
+ }
+
+ console.info(marcador, observacion);
+ return observacion;
+ }
+
+ function getCobranza(marcador) {
+ observacion += 'Cobrador: ' + marcador.recibo.cobrador.id + ' - ' +
+ marcador.recibo.CFE + '
';
+
+ if (!$scope.parametros.individual) {
+ observacion += 'Ultima Cobranza
';
+ }
- observacion += 'Fecha: ' +
- $filter('date')(marcador.fecha.slice(0,10), 'dd/MM/yyyy') + ' ' +
- marcador.fecha.slice(11,19) + '
';
- observacion += 'Nº: ' + $filter('comprobante')([
- marcador.sucursal, marcador.idUsuario]) + '
';
- observacion += 'Cliente: ' + marcador.recibo.cliente.NOM + '
';
-
- if ($scope.parametros.individual) {
- if (marcador.distancia) {
- observacion += 'Distancia a casa central: ' +
- marcador.distancia + 'km' + '
';
- observacion += 'Total Cobrado: ' +
- $filter('currency')(marcador.factura.IPA, '$');
- }
- } else {
- observacion += 'Cantidad de cobranzas: ' +
- marcador.cantidad + '
';
+ observacion += 'Fecha: ' +
+ $filter('date')(marcador.fecha.slice(0,10), 'dd/MM/yyyy') + ' ' +
+ marcador.fecha.slice(11,19) + '
';
+ observacion += 'Nº: ' + $filter('comprobante')([
+ marcador.sucursal, marcador.idUsuario]) + '
';
+ observacion += 'Cliente: ' + marcador.recibo.cliente.NOM + '
';
+
+ if ($scope.parametros.individual) {
+ if (marcador.distancia) {
+ observacion += 'Distancia a casa central: ' +
+ marcador.distancia + 'km' + '
';
observacion += 'Total Cobrado: ' +
$filter('currency')(marcador.factura.IPA, '$');
}
- }
+ } else {
+ observacion += 'Cantidad de cobranzas: ' +
+ marcador.cantidad + '
';
+ observacion += 'Total Cobrado: ' +
+ $filter('currency')(marcador.factura.IPA, '$');
+ }
- if ($scope.parametros.actividad === 'Entrega de producto') {
- var remito = marcador.hojaRutaMovimiento.remito;
- observacion += 'Vehiculo: ' +
- remito.hojaRuta.idVehiculo + ' - ' +
- remito.hojaRuta.vehiculo.tractor + '
';
- observacion += 'Transportista: ' +
- remito.hojaRuta.transportista.NOM + '
';
- observacion += 'Chofer: ' +
- remito.hojaRuta.chofer.nombre + '
';
- observacion += 'Hoja de ruta: ' + $filter('comprobante')([
- remito.hojaRuta.sucursal,
- remito.hojaRuta.numeroHojaRuta
- ]) + '
';
-
- if (!$scope.parametros.individual) {
- observacion += 'Ultimo Remito
';
+ return observacion;
+ }
+
+ function getEntrega(marcador) {
+ var observacion = '';
+ var remito = marcador.hojaRutaMovimiento.remito;
+ observacion += 'Vehiculo: ' +
+ remito.hojaRuta.idVehiculo + ' - ' +
+ remito.hojaRuta.vehiculo.tractor + '
';
+ observacion += 'Transportista: ' +
+ remito.hojaRuta.transportista.NOM + '
';
+ observacion += 'Chofer: ' +
+ remito.hojaRuta.chofer.nombre + '
';
+ observacion += 'Hoja de ruta: ' + $filter('comprobante')([
+ remito.hojaRuta.sucursal,
+ remito.hojaRuta.numeroHojaRuta
+ ]) + '
';
+
+ if (!$scope.parametros.individual) {
+ observacion += 'Ultimo Remito
';
+ }
+
+ observacion += 'Fecha: ' +
+ $filter('date')(marcador.fecha.slice(0,10), 'dd/MM/yyyy') + ' ' +
+ marcador.fecha.slice(11,19) + '
';
+
+ observacion += 'Nº: ' + $filter('comprobante')([
+ remito.sucursal,
+ remito.numeroRemito
+ ]) + '
';
+ observacion += 'Cliente: ' +
+ remito.cliente.NOM + '
';
+
+ if ($scope.parametros.individual) {
+ observacion += 'Producto: ' +
+ remito.articulosRemito[0].descripcion + '
';
+ observacion += 'Cantidad entregada: ' +
+ remito.carga + '
';
+
+ if (marcador.distancia) {
+ observacion += 'Distancia a casa central: ' + marcador.distancia +
+ 'km
';
}
- observacion += 'Fecha: ' +
- $filter('date')(marcador.fecha.slice(0,10), 'dd/MM/yyyy') + ' ' +
- marcador.fecha.slice(11,19) + '
';
-
- observacion += 'Nº: ' + $filter('comprobante')([
- remito.sucursal,
- remito.numeroRemito
- ]) + '
';
- observacion += 'Cliente: ' +
- remito.cliente.NOM + '
';
-
- if ($scope.parametros.individual) {
- observacion += 'Producto: ' +
- remito.articulosRemito[0].descripcion + '
';
- observacion += 'Cantidad entregada: ' +
- remito.carga + '
';
-
- if (marcador.distancia) {
- observacion += 'Distancia a casa central: ' + marcador.distancia +
- 'km
';
- }
-
- if (marcador.observaciones) {
- observacion += 'Observaciones: ' + marcador.observaciones;
- }
- observacion = 'Orden: ' + marcador.orden + '
' + observacion;
- } else {
- observacion += 'Cantidad de entregas: ' + marcador.cantidad;
+ if (marcador.observaciones) {
+ observacion += 'Observaciones: ' + marcador.observaciones;
}
+ observacion = 'Orden: ' + marcador.orden + '
' + observacion;
+ } else {
+ observacion += 'Cantidad de entregas: ' + marcador.cantidad;
}
- $scope.markers.push(
- L.marker([marcador.latitud, marcador.longitud]).addTo($scope.map)
- .bindPopup(observacion)
- );
+ return observacion;
+ }
- $scope.markers[0].openPopup();
- });
+ function generarObservacion(array) {
+ var resultado = '';
+
+ for (var i = 0; i < array.length; i++) {
+ resultado += '' + array[i][0] + ': ';
+ resultado += array[i][1];
+
+ if (i < (array.length - 1)) {
+ resultado += '
';
+ }
+ }
+
+ return resultado;
+ }
});
}],
scope: {