diff --git a/src/app/components/busqueda-productos/busqueda-productos.component.html b/src/app/components/busqueda-productos/busqueda-productos.component.html
index a976db4..5a93cd0 100644
--- a/src/app/components/busqueda-productos/busqueda-productos.component.html
+++ b/src/app/components/busqueda-productos/busqueda-productos.component.html
@@ -83,7 +83,7 @@
type="button"
class="btn btn-light btn-lg shadow-sm"
[routerLink]="['/inicio']">
- Volver
+ Volver
diff --git a/src/app/components/busqueda-productos/busqueda-productos.component.ts b/src/app/components/busqueda-productos/busqueda-productos.component.ts
index a16c4f9..afdb404 100644
--- a/src/app/components/busqueda-productos/busqueda-productos.component.ts
+++ b/src/app/components/busqueda-productos/busqueda-productos.component.ts
@@ -1,8 +1,7 @@
-import { Component, OnInit, Input, ViewChild, AfterViewInit } from '@angular/core';
+import { Component, OnInit } from '@angular/core';
import { ProductoService } from 'src/app/services/producto.service';
import { Producto } from 'src/app/wrappers/producto';
import { appSettings } from 'src/etc/AppSettings';
-import { SidebarComponent } from '../sidebar/sidebar.component';
@Component({
selector: 'app-busqueda-productos',
@@ -18,14 +17,9 @@ export class BusquedaProductosComponent implements OnInit {
private categoria: Categorias = Categorias.todos;
private apiUrl: string = appSettings.apiUrl;
- productosParaCarrito : Producto[] = [];
constructor(private productoService: ProductoService) { }
- // ngAfterViewInit() {
- // this.sideBar.productos = [];
- // }
-
ngOnInit() {
this.productoService.getAll()
@@ -39,14 +33,15 @@ export class BusquedaProductosComponent implements OnInit {
}
filterItems() {
+
this.auxProductos = this.productos.filter(x => {
return x.DetArt.toLowerCase().includes(this.searchTerm.toLowerCase())
});
}
agregarAlCarrito(producto: Producto) {
- producto.cantidad = 1;
- this.productosParaCarrito.push(producto);
+
+ this.productoService.setProductos(producto);
}
}
diff --git a/src/app/components/sidebar/sidebar.component.ts b/src/app/components/sidebar/sidebar.component.ts
index 5e62865..97dc2c6 100644
--- a/src/app/components/sidebar/sidebar.component.ts
+++ b/src/app/components/sidebar/sidebar.component.ts
@@ -1,13 +1,13 @@
-import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';
+import { Component, OnInit } from '@angular/core';
import { Producto } from 'src/app/wrappers/producto';
import { appSettings } from 'src/etc/AppSettings';
+import { ProductoService } from 'src/app/services/producto.service';
@Component({
selector: 'app-sidebar',
templateUrl: './sidebar.component.html',
styleUrls: ['./sidebar.component.scss'],
- inputs: ['productosCarrito']
})
export class SidebarComponent implements OnInit {
@@ -19,9 +19,15 @@ export class SidebarComponent implements OnInit {
public productosCarrito: Producto[] = [];
- constructor() { }
+ constructor(private productoService: ProductoService) { }
- ngOnInit() { }
+ ngOnInit() {
+
+ this.productoService.productosEvent
+ .subscribe((data: Producto[]) => {
+ this.productosCarrito = data;
+ }, (error) => { console.error(error); })
+ }
getCantidadProductos() {
@@ -57,7 +63,7 @@ export class SidebarComponent implements OnInit {
decrementarContador(index) {
for (let i = 0; i < this.productosCarrito.length; i++) {
- if (i === index && this.productosCarrito[i].cantidad > 1) {
+ if (i === index && this.productosCarrito[i].cantidad > this.min) {
this.productosCarrito[i].cantidad--;
this.cont--;
break;
@@ -75,7 +81,7 @@ export class SidebarComponent implements OnInit {
}
}
- deleteProducto(index) {
+ deleteProducto(index: number) {
for (let i = 0; i < this.productosCarrito.length; i++) {
if (i === index) {
diff --git a/src/app/services/producto.service.ts b/src/app/services/producto.service.ts
index 2e0eb5e..321e847 100644
--- a/src/app/services/producto.service.ts
+++ b/src/app/services/producto.service.ts
@@ -2,16 +2,28 @@ import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { Observable } from 'rxjs';
import { appSettings } from 'src/etc/AppSettings';
+import { Producto } from '../wrappers/producto';
+import { EventEmitter } from '@angular/core';
@Injectable({
providedIn: 'root'
})
export class ProductoService {
+ productos : Producto[] = [];
+ productosEvent: EventEmitter = new EventEmitter();
+
constructor(private http: HttpClient) { }
getAll(): Observable {
+
return this.http.get(`${appSettings.apiUrl}/articulos`);
}
+ setProductos(producto){
+
+ this.productos.push(producto);
+ this.productosEvent.emit(this.productos);
+ }
+
}