user entitie
This commit is contained in:
41
dataconnect/connector/user/mutations.gql
Normal file
41
dataconnect/connector/user/mutations.gql
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
mutation CreateUser(
|
||||||
|
$id: UUID!, # Firebase UID
|
||||||
|
$email: String!,
|
||||||
|
$fullName: String!,
|
||||||
|
$role: UserBaseRole!,
|
||||||
|
$userRole: String
|
||||||
|
) @auth(level: USER) {
|
||||||
|
user_insert(
|
||||||
|
data: {
|
||||||
|
id: $id
|
||||||
|
email: $email
|
||||||
|
fullName: $fullName
|
||||||
|
role: $role
|
||||||
|
userRole: $userRole
|
||||||
|
}
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
mutation UpdateUser(
|
||||||
|
$id: String!,
|
||||||
|
$email: String,
|
||||||
|
$fullName: String,
|
||||||
|
$role: UserBaseRole,
|
||||||
|
$userRole: String
|
||||||
|
) @auth(level: USER) {
|
||||||
|
user_update(
|
||||||
|
id: $id,
|
||||||
|
data: {
|
||||||
|
email: $email
|
||||||
|
fullName: $fullName
|
||||||
|
role: $role
|
||||||
|
userRole: $userRole
|
||||||
|
}
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
mutation DeleteUser(
|
||||||
|
$id: String!
|
||||||
|
) @auth(level: USER) {
|
||||||
|
user_delete(id: $id)
|
||||||
|
}
|
||||||
43
dataconnect/connector/user/queries.gql
Normal file
43
dataconnect/connector/user/queries.gql
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
query listUsers @auth(level: USER) {
|
||||||
|
users {
|
||||||
|
id
|
||||||
|
email
|
||||||
|
fullName
|
||||||
|
role
|
||||||
|
userRole
|
||||||
|
createdDate
|
||||||
|
updatedDate
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
query getUserById(
|
||||||
|
$id: String!
|
||||||
|
) @auth(level: USER) {
|
||||||
|
user(id: $id) {
|
||||||
|
id
|
||||||
|
email
|
||||||
|
fullName
|
||||||
|
role
|
||||||
|
userRole
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
query filterUsers(
|
||||||
|
$email: String,
|
||||||
|
$role: UserBaseRole,
|
||||||
|
$userRole: String
|
||||||
|
) @auth(level: USER) {
|
||||||
|
users(
|
||||||
|
where: {
|
||||||
|
email: { eq: $email }
|
||||||
|
role: { eq: $role }
|
||||||
|
userRole: { eq: $userRole }
|
||||||
|
}
|
||||||
|
) {
|
||||||
|
id
|
||||||
|
email
|
||||||
|
fullName
|
||||||
|
role
|
||||||
|
userRole
|
||||||
|
}
|
||||||
|
}
|
||||||
15
dataconnect/schema/user.gql
Normal file
15
dataconnect/schema/user.gql
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
enum UserBaseRole {
|
||||||
|
ADMIN
|
||||||
|
USER
|
||||||
|
}
|
||||||
|
|
||||||
|
type User @table(name: "users") {
|
||||||
|
id: UUID! # user_id / uid de Firebase
|
||||||
|
email: String!
|
||||||
|
fullName: String!
|
||||||
|
role: UserBaseRole!
|
||||||
|
userRole: String
|
||||||
|
createdDate: Timestamp @default(expr: "request.time")
|
||||||
|
updatedDate: Timestamp @default(expr: "request.time")
|
||||||
|
createdBy: String @default(expr: "auth.uid")
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user