backend/source/services/group.ts

71 lines
1.5 KiB
TypeScript
Raw Normal View History

2024-05-20 21:56:48 +02:00
/*
Espe | Ein schlichtes Werkzeug zur Mitglieder-Verwaltung | Backend
Copyright (C) 2024 Christian Fraß
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public
License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later
version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see
<https://www.gnu.org/licenses/>.
*/
2025-07-07 12:10:52 +02:00
namespace _espe.service.group
2024-04-29 20:48:20 +02:00
{
2025-08-21 21:46:05 +00:00
/**
*/
export function list(
2025-08-22 10:52:52 +02:00
) : Promise<
Array<
{
id : _espe.type.group_id;
preview : {
name : string;
label : string;
};
}
>
>
2025-08-21 21:46:05 +00:00
{
return _espe.repository.group.list(null);
}
/**
*/
export function get(
id : _espe.type.group_id
) : Promise<_espe.type.group_object>
{
return _espe.repository.group.read(id);
}
2024-04-29 20:48:20 +02:00
/**
*/
2025-07-07 12:10:52 +02:00
export function add(
2025-08-21 21:46:05 +00:00
object : _espe.type.group_object
2025-07-07 12:10:52 +02:00
) : Promise<_espe.type.group_id>
2024-04-29 20:48:20 +02:00
{
2025-08-21 21:46:05 +00:00
return _espe.repository.group.create(object);
}
/**
*/
2025-08-22 10:52:52 +02:00
export async function modify(
2025-08-21 21:46:05 +00:00
id : _espe.type.group_id,
2025-08-22 10:52:52 +02:00
label : string
2025-08-21 21:46:05 +00:00
) : Promise<void>
{
2025-08-22 10:52:52 +02:00
const object : _espe.type.group_object = await _espe.repository.group.read(id);
object.label = label;
await _espe.repository.group.update(id, object);
2024-04-29 20:48:20 +02:00
}
}