From 80d67788774b1321f44d2e3b9e6be1662f061fd8 Mon Sep 17 00:00:00 2001 From: Carolyn Zhang Date: Mon, 30 Sep 2024 18:49:41 -0400 Subject: [PATCH] Rename courseService --- backend/rest/courseRoutes.ts | 24 ++++++++++--------- ...{courseService.ts => courseUnitService.ts} | 6 ++--- .../services/implementations/userService.ts | 4 ++-- ...{courseService.ts => courseUnitService.ts} | 4 ++-- 4 files changed, 20 insertions(+), 18 deletions(-) rename backend/services/implementations/{courseService.ts => courseUnitService.ts} (94%) rename backend/services/interfaces/{courseService.ts => courseUnitService.ts} (94%) diff --git a/backend/rest/courseRoutes.ts b/backend/rest/courseRoutes.ts index 602f57b..b93fdad 100644 --- a/backend/rest/courseRoutes.ts +++ b/backend/rest/courseRoutes.ts @@ -1,5 +1,5 @@ import { Router } from "express"; -import CourseService from "../services/implementations/courseService"; +import CourseUnitService from "../services/implementations/courseUnitService"; import { getErrorMessage } from "../utilities/errorUtils"; import { createCourseUnitDtoValidator, @@ -8,14 +8,14 @@ import { import { isAuthorizedByRole } from "../middlewares/auth"; const courseRouter: Router = Router(); -const courseService: CourseService = new CourseService(); +const courseUnitService: CourseUnitService = new CourseUnitService(); courseRouter.get( "/", - isAuthorizedByRole(new Set(["Administrator"])), + isAuthorizedByRole(new Set(["Administrator", "Facilitator", "Learner"])), async (req, res) => { try { - const courses = await courseService.getCourseUnits(); + const courses = await courseUnitService.getCourseUnits(); res.status(200).json(courses); } catch (e: unknown) { res.status(500).send(getErrorMessage(e)); @@ -29,7 +29,7 @@ courseRouter.post( createCourseUnitDtoValidator, async (req, res) => { try { - const newCourse = await courseService.createCourseUnit({ + const newCourse = await courseUnitService.createCourseUnit({ title: req.body.title, }); res.status(201).json(newCourse); @@ -40,13 +40,13 @@ courseRouter.post( ); courseRouter.put( - "/:id", + "/:unitId", isAuthorizedByRole(new Set(["Administrator"])), updateCourseUnitDtoValidator, async (req, res) => { - const { id } = req.params; + const { unitId } = req.params; try { - const course = await courseService.updateCourseUnit(id, { + const course = await courseUnitService.updateCourseUnit(unitId, { title: req.body.title, }); res.status(200).json(course); @@ -57,12 +57,14 @@ courseRouter.put( ); courseRouter.delete( - "/:id", + "/:unitId", isAuthorizedByRole(new Set(["Administrator"])), async (req, res) => { - const { id } = req.params; + const { unitId } = req.params; try { - const deletedCourseUnitId = await courseService.deleteCourseUnit(id); + const deletedCourseUnitId = await courseUnitService.deleteCourseUnit( + unitId, + ); res.status(200).json({ id: deletedCourseUnitId }); } catch (e: unknown) { res.status(500).send(getErrorMessage(e)); diff --git a/backend/services/implementations/courseService.ts b/backend/services/implementations/courseUnitService.ts similarity index 94% rename from backend/services/implementations/courseService.ts rename to backend/services/implementations/courseUnitService.ts index 2dfa736..7c0ff0d 100644 --- a/backend/services/implementations/courseService.ts +++ b/backend/services/implementations/courseUnitService.ts @@ -5,13 +5,13 @@ import { UpdateCourseUnitDTO, } from "../../types/courseTypes"; import logger from "../../utilities/logger"; -import ICourseService from "../interfaces/courseService"; +import ICourseUnitService from "../interfaces/courseUnitService"; import MgCourseUnit, { CourseUnit } from "../../models/courseunit.mgmodel"; import { getErrorMessage } from "../../utilities/errorUtils"; const Logger = logger(__filename); -class CourseService implements ICourseService { +class CourseUnitService implements ICourseUnitService { async getCourseUnits(): Promise> { try { const courseUnits: Array = await MgCourseUnit.find().sort( @@ -105,4 +105,4 @@ class CourseService implements ICourseService { } } -export default CourseService; +export default CourseUnitService; diff --git a/backend/services/implementations/userService.ts b/backend/services/implementations/userService.ts index ff73497..ffdfa0b 100644 --- a/backend/services/implementations/userService.ts +++ b/backend/services/implementations/userService.ts @@ -254,7 +254,7 @@ class UserService implements IUserService { await firebaseAdmin.auth().deleteUser(deletedUser.authId); } catch (error) { // rollback user deletion in MongoDB - const { id, ...rest } = deletedUser.toJSON(); + const { id, ...rest } = deletedUser.toObject(); try { await MgUser.create(rest); } catch (mongoDbError: unknown) { @@ -292,7 +292,7 @@ class UserService implements IUserService { await firebaseAdmin.auth().deleteUser(firebaseUser.uid); } catch (error) { // rollback user deletion in MongoDB - const { id, ...rest } = deletedUser.toJSON(); + const { id, ...rest } = deletedUser.toObject(); try { await MgUser.create(rest); } catch (mongoDbError: unknown) { diff --git a/backend/services/interfaces/courseService.ts b/backend/services/interfaces/courseUnitService.ts similarity index 94% rename from backend/services/interfaces/courseService.ts rename to backend/services/interfaces/courseUnitService.ts index 08510fc..d84e6ec 100644 --- a/backend/services/interfaces/courseService.ts +++ b/backend/services/interfaces/courseUnitService.ts @@ -4,7 +4,7 @@ import { UpdateCourseUnitDTO, } from "../../types/courseTypes"; -interface ICourseService { +interface ICourseUnitService { /** * Returns all courseunits * @throwsError if courses were not successfully fetched @@ -38,4 +38,4 @@ interface ICourseService { deleteCourseUnit(id: string): Promise; } -export default ICourseService; +export default ICourseUnitService;