diff --git a/server/mailserver/common/types.go b/server/mailserver/common/types.go index cc44a038..28f19081 100644 --- a/server/mailserver/common/types.go +++ b/server/mailserver/common/types.go @@ -8,6 +8,7 @@ type Player interface { Lock() UnLock() GetAccountId() string + GetSessionId() string GetRegisterTime() int32 FillMailList(mailList *[]MailDto) ReadMails(mailIds []int64) diff --git a/server/mailserver/controller/mail.go b/server/mailserver/controller/mail.go index e7ab0ba4..17fdc3c0 100644 --- a/server/mailserver/controller/mail.go +++ b/server/mailserver/controller/mail.go @@ -57,17 +57,20 @@ func mail_getAttachment(c *gin.Context) { mailIds := []int64{} mails := []*common.MailDto{} for i := 0; i < len(mailIdsStr); i++ { - *q5.NewSliceElement(&mailIds) = q5.ToInt64(mailIdsStr[i]) - mailDto := hum.GetMailById(mailIds[i]) + mailId := q5.ToInt64(mailIdsStr[i]) + mailDto := hum.GetMailById(mailId) if mailDto != nil { + *q5.NewSliceElement(&mailIds) = mailId *q5.NewSliceElement(&mails) = mailDto } } - hum.UnLock() apiUrl := mt.Table.Config.GetGameApiUrl() params := make(map[string]string) params["c"] = "Mail" params["a"] = "getAttachment" + params["account_id"] = hum.GetAccountId() + params["session_id"] = hum.GetSessionId() + hum.UnLock() f5.GetHttpCliMgr().SyncSendGoStyleRequest( apiUrl, params,