package dao import ( "context" "oss/consts" "oss/model/entity" "gitee.com/red-future---jilin-g/common/mongo" "github.com/gogf/gf/v2/frame/g" "go.mongodb.org/mongo-driver/v2/bson" ) var TenantOssTotal = &tenantOssTotal{ NoCache: false, } type tenantOssTotal struct { NoCache bool } func (d *tenantOssTotal) SetNoCache() { TenantOssTotal.NoCache = true } // Insert 插入 func (d *tenantOssTotal) Insert(ctx context.Context, entity []interface{}) (err error) { _, err = mongo.DB().Insert(ctx, entity, consts.TenantOssTotalCollection) return } // SaveOrUpdate 增加或更新 func (d *tenantOssTotal) SaveOrUpdate(ctx context.Context, updateData []*entity.TenantOssTotal) (err error) { if !g.IsEmpty(updateData) { var filter, update []bson.M for _, v := range updateData { filter = append(filter, bson.M{"tenantId": v.TenantId}) update = append(update, bson.M{"$set": bson.M{"usedOssSize": v.UsedOssSize, "totalOssSize": v.TotalOssSize}}) } _, err = mongo.DB().SaveOrUpdate(ctx, filter, update, consts.TenantOssTotalCollection) } return } func (d *tenantOssTotal) GetOneByTenantId(ctx context.Context, tenantId string) (e *entity.TenantOssTotal, err error) { filter := bson.M{"tenantId": tenantId} e = &entity.TenantOssTotal{} err = mongo.DB().FindOne(ctx, filter, e, consts.TenantOssTotalCollection) return }