diff --git a/Forderungen.py b/Forderungen.py new file mode 100644 index 0000000..b773cb7 --- /dev/null +++ b/Forderungen.py @@ -0,0 +1,23 @@ +from dbpool import getConnection, getOne, getMany + +def get_forderungen_by_mieter(mieter_id): + return getMany(""" +SELECT id, + mieter as mieter_id, + datum, + betrag, + kommentar + FROM forderung + WHERE mieter = ? +""", [ mieter_id ], "Forderung") + +def get_forderung(id): + return getOne(""" +SELECT id, + mieter as mieter_id + datum, + betrag, + kommentar + FROM forderung + WHERE id = ? +""", [ id ], "Forderung") diff --git a/Zahlungen.py b/Zahlungen.py new file mode 100644 index 0000000..fb1a4ac --- /dev/null +++ b/Zahlungen.py @@ -0,0 +1,25 @@ +from dbpool import getConnection, getOne, getMany + +def get_zahlungen_by_mieter(mieter_id): + return getMany(""" +SELECT id, + mieter as mieter_id, + datum_ist, + datum_soll + betrag, + kommentar + FROM zahlung + WHERE mieter = ? +""", [ mieter_id ], "Zahlung") + +def get_zahlung(id): + return getOne(""" +SELECT id, + mieter as mieter_id + datum_ist, + datum_soll + betrag, + kommentar + FROM zahlung + WHERE id = ? +""", [ id ], "Zahlung") diff --git a/swagger.yaml b/swagger.yaml index daa2274..af7bb4b 100644 --- a/swagger.yaml +++ b/swagger.yaml @@ -109,6 +109,86 @@ paths: description: Mieter not found 500: description: Some server error + /hv/forderung/{id}: + get: + tags: [ "Forderung" ] + operationId: Forderungen.get_forderung + summary: Returns Forderung by id + parameters: + - name: id + in: path + type: integer + required: true + responses: + 200: + description: Successful response. + schema: + $ref: '#/definitions/Forderung' + 404: + description: Forderung not found + 500: + description: Some server error + /hv/mieter/{mieter_id}/forderungen: + get: + tags: [ "Mieter", "Forderung" ] + operationId: Forderungen.get_forderungen_by_mieter + summary: Returns all Forderungen for a given Mieter + parameters: + - name: mieter_id + in: path + type: integer + required: true + responses: + 200: + description: Successful response. + schema: + type: array + items: + $ref: '#/definitions/Forderung' + 404: + description: No Forderung available + 500: + description: Some server error + /hv/zahlung/{id}: + get: + tags: [ "Zahlung" ] + operationId: Zahlungen.get_zahlung + summary: Returns Zahlung by id + parameters: + - name: id + in: path + type: integer + required: true + responses: + 200: + description: Successful response. + schema: + $ref: '#/definitions/Zahlung' + 404: + description: Zahlung not found + 500: + description: Some server error + /hv/mieter/{mieter_id}/zahlungen: + get: + tags: [ "Mieter", "Zahlung" ] + operationId: Zahlungen.get_zahlungen_by_mieter + summary: Returns all Zahlungen for a given Mieter + parameters: + - name: mieter_id + in: path + type: integer + required: true + responses: + 200: + description: Successful response. + schema: + type: array + items: + $ref: '#/definitions/Zahlung' + 404: + description: No Zahlung available + 500: + description: Some server error definitions: Objekt: @@ -167,3 +247,34 @@ definitions: type: string auszug: type: string + Forderung: + description: Forderung type + type: object + properties: + id: + type: integer + mieter_id: + type: integer + datum: + type: string + betrag: + type: number + kommentar: + type: string + Zahlung: + description: Zahlung type + type: object + properties: + id: + type: integer + mieter_id: + type: integer + datum_ist: + type: string + datum_soll: + type: string + betrag: + type: number + kommentar: + type: string +