13 Commits
Author SHA1 Message Date
JiriUhlirandClaude Opus 5 225161e4ca revize endpointu: cteni NullableProperty, filtr v UTC, attachments
Kontrola vsech 180 operaci proti falesnemu iDoklad API a round trip
331 modelu SDK v obou smerech.

- SdkNullablePropertyConverter doplnuje cteni NullableProperty<T>.
  Konvertor SDK umi jen zapis, takze PATCH s takovou polozkou koncil
  prazdnou 500 uz pri cteni tela. Tykalo se 29 modelu. Zapis zustava
  na konvertoru SDK, odchozi payload se nemeni.
- Datum uvnitr NullableProperty se normalizuje na UTC stejne jako
  zbytek serializace.
- ListModifiers parsuje datum ve filtru s AdjustToUniversal a
  AssumeUniversal. Filtr se zonou se drive posouval o offset.
- POST /attachments kontroluje FileName a FileBytes, SDK na ne sahalo
  bez kontroly na null a vracelo neosetrenou 500.
- ExceptionHandlingMiddleware ma posledni zachyt, zadny request uz
  nekonci prazdnou 500.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-25 11:13:21 +02:00
JiriUhlirandClaude Opus 5 73f01d0228 oprava datumu: prijem data bez zony jako UTC
SDK validuje Post/Patch modely pred odeslanim a u kazde polozky DateTime
vyzaduje Kind == Utc. Datum bez zony, napriklad "2026-08-25", nacetl
Newtonsoft jako Unspecified, takze POST /issued-invoices koncil chybou
"DateTime must be in UTC format" jeste pred volanim iDokladu.

- DateTimeZoneHandling.Utc: hodnota bez zony dostane Kind Utc bez posunu,
  hodnota s offsetem se prepocita do UTC
- ExceptionHandlingMiddleware zachytava IdokladValidationException a vraci
  400 se seznamem vadnych vlastnosti misto prazdne 500

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-25 10:51:45 +02:00
JiriUhlir 2f3afb6af0 oprava konvertoru 2026-08-25 08:53:52 +02:00
JiriUhlir d9e3c59d69 more flex and filters 2026-07-14 06:21:37 +02:00
JiriUhlir 1a898b95f9 swagger + agents 2026-06-15 10:05:15 +02:00
JiriUhlir cadfdaef1b applicationId uz neni povinne 2026-06-15 08:42:56 +02:00
JiriUhlirandClaude Opus 4.8 b01c09006a swagger: advertise PathBase as OpenAPI server so Try-it-out targets the proxy prefix
Swagger UI was calling the host root (services.csbot.cz/contacts) instead of
services.csbot.cz/apps/idoklad/contacts. Emit servers=[{url: PathBase}] so the
same base that /docs runs under is prefixed to the API requests too.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-15 08:20:14 +02:00
JiriUhlirandClaude Opus 4.8 e6d1b06d84 redeploy: re-trigger autodeploy for swagger /docs fix (aad8ba3)
Previous push contained two commits; autodeploy appears to have built the
first (06b22df) but not the tip (aad8ba3) with the relative Swagger endpoint
fix. This empty commit gives a single new tip to deploy.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-12 15:12:58 +02:00
JiriUhlir aad8ba3d03 fixed swagger 2026-06-12 14:29:01 +02:00
JiriUhlir 06b22dfa4e fixed swagger source and removed release versions 2026-06-12 14:28:42 +02:00
JiriUhlir 0805748567 zbyle sluzby podle CC 2026-06-12 14:18:21 +02:00
JiriUhlir 1801d02e5c cc nasazeni 2026-06-12 13:18:35 +02:00
AppFactory Bot bbec747bb7 Initial .NET API service 2026-06-12 10:26:56 +00:00