77 lines
1.6 KiB
Go
77 lines
1.6 KiB
Go
|
|
package main
|
||
|
|
|
||
|
|
/*
|
||
|
|
Чистит названия команд в БД.
|
||
|
|
Убирает приписки к названиям команд в виде трехбуквенного кода страны в скобках (Aut).
|
||
|
|
Важно не удалить вместо кода страны приписки типа (Am), (Woman)
|
||
|
|
*/
|
||
|
|
|
||
|
|
import (
|
||
|
|
"gordenko.dev/dima/flashscore/model"
|
||
|
|
|
||
|
|
"regexp"
|
||
|
|
"strings"
|
||
|
|
|
||
|
|
"gordenko.dev/dima/qx"
|
||
|
|
|
||
|
|
_ "github.com/go-sql-driver/mysql"
|
||
|
|
)
|
||
|
|
|
||
|
|
var (
|
||
|
|
reCountryCode = regexp.MustCompile(`\([a-zA-Z]{3}\)`)
|
||
|
|
)
|
||
|
|
|
||
|
|
func main() {
|
||
|
|
db, err := qx.Open("mysql", "user:password@/tipper")
|
||
|
|
if err != nil {
|
||
|
|
panic(err)
|
||
|
|
}
|
||
|
|
defer db.Close()
|
||
|
|
|
||
|
|
/*
|
||
|
|
m := model.New(db)
|
||
|
|
|
||
|
|
teams, err := m.ListFootballTeams()
|
||
|
|
if err != nil {
|
||
|
|
panic(err)
|
||
|
|
}
|
||
|
|
|
||
|
|
for _, team := range teams {
|
||
|
|
if reCountryCode.MatchString(team.CanonicalName) {
|
||
|
|
//newCanonicalName := reCountryCode.ReplaceAllString(team.CanonicalName, "")
|
||
|
|
|
||
|
|
// Внутри метода будет удален старый alias и добавлен новый
|
||
|
|
err = m.UpdateFootballTeamCanonicalName(model.UpdateFootballTeamCanonicalNameIn{
|
||
|
|
TeamID: team.TeamID,
|
||
|
|
CanonicalName: team.CanonicalName,
|
||
|
|
NewCanonicalName: team.CanonicalName,
|
||
|
|
})
|
||
|
|
if err != nil {
|
||
|
|
panic(err)
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
*/
|
||
|
|
// Capitalize names
|
||
|
|
|
||
|
|
var teams []model.Team
|
||
|
|
|
||
|
|
db.List(&teams)
|
||
|
|
|
||
|
|
tx, err := db.Tx()
|
||
|
|
if err != nil {
|
||
|
|
panic(err)
|
||
|
|
}
|
||
|
|
|
||
|
|
for _, team := range teams {
|
||
|
|
name := strings.Title(team.CanonicalName)
|
||
|
|
|
||
|
|
err = tx.Exec(`UPDATE footballTeams SET canonicalName=? WHERE teamID=?`, name, team.TeamID)
|
||
|
|
if err != nil {
|
||
|
|
panic(err)
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
tx.Commit()
|
||
|
|
}
|