Commit 0e817b67e5c2696d5693700f73fe870ac18e82a0
1 parent
a36af12088
Exists in
develop
arreglo pago-tarjeta
Showing
2 changed files
with
9 additions
and
9 deletions
Show diff stats
src/app/modules/pago-tarjeta/pago-tarjeta.component.html
| 1 | <div class="h-92 bg-white fade-in-left"> | 1 | <div class="h-92 bg-white fade-in-left"> |
| 2 | <div class="row mx-0 h-15"> | 2 | <div class="row mx-0 h-15"> |
| 3 | <div class="col-12 px-0 h-80 my-auto"> | 3 | <div class="col-12 px-0 h-80 my-auto"> |
| 4 | <img | 4 | <img |
| 5 | draggable="false" | 5 | draggable="false" |
| 6 | ondragstart="return false;" | 6 | ondragstart="return false;" |
| 7 | (contextmenu)="false" | 7 | (contextmenu)="false" |
| 8 | class="d-block mx-auto h-100" | 8 | class="d-block mx-auto h-100" |
| 9 | src="assets/img/logo-spot.svg"> | 9 | src="assets/img/logo-spot.svg"> |
| 10 | </div> | 10 | </div> |
| 11 | </div> | 11 | </div> |
| 12 | <div class="h-85 pago-tarjeta"> | 12 | <div class="h-85 pago-tarjeta"> |
| 13 | <div class="row h-50 mx-0 justify-content-center text-center"> | 13 | <div class="row h-50 mx-0 justify-content-center text-center"> |
| 14 | <div class="col-7 p-5 h-auto align-self-end border border-secondary rounded"> | 14 | <div class="col-7 p-5 h-auto align-self-end border border-secondary rounded"> |
| 15 | <img | 15 | <img |
| 16 | draggable="false" | 16 | draggable="false" |
| 17 | ondragstart="return false;" | 17 | ondragstart="return false;" |
| 18 | (contextmenu)="false" | 18 | (contextmenu)="false" |
| 19 | class="img-in-top px-4 bg-white" | 19 | class="img-in-top px-4 bg-white" |
| 20 | src="assets/img/icono-tarjetas.svg"> | 20 | src="assets/img/icono-tarjetas.svg"> |
| 21 | <p class="h6 m-0">AHORA ESPERE QUE SE ACTIVE EL POSNET</p> | 21 | <p class="h6 m-0">AHORA ESPERÁ QUE SE ACTIVE EL POSNET</p> |
| 22 | <p class="h2 mb-3 text-secondary"> | 22 | <p class="h2 mb-3 text-secondary"> |
| 23 | deslice su tarjeta | 23 | deslice su tarjeta |
| 24 | </p> | 24 | </p> |
| 25 | <p class="h6 m-0">Y SIGA LAS INSTRUCCIONES DEL LECTOR</p> | 25 | <p class="h6 m-0">Y SEGUÍ LAS INSTRUCCIONES DEL LECTOR</p> |
| 26 | </div> | 26 | </div> |
| 27 | </div> | 27 | </div> |
| 28 | <div class="row mt-5 justify-content-center arrow-slide arrow-delay-1"> | 28 | <div class="row mt-5 justify-content-center arrow-slide arrow-delay-1"> |
| 29 | <div class="col-1"> | 29 | <div class="col-1"> |
| 30 | <img | 30 | <img |
| 31 | draggable="false" | 31 | draggable="false" |
| 32 | ondragstart="return false;" | 32 | ondragstart="return false;" |
| 33 | (contextmenu)="false" | 33 | (contextmenu)="false" |
| 34 | class="img-fluid" | 34 | class="img-fluid" |
| 35 | src="assets/img/down-chevron.svg"> | 35 | src="assets/img/down-chevron.svg"> |
| 36 | </div> | 36 | </div> |
| 37 | </div> | 37 | </div> |
| 38 | <div class="row justify-content-center arrow-slide arrow-delay-2"> | 38 | <div class="row justify-content-center arrow-slide arrow-delay-2"> |
| 39 | <div class="col-1"> | 39 | <div class="col-1"> |
| 40 | <img | 40 | <img |
| 41 | draggable="false" | 41 | draggable="false" |
| 42 | ondragstart="return false;" | 42 | ondragstart="return false;" |
| 43 | (contextmenu)="false" | 43 | (contextmenu)="false" |
| 44 | class="img-fluid" | 44 | class="img-fluid" |
| 45 | src="assets/img/down-chevron.svg"> | 45 | src="assets/img/down-chevron.svg"> |
| 46 | </div> | 46 | </div> |
| 47 | </div> | 47 | </div> |
| 48 | <div class="row justify-content-center arrow-slide arrow-delay-3"> | 48 | <div class="row justify-content-center arrow-slide arrow-delay-3"> |
| 49 | <div class="col-1"> | 49 | <div class="col-1"> |
| 50 | <img | 50 | <img |
| 51 | draggable="false" | 51 | draggable="false" |
| 52 | ondragstart="return false;" | 52 | ondragstart="return false;" |
| 53 | (contextmenu)="false" | 53 | (contextmenu)="false" |
| 54 | class="img-fluid" | 54 | class="img-fluid" |
| 55 | src="assets/img/down-chevron.svg"> | 55 | src="assets/img/down-chevron.svg"> |
| 56 | </div> | 56 | </div> |
| 57 | </div> | 57 | </div> |
| 58 | </div> | 58 | </div> |
| 59 | </div> | 59 | </div> |
| 60 | 60 | ||
| 61 | <ng-template #template> | 61 | <ng-template #template> |
| 62 | <div class="modal-body rounded bg-primary"> | 62 | <div class="modal-body rounded bg-primary"> |
| 63 | <h1 class="text-white text-center my-4">Por favor,<br>espera un momento</h1> | 63 | <h1 class="text-white text-center my-4">Por favor,<br>esperá un momento</h1> |
| 64 | <div class="d-flex justify-content-center mt-2 mb-4"> | 64 | <div class="d-flex justify-content-center mt-2 mb-4"> |
| 65 | <div class="spinner-border text-white text-center" role="status"> | 65 | <div class="spinner-border text-white text-center" role="status"> |
| 66 | <span class="sr-only">Loading...</span> | 66 | <span class="sr-only">Loading...</span> |
| 67 | </div> | 67 | </div> |
| 68 | </div> | 68 | </div> |
| 69 | </div> | 69 | </div> |
| 70 | </ng-template> | 70 | </ng-template> |
| 71 |
src/app/modules/pago-tarjeta/pago-tarjeta.component.ts
| 1 | import { Component, OnInit, TemplateRef, OnDestroy, ViewChild } from '@angular/core'; | 1 | import { Component, OnInit, TemplateRef, OnDestroy, ViewChild } from '@angular/core'; |
| 2 | import { ArticuloService } from 'src/app/services/articulo/articulo.service'; | 2 | import { ArticuloService } from 'src/app/services/articulo/articulo.service'; |
| 3 | import { Router } from '@angular/router'; | 3 | import { Router } from '@angular/router'; |
| 4 | import { BsModalService, BsModalRef } from 'ngx-bootstrap/modal'; | 4 | import { BsModalService } from 'ngx-bootstrap/modal'; |
| 5 | import { ErrorFormaPagoComponent } from 'src/app/shared/error-forma-pago/error-forma-pago.component'; | 5 | import { ErrorFormaPagoComponent } from 'src/app/shared/error-forma-pago/error-forma-pago.component'; |
| 6 | 6 | ||
| 7 | @Component({ | 7 | @Component({ |
| 8 | selector: 'app-pago-tarjeta', | 8 | selector: 'app-pago-tarjeta', |
| 9 | templateUrl: './pago-tarjeta.component.html', | 9 | templateUrl: './pago-tarjeta.component.html', |
| 10 | styleUrls: ['./pago-tarjeta.component.scss'] | 10 | styleUrls: ['./pago-tarjeta.component.scss'] |
| 11 | }) | 11 | }) |
| 12 | export class PagoTarjetaComponent implements OnInit, OnDestroy { | 12 | export class PagoTarjetaComponent implements OnInit, OnDestroy { |
| 13 | timer: any; | 13 | timer: any; |
| 14 | @ViewChild('template', {static: true}) public template: TemplateRef<any>; | 14 | @ViewChild('template', {static: true}) public template: TemplateRef<any>; |
| 15 | modalRef: BsModalRef; | ||
| 16 | 15 | ||
| 17 | constructor( | 16 | constructor( |
| 18 | private articuloService: ArticuloService, | 17 | private articuloService: ArticuloService, |
| 19 | private router: Router, | 18 | private router: Router, |
| 20 | private modalService: BsModalService, | 19 | private modalService: BsModalService, |
| 21 | ) { } | 20 | ) { } |
| 22 | 21 | ||
| 23 | ngOnInit() { | 22 | ngOnInit() { |
| 24 | if (!this.articuloService.carrito.length) { | 23 | if (!this.articuloService.carrito.length) { |
| 25 | this.router.navigate(['']); | 24 | this.router.navigate(['']); |
| 26 | return; | 25 | return; |
| 27 | } | 26 | } |
| 28 | this.openModalEspera(this.template); | 27 | this.openModalEspera(this.template); |
| 29 | const dataPago = { | 28 | const dataPago = { |
| 30 | pedidoAnombreDe: '' | 29 | pedidoAnombreDe: '' |
| 31 | }; | 30 | }; |
| 32 | this.articuloService.pay(dataPago) | 31 | this.articuloService.pay(dataPago) |
| 33 | .subscribe((res: any) => { | 32 | .subscribe((res: any) => { |
| 34 | this.modalRef.hide(); | ||
| 35 | this.articuloService.idComanda = res.data; | 33 | this.articuloService.idComanda = res.data; |
| 36 | this.router.navigate(['mensaje-final']); | 34 | this.router.navigate(['mensaje-final']); |
| 37 | }, (err) => { | 35 | }, (err) => { |
| 38 | this.modalRef.hide(); | ||
| 39 | this.modalService.show(ErrorFormaPagoComponent, { | 36 | this.modalService.show(ErrorFormaPagoComponent, { |
| 40 | class: 'modal-lg modal-dialog-centered', | 37 | class: 'modal-lg modal-dialog-centered', |
| 41 | ignoreBackdropClick: true, | 38 | ignoreBackdropClick: true, |
| 42 | }); | 39 | }); |
| 43 | }); | 40 | }); |
| 44 | this.mediaPantalla(); | 41 | this.mediaPantalla(); |
| 45 | } | 42 | } |
| 46 | 43 | ||
| 47 | ngOnDestroy() { | 44 | ngOnDestroy() { |
| 48 | if (this.timer) clearTimeout(this.timer); | 45 | if (this.timer) clearTimeout(this.timer); |
| 49 | for (let i = 1; i <= this.modalService.getModalsCount(); i++) { | 46 | for (let i = 1; i <= this.modalService.getModalsCount(); i++) { |
| 50 | this.modalService.hide(i); | 47 | this.modalService.hide(i); |
| 51 | } | 48 | } |
| 52 | } | 49 | } |
| 53 | 50 | ||
| 54 | mediaPantalla() { | 51 | mediaPantalla() { |
| 55 | if ($('body').hasClass('media-pantalla')) { | 52 | if ($('body').hasClass('media-pantalla')) { |
| 56 | $('.pago-tarjeta').addClass('media-pantalla'); | 53 | $('.pago-tarjeta').addClass('media-pantalla'); |
| 57 | } | 54 | } |
| 58 | } | 55 | } |
| 59 | 56 | ||
| 60 | openModalEspera(templateRef: TemplateRef<any>) { | 57 | openModalEspera(templateRef: TemplateRef<any>) { |
| 61 | this.modalRef = this.modalService.show(templateRef, { class: 'modal-lg modal-dialog-centered' }); | 58 | const modalRef = this.modalService.show(templateRef, { class: 'modal-lg modal-dialog-centered' }); |
| 59 | this.timer = setTimeout(() => { | ||
| 60 | modalRef.hide(); | ||
| 61 | }, 6000); |