refactor: Move course dates from registracie to kurzy table

- Add datumOd and datumDo columns to kurzy table
- Remove datumOd, datumDo, pocetUcastnikov from registracie table
- Update schema, validators, and services accordingly
- Certificate generation now uses course dates
- Migration preserves existing data by copying most recent dates

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
richardtekula
2026-01-29 12:52:56 +01:00
parent 2fee1f39bc
commit 12acd68156
6 changed files with 49 additions and 36 deletions

View File

@@ -20,6 +20,8 @@ export const createKurzSchema = z.object({
maxKapacita: z.number().int().positive().optional().nullable(),
aktivny: z.boolean().optional(),
farba: z.string().max(20).optional().nullable(),
datumOd: z.string().optional().nullable(),
datumDo: z.string().optional().nullable(),
});
export const updateKurzSchema = createKurzSchema.partial();
@@ -45,10 +47,7 @@ export const updateUcastnikSchema = createUcastnikSchema.partial();
export const createRegistraciaSchema = z.object({
kurzId: z.number().int().positive(),
ucastnikId: z.number().int().positive(),
datumOd: z.string().optional().nullable(),
datumDo: z.string().optional().nullable(),
formaKurzu: z.enum(['prezencne', 'online', 'hybridne']).optional(),
pocetUcastnikov: z.number().int().positive().optional(),
fakturaCislo: z.string().max(100).optional().nullable(),
fakturaVystavena: z.boolean().optional(),
zaplatene: z.boolean().optional(),