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