const express = require('express'); const { Client } = require('pg'); const app = express(); const port = 7860; app.use(express.json()); const connectWithRetry = () => { const client = new Client({ host: '192.168.1.19', // Use your host's IP address user: 'your_local_db_user', password: 'your_local_db_password', database: 'your_local_db_name', port: 5432, // Default PostgreSQL port }); client.connect(err => { if (err) { console.error('Failed to connect to database:', err); setTimeout(connectWithRetry, 5000); // wait 5 seconds then retry connection } else { console.log('Connected to database'); initializeRoutes(client); } }); }; const initializeRoutes = (client) => { // Root route app.get('/', (req, res) => { res.send('Welcome to the application'); }); // Route to handle cases app.post('/case', (req, res) => { const { caseId, description } = req.body; client.query('INSERT INTO cases (caseId, description) VALUES ($1, $2)', [caseId, description], (err, result) => { if (err) { res.status(500).send(err); } else { res.status(200).send('Case added'); } }); }); app.get('/case/:caseId', (req, res) => { const caseId = req.params.caseId; client.query('SELECT * FROM cases WHERE caseId = $1', [caseId], (err, result) => { if (err) { res.status(500).send(err); } else { res.status(200).json(result.rows); } }); }); // Route to handle questionnaires app.post('/questionnaire', (req, res) => { const { questionnaireId, responses } = req.body; client.query('INSERT INTO questionnaires (questionnaireId, responses) VALUES ($1, $2)', [questionnaireId, responses], (err, result) => { if (err) { res.status(500).send(err); } else { res.status(200).send('Questionnaire added'); } }); }); app.get('/questionnaire/:questionnaireId', (req, res) => { const questionnaireId = req.params.questionnaireId; client.query('SELECT * FROM questionnaires WHERE questionnaireId = $1', [questionnaireId], (err, result) => { if (err) { res.status(500).send(err); } else { res.status(200).json(result.rows); } }); }); // Route to handle jury details app.post('/jury', (req, res) => { const { juryId, details } = req.body; client.query('INSERT INTO jury (juryId, details) VALUES ($1, $2)', [juryId, details], (err, result) => { if (err) { res.status(500).send(err); } else { res.status(200).send('Jury details added'); } }); }); app.get('/jury/:juryId', (req, res) => { const juryId = req.params.juryId; client.query('SELECT * FROM jury WHERE juryId = $1', [juryId], (err, result) => { if (err) { res.status(500).send(err); } else { res.status(200).json(result.rows); } }); }); }; connectWithRetry(); app.listen(port, () => { console.log(`App running on port ${port}`); });