From 855e7d00cfa93f3a3fa721152a920ebe794e1a3d Mon Sep 17 00:00:00 2001 From: RubenPuigMoreno Date: Sat, 4 Dec 2021 12:30:47 +0100 Subject: [PATCH 01/10] feat: mejorando aspecto, backend de cambios tienda --- .../altaproducto/altaproducto.component.html | 1 - .../detalleproducto.component.html | 111 +++++++++--------- .../src/app/login/login.component.html | 74 ++++++++---- .../app/principal/principal.component.html | 1 - .../producto-item.component.html | 1 - .../src/app/producto/producto.component.html | 62 +++++----- .../src/app/producto/producto.component.ts | 13 +- .../src/app/producto/producto.service.ts | 7 ++ .../productosgrid.component.html | 11 +- .../controllers/PedidoController.java | 6 + .../controllers/TiendaController.java | 27 +++++ .../models/dao/PedidoRepository.java | 2 + .../models/dao/TiendaRepository.java | 9 ++ .../app/productos/models/entity/Tienda.java | 14 +++ .../models/service/PedidoServiceI.java | 2 + .../models/service/PedidoServiceImpl.java | 6 + .../models/service/TiendaServiceI.java | 10 ++ .../models/service/TiendaServiceImpl.java | 31 +++++ 18 files changed, 267 insertions(+), 121 deletions(-) create mode 100644 ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/controllers/TiendaController.java create mode 100644 ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/dao/TiendaRepository.java create mode 100644 ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/TiendaServiceI.java create mode 100644 ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/TiendaServiceImpl.java diff --git a/clientes-app/src/app/altaproducto/altaproducto.component.html b/clientes-app/src/app/altaproducto/altaproducto.component.html index a003fca..4f7ab6d 100644 --- a/clientes-app/src/app/altaproducto/altaproducto.component.html +++ b/clientes-app/src/app/altaproducto/altaproducto.component.html @@ -94,5 +94,4 @@ - diff --git a/clientes-app/src/app/detalleproducto/detalleproducto.component.html b/clientes-app/src/app/detalleproducto/detalleproducto.component.html index 8053bae..70bf9fa 100644 --- a/clientes-app/src/app/detalleproducto/detalleproducto.component.html +++ b/clientes-app/src/app/detalleproducto/detalleproducto.component.html @@ -1,64 +1,65 @@
-
-

-

-

-

-
- -
-
-
- -
-
-
-
- -
-
-
+
+
-
-

{{ producto?.nombre }}

-

{{ producto?.productoCaracteristicas.descripcion }}

-
Especificaciones
-
- - - - - - - - - - - - - -
EspicificaciónDescripción
{{ especificacion.claveEspecificacion }}{{ especificacion.descripcionEspecificacion }}
+
+
+ +
+
+
+
+ +
+
+
+
+
+

{{ producto?.nombre }}

+

{{ producto?.productoCaracteristicas.descripcion }}

+
Especificaciones
+
+ + + + + + + + + + + + + +
EspicificaciónDescripción
{{ especificacion.claveEspecificacion }}{{ especificacion.descripcionEspecificacion }}
+
+
- diff --git a/clientes-app/src/app/login/login.component.html b/clientes-app/src/app/login/login.component.html index 58edfbe..571df01 100644 --- a/clientes-app/src/app/login/login.component.html +++ b/clientes-app/src/app/login/login.component.html @@ -1,29 +1,61 @@ -
-
{{titulo}}
+
+
{{ titulo }}
-
-
-
- -
+
+
+ +
+ +
-
- -
+
+ +
-
- +
+ +
+
- -
- -
- +
+
+
+ ¿Aún no compras en nuestra tienda? + Registrate sin compromiso!! +
+
+ +
+
- +
- diff --git a/clientes-app/src/app/principal/principal.component.html b/clientes-app/src/app/principal/principal.component.html index f77c602..6c85f20 100644 --- a/clientes-app/src/app/principal/principal.component.html +++ b/clientes-app/src/app/principal/principal.component.html @@ -34,5 +34,4 @@

Decoración para el Arbol

