From 6c52db3e2fed5e35a70b52aa4d9bc63a7106c064 Mon Sep 17 00:00:00 2001 From: Marcelo Puebla Date: Thu, 9 Jan 2020 16:29:41 -0300 Subject: [PATCH] Creados servicios --- src/app/app.module.ts | 3 +- src/app/modules/carrito/carrito.component.html | 33 ++++++++++++------ src/app/modules/carrito/carrito.component.ts | 7 ++-- src/app/modules/carrito/carrito.module.ts | 8 ++++- .../seleccion-articulos.component.html | 40 ++++++++++++++-------- .../seleccion-articulos.component.ts | 18 ++++------ .../seleccion-articulos.module.ts | 4 +-- src/app/modules/shared/shared.module.ts | 12 +++++++ src/app/services/articulo/articulo.service.ts | 24 +------------ .../services/categoria/categoria.service.spec.ts | 12 +++++++ src/app/services/categoria/categoria.service.ts | 18 ++++++++++ .../services/promocion/promocion.service.spec.ts | 12 +++++++ src/app/services/promocion/promocion.service.ts | 26 ++++++++++++++ src/app/services/sinonimo/sinonimo.service.spec.ts | 12 +++++++ src/app/services/sinonimo/sinonimo.service.ts | 18 ++++++++++ 15 files changed, 180 insertions(+), 67 deletions(-) create mode 100644 src/app/modules/shared/shared.module.ts create mode 100644 src/app/services/categoria/categoria.service.spec.ts create mode 100644 src/app/services/categoria/categoria.service.ts create mode 100644 src/app/services/promocion/promocion.service.spec.ts create mode 100644 src/app/services/promocion/promocion.service.ts create mode 100644 src/app/services/sinonimo/sinonimo.service.spec.ts create mode 100644 src/app/services/sinonimo/sinonimo.service.ts diff --git a/src/app/app.module.ts b/src/app/app.module.ts index 788ffd3..fa00bdd 100644 --- a/src/app/app.module.ts +++ b/src/app/app.module.ts @@ -8,6 +8,7 @@ import { AppComponent } from './app.component'; import { SplashScreenComponent } from './modules/splash-screen/splash-screen.component'; import { AdminComponent } from './modules/admin/admin.component'; import { FooterComponent } from './shared/footer/footer.component'; +import { SharedModule } from './modules/shared/shared.module'; @NgModule({ declarations: [ @@ -24,8 +25,8 @@ import { FooterComponent } from './shared/footer/footer.component'; FormsModule, ReactiveFormsModule, ReactiveFormsModule.withConfig({ warnOnNgModelWithFormControl: 'never' }), + SharedModule.forRoot(), ], - providers: [], bootstrap: [AppComponent] }) export class AppModule { } diff --git a/src/app/modules/carrito/carrito.component.html b/src/app/modules/carrito/carrito.component.html index 3605c07..3281bf8 100644 --- a/src/app/modules/carrito/carrito.component.html +++ b/src/app/modules/carrito/carrito.component.html @@ -12,11 +12,16 @@ - -
+ +
+ +
+

No hay artículos en el carrito

+
+
+ *ngFor="let articulo of articuloService.carrito">
@@ -26,10 +31,12 @@ draggable="false" ondragstart="return false;" (contextmenu)="false" - class="d-block mx-auto h-55" - src="assets/img/icono-efectivo.svg"> + class="d-block mx-auto h-55 rounded-sm shadow-sm" + src="{{urlImagenes}}{{articulo.imagenes[0].imagen}}">
-

{{'CORTADO'}}

+

+ {{articulo.DetArt}} +

@@ -38,8 +45,8 @@
+
-
+
-

{{55}}

+

{{articulo.cantidad}}

+
-
-
+ +
@@ -116,7 +127,7 @@
- +
+

ARTÍCULOS EN TÚ CARRITO DE COMPRAS

-
-
+ +
+ +
+
-
+
+
-

No hay articulos en el carrito

+

No hay articulos en el carrito

+
- -

- {{articulo.DetArt}} -

+
+ +

+ {{articulo.DetArt}} +

