/
viktorphp
/
back-socket
Обзор
Документация
Войти
/
viktorphp
/
back-socket
Код
Запросы
0
Задачи
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/modules/diary/diary.module.ts
44 строки
2 KB
Иванов Виктор Евгеньевич
feature-diary: добавить функционал дневника
11 апр 2026, 11:13
11 апр 2026, 11:13
8167a94
Код
Авторство
О чём код?
import { Module } from '@nestjs/common'; import { TypeOrmModule } from '@nestjs/typeorm'; import { HttpModule } from '@nestjs/axios'; import { DiaryEntry } from '../../entities/diary/diary-entry.entity'; import { DiaryFile } from '../../entities/diary/diary-file.entity'; import { DiaryService } from '../../services/diary/diary.service'; import { StorageService } from '../../services/storage/storage.service'; import { OcrService } from '../../services/ocr/ocr.service'; import { DiaryController } from '../../controllers/diary/diary.controller'; import { DiaryGateway } from '../../gateways/diary/diary.gateway'; import { UsersModule } from '../users/users.module'; /** * DiaryModule — модуль функциональности дневника. * * Содержит: * - DiaryController: HTTP-эндпоинты (/diary/...) * - DiaryGateway: WebSocket namespace /diary (push-уведомления OCR) * - DiaryService: бизнес-логика (CRUD записей, загрузка файлов, OCR) * - StorageService: работа с Yandex Object Storage * - OcrService: работа с Yandex Vision OCR API * * HttpModule нужен для OcrService — он использует HttpService * (@nestjs/axios) для HTTP-запросов к Yandex Vision API. * * UsersModule импортируется для DiaryGateway — ему нужен UsersService * для аутентификации WebSocket-соединений по sessionId. */ @Module({ imports: [ // Регистрируем репозитории TypeORM для сущностей дневника TypeOrmModule.forFeature([DiaryEntry, DiaryFile]), // HttpModule предоставляет HttpService на основе axios // Используется в OcrService для запросов к Yandex Vision OCR API HttpModule, // UsersModule нужен DiaryGateway для проверки сессии при WS-подключении UsersModule, ], controllers: [DiaryController], providers: [DiaryService, StorageService, OcrService, DiaryGateway], }) export class DiaryModule {}