File size: 1,006 Bytes
8f23197
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
const pool = require('./config');

const migrate2 = async () => {
    const client = await pool.connect();

    try {
        console.log('๐Ÿš€ Starting database migration (migrate2)...');

        await client.query('BEGIN');

        // Add past_due (opening balance) to parties
        await client.query(`

      ALTER TABLE parties

      ADD COLUMN IF NOT EXISTS past_due DECIMAL(12, 2) DEFAULT 0

    `);

        // Ensure no NULL values exist
        await client.query(`

      UPDATE parties

      SET past_due = 0

      WHERE past_due IS NULL

    `);

        await client.query('COMMIT');
        console.log('โœ… migrate2 completed successfully!');

    } catch (error) {
        await client.query('ROLLBACK');
        console.error('โŒ migrate2 failed:', error);
        throw error;
    } finally {
        client.release();
        await pool.end();
    }
};

migrate2().catch(err => {
    console.error('Fatal error:', err);
    process.exit(1);
});