You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
package main
|
|
|
|
|
|
|
|
import (
|
|
|
|
"encoding/json"
|
|
|
|
"io/ioutil"
|
|
|
|
)
|
|
|
|
|
|
|
|
type UserInfo struct {
|
|
|
|
Uid string `json:"uid"`
|
|
|
|
Nome string `json:"nome"`
|
|
|
|
Cognome string `json:"cognome"`
|
|
|
|
|
|
|
|
Tags []string `json:"tags"`
|
|
|
|
IsMacchinista bool `json:"macchinista,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
func GetUtenti() ([]UserInfo, error) {
|
|
|
|
history, err := GetRawHistory()
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
|
|
|
|
// Creo un set per velocizzare l'utilizzo dopo
|
|
|
|
macchinisti := map[string]bool{}
|
|
|
|
for _, m := range history.Macchinisti {
|
|
|
|
macchinisti[m.Uid] = true
|
|
|
|
}
|
|
|
|
|
|
|
|
var users []UserInfo
|
|
|
|
|
|
|
|
usersJsonData, err := ioutil.ReadFile("./utenti-poisson-2022.local.json")
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
|
|
|
|
if err := json.Unmarshal(usersJsonData, &users); err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
|
|
|
|
return users, nil
|
|
|
|
}
|