Files
omsorg/omsorgapp/src/api/employeeFacilityDistancesApi.js
T
Felix KemmlerandClaude Sonnet 5 ffa2c4a9e7
Docker-Images bauen und veröffentlichen / build (, omsorgCore/Dockerfile, omsorgcore) (push) Successful in 16s
Docker-Images bauen und veröffentlichen / build (, omsorgWeb/Dockerfile, omsorgweb) (push) Successful in 5s
Docker-Images bauen und veröffentlichen / build (, omsorgapp/Dockerfile, omsorgapp) (push) Successful in 19s
Add kilometer-based Fahrtkosten billing, self-service distance entry, role deletion
- Facility: TravelCostMode (Pauschale/ProKilometer) + TravelCostPerKm, alongside
  the existing flat rate; fixes FacilityService.UpdateAsync silently dropping all
  Konditionen fields on update.
- New EmployeeFacilityDistance (Mitarbeiter x Einrichtung -> km) with full
  office-side CRUD in omsorgapp, plus a self-service endpoint/UI so field staff
  can maintain their own commute distance via OMSORG Connect (new
  ModuleType.EmployeeFacilityDistances, Own-scope, no Facilities access needed).
- Roles can now be deleted (blocked with a 409 while still assigned to a user).
- Fix employeesApi.js missing the Date-object conversion for dateOfBirth/entryDate/
  exitDate that crashed employee creation whenever a date was filled in; add a
  clear/remove control for those date fields.
- Requirements: flesh out FR-REC-3 with a staged Akquise cadence, add FR-REC-5/6
  for CRM feature scope and success metrics.
- Regenerate api-client-ts and api-client-php for all of the above.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-10 20:15:42 +02:00

27 lines
1.5 KiB
JavaScript

import { EmployeeFacilityDistancesApi } from "omsorgcore-client-ts";
import { configFor, callApi } from "./apiClientHelpers.js";
// Kapselt /api/facilities/{facilityId}/employee-distances von omsorgCore
// (EmployeeFacilityDistancesController) über den generierten Client (omsorgcore-client-ts).
// Mitarbeiter-Einrichtung-Entfernungen sind eine 1:n-Unterressource von Facility (FR-EIN-4,
// Grundlage für die kilometerbasierte Fahrtkostenabrechnung).
export async function listEmployeeFacilityDistances(accessToken, facilityId) {
const api = new EmployeeFacilityDistancesApi(configFor(accessToken));
return callApi(api.apiFacilitiesFacilityIdEmployeeDistancesGetRaw({ facilityId }));
}
export async function createEmployeeFacilityDistance(accessToken, facilityId, payload) {
const api = new EmployeeFacilityDistancesApi(configFor(accessToken));
return callApi(api.apiFacilitiesFacilityIdEmployeeDistancesPostRaw({ facilityId, createEmployeeFacilityDistanceRequest: payload }));
}
export async function updateEmployeeFacilityDistance(accessToken, facilityId, id, payload) {
const api = new EmployeeFacilityDistancesApi(configFor(accessToken));
return callApi(api.apiFacilitiesFacilityIdEmployeeDistancesIdPutRaw({ facilityId, id, updateEmployeeFacilityDistanceRequest: payload }));
}
export async function deleteEmployeeFacilityDistance(accessToken, facilityId, id) {
const api = new EmployeeFacilityDistancesApi(configFor(accessToken));
return callApi(api.apiFacilitiesFacilityIdEmployeeDistancesIdDeleteRaw({ facilityId, id }));
}