This commit is contained in:
		@@ -21,18 +21,22 @@ export class StatsController {
 | 
			
		||||
    @ResponseSchema(ResponseStats)
 | 
			
		||||
    @OpenAPI({ description: "A very basic stats endpoint providing basic counters for a dashboard or simmilar" })
 | 
			
		||||
    async get() {
 | 
			
		||||
        let connection = getConnection();
 | 
			
		||||
        let runners = await connection.getRepository(Runner).count();
 | 
			
		||||
        let teams = await connection.getRepository(RunnerTeam).count();
 | 
			
		||||
        let orgs = await connection.getRepository(RunnerOrganization).count();
 | 
			
		||||
        let users = await connection.getRepository(User).count();
 | 
			
		||||
        let scans = await connection.getRepository(Scan).count({ where: { valid: true } });
 | 
			
		||||
        let distance_query = await connection.getRepository(Scan).createQueryBuilder('scan')
 | 
			
		||||
        const connection = getConnection();
 | 
			
		||||
        const runners = await connection.getRepository(Runner).count();
 | 
			
		||||
        const teams = await connection.getRepository(RunnerTeam).count();
 | 
			
		||||
        const orgs = await connection.getRepository(RunnerOrganization).count();
 | 
			
		||||
        const users = await connection.getRepository(User).count();
 | 
			
		||||
        const scans = await connection.getRepository(Scan).count({ where: { valid: true } });
 | 
			
		||||
        const distance_query = await connection.getRepository(Scan).createQueryBuilder('scan')
 | 
			
		||||
            .leftJoinAndSelect("scan.track", "track").where("scan.valid = TRUE")
 | 
			
		||||
            .select("SUM(track.distance)", "sum_track").addSelect("SUM(_distance)", "sum_distance")
 | 
			
		||||
            .getRawOne();
 | 
			
		||||
        let distace = parseInt(distance_query.sum_track)
 | 
			
		||||
        if (distance_query.sum_distance) {
 | 
			
		||||
            distace += parseInt(distance_query.sum_distance)
 | 
			
		||||
        }
 | 
			
		||||
        let donations = await connection.getRepository(Donation).find({ relations: ['runner', 'runner.scans', 'runner.scans.track'] });
 | 
			
		||||
        return new ResponseStats(runners, teams, orgs, users, scans, donations, distance_query.sum_track + distance_query.sum_distance)
 | 
			
		||||
        return new ResponseStats(runners, teams, orgs, users, scans, donations, distace)
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Get("/runners/distance")
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user