Files
whale-town-end/src/app.controller.ts
angjustinl 26ea5ac815 feat(sql, auth, email, dto):重构邮箱验证流程,引入基于内存的用户服务,并改进 API 响应处理
* 新增完整的 API 状态码文档,并对测试模式进行特殊处理(`206 Partial Content`)
* 重组 DTO 结构,引入 `app.dto.ts` 与 `error_response.dto.ts`,以实现统一、规范的响应格式
* 重构登录相关 DTO,优化命名与结构,提升可维护性
* 实现基于内存的用户服务(`users_memory.service.ts`),用于开发与测试环境
* 更新邮件服务,增强验证码生成逻辑,并支持测试模式自动识别
* 增强登录控制器与服务层的错误处理能力,统一响应行为
* 优化核心登录服务,强化参数校验并集成邮箱验证流程
* 新增 `@types/express` 依赖,提升 TypeScript 类型支持与开发体验
* 改进 `main.ts`,优化应用初始化流程与配置管理
* 在所有服务中统一错误处理机制,采用标准化的错误响应格式
* 实现测试模式(`206`)与生产环境邮件发送(`200`)之间的无缝切换
2025-12-18 00:17:43 +08:00

50 lines
1.3 KiB
TypeScript

import { Controller, Get } from '@nestjs/common';
import { ApiTags, ApiOperation, ApiResponse } from '@nestjs/swagger';
import { AppService } from './app.service';
import { AppStatusResponseDto } from './dto/app.dto';
import { ErrorResponseDto } from './dto/error_response.dto';
/**
* 应用根控制器
*
* 功能描述:
* - 提供应用基础信息和健康检查接口
* - 用于监控服务运行状态
*
* @author moyin
* @version 1.0.0
* @since 2025-12-17
*/
@ApiTags('App')
@Controller()
export class AppController {
constructor(private readonly appService: AppService) {}
/**
* 获取应用状态
*
* 功能描述:
* 返回应用的基本运行状态信息,用于健康检查和监控
*
* @returns 应用状态信息
*/
@Get()
@ApiOperation({
summary: '获取应用状态',
description: '返回应用的基本运行状态信息,包括服务名称、版本、运行时间等。用于健康检查和服务监控。'
})
@ApiResponse({
status: 200,
description: '成功获取应用状态',
type: AppStatusResponseDto
})
@ApiResponse({
status: 500,
description: '服务器内部错误',
type: ErrorResponseDto
})
getStatus(): AppStatusResponseDto {
return this.appService.getStatus();
}
}