From 61137c9bb9d6f1437591c3cfdfb95921c9a44f6b Mon Sep 17 00:00:00 2001
From: alrwasheda <alrwasheda@zedat.fu-berlin.de>
Date: Sun, 28 Nov 2021 23:06:38 +0100
Subject: [PATCH] Point (3) Leander-Comment: 1)config gathers env-vars.
 2)seqConnection connect to db. 3)db_init initilizes tables

---
 server/src/db/config.ts          |  24 +++---
 server/src/db/models/Boat.ts     |   2 +-
 server/src/db/models/CheckIn.ts  |   3 +-
 server/src/db/models/Customer.ts |   7 +-
 server/src/db/models/Worker.ts   |   3 +-
 server/src/db/seqConnection.ts   |  10 +++
 server/src/routes.ts             | 144 +++++++++++++++----------------
 server/src/server.ts             |   3 +-
 8 files changed, 100 insertions(+), 96 deletions(-)
 create mode 100644 server/src/db/seqConnection.ts

diff --git a/server/src/db/config.ts b/server/src/db/config.ts
index 151a843..52d0cf7 100644
--- a/server/src/db/config.ts
+++ b/server/src/db/config.ts
@@ -1,21 +1,17 @@
 import { Dialect, Sequelize } from "sequelize";
 
-const dbName = process.env.DB_NAME;
-const dbUser = process.env.DB_USER;
-const dbHost = process.env.DB_HOST;
-const dbDriver = process.env.DB_DRIVER as Dialect;
-const dbPassword = process.env.DB_PASSWORD;
+const envVars = {
+ dbName : process.env.DB_NAME,
+ dbUser : process.env.DB_USER,
+ dbHost : process.env.DB_HOST,
+ dbDriver : process.env.DB_DRIVER as Dialect,
+ dbPassword : process.env.DB_PASSWORD,
+}
 
