42 lines
1.1 KiB
TypeScript
42 lines
1.1 KiB
TypeScript
|
|
import { Controller, Post, Get, Query } from '@nestjs/common';
|
|||
|
|
import { SignInService } from './signin.service';
|
|||
|
|
|
|||
|
|
@Controller('signin')
|
|||
|
|
export class SignInController {
|
|||
|
|
constructor(private readonly signInService: SignInService) {}
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 用户签到
|
|||
|
|
* POST /api/signin
|
|||
|
|
*/
|
|||
|
|
@Post()
|
|||
|
|
async signIn() {
|
|||
|
|
// 临时使用固定用户ID,实际应从 token 中获取
|
|||
|
|
const userId = 'default_user';
|
|||
|
|
return await this.signInService.signIn(userId);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取签到状态
|
|||
|
|
* GET /api/signin/status
|
|||
|
|
*/
|
|||
|
|
@Get('status')
|
|||
|
|
async getStatus() {
|
|||
|
|
// 临时使用固定用户ID,实际应从 token 中获取
|
|||
|
|
const userId = 'default_user';
|
|||
|
|
return await this.signInService.getSignInStatus(userId);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取签到历史记录
|
|||
|
|
* GET /api/signin/history
|
|||
|
|
*/
|
|||
|
|
@Get('history')
|
|||
|
|
async getHistory(@Query('limit') limit?: string) {
|
|||
|
|
// 临时使用固定用户ID,实际应从 token 中获取
|
|||
|
|
const userId = 'default_user';
|
|||
|
|
const limitNum = limit ? parseInt(limit, 10) : 30;
|
|||
|
|
return await this.signInService.getSignInHistory(userId, limitNum);
|
|||
|
|
}
|
|||
|
|
}
|