123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- package model
- import (
- "fmt"
- "strings"
- "go-common/library/xstr"
- )
- const (
- _moduleInsertSQL = "INSERT INTO es_matchs_module(ma_id,name,oids) VALUES %s"
- _moduleEditSQL = "UPDATE es_matchs_module SET name = CASE %s END,oids = CASE %s END WHERE id IN (%s)"
- )
- // ParamMA .
- type ParamMA struct {
- MatchActive
- Modules string `json:"-" form:"modules"`
- Adid int64 `json:"-" form:"adid" validate:"required"`
- }
- // MatchActive .
- type MatchActive struct {
- ID int64 `json:"id" form:"id"`
- Sid int64 `json:"sid" form:"sid" validate:"required"`
- Mid int64 `json:"mid" form:"mid" validate:"required"`
- Background string `json:"background" form:"background"`
- BackColor string `json:"back_color" form:"back_color"`
- ColorStep string `json:"color_step" form:"color_step"`
- LiveID int64 `json:"live_id" form:"live_id" validate:"required"`
- Intr string `json:"intr" form:"intr"`
- Focus string `json:"focus" form:"focus"`
- URL string `json:"url" form:"url"`
- Status int `json:"status" form:"status"`
- H5Background string `json:"h5_background" form:"h5_background"`
- H5BackColor string `json:"h5_back_color" form:"h5_back_color"`
- H5Focus string `json:"h5_focus" form:"h5_focus"`
- H5URL string `json:"h5_url" form:"h5_url"`
- IntrLogo string `json:"intr_logo" form:"intr_logo"`
- IntrTitle string `json:"intr_title" form:"intr_title"`
- IntrText string `json:"intr_text" form:"intr_text"`
- }
- // Module .
- type Module struct {
- ID int64 `json:"id"`
- MaID int64 `json:"ma_id"`
- Name string `json:"name"`
- Oids string `json:"oids"`
- Status int `json:"-" form:"status"`
- }
- // MatchModule .
- type MatchModule struct {
- *MatchActive
- Modules []*Module `json:"modules"`
- MatchTitle string `json:"match_title"`
- MatchSubTitle string `json:"match_sub_title"`
- SeasonTitle string `json:"season_title"`
- SeasonSubTitle string `json:"season_sub_title"`
- }
- // TableName es_matchs_module.
- func (t Module) TableName() string {
- return "es_matchs_module"
- }
- // TableName es_matchs_active.
- func (t MatchActive) TableName() string {
- return "es_matchs_active"
- }
- // BatchAddModuleSQL .
- func BatchAddModuleSQL(maID int64, data []*Module) string {
- if len(data) == 0 {
- return ""
- }
- var rowStrings []string
- for _, v := range data {
- rowStrings = append(rowStrings, fmt.Sprintf("(%d,'%s','%s')", maID, v.Name, v.Oids))
- }
- return fmt.Sprintf(_moduleInsertSQL, strings.Join(rowStrings, ","))
- }
- // BatchEditModuleSQL .
- func BatchEditModuleSQL(mapModuel []*Module) string {
- if len(mapModuel) == 0 {
- return ""
- }
- var (
- nameStr, oidsStr string
- ids []int64
- )
- for _, module := range mapModuel {
- nameStr = fmt.Sprintf("%s WHEN id = %d THEN '%s'", nameStr, module.ID, module.Name)
- oidsStr = fmt.Sprintf("%s WHEN id = %d THEN '%s'", oidsStr, module.ID, module.Oids)
- ids = append(ids, module.ID)
- }
- return fmt.Sprintf(_moduleEditSQL, nameStr, oidsStr, xstr.JoinInts(ids))
- }
|