apps/recallassess/recallassess-api/src/api/admin/assessment/controllers/assessment-answer.controller.ts
api/admin/assessment/answer
Methods |
|
| Async addAnswer | ||||||
addAnswer(createAnswerDto: AssessmentAnswerAddDto)
|
||||||
Decorators :
@Post()
|
||||||
|
Parameters :
Returns :
Promise<AssessmentAnswerDto>
|
| Async deleteAnswer | ||||||
deleteAnswer(id: number)
|
||||||
Decorators :
@Delete(':id')
|
||||||
|
Parameters :
Returns :
Promise<void>
|
| Async getAnswersByQuestion |
getAnswersByQuestion(questionId: number, courseId: number, assessmentId: number)
|
Decorators :
@Get('question/:questionId')
|
|
Returns :
Promise<AssessmentAnswerListDto[]>
|
| Async reorderAnswers | ||||||
reorderAnswers(answers: literal type[])
|
||||||
Decorators :
@Put('reorder')
|
||||||
|
Parameters :
Returns :
Promise<void>
|
| Async saveAnswer | |||||||||
saveAnswer(id: number, updateAnswerDto: AssessmentAnswerSaveDto)
|
|||||||||
Decorators :
@Put(':id')
|
|||||||||
|
Parameters :
Returns :
Promise<AssessmentAnswerDto>
|
import { Body, Controller, Delete, Get, Param, ParseIntPipe, Post, Put, Query } from "@nestjs/common";
import { AssessmentAnswerDto } from "./../dto/quiz/assessment-answer.dto";
import { AssessmentAnswerAddDto } from "./../dto/quiz/assessment-answer-create.dto";
import { AssessmentAnswerListDto } from "./../dto/quiz/assessment-answer-list.dto";
import { AssessmentAnswerSaveDto } from "./../dto/quiz/assessment-answer-update.dto";
import { AssessmentAnswerService } from "./../services/assessment-answer.service";
@Controller("api/admin/assessment/answer")
export class AssessmentAnswerController {
constructor(private readonly assessmentAnswerService: AssessmentAnswerService) {}
@Get("question/:questionId")
async getAnswersByQuestion(
@Param("questionId", ParseIntPipe) questionId: number,
@Query("courseId", ParseIntPipe) courseId: number,
@Query("assessmentId", ParseIntPipe) assessmentId: number,
): Promise<AssessmentAnswerListDto[]> {
return this.assessmentAnswerService.getAnswersByQuestion(questionId, courseId, assessmentId);
}
@Post()
async addAnswer(@Body() createAnswerDto: AssessmentAnswerAddDto): Promise<AssessmentAnswerDto> {
return this.assessmentAnswerService.addAnswer(createAnswerDto);
}
@Put(":id")
async saveAnswer(
@Param("id", ParseIntPipe) id: number,
@Body() updateAnswerDto: AssessmentAnswerSaveDto,
): Promise<AssessmentAnswerDto> {
return this.assessmentAnswerService.saveAnswer(id, updateAnswerDto);
}
@Delete(":id")
async deleteAnswer(@Param("id", ParseIntPipe) id: number): Promise<void> {
return this.assessmentAnswerService.deleteAnswer(id);
}
@Put("reorder")
async reorderAnswers(@Body() answers: { id: number; sort_order: number }[]): Promise<void> {
return this.assessmentAnswerService.reorderAnswers(answers);
}
}