Update db.js
This commit is contained in:
18
server/db.js
18
server/db.js
@@ -202,6 +202,7 @@ const initDb = async () => {
|
||||
CREATE TABLE IF NOT EXISTS payments (
|
||||
id VARCHAR(36) PRIMARY KEY,
|
||||
family_id VARCHAR(36) NOT NULL,
|
||||
extraordinary_expense_id VARCHAR(36) NULL,
|
||||
amount DECIMAL(10, 2) NOT NULL,
|
||||
date_paid ${TIMESTAMP_TYPE} NOT NULL,
|
||||
for_month INT NOT NULL,
|
||||
@@ -212,6 +213,23 @@ const initDb = async () => {
|
||||
)
|
||||
`);
|
||||
|
||||
// Migration for payments: Add extraordinary_expense_id
|
||||
try {
|
||||
let hasExtraId = false;
|
||||
if (DB_CLIENT === 'postgres') {
|
||||
const [cols] = await connection.query("SELECT column_name FROM information_schema.columns WHERE table_name='payments'");
|
||||
hasExtraId = cols.some(c => c.column_name === 'extraordinary_expense_id');
|
||||
} else {
|
||||
const [cols] = await connection.query("SHOW COLUMNS FROM payments");
|
||||
hasExtraId = cols.some(c => c.Field === 'extraordinary_expense_id');
|
||||
}
|
||||
|
||||
if (!hasExtraId) {
|
||||
console.log('Migrating: Adding extraordinary_expense_id to payments...');
|
||||
await connection.query("ALTER TABLE payments ADD COLUMN extraordinary_expense_id VARCHAR(36) NULL");
|
||||
}
|
||||
} catch(e) { console.warn("Payments migration warning:", e.message); }
|
||||
|
||||
// 4. Users Table
|
||||
await connection.query(`
|
||||
CREATE TABLE IF NOT EXISTS users (
|
||||
|
||||
Reference in New Issue
Block a user