+
-
+ +
+
{ - this.articuloService.setArticulosSinImagen(res); - localStorage.setItem('articulos', JSON.stringify(res)); - this.setProductos(); - this.articulos = res; - }, err => console.error(err)); } getCategorias() { - this.articuloService.getCategorias() + this.categoriaService.getCategorias() .subscribe((categorias: ICategoria[]) => { switch (this.queMostrar) { case 'todos': @@ -126,6 +119,7 @@ export class SeleccionArticulosComponent implements OnInit { } elegirArticulo(articulo: IArticulo) { + articulo.cantidad = 1; this.articuloService.setArticulo(articulo); } diff --git a/src/app/modules/seleccion-articulos/seleccion-articulos.module.ts b/src/app/modules/seleccion-articulos/seleccion-articulos.module.ts index 446d10d..6035dcb 100644 --- a/src/app/modules/seleccion-articulos/seleccion-articulos.module.ts +++ b/src/app/modules/seleccion-articulos/seleccion-articulos.module.ts @@ -5,7 +5,7 @@ import { SeleccionArticulosComponent } from './seleccion-articulos.component'; import { HeaderPublicidadComponent } from 'src/app/shared/header-publicidad/header-publicidad.component'; import { ModalModule } from 'ngx-bootstrap/modal'; import { PromocionComponent } from 'src/app/shared/promocion/promocion.component'; -import { ArticuloService } from 'src/app/services/articulo/articulo.service'; +import { SharedModule } from '../shared/shared.module'; @NgModule({ declarations: [ @@ -17,9 +17,9 @@ import { ArticuloService } from 'src/app/services/articulo/articulo.service'; CommonModule, SeleccionArticulosRoutingModule, ModalModule.forRoot(), + SharedModule ], exports: [HeaderPublicidadComponent], - providers: [ArticuloService], entryComponents: [PromocionComponent] }) export class SeleccionArticulosModule { } diff --git a/src/app/modules/shared/shared.module.ts b/src/app/modules/shared/shared.module.ts new file mode 100644 index 0000000..0f743ca --- /dev/null +++ b/src/app/modules/shared/shared.module.ts @@ -0,0 +1,12 @@ +import { NgModule, ModuleWithProviders } from '@angular/core'; +import { ArticuloService } from 'src/app/services/articulo/articulo.service'; + +@NgModule({}) +export class SharedModule { + static forRoot(): ModuleWithProviders { + return { + ngModule: SharedModule, + providers: [ArticuloService] + }; + } +} diff --git a/src/app/services/articulo/articulo.service.ts b/src/app/services/articulo/articulo.service.ts index 9242d3d..c8be819 100644 --- a/src/app/services/articulo/articulo.service.ts +++ b/src/app/services/articulo/articulo.service.ts @@ -5,9 +5,7 @@ import { IArticulo } from '../../interfaces/IArticulo'; import { ClienteService } from '../cliente/cliente.service'; import { Observable } from 'rxjs'; -@Injectable({ - providedIn: 'root' -}) +@Injectable() export class ArticuloService { carrito: IArticulo[] = []; articuloAcargar: IArticulo; @@ -44,26 +42,6 @@ export class ArticuloService { this.carrito.unshift(articulo); } - getPromocionByCodigos(sector, codigo) { - return this.http.get(`${this.urlDeboSuite}/promociones/by-codigos/${sector}/${codigo}`); - } - - getPromociones(sector, codigo) { - return this.http.get(`${this.urlDeboSuite}/promociones/in-articulo/${sector}/${codigo}`); - } - - getPromocionSinonimos(sector, codigo) { - return this.http.get(`${this.urlDeboSuite}/sinonimos/promo/${sector}/${codigo}`); - } - - getCategorias() { - return this.http.get(`${this.urlDeboSuite}/categorias`); - } - - getComponentes(sector, codigo) { - return this.http.get(`${this.urlDeboSuite}/promociones/articulos/${sector}/${codigo}`); - } - pay(dataPago: any) { return new Observable((observer) => { this.clienteService.getById(-1) diff --git a/src/app/services/categoria/categoria.service.spec.ts b/src/app/services/categoria/categoria.service.spec.ts new file mode 100644 index 0000000..f08e10e --- /dev/null +++ b/src/app/services/categoria/categoria.service.spec.ts @@ -0,0 +1,12 @@ +import { TestBed } from '@angular/core/testing'; + +import { CategoriaService } from './categoria.service'; + +describe('CategoriaService', () => { + beforeEach(() => TestBed.configureTestingModule({})); + + it('should be created', () => { + const service: CategoriaService = TestBed.get(CategoriaService); + expect(service).toBeTruthy(); + }); +}); diff --git a/src/app/services/categoria/categoria.service.ts b/src/app/services/categoria/categoria.service.ts new file mode 100644 index 0000000..474dae2 --- /dev/null +++ b/src/app/services/categoria/categoria.service.ts @@ -0,0 +1,18 @@ +import { Injectable } from '@angular/core'; +import { HttpClient } from '@angular/common/http'; +import { APP_SETTINGS } from 'src/etc/AppSettings'; + +@Injectable({ + providedIn: 'root' +}) +export class CategoriaService { + urlDeboSuite = APP_SETTINGS.apiDeboSuite; + + constructor( + private http: HttpClient, + ) { } + + getCategorias() { + return this.http.get(`${this.urlDeboSuite}/categorias`); + } +} diff --git a/src/app/services/promocion/promocion.service.spec.ts b/src/app/services/promocion/promocion.service.spec.ts new file mode 100644 index 0000000..f436def --- /dev/null +++ b/src/app/services/promocion/promocion.service.spec.ts @@ -0,0 +1,12 @@ +import { TestBed } from '@angular/core/testing'; + +import { PromocionService } from './promocion.service'; + +describe('PromocionService', () => { + beforeEach(() => TestBed.configureTestingModule({})); + + it('should be created', () => { + const service: PromocionService = TestBed.get(PromocionService); + expect(service).toBeTruthy(); + }); +}); diff --git a/src/app/services/promocion/promocion.service.ts b/src/app/services/promocion/promocion.service.ts new file mode 100644 index 0000000..6047075 --- /dev/null +++ b/src/app/services/promocion/promocion.service.ts @@ -0,0 +1,26 @@ +import { Injectable } from '@angular/core'; +import { APP_SETTINGS } from 'src/etc/AppSettings'; +import { HttpClient } from '@angular/common/http'; + +@Injectable({ + providedIn: 'root' +}) +export class PromocionService { + urlDeboSuite = APP_SETTINGS.apiDeboSuite; + + constructor( + private http: HttpClient, + ) { } + + getPromocionByCodigos(sector, codigo) { + return this.http.get(`${this.urlDeboSuite}/promociones/by-codigos/${sector}/${codigo}`); + } + + getPromociones(sector, codigo) { + return this.http.get(`${this.urlDeboSuite}/promociones/in-articulo/${sector}/${codigo}`); + } + + getComponentes(sector, codigo) { + return this.http.get(`${this.urlDeboSuite}/promociones/articulos/${sector}/${codigo}`); + } +} diff --git a/src/app/services/sinonimo/sinonimo.service.spec.ts b/src/app/services/sinonimo/sinonimo.service.spec.ts new file mode 100644 index 0000000..405869d --- /dev/null +++ b/src/app/services/sinonimo/sinonimo.service.spec.ts @@ -0,0 +1,12 @@ +import { TestBed } from '@angular/core/testing'; + +import { SinonimoService } from './sinonimo.service'; + +describe('SinonimoService', () => { + beforeEach(() => TestBed.configureTestingModule({})); + + it('should be created', () => { + const service: SinonimoService = TestBed.get(SinonimoService); + expect(service).toBeTruthy(); + }); +}); diff --git a/src/app/services/sinonimo/sinonimo.service.ts b/src/app/services/sinonimo/sinonimo.service.ts new file mode 100644 index 0000000..c0b180d --- /dev/null +++ b/src/app/services/sinonimo/sinonimo.service.ts @@ -0,0 +1,18 @@ +import { Injectable } from '@angular/core'; +import { APP_SETTINGS } from 'src/etc/AppSettings'; +import { HttpClient } from '@angular/common/http'; + +@Injectable({ + providedIn: 'root' +}) +export class SinonimoService { + urlDeboSuite = APP_SETTINGS.apiDeboSuite; + + constructor( + private http: HttpClient, + ) { } + + getPromocionSinonimos(sector, codigo) { + return this.http.get(`${this.urlDeboSuite}/sinonimos/promo/${sector}/${codigo}`); + } +} -- 1.9.1