From f5ade5b632899028c86590fec7069aa22fab3bef Mon Sep 17 00:00:00 2001 From: hucan <951870319@qq.com> Date: Sat, 26 Jul 2025 09:08:29 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E5=A2=9E=E5=8A=A0=E9=92=B1=E5=8C=85?= =?UTF-8?q?=E7=99=BD=E5=90=8D=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/admin/apis/mm_wallet_white_list.go | 23 ++++++++++ app/admin/router/mm_wallet_white_list.go | 1 + app/admin/service/dto/mm_wallet_white_list.go | 7 +++ app/admin/service/mm_risk_log.go | 43 +++++++++---------- app/admin/service/mm_wallet_white_list.go | 39 +++++++++++++++++ 5 files changed, 90 insertions(+), 23 deletions(-) diff --git a/app/admin/apis/mm_wallet_white_list.go b/app/admin/apis/mm_wallet_white_list.go index c0d9b20..eb4167a 100644 --- a/app/admin/apis/mm_wallet_white_list.go +++ b/app/admin/apis/mm_wallet_white_list.go @@ -234,3 +234,26 @@ func (e MmWalletWhiteList) Delete(c *gin.Context) { } e.OK(req.GetId(), "删除成功") } + +// Export 导出钱包白名单 +func (e MmWalletWhiteList) Export(c *gin.Context) { + req := dto.MmWalletWhiteListGetPageReq{} + s := service.MmWalletWhiteList{} + err := e.MakeContext(c). + MakeOrm(). + Bind(&req). + MakeService(&s.Service). + Errors + if err != nil { + e.Logger.Error(err) + e.Error(500, err, err.Error()) + return + } + + // p := actions.GetPermissionFromContext(c) + + if err := s.ExportList(c, &req); err != nil { + e.Error(500, err, fmt.Sprintf("导出钱包白名单失败,\r\n失败信息 %s", err.Error())) + return + } +} diff --git a/app/admin/router/mm_wallet_white_list.go b/app/admin/router/mm_wallet_white_list.go index ba103b0..c47d2f3 100644 --- a/app/admin/router/mm_wallet_white_list.go +++ b/app/admin/router/mm_wallet_white_list.go @@ -25,5 +25,6 @@ func registerMmWalletWhiteListRouter(v1 *gin.RouterGroup, authMiddleware *jwt.Gi r.DELETE("", api.Delete) r.POST("batch", api.BatchInsert) + r.GET("export", actions.PermissionAction(), api.Export) } } diff --git a/app/admin/service/dto/mm_wallet_white_list.go b/app/admin/service/dto/mm_wallet_white_list.go index 66a3498..04d6f1c 100644 --- a/app/admin/service/dto/mm_wallet_white_list.go +++ b/app/admin/service/dto/mm_wallet_white_list.go @@ -111,3 +111,10 @@ type MmWalletWhiteListDeleteReq struct { func (s *MmWalletWhiteListDeleteReq) GetId() interface{} { return s.Ids } + +// 导出excel对象 +type MmWalletWhiteListExportResp struct { + Address string `json:"address" excel:"钱包地址"` + StatusName string `json:"status_name" excel:"状态"` + CreateTime string `json:"create_time" excel:"创建时间"` +} diff --git a/app/admin/service/mm_risk_log.go b/app/admin/service/mm_risk_log.go index 2a9d119..3a79848 100644 --- a/app/admin/service/mm_risk_log.go +++ b/app/admin/service/mm_risk_log.go @@ -2,10 +2,8 @@ package service import ( "errors" - "strconv" "strings" - "github.com/bytedance/sonic" "github.com/go-admin-team/go-admin-core/sdk/service" "gorm.io/gorm" @@ -13,7 +11,6 @@ import ( "go-admin/app/admin/service/dto" "go-admin/common/actions" cDto "go-admin/common/dto" - "go-admin/common/global" "go-admin/common/helper" ) @@ -202,36 +199,36 @@ func (e *MmRiskLog) SendMsg(datas []models.MmRiskLog) error { return nil } - userService := SysUser{Service: e.Service} - userIds, err := userService.GetByPermission("admin:mmAlarmLog:notice") + // userService := SysUser{Service: e.Service} + // userIds, err := userService.GetByPermission("admin:mmAlarmLog:notice") - if err != nil { - e.Log.Errorf("获取管理员失败:%s", err) - } + // if err != nil { + // e.Log.Errorf("获取管理员失败:%s", err) + // } - userIdStr := []string{} + // userIdStr := []string{} - for _, item := range userIds { - userIdStr = append(userIdStr, strconv.Itoa(item)) - } + // for _, item := range userIds { + // userIdStr = append(userIdStr, strconv.Itoa(item)) + // } if err := e.Orm.Save(&alarmLogs).Error; err != nil { e.Log.Errorf("保存告警日志失败:%s", err) return err } - for _, item := range alarmLogs { - notice := global.AlarmLogNotice{ - MachineId: item.MachineId, - BiosId: item.BiosId, - Content: item.Content, - } - vals, _ := sonic.Marshal(notice) + // for _, item := range alarmLogs { + // notice := global.AlarmLogNotice{ + // MachineId: item.MachineId, + // BiosId: item.BiosId, + // Content: item.Content, + // } + // vals, _ := sonic.Marshal(notice) - if vals != nil { - global.WebSocketHub.SendToAll(userIdStr, vals) - } - } + // if vals != nil { + // global.WebSocketHub.SendToAll(userIdStr, vals) + // } + // } return nil } diff --git a/app/admin/service/mm_wallet_white_list.go b/app/admin/service/mm_wallet_white_list.go index d677a03..23e16c2 100644 --- a/app/admin/service/mm_wallet_white_list.go +++ b/app/admin/service/mm_wallet_white_list.go @@ -4,6 +4,7 @@ import ( "errors" "strings" + "github.com/gin-gonic/gin" "github.com/go-admin-team/go-admin-core/sdk/service" "gorm.io/gorm" @@ -19,6 +20,44 @@ type MmWalletWhiteList struct { service.Service } +// 导出excel +func (e MmWalletWhiteList) ExportList(c *gin.Context, req *dto.MmWalletWhiteListGetPageReq) error { + var err error + var data models.MmWalletWhiteList + var list []models.MmWalletWhiteList + + err = e.Orm.Model(&data). + Scopes( + cDto.MakeCondition(req.GetNeedSearch()), + ). + Find(&list).Error + + if err != nil { + return err + } + + excelData := make([]dto.MmWalletWhiteListExportResp, 0) + for _, item := range list { + statusName := "" + if item.Status == 1 { + statusName = "启用" + } else { + statusName = "禁用" + } + excelData = append(excelData, dto.MmWalletWhiteListExportResp{ + Address: item.Address, + StatusName: statusName, + CreateTime: item.CreatedAt.Format("2006-01-02 15:04:05"), + }) + } + + if err := helper.ExportExcel(c, "钱包白名单导出", excelData, []string{}); err != nil { + return err + } + + return nil +} + // GetPage 获取MmWalletWhiteList列表 func (e *MmWalletWhiteList) GetPage(c *dto.MmWalletWhiteListGetPageReq, p *actions.DataPermission, list *[]models.MmWalletWhiteList, count *int64) error { var err error