Merge pull request #93 from Oloodi/92-backend-define-and-deploy-teammember-schema

92 backend define and deploy teammember schema
This commit is contained in:
José Salazar
2025-11-26 10:03:19 -05:00
committed by GitHub
3 changed files with 109 additions and 0 deletions

View File

@@ -0,0 +1,43 @@
mutation CreateTeamMember(
$teamId: UUID!,
$memberName: String!,
$email: String!,
$role: TeamMemberRole,
$isActive: Boolean
) @auth(level: USER) {
teamMember_insert(
data: {
teamId: $teamId
memberName: $memberName
email: $email
role: $role
isActive: $isActive
}
)
}
mutation UpdateTeamMember(
$id: UUID!,
$teamId: UUID,
$memberName: String,
$email: String,
$role: TeamMemberRole,
$isActive: Boolean
) @auth(level: USER) {
teamMember_update(
id: $id,
data: {
teamId: $teamId
memberName: $memberName
email: $email
role: $role
isActive: $isActive
}
)
}
mutation DeleteTeamMember(
$id: UUID!
) @auth(level: USER) {
teamMember_delete(id: $id)
}

View File

@@ -0,0 +1,48 @@
query listTeamMember @auth(level: USER) {
teamMembers {
id
teamId
memberName
email
role
isActive
}
}
query getTeamMemberById(
$id: UUID!
) @auth(level: USER) {
teamMember(id: $id) {
id
teamId
memberName
email
role
isActive
}
}
query filterTeamMember(
$teamId: UUID,
$memberName: String,
$email: String,
$role: TeamMemberRole,
$isActive: Boolean
) @auth(level: USER) {
teamMembers(
where: {
teamId: { eq: $teamId }
memberName: { eq: $memberName }
email: { eq: $email }
role: { eq: $role }
isActive: { eq: $isActive }
}
) {
id
teamId
memberName
email
role
isActive
}
}

View File

@@ -0,0 +1,18 @@
enum TeamMemberRole {
ADMIN
MANAGER
MEMBER
VIEWER
}
type TeamMember @table(name: "team_members") {
id: UUID! @default(expr: "uuidV4()")
teamId: UUID!
memberName: String!
email: String!
role: TeamMemberRole
isActive: Boolean @default(expr: "true")
createdDate: Timestamp @default(expr: "request.time")
updatedDate: Timestamp @default(expr: "request.time")
createdBy: String @default(expr: "auth.uid")
}