import { get, post, patch, del } from './client.js'; // Disciplines export async function fetchDisciplines(params = {}) { const query = new URLSearchParams(params).toString(); return get(query ? `/api/organization/discipline?${query}` : '/api/organization/discipline'); } export async function fetchDiscipline(id) { return get(`/api/organization/discipline/${id}`); } export async function createDiscipline(data) { const payload = { DisciplineCode: data.DisciplineCode, DisciplineName: data.DisciplineName, Parent: data.Parent || null, }; return post('/api/organization/discipline', payload); } export async function updateDiscipline(data) { const payload = { id: data.DisciplineID, DisciplineCode: data.DisciplineCode, DisciplineName: data.DisciplineName, Parent: data.Parent || null, }; return patch('/api/organization/discipline', payload); } export async function deleteDiscipline(id) { return del('/api/organization/discipline', { id }); } // Departments export async function fetchDepartments(params = {}) { const query = new URLSearchParams(params).toString(); return get(query ? `/api/organization/department?${query}` : '/api/organization/department'); } export async function fetchDepartment(id) { return get(`/api/organization/department/${id}`); } export async function createDepartment(data) { const payload = { DepartmentCode: data.DepartmentCode, DepartmentName: data.DepartmentName, DisciplineID: data.DisciplineID, }; return post('/api/organization/department', payload); } export async function updateDepartment(data) { const payload = { id: data.DepartmentID, DepartmentCode: data.DepartmentCode, DepartmentName: data.DepartmentName, DisciplineID: data.DisciplineID, }; return patch('/api/organization/department', payload); } export async function deleteDepartment(id) { return del('/api/organization/department', { id }); }