package dao import ( "context" "go.mongodb.org/mongo-driver/bson" "go.mongodb.org/mongo-driver/mongo" "go.mongodb.org/mongo-driver/mongo/options" "mongo.games.com/goserver/core/logger" "mongo.games.com/goserver/core/mongox" "mongo.games.com/game/dao/internal" modelpkg "mongo.games.com/game/model" ) var ( _ = context.Background() _ = logger.Logger _ = bson.M{} _ = mongo.Database{} ) type JybCodeLogColumns = internal.JybCodeLogColumns type JybCodeLog struct { *internal.JybCodeLog } func GetJybCodeLog(key string) (*JybCodeLog, error) { return mongox.GetDao(key, NewJybCodeLog) } func NewJybCodeLog(db *mongo.Database, c *mongo.Collection) (*JybCodeLog, any) { if db == nil || c == nil { return &JybCodeLog{}, &modelpkg.JybCodeLog{} } v := internal.NewJybCodeLog() v.Database = db v.Collection = c c.Indexes().CreateMany( context.Background(), []mongo.IndexModel{ { Keys: bson.D{{v.Columns.JybId, 1}}, // 1 表示升序,-1 表示降序 Options: options.Index().SetBackground(true).SetSparse(true), // 后台创建索引,稀疏索引 }, { Keys: bson.D{{v.Columns.Code, 1}}, // 1 表示升序,-1 表示降序 Options: options.Index().SetBackground(true).SetSparse(true), // 后台创建索引,稀疏索引 }, { Keys: bson.D{{v.Columns.SnId, 1}}, // 1 表示升序,-1 表示降序 Options: options.Index().SetBackground(true).SetSparse(true), // 后台创建索引,稀疏索引 }, { Keys: bson.D{{v.Columns.Ts, -1}}, // 1 表示升序,-1 表示降序 Options: options.Index().SetBackground(true).SetSparse(true), // 后台创建索引,稀疏索引 }, }, ) return &JybCodeLog{JybCodeLog: v}, &modelpkg.JybCodeLog{} } func (l *JybCodeLog) Save(data *modelpkg.JybCodeLog) error { _, err := l.InsertOne(context.Background(), data) return err }