- Implemented AbsenceNotifyView for notifying absence with session details. - Created AnalyticsView for displaying group analytics and managing students at risk. - Added ClassAttendanceView for marking attendance in classes. - Defined new schemas for analytics and attendance in shared package.
21 lines
634 B
TypeScript
21 lines
634 B
TypeScript
import { Hono } from 'hono';
|
|
import { problemJson, resultJson, unauthorizedProblem } from '@/http/problem-details';
|
|
import { GetAttendeeHistory } from './use-case';
|
|
|
|
const route = new Hono();
|
|
|
|
route.get('/:groupId/attendees/:attendeeId/history', async (c) => {
|
|
const user = c.get('user');
|
|
if (!user) {
|
|
return problemJson(c, unauthorizedProblem(c.req.path));
|
|
}
|
|
|
|
const groupId = c.req.param('groupId');
|
|
const attendeeId = c.req.param('attendeeId');
|
|
const useCase = new GetAttendeeHistory();
|
|
const result = await useCase.execute(groupId, attendeeId, user.id);
|
|
|
|
return resultJson(c, result);
|
|
});
|
|
|
|
export default route; |