Skip to content
Snippets Groups Projects
absenceCreation.graphql 1.31 KiB
Newer Older
permcu's avatar
permcu committed
# Uses core persons query
query gqlPersons {
  items: absenceCreationPersons {
permcu's avatar
permcu committed
    id
    fullName
    shortName
permcu's avatar
permcu committed
  }
}

query lessonsForPersons($persons: [ID]!, $start: DateTime!, $end: DateTime!) {
Jonathan Weth's avatar
Jonathan Weth committed
  items: lessonsForPersons(persons: $persons, start: $start, end: $end) {
permcu's avatar
permcu committed
    id
    lessons {
      id
      datetimeStart
      datetimeEnd
      course {
        id
        name
      }
      subject {
        id
        name
        shortName
        colourFg
        colourBg
      }
permcu's avatar
permcu committed
# Use absencesInputType?
mutation createAbsencesForPersons(
permcu's avatar
permcu committed
  $persons: [ID]!
  $start: DateTime!
  $end: DateTime!
permcu's avatar
permcu committed
  $comment: String
  $reason: ID!
) {
  createAbsencesForPersons(
permcu's avatar
permcu committed
    persons: $persons
permcu's avatar
permcu committed
    start: $start
    end: $end
    comment: $comment
    reason: $reason
  ) {
Jonathan Weth's avatar
Jonathan Weth committed
    ok
    items: participationStatuses {
      id
      isOptimistic
      relatedDocumentation {
        id
      }
      absenceReason {
        id
        name
        shortName
        colour
      }
    }
Jonathan Weth's avatar
Jonathan Weth committed
  }
permcu's avatar
permcu committed
}

mutation clearAbsencesForPersons(
  $persons: [ID]!
  $start: DateTime!
  $end: DateTime!
) {
  clearAbsencesForPersons(persons: $persons, start: $start, end: $end) {
    ok
    items: participationStatuses {
      id
      isOptimistic
      relatedDocumentation {
        id
      }