文件存储-增加文件上传记录接口,增加定时同步租户文件存储容量信息接口

This commit is contained in:
2025-12-26 13:59:02 +08:00
parent 5693dd4952
commit 36c9b61db0
14 changed files with 518 additions and 0 deletions

View File

@@ -0,0 +1,58 @@
package service
import (
"context"
"github.com/gogf/gf/v2/frame/g"
"github.com/gogf/gf/v2/util/gconv"
"oss/consts"
"oss/dao"
"oss/model/dto"
"oss/model/entity"
)
type tenantOssTotal struct{}
// TenantOssTotal 存储文件服务
var TenantOssTotal = new(tenantOssTotal)
func (s *tenantOssTotal) GetOneByTenantId(ctx context.Context, req *dto.GetByTenantIdReq) (res *dto.GetByTenantIdRes, err error) {
e, err := dao.TenantOssTotal.GetOneByTenantId(ctx, req.TenantId)
if err != nil {
return nil, err
}
return &dto.GetByTenantIdRes{
TenantOssTotal: e,
}, nil
}
func (s *tenantOssTotal) UpdateUsedOssSize(ctx context.Context) (err error) {
// 使用 Keys 取出所有key
keys, err := g.Redis().Keys(ctx, consts.OssTotalKey)
if err != nil {
return
}
updateData := make([]*entity.TenantOssTotal, 0)
filterData := make([]*entity.TenantOssTotal, 0)
for _, key := range keys {
get, err := g.Redis().Get(ctx, key)
if err != nil {
return err
}
e := &entity.TenantOssTotal{}
err = gconv.Struct(get, e)
if err != nil {
return err
}
updateData = append(updateData, e)
totalOssSize := &entity.TenantOssTotal{}
totalOssSize.TenantId = e.TenantId
filterData = append(filterData, totalOssSize)
}
// 更新数据库
err = dao.TenantOssTotal.SaveOrUpdate(ctx, filterData, updateData)
if err != nil {
return err
}
return err
}