117 lines
2.4 KiB
GraphQL
117 lines
2.4 KiB
GraphQL
# ------------------------------------------------------------
|
|
# GET Workforce by ID
|
|
# ------------------------------------------------------------
|
|
query getWorkforceById($id: UUID!) @auth(level: USER) {
|
|
workforce(id: $id) {
|
|
id
|
|
vendorId
|
|
staffId
|
|
workforceNumber
|
|
employmentType
|
|
status
|
|
createdAt
|
|
updatedAt
|
|
|
|
staff { id fullName }
|
|
vendor { id companyName }
|
|
}
|
|
}
|
|
|
|
# ------------------------------------------------------------
|
|
# GET Workforce by Vendor + Staff (was "by key")
|
|
# ------------------------------------------------------------
|
|
query getWorkforceByVendorAndStaff(
|
|
$vendorId: UUID!
|
|
$staffId: UUID!
|
|
) @auth(level: USER) {
|
|
workforces(
|
|
where: {
|
|
vendorId: { eq: $vendorId }
|
|
staffId: { eq: $staffId }
|
|
}
|
|
limit: 1
|
|
) {
|
|
id
|
|
vendorId
|
|
staffId
|
|
workforceNumber
|
|
employmentType
|
|
status
|
|
createdAt
|
|
updatedAt
|
|
|
|
staff { id fullName }
|
|
vendor { id companyName }
|
|
}
|
|
}
|
|
|
|
# ------------------------------------------------------------
|
|
# LIST Workforce by Vendor
|
|
# ------------------------------------------------------------
|
|
query listWorkforceByVendorId(
|
|
$vendorId: UUID!
|
|
$offset: Int
|
|
$limit: Int
|
|
) @auth(level: USER) {
|
|
workforces(
|
|
where: { vendorId: { eq: $vendorId } }
|
|
offset: $offset
|
|
limit: $limit
|
|
) {
|
|
id
|
|
staffId
|
|
workforceNumber
|
|
employmentType
|
|
status
|
|
createdAt
|
|
|
|
staff { id fullName }
|
|
}
|
|
}
|
|
|
|
# ------------------------------------------------------------
|
|
# LIST Workforce by Staff
|
|
# ------------------------------------------------------------
|
|
query listWorkforceByStaffId(
|
|
$staffId: UUID!
|
|
$offset: Int
|
|
$limit: Int
|
|
) @auth(level: USER) {
|
|
workforces(
|
|
where: { staffId: { eq: $staffId } }
|
|
offset: $offset
|
|
limit: $limit
|
|
) {
|
|
id
|
|
vendorId
|
|
workforceNumber
|
|
employmentType
|
|
status
|
|
createdAt
|
|
updatedAt
|
|
|
|
vendor { id companyName }
|
|
}
|
|
}
|
|
|
|
# ------------------------------------------------------------
|
|
# CHECK workforceNumber uniqueness within a Vendor (optional)
|
|
# ------------------------------------------------------------
|
|
query getWorkforceByVendorAndNumber(
|
|
$vendorId: UUID!
|
|
$workforceNumber: String!
|
|
) @auth(level: USER) {
|
|
workforces(
|
|
where: {
|
|
vendorId: { eq: $vendorId }
|
|
workforceNumber: { eq: $workforceNumber }
|
|
}
|
|
limit: 1
|
|
) {
|
|
id
|
|
staffId
|
|
workforceNumber
|
|
status
|
|
}
|
|
}
|