@@ -1,6 +1,7 @@
 | 
			
		||||
import { Authorized, Get, JsonController } from 'routing-controllers';
 | 
			
		||||
import { Authorized, Get, JsonController, OnUndefined, Param } from 'routing-controllers';
 | 
			
		||||
import { OpenAPI, ResponseSchema } from 'routing-controllers-openapi';
 | 
			
		||||
import { getConnectionManager, Repository } from 'typeorm';
 | 
			
		||||
import { ScanNotFoundError } from '../errors/ScanErrors';
 | 
			
		||||
import { Scan } from '../models/entities/Scan';
 | 
			
		||||
import { ResponseScan } from '../models/responses/ResponseScan';
 | 
			
		||||
import { ResponseTrackScan } from '../models/responses/ResponseTrackScan';
 | 
			
		||||
@@ -21,7 +22,7 @@ export class ScanController {
 | 
			
		||||
	@Authorized("SCAN:GET")
 | 
			
		||||
	@ResponseSchema(ResponseScan, { isArray: true })
 | 
			
		||||
	@ResponseSchema(ResponseTrackScan, { isArray: true })
 | 
			
		||||
	@OpenAPI({ description: 'Lists all runners from all teams/orgs. <br> This includes the runner\'s group and distance ran.' })
 | 
			
		||||
	@OpenAPI({ description: 'Lists all scans (normal or track) from all runners. <br> This includes the runner\'s group and distance ran.' })
 | 
			
		||||
	async getAll() {
 | 
			
		||||
		let responseScans: ResponseScan[] = new Array<ResponseScan>();
 | 
			
		||||
		const scans = await this.scanRepository.find();
 | 
			
		||||
@@ -31,17 +32,18 @@ export class ScanController {
 | 
			
		||||
		return responseScans;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// @Get('/:id')
 | 
			
		||||
	// @Authorized("DONOR:GET")
 | 
			
		||||
	// @ResponseSchema(ResponseDonor)
 | 
			
		||||
	// @ResponseSchema(DonorNotFoundError, { statusCode: 404 })
 | 
			
		||||
	// @OnUndefined(DonorNotFoundError)
 | 
			
		||||
	// @OpenAPI({ description: 'Lists all information about the runner whose id got provided.' })
 | 
			
		||||
	// async getOne(@Param('id') id: number) {
 | 
			
		||||
	// 	let donor = await this.donorRepository.findOne({ id: id })
 | 
			
		||||
	// 	if (!donor) { throw new DonorNotFoundError(); }
 | 
			
		||||
	// 	return new ResponseDonor(donor);
 | 
			
		||||
	// }
 | 
			
		||||
	@Get('/:id')
 | 
			
		||||
	@Authorized("DONOR:GET")
 | 
			
		||||
	@ResponseSchema(ResponseScan)
 | 
			
		||||
	@ResponseSchema(ResponseTrackScan)
 | 
			
		||||
	@ResponseSchema(ScanNotFoundError, { statusCode: 404 })
 | 
			
		||||
	@OnUndefined(ScanNotFoundError)
 | 
			
		||||
	@OpenAPI({ description: 'Lists all information about the runner whose id got provided.' })
 | 
			
		||||
	async getOne(@Param('id') id: number) {
 | 
			
		||||
		let scan = await this.scanRepository.findOne({ id: id })
 | 
			
		||||
		if (!scan) { throw new ScanNotFoundError(); }
 | 
			
		||||
		return scan;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// @Post()
 | 
			
		||||
	// @Authorized("DONOR:CREATE")
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user