```
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful

fix(player): 修复玩家信息服务中的代码格式和类型错误

- 修复了代码中多余的空格导致的格式问题
- 将saveToLocalFile方法的参数类型从*model.Player更正为*model.PlayerInfo
- 更新了FallbackData结构体中PlayerData字段的类型定义
- 修改了玩家ID获取逻辑,从PlayerID改为UserID以匹配实际数据结构
- 简化了Save方法中的
This commit is contained in:
昔念
2026-03-17 00:02:21 +08:00
parent 9538ef2ab7
commit ae41e15c1b

View File

@@ -94,7 +94,7 @@ func (s *InfoService) GetLogin() *model.PlayerInfo {
}
if cool.Config.ServerInfo.IsVip == 0 {
if !utils.IsToday(tt.LastResetTime) { //判断是否是今天
if !utils.IsToday(tt.LastResetTime) { //判断是否是今天
//每天login时候检查重置时间然后把电池任务挖矿重置
//挖矿需要单独存,因为防止多开挖矿
@@ -123,7 +123,7 @@ func (s *InfoService) GetLogin() *model.PlayerInfo {
panic(err)
}
}
if !IsWEEK(tt.WeekLastResetTime) {
if !IsWEEK(tt.WeekLastResetTime) {
for _, v := range service.NewTaskService().GetWeek() {
@@ -192,7 +192,7 @@ func (s *InfoService) Kick(id uint32) error {
}
// saveToLocalFile 兜底保存将数据写入本地lose文件夹
func (s *InfoService) saveToLocalFile(player *model.Player, err error) {
func (s *InfoService) saveToLocalFile(player *model.PlayerInfo, err error) {
// 1. 创建lose文件夹如果不存在
loseDir := "./lose"
if err := os.MkdirAll(loseDir, 0755); err != nil {
@@ -202,10 +202,10 @@ func (s *InfoService) saveToLocalFile(player *model.Player, err error) {
// 2. 构造保存的数据结构,包含错误信息和时间戳
type FallbackData struct {
PlayerData *model.Player `json:"player_data"`
ErrorMsg string `json:"error_msg"`
SaveTime string `json:"save_time"`
ServerInfo string `json:"server_info"`
PlayerData *model.PlayerInfo `json:"player_data"`
ErrorMsg string `json:"error_msg"`
SaveTime string `json:"save_time"`
ServerInfo string `json:"server_info"`
}
fallbackData := FallbackData{
@@ -216,7 +216,7 @@ func (s *InfoService) saveToLocalFile(player *model.Player, err error) {
}
// 3. 生成唯一的文件名(避免覆盖)
playerID := fmt.Sprintf("%d", player.PlayerID) // 假设Player有PlayerID字段根据实际调整
playerID := fmt.Sprintf("%d", player.UserID) // 假设Player有PlayerID字段根据实际调整
filename := fmt.Sprintf("player_%s_%s.json", playerID, fallbackData.SaveTime)
filePath := filepath.Join(loseDir, filename)
@@ -243,17 +243,11 @@ func (s *InfoService) Save(data model.PlayerInfo) {
return
}
m := s.dbm_fix(s.Model)
var tt *model.Player
m.Scan(&tt)
if tt == nil {
return
}
tt.Data = data
_, err := m.Save(tt)
_, err := s.dbm_fix(s.Model).Data("data", data).Update()
if err != nil {
//todo 待实现兜底保存,现在有可能出错
s.saveToLocalFile(tt, err)
s.saveToLocalFile(&data, err)
panic(err)
}