feat: Phase B - Frontend API für M:N Zielgruppen
Frontend API Layer: - 5 neue api.js Funktionen für M:N Management - listTrainingStyleTargetGroups(filters) - Liste mit Filtern - createTrainingStyleTargetGroup(data) - Neue Zuordnung - updateTrainingStyleTargetGroup(id, data) - is_primary ändern - deleteTrainingStyleTargetGroup(id) - Zuordnung löschen - getTrainingStylesHierarchy() - Hierarchische Struktur für Tree-View Pattern: Konsistent mit bestehenden Catalog-Funktionen Export: Alle Funktionen zum api-Objekt hinzugefügt Version: 0.3.4 (Phase B)
This commit is contained in:
parent
1e5e18c0b3
commit
1891a4ab88
|
|
@ -370,6 +370,35 @@ export async function deleteTargetGroup(id) {
|
||||||
return request(`/api/target-groups/${id}`, { method: 'DELETE' })
|
return request(`/api/target-groups/${id}`, { method: 'DELETE' })
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Training Style → Target Groups (M:N Assignments)
|
||||||
|
export async function listTrainingStyleTargetGroups(filters = {}) {
|
||||||
|
const query = new URLSearchParams(filters).toString()
|
||||||
|
return request(`/api/training-style-target-groups${query ? '?' + query : ''}`)
|
||||||
|
}
|
||||||
|
|
||||||
|
export async function createTrainingStyleTargetGroup(data) {
|
||||||
|
return request('/api/training-style-target-groups', {
|
||||||
|
method: 'POST',
|
||||||
|
body: JSON.stringify(data)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export async function updateTrainingStyleTargetGroup(id, data) {
|
||||||
|
return request(`/api/training-style-target-groups/${id}`, {
|
||||||
|
method: 'PUT',
|
||||||
|
body: JSON.stringify(data)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export async function deleteTrainingStyleTargetGroup(id) {
|
||||||
|
return request(`/api/training-style-target-groups/${id}`, { method: 'DELETE' })
|
||||||
|
}
|
||||||
|
|
||||||
|
export async function getTrainingStylesHierarchy(filters = {}) {
|
||||||
|
const query = new URLSearchParams(filters).toString()
|
||||||
|
return request(`/api/training-styles/hierarchy${query ? '?' + query : ''}`)
|
||||||
|
}
|
||||||
|
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
// Training Planning
|
// Training Planning
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
|
|
@ -494,6 +523,11 @@ export const api = {
|
||||||
createTargetGroup,
|
createTargetGroup,
|
||||||
updateTargetGroup,
|
updateTargetGroup,
|
||||||
deleteTargetGroup,
|
deleteTargetGroup,
|
||||||
|
listTrainingStyleTargetGroups,
|
||||||
|
createTrainingStyleTargetGroup,
|
||||||
|
updateTrainingStyleTargetGroup,
|
||||||
|
deleteTrainingStyleTargetGroup,
|
||||||
|
getTrainingStylesHierarchy,
|
||||||
|
|
||||||
// System
|
// System
|
||||||
getVersion,
|
getVersion,
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user