Files
oss/dao/tenant_oss_total.go
2026-02-24 17:17:10 +08:00

44 lines
1.1 KiB
Go

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
}