From 3c0f21ce4aa39919200c2ff0a673e90d422c8da6 Mon Sep 17 00:00:00 2001 From: Facundo Sosa Date: Thu, 25 Mar 2021 21:37:07 -0300 Subject: [PATCH 1/7] Agrega el componente de transferencia-bancaria. --- .../transferencia-bancaria.component.html | 49 +++++++++ .../transferencia-bancaria.component.scss | 59 ++++++++++ .../transferencia-bancaria.component.ts | 103 ++++++++++++++++++ src/app/models/nuevo-recibo.ts | 4 + src/app/services/pagos.service.ts | 5 + src/app/services/pedidos.service.ts | 5 + src/app/sic-com.module.ts | 2 + src/app/sic-com.routing.ts | 2 + 8 files changed, 229 insertions(+) create mode 100644 src/app/components/transferencia-bancaria/transferencia-bancaria.component.html create mode 100644 src/app/components/transferencia-bancaria/transferencia-bancaria.component.scss create mode 100644 src/app/components/transferencia-bancaria/transferencia-bancaria.component.ts create mode 100644 src/app/models/nuevo-recibo.ts diff --git a/src/app/components/transferencia-bancaria/transferencia-bancaria.component.html b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.html new file mode 100644 index 00000000..ad810912 --- /dev/null +++ b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.html @@ -0,0 +1,49 @@ +
+
+
+

Transferencia asociada al pedido #{{ pedido.nroPedido }}

+
    +
  1. +

    Realice la transferencia por el monto especificado, a los datos de la siguiente cuenta:

    +
      +
    • Alias: globo.de.oro
    • +
    • CBU: 123456789012345
    • +
    • Nombre: Globo Distribuciones S.R.L.
    • +
    +
  2. +
  3. +

    + Adjunte el comprobante haciendo click en botón "Adjuntar comprobante". + El comprobante puede ser una foto del ticket emitido por el cajero o bien el archivo electrónico + si la transferencia se ha realizado via online. + Una vez que se ha seleccionado el archivo, aparecerá previsualizado y se activará el botón "Enviar comprobante" +

    +
  4. +
  5. +

    Para terminar con la operación haga click en el botón "Enviar Comprobante".

    +
  6. +
