hv-service/swagger.yaml

466 lines
12 KiB
YAML

openapi: 3.0.0
info:
title: Hausverwaltung
version: "0.1"
paths:
/hv/objekte:
get:
tags: [ "Objekte" ]
operationId: Objekte.get_objekte
summary: Returns all Objekte
responses:
200:
description: Successful response.
content:
'application/json':
schema:
type: array
items:
$ref: '#/components/schemas/Objekt'
404:
description: No Objekte available
500:
description: Some server error
/hv/objekt/{id}:
get:
tags: [ "Objekte" ]
operationId: Objekte.get_objekt
summary: Returns Objekt by id
parameters:
- name: id
in: path
required: true
schema:
type: integer
responses:
200:
description: Successful response.
content:
'application/json':
schema:
$ref: '#/components/schemas/Objekt'
404:
description: Objekt not found
500:
description: Some server error
/hv/wohnungen:
get:
tags: [ "Wohnungen" ]
operationId: Wohnungen.get_wohnungen
summary: Returns all Wohnungen
responses:
200:
description: Successful response.
content:
'application/json':
schema:
type: array
items:
$ref: '#/components/schemas/Wohnung'
404:
description: No Wohnung available
500:
description: Some server error
/hv/objekt/{id}/wohnungen:
get:
tags: [ "Wohnungen", "Objekte" ]
operationId: Wohnungen.get_wohnungen_by_objekt
summary: Returns all Wohnungen for one Objekt
parameters:
- name: id
in: path
required: true
schema:
type: integer
responses:
200:
description: Successful response.
content:
'application/json':
schema:
type: array
items:
$ref: '#/components/schemas/Wohnung'
404:
description: No Wohnung available
500:
description: Some server error
/hv/wohnung/{id}:
get:
tags: [ "Wohnungen" ]
operationId: Wohnungen.get_wohnung
summary: Returns Wohnung by id
parameters:
- name: id
in: path
required: true
schema:
type: integer
responses:
200:
description: Successful response.
content:
'application/json':
schema:
$ref: '#/components/schemas/Wohnung'
404:
description: Wohnung not found
500:
description: Some server error
/hv/mieters:
get:
tags: [ "Mieter" ]
operationId: Mieter.get_mieters
summary: Returns all Mieter
responses:
200:
description: Successful response.
content:
'application/json':
schema:
type: array
items:
$ref: '#/components/schemas/Mieter'
404:
description: No Mieter available
500:
description: Some server error
/hv/mieters/active:
get:
tags: [ "Mieter" ]
operationId: Mieter.get_mieters_active
summary: Returns all currently active Mieters
responses:
200:
description: Successful response.
content:
'application/json':
schema:
type: array
items:
$ref: '#/components/schemas/Mieter'
404:
description: No Mieter available
500:
description: Some server error
/hv/mieter/{id}:
get:
tags: [ "Mieter" ]
operationId: Mieter.get_mieter
summary: Returns Mieter by id
parameters:
- name: id
in: path
required: true
schema:
type: integer
responses:
200:
description: Successful response.
content:
'application/json':
schema:
$ref: '#/components/schemas/Mieter'
404:
description: Mieter not found
500:
description: Some server error
/hv/forderung/{id}:
get:
tags: [ "Forderung" ]
operationId: ZahlungenForderungen.get_forderung
summary: Returns Forderung by id
parameters:
- name: id
in: path
required: true
schema:
type: integer
responses:
200:
description: Successful response.
content:
'application/json':
schema:
$ref: '#/components/schemas/Forderung'
404:
description: Forderung not found
500:
description: Some server error
/hv/mieter/{mieter_id}/forderungen:
get:
tags: [ "Mieter", "Forderung" ]
operationId: ZahlungenForderungen.get_forderungen_by_mieter
summary: Returns all Forderungen for a given Mieter
parameters:
- name: mieter_id
in: path
required: true
schema:
type: integer
responses:
200:
description: Successful response.
content:
'application/json':
schema:
type: array
items:
$ref: '#/components/schemas/Forderung'
404:
description: No Forderung available
500:
description: Some server error
/hv/zahlung/{id}:
get:
tags: [ "Zahlung" ]
operationId: ZahlungenForderungen.get_zahlung
summary: Returns Zahlung by id
parameters:
- name: id
in: path
required: true
schema:
type: integer
responses:
200:
description: Successful response.
content:
'application/json':
schema:
$ref: '#/components/schemas/Zahlung'
404:
description: Zahlung not found
500:
description: Some server error
/hv/mieter/{mieter_id}/zahlungen:
get:
tags: [ "Mieter", "Zahlung" ]
operationId: ZahlungenForderungen.get_zahlungen_by_mieter
summary: Returns all Zahlungen for a given Mieter
parameters:
- name: mieter_id
in: path
required: true
schema:
type: integer
responses:
200:
description: Successful response.
content:
'application/json':
schema:
type: array
items:
$ref: '#/components/schemas/Zahlung'
404:
description: No Zahlung available
500:
description: Some server error
/hv/mieter/{mieter_id}/zahlungforderung/{year}:
get:
tags: [ "Mieter", "Zahlung", "Forderung" ]
operationId: ZahlungenForderungen.get_zahlungforderung_by_mieter_and_year
summary: Returns all Zahlungen and Forderungen for a given Mieter and a given year
parameters:
- name: mieter_id
in: path
required: true
schema:
type: integer
- name: year
in: path
required: true
schema:
type: integer
responses:
200:
description: Successful response
content:
'application/json':
schema:
type: array
items:
$ref: '#/components/schemas/ZahlungForderung'
404:
description: No ZahlungForderung available
500:
description: Some server error
/hv/mieter/{mieter_id}/saldo/{year}:
get:
tags: [ "Mieter", "Zahlung" ]
operationId: ZahlungenForderungen.get_saldo_by_mieter_and_year
summary: Returns sum of Zahlungen for a given Mieter and a given year
parameters:
- name: mieter_id
in: path
required: true
schema:
type: integer
- name: year
in: path
required: true
schema:
type: integer
responses:
200:
description: Successful response
content:
'application/json':
schema:
$ref: '#/components/schemas/Saldo'
404:
description: Neither Forderungen nor Zahlungen available
500:
description: Some server error
/hv/zahlung:
post:
tags: [ "Zahlung" ]
operationId: ZahlungenForderungen.put_zahlung
summary: Inserts a new Zahlung
requestBody:
description: Zahlung
content:
application/json:
schema:
$ref: '#/components/schemas/Zahlung'
responses:
202:
description: Zahlung successfully inserted
500:
description: Some server or database error
/hv/forderung/insertAllForMonth:
post:
tags: [ "Forderung" ]
operationId: ZahlungenForderungen.insertAllForMonth
summary: Insert the Forderungen for the insertAllForMonth
responses:
202:
description: Forderungen successfully inserted
500:
description: Some server or database error
components:
schemas:
Objekt:
description: Objekt type
type: object
properties:
id:
type: integer
shortname:
type: string
flaeche:
type: number
Wohnung:
description: Wohnung type
type: object
properties:
id:
type: integer
objekt:
type: integer
shortname:
type: string
flaeche:
type: number
objekt_shortname:
type: string
Mieter:
description: Mieter type
type: object
properties:
id:
type: integer
objekt:
type: integer
wohnung:
type: integer
wohnung_shortname:
type: string
objekt_shortname:
type: string
anrede:
type: string
vorname:
type: string
nachname:
type: string
strasse:
type: string
plz:
type: string
ort:
type: string
telefon:
type: string
einzug:
type: string
auszug:
type: string
Forderung:
description: Forderung type
type: object
properties:
id:
type: integer
mieter:
type: integer
datum:
type: string
betrag:
type: number
kommentar:
type: string
ref_wohnung:
type: number
Zahlung:
description: Zahlung type
type: object
properties:
id:
type: integer
mieter:
type: integer
datum_ist:
type: string
datum_soll:
type: string
betrag:
type: number
kommentar:
type: string
ZahlungForderung:
description: ZahlungForderung type
type: object
properties:
zf_type:
type: string
id:
type: integer
datum_soll:
type: string
datum_ist:
type: string
betrag_zahlung:
type: number
betrag_forderung:
type: number
kommentar:
type: string
mieter:
type: number
Saldo:
description: Saldo type
type: object
properties:
forderungen:
type: number
zahlungen:
type: number
saldo:
type: number