added absence - abwesenheit, closes #11
This commit is contained in:
@@ -1,6 +1,38 @@
|
||||
package models
|
||||
|
||||
import "time"
|
||||
import (
|
||||
"log"
|
||||
"time"
|
||||
)
|
||||
|
||||
type AbsenceType struct {
|
||||
Value int8
|
||||
Label string
|
||||
}
|
||||
|
||||
const (
|
||||
AbsenceNone int8 = iota
|
||||
AbsenceUrlaub
|
||||
AbsenceKurzarbeit
|
||||
AbsenceKrank
|
||||
AbsenceKindkrank
|
||||
)
|
||||
|
||||
var AbsenceTypes = []AbsenceType{
|
||||
// {Value: AbsenceNone, Label: "Abwesenheit"},
|
||||
{Value: AbsenceUrlaub, Label: "Urlaub"},
|
||||
{Value: AbsenceKurzarbeit, Label: "Kurzarbeit"},
|
||||
{Value: AbsenceKrank, Label: "Krank"},
|
||||
{Value: AbsenceKindkrank, Label: "Kindkrank"},
|
||||
}
|
||||
|
||||
var AbsenceTypesLabel = map[int8]string{
|
||||
0: "None",
|
||||
AbsenceUrlaub: "Urlaub",
|
||||
AbsenceKurzarbeit: "Kurzarbeit",
|
||||
AbsenceKrank: "Krank",
|
||||
AbsenceKindkrank: "Kindkrank",
|
||||
}
|
||||
|
||||
type Absence struct {
|
||||
CounterId int
|
||||
@@ -17,6 +49,20 @@ func NewAbsence(card_uid string, abwesenheit_typ int8, datum time.Time) Absence
|
||||
}
|
||||
}
|
||||
|
||||
func (a *Absence) Insert() {
|
||||
// qStr, err := DB.Prepare(`INSERT INTO`)
|
||||
func (a *Absence) Insert() error {
|
||||
qStr, err := DB.Prepare(`INSERT INTO abwesenheit (card_uid, abwesenheit_typ, datum) VALUES ($1, $2, $3) RETURNING counter_id;`)
|
||||
if err != nil {
|
||||
log.Println("Error preparing sql Statement", err)
|
||||
return err
|
||||
}
|
||||
err = qStr.QueryRow(a.CardUID, a.AbwesenheitTyp, a.Datum).Scan(&a.CounterId)
|
||||
if err != nil {
|
||||
log.Println("Error executing insert statement", err)
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (a *Absence) GetStringType() string {
|
||||
return AbsenceTypesLabel[a.AbwesenheitTyp]
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user