diff --git a/Front/src/paginas/ContratosPropietario.svelte b/Front/src/paginas/ContratosPropietario.svelte index 68d5b39..55af2a2 100644 --- a/Front/src/paginas/ContratosPropietario.svelte +++ b/Front/src/paginas/ContratosPropietario.svelte @@ -5,11 +5,14 @@ import {urlG} from "../stores/urlStore"; import type { CanonDto, ContratoDto, ContratoPropiedadDto, GaranteDto2 } from "../types"; import ModalConfirm from "../Componentes/ModalConfirm.svelte"; + import ModalPedirDoc from "../Componentes/ModalPedirDoc.svelte"; let token:string = sessionStorage.getItem("token")||""; let interes:number = $state(0); + let selMod:any =$state(); + let showmodal:boolean = $state(false); let canons:CanonDto[] = $state([]); let garantes: GaranteDto2[] = $state([]); @@ -166,9 +169,35 @@ } } - async function generarTiket(mes: Date) { //WIP - + function generarTiket(mod) { + selMod = mod; + showmodal =true; } + + async function pedirdocumento(op:boolean) { + try { + const ret = await fetch($urlG+"/api/contrato/GenerarRecibo?html="+op, { + method: "POST", + headers: { + "Auth": String(token), + "Content-Type": "application/json", + }, + + body: JSON.stringify({fecha: selMod.mes, idcontrato: contratoid}) + }); + if (!ret.ok) { + let blob = await ret.json(); + modaldata=blob.message; + return; + } + let blob = await ret.blob(); + const blobUrl = URL.createObjectURL(blob); + window.open(blobUrl, '_blank'); + setTimeout(() => URL.revokeObjectURL(blobUrl), 100000); + } catch { + modaldata = "Fallo al intentar hacer la request"; + } + } @@ -177,6 +206,10 @@ !!(modaldata = "")}/> {/if} +{#if showmodal} + showmodal=false} onSubmit={pedirdocumento} /> +{/if} +
@@ -287,7 +320,7 @@ -