#45032 任务 【梦工场系统】 <-前端-> 【掠夺】 - 玩家姓名丢失
This commit is contained in:
parent
8fabb4a0fc
commit
dff9353ec8
@ -48,6 +48,9 @@ func (this *ModelFriend) GetFriend(uid string) (info *pb.DBFriend, err error) {
|
|||||||
this.moduole.Errorln(err)
|
this.moduole.Errorln(err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
if !user.Created {
|
||||||
|
return
|
||||||
|
}
|
||||||
info = &pb.DBFriend{
|
info = &pb.DBFriend{
|
||||||
Id: primitive.NewObjectID().Hex(),
|
Id: primitive.NewObjectID().Hex(),
|
||||||
Uid: uid,
|
Uid: uid,
|
||||||
@ -79,6 +82,9 @@ func (this *ModelFriend) GetFriend(uid string) (info *pb.DBFriend, err error) {
|
|||||||
this.moduole.Errorln(err)
|
this.moduole.Errorln(err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
if !user.Created {
|
||||||
|
return
|
||||||
|
}
|
||||||
info = &pb.DBFriend{
|
info = &pb.DBFriend{
|
||||||
Id: primitive.NewObjectID().Hex(),
|
Id: primitive.NewObjectID().Hex(),
|
||||||
Uid: uid,
|
Uid: uid,
|
||||||
|
@ -116,7 +116,9 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.PlunderCha
|
|||||||
}
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if lock, err = this.module.modelLand.landMutexLock(list.Landid); err != nil {
|
lock, err = this.module.modelLand.landMutexLock(list.Landid)
|
||||||
|
lock.Lock()
|
||||||
|
if err != nil {
|
||||||
errdata = &pb.ErrorData{
|
errdata = &pb.ErrorData{
|
||||||
Code: pb.ErrorCode_DBError,
|
Code: pb.ErrorCode_DBError,
|
||||||
Title: pb.ErrorCode_DBError.ToString(),
|
Title: pb.ErrorCode_DBError.ToString(),
|
||||||
|
@ -4,9 +4,11 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
"go_dreamfactory/comm"
|
"go_dreamfactory/comm"
|
||||||
"go_dreamfactory/lego/core"
|
"go_dreamfactory/lego/core"
|
||||||
|
"go_dreamfactory/lego/sys/redis"
|
||||||
"go_dreamfactory/pb"
|
"go_dreamfactory/pb"
|
||||||
"go_dreamfactory/sys/configure"
|
"go_dreamfactory/sys/configure"
|
||||||
"go_dreamfactory/utils"
|
"go_dreamfactory/utils"
|
||||||
|
"reflect"
|
||||||
|
|
||||||
"go.mongodb.org/mongo-driver/bson"
|
"go.mongodb.org/mongo-driver/bson"
|
||||||
)
|
)
|
||||||
@ -103,6 +105,36 @@ func (this *apiComp) GetList(session comm.IUserSession, req *pb.PlunderGetListRe
|
|||||||
update["ctime"] = list.Ctime
|
update["ctime"] = list.Ctime
|
||||||
update["freecount"] = list.Freecount
|
update["freecount"] = list.Freecount
|
||||||
}
|
}
|
||||||
|
if user, err := this.module.ModuleUser.GetUser(session.GetUserId()); err == nil {
|
||||||
|
uinfo := comm.GetUserBaseInfo(user)
|
||||||
|
if !reflect.DeepEqual(uinfo, list.Uinfo) {
|
||||||
|
update["uinfo"] = uinfo
|
||||||
|
// 同步岛屿上的信息
|
||||||
|
var lock *redis.RedisMutex
|
||||||
|
lock, err = this.module.modelLand.landMutexLock(list.Landid)
|
||||||
|
lock.Lock()
|
||||||
|
if err != nil {
|
||||||
|
errdata = &pb.ErrorData{
|
||||||
|
Code: pb.ErrorCode_DBError,
|
||||||
|
Title: pb.ErrorCode_DBError.ToString(),
|
||||||
|
Message: err.Error(),
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
defer lock.Unlock()
|
||||||
|
|
||||||
|
for _, v := range land.Uinfo {
|
||||||
|
if v == list.Uinfo {
|
||||||
|
v = uinfo
|
||||||
|
this.module.modelLand.changePlunderLandData(list.Landid, map[string]interface{}{
|
||||||
|
"uinfo": land.Uinfo,
|
||||||
|
})
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
list.Uinfo = uinfo
|
||||||
|
}
|
||||||
|
}
|
||||||
if len(update) > 0 {
|
if len(update) > 0 {
|
||||||
this.module.modelPlunder.changePlunderData(session.GetUserId(), update)
|
this.module.modelPlunder.changePlunderData(session.GetUserId(), update)
|
||||||
}
|
}
|
||||||
|
@ -66,7 +66,9 @@ func (this *apiComp) PvpChallenge(session comm.IUserSession, req *pb.PlunderPvpC
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
if lock, err = this.module.modelLand.landMutexLock(list.Landid); err != nil {
|
lock, err = this.module.modelLand.landMutexLock(list.Landid)
|
||||||
|
lock.Lock()
|
||||||
|
if err != nil {
|
||||||
errdata = &pb.ErrorData{
|
errdata = &pb.ErrorData{
|
||||||
Code: pb.ErrorCode_DBError,
|
Code: pb.ErrorCode_DBError,
|
||||||
Title: pb.ErrorCode_DBError.ToString(),
|
Title: pb.ErrorCode_DBError.ToString(),
|
||||||
|
@ -46,7 +46,9 @@ func (this *apiComp) PvpChallengeOver(session comm.IUserSession, req *pb.Plunder
|
|||||||
}
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if lock, err = this.module.modelLand.landMutexLock(list.Landid); err != nil {
|
lock, err = this.module.modelLand.landMutexLock(list.Landid)
|
||||||
|
lock.Lock()
|
||||||
|
if err != nil {
|
||||||
errdata = &pb.ErrorData{
|
errdata = &pb.ErrorData{
|
||||||
Code: pb.ErrorCode_DBError,
|
Code: pb.ErrorCode_DBError,
|
||||||
Title: pb.ErrorCode_DBError.ToString(),
|
Title: pb.ErrorCode_DBError.ToString(),
|
||||||
|
@ -46,7 +46,9 @@ func (this *apiComp) Reach(session comm.IUserSession, req *pb.PlunderReachReq) (
|
|||||||
}
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if lock, err = this.module.modelLand.landMutexLock(list.Landid); err != nil {
|
lock, err = this.module.modelLand.landMutexLock(list.Landid)
|
||||||
|
lock.Lock()
|
||||||
|
if err != nil {
|
||||||
errdata = &pb.ErrorData{
|
errdata = &pb.ErrorData{
|
||||||
Code: pb.ErrorCode_DBError,
|
Code: pb.ErrorCode_DBError,
|
||||||
Title: pb.ErrorCode_DBError.ToString(),
|
Title: pb.ErrorCode_DBError.ToString(),
|
||||||
|
@ -169,7 +169,7 @@ func (this *apiComp) Login(session comm.IUserSession, req *pb.UserLoginReq) (err
|
|||||||
})
|
})
|
||||||
|
|
||||||
go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) {
|
go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) {
|
||||||
if user.Name != "" { // 没创角就没必要通知
|
if !user.Created { // 没创角就没必要通知
|
||||||
event.TriggerEvent(comm.EventUserLogin, session)
|
event.TriggerEvent(comm.EventUserLogin, session)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user