Commit 569a98e9faab563caa3ab019c0fa2047f5577119

Authored by Marcelo Puebla
Exists in master and in 1 other branch validar_pve

Merge branch 'master' of git.focasoftware.com:angular/autoservicio

src/app/app-routing.module.ts
... ... @@ -8,6 +8,7 @@ import { MasterComponent } from './components/master/master.component';
8 8 import { CancelarCompraComponent } from './components/cancelar-compra/cancelar-compra.component';
9 9 import { MensajeFinalComponent } from './components/mensaje-final/mensaje-final.component';
10 10 import { ComandaComponent } from './components/comanda/comanda.component';
  11 +import { PedidosSalientesComponent } from './components/pedidos-salientes/pedidos-salientes.component';
11 12  
12 13 const routes: Routes = [
13 14 { path: '', component: HomeComponent },
... ... @@ -16,6 +17,7 @@ const routes: Routes = [
16 17 { path: 'cancelar-compra', component: CancelarCompraComponent },
17 18 { path: 'mensaje-final', component: MensajeFinalComponent },
18 19 { path: 'comanda', component: ComandaComponent },
  20 + { path: 'pedidos-salientes', component: PedidosSalientesComponent },
19 21 {
20 22 path: '',
21 23 component: MasterComponent,
src/app/app.module.ts
... ... @@ -30,6 +30,7 @@ import { PopoverSinonimosComponent } from './components/popover-sinonimos/popove
30 30 import { CancelarCompraComponent } from './components/cancelar-compra/cancelar-compra.component';
31 31 import { MensajeFinalComponent } from './components/mensaje-final/mensaje-final.component';
32 32 import { ComandaComponent } from './components/comanda/comanda.component';
  33 +import { PedidosSalientesComponent } from './components/pedidos-salientes/pedidos-salientes.component';
33 34 //#endregion
34 35  
35 36 @NgModule({
... ... @@ -46,7 +47,8 @@ import { ComandaComponent } from './components/comanda/comanda.component';
46 47 PopoverSinonimosComponent,
47 48 CancelarCompraComponent,
48 49 MensajeFinalComponent,
49   - ComandaComponent
  50 + ComandaComponent,
  51 + PedidosSalientesComponent
50 52 ],
51 53 imports: [
52 54 BrowserModule,
src/app/components/busqueda-productos/busqueda-productos.component.html
... ... @@ -63,7 +63,7 @@
63 63 <button
64 64 class="btn btn-outline-primary badge badge-light px-2 shadow-sm"
65 65 [ngClass]="{'active': ordenandoByVendidos}"
66   - (click)="ordenandoByVendidos = !ordenandoByVendidos; ordenar()"
  66 + (click)="ordenandoByVendidos = !ordenandoByVendidos; filterItems()"
67 67 >Más vendidos</button>
68 68 </div>
69 69 </div>
src/app/components/busqueda-productos/busqueda-productos.component.ts
... ... @@ -46,10 +46,10 @@ export class BusquedaProductosComponent implements OnInit {
46 46 this.categoriaActive = 1;
47 47 this.title = 'Promociones';
48 48 break;
49   - case 'ordenar':
  49 + case 'ordenar':
50 50 this.categorias = categorias.filter((categoria: Categoria) => {
51 51 return categoria.ES_PEDIDO;
52   - });
  52 + });
53 53 this.categoriaActive = 0;
54 54 this.title = 'Ordenar';
55 55 break;
... ... @@ -82,7 +82,6 @@ export class BusquedaProductosComponent implements OnInit {
82 82 this.productos = data;
83 83 }
84 84 this.filterItems();
85   - this.ordenar();
86 85 }, (error) => {
87 86 this.showSpinner = false;
88 87 console.error(error);
... ... @@ -101,6 +100,8 @@ export class BusquedaProductosComponent implements OnInit {
101 100 }
102 101 });
103 102  
  103 + this.ordenar();
  104 +
104 105 }
105 106  
106 107 agregarAlCarrito(producto: Producto) {
... ... @@ -116,8 +117,6 @@ export class BusquedaProductosComponent implements OnInit {
116 117 this.auxProductos.sort((a, b) => {
117 118 return b.cantidadVendida - a.cantidadVendida;
118 119 });
119   - } else {
120   - this.filterItems();
121 120 }
122 121  
123 122 }
src/app/components/pedidos-salientes/pedidos-salientes.component.html
... ... @@ -0,0 +1,16 @@
  1 +<div class="bg-primary-gradient vh-100">
  2 + <div class="d-flex justify-content-center">
  3 + <div class="row my-5 text-white text-center">
  4 + <h1 class="col-12">Su pedido ya esta listo.</h1>
  5 + <h2 class="col-12 mt-3">Nº de Pedido</h2>
  6 +
  7 + <h1 *ngIf="pedidosRecientes.length" class="col-12 border rounded">
  8 + {{rellenar(pedidosRecientes[0].id, 2)}}
  9 + </h1>
  10 +
  11 + <h2 *ngFor="let pedido of pedidosRecientes; let i = index" [hidden]="i == 0" class="col-4 border rounded mx-0">
  12 + {{rellenar(pedido.id, 2)}}
  13 + </h2>
  14 + </div>
  15 + </div>
  16 +</div>
src/app/components/pedidos-salientes/pedidos-salientes.component.scss
src/app/components/pedidos-salientes/pedidos-salientes.component.spec.ts
... ... @@ -0,0 +1,25 @@
  1 +import { async, ComponentFixture, TestBed } from '@angular/core/testing';
  2 +
  3 +import { PedidosSalientesComponent } from './pedidos-salientes.component';
  4 +
  5 +describe('PedidosSalientesComponent', () => {
  6 + let component: PedidosSalientesComponent;
  7 + let fixture: ComponentFixture<PedidosSalientesComponent>;
  8 +
  9 + beforeEach(async(() => {
  10 + TestBed.configureTestingModule({
  11 + declarations: [ PedidosSalientesComponent ]
  12 + })
  13 + .compileComponents();
  14 + }));
  15 +
  16 + beforeEach(() => {
  17 + fixture = TestBed.createComponent(PedidosSalientesComponent);
  18 + component = fixture.componentInstance;
  19 + fixture.detectChanges();
  20 + });
  21 +
  22 + it('should create', () => {
  23 + expect(component).toBeTruthy();
  24 + });
  25 +});
src/app/components/pedidos-salientes/pedidos-salientes.component.ts
... ... @@ -0,0 +1,46 @@
  1 +import { Component, OnInit } from '@angular/core';
  2 +import { ComandaService } from 'src/app/services/comanda.service';
  3 +
  4 +@Component({
  5 + selector: 'app-pedidos-salientes',
  6 + templateUrl: './pedidos-salientes.component.html',
  7 + styleUrls: ['./pedidos-salientes.component.scss']
  8 +})
  9 +export class PedidosSalientesComponent implements OnInit {
  10 +
  11 + private pedidosRecientes = [];
  12 + private ciclo;
  13 +
  14 + constructor(private comandaService: ComandaService) { }
  15 +
  16 + ngOnInit() {
  17 + this.buscar();
  18 +
  19 + this.ciclo = setTimeout(() => {
  20 + this.buscar();
  21 + }, 5000)
  22 + }
  23 +
  24 + ngOnDestroy() {
  25 +
  26 + clearTimeout(this.ciclo);
  27 + }
  28 +
  29 + buscar() {
  30 +
  31 + this.comandaService
  32 + .getPendientesEntrega()
  33 + .subscribe((pedidos: []) => {
  34 +
  35 + this.pedidosRecientes = pedidos;
  36 + }, console.log);
  37 + }
  38 +
  39 + rellenar(relleno, longitud) {
  40 + relleno = '' + relleno;
  41 + while (relleno.length < longitud) {
  42 + relleno = '0' + relleno;
  43 + }
  44 + return relleno;
  45 + }
  46 +}
src/app/services/comanda.service.ts
... ... @@ -21,4 +21,8 @@ export class ComandaService {
21 21  
22 22 return this.http.get(`${this.apiUrl}/comandas/update/${id}/${estado}/${observacion}`);
23 23 }
  24 +
  25 + getPendientesEntrega() {
  26 + return this.http.get(`${this.apiUrl}/comandas/pendientes-entrega`);
  27 + }
24 28 }