package cfg import ( "context" "videoweb/pub/common/log" "videoweb/pub/common/srvdef" "videoweb/pub/mongos" "go.mongodb.org/mongo-driver/bson" "go.mongodb.org/mongo-driver/mongo" ) // Init 初始化数据 func Init(ctx context.Context) { sysCfgColl = mongos.Shop.Coll(TN.SysCfg) } // FindOneSysCfg 查找一个系统配置 func FindOneSysCfg(ctx context.Context, filter bson.M) ( *SysCfg, *srvdef.SrvErr) { var sysCfg SysCfg if err := sysCfgColl.FindOneEx( ctx, &sysCfg, filter); err != nil { if err != mongo.ErrNoDocuments { log.Info("cfg:FindOneSysCfg db.FindOneEx failed", log.E(err), log.Any("filter", filter)) return nil, srvdef.New(srvdef.ErrDbQueryError, "", "") } return nil, srvdef.New(srvdef.ErrDbQueryError, "", "") } return &sysCfg, nil } // UpdateOneSysCfg 更新一个系统配置 func UpdateOneSysCfg(ctx context.Context, filter bson.M, update bson.M) *srvdef.SrvErr { result, err := sysCfgColl.UpdateOne(ctx, filter, update) if err != nil { log.Warn("cfg:UpdateOneSysCfg db.UpdateOne failed", log.E(err), log.Any("filter", filter)) return srvdef.New(srvdef.ErrDbUpdateError, "", "") } if result.MatchedCount != 1 { return srvdef.New(srvdef.ErrDbUpdateError, "", "") } return nil } func DeleteOneSysCfg(ctx context.Context, filter bson.M) *srvdef.SrvErr { _, err := sysCfgColl.DeleteOne(ctx, filter) if err != nil { log.Warn("cfg:DeleteOneSysCfg db.DeleteOne failed", log.Any("filter", filter), log.E(err)) return srvdef.New(srvdef.ErrDbQueryError, "", "") } return nil }