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 }