go_dreamfactory/modules/mail/api_delallmail.go
2023-06-06 09:52:44 +08:00

52 lines
1.2 KiB
Go

package mail
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
)
//参数校验
func (this *apiComp) DelAllMailCheck(session comm.IUserSession, req *pb.MailDelAllMailReq) (errdata *pb.ErrorData) {
if session.GetUserId() == "" {
code = pb.ErrorCode_ReqParameterError
return
}
return
}
// 删除邮件
func (this *apiComp) DelAllMail(session comm.IUserSession, req *pb.MailDelAllMailReq) (errdata *pb.ErrorData) {
var (
mailinfo []*pb.DBMailData
err error
mailData []*pb.DBMailData
)
code = this.DelAllMailCheck(session, req) // check
if code != pb.ErrorCode_Success {
return
}
mailinfo, err = this.module.modelMail.MailQueryUserMail(session.GetUserId())
if err != nil {
this.module.Errorf("Mail_GetList_Resp err:%v", err)
code = pb.ErrorCode_CacheReadError
return
}
for _, v := range mailinfo {
if v.Check == false || (v.Reward && len(v.Items) > 0) {
bRet := this.module.modelMail.MailDelUserMail(v.ObjId)
if !bRet {
code = pb.ErrorCode_MailErr // 邮件不存在
return
}
continue
}
mailData = append(mailData, v)
}
session.SendMsg(string(this.module.GetType()), "delallmail", &pb.MailDelAllMailResp{
Mails: mailData,
})
return
}