30 lines
1.1 KiB
TypeScript
30 lines
1.1 KiB
TypeScript
import { AppDataSource } from "../data-source";
|
|
import { Times } from "../entity/Times";
|
|
import { NextFunction, Request, Response } from "express"
|
|
|
|
export class HotTopController{
|
|
private TimesRepository = AppDataSource.getRepository(Times)
|
|
async all(request: Request, response: Response, next: NextFunction){
|
|
const nowDate = new Date()
|
|
const yestDay = new Date()
|
|
yestDay.setDate(yestDay.getDate()-1)
|
|
// console.log(nowDate.toLocaleString())
|
|
let num:number
|
|
if(request.params.num) num = parseInt(request.params.num)
|
|
// console.log(id)
|
|
if(isNaN(num) || num>50) num = 50
|
|
// return "OK"
|
|
return this.TimesRepository
|
|
.createQueryBuilder("time")
|
|
.leftJoinAndSelect("time.fromWeb", "fromWeb")
|
|
.where("time.lastTime BETWEEN :beginTime AND :endTime",
|
|
{
|
|
beginTime:yestDay,
|
|
endTime:nowDate
|
|
}
|
|
)
|
|
.addOrderBy('time.times',"DESC")
|
|
.limit(num)
|
|
.getMany()
|
|
}
|
|
} |