[add] action:member-read

This commit is contained in:
roydfalk 2024-06-23 11:44:05 +02:00
parent 6cebec2348
commit 048ccdbfd6
2 changed files with 35 additions and 6 deletions

View file

@ -147,6 +147,17 @@ def backend_api_call_member_list(
)
def backend_api_call_member_read(
member_id : int
):
return backend_api_call_wrapped(
True,
"GET",
string_coin("/member/read/{{id}}", {"id": "%u" % member_id}),
None
)
def backend_api_call_member_project(
membership_number : _typing.Optional[str],
name_real_value : str,
@ -167,12 +178,12 @@ def backend_api_call_member_project(
def backend_api_call_member_delete(
member_id
member_id : int
):
return backend_api_call_wrapped(
True,
"DELETE",
string_coin("/member/{{id}}", {"id": member_id}),
string_coin("/member/delete/{{id}}", {"id": ("%u" % member_id)}),
None
)

View file

@ -23,11 +23,12 @@ def main():
dest = "action",
choices = [
"member-list",
"member-read",
"member-project",
"member-delete"
"member-delete",
],
metavar = "<action>",
help = "auszuführende Aktion; Optionen: 'conf-schema' : JSON-Schema der Konfiguration ausgeben | 'conf-expose' : vervollständigte Konfiguration ausgegeben | 'member-list' : Liste der Mitglieder ausgeben | 'member-project' : ein Mitglied anlegen und die ID des erzeugten Datensatzes ausgeben | 'member-delete' : einer Mitglieder-Datensatz löschen",
help = "auszuführende Aktion; Optionen: 'conf-schema' : JSON-Schema der Konfiguration ausgeben | 'conf-expose' : vervollständigte Konfiguration ausgegeben | 'member-list' : Liste der Mitglieder ausgeben | 'member-read' : Daten eines Mitglieds ausgeben | 'member-project' : ein Mitglied anlegen und die ID des erzeugten Datensatzes ausgeben | 'member-delete' : einer Mitglieder-Datensatz löschen",
)
argument_parser.add_argument(
"-c",
@ -63,7 +64,7 @@ def main():
dest = "name",
default = None,
metavar = "<name>",
help = "Name des Mitglieds",
help = "Name des Mitglieds; Leerzeichen sind durch '_' zu ersetzen",
)
argument_parser.add_argument(
"-e",
@ -101,6 +102,23 @@ def main():
data = backend_api_call_member_list(
)
_sys.stdout.write(_json.dumps(data, indent = "\t") + "\n")
elif (args.action == "member-read"):
if (
(args.id is None)
):
log_error(
"mandatory_parameters_missing",
{
"parameters": [
"id",
]
}
)
else:
data = backend_api_call_member_read(
args.id
)
_sys.stdout.write(_json.dumps(data, indent = "\t") + "\n")
elif (args.action == "member-project"):
if (
(args.membership_number is None)
@ -122,7 +140,7 @@ def main():
else:
member_id = backend_api_call_member_project(
args.membership_number,
args.name,
args.name.replace("_", " "),
args.email_address,
None
)