refactor: refactoring the project repository
This commit is contained in:
@@ -1,52 +1,13 @@
|
|||||||
import { Injectable } from '@nestjs/common';
|
import { Injectable } from "@nestjs/common";
|
||||||
import { InjectRepository } from '@nestjs/typeorm';
|
import { InjectRepository } from "@nestjs/typeorm";
|
||||||
import { Repository } from 'typeorm';
|
import { Repository } from "typeorm";
|
||||||
import { TMProject } from '../entities/project.entity';
|
import { TMProject } from "../entities/project.entity";
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
export class ProjectRepository {
|
export class ProjectRepository extends Repository<TMProject> {
|
||||||
constructor(
|
constructor(
|
||||||
@InjectRepository(TMProject)
|
@InjectRepository(TMProject) projectRepository: Repository<TMProject>,
|
||||||
private readonly repository: Repository<TMProject>,
|
) {
|
||||||
) {}
|
super(projectRepository.target, projectRepository.manager, projectRepository.queryRunner);
|
||||||
|
|
||||||
findAll(skip: number, take: number) {
|
|
||||||
return this.repository.findAndCount({
|
|
||||||
relations: ['workspace', 'taskPhases', 'users'],
|
|
||||||
skip,
|
|
||||||
take,
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
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<TMProject>) {
|
|
||||||
return this.repository.create(data);
|
|
||||||
}
|
|
||||||
|
|
||||||
save(project: TMProject) {
|
|
||||||
return this.repository.save(project);
|
|
||||||
}
|
|
||||||
|
|
||||||
update(id: string, data: Partial<TMProject>) {
|
|
||||||
return this.repository.update(id, data);
|
|
||||||
}
|
|
||||||
|
|
||||||
delete(id: string) {
|
|
||||||
return this.repository.delete(id);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user