-if (!dbName || !dbUser || !dbHost || !dbDriver || !dbPassword) {
+if (!envVars.dbName || !envVars.dbUser || !envVars.dbHost || !envVars.dbDriver || !envVars.dbPassword) {
   console.error(`Error while reading DB Environment variables! Is maybe the .env file missing?
-DB Name: "${dbName}", Host: "${dbHost}", User: "${dbUser}", DB Driver(e.g. postgres): "${dbDriver}"`);
+DB Name: "${envVars.dbName}", Host: "${envVars.dbHost}", User: "${envVars.dbUser}", DB Driver(e.g. postgres): "${envVars.dbDriver}"`);
   process.exit(9);
 }
 
-const sequelizeConnection = new Sequelize(dbName, dbUser, dbPassword, {
-  host: dbHost,
-  dialect: dbDriver,
-  logging: false,
-});
-
-export default sequelizeConnection;
+export default envVars;
\ No newline at end of file
diff --git a/server/src/db/models/Boat.ts b/server/src/db/models/Boat.ts
index 2dcd291..b67160a 100644
--- a/server/src/db/models/Boat.ts
+++ b/server/src/db/models/Boat.ts
@@ -1,4 +1,4 @@
-import sequelizeConnection from "../config";
+import sequelizeConnection from "../seqConnection";
 import { DataTypes, Model, Optional } from "sequelize";
 
 interface BoatAttributes {
diff --git a/server/src/db/models/CheckIn.ts b/server/src/db/models/CheckIn.ts
index f2b99d9..5c3290c 100644
--- a/server/src/db/models/CheckIn.ts
+++ b/server/src/db/models/CheckIn.ts
@@ -1,5 +1,4 @@
-import sequelizeConnection from "../config";
-import { DataTypes, Model, Optional } from "sequelize";
+import sequelizeConnection from "../seqConnection";import { DataTypes, Model, Optional } from "sequelize";
 
 interface CheckInAttributes {
   id: number;
diff --git a/server/src/db/models/Customer.ts b/server/src/db/models/Customer.ts
index 49de900..77d843d 100644
--- a/server/src/db/models/Customer.ts
+++ b/server/src/db/models/Customer.ts
@@ -1,5 +1,4 @@
-import sequelizeConnection from "../config";
-import { DataTypes, Model, Optional } from "sequelize";
+import sequelizeConnection from "../seqConnection";import { DataTypes, Model, Optional } from "sequelize";
 
 interface CustomerAttributes {
   id: number;
@@ -7,8 +6,8 @@ interface CustomerAttributes {
   lastName: string;
   email: string;
 }
-export interface CustomerInput extends Optional<CustomerAttributes, "id"> {}
-export interface CustomerOutput extends Required<CustomerAttributes> {}
+export interface CustomerInput extends Optional<CustomerAttributes, "id"> { }
+export interface CustomerOutput extends Required<CustomerAttributes> { }
 class Customer extends Model<CustomerAttributes> implements CustomerAttributes {
   public id!: number;
   public firstName!: string;
diff --git a/server/src/db/models/Worker.ts b/server/src/db/models/Worker.ts
index 6ba033c..a616985 100644
--- a/server/src/db/models/Worker.ts
+++ b/server/src/db/models/Worker.ts
@@ -1,5 +1,4 @@
-import sequelizeConnection from "../config";
-import { DataTypes, Model, Optional } from "sequelize";
+import sequelizeConnection from "../seqConnection";import { DataTypes, Model, Optional } from "sequelize";
 
 interface WorkerAttributes {
   email: string;
diff --git a/server/src/db/seqConnection.ts b/server/src/db/seqConnection.ts
new file mode 100644
index 0000000..6852ed8
--- /dev/null
+++ b/server/src/db/seqConnection.ts
@@ -0,0 +1,10 @@
+import envVars from "./config";
+import { Sequelize } from "sequelize";
+
+const sequelizeConnection = new Sequelize(envVars.dbName, envVars.dbUser, envVars.dbPassword, {
+    host: envVars.dbHost,
+    dialect: envVars.dbDriver,
+    logging: false,
+});
+
+export default sequelizeConnection;
\ No newline at end of file
diff --git a/server/src/routes.ts b/server/src/routes.ts
index 1188bc5..2f88542 100644
--- a/server/src/routes.ts
+++ b/server/src/routes.ts
@@ -1,77 +1,77 @@
-import * as express from "express";
-import { UserService } from "./db/models/User";
-import { VehicleTypeService } from "./db/models/VehicleTypes";
+// import * as express from "express";
+// import { UserService } from "./db/models/User";
+// import { VehicleTypeService } from "./db/models/VehicleTypes";
 
-const router = express.Router();
+// const router = express.Router();
 
-// Vehicle Type
-router.get("/api/vehicleType/:id", async (req, res) => {
-  const id = Number(req.params.id);
-  const result = await VehicleTypeService.getById(id);
-  return res.status(200).send(result);
-});
-router.post("/api/vehicleType/", async (req, res) => {
-  const payload = req.body;
-  const result = await VehicleTypeService.create(payload);
-  return res.status(200).send(result);
-});
-router.put("/api/vehicleType/:id", async (req, res) => {
-  const id = Number(req.params.id);
-  const payload = req.body;
-  const result = await VehicleTypeService.update(id, payload);
-  return res.status(201).send(result);
-});
-router.delete("/api/vehicleType/:id", async (req, res) => {
-  const id = Number(req.params.id);
-  const result = await VehicleTypeService.deleteById(id);
-  return res.status(204).send({
-    success: result,
-  });
-});
-router.get("/api/vehicleType/", async (req, res) => {
-  const results = await VehicleTypeService.getAll();
-  return res.status(200).send(results);
-});
+// // Vehicle Type
+// router.get("/api/vehicleType/:id", async (req, res) => {
+//   const id = Number(req.params.id);
+//   const result = await VehicleTypeService.getById(id);
+//   return res.status(200).send(result);
+// });
+// router.post("/api/vehicleType/", async (req, res) => {
+//   const payload = req.body;
+//   const result = await VehicleTypeService.create(payload);
+//   return res.status(200).send(result);
+// });
+// router.put("/api/vehicleType/:id", async (req, res) => {
+//   const id = Number(req.params.id);
+//   const payload = req.body;
+//   const result = await VehicleTypeService.update(id, payload);
+//   return res.status(201).send(result);
+// });
+// router.delete("/api/vehicleType/:id", async (req, res) => {
+//   const id = Number(req.params.id);
+//   const result = await VehicleTypeService.deleteById(id);
+//   return res.status(204).send({
+//     success: result,
+//   });
+// });
+// router.get("/api/vehicleType/", async (req, res) => {
+//   const results = await VehicleTypeService.getAll();
+//   return res.status(200).send(results);
+// });
 
-// USER
-router.get("/api/user/:id", async (req, res) => {
-  const id = Number(req.params.id);
-  const result = await UserService.getById(id);
-  return res.status(200).send(result);
-});
-router.post("/api/user/", async (req, res) => {
-  const payload = req.body;
-  const result = await UserService.create(payload);
-  return res.status(200).send(result);
-});
-router.put("/api/user/:id", async (req, res) => {
-  const id = Number(req.params.id);
-  const payload = req.body;
-  const result = await UserService.update(id, payload);
-  return res.status(201).send(result);
-});
-router.delete("/api/user/:id", async (req, res) => {
-  const id = Number(req.params.id);
-  const result = await UserService.deleteById(id);
-  return res.status(204).send({
-    success: result,
-  });
-});
-router.get("/api/user/", async (req, res) => {
-  const results = await UserService.getAll();
-  return res.status(200).send(results);
-});
+// // USER
+// router.get("/api/user/:id", async (req, res) => {
+//   const id = Number(req.params.id);
+//   const result = await UserService.getById(id);
+//   return res.status(200).send(result);
+// });
+// router.post("/api/user/", async (req, res) => {
+//   const payload = req.body;
+//   const result = await UserService.create(payload);
+//   return res.status(200).send(result);
+// });
+// router.put("/api/user/:id", async (req, res) => {
+//   const id = Number(req.params.id);
+//   const payload = req.body;
+//   const result = await UserService.update(id, payload);
+//   return res.status(201).send(result);
+// });
+// router.delete("/api/user/:id", async (req, res) => {
+//   const id = Number(req.params.id);
+//   const result = await UserService.deleteById(id);
+//   return res.status(204).send({
+//     success: result,
+//   });
+// });
+// router.get("/api/user/", async (req, res) => {
+//   const results = await UserService.getAll();
+//   return res.status(200).send(results);
+// });
 
-// Other TODO
-/*
-router.get('/api/login', (req, res) => {
-    console.log(req.body)
-    res.json({'success': true, data: []});
-});
- */
-router.post("/api/logEntry", (req, res) => {
-  console.log(req.body);
-  res.json({ success: true });
-});
+// // Other TODO
+// /*
+// router.get('/api/login', (req, res) => {
+//     console.log(req.body)
+//     res.json({'success': true, data: []});
+// });
+//  */
+// router.post("/api/logEntry", (req, res) => {
+//   console.log(req.body);
+//   res.json({ success: true });
+// });
 
-export default router;
+// export default router;
diff --git a/server/src/server.ts b/server/src/server.ts
index feb841c..a23a5bf 100644
--- a/server/src/server.ts
+++ b/server/src/server.ts
@@ -11,6 +11,7 @@ let init = async () => {
   //app.use(apiRouter);
   const port = process.env.PORT || 4000;
   app.listen(port, () => console.log(`Server listening on port: ${port}`));
+  app.get("/",(req, res) => res.send("hello in server"))
 };
 
-init().then(() => {});
+init().then(() => { });
-- 
GitLab