feat:初始化 -融骅

This commit is contained in:
2023-10-17 09:15:30 +08:00
parent c9ff84e6a2
commit 405e152b38
1190 changed files with 138344 additions and 455 deletions

View File

@@ -0,0 +1,110 @@
import {
Controller,
Get,
Post,
Body,
Param,
Delete,
Patch,
Query,
} from '@nestjs/common';
import { ApiTags, ApiBearerAuth, ApiOperation } from '@nestjs/swagger';
import { NoAuthToken } from 'src/common/decorator/no-token.decorator';
import { TokenData } from 'src/common/decorator/token-data.decorator';
import { StudentOnlineExamService } from 'src/assessment-evaluation/service/service-exam-manager/student-online-exam.service';
import { TokenDataEntity } from 'src/common/entities/token-data.entity';
import { UpdateStudentOnlineExamDto } from 'src/assessment-evaluation/dto/dtos-exam-manager/student-online-exam/update-student-online-exam.dto';
import { CreateStudentOnlineExamDto } from 'src/assessment-evaluation/dto/dtos-exam-manager/student-online-exam/create-student-online-exam.dto';
import { PagingStudentOnlineExamDto } from 'src/assessment-evaluation/dto/dtos-exam-manager/student-online-exam/paging-student-online-exam.dto';
@ApiTags('考试管理 - 学员在线考试')
@ApiBearerAuth()
// @NoAuthToken()
@Controller('assessmentEvaluation/StudentOnlineExam')
export class StudentOnlineExamController {
constructor(
private readonly StudentOnlineExamService: StudentOnlineExamService,
) {}
@Post()
// @NoAuthToken()
// 分发考试给学生
async create(
@Body() CreateStudentOnlineExamDto: CreateStudentOnlineExamDto,
@TokenData() token: any,
) {
CreateStudentOnlineExamDto.creator = CreateStudentOnlineExamDto.updater =
token.userId;
return this.StudentOnlineExamService.create(CreateStudentOnlineExamDto);
}
@Get('paging')
// @NoAuthToken()
// 分页查询考试历史
async paging(
@Query() pagingInfo: PagingStudentOnlineExamDto,
@TokenData() token: TokenDataEntity,
) {
console.log(token);
return this.StudentOnlineExamService.paging(pagingInfo, token);
}
@Get('pagingGrade')
// @NoAuthToken()
@ApiOperation({ summary: '分页查询人工判卷的考试列表' })
// 分页查询人工判卷的考试列表
async pagingGrade(
@Query() pagingInfo: PagingStudentOnlineExamDto,
@TokenData() token: TokenDataEntity,
) {
console.log(token);
return this.StudentOnlineExamService.pagingGrade(pagingInfo, token);
}
@Get('pagingGradeDetails/:examId')
@NoAuthToken()
@ApiOperation({ summary: '分页查询需要人工判卷的学员考试列表' })
// 分页查询需要人工判卷的学员考试列表
async pagingGradeDetails(
@Param('examId') examId: number,
@Query() pagingInfo: PagingStudentOnlineExamDto,
) {
return this.StudentOnlineExamService.pagingGradeDetails(
+examId,
pagingInfo,
);
}
@Get('lastExamHistory/:onlineExamId')
@NoAuthToken()
// 获取考试最后一次的答卷
async getLastExamHistory(@Param('onlineExamId') onlineExamId: number) {
return this.StudentOnlineExamService.findLastExam(onlineExamId);
}
@Patch('item/:id')
// 更新
async update(
@Param('id') id: string,
@Body() UpdateStudentOnlineExamDto: UpdateStudentOnlineExamDto,
) {
return this.StudentOnlineExamService.update(
+id,
UpdateStudentOnlineExamDto,
);
}
// 删除
@Delete('item/:id')
async remove(@Param('id') id: string) {
return this.StudentOnlineExamService.remove(+id);
}
// 批量删除
@Delete()
async removeAll(@Body() ids: number[]) {
try {
for (const item of ids) {
await this.StudentOnlineExamService.remove(+item);
}
} catch (error) {
return false;
}
return true;
}
}