[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( def backend_api_call_member_project(
membership_number : _typing.Optional[str], membership_number : _typing.Optional[str],
name_real_value : str, name_real_value : str,
@ -167,12 +178,12 @@ def backend_api_call_member_project(
def backend_api_call_member_delete( def backend_api_call_member_delete(
member_id member_id : int
): ):
return backend_api_call_wrapped( return backend_api_call_wrapped(
True, True,
"DELETE", "DELETE",
string_coin("/member/{{id}}", {"id": member_id}), string_coin("/member/delete/{{id}}", {"id": ("%u" % member_id)}),
None None
) )

View file

@ -23,11 +23,12 @@ def main():
dest = "action", dest = "action",
choices = [ choices = [
"member-list", "member-list",
"member-read",
"member-project", "member-project",
"member-delete" "member-delete",
], ],
metavar = "<action>", 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( argument_parser.add_argument(
"-c", "-c",
@ -63,7 +64,7 @@ def main():
dest = "name", dest = "name",
default = None, default = None,
metavar = "<name>", metavar = "<name>",
help = "Name des Mitglieds", help = "Name des Mitglieds; Leerzeichen sind durch '_' zu ersetzen",
) )
argument_parser.add_argument( argument_parser.add_argument(
"-e", "-e",
@ -101,6 +102,23 @@ def main():
data = backend_api_call_member_list( data = backend_api_call_member_list(
) )
_sys.stdout.write(_json.dumps(data, indent = "\t") + "\n") _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"): elif (args.action == "member-project"):
if ( if (
(args.membership_number is None) (args.membership_number is None)
@ -122,7 +140,7 @@ def main():
else: else:
member_id = backend_api_call_member_project( member_id = backend_api_call_member_project(
args.membership_number, args.membership_number,
args.name, args.name.replace("_", " "),
args.email_address, args.email_address,
None None
) )