package dao import ( "context" "oss/consts" "oss/model/dto" "oss/model/entity" "gitea.com/red-future/common/db/mongo" "github.com/gogf/gf/v2/frame/g" "go.mongodb.org/mongo-driver/v2/bson" ) var TenantOssTotal = &tenantOssTotal{} type tenantOssTotal struct { } // SaveOrUpdate 增加或更新 func (d *tenantOssTotal) SaveOrUpdate(ctx context.Context, updateData []*dto.UpdateUsedOssReq) (err error) { if !g.IsEmpty(updateData) { var filter, update []bson.M for _, v := range updateData { buildUpdateData, err := mongo.BuildUpdateData(ctx, v) if err != nil { return err } filter = append(filter, bson.M{"tenantId": v.TenantId}) update = append(update, bson.M{"$set": buildUpdateData}) } _, err = MongoDAO.SaveOrUpdate(ctx, filter, update, consts.TenantOssTotalCollection) if err != nil { return err } } return } func (d *tenantOssTotal) GetOneByTenantId(ctx context.Context, req *dto.GetByTenantIdReq) (res *entity.TenantOssTotal, err error) { filter := bson.M{"tenantId": req.TenantId} err = mongo.DB().FindOne(ctx, filter, &res, consts.TenantOssTotalCollection) return }