UNPKG

geofind-contract-generator

Version:

Sistema profesional de generación de contratos de arrendamiento y envío de correos

221 lines (195 loc) 11.2 kB
// const EmailSender = require('./src/emailSender'); // const ContractGenerator = require('./src/contractGenerator'); // const path = require('path'); // (async () => { // try { // console.log("🚀 INICIANDO TEST DE APROBACIÓN CON CONTRATO ADJUNTO\n"); // const emailSender = new EmailSender(); // const contractGenerator = new ContractGenerator(); // const clientData = { // nombre: "Juan Pérez García", // edad: "30", // gmail: "juan.perez@email.com", // numero_telefonico: "555-123-4567", // direccion: "Calle Principal 123, Ciudad de México", // curp: "PEGJ800101HDFRRR01", // // reference_number: "CTO-2024-001" // }; // const propertyData = { // property_address: "Avenida Reforma 456, Polanco, CDMX", // property_type: "Departamento", // rental_period: "12 meses", // monthly_rent: "15000", // deposit_amount: "15000", // arrendador_nombre: "María González López", // bankDetails: { // bank_name: "BBVA Bancomer", // account_number: "4152 3136 5275 1234", // account_holder: "GeoFind Rentas S.A. de C.V.", // clabe: "012180001234567890", // rfc: "GFR240101ABC" // }, // clausulas: [ // "1. DURACIÓN: El presente contrato tendrá una vigencia de 12 meses renovables automáticamente.", // "2. RENTA: El pago mensual deberá realizarse antes del día 5 de cada mes mediante transferencia bancaria a la cuenta indicada en la sección de información bancaria.", // "3. DEPÓSITO: El depósito en garantía será equivalente a una mensualidad de renta.", // "4. MANTENIMIENTO: El arrendatario mantendrá la propiedad en óptimas condiciones.", // "5. SERVICIOS: Incluye servicios de agua y mantenimiento de áreas comunes.", // "1. DURACIÓN: El presente contrato tendrá una vigencia de 12 meses renovables automáticamente.", // "2. RENTA: El pago mensual deberá realizarse antes del día 5 de cada mes mediante transferencia bancaria a la cuenta indicada en la sección de información bancaria.", // "3. DEPÓSITO: El depósito en garantía será equivalente a una mensualidad de renta.", // "4. MANTENIMIENTO: El arrendatario mantendrá la propiedad en óptimas condiciones.", // "5. SERVICIOS: Incluye servicios de agua y mantenimiento de áreas comunes.", // "1. DURACIÓN: El presente contrato tendrá una vigencia de 12 meses renovables automáticamente.", // "2. RENTA: El pago mensual deberá realizarse antes del día 5 de cada mes mediante transferencia bancaria a la cuenta indicada en la sección de información bancaria.", // "3. DEPÓSITO: El depósito en garantía será equivalente a una mensualidad de renta.", // "4. MANTENIMIENTO: El arrendatario mantendrá la propiedad en óptimas condiciones.", // "5. SERVICIOS: Incluye servicios de agua y mantenimiento de áreas comunes." // ] // }; // console.log("📄 Generando contrato..."); // const contractPath = await contractGenerator.generateRentalContract(clientData, propertyData); // console.log(`✅ Contrato generado: ${contractPath}`); // const recipientEmail = "31loredo@gmail.com"; // const clientName = "Juan Pérez García"; // const contractDetails = { // property_name: "Departamento de Lujo en Polanco", // property_address: "Avenida Reforma 456, Polanco, CDMX", // period: "12 meses (Nov 2024 - Oct 2025)", // price: "15000", // contract_number: "CTO-2024-001" // }; // const bankDetails = { // bank_name: "BBVA Bancomer", // account_number: "4152 3136 5275 1234", // account_holder: "GeoFind Rentas S.A. de C.V.", // clabe: "012180001234567890" // }; // console.log("\n📧 Enviando correo de aprobación con contrato adjunto..."); // console.log(`📍 Destinatario: ${recipientEmail}`); // console.log(`📎 Contrato a adjuntar: ${path.basename(contractPath)}`); // const [success, info] = await emailSender.sendAcceptanceEmail( // recipientEmail, // clientName, // contractDetails, // bankDetails, // contractPath // ); // console.log("\n" + "=".repeat(60)); // if (success) { // console.log("🎉 TEST DE APROBACIÓN EXITOSO"); // console.log(`✅ ${info}`); // console.log(`📧 Correo enviado a: ${recipientEmail}`); // console.log(`📎 Contrato adjuntado: Sí`); // console.log(`🏦 Datos bancarios incluidos: Sí`); // console.log(`📄 Sección bancaria en contrato: Sí`); // } else { // console.log("❌ TEST DE APROBACIÓN FALLIDO"); // console.log(`❌ ${info}`); // } // console.log("=".repeat(60)); // } catch (err) { // console.error("\n💥 ERROR EN TEST DE APROBACIÓN:"); // console.error(err.message); // console.error(err.stack); // } // })(); const EmailSender = require('./src/emailSender'); const ContractGenerator = require('./src/contractGenerator'); const path = require('path'); (async () => { try { console.log("🚀 INICIANDO TEST DE APROBACIÓN CON CONTRATO ADJUNTO\n"); const emailSender = new EmailSender(); const contractGenerator = new ContractGenerator(); const clientData = { nombre: "Juan Pérez García", edad: "30", gmail: "juan.perez@email.com", numero_telefonico: "555-123-4567", direccion: "Calle Principal 123, Ciudad de México", curp: "PEGJ800101HDFRRR01", // reference_number: "CTO-2024-001" }; const propertyData = { property_address: "Avenida Reforma 456, Polanco, CDMX", property_type: "Departamento", rental_period: "12 meses", monthly_rent: "15000", deposit_amount: "15000", arrendador_nombre: "María González López", bankDetails: { bank_name: "BBVA Bancomer", account_number: "4152 3136 5275 1234", account_holder: "GeoFind Rentas S.A. de C.V.", clabe: "012180001234567890", rfc: "GFR240101ABC" }, clausulas: [ "1. DURACIÓN: El presente contrato tendrá una vigencia de 12 meses renovables automáticamente.", "2. RENTA: El pago mensual deberá realizarse antes del día 5 de cada mes mediante transferencia bancaria a la cuenta indicada en la sección de información bancaria.", "3. DEPÓSITO: El depósito en garantía será equivalente a una mensualidad de renta.", "4. MANTENIMIENTO: El arrendatario mantendrá la propiedad en óptimas condiciones.", "5. SERVICIOS: Incluye servicios de agua y mantenimiento de áreas comunes.", "1. DURACIÓN: El presente contrato tendrá una vigencia de 12 meses renovables automáticamente.", "2. RENTA: El pago mensual deberá realizarse antes del día 5 de cada mes mediante transferencia bancaria a la cuenta indicada en la sección de información bancaria.", "3. DEPÓSITO: El depósito en garantía será equivalente a una mensualidad de renta.", "4. MANTENIMIENTO: El arrendatario mantendrá la propiedad en óptimas condiciones.", "5. SERVICIOS: Incluye servicios de agua y mantenimiento de áreas comunes.", "1. DURACIÓN: El presente contrato tendrá una vigencia de 12 meses renovables automáticamente.", "2. RENTA: El pago mensual deberá realizarse antes del día 5 de cada mes mediante transferencia bancaria a la cuenta indicada en la sección de información bancaria.", "3. DEPÓSITO: El depósito en garantía será equivalente a una mensualidad de renta.", "4. MANTENIMIENTO: El arrendatario mantendrá la propiedad en óptimas condiciones.", "5. SERVICIOS: Incluye servicios de agua y mantenimiento de áreas comunes." ] }; console.log("📄 Generando contrato..."); const contractPath = await contractGenerator.generateRentalContract(clientData, propertyData); console.log(`✅ Contrato generado: ${contractPath}`); const recipientEmail = "31loredo@gmail.com"; const clientName = "Juan Pérez García"; const contractDetails = { property_name: "Departamento de Lujo en Polanco", property_address: "Avenida Reforma 456, Polanco, CDMX", map_property: "https://maps.app.goo.gl/yb9XooritqWpmYBx8", period: "12 meses (Nov 2024 - Oct 2025)", price: "15000", contract_number: "CTO-2024-001" }; const bankDetails = { bank_name: "BBVA Bancomer", account_number: "4152 3136 5275 1234", account_holder: "GeoFind Rentas S.A. de C.V.", clabe: "012180001234567890" }; console.log("\n📧 Enviando correo de aprobación con contrato adjunto..."); console.log(`📍 Destinatario: ${recipientEmail}`); console.log(`📎 Contrato a adjuntar: ${path.basename(contractPath)}`); console.log(`🗺️ URL de Google Maps: ${contractDetails.map_property}`); const [success, info] = await emailSender.sendAcceptanceEmail( recipientEmail, clientName, contractDetails, bankDetails, contractPath ); console.log("\n" + "=".repeat(60)); if (success) { console.log("🎉 TEST DE APROBACIÓN EXITOSO"); console.log(`✅ ${info}`); console.log(`📧 Correo enviado a: ${recipientEmail}`); console.log(`📎 Contrato adjuntado: Sí`); console.log(`🏦 Datos bancarios incluidos: Sí`); console.log(`🗺️ URL Google Maps incluida: Sí`); console.log(`📄 Sección bancaria en contrato: Sí`); } else { console.log("❌ TEST DE APROBACIÓN FALLIDO"); console.log(`❌ ${info}`); } console.log("=".repeat(60)); } catch (err) { console.error("\n💥 ERROR EN TEST DE APROBACIÓN:"); console.error(err.message); console.error(err.stack); } })();