360 lines
12 KiB
Go
360 lines
12 KiB
Go
package networkelement
|
|
|
|
import (
|
|
"be.ems/src/framework/logger"
|
|
"be.ems/src/framework/middleware"
|
|
"be.ems/src/framework/middleware/collectlogs"
|
|
"be.ems/src/modules/network_element/controller"
|
|
"be.ems/src/modules/network_element/service"
|
|
|
|
"github.com/gin-gonic/gin"
|
|
)
|
|
|
|
// 模块路由注册
|
|
func Setup(router *gin.Engine) {
|
|
logger.Infof("开始加载 ====> network_element 模块路由")
|
|
|
|
// 启动时需要的初始参数
|
|
InitLoad()
|
|
|
|
neGroup := router.Group("/ne")
|
|
|
|
// 网元操作处理
|
|
neActionGroup := neGroup.Group("/action")
|
|
{
|
|
neActionGroup.GET("/files",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeAction.Files,
|
|
)
|
|
neActionGroup.GET("/pullFile",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeAction.PullFile,
|
|
)
|
|
neActionGroup.POST("/pushFile",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neAction", collectlogs.BUSINESS_TYPE_IMPORT)),
|
|
controller.NewNeAction.PushFile,
|
|
)
|
|
neActionGroup.PUT("/service",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neAction", collectlogs.BUSINESS_TYPE_OTHER)),
|
|
controller.NewNeAction.Service,
|
|
)
|
|
}
|
|
|
|
// 网元信息
|
|
neInfoGroup := neGroup.Group("/info")
|
|
{
|
|
neInfoGroup.GET("/state",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeInfo.State,
|
|
)
|
|
neInfoGroup.GET("/byTypeAndID",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeInfo.NeTypeAndID,
|
|
)
|
|
neInfoGroup.GET("/listAll",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeInfo.ListAll,
|
|
)
|
|
neInfoGroup.GET("/para5GFile",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeInfo.Para5GFileRead,
|
|
)
|
|
neInfoGroup.PUT("/para5GFile",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neInfo", collectlogs.BUSINESS_TYPE_OTHER)),
|
|
controller.NewNeInfo.Para5GFileWrite,
|
|
)
|
|
neInfoGroup.GET("/oamFile",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeInfo.OAMFileRead,
|
|
)
|
|
neInfoGroup.PUT("/oamFile",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neInfo", collectlogs.BUSINESS_TYPE_OTHER)),
|
|
controller.NewNeInfo.OAMFileWrite,
|
|
)
|
|
neInfoGroup.GET("/list",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeInfo.List,
|
|
)
|
|
neInfoGroup.GET("/:infoId",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeInfo.Info,
|
|
)
|
|
neInfoGroup.POST("",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neInfo", collectlogs.BUSINESS_TYPE_INSERT)),
|
|
controller.NewNeInfo.Add,
|
|
)
|
|
neInfoGroup.PUT("",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neInfo", collectlogs.BUSINESS_TYPE_UPDATE)),
|
|
controller.NewNeInfo.Edit,
|
|
)
|
|
neInfoGroup.DELETE("/:infoIds",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neInfo", collectlogs.BUSINESS_TYPE_DELETE)),
|
|
controller.NewNeInfo.Remove,
|
|
)
|
|
}
|
|
|
|
// 网元主机
|
|
neHostGroup := neGroup.Group("/host")
|
|
{
|
|
neHostGroup.GET("/list",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeHost.List,
|
|
)
|
|
neHostGroup.GET("/:hostId",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeHost.Info,
|
|
)
|
|
neHostGroup.POST("",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neHost", collectlogs.BUSINESS_TYPE_INSERT)),
|
|
controller.NewNeHost.Add,
|
|
)
|
|
neHostGroup.PUT("",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neHost", collectlogs.BUSINESS_TYPE_UPDATE)),
|
|
controller.NewNeHost.Edit,
|
|
)
|
|
neHostGroup.DELETE("/:hostIds",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neHost", collectlogs.BUSINESS_TYPE_DELETE)),
|
|
controller.NewNeHost.Remove,
|
|
)
|
|
neHostGroup.POST("/test",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neHost", collectlogs.BUSINESS_TYPE_OTHER)),
|
|
controller.NewNeHost.Test,
|
|
)
|
|
neHostGroup.POST("/cmd",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neHost", collectlogs.BUSINESS_TYPE_OTHER)),
|
|
controller.NewNeHost.Cmd,
|
|
)
|
|
neHostGroup.POST("/checkBySSH",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neHost", collectlogs.BUSINESS_TYPE_OTHER)),
|
|
controller.NewNeHost.CheckBySSH,
|
|
)
|
|
neHostGroup.POST("/authorizedBySSH",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neHost", collectlogs.BUSINESS_TYPE_OTHER)),
|
|
controller.NewNeHost.AuthorizedBySSH,
|
|
)
|
|
}
|
|
|
|
// 网元主机命令
|
|
neHostCmdGroup := neGroup.Group("/hostCmd")
|
|
{
|
|
neHostCmdGroup.GET("/list",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeHostCmd.List,
|
|
)
|
|
neHostCmdGroup.GET("/:cmdId",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeHostCmd.Info,
|
|
)
|
|
neHostCmdGroup.POST("",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neHostCmd", collectlogs.BUSINESS_TYPE_INSERT)),
|
|
controller.NewNeHostCmd.Add,
|
|
)
|
|
neHostCmdGroup.PUT("",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neHostCmd", collectlogs.BUSINESS_TYPE_UPDATE)),
|
|
controller.NewNeHostCmd.Edit,
|
|
)
|
|
neHostCmdGroup.DELETE("/:cmdIds",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neHostCmd", collectlogs.BUSINESS_TYPE_DELETE)),
|
|
controller.NewNeHostCmd.Remove,
|
|
)
|
|
}
|
|
|
|
// 网元版本信息
|
|
neVersionGroup := neGroup.Group("/version")
|
|
{
|
|
neVersionGroup.GET("/list",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeVersion.List,
|
|
)
|
|
neVersionGroup.GET("/:versionId",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeVersion.Info,
|
|
)
|
|
neVersionGroup.POST("/operate",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neVersion", collectlogs.BUSINESS_TYPE_OTHER)),
|
|
controller.NewNeVersion.Operate,
|
|
)
|
|
}
|
|
|
|
// 网元软件包信息
|
|
neSoftwareGroup := neGroup.Group("/software")
|
|
{
|
|
neSoftwareGroup.GET("/list",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeSoftware.List,
|
|
)
|
|
neSoftwareGroup.GET("/:softwareId",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeSoftware.Info,
|
|
)
|
|
neSoftwareGroup.POST("",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neSoftware", collectlogs.BUSINESS_TYPE_INSERT)),
|
|
controller.NewNeSoftware.Add,
|
|
)
|
|
neSoftwareGroup.PUT("",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neSoftware", collectlogs.BUSINESS_TYPE_UPDATE)),
|
|
controller.NewNeSoftware.Edit,
|
|
)
|
|
neSoftwareGroup.DELETE("/:softwareIds",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neSoftware", collectlogs.BUSINESS_TYPE_DELETE)),
|
|
controller.NewNeSoftware.Remove,
|
|
)
|
|
neSoftwareGroup.POST("/newNeVersion",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neSoftware", collectlogs.BUSINESS_TYPE_OTHER)),
|
|
controller.NewNeSoftware.NewNeVersion,
|
|
)
|
|
}
|
|
|
|
// 网元授权激活信息
|
|
neLicenseGroup := neGroup.Group("/license")
|
|
{
|
|
neLicenseGroup.GET("/list",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeLicense.List,
|
|
)
|
|
neLicenseGroup.GET("/:licenseId",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeLicense.Info,
|
|
)
|
|
neLicenseGroup.GET("/byTypeAndID",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeLicense.NeTypeAndID,
|
|
)
|
|
neLicenseGroup.GET("/code",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeLicense.Code,
|
|
)
|
|
neLicenseGroup.POST("/change",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neLicense", collectlogs.BUSINESS_TYPE_OTHER)),
|
|
controller.NewNeLicense.Change,
|
|
)
|
|
neLicenseGroup.GET("/state",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeLicense.State,
|
|
)
|
|
}
|
|
|
|
// 网元参数配置
|
|
neConfigGroup := neGroup.Group("/config")
|
|
{
|
|
// 网元参数配置可用属性值
|
|
neConfigGroup.GET("/list",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeConfig.List,
|
|
)
|
|
neConfigGroup.GET("/info/:id",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeConfig.Info,
|
|
)
|
|
neConfigGroup.POST("",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neConfig", collectlogs.BUSINESS_TYPE_INSERT)),
|
|
controller.NewNeConfig.Add,
|
|
)
|
|
neConfigGroup.PUT("",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neConfig", collectlogs.BUSINESS_TYPE_UPDATE)),
|
|
controller.NewNeConfig.Edit,
|
|
)
|
|
neConfigGroup.DELETE("",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neConfig", collectlogs.BUSINESS_TYPE_DELETE)),
|
|
controller.NewNeConfig.Remove,
|
|
)
|
|
neConfigGroup.GET("/list/:neType",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeConfig.ListByNeType,
|
|
)
|
|
// 网元参数配置数据
|
|
neConfigGroup.GET("/data",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeConfig.DataInfo,
|
|
)
|
|
neConfigGroup.PUT("/data",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neConfig", collectlogs.BUSINESS_TYPE_UPDATE)),
|
|
controller.NewNeConfig.DataEdit,
|
|
)
|
|
neConfigGroup.POST("/data",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neConfig", collectlogs.BUSINESS_TYPE_INSERT)),
|
|
controller.NewNeConfig.DataAdd,
|
|
)
|
|
neConfigGroup.DELETE("/data",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neConfig", collectlogs.BUSINESS_TYPE_DELETE)),
|
|
controller.NewNeConfig.DataRemove,
|
|
)
|
|
}
|
|
|
|
// 网元配置文件备份记录
|
|
neConfigBackupGroup := neGroup.Group("/config/backup")
|
|
{
|
|
neConfigBackupGroup.GET("/list",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeConfigBackup.List,
|
|
)
|
|
neConfigBackupGroup.GET("/download",
|
|
middleware.PreAuthorize(nil),
|
|
controller.NewNeConfigBackup.Download,
|
|
)
|
|
neConfigBackupGroup.PUT("",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neConfigBackup", collectlogs.BUSINESS_TYPE_UPDATE)),
|
|
controller.NewNeConfigBackup.Edit,
|
|
)
|
|
neConfigBackupGroup.DELETE("",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neConfigBackup", collectlogs.BUSINESS_TYPE_DELETE)),
|
|
controller.NewNeConfigBackup.Remove,
|
|
)
|
|
neConfigBackupGroup.POST("/import",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neConfigBackup", collectlogs.BUSINESS_TYPE_IMPORT)),
|
|
controller.NewNeConfigBackup.Import,
|
|
)
|
|
neConfigBackupGroup.POST("/export",
|
|
middleware.PreAuthorize(nil),
|
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neConfigBackup", collectlogs.BUSINESS_TYPE_EXPORT)),
|
|
controller.NewNeConfigBackup.Export,
|
|
)
|
|
}
|
|
}
|
|
|
|
// InitLoad 初始参数
|
|
func InitLoad() {
|
|
// 启动时,清除缓存-网元类型
|
|
service.NewNeInfoImpl.ClearNeCacheByNeType("*")
|
|
service.NewNeInfoImpl.SelectNeInfoByRmuid("")
|
|
// 启动时,网元公共参数数据记录到全局变量
|
|
if para5GMap, err := service.NewNeInfoImpl.NeConfPara5GRead(); para5GMap != nil && err == nil {
|
|
service.NewNeInfoImpl.NeConfPara5GWirte(para5GMap, nil)
|
|
}
|
|
// 启动时,清除缓存-网元参数配置可用属性值
|
|
service.NewNeConfigImpl.ClearNeCacheByNeType("*")
|
|
service.NewNeConfigImpl.RefreshByNeTypeAndNeID("*")
|
|
}
|