From 66d29fa4b65e41a9ffa326c9dfc70b836d5ce728 Mon Sep 17 00:00:00 2001 From: Edison Date: Thu, 26 Mar 2026 16:52:17 +0800 Subject: [PATCH] change to request format on the txt --- backend/managerRoutes.js | 55 ++++++++++++++++++---------------------- 1 file changed, 24 insertions(+), 31 deletions(-) diff --git a/backend/managerRoutes.js b/backend/managerRoutes.js index df1e066..b740d07 100644 --- a/backend/managerRoutes.js +++ b/backend/managerRoutes.js @@ -72,11 +72,7 @@ export default function () { } // --- bool helper (handles BIT(1) returning Buffer) --- const toBool = (v) => - typeof v === 'number' - ? v === 1 - : Buffer.isBuffer(v) - ? v[0] === 1 - : Boolean(v) + typeof v === 'number' ? v === 1 : Buffer.isBuffer(v) ? v[0] === 1 : Boolean(v) // ---- Lunch / totals helpers ---- const minutesBetween = (a, b) => Math.max(0, (b - a) / 60000) @@ -232,12 +228,10 @@ export default function () { res.json(rows) } catch (error) { console.error('Failed records summary error:', error) - res - .status(500) - .json({ - message: 'Database error fetching failed records summary.', - details: error.message, - }) + res.status(500).json({ + message: 'Database error fetching failed records summary.', + details: error.message, + }) } finally { db.release() } @@ -268,12 +262,10 @@ export default function () { res.json(rows) } catch (error) { console.error('Failed records details error:', error) - res - .status(500) - .json({ - message: 'Database error fetching failed records details.', - details: error.message, - }) + res.status(500).json({ + message: 'Database error fetching failed records details.', + details: error.message, + }) } finally { db.release() } @@ -541,7 +533,7 @@ export default function () { second: '2-digit', hour12: false, }).format(e.time) - const line = `${w.username},"${code}","${date} ${timeStr}";"${w.full_name}"` + const line = `${w.username};${code};${date};${timeStr};${w.full_name}` if (!seen.has(line)) { seen.add(line) lines.push(line) @@ -550,7 +542,8 @@ export default function () { } } res.set('X-Export-TZ', TZ) - res.header('Content-Type', 'text/plain') + res + .header('Content-Type', 'text/plain') .attachment(`attendance_${startDate}_to_${endDate}.txt`) .send(lines.join('\n')) return @@ -1328,12 +1321,10 @@ export default function () { res.status(200).json({ message: 'Device registration cleared and/or status updated.' }) } catch (error) { console.error('Reset device/update status error:', error) - res - .status(500) - .json({ - message: 'Database error resetting device or updating status.', - details: error.message, - }) + res.status(500).json({ + message: 'Database error resetting device or updating status.', + details: error.message, + }) } finally { db.release() } @@ -1532,11 +1523,11 @@ export default function () { const db = await getConnection() try { const [rows] = await db.execute(` - SELECT DISTINCT department - FROM workers - WHERE role = 'worker' - AND status != 'deleted' - AND department IS NOT NULL + SELECT DISTINCT department + FROM workers + WHERE role = 'worker' + AND status != 'deleted' + AND department IS NOT NULL AND department != '' ORDER BY department ASC `) @@ -1544,7 +1535,9 @@ export default function () { res.json(departments) } catch (error) { console.error('Get departments error:', error) - res.status(500).json({ message: 'Database error fetching departments.', details: error.message }) + res + .status(500) + .json({ message: 'Database error fetching departments.', details: error.message }) } finally { db.release() }