1st
This commit is contained in:
82
model/model.go
Executable file
82
model/model.go
Executable file
@@ -0,0 +1,82 @@
|
||||
package model
|
||||
|
||||
import (
|
||||
"regexp"
|
||||
"strings"
|
||||
|
||||
"gordenko.dev/dima/qx"
|
||||
"gordenko.dev/dima/textutil"
|
||||
)
|
||||
|
||||
func New(qxdb *qx.Db) *Model {
|
||||
s := new(Model)
|
||||
s.qx = qxdb
|
||||
return s
|
||||
}
|
||||
|
||||
var reCountryCode = regexp.MustCompile(`\([a-z]{3}\)`)
|
||||
|
||||
// NormalizeNameToAlias - удаляет лишние пробельные символы. Заменяет whitespace символы на пробел,
|
||||
// приводит к нижнему регистру
|
||||
func NormalizeNameToAlias(name string) string {
|
||||
name = strings.ToLower(name)
|
||||
|
||||
// вырезаем код страны если есть (пример: (Aut))
|
||||
name = reCountryCode.ReplaceAllString(name, "")
|
||||
|
||||
name = strings.TrimSpace(name)
|
||||
|
||||
return textutil.NormalizeWhitespaces(name)
|
||||
}
|
||||
|
||||
/*
|
||||
func (s *Model) ListFootballChamps() (list []FootballChamp, err error) {
|
||||
err = s.qx.ListBy(&list, "ORDER BY name ASC")
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
func (s *Model) ListFootballChampTeams(champID int64) (list []Team, err error) {
|
||||
err = s.qx.ListBy(&list, "WHERE champID=? ORDER BY canonicalName ASC", champID)
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
func (s *Model) ListFootballTeamAliases(teamID int64) (list []Alias, err error) {
|
||||
err = s.qx.ListBy(&list, "WHERE teamID=? ORDER BY name ASC", teamID)
|
||||
return
|
||||
}
|
||||
|
||||
func (s *Model) RemoveFootballTeam(teamID int64) (err error) {
|
||||
return s.qx.Exec("DELETE FROM footballTeams WHERE teamID=?", teamID)
|
||||
}
|
||||
|
||||
func (s *Model) RemoveFootballAlias(aliasID int64) (err error) {
|
||||
return s.qx.Exec("DELETE FROM footballTeamAliases WHERE aliasID=?", aliasID)
|
||||
}
|
||||
|
||||
func (s *Model) AddFootballAlias(req AddFootballAliasReq) (aliasID int64, err error) {
|
||||
if req.Name == "" {
|
||||
err = api.Err{
|
||||
Code: EmptyValue,
|
||||
Field: "name",
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
tx, err := s.qx.Tx()
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
defer tx.Close(&err)
|
||||
|
||||
aliasID, err = tx.Insert(req)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
err = tx.Commit()
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
*/
|
||||
Reference in New Issue
Block a user