50 lines
1.7 KiB
JavaScript
50 lines
1.7 KiB
JavaScript
'use strict';
|
|
|
|
const generateControllers = require('../../core/controllers');
|
|
const eventService = require('./event.service');
|
|
const { extractParamsFromRequest, handleErrorResponse, handleResultResponse } = require('../../helpers/controller.helper');
|
|
|
|
|
|
// Module Name
|
|
const MODULE_NAME = '[event.controller]';
|
|
|
|
const controllerOptions = { MODULE_NAME };
|
|
const extraControllers = {
|
|
|
|
findNext: async (req, res, next) => {
|
|
const params = extractParamsFromRequest(req, res, { includeAll: false });
|
|
try {
|
|
const result = await eventService.fetch(params, { user: req.user, lapse: 'next' });
|
|
return handleResultResponse(result, result.count, params, res);
|
|
} catch (error) {
|
|
handleErrorResponse(MODULE_NAME, 'findNext', error, res);
|
|
}
|
|
},
|
|
|
|
findCurrent: async (req, res, next) => {
|
|
const params = extractParamsFromRequest(req, res, {});
|
|
try {
|
|
const result = await eventService.fetch(params, { user: req.user, lapse: 'current' });
|
|
return handleResultResponse(result, result.count, params, res);
|
|
} catch (error) {
|
|
handleErrorResponse(MODULE_NAME, 'findNext', error, res);
|
|
}
|
|
},
|
|
|
|
findPass: async (req, res, next) => {
|
|
const params = extractParamsFromRequest(req, res, {});
|
|
try {
|
|
const result = await eventService.fetch(params, { user: req.user, lapse: 'pass' });
|
|
return handleResultResponse(result, result.count, params, res);
|
|
} catch (error) {
|
|
handleErrorResponse(MODULE_NAME, 'findNext', error, res);
|
|
}
|
|
},
|
|
|
|
//findComments: as
|
|
|
|
};
|
|
|
|
module.exports = generateControllers(eventService, extraControllers, controllerOptions);
|
|
|