39 lines
861 B
Go
39 lines
861 B
Go
package db
|
|
|
|
import (
|
|
"context"
|
|
"go_dreamfactory/pb"
|
|
|
|
"github.com/liwei1dao/lego/core"
|
|
"go.mongodb.org/mongo-driver/bson"
|
|
"go.mongodb.org/mongo-driver/bson/primitive"
|
|
)
|
|
|
|
const (
|
|
DB_MailTable core.SqlTable = "mail"
|
|
)
|
|
|
|
type IMail interface {
|
|
QueryUserMail(uId string) (mail []*pb.DB_MailData, err error)
|
|
InsertUserMail(mail *pb.DB_MailData) (err error)
|
|
}
|
|
|
|
func (this *DB) QueryUserMail(uId string) (mail []*pb.DB_MailData, err error) {
|
|
|
|
if _data, err := this.mgo.Find(DB_MailTable, bson.M{"userid": uId}); err == nil {
|
|
for _data.Next(context.TODO()) {
|
|
temp := &pb.DB_MailData{}
|
|
if err = _data.Decode(temp); err == nil {
|
|
mail = append(mail, temp)
|
|
}
|
|
}
|
|
}
|
|
return
|
|
}
|
|
|
|
func (this *DB) InsertUserMail(mail *pb.DB_MailData) (err error) {
|
|
mail.ObjId = primitive.NewObjectID().Hex()
|
|
_, err = this.mgo.InsertOne(DB_MailTable, mail)
|
|
return err
|
|
}
|