From 4a1531fddb7a0cb3e7636fc9ed1932bfa3b76fe2 Mon Sep 17 00:00:00 2001 From: qhd <1766646056@qq.com> Date: Thu, 22 Jan 2026 15:06:30 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=B6=88=E6=81=AF=E9=98=9F?= =?UTF-8?q?=E5=88=97=E6=B6=88=E8=B4=B9=E8=80=85=E5=B9=B6=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E7=A7=9F=E6=88=B7=E5=AD=98=E5=82=A8=E6=80=BB=E9=87=8F=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dao/tenant_oss_total.go | 6 +++--- main.go | 17 ++++++++++++++++- model/dto/tenant_oss_total.go | 14 ++++++++++++++ service/tenant_oss_total_service.go | 5 ++--- 4 files changed, 35 insertions(+), 7 deletions(-) diff --git a/dao/tenant_oss_total.go b/dao/tenant_oss_total.go index 849163a..ca7723d 100644 --- a/dao/tenant_oss_total.go +++ b/dao/tenant_oss_total.go @@ -17,16 +17,16 @@ type tenantOssTotal struct { } // SaveOrUpdate 增加或更新 -func (d *tenantOssTotal) SaveOrUpdate(ctx context.Context, updateData []*entity.TenantOssTotal) (err error) { +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 { - bsonm, err := mongo.EntityToBsonWithFilter(v, true) + 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": bsonm}) + update = append(update, bson.M{"$set": buildUpdateData}) } _, err = MongoDAO.SaveOrUpdate(ctx, filter, update, consts.TenantOssTotalCollection) if err != nil { diff --git a/main.go b/main.go index 3e7e14e..45a891c 100644 --- a/main.go +++ b/main.go @@ -2,6 +2,9 @@ package main import ( "context" + "gitee.com/red-future---jilin-g/common/log/consts" + "gitee.com/red-future---jilin-g/common/message" + "gitee.com/red-future---jilin-g/common/mongo" "github.com/gogf/gf/v2/os/glog" "github.com/gogf/gf/v2/os/gtimer" "oss/controller" @@ -10,7 +13,7 @@ import ( "gitee.com/red-future---jilin-g/common/http" "gitee.com/red-future---jilin-g/common/jaeger" - _ "gitee.com/red-future---jilin-g/common/mongo" + logService "gitee.com/red-future---jilin-g/common/log/service" _ "github.com/gogf/gf/contrib/nosql/redis/v2" ) @@ -30,6 +33,18 @@ func main() { } }) + // 启动消息队列消费者 + if err := message.StartConsumers(ctx, &message.RedisMessageConfig{ + StreamKey: mongo.LogRedisKey, + GroupName: consts.GroupName, + ConsumerName: consts.ConsumerName, + BatchSize: consts.BatchSize, + AutoAck: consts.AutoAck, + HandleFunc: logService.OperationLog.AddOperationLog, + }); err != nil { + return + } + // 保持应用运行 select {} } diff --git a/model/dto/tenant_oss_total.go b/model/dto/tenant_oss_total.go index e70549c..334a589 100644 --- a/model/dto/tenant_oss_total.go +++ b/model/dto/tenant_oss_total.go @@ -15,3 +15,17 @@ type GetByTenantIdReq struct { type GetByTenantIdRes struct { *entity.TenantOssTotal } + +// UpdateUsedOssReq 更新使用存储总量请求 +type UpdateUsedOssReq struct { + g.Meta `path:"/GetOneByTenantId" method:"get" tags:"租户存储总量管理" summary:"更新使用存储总量" dc:"更新使用存储总量"` + + TenantId interface{} `json:"tenantId" v:"required#租户id不能为空"` + UsedOssSize int `bson:"usedOssSize" json:"usedOssSize"` + TotalOssSize int `bson:"totalOssSize" json:"totalOssSize"` + Updater interface{} `json:"updater" v:"required#更新人不能为空"` +} + +// UpdateUsedOssRes 更新使用存储总量响应 +type UpdateUsedOssRes struct { +} diff --git a/service/tenant_oss_total_service.go b/service/tenant_oss_total_service.go index 06e24b9..2de464c 100644 --- a/service/tenant_oss_total_service.go +++ b/service/tenant_oss_total_service.go @@ -8,7 +8,6 @@ import ( "oss/consts" "oss/dao" "oss/model/dto" - "oss/model/entity" ) type tenantOssTotal struct{} @@ -32,13 +31,13 @@ func (s *tenantOssTotal) UpdateUsedOssSize(ctx context.Context) (err error) { if err != nil { return } - updateData := make([]*entity.TenantOssTotal, 0) + updateData := make([]*dto.UpdateUsedOssReq, 0) for _, key := range keys { get, err := g.Redis().Get(ctx, key) if err != nil { return err } - e := &entity.TenantOssTotal{} + e := new(dto.UpdateUsedOssReq) err = gconv.Struct(get, e) if err != nil { return err