Browse Source

Feature/rename GranteeUser to granteeUser in Access database schema (#4979)

* Rename GranteeUser to granteeUser in Access database schema

* Update changelog
pull/4981/head
Thomas Kaul 1 week ago
committed by GitHub
parent
commit
d5d74eb4db
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 1
      CHANGELOG.md
  2. 10
      apps/api/src/app/access/access.controller.ts
  3. 2
      apps/api/src/app/access/access.service.ts
  4. 2
      apps/api/src/app/user/user.service.ts
  5. 4
      apps/api/src/services/impersonation/impersonation.service.ts
  6. 2
      libs/common/src/lib/types/access-with-grantee-user.type.ts
  7. 2
      prisma/schema.prisma

1
CHANGELOG.md

@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Changed
- Renamed `GranteeUser` to `granteeUser` in the `Access` database schema
- Improved the language localization for French (`fr`)
- Upgraded `class-validator` from version `0.14.1` to `0.14.2`

10
apps/api/src/app/access/access.controller.ts

@ -37,20 +37,20 @@ export class AccessController {
public async getAllAccesses(): Promise<Access[]> {
const accessesWithGranteeUser = await this.accessService.accesses({
include: {
GranteeUser: true
granteeUser: true
},
orderBy: { granteeUserId: 'asc' },
where: { userId: this.request.user.id }
});
return accessesWithGranteeUser.map(
({ alias, GranteeUser, id, permissions }) => {
if (GranteeUser) {
({ alias, granteeUser, id, permissions }) => {
if (granteeUser) {
return {
alias,
id,
permissions,
grantee: GranteeUser?.id,
grantee: granteeUser?.id,
type: 'PRIVATE'
};
}
@ -85,7 +85,7 @@ export class AccessController {
try {
return this.accessService.createAccess({
alias: data.alias || undefined,
GranteeUser: data.granteeUserId
granteeUser: data.granteeUserId
? { connect: { id: data.granteeUserId } }
: undefined,
permissions: data.permissions,

2
apps/api/src/app/access/access.service.ts

@ -13,7 +13,7 @@ export class AccessService {
): Promise<AccessWithGranteeUser | null> {
return this.prismaService.access.findFirst({
include: {
GranteeUser: true
granteeUser: true
},
where: accessWhereInput
});

2
apps/api/src/app/user/user.service.ts

@ -104,7 +104,7 @@ export class UserService {
user: true
},
orderBy: { alias: 'asc' },
where: { GranteeUser: { id } }
where: { granteeUserId: id }
}),
this.prismaService.order.count({
where: { userId: id }

4
apps/api/src/services/impersonation/impersonation.service.ts

@ -16,7 +16,7 @@ export class ImpersonationService {
if (this.request.user) {
const accessObject = await this.prismaService.access.findFirst({
where: {
GranteeUser: { id: this.request.user.id },
granteeUserId: this.request.user.id,
id: aId
}
});
@ -35,7 +35,7 @@ export class ImpersonationService {
// Public access
const accessObject = await this.prismaService.access.findFirst({
where: {
GranteeUser: null,
granteeUserId: null,
user: { id: aId }
}
});

2
libs/common/src/lib/types/access-with-grantee-user.type.ts

@ -1,3 +1,3 @@
import { Access, User } from '@prisma/client';
export type AccessWithGranteeUser = Access & { GranteeUser?: User };
export type AccessWithGranteeUser = Access & { granteeUser?: User };

2
prisma/schema.prisma

@ -12,12 +12,12 @@ datasource db {
model Access {
alias String?
createdAt DateTime @default(now())
granteeUser User? @relation("accessGet", fields: [granteeUserId], onDelete: Cascade, references: [id])
granteeUserId String?
id String @id @default(uuid())
permissions AccessPermission[] @default([READ_RESTRICTED])
updatedAt DateTime @updatedAt
userId String
GranteeUser User? @relation("accessGet", fields: [granteeUserId], onDelete: Cascade, references: [id])
user User @relation("accessGive", fields: [userId], onDelete: Cascade, references: [id])
@@index([alias])

Loading…
Cancel
Save