Initial commit - Stand 26.04.2026
This commit is contained in:
@@ -0,0 +1,106 @@
|
||||
const { Pool } = require('pg');
|
||||
|
||||
// Verbindung zur Datenbank
|
||||
const pool = new Pool({
|
||||
host: '192.168.0.141',
|
||||
port: 5432,
|
||||
database: 'buchhaltung',
|
||||
user: 'postgres',
|
||||
password: 'postgres'
|
||||
});
|
||||
|
||||
async function importTest() {
|
||||
const client = await pool.connect();
|
||||
|
||||
try {
|
||||
console.log('=== TEST-IMPORT: Yvonne Brandt 2023 ===\n');
|
||||
|
||||
// Prüfe vorhandene Einträge
|
||||
const checkResult = await client.query(
|
||||
"SELECT COUNT(*) FROM nebenkosten WHERE wohnung = $1 AND mieter LIKE $2",
|
||||
['Zingelstr. 14', '%Brandt%']
|
||||
);
|
||||
const existingCount = parseInt(checkResult.rows[0].count);
|
||||
console.log(`Vorhandene Einträge für Brandt/Zingelstr. 14: ${existingCount}`);
|
||||
|
||||
// Test-Einheit: Brandt 2023
|
||||
const testData = {
|
||||
jahr: 2023,
|
||||
wohnung: 'Zingelstr. 14',
|
||||
mieter: 'Yvonne Brandt',
|
||||
kaltmiete: null,
|
||||
nebenkosten: 501.48, // Summe aus Excel
|
||||
versicherung: 129.58, // Geb. Vers./Haftpflichtv.
|
||||
heizkosten: 102.53, // Wartung Heizung
|
||||
wasser: null,
|
||||
muell: 153.85, // Müllabfuhr
|
||||
sonstiges: 115.53 // Grundsteuer (40.17) + Niederschlagwasser (75.36)
|
||||
};
|
||||
|
||||
console.log('\n=== ZU IMPORTIERENDE DATEN ===');
|
||||
console.log(JSON.stringify(testData, null, 2));
|
||||
|
||||
// INSERT
|
||||
const query = `
|
||||
INSERT INTO nebenkosten
|
||||
(jahr, wohnung, mieter, kaltmiete, nebenkosten, heizkosten, wasser, muell, versicherung, sonstiges)
|
||||
VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10)
|
||||
RETURNING *
|
||||
`;
|
||||
|
||||
const values = [
|
||||
testData.jahr,
|
||||
testData.wohnung,
|
||||
testData.mieter,
|
||||
testData.kaltmiete,
|
||||
testData.nebenkosten,
|
||||
testData.heizkosten,
|
||||
testData.wasser,
|
||||
testData.muell,
|
||||
testData.versicherung,
|
||||
testData.sonstiges
|
||||
];
|
||||
|
||||
console.log('\n=== FÜHRE IMPORT AUS ===');
|
||||
const result = await client.query(query, values);
|
||||
|
||||
console.log('\n✓ ERFOLGREICH IMPORTIERT:');
|
||||
console.log(' ID:', result.rows[0].id);
|
||||
console.log(' Jahr:', result.rows[0].jahr);
|
||||
console.log(' Wohnung:', result.rows[0].wohnung);
|
||||
console.log(' Mieter:', result.rows[0].mieter);
|
||||
console.log(' Nebenkosten:', result.rows[0].nebenkosten, '€');
|
||||
console.log(' Versicherung:', result.rows[0].versicherung, '€');
|
||||
console.log(' Heizkosten:', result.rows[0].heizkosten, '€');
|
||||
console.log(' Müll:', result.rows[0].muell, '€');
|
||||
console.log(' Sonstiges:', result.rows[0].sonstiges, '€');
|
||||
|
||||
// Verifiziere
|
||||
const verifyResult = await client.query(
|
||||
'SELECT * FROM nebenkosten WHERE id = $1',
|
||||
[result.rows[0].id]
|
||||
);
|
||||
|
||||
console.log('\n=== VERIFIZIERUNG ===');
|
||||
if (verifyResult.rows.length === 1) {
|
||||
console.log('✓ Datensatz in Datenbank bestätigt');
|
||||
} else {
|
||||
console.log('✗ Datensatz nicht gefunden!');
|
||||
}
|
||||
|
||||
return result.rows[0];
|
||||
|
||||
} catch (error) {
|
||||
console.error('\n❌ FEHLER beim Import:', error.message);
|
||||
throw error;
|
||||
} finally {
|
||||
client.release();
|
||||
await pool.end();
|
||||
}
|
||||
}
|
||||
|
||||
// Führe Import aus
|
||||
importTest().catch(err => {
|
||||
console.error('\nImport fehlgeschlagen:', err);
|
||||
process.exit(1);
|
||||
});
|
||||
Reference in New Issue
Block a user