Merge pull request #119 from Oloodi/118-backend-define-and-deploy-workforce-schema
new workforce entity
This commit is contained in:
43
dataconnect/connector/workforce/mutations.gql
Normal file
43
dataconnect/connector/workforce/mutations.gql
Normal file
@@ -0,0 +1,43 @@
|
||||
mutation CreateWorkforce(
|
||||
$workforceNumber: String!,
|
||||
$vendorId: UUID!,
|
||||
$firstName: String!,
|
||||
$lastName: String!,
|
||||
$employmentType: WorkforceEmploymentType
|
||||
) @auth(level: USER) {
|
||||
workforce_insert(
|
||||
data: {
|
||||
workforceNumber: $workforceNumber
|
||||
vendorId: $vendorId
|
||||
firstName: $firstName
|
||||
lastName: $lastName
|
||||
employmentType: $employmentType
|
||||
}
|
||||
)
|
||||
}
|
||||
|
||||
mutation UpdateWorkforce(
|
||||
$id: UUID!,
|
||||
$workforceNumber: String,
|
||||
$vendorId: UUID,
|
||||
$firstName: String,
|
||||
$lastName: String,
|
||||
$employmentType: WorkforceEmploymentType
|
||||
) @auth(level: USER) {
|
||||
workforce_update(
|
||||
id: $id,
|
||||
data: {
|
||||
workforceNumber: $workforceNumber
|
||||
vendorId: $vendorId
|
||||
firstName: $firstName
|
||||
lastName: $lastName
|
||||
employmentType: $employmentType
|
||||
}
|
||||
)
|
||||
}
|
||||
|
||||
mutation DeleteWorkforce(
|
||||
$id: UUID!
|
||||
) @auth(level: USER) {
|
||||
workforce_delete(id: $id)
|
||||
}
|
||||
48
dataconnect/connector/workforce/queries.gql
Normal file
48
dataconnect/connector/workforce/queries.gql
Normal file
@@ -0,0 +1,48 @@
|
||||
query listWorkforce @auth(level: USER) {
|
||||
workforces {
|
||||
id
|
||||
workforceNumber
|
||||
vendorId
|
||||
firstName
|
||||
lastName
|
||||
employmentType
|
||||
}
|
||||
}
|
||||
|
||||
query getWorkforceById(
|
||||
$id: UUID!
|
||||
) @auth(level: USER) {
|
||||
workforce(id: $id) {
|
||||
id
|
||||
workforceNumber
|
||||
vendorId
|
||||
firstName
|
||||
lastName
|
||||
employmentType
|
||||
}
|
||||
}
|
||||
|
||||
query filterWorkforce(
|
||||
$workforceNumber: String,
|
||||
$vendorId: UUID,
|
||||
$firstName: String,
|
||||
$lastName: String,
|
||||
$employmentType: WorkforceEmploymentType
|
||||
) @auth(level: USER) {
|
||||
workforces(
|
||||
where: {
|
||||
workforceNumber: { eq: $workforceNumber }
|
||||
vendorId: { eq: $vendorId }
|
||||
firstName: { eq: $firstName }
|
||||
lastName: { eq: $lastName }
|
||||
employmentType: { eq: $employmentType }
|
||||
}
|
||||
) {
|
||||
id
|
||||
workforceNumber
|
||||
vendorId
|
||||
firstName
|
||||
lastName
|
||||
employmentType
|
||||
}
|
||||
}
|
||||
19
dataconnect/schema/workforce.gql
Normal file
19
dataconnect/schema/workforce.gql
Normal file
@@ -0,0 +1,19 @@
|
||||
# enums cant start by a number, reason of W1099
|
||||
enum WorkforceEmploymentType {
|
||||
W2
|
||||
W1099
|
||||
TEMPORARY
|
||||
CONTRACT
|
||||
}
|
||||
|
||||
type Workforce @table(name: "workforce") {
|
||||
id: UUID! @default(expr: "uuidV4()")
|
||||
workforceNumber: String!
|
||||
vendorId: UUID! # vendor_id (FK lógica a Vendor.id)
|
||||
firstName: String!
|
||||
lastName: String!
|
||||
employmentType: WorkforceEmploymentType # employment_type
|
||||
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