Complete meeting endpoints
This commit is contained in:
parent
ad7ca3136a
commit
596baff4b3
@ -5,7 +5,9 @@ module.exports = {
|
|||||||
getMeetingById,
|
getMeetingById,
|
||||||
updateMeeting,
|
updateMeeting,
|
||||||
deleteMeeting,
|
deleteMeeting,
|
||||||
// getMeetingsByAccountId,
|
getParticipantsByMeetingId,
|
||||||
|
getPossibleDatesByMeetingId,
|
||||||
|
getAvailibilityByMeetingId,
|
||||||
};
|
};
|
||||||
|
|
||||||
function addMeeting(data) {
|
function addMeeting(data) {
|
||||||
@ -14,9 +16,9 @@ function addMeeting(data) {
|
|||||||
.returning([
|
.returning([
|
||||||
'id',
|
'id',
|
||||||
'title',
|
'title',
|
||||||
'description',
|
'description',
|
||||||
'start_time',
|
'start_time',
|
||||||
'timezone',
|
'timezone',
|
||||||
'duration',
|
'duration',
|
||||||
'status',
|
'status',
|
||||||
]);
|
]);
|
||||||
@ -29,9 +31,9 @@ function updateMeeting(data, id) {
|
|||||||
.returning([
|
.returning([
|
||||||
'id',
|
'id',
|
||||||
'title',
|
'title',
|
||||||
'description',
|
'description',
|
||||||
'start_time',
|
'start_time',
|
||||||
'timezone',
|
'timezone',
|
||||||
'duration',
|
'duration',
|
||||||
'status',
|
'status',
|
||||||
]);
|
]);
|
||||||
@ -48,10 +50,50 @@ function getMeetingById(id) {
|
|||||||
.select(
|
.select(
|
||||||
'id',
|
'id',
|
||||||
'title',
|
'title',
|
||||||
'description',
|
'description',
|
||||||
'start_time',
|
'start_time',
|
||||||
'timezone',
|
'timezone',
|
||||||
'duration',
|
'duration',
|
||||||
'status',
|
'status',
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function getParticipantsByMeetingId(meeting_id) {
|
||||||
|
return db('participant as p')
|
||||||
|
.select(
|
||||||
|
'p.account_id',
|
||||||
|
'p.meeting_id',
|
||||||
|
'p.earliest_time',
|
||||||
|
'p.latest_time',
|
||||||
|
'p.quorum',
|
||||||
|
'p.mandatory',
|
||||||
|
'p.host',
|
||||||
|
'p.answered',
|
||||||
|
'p.timezone',
|
||||||
|
)
|
||||||
|
.join('meeting as m', { 'm.id': 'p.meeting_id' })
|
||||||
|
.where({ meeting_id });
|
||||||
|
}
|
||||||
|
|
||||||
|
function getPossibleDatesByMeetingId(meeting_id) {
|
||||||
|
return db('possible_date as p')
|
||||||
|
.select('p.id', 'p.meeting_id', 'p.possible_date')
|
||||||
|
.join('meeting as m', { 'm.id': 'p.meeting_id' })
|
||||||
|
.where({ meeting_id });
|
||||||
|
}
|
||||||
|
|
||||||
|
function getAvailibilityByMeetingId(meeting_id) {
|
||||||
|
return db('availibility as a')
|
||||||
|
.select(
|
||||||
|
'a.id',
|
||||||
|
'a.meeting_id',
|
||||||
|
'a.account_id',
|
||||||
|
'a.possible_date_id',
|
||||||
|
'a.preference',
|
||||||
|
'a.start_time',
|
||||||
|
'a.end_time',
|
||||||
|
'a.timezone',
|
||||||
|
)
|
||||||
|
.join('meeting as m', { 'm.id': 'a.meeting_id' })
|
||||||
|
.where({ meeting_id });
|
||||||
|
}
|
||||||
|
@ -40,7 +40,7 @@ router.delete('/:id', async (req, res) => {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
router.get('/', async (req, res) => {
|
router.get('/:id', async (req, res) => {
|
||||||
const id = req.params.id;
|
const id = req.params.id;
|
||||||
|
|
||||||
try {
|
try {
|
||||||
@ -51,4 +51,38 @@ router.get('/', async (req, res) => {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
router.get('/:id/participants', async (req, res) => {
|
||||||
|
const id = req.params.id;
|
||||||
|
|
||||||
|
try {
|
||||||
|
const meeting = await Meeting.getParticipantsByMeetingId(id);
|
||||||
|
res.status(200).json(meeting);
|
||||||
|
} catch (error) {
|
||||||
|
res.status(500).json({ message: "Meeting doesn't exist.", error });
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
router.get('/:id/possible-dates', async (req, res) => {
|
||||||
|
const id = req.params.id;
|
||||||
|
|
||||||
|
try {
|
||||||
|
const meeting = await Meeting.getPossibleDatesByMeetingId(id);
|
||||||
|
res.status(200).json(meeting);
|
||||||
|
} catch (error) {
|
||||||
|
res.status(500).json({ message: "Meeting doesn't exist.", error });
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
router.get('/:id/availibility', async (req, res) => {
|
||||||
|
const id = req.params.id;
|
||||||
|
|
||||||
|
try {
|
||||||
|
const meeting = await Meeting.getAvailibilityByMeetingId(id);
|
||||||
|
res.status(200).json(meeting);
|
||||||
|
} catch (error) {
|
||||||
|
res.status(500).json({ message: "Meeting doesn't exist.", error });
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
module.exports = router;
|
module.exports = router;
|
||||||
|
Loading…
Reference in New Issue
Block a user