From 18ac62ca9ea48b2d53192cce32a4342af4e5aa58 Mon Sep 17 00:00:00 2001 From: homonoviscoding Date: Fri, 12 Jul 2024 01:33:17 +0100 Subject: [PATCH 1/5] implemented get and post for movies. Added ERD --- .env.example | 6 ---- assets/conceptual-modelling.png | Bin 0 -> 31572 bytes assets/logical-modelling.png | Bin 0 -> 68496 bytes assets/physical-maodelling.png | Bin 0 -> 91665 bytes src/controllers/movie.js | 48 ++++++++++++++++++++++++++++++++ src/domains/movie.js | 28 +++++++++++++++++++ src/routers/movie.js | 15 ++++++++++ src/server.js | 3 ++ 8 files changed, 94 insertions(+), 6 deletions(-) delete mode 100644 .env.example create mode 100644 assets/conceptual-modelling.png create mode 100644 assets/logical-modelling.png create mode 100644 assets/physical-maodelling.png create mode 100644 src/controllers/movie.js create mode 100644 src/domains/movie.js create mode 100644 src/routers/movie.js diff --git a/.env.example b/.env.example deleted file mode 100644 index 60f3a816..00000000 --- a/.env.example +++ /dev/null @@ -1,6 +0,0 @@ -DATABASE_URL="YOUR_DB_URL" - -# We need the following URL environment variable for test purposes: -# - TEST_DATABASE_URL must be a **completely separate** database from any other used in this file - -TEST_DATABASE_URL="YOUR_TEST_DB_URL" diff --git a/assets/conceptual-modelling.png b/assets/conceptual-modelling.png new file mode 100644 index 0000000000000000000000000000000000000000..2523e00aea33e3ff22c860b0477f4b1f63188c4a GIT binary patch literal 31572 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 PBib6eSBn0!yZ?Ux7`mQO literal 0 HcmV?d00001 diff --git a/assets/logical-modelling.png b/assets/logical-modelling.png new file mode 100644 index 0000000000000000000000000000000000000000..a1bb60b391f6aa9ef293d9a64141a92db4b50940 GIT binary patch literal 68496 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°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 literal 0 HcmV?d00001 diff --git a/assets/physical-maodelling.png b/assets/physical-maodelling.png new file mode 100644 index 0000000000000000000000000000000000000000..448109e19644bfc96e2f82975a914e789e737eb9 GIT binary patch literal 91665 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 { + + try { + const movies = await getListMovies(); + res.status(200).json({movies}); + } catch (error) { + console.error('Error fetching movies:', error); + res.status(500).json({ error: 'Internal server error' }); + } +} + +const createMovie = async (req, res) => { + + const { + title, + runtimeMins + } = req.body + + if (!title || !runtimeMins) { + return res.status(400).json({ + error: "Missing fields in request body" + }) + } + + try { + const createdMovie = await postMovie(title, runtimeMins) + + res.status(201).json({ + movie: createdMovie + }) + } catch (e) { + + if (e instanceof PrismaClientKnownRequestError) { + if (e.code === "P2002") { + return res.status(409).json({ error: "A movie with the provided title already exists" }) + } + } + + res.status(500).json({ error: e.message }) + } +} + + +module.exports = { getMovies, createMovie } \ No newline at end of file diff --git a/src/domains/movie.js b/src/domains/movie.js new file mode 100644 index 00000000..2b98512e --- /dev/null +++ b/src/domains/movie.js @@ -0,0 +1,28 @@ +const prisma = require('../utils/prisma') + + +const getListMovies = async () => { + const movies = await prisma.movie.findMany({ + include: { + screenings: true + } + }) + return movies +} + +const postMovie = async (title, runtimeMins) => { + const movie = await prisma.movie.create({ + data: { + title, + runtimeMins, + screenings: {} + }, + include: { + screenings: true + } + }) + return movie +} + + +module.exports = { getListMovies, postMovie } \ No newline at end of file diff --git a/src/routers/movie.js b/src/routers/movie.js new file mode 100644 index 00000000..e56a1bf5 --- /dev/null +++ b/src/routers/movie.js @@ -0,0 +1,15 @@ +const express = require("express"); +const { + getMovies, + createMovie +} = require('../controllers/movie'); + +const router = express.Router(); + + +router.get("/", getMovies); + +router.post("/", createMovie) + + +module.exports = router \ No newline at end of file diff --git a/src/server.js b/src/server.js index 93d47a16..a64fd856 100644 --- a/src/server.js +++ b/src/server.js @@ -17,5 +17,8 @@ app.use(express.urlencoded({ extended: true })); const customerRouter = require('./routers/customer'); app.use('/customers', customerRouter); +const movieRouter = require('./routers/movie') +app.use('/movies', movieRouter) + module.exports = app From 830941ca5811c14d5828d2b39d8aef627201f0b5 Mon Sep 17 00:00:00 2001 From: homonoviscoding Date: Fri, 12 Jul 2024 02:40:17 +0100 Subject: [PATCH 2/5] implemented movie fetching by ID and more --- src/controllers/movie.js | 66 ++++++++++++++++++++++++++++++++++------ src/domains/movie.js | 29 +++++++++++++++++- src/routers/movie.js | 8 ++++- 3 files changed, 91 insertions(+), 12 deletions(-) diff --git a/src/controllers/movie.js b/src/controllers/movie.js index b466d38d..12a4bb3d 100644 --- a/src/controllers/movie.js +++ b/src/controllers/movie.js @@ -1,15 +1,15 @@ const { PrismaClientKnownRequestError } = require("@prisma/client") -const { getListMovies, postMovie } = require('../domains/movie.js') +const { getListMovies, postMovie, getMovieById, updateMovieById } = require('../domains/movie.js') const getMovies = async (req, res) => { try { - const movies = await getListMovies(); - res.status(200).json({movies}); + const movies = await getListMovies() + res.status(200).json({movies}) } catch (error) { - console.error('Error fetching movies:', error); - res.status(500).json({ error: 'Internal server error' }); + console.error('Error fetching movies:', error) + res.status(500).json({ error: 'Internal server error' }) } } @@ -32,17 +32,63 @@ const createMovie = async (req, res) => { res.status(201).json({ movie: createdMovie }) - } catch (e) { + } catch (error) { - if (e instanceof PrismaClientKnownRequestError) { - if (e.code === "P2002") { + if (error instanceof PrismaClientKnownRequestError) { + if (error.code === "P2002") { return res.status(409).json({ error: "A movie with the provided title already exists" }) } } - res.status(500).json({ error: e.message }) + res.status(500).json({ error: error.message }) + } +} + +const fetchMovieByID = async (req, res) => { + + try { + const movieId = req.params.id + const movie = await getMovieById(movieId) + + if (!movie) { + return res.status(404).json({error: 'movie not found'}) + } + + res.status(200).json({movie}) + + } catch (error) { + console.error('Error fetching movie:', error) + res.status(500).json({ error: 'Internal server error' }) + } +} + +const updateMovie = async (req, res) => { + + const movieId = req.params.id + const movie = await updateMovieById(parseInt(movieId)) + + const { + title, + runtimeMins + } = req.body + + if (!movie) { + return res.status(404).json({ + error: "movie not found" + }) + } + + try { + const updatedMovie = await updateMovieById(movie, title, runtimeMins) + + res.status(201).json({ + movie: updatedMovie + }) + } catch (error) { + console.error('Error fetching movie:', error) + res.status(500).json({ error: 'Internal server error' }) } } -module.exports = { getMovies, createMovie } \ No newline at end of file +module.exports = { getMovies, createMovie, fetchMovieByID, updateMovie } \ No newline at end of file diff --git a/src/domains/movie.js b/src/domains/movie.js index 2b98512e..f559e051 100644 --- a/src/domains/movie.js +++ b/src/domains/movie.js @@ -24,5 +24,32 @@ const postMovie = async (title, runtimeMins) => { return movie } +const getMovieById = async (id) => { + const movie = await prisma.movie.findUnique({ + where: { + id: parseInt(id) + }, + include: { + screenings: true + } + }) + return movie +} + +const updateMovieById = async (id, title, runtimeMins) => { + const movie = await prisma.movie.update({ + where: { + id: id + }, + data: { + title: title, + runtimeMins: runtimeMins + }, + include: { + screenings: true + } + }) + return movie +} -module.exports = { getListMovies, postMovie } \ No newline at end of file +module.exports = { getListMovies, postMovie, getMovieById, updateMovieById } \ No newline at end of file diff --git a/src/routers/movie.js b/src/routers/movie.js index e56a1bf5..3ce7eefb 100644 --- a/src/routers/movie.js +++ b/src/routers/movie.js @@ -1,7 +1,9 @@ const express = require("express"); const { getMovies, - createMovie + createMovie, + fetchMovieByID, + updateMovie } = require('../controllers/movie'); const router = express.Router(); @@ -11,5 +13,9 @@ router.get("/", getMovies); router.post("/", createMovie) +router.get("/:id", fetchMovieByID) + +router.put("/:id", updateMovie) + module.exports = router \ No newline at end of file From 9ed3e6095025bedda718784526af0213c715d277 Mon Sep 17 00:00:00 2001 From: homonoviscoding Date: Fri, 12 Jul 2024 16:23:10 +0100 Subject: [PATCH 3/5] implemented PUT req for movies --- src/controllers/movie.js | 33 +++++++++++---------------------- src/domains/movie.js | 25 +++++++++++++++++-------- 2 files changed, 28 insertions(+), 30 deletions(-) diff --git a/src/controllers/movie.js b/src/controllers/movie.js index 12a4bb3d..dac92d18 100644 --- a/src/controllers/movie.js +++ b/src/controllers/movie.js @@ -63,32 +63,21 @@ const fetchMovieByID = async (req, res) => { } const updateMovie = async (req, res) => { + const { id } = req.params + const { title, runtimeMins, screenings } = req.body + + try { - const movieId = req.params.id - const movie = await updateMovieById(parseInt(movieId)) - - const { - title, - runtimeMins - } = req.body - - if (!movie) { - return res.status(404).json({ - error: "movie not found" - }) - } + const updatedMovie = await updateMovieById(id, title, runtimeMins, screenings) + res.status(201).json({ movie: updatedMovie }) - try { - const updatedMovie = await updateMovieById(movie, title, runtimeMins) - - res.status(201).json({ - movie: updatedMovie - }) } catch (error) { - console.error('Error fetching movie:', error) - res.status(500).json({ error: 'Internal server error' }) + + console.error('Error updating movie and screenings:', error) + res.status(500).json({ error: 'Internal server error' }) + } -} + } module.exports = { getMovies, createMovie, fetchMovieByID, updateMovie } \ No newline at end of file diff --git a/src/domains/movie.js b/src/domains/movie.js index f559e051..65d94f3f 100644 --- a/src/domains/movie.js +++ b/src/domains/movie.js @@ -36,20 +36,29 @@ const getMovieById = async (id) => { return movie } -const updateMovieById = async (id, title, runtimeMins) => { - const movie = await prisma.movie.update({ - where: { - id: id - }, +const updateMovieById = async (movieId, title, runtimeMins, screenings) => { + + const updateData = await prisma.movie.update({ + where: { id: parseInt(movieId) }, data: { - title: title, - runtimeMins: runtimeMins + title, + runtimeMins, + screenings: { + update: screenings? screenings.map(screening => ({ + where: { id: screening.id }, + data: { + startsAt: screening.startsAt, + screenId: screening.screenId + } + })) : [] + } }, + include: { screenings: true } }) - return movie + return updateData } module.exports = { getListMovies, postMovie, getMovieById, updateMovieById } \ No newline at end of file From 1c0e75242a3baf73bdfc8c05039cd4df171cf910 Mon Sep 17 00:00:00 2001 From: homonoviscoding Date: Sun, 14 Jul 2024 18:49:55 +0100 Subject: [PATCH 4/5] implemented PUT req for updating customer name --- src/controllers/customer.js | 26 +++++++++++++++++-- src/domains/customer.js | 50 ++++++++++++++++++++++++++----------- src/routers/customer.js | 4 ++- 3 files changed, 62 insertions(+), 18 deletions(-) diff --git a/src/controllers/customer.js b/src/controllers/customer.js index 775cfb42..68f83b5e 100644 --- a/src/controllers/customer.js +++ b/src/controllers/customer.js @@ -1,5 +1,5 @@ const { PrismaClientKnownRequestError } = require("@prisma/client") -const { createCustomerDb } = require('../domains/customer.js') +const { createCustomerDb, updateCustomerById } = require('../domains/customer.js') const createCustomer = async (req, res) => { const { @@ -43,6 +43,28 @@ const createCustomer = async (req, res) => { } } +const updateCustomer = async (req, res) => { + + const { id } = req.params + const { name } = req.body + + if (!name) { + return res.status(400).json({ error: 'Invalid data format' }); + } + + try { + + const updateCustomerDetails = await updateCustomerById (id, name) + res.status(201).json({customer: updateCustomerDetails }) + + } catch (error) { + + console.error('Error updating customer:', error) + res.status(500).json({ error: 'Internal server error' }) + + } +} + module.exports = { - createCustomer + createCustomer, updateCustomer } diff --git a/src/domains/customer.js b/src/domains/customer.js index c7f315fd..9203a890 100644 --- a/src/domains/customer.js +++ b/src/domains/customer.js @@ -4,23 +4,43 @@ const prisma = require('../utils/prisma') * This will create a Customer AND create a new Contact, then automatically relate them with each other * @tutorial https://www.prisma.io/docs/concepts/components/prisma-client/relation-queries#create-a-related-record */ -const createCustomerDb = async (name, phone, email) => await prisma.customer.create({ - data: { - name, - contact: { - create: { - phone, - email +const createCustomerDb = async (name, phone, email) => { + const registerdCustomer = await prisma.customer.create({ + data: { + name, + contact: { + create: { + phone, + email + } } + }, + // We add an `include` outside of the `data` object to make sure the new contact is returned in the result + // This is like doing RETURNING in SQL + include: { + contact: true } - }, - // We add an `include` outside of the `data` object to make sure the new contact is returned in the result - // This is like doing RETURNING in SQL - include: { - contact: true - } -}) + }) + return registerdCustomer +} + +const updateCustomerById = async (customerId, name) => { + + const updateCustomer = await prisma.customer.update({ + where: { + id: parseInt(customerId) + }, + data: { + name + }, + include: { + contact: true + } + }) + return updateCustomer + +} module.exports = { - createCustomerDb + createCustomerDb, updateCustomerById } diff --git a/src/routers/customer.js b/src/routers/customer.js index f14a87fc..d8c4facd 100644 --- a/src/routers/customer.js +++ b/src/routers/customer.js @@ -1,6 +1,6 @@ const express = require("express"); const { - createCustomer + createCustomer, updateCustomer } = require('../controllers/customer'); const router = express.Router(); @@ -10,4 +10,6 @@ const router = express.Router(); // that looks like http://localhost:4040/customer/register router.post("/register", createCustomer); +router.put("/:id", updateCustomer) + module.exports = router; From 406f6f349623887ab1aad6606b481931f7a8c8cf Mon Sep 17 00:00:00 2001 From: homonoviscoding Date: Sun, 14 Jul 2024 19:06:06 +0100 Subject: [PATCH 5/5] implemented POST req for creating a new screen --- src/controllers/screen.js | 35 +++++++++++++++++++++++++++++++++++ src/domains/screen.js | 15 +++++++++++++++ src/routers/screen.js | 12 ++++++++++++ src/server.js | 3 +++ 4 files changed, 65 insertions(+) create mode 100644 src/controllers/screen.js create mode 100644 src/domains/screen.js create mode 100644 src/routers/screen.js diff --git a/src/controllers/screen.js b/src/controllers/screen.js new file mode 100644 index 00000000..851e1259 --- /dev/null +++ b/src/controllers/screen.js @@ -0,0 +1,35 @@ +const { PrismaClientKnownRequestError } = require("@prisma/client") +const { createScreen } = require('../domains/screen.js') + + +const createNewScreen = async (req, res) => { + + const { + number + } = req.body + + if (!number) { + return res.status(400).json({ + error: "Missing fields in request body" + }) + } + + try { + const screen = await createScreen(number) + + res.status(201).json({ + screen: screen + }) + } catch (error) { + + if (error instanceof PrismaClientKnownRequestError) { + if (error.code === "P2002") { + return res.status(409).json({ error: "A screen with the provided number already exists" }) + } + } + + res.status(500).json({ error: error.message }) + } +} + +module.exports = { createNewScreen } \ No newline at end of file diff --git a/src/domains/screen.js b/src/domains/screen.js new file mode 100644 index 00000000..15e9f305 --- /dev/null +++ b/src/domains/screen.js @@ -0,0 +1,15 @@ +const prisma = require('../utils/prisma') + +const createScreen = async (number) => { + const createdScreen = await prisma.screen.create({ + data: { + number, + }, + include: { + screenings: true + } + }) + return createdScreen + } + + module.exports = { createScreen } \ No newline at end of file diff --git a/src/routers/screen.js b/src/routers/screen.js new file mode 100644 index 00000000..c4a8e05b --- /dev/null +++ b/src/routers/screen.js @@ -0,0 +1,12 @@ +const express = require("express"); +const { + createNewScreen +} = require('../controllers/screen'); + +const router = express.Router(); + + +router.post("/", createNewScreen) + + +module.exports = router \ No newline at end of file diff --git a/src/server.js b/src/server.js index a64fd856..cb6ccd4a 100644 --- a/src/server.js +++ b/src/server.js @@ -20,5 +20,8 @@ app.use('/customers', customerRouter); const movieRouter = require('./routers/movie') app.use('/movies', movieRouter) +const screenRouter = require('./routers/screen') +app.use('/screens', screenRouter) + module.exports = app