CentralBackend/repositories/tax/taxRepository.js
2025-12-06 10:07:13 +01:00

43 lines
1.2 KiB
JavaScript

const mysql = require('mysql2/promise');
require('dotenv').config();
const NODE_ENV = process.env.NODE_ENV || 'development';
function getDbConfig() {
if (NODE_ENV === 'development') {
return {
host: process.env.DEV_DB_HOST || 'localhost',
port: Number(process.env.DEV_DB_PORT) || 3306,
user: process.env.DEV_DB_USER || 'root',
password: process.env.DEV_DB_PASSWORD || '',
database: process.env.DEV_DB_NAME || 'profitplanet_centralserver',
ssl: undefined
};
}
return {
host: process.env.DB_HOST,
port: Number(process.env.DB_PORT) || 3306,
user: process.env.DB_USER,
password: process.env.DB_PASSWORD,
database: process.env.DB_NAME
};
}
async function listAllVatRates() {
const conn = await mysql.createConnection(getDbConfig());
try {
const [rows] = await conn.query(`
SELECT id, country_code, country_name, is_eu, effective_year,
standard_rate, reduced_rate_1, reduced_rate_2, super_reduced_rate,
parking_rate, coffee_subscription_vat_rate, created_at, updated_at
FROM vat_rates
ORDER BY country_name ASC
`);
return rows;
} finally {
await conn.end();
}
}
// export
module.exports = { listAllVatRates };