Corriger les dossiers animaux et le suivi médical

This commit is contained in:
Alexandre NOEL 2026-10-01 15:22:09 +02:00
commit 7b89fd5dfa
34 changed files with 440 additions and 39 deletions

View file

@ -56,6 +56,16 @@ final class SurgeriesController
}
$db = DB::pdo();
$tariff = (int) ($_POST['tariff_id'] ?? 0) ?: null;
$clinic = (int) ($_POST['clinic_contact_id'] ?? 0) ?: null;
if ($tariff) {
$validTariff = $db->prepare('SELECT 1 FROM clinic_tariffs WHERE id=? AND clinic_contact_id=? AND active=1');
$validTariff->execute([$tariff, $clinic]);
if (!$clinic || !$validTariff->fetchColumn()) {
http_response_code(400);
echo h(t('surgery.invalid_data'));
return;
}
}
$amountRaw = str_replace(',', '.', trim((string) ($_POST['amount'] ?? '')));
$amount = $amountRaw === '' ? null : (int) round(max(0, (float) $amountRaw) * 100);
if ($amount === null && $tariff) {
@ -77,7 +87,7 @@ final class SurgeriesController
$name,
$date,
$status,
(int) ($_POST['clinic_contact_id'] ?? 0) ?: null,
$clinic,
(int) ($_POST['veterinarian_contact_id'] ?? 0) ?: null,
$tariff,
$amount,
@ -92,7 +102,7 @@ final class SurgeriesController
'INSERT INTO animal_expenses(animal_id,clinic_contact_id,tariff_id,source_type,source_id,label,occurred_on,quantity,catalog_unit_cents,discount_percent,total_cents,notes,created_by) VALUES(?,?,?,\'surgery\',?,?,?,1,?,0,?,?,?)',
)->execute([
$animal,
(int) ($_POST['clinic_contact_id'] ?? 0) ?: null,
$clinic,
$tariff,
$id,
$name,