player-data.go
793 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package dto
import (
"apigame/util/util-lx/lxalilog"
"apigame/util/utildto"
"strings"
)
func LoadPlayerData(gameId string, uid int64, data IPlayerData) (has bool, err error) {
result := utildto.First(DbCommon, data, data.GetTableName(gameId))
err = result.Error
if err == nil {
has = true
} else {
has = false
if strings.Contains(err.Error(), "record not found") {
err = nil
} else {
lxalilog.Errors(err, gameId, uid)
return
}
}
// 档案不存在 新建
if !has {
data.Init(uid)
CreatePlayerData(gameId, data)
}
return
}
func CreatePlayerData(gameId string, data IPlayerData) {
utildto.Insert(DbCommon, data, data.GetTableName(gameId))
}
func SavePlayerData(gameId string, data IPlayerData) {
utildto.Save(DbCommon, data, data.GetTableName(gameId))
}