fix facebook账号删除
This commit is contained in:
parent
e94c653ae1
commit
2512994ee8
|
@ -2428,28 +2428,13 @@ func init() {
|
|||
|
||||
var err error
|
||||
err = proto.Unmarshal(params, msg)
|
||||
if err != nil || msg.Snid <= 0 {
|
||||
if err != nil {
|
||||
pack.Tag = webapiproto.TagCode_FAILED
|
||||
pack.Msg = "参数错误"
|
||||
return common.ResponseTag_ParamError, pack
|
||||
}
|
||||
logger.Logger.Tracef("/api/player/delete %v", msg)
|
||||
|
||||
// 踢掉玩家
|
||||
p := PlayerMgrSington.GetPlayerBySnId(msg.GetSnid())
|
||||
if p != nil {
|
||||
ls := LoginStateMgrSington.GetLoginStateBySid(p.sid)
|
||||
if ls != nil {
|
||||
if ls.als != nil && ls.als.acc != nil {
|
||||
ls.als.acc.State = time.Now().AddDate(0, 0, 1).Unix()
|
||||
}
|
||||
}
|
||||
|
||||
p.Kick(common.KickReason_Freeze)
|
||||
PlayerMgrSington.DelPlayer(p.SnId)
|
||||
LoginStateMgrSington.DelAccountByAccid(p.AccountId)
|
||||
}
|
||||
|
||||
task.New(nil, task.CallableWrapper(func(o *basic.Object) interface{} {
|
||||
if msg.GetFaceBookId() != "" {
|
||||
fb, err := model.GetByFaceBookId(msg.GetFaceBookId())
|
||||
|
@ -2462,54 +2447,81 @@ func init() {
|
|||
msg.Platform = fb.Platform
|
||||
msg.Snid = fb.SnId
|
||||
}
|
||||
|
||||
pd, _ := model.GetPlayerDataBySnId(msg.Platform, msg.Snid, false, false)
|
||||
if pd == nil || pd.SnId == 0 {
|
||||
err = errors.New("player not found")
|
||||
return nil
|
||||
}
|
||||
// 冻结
|
||||
err = model.FreezeAccount(pd.Platform, pd.AccountId, 24*60)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
// 备份账号
|
||||
var account *model.Account
|
||||
account, err = model.GetAccount(pd.Platform, pd.AccountId)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
err = model.SaveToDelBackupAccount(account)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
//if !model.SaveDelBackupPlayerData(pd) {
|
||||
// err = errors.New("SaveDelBackupPlayerData failed")
|
||||
// return nil
|
||||
//}
|
||||
// 删除账号
|
||||
err = model.RemoveAccount(pd.Platform, pd.AccountId)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
err = model.ResetPlayer(pd.Platform, pd.SnId)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
return nil
|
||||
}), task.CompleteNotifyWrapper(func(i interface{}, t task.Task) {
|
||||
if err != nil {
|
||||
logger.Logger.Errorf("player delete %v err: %v", msg, err)
|
||||
pack.Tag = webapiproto.TagCode_FAILED
|
||||
pack.Msg = "删除失败"
|
||||
} else {
|
||||
pack.Tag = webapiproto.TagCode_SUCCESS
|
||||
pack.Msg = "删除成功"
|
||||
tNode.TransRep.RetFiels = pack
|
||||
tNode.Resume()
|
||||
logger.Logger.Tracef("player delete %v ret: %v", msg.GetSnid(), pack)
|
||||
return
|
||||
}
|
||||
tNode.TransRep.RetFiels = pack
|
||||
tNode.Resume()
|
||||
logger.Logger.Tracef("player delete %v ret: %v", msg.GetSnid(), pack)
|
||||
})).StartByExecutor(fmt.Sprint(msg.GetSnid()))
|
||||
// 踢掉玩家
|
||||
p := PlayerMgrSington.GetPlayerBySnId(msg.GetSnid())
|
||||
if p != nil {
|
||||
ls := LoginStateMgrSington.GetLoginStateBySid(p.sid)
|
||||
if ls != nil {
|
||||
if ls.als != nil && ls.als.acc != nil {
|
||||
ls.als.acc.State = time.Now().AddDate(0, 0, 1).Unix()
|
||||
}
|
||||
}
|
||||
|
||||
p.Kick(common.KickReason_Freeze)
|
||||
PlayerMgrSington.DelPlayer(p.SnId)
|
||||
LoginStateMgrSington.DelAccountByAccid(p.AccountId)
|
||||
}
|
||||
|
||||
task.New(nil, task.CallableWrapper(func(o *basic.Object) interface{} {
|
||||
pd, _ := model.GetPlayerDataBySnId(msg.Platform, msg.Snid, false, false)
|
||||
if pd == nil || pd.SnId == 0 {
|
||||
err = errors.New("player not found")
|
||||
return nil
|
||||
}
|
||||
// 冻结
|
||||
err = model.FreezeAccount(pd.Platform, pd.AccountId, 24*60)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
// 备份账号
|
||||
var account *model.Account
|
||||
account, err = model.GetAccount(pd.Platform, pd.AccountId)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
err = model.SaveToDelBackupAccount(account)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
//if !model.SaveDelBackupPlayerData(pd) {
|
||||
// err = errors.New("SaveDelBackupPlayerData failed")
|
||||
// return nil
|
||||
//}
|
||||
// 删除账号
|
||||
err = model.RemoveAccount(pd.Platform, pd.AccountId)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
err = model.ResetPlayer(pd.Platform, pd.SnId)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
return nil
|
||||
}), task.CompleteNotifyWrapper(func(i interface{}, t task.Task) {
|
||||
if err != nil {
|
||||
logger.Logger.Errorf("player delete %v err: %v", msg, err)
|
||||
pack.Tag = webapiproto.TagCode_FAILED
|
||||
pack.Msg = "删除失败"
|
||||
} else {
|
||||
pack.Tag = webapiproto.TagCode_SUCCESS
|
||||
pack.Msg = "删除成功"
|
||||
}
|
||||
tNode.TransRep.RetFiels = pack
|
||||
tNode.Resume()
|
||||
logger.Logger.Tracef("player delete %v ret: %v", msg.GetSnid(), pack)
|
||||
}), "player_delete").StartByExecutor(fmt.Sprint(msg.GetSnid()))
|
||||
}), "player_delete").StartByExecutor(fmt.Sprint(msg.GetSnid()))
|
||||
return common.ResponseTag_TransactYield, pack
|
||||
}))
|
||||
|
||||
|
|
Loading…
Reference in New Issue