From 2108c8800153f594799e65b5b23ff5486b2274d3 Mon Sep 17 00:00:00 2001 From: Nicolai Ort Date: Mon, 9 Dec 2024 16:36:14 +0100 Subject: [PATCH] feat(certificates): Base types --- models/certificate.go | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 models/certificate.go diff --git a/models/certificate.go b/models/certificate.go new file mode 100644 index 0000000..903bfdf --- /dev/null +++ b/models/certificate.go @@ -0,0 +1,36 @@ +package models + +type CertificateRequest struct { + Runners []RunnerWithDonations `json:"runners"` + Locale string `json:"locale" enums:"en,de"` +} + +type RunnerWithDonations struct { + ID int `json:"id"` + FirstName string `json:"first_name"` + MiddleName string `json:"middle_name"` + LastName string `json:"last_name"` + Group Group `json:"group"` + Distance int `json:"distance"` + DistanceDonations []DistanceDonation `json:"distance_donations"` +} + +type DistanceDonation struct { + ID int `json:"id"` + Amount int `json:"amount"` + PaidAmount int `json:"paid_amount"` + AmountPerDistance int `json:"amount_per_distance"` + Donor Donor `json:"donor"` +} + +type Donor struct { + ID int `json:"id"` + FirstName string `json:"first_name"` + MiddleName string `json:"middle_name"` + LastName string `json:"last_name"` +} + +type CertificateTemplateOptions struct { + Runners []RunnerWithDonations `json:"runners"` + EventName string `json:"event_name"` +}