Files
houston-be/pkg/postgres/query/teams.go
Shubham Kirve b974cb6bf3 TP-0000 | Initialize houston repo (#1)
* TP-0000 | intialize houston repo

* TP-0000 | intialize houston repo
2023-03-29 00:01:17 +05:30

71 lines
1.4 KiB
Go

package query
import (
"houston/entity"
"houston/model/request"
"gorm.io/gorm"
)
func FindTeam(db *gorm.DB) ([]string, error) {
teams := make([]string, 0)
var teamEntity []entity.TeamEntity
result := db.Find(&teamEntity, "active = ?", true)
if result.Error != nil {
return nil, result.Error
}
for _, team := range teamEntity {
teams = append(teams, team.Name)
}
return teams, nil
}
func FindTeamList(db *gorm.DB) ([]entity.TeamEntity, error) {
var teamEntity []entity.TeamEntity
result := db.Find(&teamEntity, "active = ?", true)
if result.Error != nil {
return nil, result.Error
}
return teamEntity, nil
}
func FindTeamByName(db *gorm.DB, name string) (*entity.TeamEntity, error) {
var teamEntity entity.TeamEntity
result := db.Find(&teamEntity, "name = ?", name)
if result.Error != nil {
return nil, result.Error
}
return &teamEntity, nil
}
func AddTeam(db *gorm.DB, addTeamRequest request.AddTeamRequest) error {
teamEntity := &entity.TeamEntity{
Name: addTeamRequest.Name,
OncallHandle: addTeamRequest.OncallHandle,
}
result := db.Create(teamEntity)
if result.Error != nil {
return result.Error
}
return nil
}
func FindTeamById(db *gorm.DB, teamId int) (*entity.TeamEntity, error) {
var teamEntity entity.TeamEntity
result := db.Find(&teamEntity, "id = ?", teamId)
if result.Error != nil {
return nil, result.Error
} else if result.RowsAffected == 0 {
return nil, nil
}
return &teamEntity, nil
}