2014-05-24 00:39:22 -07:00
|
|
|
// Copyright 2014 Team 254. All Rights Reserved.
|
|
|
|
|
// Author: pat@patfairbank.com (Patrick Fairbank)
|
|
|
|
|
//
|
|
|
|
|
// Model and datastore CRUD methods for a team at an event.
|
|
|
|
|
|
2017-08-23 22:41:56 -07:00
|
|
|
package model
|
2014-05-24 00:39:22 -07:00
|
|
|
|
2021-05-12 17:49:05 -07:00
|
|
|
import "sort"
|
|
|
|
|
|
2014-05-24 00:39:22 -07:00
|
|
|
type Team struct {
|
2021-05-12 17:49:05 -07:00
|
|
|
Id int `db:"id,manual"`
|
2014-08-03 16:20:40 -07:00
|
|
|
Name string
|
|
|
|
|
Nickname string
|
|
|
|
|
City string
|
|
|
|
|
StateProv string
|
|
|
|
|
Country string
|
|
|
|
|
RookieYear int
|
|
|
|
|
RobotName string
|
|
|
|
|
Accomplishments string
|
2014-08-15 22:47:12 -07:00
|
|
|
WpaKey string
|
2018-09-21 16:05:44 -07:00
|
|
|
HasConnected bool
|
2020-04-02 20:06:56 -07:00
|
|
|
FtaNotes string
|
2014-05-24 00:39:22 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (database *Database) CreateTeam(team *Team) error {
|
2021-05-12 17:49:05 -07:00
|
|
|
return database.teamTable.create(team)
|
2014-05-24 00:39:22 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (database *Database) GetTeamById(id int) (*Team, error) {
|
2022-04-04 20:39:19 -07:00
|
|
|
return database.teamTable.getById(id)
|
2014-05-24 00:39:22 -07:00
|
|
|
}
|
|
|
|
|
|
2021-05-12 17:49:05 -07:00
|
|
|
func (database *Database) UpdateTeam(team *Team) error {
|
|
|
|
|
return database.teamTable.update(team)
|
2014-05-24 00:39:22 -07:00
|
|
|
}
|
|
|
|
|
|
2021-05-12 17:49:05 -07:00
|
|
|
func (database *Database) DeleteTeam(id int) error {
|
|
|
|
|
return database.teamTable.delete(id)
|
2014-05-24 00:39:22 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (database *Database) TruncateTeams() error {
|
2021-05-12 17:49:05 -07:00
|
|
|
return database.teamTable.truncate()
|
2014-05-24 00:39:22 -07:00
|
|
|
}
|
2014-05-25 17:19:13 -07:00
|
|
|
|
|
|
|
|
func (database *Database) GetAllTeams() ([]Team, error) {
|
2022-04-04 20:39:19 -07:00
|
|
|
teams, err := database.teamTable.getAll()
|
|
|
|
|
if err != nil {
|
2021-05-12 17:49:05 -07:00
|
|
|
return nil, err
|
|
|
|
|
}
|
|
|
|
|
sort.Slice(teams, func(i, j int) bool {
|
|
|
|
|
return teams[i].Id < teams[j].Id
|
|
|
|
|
})
|
|
|
|
|
return teams, nil
|
2014-05-25 17:19:13 -07:00
|
|
|
}
|