opensaas
Version:
Create fully bundled SaaS application (Backend & Frontend) using an interactive CLI
29 lines (25 loc) • 907 B
text/typescript
import { Resolver, Query, Ctx, Mutation, Arg } from 'type-graphql';
import { Request } from '../db/entity/request';
import { Context } from './types/context';
import { NewRequestInput } from '../dto/new-request.input';
(of => Request)
export class RequestResolver {
(() => [Request])
requests(() { tenantId }: Context) {
return Request.find({ where: { tenantId } });
}
(() => Request)
async addRequest(() { tenantId }: Context, ('newRequestData') newRequestData: NewRequestInput): Promise<Request> {
const request = Request.create({
tenantId,
...newRequestData,
});
return await request.save();
}
(() => Boolean)
async removeRequest(() { tenantId }: Context, ('id') id: number) {
const request = await Request.find({ where: { tenantId, id } });
await Request.remove(request);
return true;
}
}