Fix permissions

This commit is contained in:
Charles Bochet
2023-06-22 15:38:33 -07:00
parent 1b8b78d615
commit 703f31632d
7 changed files with 31 additions and 25 deletions

View File

@ -75,6 +75,7 @@ export class AbilityFactory {
// CommentThread // CommentThread
can(AbilityAction.Read, 'CommentThread', { workspaceId: workspace.id }); can(AbilityAction.Read, 'CommentThread', { workspaceId: workspace.id });
can(AbilityAction.Create, 'CommentThread'); can(AbilityAction.Create, 'CommentThread');
can(AbilityAction.Update, 'CommentThread', { workspaceId: workspace.id });
// Comment // Comment
can(AbilityAction.Read, 'Comment', { workspaceId: workspace.id }); can(AbilityAction.Read, 'Comment', { workspaceId: workspace.id });

View File

@ -46,10 +46,11 @@ export class CompanyResolver {
): Promise<Partial<Company>[]> { ): Promise<Partial<Company>[]> {
return this.companyService.findMany({ return this.companyService.findMany({
...args, ...args,
where: { where: args.where
...args.where, ? {
AND: [accessibleBy(ability).Company], AND: [args.where, accessibleBy(ability).Company],
}, }
: accessibleBy(ability).Company,
select: prismaSelect.value, select: prismaSelect.value,
}); });
} }

View File

@ -48,10 +48,11 @@ export class PersonResolver {
): Promise<Partial<Person>[]> { ): Promise<Partial<Person>[]> {
return this.personService.findMany({ return this.personService.findMany({
...args, ...args,
where: { where: args.where
...args.where, ? {
AND: [accessibleBy(ability).Person], AND: [args.where, accessibleBy(ability).Person],
}, }
: accessibleBy(ability).Person,
select: prismaSelect.value, select: prismaSelect.value,
}); });
} }

View File

@ -45,11 +45,11 @@ export class PipelineProgressResolver {
): Promise<Partial<PipelineProgress>[]> { ): Promise<Partial<PipelineProgress>[]> {
return this.pipelineProgressService.findMany({ return this.pipelineProgressService.findMany({
...args, ...args,
where: { where: args.where
...args.where, ? {
AND: [accessibleBy(ability).PipelineProgress], AND: [args.where, accessibleBy(ability).PipelineProgress],
}, }
select: prismaSelect.value, : accessibleBy(ability).PipelineProgress,
}); });
} }

View File

@ -31,10 +31,11 @@ export class PipelineStageResolver {
): Promise<Partial<PipelineStage>[]> { ): Promise<Partial<PipelineStage>[]> {
return this.pipelineStageService.findMany({ return this.pipelineStageService.findMany({
...args, ...args,
where: { where: args.where
...args.where, ? {
AND: [accessibleBy(ability).PipelineStage], AND: [args.where, accessibleBy(ability).PipelineStage],
}, }
: accessibleBy(ability).PipelineStage,
select: prismaSelect.value, select: prismaSelect.value,
}); });
} }

View File

@ -31,10 +31,11 @@ export class PipelineResolver {
): Promise<Partial<Pipeline>[]> { ): Promise<Partial<Pipeline>[]> {
return this.pipelineService.findMany({ return this.pipelineService.findMany({
...args, ...args,
where: { where: args.where
...args.where, ? {
AND: [accessibleBy(ability).Pipeline], AND: [args.where, accessibleBy(ability).Pipeline],
}, }
: accessibleBy(ability).Pipeline,
select: prismaSelect.value, select: prismaSelect.value,
}); });
} }

View File

@ -38,10 +38,11 @@ export class UserResolver {
): Promise<Partial<User>[]> { ): Promise<Partial<User>[]> {
return await this.userService.findMany({ return await this.userService.findMany({
...args, ...args,
where: { where: args.where
...args.where, ? {
AND: [accessibleBy(ability).User], AND: [args.where, accessibleBy(ability).User],
}, }
: accessibleBy(ability).User,
select: prismaSelect.value, select: prismaSelect.value,
}); });
} }