From 35d0d9f7cda241620bde41bc1b39f5376db9fd3e Mon Sep 17 00:00:00 2001 From: realrafi Date: Sun, 5 Jul 2026 14:23:09 +0330 Subject: [PATCH] refactor: refactoring the project repository --- .../repositories/project.repository.ts | 57 +++---------------- 1 file changed, 9 insertions(+), 48 deletions(-) diff --git a/src/modules/task-manager/repositories/project.repository.ts b/src/modules/task-manager/repositories/project.repository.ts index 6b0535a..8f11e27 100644 --- a/src/modules/task-manager/repositories/project.repository.ts +++ b/src/modules/task-manager/repositories/project.repository.ts @@ -1,52 +1,13 @@ -import { Injectable } from '@nestjs/common'; -import { InjectRepository } from '@nestjs/typeorm'; -import { Repository } from 'typeorm'; -import { TMProject } from '../entities/project.entity'; +import { Injectable } from "@nestjs/common"; +import { InjectRepository } from "@nestjs/typeorm"; +import { Repository } from "typeorm"; +import { TMProject } from "../entities/project.entity"; @Injectable() -export class ProjectRepository { +export class ProjectRepository extends Repository { constructor( - @InjectRepository(TMProject) - private readonly repository: Repository, - ) {} - - findAll(skip: number, take: number) { - return this.repository.findAndCount({ - relations: ['workspace', 'taskPhases', 'users'], - skip, - take, - }); + @InjectRepository(TMProject) projectRepository: Repository, + ) { + super(projectRepository.target, projectRepository.manager, projectRepository.queryRunner); } - - findByWorkspace(workspaceId: string, skip: number, take: number) { - return this.repository.findAndCount({ - where: { workspaceId }, - relations: ['taskPhases', 'users'], - skip, - take, - }); - } - - findOneById(id: string) { - return this.repository.findOne({ - where: { id }, - relations: ['workspace', 'taskPhases', 'users'], - }); - } - - create(data: Partial) { - return this.repository.create(data); - } - - save(project: TMProject) { - return this.repository.save(project); - } - - update(id: string, data: Partial) { - return this.repository.update(id, data); - } - - delete(id: string) { - return this.repository.delete(id); - } -} \ No newline at end of file +}