TuringsSolutions commited on
Commit
58903fd
·
verified ·
1 Parent(s): c8c1740

Update app.js

Browse files
Files changed (1) hide show
  1. app.js +71 -65
app.js CHANGED
@@ -5,93 +5,99 @@ const port = 7860;
5
 
6
  app.use(express.json());
7
 
8
- const client = new Client({
9
- host: 'db',
10
- user: 'user',
11
- password: 'password',
12
- database: 'mydatabase',
13
- port: 5432,
14
- });
15
-
16
  const connectWithRetry = () => {
 
 
 
 
 
 
 
 
17
  client.connect(err => {
18
  if (err) {
19
  console.error('Failed to connect to database:', err);
20
  setTimeout(connectWithRetry, 5000); // wait 5 seconds then retry connection
21
  } else {
22
  console.log('Connected to database');
 
23
  }
24
  });
25
  };
26
 
27
- connectWithRetry();
28
-
29
- app.post('/case', (req, res) => {
30
- const { caseId, description } = req.body;
31
- client.query('INSERT INTO cases (caseId, description) VALUES ($1, $2)', [caseId, description], (err, result) => {
32
- if (err) {
33
- res.status(500).send(err);
34
- } else {
35
- res.status(200).send('Case added');
36
- }
 
37
  });
38
- });
39
 
40
- app.get('/case/:caseId', (req, res) => {
41
- const caseId = req.params.caseId;
42
- client.query('SELECT * FROM cases WHERE caseId = $1', [caseId], (err, result) => {
43
- if (err) {
44
- res.status(500).send(err);
45
- } else {
46
- res.status(200).json(result.rows);
47
- }
 
48
  });
49
- });
50
 
51
- app.post('/questionnaire', (req, res) => {
52
- const { questionnaireId, responses } = req.body;
53
- client.query('INSERT INTO questionnaires (questionnaireId, responses) VALUES ($1, $2)', [questionnaireId, responses], (err, result) => {
54
- if (err) {
55
- res.status(500).send(err);
56
- } else {
57
- res.status(200).send('Questionnaire added');
58
- }
 
 
59
  });
60
- });
61
 
62
- app.get('/questionnaire/:questionnaireId', (req, res) => {
63
- const questionnaireId = req.params.questionnaireId;
64
- client.query('SELECT * FROM questionnaires WHERE questionnaireId = $1', [questionnaireId], (err, result) => {
65
- if (err) {
66
- res.status(500).send(err);
67
- } else {
68
- res.status(200).json(result.rows);
69
- }
 
70
  });
71
- });
72
 
73
- app.post('/jury', (req, res) => {
74
- const { juryId, details } = req.body;
75
- client.query('INSERT INTO jury (juryId, details) VALUES ($1, $2)', [juryId, details], (err, result) => {
76
- if (err) {
77
- res.status(500).send(err);
78
- } else {
79
- res.status(200).send('Jury details added');
80
- }
 
 
81
  });
82
- });
83
 
84
- app.get('/jury/:juryId', (req, res) => {
85
- const juryId = req.params.juryId;
86
- client.query('SELECT * FROM jury WHERE juryId = $1', [juryId], (err, result) => {
87
- if (err) {
88
- res.status(500).send(err);
89
- } else {
90
- res.status(200).json(result.rows);
91
- }
 
92
  });
93
- });
 
 
94
 
95
  app.listen(port, () => {
96
  console.log(`App running on port ${port}`);
97
- });
 
5
 
6
  app.use(express.json());
7
 
 
 
 
 
 
 
 
 
8
  const connectWithRetry = () => {
9
+ const client = new Client({
10
+ host: 'db',
11
+ user: 'user',
12
+ password: 'password',
13
+ database: 'mydatabase',
14
+ port: 5432,
15
+ });
16
+
17
  client.connect(err => {
18
  if (err) {
19
  console.error('Failed to connect to database:', err);
20
  setTimeout(connectWithRetry, 5000); // wait 5 seconds then retry connection
21
  } else {
22
  console.log('Connected to database');
23
+ initializeRoutes(client);
24
  }
25
  });
26
  };
27
 
28
+ const initializeRoutes = (client) => {
29
+ // Route to handle cases
30
+ app.post('/case', (req, res) => {
31
+ const { caseId, description } = req.body;
32
+ client.query('INSERT INTO cases (caseId, description) VALUES ($1, $2)', [caseId, description], (err, result) => {
33
+ if (err) {
34
+ res.status(500).send(err);
35
+ } else {
36
+ res.status(200).send('Case added');
37
+ }
38
+ });
39
  });
 
40
 
41
+ app.get('/case/:caseId', (req, res) => {
42
+ const caseId = req.params.caseId;
43
+ client.query('SELECT * FROM cases WHERE caseId = $1', [caseId], (err, result) => {
44
+ if (err) {
45
+ res.status(500).send(err);
46
+ } else {
47
+ res.status(200).json(result.rows);
48
+ }
49
+ });
50
  });
 
51
 
52
+ // Route to handle questionnaires
53
+ app.post('/questionnaire', (req, res) => {
54
+ const { questionnaireId, responses } = req.body;
55
+ client.query('INSERT INTO questionnaires (questionnaireId, responses) VALUES ($1, $2)', [questionnaireId, responses], (err, result) => {
56
+ if (err) {
57
+ res.status(500).send(err);
58
+ } else {
59
+ res.status(200).send('Questionnaire added');
60
+ }
61
+ });
62
  });
 
63
 
64
+ app.get('/questionnaire/:questionnaireId', (req, res) => {
65
+ const questionnaireId = req.params.questionnaireId;
66
+ client.query('SELECT * FROM questionnaires WHERE questionnaireId = $1', [questionnaireId], (err, result) => {
67
+ if (err) {
68
+ res.status(500).send(err);
69
+ } else {
70
+ res.status(200).json(result.rows);
71
+ }
72
+ });
73
  });
 
74
 
75
+ // Route to handle jury details
76
+ app.post('/jury', (req, res) => {
77
+ const { juryId, details } = req.body;
78
+ client.query('INSERT INTO jury (juryId, details) VALUES ($1, $2)', [juryId, details], (err, result) => {
79
+ if (err) {
80
+ res.status(500).send(err);
81
+ } else {
82
+ res.status(200).send('Jury details added');
83
+ }
84
+ });
85
  });
 
86
 
87
+ app.get('/jury/:juryId', (req, res) => {
88
+ const juryId = req.params.juryId;
89
+ client.query('SELECT * FROM jury WHERE juryId = $1', [juryId], (err, result) => {
90
+ if (err) {
91
+ res.status(500).send(err);
92
+ } else {
93
+ res.status(200).json(result.rows);
94
+ }
95
+ });
96
  });
97
+ };
98
+
99
+ connectWithRetry();
100
 
101
  app.listen(port, () => {
102
  console.log(`App running on port ${port}`);
103
+ });