-
diff --git a/clientes-app/src/app/producto-item/producto-item.component.html b/clientes-app/src/app/producto-item/producto-item.component.html index 03778d4..e803d81 100644 --- a/clientes-app/src/app/producto-item/producto-item.component.html +++ b/clientes-app/src/app/producto-item/producto-item.component.html @@ -83,4 +83,3 @@
- diff --git a/clientes-app/src/app/producto/producto.component.html b/clientes-app/src/app/producto/producto.component.html index 6869e5a..5a2eba9 100644 --- a/clientes-app/src/app/producto/producto.component.html +++ b/clientes-app/src/app/producto/producto.component.html @@ -1,36 +1,44 @@
-
- -
- -
-
-
{{ producto.nombre }}
- +
+
-
-
-
-
-
-
- {{ producto.precio }} + +
+
+
{{ producto.nombre }}
+
-
-
PUNTUACIÓN
- {{ producto.valoracion }} +
+
-
-
CATEGORIA
- {{ producto.categoria }} +
+
+
+ {{ producto.precio }} +
+
+
PUNTUACIÓN
+ {{ producto.valoracion }} +
+
+
CATEGORIA
+ {{ producto.categoria }} +
+
+
+
-
-
- -
diff --git a/clientes-app/src/app/producto/producto.component.ts b/clientes-app/src/app/producto/producto.component.ts index 5a6d0f8..cb9f034 100644 --- a/clientes-app/src/app/producto/producto.component.ts +++ b/clientes-app/src/app/producto/producto.component.ts @@ -75,13 +75,16 @@ export class ProductoComponent implements OnInit { productoCantidad.idProducto = this.producto.id; productoCantidad.cantidad = 1; - this.cesta.productoCantidad.push(productoCantidad); console.log(this.cesta.productoCantidad.length); - this.cestaService.incluirEnCesta(this.cesta).subscribe( - respuesta => {this.cesta=respuesta - this.router.navigate(['cesta'])} - ); + this.cestaService.incluirEnCesta(this.cesta).subscribe((respuesta) => { + this.cesta = respuesta; + this.router.navigate(['cesta']); + }); }); } + + tienePermisos(role: string): boolean { + return this.personaServices.hasRole(role); + } } diff --git a/clientes-app/src/app/producto/producto.service.ts b/clientes-app/src/app/producto/producto.service.ts index bf7585a..aebccc1 100644 --- a/clientes-app/src/app/producto/producto.service.ts +++ b/clientes-app/src/app/producto/producto.service.ts @@ -24,6 +24,8 @@ export class ProductoService { private httpHeaders = new HttpHeaders({ 'Content-Type': 'application/json' }); + private filtro: string; + constructor( private http: HttpClient, private router: Router, @@ -123,4 +125,9 @@ export class ProductoService { return false; } + + setFiltro(filtro: string){ + + this.filtro = filtro + } } diff --git a/clientes-app/src/app/productosgrid/productosgrid.component.html b/clientes-app/src/app/productosgrid/productosgrid.component.html index 088a4fc..4ddf330 100644 --- a/clientes-app/src/app/productosgrid/productosgrid.component.html +++ b/clientes-app/src/app/productosgrid/productosgrid.component.html @@ -3,8 +3,6 @@

-

-

@@ -15,11 +13,4 @@ >
-

-

-

-

-

-

-

- + diff --git a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/controllers/PedidoController.java b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/controllers/PedidoController.java index e269f2c..5f4e2d0 100644 --- a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/controllers/PedidoController.java +++ b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/controllers/PedidoController.java @@ -39,5 +39,11 @@ public Pedido actualizaPedido (@RequestBody Pedido pedido) { public void actualizaPedido (@PathVariable Long id) { pedidoServiceI.borraPedido(id); } + + @GetMapping("/pedidos/pedidos-estado/{estado}") + public List recuperaPedidoId(@PathVariable String estado) { + return pedidoServiceI.recuperaPedidosPorEstado(estado); + + } } diff --git a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/controllers/TiendaController.java b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/controllers/TiendaController.java new file mode 100644 index 0000000..0b63675 --- /dev/null +++ b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/controllers/TiendaController.java @@ -0,0 +1,27 @@ +package net.ostemplate.app.productos.controllers; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.RestController; + +import net.ostemplate.app.productos.models.service.TiendaServiceI; + +@RestController +public class TiendaController { + + @Autowired + private TiendaServiceI tiendaServiceI; + + @GetMapping("/tienda/nombre") + public String getNombreTienda() { + return tiendaServiceI.getNombreDeTienda(); + } + + @PutMapping("/tienda/cambia-nombre/{nombre}") + public String cambiaNombre(@PathVariable String nombre) { + return tiendaServiceI.actualizaTienda(nombre); + } + +} diff --git a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/dao/PedidoRepository.java b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/dao/PedidoRepository.java index 7229c0b..15e46b0 100644 --- a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/dao/PedidoRepository.java +++ b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/dao/PedidoRepository.java @@ -9,5 +9,7 @@ public interface PedidoRepository extends CrudRepository { List findByIdUsuario (Long idUsuario); + + List findByEstado(String estado); } diff --git a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/dao/TiendaRepository.java b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/dao/TiendaRepository.java new file mode 100644 index 0000000..597ae44 --- /dev/null +++ b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/dao/TiendaRepository.java @@ -0,0 +1,9 @@ +package net.ostemplate.app.productos.models.dao; + +import org.springframework.data.repository.CrudRepository; + +import net.ostemplate.app.productos.models.entity.Tienda; + +public interface TiendaRepository extends CrudRepository { + +} diff --git a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/entity/Tienda.java b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/entity/Tienda.java index 64a77f2..7d63aff 100644 --- a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/entity/Tienda.java +++ b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/entity/Tienda.java @@ -21,6 +21,20 @@ public class Tienda implements Serializable{ @Column(name="id") private Long id; + public Tienda(String nombreTienda) { + super(); + this.nombreTienda = nombreTienda; + this.id = 1L; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + public String getNombreTienda() { return nombreTienda; } diff --git a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/PedidoServiceI.java b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/PedidoServiceI.java index 5710720..54f8522 100644 --- a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/PedidoServiceI.java +++ b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/PedidoServiceI.java @@ -13,6 +13,8 @@ public interface PedidoServiceI { Pedido findById(Long id); void borraPedido(Long id); + + List recuperaPedidosPorEstado(String estado); } diff --git a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/PedidoServiceImpl.java b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/PedidoServiceImpl.java index 5d3d5c6..c6f652d 100644 --- a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/PedidoServiceImpl.java +++ b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/PedidoServiceImpl.java @@ -40,5 +40,11 @@ public void borraPedido (Long id){ pedidoRepository.deleteById(id); } + @Override + @Transactional(readOnly = true) + public List recuperaPedidosPorEstado(String estado){ + return pedidoRepository.findByEstado(estado); + + } } diff --git a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/TiendaServiceI.java b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/TiendaServiceI.java new file mode 100644 index 0000000..79eb6e6 --- /dev/null +++ b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/TiendaServiceI.java @@ -0,0 +1,10 @@ +package net.ostemplate.app.productos.models.service; + +public interface TiendaServiceI { + + + String actualizaTienda(String nombreTienda); + + String getNombreDeTienda(); + +} diff --git a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/TiendaServiceImpl.java b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/TiendaServiceImpl.java new file mode 100644 index 0000000..742cb07 --- /dev/null +++ b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/TiendaServiceImpl.java @@ -0,0 +1,31 @@ +package net.ostemplate.app.productos.models.service; + +import javax.transaction.Transactional; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import net.ostemplate.app.productos.models.dao.TiendaRepository; +import net.ostemplate.app.productos.models.entity.Tienda; + +@Service +public class TiendaServiceImpl implements TiendaServiceI{ + + @Autowired + private TiendaRepository tiendaRepository; + + @Override + @Transactional + public String actualizaTienda(String nombreTienda) { + Tienda tienda = new Tienda(nombreTienda); + return tiendaRepository.save(tienda).getNombreTienda(); + + } + + @Override + @Transactional + public String getNombreDeTienda() { + return tiendaRepository.findById(1L).orElse(null).getNombreTienda(); + } + +} From 8cec5f5db5e9fe21bd771c054b917fc68886535a Mon Sep 17 00:00:00 2001 From: RubenPuigMoreno Date: Sat, 4 Dec 2021 20:26:18 +0100 Subject: [PATCH 02/10] feat: ya se modifica a despachado --- clientes-app/src/app/app.module.ts | 7 ++- .../src/app/despacho/despacho.component.css | 0 .../src/app/despacho/despacho.component.html | 60 +++++++++++++++++++ .../app/despacho/despacho.component.spec.ts | 25 ++++++++ .../src/app/despacho/despacho.component.ts | 42 +++++++++++++ .../detalleproducto.component.html | 9 +++ .../detalleproducto.component.ts | 6 ++ .../src/app/header/header.component.html | 4 +- .../app/header/header.component.modal.html | 25 ++++++++ .../src/app/header/header.component.ts | 3 + .../lista-pedidos.component.html | 1 + .../lista-pedidos/lista-pedidos.component.ts | 4 ++ clientes-app/src/app/pedido/pedido.service.ts | 14 +++++ .../controllers/PedidoController.java | 6 ++ .../models/service/PedidoServiceI.java | 2 + .../models/service/PedidoServiceImpl.java | 6 ++ 16 files changed, 210 insertions(+), 4 deletions(-) create mode 100644 clientes-app/src/app/despacho/despacho.component.css create mode 100644 clientes-app/src/app/despacho/despacho.component.html create mode 100644 clientes-app/src/app/despacho/despacho.component.spec.ts create mode 100644 clientes-app/src/app/despacho/despacho.component.ts create mode 100644 clientes-app/src/app/header/header.component.modal.html diff --git a/clientes-app/src/app/app.module.ts b/clientes-app/src/app/app.module.ts index 54f1eb9..7ea9d58 100644 --- a/clientes-app/src/app/app.module.ts +++ b/clientes-app/src/app/app.module.ts @@ -29,6 +29,7 @@ import { ProductoCestaComponent } from './producto-cesta/producto-cesta.componen import { DireccionPedidoComponent } from './direccion-pedido/direccion-pedido.component'; import { PasarelaComponent } from './pasarela/pasarela.component'; import { ListaPedidosComponent } from './lista-pedidos/lista-pedidos.component'; +import { DespachoComponent } from './despacho/despacho.component'; const routes: Routes = [ {path:'', redirectTo:'/productosgrid', pathMatch: 'full'}, @@ -47,7 +48,8 @@ const routes: Routes = [ {path:'cesta', component: CestaComponent}, {path:'direccion/:id', component: DireccionPedidoComponent}, {path:'pasarela/:id', component: PasarelaComponent}, - {path:'listapedidos', component: ListaPedidosComponent} + {path:'listapedidos', component: ListaPedidosComponent}, + {path:'despacho', component: DespachoComponent} ]; @NgModule({ @@ -74,7 +76,8 @@ const routes: Routes = [ ProductoCestaComponent, DireccionPedidoComponent, PasarelaComponent, - ListaPedidosComponent + ListaPedidosComponent, + DespachoComponent ], imports: [ diff --git a/clientes-app/src/app/despacho/despacho.component.css b/clientes-app/src/app/despacho/despacho.component.css new file mode 100644 index 0000000..e69de29 diff --git a/clientes-app/src/app/despacho/despacho.component.html b/clientes-app/src/app/despacho/despacho.component.html new file mode 100644 index 0000000..d73cb03 --- /dev/null +++ b/clientes-app/src/app/despacho/despacho.component.html @@ -0,0 +1,60 @@ + +
+

+

+

+

+

+

+
+
+

PEDIDO: {{ pedido.id }}

+
+
Dirección:
+

+ {{ pedido?.direccionPedido?.via }}, + {{ pedido?.direccionPedido?.numero }}, + {{ pedido?.direccionPedido?.cp }}, + {{ pedido?.direccionPedido?.localidad }}, + {{ pedido?.direccionPedido?.pronvicia }} +

+
+
+
Articulos:
+
+ + + + + + + + + + + + + +
NombreCantidad
{{ detalle.nombre }}{{ detalle.cantidad }}
+
+
+
+
Estado:
+

{{ pedido?.estado }}

+
+
+
Importe:
+

{{ pedido?.total }}

+
+
+ +
+
+
+
diff --git a/clientes-app/src/app/despacho/despacho.component.spec.ts b/clientes-app/src/app/despacho/despacho.component.spec.ts new file mode 100644 index 0000000..31292d4 --- /dev/null +++ b/clientes-app/src/app/despacho/despacho.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { DespachoComponent } from './despacho.component'; + +describe('DespachoComponent', () => { + let component: DespachoComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [ DespachoComponent ] + }) + .compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(DespachoComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/clientes-app/src/app/despacho/despacho.component.ts b/clientes-app/src/app/despacho/despacho.component.ts new file mode 100644 index 0000000..7f65989 --- /dev/null +++ b/clientes-app/src/app/despacho/despacho.component.ts @@ -0,0 +1,42 @@ +import { Component, OnInit } from '@angular/core'; +import { ActivatedRoute } from '@angular/router'; +import { filter } from 'rxjs/operators'; +import { Pedido } from '../pedido/pedido.model'; +import { PedidoService } from '../pedido/pedido.service'; +import { PersonaServices } from '../persona/persona.service'; + +@Component({ + selector: 'app-despacho', + templateUrl: './despacho.component.html', + styleUrls: ['./despacho.component.css'], +}) +export class DespachoComponent implements OnInit { + pedidos!: Pedido[]; + + constructor( + private activatedRoute: ActivatedRoute, + private pedidoService: PedidoService, + private personaService: PersonaServices + ) {} + + ngOnInit(): void { + this.pedidos = new Array(); + + this.pedidoService + .getPedidos() + .subscribe((respuesta) => { + this.pedidos = respuesta; + console.log(this.pedidos.length); + }); + } + + setEstadoPedidoPagado(id:number) { + let pedido= new Pedido(); + pedido = this.pedidos.find(x=>x.id==id)|| new Pedido(); + pedido.estado='Despachado'; + this.pedidoService.setPedido(pedido).subscribe( + () => {} + ); + + } +} diff --git a/clientes-app/src/app/detalleproducto/detalleproducto.component.html b/clientes-app/src/app/detalleproducto/detalleproducto.component.html index 70bf9fa..ea6072b 100644 --- a/clientes-app/src/app/detalleproducto/detalleproducto.component.html +++ b/clientes-app/src/app/detalleproducto/detalleproducto.component.html @@ -55,6 +55,15 @@
Especificaciones
+
+ +
diff --git a/clientes-app/src/app/detalleproducto/detalleproducto.component.ts b/clientes-app/src/app/detalleproducto/detalleproducto.component.ts index a09eac1..4c9115a 100644 --- a/clientes-app/src/app/detalleproducto/detalleproducto.component.ts +++ b/clientes-app/src/app/detalleproducto/detalleproducto.component.ts @@ -1,3 +1,4 @@ +import { PersonaServices } from './../persona/persona.service'; import { ProductoCaracteristicas } from './../producto/productoCaracteristicas.model'; import { ActivatedRoute, Router } from '@angular/router'; import { ProductoService } from './../producto/producto.service'; @@ -16,6 +17,7 @@ export class DetalleproductoComponent implements OnInit { constructor( private productoService: ProductoService, private activatedRoute: ActivatedRoute, + private personaService: PersonaServices ) {} ngOnInit(): void { @@ -40,4 +42,8 @@ export class DetalleproductoComponent implements OnInit { getProducto(): Producto { return this.producto; } + + tienePermisos(role: string): boolean { + return this.personaService.hasRole(role); + } } diff --git a/clientes-app/src/app/header/header.component.html b/clientes-app/src/app/header/header.component.html index 4c7959b..41741a7 100644 --- a/clientes-app/src/app/header/header.component.html +++ b/clientes-app/src/app/header/header.component.html @@ -1,6 +1,6 @@
diff --git a/clientes-app/src/app/lista-pedidos/lista-pedidos.component.ts b/clientes-app/src/app/lista-pedidos/lista-pedidos.component.ts index 4327648..a9cf734 100644 --- a/clientes-app/src/app/lista-pedidos/lista-pedidos.component.ts +++ b/clientes-app/src/app/lista-pedidos/lista-pedidos.component.ts @@ -3,6 +3,7 @@ import { PedidoService } from './../pedido/pedido.service'; import { ActivatedRoute } from '@angular/router'; import { Component, OnInit } from '@angular/core'; import { Pedido } from '../pedido/pedido.model'; +import { ThisReceiver } from '@angular/compiler'; @Component({ selector: 'app-lista-pedidos', @@ -20,6 +21,7 @@ export class ListaPedidosComponent implements OnInit { ngOnInit(): void { this.pedidos= new Array(); + this.activatedRoute.paramMap.subscribe((params) => { this.pedidoService.getPedidosByIdusuario(this.personaService.usuario.id).subscribe((respuesta) => { this.pedidos = respuesta; @@ -29,4 +31,6 @@ export class ListaPedidosComponent implements OnInit { }); } + + } diff --git a/clientes-app/src/app/pedido/pedido.service.ts b/clientes-app/src/app/pedido/pedido.service.ts index ba07a1c..3ef09a1 100644 --- a/clientes-app/src/app/pedido/pedido.service.ts +++ b/clientes-app/src/app/pedido/pedido.service.ts @@ -20,6 +20,8 @@ export class PedidoService { 'http://localhost:8090/api/productos/pedidos/recupera-pedido'; private urlRecuperaPedidoIdUsuario: string = 'http://localhost:8090/api/productos/pedidos/recupera-pedidos-usuario'; + private urlRecuperaPedidos: string = + 'http://localhost:8090/api/productos/pedidos/lista'; private urlEliminaPedido: string = 'http://localhost:8090/api/productos/pedidos/borra-pedido'; @@ -70,6 +72,18 @@ export class PedidoService { ); } + getPedidos(): Observable { + return this.http.get(`${this.urlRecuperaPedidos}`, { + headers: this.productoService.agregarAuthorizationHeader() + }).pipe( + catchError((e) => { + console.error(e.error.mensaje); + swal.fire('Error al obtener los pedidos', e.error.mensaje, 'error'); + return throwError(e); + }) + ); + } + eliminarPedido(id: number){ return this.http.delete(`${this.urlEliminaPedido}/${id}`, { headers: this.productoService.agregarAuthorizationHeader() diff --git a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/controllers/PedidoController.java b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/controllers/PedidoController.java index 5f4e2d0..f248520 100644 --- a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/controllers/PedidoController.java +++ b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/controllers/PedidoController.java @@ -45,5 +45,11 @@ public List recuperaPedidoId(@PathVariable String estado) { return pedidoServiceI.recuperaPedidosPorEstado(estado); } + + @GetMapping("/pedidos/lista") + public List recuperaPedidos() { + return pedidoServiceI.recuperaPedidos(); + + } } diff --git a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/PedidoServiceI.java b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/PedidoServiceI.java index 54f8522..e0e3cfc 100644 --- a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/PedidoServiceI.java +++ b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/PedidoServiceI.java @@ -15,6 +15,8 @@ public interface PedidoServiceI { void borraPedido(Long id); List recuperaPedidosPorEstado(String estado); + + List recuperaPedidos(); } diff --git a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/PedidoServiceImpl.java b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/PedidoServiceImpl.java index c6f652d..7076f08 100644 --- a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/PedidoServiceImpl.java +++ b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/PedidoServiceImpl.java @@ -46,5 +46,11 @@ public List recuperaPedidosPorEstado(String estado){ return pedidoRepository.findByEstado(estado); } + @Override + @Transactional(readOnly = true) + public List recuperaPedidos(){ + return (List) pedidoRepository.findAll(); + + } } From f2d9dff6c2373cada1340e2c946c268655a9c398 Mon Sep 17 00:00:00 2001 From: RubenPuigMoreno Date: Sat, 4 Dec 2021 21:47:46 +0100 Subject: [PATCH 03/10] feat: elimina producto --- .../app/altapersona/altapersona.component.ts | 2 -- .../detalleproducto.component.html | 20 ++++++++++++++++- .../detalleproducto.component.ts | 9 +++++++- .../src/app/producto/producto.component.html | 5 +++-- .../src/app/producto/producto.service.ts | 17 ++++++++++++++ .../controllers/ProductoController.java | 2 +- .../dao/ProductoCantidadRepository.java | 15 +++++++++++++ .../models/service/CestaServiceI.java | 3 +++ .../models/service/CestaServiceImpl.java | 10 +++++++++ .../models/service/ProductoServiceI.java | 2 ++ .../models/service/ProductoServiceImpl.java | 22 ++++++++++++++++--- 11 files changed, 97 insertions(+), 10 deletions(-) create mode 100644 ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/dao/ProductoCantidadRepository.java diff --git a/clientes-app/src/app/altapersona/altapersona.component.ts b/clientes-app/src/app/altapersona/altapersona.component.ts index bb7efbb..add1ab6 100644 --- a/clientes-app/src/app/altapersona/altapersona.component.ts +++ b/clientes-app/src/app/altapersona/altapersona.component.ts @@ -17,8 +17,6 @@ export class AltapersonaComponent implements OnInit { constructor( private altaPersonaService: AltaPersonaService, private router: Router, - private personaService: PersonaServices, - private empleadoService: EmpleadoService ) {} ngOnInit(): void { diff --git a/clientes-app/src/app/detalleproducto/detalleproducto.component.html b/clientes-app/src/app/detalleproducto/detalleproducto.component.html index ea6072b..2b81a79 100644 --- a/clientes-app/src/app/detalleproducto/detalleproducto.component.html +++ b/clientes-app/src/app/detalleproducto/detalleproducto.component.html @@ -58,12 +58,30 @@
Especificaciones
+
+ +
+
+ +
diff --git a/clientes-app/src/app/detalleproducto/detalleproducto.component.ts b/clientes-app/src/app/detalleproducto/detalleproducto.component.ts index 4c9115a..baf1ad9 100644 --- a/clientes-app/src/app/detalleproducto/detalleproducto.component.ts +++ b/clientes-app/src/app/detalleproducto/detalleproducto.component.ts @@ -17,7 +17,8 @@ export class DetalleproductoComponent implements OnInit { constructor( private productoService: ProductoService, private activatedRoute: ActivatedRoute, - private personaService: PersonaServices + private personaService: PersonaServices, + private router: Router ) {} ngOnInit(): void { @@ -46,4 +47,10 @@ export class DetalleproductoComponent implements OnInit { tienePermisos(role: string): boolean { return this.personaService.hasRole(role); } + + EliminarProducto(){ + return this.productoService.eliminarProducto(this.producto.id).subscribe( + (x) =>{this.router.navigate(['productosgrid'])} + ); + } } diff --git a/clientes-app/src/app/producto/producto.component.html b/clientes-app/src/app/producto/producto.component.html index 5a2eba9..89c04a7 100644 --- a/clientes-app/src/app/producto/producto.component.html +++ b/clientes-app/src/app/producto/producto.component.html @@ -4,7 +4,8 @@ @@ -33,7 +34,7 @@
CATEGORIA
+
- - + diff --git a/clientes-app/src/app/altaproducto/altaproducto.component.html b/clientes-app/src/app/altaproducto/altaproducto.component.html index 4f7ab6d..c4870ee 100644 --- a/clientes-app/src/app/altaproducto/altaproducto.component.html +++ b/clientes-app/src/app/altaproducto/altaproducto.component.html @@ -1,97 +1,121 @@
-
-

-

-

-

-
-
+
-
-
- -
-
- -
-
-
- - + +
+ +
+ +
+
+
+ + +
- -
- -
+ +
+ +
+
-
-
- -
- -
+
+ +
+ +
+
-
- -
- -
- -
+
+ +
+ +
+
-
-
- -
- -
+
+ +
+ +
+
-
-
-
- +
+
+ +
-
-
-
- +
+
+ +
-
+ - - - -
-
- -
- - - - - - - - - - - - - -
EspicificaciónDescripción
{{ especificacion.claveEspecificacion }}{{ especificacion.descripcionEspecificacion }}
-
+
+
+
+ + + + + + + + + + + + + +
EspicificaciónDescripción
{{ especificacion.claveEspecificacion }}{{ especificacion.descripcionEspecificacion }}
- +
- diff --git a/clientes-app/src/app/app.module.ts b/clientes-app/src/app/app.module.ts index 7ea9d58..1524ef8 100644 --- a/clientes-app/src/app/app.module.ts +++ b/clientes-app/src/app/app.module.ts @@ -30,6 +30,7 @@ import { DireccionPedidoComponent } from './direccion-pedido/direccion-pedido.co import { PasarelaComponent } from './pasarela/pasarela.component'; import { ListaPedidosComponent } from './lista-pedidos/lista-pedidos.component'; import { DespachoComponent } from './despacho/despacho.component'; +import { ConfiguracionComponent } from './configuracion/configuracion.component'; const routes: Routes = [ {path:'', redirectTo:'/productosgrid', pathMatch: 'full'}, @@ -77,7 +78,8 @@ const routes: Routes = [ DireccionPedidoComponent, PasarelaComponent, ListaPedidosComponent, - DespachoComponent + DespachoComponent, + ConfiguracionComponent ], imports: [ diff --git a/clientes-app/src/app/configuracion/configuracion.component.css b/clientes-app/src/app/configuracion/configuracion.component.css new file mode 100644 index 0000000..e69de29 diff --git a/clientes-app/src/app/configuracion/configuracion.component.html b/clientes-app/src/app/configuracion/configuracion.component.html new file mode 100644 index 0000000..e53f93a --- /dev/null +++ b/clientes-app/src/app/configuracion/configuracion.component.html @@ -0,0 +1,25 @@ + + + + + diff --git a/clientes-app/src/app/configuracion/configuracion.component.spec.ts b/clientes-app/src/app/configuracion/configuracion.component.spec.ts new file mode 100644 index 0000000..ef081a6 --- /dev/null +++ b/clientes-app/src/app/configuracion/configuracion.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { ConfiguracionComponent } from './configuracion.component'; + +describe('ConfiguracionComponent', () => { + let component: ConfiguracionComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [ ConfiguracionComponent ] + }) + .compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(ConfiguracionComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/clientes-app/src/app/configuracion/configuracion.component.ts b/clientes-app/src/app/configuracion/configuracion.component.ts new file mode 100644 index 0000000..bdc62aa --- /dev/null +++ b/clientes-app/src/app/configuracion/configuracion.component.ts @@ -0,0 +1,15 @@ +import { Component, OnInit } from '@angular/core'; + +@Component({ + selector: 'app-configuracion', + templateUrl: './configuracion.component.html', + styleUrls: ['./configuracion.component.css'] +}) +export class ConfiguracionComponent implements OnInit { + + constructor() { } + + ngOnInit(): void { + } + +} diff --git a/clientes-app/src/app/header/header.component.html b/clientes-app/src/app/header/header.component.html index 41741a7..08ab8b5 100644 --- a/clientes-app/src/app/header/header.component.html +++ b/clientes-app/src/app/header/header.component.html @@ -49,7 +49,7 @@
- +
diff --git a/clientes-app/src/app/header/header.component.ts b/clientes-app/src/app/header/header.component.ts index 96fe66f..1a43672 100644 --- a/clientes-app/src/app/header/header.component.ts +++ b/clientes-app/src/app/header/header.component.ts @@ -1,6 +1,6 @@ import { PersonaServices } from './../persona/persona.service'; import { ProductoService } from './../producto/producto.service'; -import { Component, OnInit } from '@angular/core'; +import { Component, OnChanges, OnInit, SimpleChanges } from '@angular/core'; import { Router } from '@angular/router'; import swal from 'sweetalert2' @@ -10,11 +10,16 @@ import swal from 'sweetalert2' }) -export class HeaderComponent{ +export class HeaderComponent implements OnChanges{ constructor(private personaServices: PersonaServices, private productoService: ProductoService, private router: Router){} + ngOnChanges(changes: SimpleChanges): void { + throw new Error('Method not implemented.'); + } + + logout(): void { let username = this.personaServices.usuario.username; swal.fire('Logout', `Hola ${username}, has cerrado sesión con éxito!`, 'success'); @@ -24,11 +29,9 @@ export class HeaderComponent{ title: string = 'CHRISTMASZON' - busqueda!: string; + busqueda: string; - bontonBuscar(): void{ - } irALogin(){ this.router.navigate(['login']); @@ -53,4 +56,9 @@ export class HeaderComponent{ setNombreTienda(event: Event){ this.title; } + + buscar(){ + this.productoService.setFiltro(this.busqueda) + } + } diff --git a/clientes-app/src/app/login/login.component.html b/clientes-app/src/app/login/login.component.html index 571df01..28acdc0 100644 --- a/clientes-app/src/app/login/login.component.html +++ b/clientes-app/src/app/login/login.component.html @@ -1,11 +1,12 @@ +
{{ titulo }}
-
+
-
+
-
+
- -
+
-
+
-
- ¿Aún no compras en nuestra tienda? - Registrate sin compromiso!! +
+ ¿Aún no compras en nuestra tienda? Registrate sin compromiso!!
-
+
+ +
+ +
diff --git a/clientes-app/src/app/producto-item/producto-item.component.ts b/clientes-app/src/app/producto-item/producto-item.component.ts index bfc5ee2..b18917a 100644 --- a/clientes-app/src/app/producto-item/producto-item.component.ts +++ b/clientes-app/src/app/producto-item/producto-item.component.ts @@ -55,5 +55,12 @@ export class ProductoItemComponent implements OnInit { } + eliminaImagen(imagen: string){ + this.productoService.eliminarImagen(imagen).subscribe(producto => { + this.producto = producto; + }); + } + + } diff --git a/clientes-app/src/app/producto/producto.service.ts b/clientes-app/src/app/producto/producto.service.ts index b99fdaf..3b408cd 100644 --- a/clientes-app/src/app/producto/producto.service.ts +++ b/clientes-app/src/app/producto/producto.service.ts @@ -21,11 +21,14 @@ export class ProductoService { private urlProductoNuevo: string = 'http://localhost:8090/api/productos/producto/nuevo'; private urlEndPoint: string = 'http://localhost:8090/api/productos/producto'; - private urlEliminarProducto: string = 'http://localhost:8090/api/productos/producto/borrar'; + private urlEliminarProducto: string = + 'http://localhost:8090/api/productos/producto/borrar'; + private urlEliminarImagen: string = + 'http://localhost:8090/api/productos/producto/borrar-imagen'; private httpHeaders = new HttpHeaders({ 'Content-Type': 'application/json' }); - private filtro: string; + busqueda: string; constructor( private http: HttpClient, @@ -110,6 +113,7 @@ export class ProductoService { ); } + private isNoAutorizado(e: { status: number }): boolean { if (e.status == 401) { if (this.personaServices.isAuthenticated()) { @@ -120,23 +124,39 @@ export class ProductoService { } if (e.status == 403) { - swal.fire('Error', 'Acceso Denegaod', 'warning') + swal.fire('Error', 'Acceso Denegaod', 'warning'); return true; } return false; } - setFiltro(filtro: string){ - - this.filtro = filtro + setFiltro(busqueda: string) { + this.busqueda = busqueda; } - eliminarProducto(id: number): Observable{ + getFiltro(busqueda: string) { + return this.busqueda; + } - return this.http + eliminarProducto(id: number): Observable { + return this.http .delete(`${this.urlEliminarProducto}/${id}`, { - headers: this.agregarAuthorizationHeader() + headers: this.agregarAuthorizationHeader(), + }) + .pipe( + catchError((e) => { + console.error(e.error.mensaje); + swal.fire('No se pudo borra el producto', e.error.mensaje, 'error'); + return throwError(e); + }) + ); + } + eliminarImagen(imagen: string): Observable { + console.log(this.urlEliminarImagen+'/'+imagen) + return this.http + .delete(`${this.urlEliminarImagen}/${imagen}`, { + headers: this.agregarAuthorizationHeader(), }) .pipe( catchError((e) => { @@ -145,6 +165,5 @@ export class ProductoService { return throwError(e); }) ); - } } diff --git a/clientes-app/src/app/productosgrid/productosgrid.component.ts b/clientes-app/src/app/productosgrid/productosgrid.component.ts index 4f29f5b..6b3ce5b 100644 --- a/clientes-app/src/app/productosgrid/productosgrid.component.ts +++ b/clientes-app/src/app/productosgrid/productosgrid.component.ts @@ -19,14 +19,20 @@ export class ProductosgridComponent implements OnInit { this.productoService.getProductos().subscribe( productos => this.productos= productos ) - + if(this.productoService.getFiltro!=null){ + this.buscarProductosPorNombre() + } } agregarProducto(producto: Producto){ this.productos.push(producto); } - buscarProductosPorNombre(event: Event): void { + buscarProductosPorNombre(): void { + this.productoService.getFiltro; + this.productos= this.productos.filter(x=>x.nombre === '%{{this.productoService.getFiltro}}%') } + + } diff --git a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/controllers/CestaController.java b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/controllers/CestaController.java index 0111c11..435e012 100644 --- a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/controllers/CestaController.java +++ b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/controllers/CestaController.java @@ -12,12 +12,15 @@ import net.ostemplate.app.productos.models.entity.Cesta; import net.ostemplate.app.productos.models.service.CestaServiceImpl; +import net.ostemplate.app.productos.models.service.ImagenProductoI; @RestController public class CestaController { @Autowired private CestaServiceImpl cestaServiceImpl; + + @GetMapping("/cesta/recupera-cesta/{idUsuario}") diff --git a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/controllers/ProductoController.java b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/controllers/ProductoController.java index e929c2b..cc493ce 100644 --- a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/controllers/ProductoController.java +++ b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/controllers/ProductoController.java @@ -1,5 +1,6 @@ package net.ostemplate.app.productos.controllers; +import java.io.File; import java.io.IOException; import java.net.MalformedURLException; import java.nio.file.Files; @@ -20,7 +21,6 @@ import org.springframework.http.HttpHeaders; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.CrossOrigin; import org.springframework.web.bind.annotation.DeleteMapping; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; @@ -35,6 +35,7 @@ import net.ostemplate.app.productos.models.entity.ImagenProducto; import net.ostemplate.app.productos.models.entity.Producto; import net.ostemplate.app.productos.models.entity.ProductoCaracteristicas; +import net.ostemplate.app.productos.models.service.ImagenProductoI; import net.ostemplate.app.productos.models.service.ProductoServiceI; @RestController @@ -45,6 +46,9 @@ public class ProductoController { @Autowired private ProductoServiceI productoService; + @Autowired + private ImagenProductoI imagenProductoI; + @GetMapping("/lista") public List listar(){ return productoService.findAll(); @@ -127,6 +131,13 @@ public ResponseEntity subidaImagen (@RequestParam ("archivo") MultipartFile a } + + @DeleteMapping("producto/borrar-imagen/{imagen}") + public void eliminarImagen(@PathVariable("imagen")String imagen) { + imagenProductoI.borrarImagen(imagen); + + } + @GetMapping("/producto/imagen/{nombreFoto:.+}") public ResponseEntity verFoto (@PathVariable String nombreFoto){ Path rutaArchivo = Paths.get("uploads").resolve(nombreFoto).toAbsolutePath(); diff --git a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/dao/ImagenProductoDao.java b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/dao/ImagenProductoDao.java new file mode 100644 index 0000000..cb654a3 --- /dev/null +++ b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/dao/ImagenProductoDao.java @@ -0,0 +1,11 @@ +package net.ostemplate.app.productos.models.dao; + +import org.springframework.data.repository.CrudRepository; + +import net.ostemplate.app.productos.models.entity.ImagenProducto; + +public interface ImagenProductoDao extends CrudRepository{ + + void deleteByImagen(String imagen); + +} diff --git a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/ImagenProductoI.java b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/ImagenProductoI.java new file mode 100644 index 0000000..7901618 --- /dev/null +++ b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/ImagenProductoI.java @@ -0,0 +1,8 @@ +package net.ostemplate.app.productos.models.service; + +public interface ImagenProductoI { + + + void borrarImagen(String imagen); + +} diff --git a/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/ImagenProductoServiceImpl.java b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/ImagenProductoServiceImpl.java new file mode 100644 index 0000000..65d816b --- /dev/null +++ b/ectemplate-servicio-productos/src/main/java/net/ostemplate/app/productos/models/service/ImagenProductoServiceImpl.java @@ -0,0 +1,33 @@ +package net.ostemplate.app.productos.models.service; + +import java.io.File; +import java.nio.file.Path; +import java.nio.file.Paths; + +import javax.transaction.Transactional; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import net.ostemplate.app.productos.models.dao.ImagenProductoDao; +import net.ostemplate.app.productos.models.entity.ImagenProducto; + +@Service +public class ImagenProductoServiceImpl implements ImagenProductoI { + + @Autowired + private ImagenProductoDao imagenProductoDao; + + @Override + @Transactional + public void borrarImagen (String imagen) { + Path rutaFotoAnterior = Paths.get("uploads").resolve(imagen).toAbsolutePath(); + File archivoFotoAnterior = rutaFotoAnterior.toFile(); + if(archivoFotoAnterior.exists() && archivoFotoAnterior.canRead()) { + archivoFotoAnterior.delete(); + } + imagenProductoDao.deleteByImagen(imagen); + + } + +} From 34352c8be613a40d7b6b21817b974d2d03023add Mon Sep 17 00:00:00 2001 From: RubenPuigMoreno Date: Sun, 5 Dec 2021 18:27:34 +0100 Subject: [PATCH 05/10] feat: cambia nombre tienda --- clientes-app/src/app/app.module.ts | 3 +- .../configuracion.component.html | 42 +++++++++---------- .../configuracion/configuracion.component.ts | 22 +++++++++- .../src/app/configuracion/tienda.model.ts | 4 ++ .../src/app/header/header.component.html | 4 +- .../src/app/header/header.component.ts | 29 ++++++++++--- .../src/app/producto/producto.service.ts | 39 +++++++++++++++++ .../controllers/TiendaController.java | 13 ++++-- .../app/productos/models/entity/Tienda.java | 5 --- .../models/service/TiendaServiceI.java | 6 ++- .../models/service/TiendaServiceImpl.java | 25 +++++++---- 11 files changed, 143 insertions(+), 49 deletions(-) create mode 100644 clientes-app/src/app/configuracion/tienda.model.ts diff --git a/clientes-app/src/app/app.module.ts b/clientes-app/src/app/app.module.ts index 1524ef8..df68ab6 100644 --- a/clientes-app/src/app/app.module.ts +++ b/clientes-app/src/app/app.module.ts @@ -50,7 +50,8 @@ const routes: Routes = [ {path:'direccion/:id', component: DireccionPedidoComponent}, {path:'pasarela/:id', component: PasarelaComponent}, {path:'listapedidos', component: ListaPedidosComponent}, - {path:'despacho', component: DespachoComponent} + {path:'despacho', component: DespachoComponent}, + {path:'configuracion', component: ConfiguracionComponent} ]; @NgModule({ diff --git a/clientes-app/src/app/configuracion/configuracion.component.html b/clientes-app/src/app/configuracion/configuracion.component.html index e53f93a..6b09b52 100644 --- a/clientes-app/src/app/configuracion/configuracion.component.html +++ b/clientes-app/src/app/configuracion/configuracion.component.html @@ -1,25 +1,23 @@ - - - - - diff --git a/clientes-app/src/app/empleados/empleados.component.ts b/clientes-app/src/app/empleados/empleados.component.ts index 31f9bdb..ebe5389 100644 --- a/clientes-app/src/app/empleados/empleados.component.ts +++ b/clientes-app/src/app/empleados/empleados.component.ts @@ -1,3 +1,4 @@ +import { PersonaServices } from './../persona/persona.service'; import swal from 'sweetalert2'; import { Router } from '@angular/router'; import { Usuario } from './../login/usuario.model'; @@ -14,7 +15,8 @@ export class EmpleadosComponent implements OnInit { usuario: Usuario; - constructor(private empleadoService: EmpleadoService, private router:Router) { + constructor(private empleadoService: EmpleadoService, private router:Router, + private personaService: PersonaServices) { } ngOnInit(): void { @@ -27,13 +29,17 @@ export class EmpleadosComponent implements OnInit { guaradarEmpleado(): void{ console.log('entra' + this.usuario) this.empleadoService.guardarEmpleado(this.usuario).subscribe( - response => {this.usuario = response} - ); - swal.fire("Guardado!!", "Se han guardado los cambios", "success") + response => {this.usuario = response + } + ); + this.personaService.logout(); + swal.fire("Guardado!!", "Se han guardado los cambios y hemos cerrado la sesión por seguridad", "success") + this.router.navigate(['/login']); } + getUsuario(): Usuario{ return this.usuario; } diff --git a/clientes-app/src/app/header/header.component.html b/clientes-app/src/app/header/header.component.html index 4897d73..24b0f46 100644 --- a/clientes-app/src/app/header/header.component.html +++ b/clientes-app/src/app/header/header.component.html @@ -48,10 +48,6 @@ -
- - -