BillingData: Move schema to Resources/

This commit is contained in:
2024-01-05 13:45:37 +01:00
parent 121ca10261
commit e75e2ddbda
3 changed files with 2 additions and 2 deletions

View File

@ -0,0 +1,135 @@
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"required": ["mode"],
"anyOf": [{
"required": ["version", "payment", "curves"],
"additionalProperties": false,
"properties": {
"mode": {"enum": ["elwig"]},
"version": {"enum": [1]},
"payment": {
"type": ["number", "string", "object"],
"pattern": "^curve:[0-9]+$",
"additionalProperties": false,
"properties": {
"default": {
"type": ["number", "string"],
"pattern": "^curve:[0-9]+$"
}
},
"patternProperties": {
"^[A-Z]+$": {
"type": ["number", "string"],
"pattern": "^curve:[0-9]+$"
}
}
},
"quality": {
"type": "object",
"additionalProperties": false,
"patternProperties": {
"^[A-Z]{3}$": {
"type": ["number", "string", "object"],
"pattern": "^curve:[0-9]+$",
"additionalProperties": false,
"properties": {
"default": {
"type": ["number", "string"],
"pattern": "^curve:[0-9]+$"
}
},
"patternProperties": {
"^[A-Z]+$": {
"type": ["number", "string"],
"pattern": "^curve:[0-9]+$"
}
}
}
}
},
"curves": {
"type": "array",
"items": {"$ref": "#/definitions/curve"}
}
}
}, {
"properties": {
"mode": {"enum": ["wgmaster"]},
"AuszahlungSorten": {
"type": "object",
"additionalProperties": false,
"required": ["Kurven"],
"properties": {
"Kurven": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"minProperties": 1,
"patternProperties": {
"^[0-9]+(\\.[0-9]+)?oe$": {"type": "number"}
}
}
}
},
"patternProperties": {
"^[A-Z]{2}$": {
"type": "object",
"additionalProperties": false,
"patternProperties": {
"^[A-Z]*$": {
"type": "object",
"additionalProperties": false,
"properties": {
"Gebunden": {
"type": "integer",
"minimum": 0
},
"NichtGebunden": {
"type": "integer",
"minimum": 0
}
}
}
}
}
}
}
}
}],
"definitions": {
"curve": {
"type": "object",
"required": ["id", "mode", "data"],
"additionalProperties": false,
"properties": {
"id": {
"type": "integer",
"minimum": 0
},
"mode": {"enum": ["oe", "kmw"]},
"data": {
"anyOf": [
{"type": "number" },
{"$ref": "#/definitions/curve_data"}
]
},
"geb": {
"anyOf": [
{"type": "number"},
{"$ref": "#/definitions/curve_data"}
]
}
}
},
"curve_data": {
"type": "object",
"additionalProperties": false,
"minProperties": 1,
"patternProperties": {
"^([0-9]+(\\.[0-9]+)?)(oe|kmw)$": {"type": "number"}
}
}
}
}