Sammy/t 245 implement resolvers matching hasura (#139)

* chore: remove old resolvers

* refactor: move generated file in code base

* feature: use only necessary code in graphql

* feature: implement query companies

* feature: implement companies and relations

* feature: implement all companies resolvers

* feature: implement all people resolver

* feature: add use resolvers

* feature: implement resolvers for workspace and users
This commit is contained in:
Sammy Teillet
2023-05-25 17:10:00 +02:00
committed by GitHub
parent 61099f99b8
commit fecf45f3bc
516 changed files with 20674 additions and 1592 deletions
@@ -1,15 +0,0 @@
import { Company } from '@generated/type-graphql';
import { PrismaService } from '../../database/prisma.service';
import { Resolver, Query } from 'type-graphql';
@Resolver(() => Company)
export class CompanyResolver {
constructor(private prisma: PrismaService) {}
@Query(() => [Company])
async getCompaniesOfSammy(): Promise<Company[] | null> {
return await this.prisma.company.findMany({
where: {},
});
}
}
@@ -1,22 +0,0 @@
import { Parent, Query, ResolveField, Resolver } from '@nestjs/graphql';
import { Person } from '../models/person.model';
import { PersonRepository } from 'src/entities/person/person.repository';
import { CompanyRepository } from 'src/entities/company/company.repository';
@Resolver(() => Person)
export class PersonResolver {
constructor(
private readonly personRepository: PersonRepository,
private readonly companyRepository: CompanyRepository,
) {}
@Query(() => [Person])
async getPeople() {
return this.personRepository.findMany({});
}
@ResolveField()
company(@Parent() person: Person) {
return this.companyRepository.findOne(person.companyId);
}
}
@@ -1,14 +0,0 @@
import { Parent, Query, ResolveField, Resolver } from '@nestjs/graphql';
import { User } from '../models/user.model';
import { WorkspaceRepository } from 'src/entities/workspace/workspace.repository';
import { Workspace } from '../models/workspace.model';
@Resolver(() => Workspace)
export class WorkspaceResolver {
constructor(private readonly workspaceRepository: WorkspaceRepository) {}
@Query(() => [Workspace])
async getWorkspaces() {
return this.workspaceRepository.findMany({});
}
}