From 1380bf86988864bf0c92c552a30dc8e3ca81abcc Mon Sep 17 00:00:00 2001 From: TsMask <340112800@qq.com> Date: Tue, 28 Nov 2023 09:47:21 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=96=B0=E5=A2=9E=E5=8F=91=E9=80=81?= =?UTF-8?q?=E6=96=87=E4=BB=B6=E5=88=B0=E7=BD=91=E5=85=83=E6=9C=8D=E5=8A=A1?= =?UTF-8?q?=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/locales/i18n_data.xlsx | Bin 400632 -> 69984 bytes src/modules/common/common.go | 14 ++-- src/modules/common/controller/common.go | 4 +- .../network_element/controller/ne_action.go | 68 ++++++++++++++++++ .../network_element/controller/ne_info.go | 2 +- .../network_element/network_element.go | 11 +++ 6 files changed, 88 insertions(+), 11 deletions(-) create mode 100644 src/modules/network_element/controller/ne_action.go diff --git a/config/locales/i18n_data.xlsx b/config/locales/i18n_data.xlsx index 93ee11ec3750f0ee9351001a824a9a30acd4ffc5..b44b28627a5f70296d5d41331117e39435af4035 100644 GIT binary patch literal 69984 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

qiTQWSoG3Q3z2qMXxT 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

