Skip to content

Commit

Permalink
Modify model|add teacher model crud|fix some error
Browse files Browse the repository at this point in the history
  • Loading branch information
RatonBiswas committed Oct 25, 2020
1 parent 228bd97 commit b88ffeb
Show file tree
Hide file tree
Showing 9 changed files with 68 additions and 28 deletions.
2 changes: 2 additions & 0 deletions app.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ const app = express();
import AppError from './utils/appError.js';
import courseRoutes from './routes/courseRoutes.js';
import sessionRoutes from './routes/sessionRoute.js';
import teacherRoutes from './routes/teacherRoute.js';

// view engine
app.set('view engine', 'ejs');
Expand All @@ -22,6 +23,7 @@ app.use(express.json());
// Use Routes
app.use('/api/courses', courseRoutes);
app.use('/api/sessions', sessionRoutes);
app.use('/api/teachers', teacherRoutes);

// Serve static assets if in production
if (process.env.NODE_ENV === 'production') {
Expand Down
10 changes: 5 additions & 5 deletions contollers/sessionController.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,9 @@ import Session from '../model/sessionModel.js';
import * as factory from './handlerFactory.js';
// const factory = require('./handlerFactory');

export const getAllCoursePost = factory.getAll(Session);
export const getAllSessionPost = factory.getAll(Session);

export const createCoursePost = factory.createOne(Session);
export const getCoursePost = factory.getOne(Session);
export const updateCoursePost = factory.updateOne(Session);
export const deleteCoursePost = factory.deleteOne(Session);
export const createSessionPost = factory.createOne(Session);
export const getSessionPost = factory.getOne(Session);
export const updateSessionPost = factory.updateOne(Session);
export const deleteSessionPost = factory.deleteOne(Session);
14 changes: 14 additions & 0 deletions contollers/teacherController.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
import Teacher from '../model/teacherModel.js';

// import AppError from '../utils/appError.js';
// import catchAsync from '../utils/catchAsync.js';
// import factory from './handlerFactory.js';
import * as factory from './handlerFactory.js';
// const factory = require('./handlerFactory');

export const getAllTeacherPost = factory.getAll(Teacher);

export const createTeacherPost = factory.createOne(Teacher);
export const getTeacherPost = factory.getOne(Teacher);
export const updateTeacherPost = factory.updateOne(Teacher);
export const deleteTeacherPost = factory.deleteOne(Teacher);
5 changes: 3 additions & 2 deletions model/courseModel.js
Original file line number Diff line number Diff line change
@@ -1,15 +1,16 @@
import mongoose from 'mongoose';

const courseSchema = new mongoose.Schema({
course_name: {
courseName: {
type: String,
required: [true, 'A course must have a course name'],
},
course_code: {
courseCode: {
type: String,
required: [true, 'A course must have a course name'],
},
credit: Number

});

export default mongoose.model('Course', courseSchema);
19 changes: 5 additions & 14 deletions model/sessionModel.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,20 +13,11 @@ const sessionSchema = new mongoose.Schema({
type: String,
required: [true, "A course allocation has a batch"]
},
course: {
course_name: {
type: String,
required: [true, 'A course must have a course name'],
},
course_code: {
type: String,
required: [true, 'A course must have a course code'],
},
credit: Number,
type: Object,
ref: 'Course',
required: [true, 'sessions must belong to Course.'],
}
sections:[String],
courseId: [{
type:mongoose.Schema.ObjectId,
ref:'Course'
}]
})

export default mongoose.model('Session', sessionSchema);
18 changes: 18 additions & 0 deletions model/teacherModel.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
import mongoose from 'mongoose';

const teacherSchema = new mongoose.Schema({
teacherInitial: {
type: String,
required: [true, "A course allocation has a teacher Initial"]
},
takenCredit: {
type: Number,
required: [true, "A course allocation has a taken Credit"]
},
courseId: [{
type:mongoose.Schema.ObjectId,
ref:'Course'
}]
})

export default mongoose.model('Teacher', teacherSchema);
4 changes: 2 additions & 2 deletions routes/courseRoutes.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@ import * as courseController from '../contollers/courseController.js';
const router = express.Router();


router.get('/all-courses', courseController.getAllCoursePost);
router.get('/', courseController.getAllCoursePost);
router.post('/create-course', courseController.createCoursePost);
router.get('/get-course-post/:id', courseController.getCoursePost);
router.get('/course-details/:id', courseController.getCoursePost);
router.patch('/update-course', courseController.updateCoursePost);
router.delete('/delete-course', courseController.deleteCoursePost);

Expand Down
10 changes: 5 additions & 5 deletions routes/sessionRoute.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@ import * as sessionController from '../contollers/sessionController.js';
const router = express.Router();


router.get('/all-session', sessionController.getAllCoursePost);
router.post('/create-session', sessionController.createCoursePost);
router.get('/get-session-post/:id', sessionController.getCoursePost);
router.patch('/update-session/:id', sessionController.updateCoursePost);
router.delete('/delete-session/:id', sessionController.deleteCoursePost);
router.get('/', sessionController.getAllSessionPost);
router.post('/create-session', sessionController.createSessionPost);
router.get('/session-details/:id', sessionController.getSessionPost);
router.patch('/update-session/:id', sessionController.updateSessionPost);
router.delete('/delete-session/:id', sessionController.deleteSessionPost);



Expand Down
14 changes: 14 additions & 0 deletions routes/teacherRoute.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
import express from 'express';
import * as teacherController from '../contollers/teacherController.js';
const router = express.Router();


router.get('/', teacherController.getAllTeacherPost);
router.post('/create-teacher', teacherController.createTeacherPost);
router.get('/teacher-details/:id', teacherController.getTeacherPost);
router.patch('/update-teacher', teacherController.updateTeacherPost);
router.delete('/delete-teacher', teacherController.deleteTeacherPost);



export default router;

0 comments on commit b88ffeb

Please sign in to comment.