+
+
+
+ Imagen del comprobante +
+
+ + +
+
+
+
+ + +
+
+ +
+
+ + diff --git a/src/app/components/transferencia-bancaria/transferencia-bancaria.component.scss b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.scss new file mode 100644 index 00000000..6bf71753 --- /dev/null +++ b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.scss @@ -0,0 +1,59 @@ +@import "../../../_colors.scss"; +.sic-com-transferencia-bancaria { + .titulo { + font-size: 1.5rem; + font-weight: 500; + margin-top: 0; + margin-bottom: 0.5rem; + text-align: center; + } + ol.descripcion { + padding-left: 1.5rem; + margin-top: 0; + } + ul.datos-cuenta { + list-style: none; + padding-left: 0; + margin-top: 0; + margin-bottom: 1rem; + .label { + font-weight: 500; + } + } + .preview { + height: 20rem; + width: 20rem; + display: flex; + align-items: center; + justify-content: center; + margin-bottom: 1rem; + border: 2px dashed lightgray; + &.no-border { + border: none; + } + img { + max-width: 100%; + max-height: 100%; + object-fit: contain; + } + } + .file-input { + display: none; + } + + .contenido { + margin-bottom: 1rem; + background-color: white; + padding: 1rem; + } + + /*&.desktop { + .preview { + height: 15rem; + } + }*/ + .sic-com-spinner-container { + height: 90px; + color: $color-primary; + } +} diff --git a/src/app/components/transferencia-bancaria/transferencia-bancaria.component.ts b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.ts new file mode 100644 index 00000000..78aba8c5 --- /dev/null +++ b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.ts @@ -0,0 +1,103 @@ +import { Component, OnInit } from '@angular/core'; +import { PedidosService } from '../../services/pedidos.service'; +import { ActivatedRoute, Router } from '@angular/router'; +import { finalize } from 'rxjs/operators'; +import { Pedido } from '../../models/pedido'; +import { AvisoService } from '../../services/aviso.service'; +import { EstadoPedido } from '../../models/estado.pedido'; +import { NuevoRecibo } from '../../models/nuevo-recibo'; +import { PagosService } from '../../services/pagos.service'; + +@Component({ + selector: 'sic-com-transferencia-bancaria', + templateUrl: './transferencia-bancaria.component.html', + styleUrls: ['./transferencia-bancaria.component.scss'] +}) +export class TransferenciaBancariaComponent implements OnInit { + imageDataUrl = ''; + imagen: number[] = []; + loading = false; + pedido: Pedido = null; + + constructor(private route: ActivatedRoute, + private pedidosService: PedidosService, + private avisoService: AvisoService, + private router: Router, + private pagosService: PagosService) { + } + + ngOnInit() { + const idPedido = Number(this.route.snapshot.queryParams['idPedido']); + if (idPedido) { + this.loading = true; + this.pedidosService.getPedido(idPedido) + .pipe(finalize(() => this.loading = false)) + .subscribe( + (pedido: Pedido) => { + if (pedido.estado !== EstadoPedido.ABIERTO) { + const msg = [ + 'El pedido #', pedido.nroPedido, + 'se encuentra en estado ', pedido.estado, '. ', + 'Sole se pueden realizar transferencias a pedidos en estado ', EstadoPedido.ABIERTO, '.' + ].join(''); + this.avisoService.openSnackBar(msg, 'Cerrar', 0).afterDismissed().subscribe( + () => this.router.navigate(['']) + ); + } else { + this.pedido = pedido; + } + }, + err => { + this.avisoService.openSnackBar(err.error, 'Cerrar', 0); + this.router.navigate(['']); + } + ) + ; + } + } + + imageChange($event) { + if (!$event.target.files.length) { + return; + } + + const file = $event.target.files[0]; + const readerBuffer = new FileReader(); + const readerDataUrl = new FileReader(); + + readerBuffer.addEventListener('load', () => { + const arr = new Uint8Array(readerBuffer.result as ArrayBuffer); + this.imagen = Array.from(arr); + }); + + readerDataUrl.addEventListener('load', () => { + this.imageDataUrl = readerDataUrl.result as string; + }); + + readerBuffer.readAsArrayBuffer(file); + readerDataUrl.readAsDataURL(file); + } + + aceptar() { + if (this.imagen.length) { + const nr: NuevoRecibo = { + imagen: this.imagen, + idPedido: this.pedido ? this.pedido.idPedido : null, + }; + + this.loading = true; + this.pagosService.pagoTransferencia(nr) + .pipe(finalize(() => this.loading = false)) + .subscribe( + () => { + const msg = 'Comprobante recibido correctamente.'; + this.avisoService.openSnackBar(msg, 'Cerrar', 0).afterDismissed().subscribe( + () => this.router.navigate(['/perfil']) + ); + }, + err => this.avisoService.openSnackBar(err.error, 'Cerrar', 0), + ) + ; + } + } +} diff --git a/src/app/models/nuevo-recibo.ts b/src/app/models/nuevo-recibo.ts new file mode 100644 index 00000000..57223d7a --- /dev/null +++ b/src/app/models/nuevo-recibo.ts @@ -0,0 +1,4 @@ +export interface NuevoRecibo { + imagen?: number[]; + idPedido?: number; +} diff --git a/src/app/services/pagos.service.ts b/src/app/services/pagos.service.ts index 763814b3..1d6fee1a 100644 --- a/src/app/services/pagos.service.ts +++ b/src/app/services/pagos.service.ts @@ -5,6 +5,7 @@ import {HttpClient} from '@angular/common/http'; import {NuevoPagoMercadoPago} from '../models/mercadopago/nuevo-pago-mercado-pago'; import {NuevaOrdenDePago} from '../models/nueva-orden-de-pago'; import {MercadoPagoPreference} from '../models/mercadopago/mercado-pago-preference'; +import { NuevoRecibo } from '../models/nuevo-recibo'; @Injectable() @@ -21,4 +22,8 @@ export class PagosService { getMercadoPagoPreference(nuevaOrdenDePago: NuevaOrdenDePago): Observable { return this.http.post(this.url + '/mercado-pago/preference', nuevaOrdenDePago); } + + pagoTransferencia(nr: NuevoRecibo): Observable { + return this.http.post(`${this.url}/transferencia`, nr); + } } diff --git a/src/app/services/pedidos.service.ts b/src/app/services/pedidos.service.ts index 5587a27d..acbdd0b9 100644 --- a/src/app/services/pedidos.service.ts +++ b/src/app/services/pedidos.service.ts @@ -13,6 +13,11 @@ export class PedidosService { constructor(private http: HttpClient) {} + + getPedido(idPedido: number): Observable { + return this.http.get(`${this.url}/${idPedido}`); + } + getPedidosCliente(cliente: Cliente, pagina: number) { return this.http.post(this.urlBusqueda, {idCliente: cliente.idCliente, pagina: pagina}); } diff --git a/src/app/sic-com.module.ts b/src/app/sic-com.module.ts index c6517d91..3999cf63 100644 --- a/src/app/sic-com.module.ts +++ b/src/app/sic-com.module.ts @@ -71,6 +71,7 @@ import { SvgButtonComponent } from './components/svg-button/svg-button.component import { ProductosEnOfertaSliderComponent } from './components/productos-en-oferta-slider/productos-en-oferta-slider.component'; import { ProductosRecomendadosSliderComponent } from './components/productos-recomendados-slider/productos-recomendados-slider.component'; import { MenuComponent } from './components/menu/menu.component'; +import { TransferenciaBancariaComponent } from './components/transferencia-bancaria/transferencia-bancaria.component'; registerLocaleData(localeEs, 'es-AR', localeEsExtra); @@ -117,6 +118,7 @@ registerLocaleData(localeEs, 'es-AR', localeEsExtra); ProductosEnOfertaSliderComponent, ProductosRecomendadosSliderComponent, MenuComponent, + TransferenciaBancariaComponent, ], imports: [ GtagModule.forRoot({ trackingId: 'UA-132433044-1', trackPageviews: true }), diff --git a/src/app/sic-com.routing.ts b/src/app/sic-com.routing.ts index 6e7e3f71..2ad59196 100644 --- a/src/app/sic-com.routing.ts +++ b/src/app/sic-com.routing.ts @@ -15,6 +15,7 @@ import {RegistracionRealizadaComponent} from './components/registracion-realizad import {CheckoutStatusComponent} from './components/checkout-status/checkout-status.component'; import { RubrosDialogComponent } from './components/rubros-dialog/rubros-dialog.component'; import { FavoritosComponent } from './components/favoritos/favoritos.component'; +import { TransferenciaBancariaComponent } from './components/transferencia-bancaria/transferencia-bancaria.component'; const sicComRoutes: Routes = [ {path: 'login', component: LoginComponent}, @@ -37,6 +38,7 @@ const sicComRoutes: Routes = [ {path: 'checkout', component: CheckoutComponent}, {path: 'checkout/:status', component: CheckoutStatusComponent}, {path: 'productos/favoritos', component: FavoritosComponent}, + {path: 'pagos/transferencia', component: TransferenciaBancariaComponent}, ] }, {path: '**', redirectTo: ''} From 7c468fede868bd605ff007c354585c46abae5704 Mon Sep 17 00:00:00 2001 From: Facundo Sosa Date: Wed, 31 Mar 2021 21:21:12 -0300 Subject: [PATCH 2/7] - Agrega formulario y los campos monto y concepto en el componente de transferencia-bancaria. - Agrega el service de recibos. --- .../transferencia-bancaria.component.html | 99 +++++++++++-------- .../transferencia-bancaria.component.scss | 2 +- .../transferencia-bancaria.component.ts | 43 ++++++-- src/app/models/nuevo-recibo-deposito.ts | 7 ++ src/app/models/nuevo-recibo.ts | 4 - src/app/services/pagos.service.ts | 6 -- src/app/services/recibos.service.ts | 19 ++++ 7 files changed, 120 insertions(+), 60 deletions(-) create mode 100644 src/app/models/nuevo-recibo-deposito.ts delete mode 100644 src/app/models/nuevo-recibo.ts create mode 100644 src/app/services/recibos.service.ts diff --git a/src/app/components/transferencia-bancaria/transferencia-bancaria.component.html b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.html index ad810912..23e9a1f5 100644 --- a/src/app/components/transferencia-bancaria/transferencia-bancaria.component.html +++ b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.html @@ -1,46 +1,67 @@
-
-
-

Transferencia asociada al pedido #{{ pedido.nroPedido }}

-
    -
  1. -

    Realice la transferencia por el monto especificado, a los datos de la siguiente cuenta:

    -
      -
    • Alias: globo.de.oro
    • -
    • CBU: 123456789012345
    • -
    • Nombre: Globo Distribuciones S.R.L.
    • -
    -
  2. -
  3. -

    - Adjunte el comprobante haciendo click en botón "Adjuntar comprobante". - El comprobante puede ser una foto del ticket emitido por el cajero o bien el archivo electrónico - si la transferencia se ha realizado via online. - Una vez que se ha seleccionado el archivo, aparecerá previsualizado y se activará el botón "Enviar comprobante" -

    -
  4. -
  5. -

    Para terminar con la operación haga click en el botón "Enviar Comprobante".

    -
  6. -
-
-
-
- Imagen del comprobante +
+
+
+

Transferencia asociada al pedido #{{ pedido.nroPedido }}

+
    +
  1. +

    Realice la transferencia por el monto especificado, a los datos de la siguiente cuenta:

    +
      +
    • Alias: globo.de.oro
    • +
    • CBU: 123456789012345
    • +
    • Nombre: Globo Distribuciones S.R.L.
    • +
    +
  2. +
  3. +

    + Adjunte el comprobante haciendo click en botón "Adjuntar comprobante". + El comprobante puede ser una foto del ticket emitido por el cajero o bien el archivo electrónico + si la transferencia se ha realizado via online. + Una vez que se ha seleccionado el archivo, aparecerá previsualizado y se activará el botón "Enviar comprobante" +

    +
  4. +
  5. +

    Para terminar con la operación haga click en el botón "Enviar Comprobante".

    +
  6. +
-
- - +
+ + + + Requerido + + + Mínimo $ {{ form.get('monto').getError('min').min }} + + + + + + Requerido + + +
+
+ Imagen del comprobante +
+
Requerido
+
+ +
+ + +
-
-
- - -
+
+ + +
+
diff --git a/src/app/components/transferencia-bancaria/transferencia-bancaria.component.scss b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.scss index 6bf71753..f687e8b3 100644 --- a/src/app/components/transferencia-bancaria/transferencia-bancaria.component.scss +++ b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.scss @@ -26,7 +26,7 @@ display: flex; align-items: center; justify-content: center; - margin-bottom: 1rem; + margin-bottom: 0.5rem; border: 2px dashed lightgray; &.no-border { border: none; diff --git a/src/app/components/transferencia-bancaria/transferencia-bancaria.component.ts b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.ts index 78aba8c5..4a2c514d 100644 --- a/src/app/components/transferencia-bancaria/transferencia-bancaria.component.ts +++ b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.ts @@ -5,8 +5,9 @@ import { finalize } from 'rxjs/operators'; import { Pedido } from '../../models/pedido'; import { AvisoService } from '../../services/aviso.service'; import { EstadoPedido } from '../../models/estado.pedido'; -import { NuevoRecibo } from '../../models/nuevo-recibo'; -import { PagosService } from '../../services/pagos.service'; +import { NuevoReciboDeposito } from '../../models/nuevo-recibo-deposito'; +import { FormBuilder, FormGroup, Validators } from '@angular/forms'; +import { RecibosService } from '../../services/recibos.service'; @Component({ selector: 'sic-com-transferencia-bancaria', @@ -15,15 +16,17 @@ import { PagosService } from '../../services/pagos.service'; }) export class TransferenciaBancariaComponent implements OnInit { imageDataUrl = ''; - imagen: number[] = []; +// imagen: number[] = []; loading = false; pedido: Pedido = null; + form: FormGroup; constructor(private route: ActivatedRoute, private pedidosService: PedidosService, private avisoService: AvisoService, private router: Router, - private pagosService: PagosService) { + private fb: FormBuilder, + private recibosService: RecibosService) { } ngOnInit() { @@ -45,6 +48,7 @@ export class TransferenciaBancariaComponent implements OnInit { ); } else { this.pedido = pedido; + this.createForm(); } }, err => { @@ -53,9 +57,23 @@ export class TransferenciaBancariaComponent implements OnInit { } ) ; + } else { + this.createForm(); } } + createForm() { + const monto = this.pedido ? this.pedido.total : 0; + const concepto = this.pedido ? `Depósito por Pedido Nº ${this.pedido.nroPedido}` : 'Depósito para Cuenta Corriente'; + const isMontoDisabled = !!this.pedido; + + this.form = this.fb.group({ + monto: [{ value: monto , disabled: isMontoDisabled }, [Validators.required, Validators.min(1)]], + concepto: concepto, + imagen: [[], Validators.required], + }); + } + imageChange($event) { if (!$event.target.files.length) { return; @@ -67,7 +85,7 @@ export class TransferenciaBancariaComponent implements OnInit { readerBuffer.addEventListener('load', () => { const arr = new Uint8Array(readerBuffer.result as ArrayBuffer); - this.imagen = Array.from(arr); + this.form.get('imagen').setValue(Array.from(arr)); }); readerDataUrl.addEventListener('load', () => { @@ -78,15 +96,20 @@ export class TransferenciaBancariaComponent implements OnInit { readerDataUrl.readAsDataURL(file); } - aceptar() { - if (this.imagen.length) { - const nr: NuevoRecibo = { - imagen: this.imagen, + submit() { + console.log(this.form.value); + if (this.form.valid) { + const formValues = this.form.value; + const nrd: NuevoReciboDeposito = { + idSucursal: null, // se completa en pagosService idPedido: this.pedido ? this.pedido.idPedido : null, + imagen: formValues.imagen, + monto: formValues.monto, + concepto: formValues.concepto, }; this.loading = true; - this.pagosService.pagoTransferencia(nr) + this.recibosService.generarReciboDeposito(nrd) .pipe(finalize(() => this.loading = false)) .subscribe( () => { diff --git a/src/app/models/nuevo-recibo-deposito.ts b/src/app/models/nuevo-recibo-deposito.ts new file mode 100644 index 00000000..ea46becb --- /dev/null +++ b/src/app/models/nuevo-recibo-deposito.ts @@ -0,0 +1,7 @@ +export interface NuevoReciboDeposito { + idSucursal: number; + idPedido: number; + concepto?: string; + imagen: number[]; + monto?: number; +} diff --git a/src/app/models/nuevo-recibo.ts b/src/app/models/nuevo-recibo.ts deleted file mode 100644 index 57223d7a..00000000 --- a/src/app/models/nuevo-recibo.ts +++ /dev/null @@ -1,4 +0,0 @@ -export interface NuevoRecibo { - imagen?: number[]; - idPedido?: number; -} diff --git a/src/app/services/pagos.service.ts b/src/app/services/pagos.service.ts index 1d6fee1a..90034928 100644 --- a/src/app/services/pagos.service.ts +++ b/src/app/services/pagos.service.ts @@ -5,8 +5,6 @@ import {HttpClient} from '@angular/common/http'; import {NuevoPagoMercadoPago} from '../models/mercadopago/nuevo-pago-mercado-pago'; import {NuevaOrdenDePago} from '../models/nueva-orden-de-pago'; import {MercadoPagoPreference} from '../models/mercadopago/mercado-pago-preference'; -import { NuevoRecibo } from '../models/nuevo-recibo'; - @Injectable() export class PagosService { @@ -22,8 +20,4 @@ export class PagosService { getMercadoPagoPreference(nuevaOrdenDePago: NuevaOrdenDePago): Observable { return this.http.post(this.url + '/mercado-pago/preference', nuevaOrdenDePago); } - - pagoTransferencia(nr: NuevoRecibo): Observable { - return this.http.post(`${this.url}/transferencia`, nr); - } } diff --git a/src/app/services/recibos.service.ts b/src/app/services/recibos.service.ts new file mode 100644 index 00000000..be8a18fb --- /dev/null +++ b/src/app/services/recibos.service.ts @@ -0,0 +1,19 @@ +import { Injectable } from '@angular/core'; +import { environment } from '../../environments/environment'; +import { HttpClient } from '@angular/common/http'; +import { NuevoReciboDeposito } from '../models/nuevo-recibo-deposito'; +import { Observable } from 'rxjs'; + +@Injectable({ + providedIn: 'root' +}) +export class RecibosService { + url = environment.apiUrl + '/api/v1/recibos'; + + constructor(private http: HttpClient) { } + + generarReciboDeposito(nrd: NuevoReciboDeposito): Observable { + if (!nrd.idSucursal) { nrd.idSucursal = environment.idSucursal; } + return this.http.post(`${this.url}/clientes/depositos`, nrd); + } +} From 312affe541ca4cf658c17fa2b45467d15d1c0fe8 Mon Sep 17 00:00:00 2001 From: Facundo Sosa Date: Tue, 4 May 2021 22:31:44 -0300 Subject: [PATCH 3/7] Termina con el componente de transferencia-bancaria. --- .../cuenta-corriente.component.html | 5 +++- .../components/pedidos/pedidos.component.html | 3 +++ .../components/pedidos/pedidos.component.ts | 11 ++++++++- .../transferencia-bancaria.component.html | 9 ++++--- .../transferencia-bancaria.component.scss | 1 + .../transferencia-bancaria.component.ts | 9 ++++--- src/app/models/estado-recibo.ts | 5 ++++ src/app/models/nuevo-recibo-deposito.ts | 2 +- src/app/models/recibo.ts | 24 +++++++++++++++++++ 9 files changed, 56 insertions(+), 13 deletions(-) create mode 100644 src/app/models/estado-recibo.ts create mode 100644 src/app/models/recibo.ts diff --git a/src/app/components/cuenta-corriente/cuenta-corriente.component.html b/src/app/components/cuenta-corriente/cuenta-corriente.component.html index 04e85151..95b5efaf 100644 --- a/src/app/components/cuenta-corriente/cuenta-corriente.component.html +++ b/src/app/components/cuenta-corriente/cuenta-corriente.component.html @@ -10,9 +10,12 @@
-
+
+
Debe completar su email en Cuenta de Cliente para poder ingresar un deposito diff --git a/src/app/components/pedidos/pedidos.component.html b/src/app/components/pedidos/pedidos.component.html index 244a644f..25b20171 100644 --- a/src/app/components/pedidos/pedidos.component.html +++ b/src/app/components/pedidos/pedidos.component.html @@ -36,6 +36,9 @@ +
diff --git a/src/app/components/pedidos/pedidos.component.ts b/src/app/components/pedidos/pedidos.component.ts index 5fd5271c..5cca5ccc 100644 --- a/src/app/components/pedidos/pedidos.component.ts +++ b/src/app/components/pedidos/pedidos.component.ts @@ -7,6 +7,8 @@ import {ClientesService} from '../../services/clientes.service'; import {AuthService} from '../../services/auth.service'; import { saveAs } from 'file-saver'; import {finalize} from 'rxjs/operators'; +import { Router } from '@angular/router'; +import { EstadoPedido } from '../../models/estado.pedido'; @Component({ selector: 'sic-com-pedidos', @@ -21,7 +23,10 @@ export class PedidosComponent implements OnInit { isLoading = true; loading = true; - constructor(private pedidosService: PedidosService, + estadoPedido = EstadoPedido; + + constructor(private router: Router, + private pedidosService: PedidosService, private avisoService: AvisoService, private authService: AuthService, private clientesService: ClientesService) { @@ -89,4 +94,8 @@ export class PedidosComponent implements OnInit { } ); } + + transferenciaPedido(pedido: Pedido) { + this.router.navigate(['/pagos/transferencia'], { queryParams: { idPedido: pedido.idPedido}}); + } } diff --git a/src/app/components/transferencia-bancaria/transferencia-bancaria.component.html b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.html index 23e9a1f5..802b3dda 100644 --- a/src/app/components/transferencia-bancaria/transferencia-bancaria.component.html +++ b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.html @@ -15,8 +15,7 @@

Transferencia asociada al pedido #{{ pedido.nroPedido }
  • Adjunte el comprobante haciendo click en botón "Adjuntar comprobante". - El comprobante puede ser una foto del ticket emitido por el cajero o bien el archivo electrónico - si la transferencia se ha realizado via online. + El comprobante debe ser una foto del ticket emitido por el cajero o bien una captura del compobante electrónico. Una vez que se ha seleccionado el archivo, aparecerá previsualizado y se activará el botón "Enviar comprobante"

  • @@ -42,7 +41,7 @@

    Transferencia asociada al pedido #{{ pedido.nroPedido }
    -
    +
    Imagen del comprobante
    @@ -50,7 +49,7 @@

    Transferencia asociada al pedido #{{ pedido.nroPedido }

    - + @@ -58,7 +57,7 @@

    Transferencia asociada al pedido #{{ pedido.nroPedido }

    - +
    diff --git a/src/app/components/transferencia-bancaria/transferencia-bancaria.component.scss b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.scss index f687e8b3..f850039e 100644 --- a/src/app/components/transferencia-bancaria/transferencia-bancaria.component.scss +++ b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.scss @@ -21,6 +21,7 @@ } } .preview { + cursor: pointer; height: 20rem; width: 20rem; display: flex; diff --git a/src/app/components/transferencia-bancaria/transferencia-bancaria.component.ts b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.ts index 4a2c514d..9216adc8 100644 --- a/src/app/components/transferencia-bancaria/transferencia-bancaria.component.ts +++ b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.ts @@ -44,7 +44,7 @@ export class TransferenciaBancariaComponent implements OnInit { 'Sole se pueden realizar transferencias a pedidos en estado ', EstadoPedido.ABIERTO, '.' ].join(''); this.avisoService.openSnackBar(msg, 'Cerrar', 0).afterDismissed().subscribe( - () => this.router.navigate(['']) + () => this.router.navigate(['/perfil']) ); } else { this.pedido = pedido; @@ -101,8 +101,8 @@ export class TransferenciaBancariaComponent implements OnInit { if (this.form.valid) { const formValues = this.form.value; const nrd: NuevoReciboDeposito = { - idSucursal: null, // se completa en pagosService idPedido: this.pedido ? this.pedido.idPedido : null, + idSucursal: null, /* se llena en el metodo generarReciboDeposito si se coloca null */ imagen: formValues.imagen, monto: formValues.monto, concepto: formValues.concepto, @@ -114,9 +114,8 @@ export class TransferenciaBancariaComponent implements OnInit { .subscribe( () => { const msg = 'Comprobante recibido correctamente.'; - this.avisoService.openSnackBar(msg, 'Cerrar', 0).afterDismissed().subscribe( - () => this.router.navigate(['/perfil']) - ); + this.avisoService.openSnackBar(msg, 'Cerrar', 0); + this.router.navigate(['/perfil']); }, err => this.avisoService.openSnackBar(err.error, 'Cerrar', 0), ) diff --git a/src/app/models/estado-recibo.ts b/src/app/models/estado-recibo.ts new file mode 100644 index 00000000..82a42c04 --- /dev/null +++ b/src/app/models/estado-recibo.ts @@ -0,0 +1,5 @@ +export enum EstadoRecibo { + SIN_CHEQUEAR = 'SIN_CHEQUEAR', + APROBADO = 'APROBADO', + RECHAZADO = 'RECHAZADO', +} diff --git a/src/app/models/nuevo-recibo-deposito.ts b/src/app/models/nuevo-recibo-deposito.ts index ea46becb..e4c97bb1 100644 --- a/src/app/models/nuevo-recibo-deposito.ts +++ b/src/app/models/nuevo-recibo-deposito.ts @@ -1,6 +1,6 @@ export interface NuevoReciboDeposito { - idSucursal: number; idPedido: number; + idSucursal: number; concepto?: string; imagen: number[]; monto?: number; diff --git a/src/app/models/recibo.ts b/src/app/models/recibo.ts new file mode 100644 index 00000000..ce52c306 --- /dev/null +++ b/src/app/models/recibo.ts @@ -0,0 +1,24 @@ +import { EstadoRecibo } from './estado-recibo'; + +export interface Recibo { + idRecibo: number; + numSerie: number; + numRecibo: number; + fecha: Date; + eliminado: boolean; + concepto: string; + idFormaDePago: number; + nombreFormaDePago: string; + idSucursal: number; + nombreSucursal: string; + idCliente: number; + nombreFiscalCliente: string; + idProveedor: number; + razonSocialProveedor: string; + nombreUsuario: string; + idViajante: number; + nombreViajante: string; + monto: number; + urlImagen: string; + estado: EstadoRecibo; +} From 59b534434418f3d25b8a8655b4dffa037a940be3 Mon Sep 17 00:00:00 2001 From: Facundo Sosa Date: Thu, 6 May 2021 21:47:08 -0300 Subject: [PATCH 4/7] Resuelve error de no enviar en monto cuando va se creaba un recibo que venia de un pedido en el componente de transferencia-bancaria. --- .../transferencia-bancaria/transferencia-bancaria.component.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/app/components/transferencia-bancaria/transferencia-bancaria.component.ts b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.ts index 9216adc8..272399ef 100644 --- a/src/app/components/transferencia-bancaria/transferencia-bancaria.component.ts +++ b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.ts @@ -97,14 +97,13 @@ export class TransferenciaBancariaComponent implements OnInit { } submit() { - console.log(this.form.value); if (this.form.valid) { const formValues = this.form.value; const nrd: NuevoReciboDeposito = { idPedido: this.pedido ? this.pedido.idPedido : null, idSucursal: null, /* se llena en el metodo generarReciboDeposito si se coloca null */ imagen: formValues.imagen, - monto: formValues.monto, + monto: this.pedido && this.pedido.idPedido ? this.pedido.total : formValues.monto, concepto: formValues.concepto, }; From 432e3784ebf77163d51ecf6063c64726c8c788b7 Mon Sep 17 00:00:00 2001 From: Facundo Sosa Date: Thu, 6 May 2021 21:59:39 -0300 Subject: [PATCH 5/7] Resuelve error de no enviar en monto cuando va se creaba un recibo que venia de un pedido en el componente de transferencia-bancaria. --- .../transferencia-bancaria/transferencia-bancaria.component.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/components/transferencia-bancaria/transferencia-bancaria.component.ts b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.ts index 272399ef..2776c24c 100644 --- a/src/app/components/transferencia-bancaria/transferencia-bancaria.component.ts +++ b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.ts @@ -103,7 +103,7 @@ export class TransferenciaBancariaComponent implements OnInit { idPedido: this.pedido ? this.pedido.idPedido : null, idSucursal: null, /* se llena en el metodo generarReciboDeposito si se coloca null */ imagen: formValues.imagen, - monto: this.pedido && this.pedido.idPedido ? this.pedido.total : formValues.monto, + monto: Number(this.pedido && this.pedido.idPedido ? this.pedido.total : formValues.monto), concepto: formValues.concepto, }; From 827a7cca7401095b83d22433c79d9367588ecdae Mon Sep 17 00:00:00 2001 From: Facundo Sosa Date: Thu, 6 May 2021 22:01:34 -0300 Subject: [PATCH 6/7] Resuelve error de no enviar en monto cuando va se creaba un recibo que venia de un pedido en el componente de transferencia-bancaria. --- .../transferencia-bancaria.component.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/components/transferencia-bancaria/transferencia-bancaria.component.html b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.html index 802b3dda..3b2a0f71 100644 --- a/src/app/components/transferencia-bancaria/transferencia-bancaria.component.html +++ b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.html @@ -26,7 +26,7 @@

    Transferencia asociada al pedido #{{ pedido.nroPedido }

    - + Requerido From 28effa79ca6770235f4aded961d832c865671cc4 Mon Sep 17 00:00:00 2001 From: Facundo Sosa Date: Thu, 6 May 2021 22:04:19 -0300 Subject: [PATCH 7/7] Resuelve error de no enviar en monto cuando va se creaba un recibo que venia de un pedido en el componente de transferencia-bancaria. --- .../transferencia-bancaria/transferencia-bancaria.component.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/components/transferencia-bancaria/transferencia-bancaria.component.ts b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.ts index 2776c24c..272399ef 100644 --- a/src/app/components/transferencia-bancaria/transferencia-bancaria.component.ts +++ b/src/app/components/transferencia-bancaria/transferencia-bancaria.component.ts @@ -103,7 +103,7 @@ export class TransferenciaBancariaComponent implements OnInit { idPedido: this.pedido ? this.pedido.idPedido : null, idSucursal: null, /* se llena en el metodo generarReciboDeposito si se coloca null */ imagen: formValues.imagen, - monto: Number(this.pedido && this.pedido.idPedido ? this.pedido.total : formValues.monto), + monto: this.pedido && this.pedido.idPedido ? this.pedido.total : formValues.monto, concepto: formValues.concepto, };