!CTR00-y#=V{c;s2u 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З%rZdQ>{h4F=7d}8;Pk(1e;Y# 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 Zr*3q8`~&ca|K7y^{sC3_JMYS${|5}0$`t?r diff --git a/src/modules/common/common.go b/src/modules/common/common.go index 071fca52..a78c8310 100644 --- a/src/modules/common/common.go +++ b/src/modules/common/common.go @@ -27,9 +27,9 @@ func Setup(router *gin.Engine) { // 系统可暴露的配置信息 indexGroup.GET("/sys-conf", controller.NewCommont.SysConfig) // 系统使用文档转存 - indexGroup.POST("/help-doc", + indexGroup.POST("/helpDoc", middleware.PreAuthorize(nil), - collectlogs.OperateLog(collectlogs.OptionNew("系统使用文档", collectlogs.BUSINESS_TYPE_UPDATE)), + collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.helpDoc", collectlogs.BUSINESS_TYPE_UPDATE)), controller.NewCommont.HelpDoc, ) @@ -56,11 +56,11 @@ func Setup(router *gin.Engine) { indexGroup.GET("/getInfo", middleware.PreAuthorize(nil), controller.NewAccount.Info) indexGroup.GET("/getRouters", middleware.PreAuthorize(nil), controller.NewAccount.Router) indexGroup.POST("/logout", - // middleware.RateLimit(middleware.LimitOption{ - // Time: 300, - // Count: 5, - // Type: middleware.LIMIT_IP, - // }), + middleware.RateLimit(middleware.LimitOption{ + Time: 300, + Count: 5, + Type: middleware.LIMIT_IP, + }), controller.NewAccount.Logout, ) } diff --git a/src/modules/common/controller/common.go b/src/modules/common/controller/common.go index 097e5297..c7329cfa 100644 --- a/src/modules/common/controller/common.go +++ b/src/modules/common/controller/common.go @@ -79,7 +79,7 @@ func (s *CommontController) SysConfig(c *gin.Context) { // 转存帮助文档 // -// POST /help-doc +// POST /helpDoc func (s *CommontController) HelpDoc(c *gin.Context) { language := ctx.AcceptLanguage(c) var body struct { @@ -105,8 +105,6 @@ func (s *CommontController) HelpDoc(c *gin.Context) { newFile := fmt.Sprintf("%s/helpDoc/%s_doc.pdf", dir, lang) fmt.Println(newFile) - // dst := "" - err = file.CopyUploadFile(body.UploadPath, newFile) if err != nil { c.JSON(400, result.CodeMsg(400, err.Error())) diff --git a/src/modules/network_element/controller/ne_action.go b/src/modules/network_element/controller/ne_action.go new file mode 100644 index 00000000..f001b631 --- /dev/null +++ b/src/modules/network_element/controller/ne_action.go @@ -0,0 +1,68 @@ +package controller + +import ( + "fmt" + "path/filepath" + "strings" + + "ems.agt/src/framework/config" + "ems.agt/src/framework/i18n" + "ems.agt/src/framework/utils/ctx" + "ems.agt/src/framework/utils/file" + "ems.agt/src/framework/utils/ssh" + "ems.agt/src/framework/vo/result" + neService "ems.agt/src/modules/network_element/service" + "github.com/gin-gonic/gin" + "github.com/gin-gonic/gin/binding" +) + +// 实例化控制层 NeActionController 结构体 +var NewNeAction = &NeActionController{ + neInfoService: neService.NewNeInfoImpl, +} + +// 网元处理请求 +// +// PATH / +type NeActionController struct { + // 网元信息服务 + neInfoService neService.INeInfo +} + +// 发送文件到网元端 +// +// POST /pushFile +func (s *NeActionController) PushFile(c *gin.Context) { + language := ctx.AcceptLanguage(c) + var body struct { + NeType string `json:"neType" binding:"required"` + NeID string `json:"neId" binding:"required"` + UploadPath string `json:"uploadPath" binding:"required"` + } + if err := c.ShouldBindBodyWith(&body, binding.JSON); err != nil { + c.JSON(400, result.CodeMsg(400, i18n.TKey(language, "app.common.err400"))) + return + } + + // 查询网元获取IP + neInfo := s.neInfoService.SelectNeInfoByNeTypeAndNeID(body.NeType, body.NeID) + if neInfo.NeId != body.NeID || neInfo.IP == "" { + c.JSON(200, result.ErrMsg(i18n.TKey(language, "app.common.noNEInfo"))) + return + } + + // 本地文件 + localPath := file.ParseUploadFilePath(body.UploadPath) + nePath := config.Get("mml.upload").(string) + // 复制到远程 + err := ssh.FileSCPLocalToNe(neInfo.IP, localPath, nePath) + if err != nil { + c.JSON(200, result.ErrMsg(err.Error())) + return + } + + // 网元端文件路径 + fileName := localPath[strings.LastIndex(localPath, "/")+1:] + neFilePath := fmt.Sprintf("%s/%s", nePath, fileName) + c.JSON(200, result.OkData(filepath.ToSlash(neFilePath))) +} diff --git a/src/modules/network_element/controller/ne_info.go b/src/modules/network_element/controller/ne_info.go index 07ca0d12..d8f8a7c8 100644 --- a/src/modules/network_element/controller/ne_info.go +++ b/src/modules/network_element/controller/ne_info.go @@ -35,7 +35,7 @@ func (s *NeInfoController) NeTypeAndID(c *gin.Context) { neInfo := s.neInfoService.SelectNeInfoByNeTypeAndNeID(neType, neId) if neInfo.NeId != neId || neInfo.IP == "" { - c.JSON(200, result.OkData(i18n.TKey(language, "app.common.noNEInfo"))) + c.JSON(200, result.ErrMsg(i18n.TKey(language, "app.common.noNEInfo"))) return } c.JSON(200, result.OkData(neInfo)) diff --git a/src/modules/network_element/network_element.go b/src/modules/network_element/network_element.go index de361903..bcb385b5 100644 --- a/src/modules/network_element/network_element.go +++ b/src/modules/network_element/network_element.go @@ -22,6 +22,17 @@ func Setup(router *gin.Engine) { ) } + // 网元处理 + neActionGroup := neGroup.Group("/action") + { + // 发送文件到网元服务器 + neActionGroup.POST("/pushFile", + middleware.PreAuthorize(nil), + collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neAction", collectlogs.BUSINESS_TYPE_IMPORT)), + controller.NewNeAction.PushFile, + ) + } + // UDM鉴权用户信息 udmAuthGroup := neGroup.Group("/udm/auth") {