| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- package sngmatch
- import (
- "bet24.com/log"
- "bet24.com/servers/common"
- item "bet24.com/servers/micros/item_inventory/proto"
- "bet24.com/servers/micros/matches/handler/matchbase"
- "fmt"
- )
- type historyUser struct {
- matchbase.MatchUserBrief
- enrollFeeItemId int
- enrollFeeCount int
- enrollTime int
- prize []item.ItemPack
- }
- type snghistory struct {
- // 房间信息
- matchconfig
- MatchNo int
- // 开始结束时间
- StartTime int64
- EndTime int64
- // 参赛玩家
- EnrollUsers []historyUser
- Winners []int
- noShowUsers []matchbase.EnrollUser
- }
- func (h *snghistory) dump(detail bool) {
- log.Release(" MatchId[%d] MatchNo[%d] GameName[%s] GameRule[%s] TotalUser[%d],TableUser[%d],Target[%d],Fee[%d],Prizes[%d]",
- h.MatchId, h.MatchNo, h.GameName, h.GameRule, h.TotalUser, h.TableUser, h.Target, h.EnrollFee, h.Prizes)
- log.Release(" Start[%s] End[%s] Winners %v", common.TimeStampToString(h.StartTime), common.TimeStampToString(h.EndTime), h.Winners)
- if !detail {
- return
- }
- for i := 0; i < len(h.EnrollUsers); i++ {
- v := h.EnrollUsers[i]
- log.Release(" [%d]: %d.%s", v.Rank, v.UserId, v.NickName)
- }
- }
- func (h *snghistory) isUserEnrolled(userId int) bool {
- for _, v := range h.EnrollUsers {
- if v.UserId == userId {
- return true
- }
- }
- return false
- }
- func (h *snghistory) getUsersDescForDB() string {
- var ret string
- for _, v := range h.EnrollUsers {
- ret = fmt.Sprintf("%s%d,%d,%d,%d,%d;", ret, v.UserId, v.Rank, v.Score, v.enrollFeeItemId, v.enrollFeeCount)
- }
- return ret
- }
- func (h *snghistory) setAllEnrolledUsers(users []matchbase.EnrollUser) {
- if len(users) == 0 {
- return
- }
- for i := 0; i < len(users); {
- if h.isUserEnrolled(users[i].UserId) {
- users = append(users[:i], users[i+1:]...)
- } else {
- i++
- }
- }
- if len(users) == 0 {
- return
- }
- h.noShowUsers = make([]matchbase.EnrollUser, len(users))
- copy(h.noShowUsers, users)
- }
|