{
  "$schema": "http://json-schema.org/draft-07/schema",
  "$id": "http://barm-businessobjects.intentus.de/adcuri-dashboards-requests/gerechnete-abgeschlossene-alternativen/v1.0/request_gerechnete-abgeschlossene-alternativen.schema.json",
  "title": "request_gerechnete-abgeschlossene-alternativen.schema.json",
  "description": "Anfrageobjekt",
  "type": "object",
  "properties": {
    "zeitspanne": {
      "type": "object",
      "properties": {
        "start": {
          "type": "string",
          "format": "date"
        },
        "ende": {
          "type": "string",
          "format": "date"
        }
      },
      "required": [
        "start",
        "ende"
      ],
      "additionalItems": false,
      "additionalProperties": false
    },
    "periode": {
      "description": "Zu welcher Zeitspanne sollen die Werte ermittelt werden",
      "type": "string",
      "oneOf": [
        {
          "const": "STUNDE",
          "description": "Stunden aktuell"
        },
        {
          "const": "TAG",
          "description": "Tages aktuell"
        },
        {
          "const": "MONAT",
          "description": "Monats aktuell"
        },
        {
          "const": "QUARTAL",
          "description": "Quartals aktuell"
        },
        {
          "const": "JAHR",
          "description": "Jahres aktuell"
        }
      ]
    },
    "kumuliert": {
      "description": "Nachfolgewert kumuliert die Vorgänger",
      "type": "boolean",
      "default": false
    },
    "sparte": {
      "description": "Liste von Sparten: wenn Array leer dann alle",
      "type": "array",
      "items": {
        "description": "Bezeichnungen der Sparten in ADC",
        "type": "string",
        "oneOf": [
          {
            "const": "ALL",
            "description": "alle Sparten"
          },
          {
            "const": "HRV",
            "description": "Sparte Hausrat"
          },
          {
            "const": "UV",
            "description": "Sparte Unfallversicherung"
          },
          {
            "const": "PHV",
            "description": "Sparte Private Haftpflicht"
          }
        ]
      },
      "uniqueItems": true
    },
    "assek": {
      "description": "Liste von Assekuradeuren: wenn Array leer dann alle",
      "type": "array",
      "items": {
        "description": "Bezeichnungen für die wählbaren Assekuradeure",
        "type": "string",
        "oneOf": [
          {
            "const": "ALL",
            "description": "Alle Assekuradeure"
          },
          {
            "const": "ADCURI",
            "description": "Adcuri Assek"
          },
          {
            "const": "BARMENIA",
            "description": "Barmenia Assek"
          },
          {
            "const": "BARMDIREKT",
            "description": "Barmenia-Direkt Assek"
          }
        ]
      },
      "uniqueItems": true
    },
    "betreuer": {
      "description": "Liste von Betreuern: wenn Array leer dann alle",
      "type": "array",
      "items": {
        "type": "string"
      },
      "uniqueItems": true
    },
    "mandant": {
      "description": "Liste von Mandantennummern: wenn Array leer dann alle",
      "type": "array",
      "items": {
        "type": "string"
      },
      "uniqueItems": true
    },
    "vermittler": {
      "description": "Liste von Vermittlernummern: wenn Array leer dann alle",
      "type": "array",
      "items": {
        "type": "string"
      },
      "uniqueItems": true
    },
    "kunde": {
      "description": "Liste von Kundennummern: wenn Array leer dann alle",
      "type": "array",
      "items": {
        "type": "string"
      },
      "uniqueItems": true
    }
  },
  "required": [
    "kumuliert",
    "zeitspanne",
    "periode",
    "assek",
    "betreuer",
    "mandant",
    "sparte",
    "kunde",
    "vermittler"
  ],
  "additionalItems": false,
  "additionalProperties": false
}