import Redis from 'ioredis'; import { GeneralService } from '../share/generalservice.js'; // import { sendError } from './response.js'; export async function verifyEmailHandler(req, res) { const redis = new Redis(); const generalService = new GeneralService(); try { const { email, token } = req.query; const schema = req.body?.organization || 'nuttakit'; // 🧩 ใช้ schema ตาม org const storedData = await redis.get(`verify:${email}`); if (!storedData) { return res.status(400).send('ลิงก์หมดอายุหรือไม่ถูกต้อง'); } const { fname, lname, hashedPwd, token: storedToken } = JSON.parse(storedData); if (token !== storedToken) { return res.status(400).send('Token ไม่ถูกต้อง'); } let sql = ` INSERT INTO ${schema}.usrmst (usrnam, usrthinam, usrthilstnam, usrpwd, usrrol) VALUES ($1, $2, $3, $4, 'U') `; let param = [email, fname, lname, hashedPwd]; await generalService.executeQueryParam(sql, param); await redis.del(`verify:${email}`); res.send(`

✅ ยืนยันอีเมลสำเร็จ บัญชีของคุณถูกสร้างแล้ว (${schema})

`); } catch (error) { console.error('❌ [Verify Email Error]', error); res.status(500).send('เกิดข้อผิดพลาดในระบบ'); } }