diff --git a/README.md b/README.md index 9480c45..d4ed6bc 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,9 @@ 网络管理系统-北向接口 -中国星网网络创新研究院-北向模块 `src\modules\api_rest_cxy`, 注入路径:`/nms-cxy/api/rest`,其余功能以网管住程序为基础包 +功能以网管主程序为基础包 + +- 中国星网网络创新研究院-北向模块 `src\modules\nms_cxy` ## redis 配置文件相关 diff --git a/restagent/etc/restconf.yaml b/restagent/etc/restconf.yaml index f65509b..fb569ca 100644 --- a/restagent/etc/restconf.yaml +++ b/restagent/etc/restconf.yaml @@ -3,7 +3,7 @@ # duration: rotation time with xx hours, example: 1/12/24 hours # count: rotation count of log, default is 30 rotation logger: - file: d:/local.git/be.ems/restagent/log/restagent.log + file: d:/local.git/nms_nbi/restagent/log/restagent.log level: trace duration: 24 count: 2 @@ -26,7 +26,7 @@ rest: keyFile: ./etc/certs/omc-server.key webServer: - enabled: true + enabled: false rootDir: d:/local.git/fe.ems.vue3/dist listen: - addr: :80 @@ -178,7 +178,9 @@ testConfig: file: ./etc/testconfig.yaml # NMS-中国星网研究院 -cxy: +nmsCXY: + # 注入路由组 + routerGroup: "/nms-cxy/api/rest" # 专业编码2位 核心网HX 无线网WX professionCode: "HX" # 厂商编码2位 中信科ZX diff --git a/src/app.go b/src/app.go index be70505..3d44056 100644 --- a/src/app.go +++ b/src/app.go @@ -8,13 +8,13 @@ import ( "nms_nbi/src/framework/errorcatch" "nms_nbi/src/framework/middleware" "nms_nbi/src/framework/middleware/security" - apirestcxy "nms_nbi/src/modules/api_rest_cxy" "nms_nbi/src/modules/chart" "nms_nbi/src/modules/common" "nms_nbi/src/modules/crontask" "nms_nbi/src/modules/monitor" networkdata "nms_nbi/src/modules/network_data" networkelement "nms_nbi/src/modules/network_element" + nmscxy "nms_nbi/src/modules/nms_cxy" "nms_nbi/src/modules/system" "nms_nbi/src/modules/trace" "nms_nbi/src/modules/ws" @@ -135,5 +135,5 @@ func initModulesRoute(app *gin.Engine) { // 监控模块 - 含调度处理加入队列,放最后 monitor.Setup(app) // 北向模块 - 中国星网 - apirestcxy.Setup(app) + nmscxy.Setup(app) } diff --git a/src/modules/api_rest_cxy/service/resource.go b/src/modules/api_rest_cxy/service/resource.go deleted file mode 100644 index da1968e..0000000 --- a/src/modules/api_rest_cxy/service/resource.go +++ /dev/null @@ -1,7 +0,0 @@ -package service - -// 资源数据处理服务 服务层接口 -type IResource interface { - // ResourceDataToFile 资源数据写入文件 - ResourceDataToFile(requestId, neType, rmUID, startTime, endTime string) (int64, string) -} diff --git a/src/modules/api_rest_cxy/service/resource.impl.go b/src/modules/api_rest_cxy/service/resource.impl.go deleted file mode 100644 index a4269de..0000000 --- a/src/modules/api_rest_cxy/service/resource.impl.go +++ /dev/null @@ -1,13 +0,0 @@ -package service - -// 实例化数据层 ResourceImpl 结构体 -var NewResourceImpl = &ResourceImpl{} - -// 资源数据处理服务 服务层处理 -type ResourceImpl struct{} - -// ResourceDataToFile 资源数据写入文件 -func (s *ResourceImpl) ResourceDataToFile(requestId, neType, rmUID, startTime, endTime string) (int64, string) { - - return 0, "" -} diff --git a/src/modules/nms_cxy/README.md b/src/modules/nms_cxy/README.md new file mode 100644 index 0000000..c4e876a --- /dev/null +++ b/src/modules/nms_cxy/README.md @@ -0,0 +1,35 @@ +## 北向模块 - 中国星网网络创新研究院 + +以网管代码为基础,模块相关配置内部处理 + +### 模块配置拓展 + +注册该模块时将以下配置复制到配置文件中,独立层级 + +```yaml +# NMS-中国星网研究院 +nmsCXY: + # 注入路由组 + routerGroup: "/nms-cxy/api/rest" + # 专业编码2位 核心网HX 无线网WX + professionCode: "HX" + # 厂商编码2位 中信科ZX + vendorCode: "AG" + # OMC编号3位 + omcCode: "001" + # 设备序列号 + serialNumber: "1153492" + # Kafka配置 + kafka: + addrs: + - "192.168.5.59:19092" + - "192.168.5.59:29092" + - "192.168.5.59:39092" + # OSS配置 + oss: + bucketname: "omc-bucket" + endpoint: "192.168.5.59:9000" + useSSL: false + accessKeyID: "aOW0r1gfw74G88Z3XZJ6" + secretAccessKey: "9tDErvtCEuVox6LoQu5BOVtycQKcQjlXOGvjl1eD" +``` diff --git a/src/modules/api_rest_cxy/controller/security.go b/src/modules/nms_cxy/controller/security.go similarity index 100% rename from src/modules/api_rest_cxy/controller/security.go rename to src/modules/nms_cxy/controller/security.go diff --git a/src/modules/api_rest_cxy/controller/system.go b/src/modules/nms_cxy/controller/system.go similarity index 99% rename from src/modules/api_rest_cxy/controller/system.go rename to src/modules/nms_cxy/controller/system.go index e0b8221..862c8ca 100644 --- a/src/modules/api_rest_cxy/controller/system.go +++ b/src/modules/nms_cxy/controller/system.go @@ -9,9 +9,9 @@ import ( "nms_nbi/src/framework/utils/date" "nms_nbi/src/framework/utils/ping" "nms_nbi/src/framework/vo/result" - "nms_nbi/src/modules/api_rest_cxy/service" - "nms_nbi/src/modules/api_rest_cxy/utils/common" neService "nms_nbi/src/modules/network_element/service" + "nms_nbi/src/modules/nms_cxy/service" + "nms_nbi/src/modules/nms_cxy/utils/common" "time" diff --git a/src/modules/api_rest_cxy/controller/test.go b/src/modules/nms_cxy/controller/test.go similarity index 93% rename from src/modules/api_rest_cxy/controller/test.go rename to src/modules/nms_cxy/controller/test.go index d34d204..84a4c1c 100644 --- a/src/modules/api_rest_cxy/controller/test.go +++ b/src/modules/nms_cxy/controller/test.go @@ -5,11 +5,11 @@ import ( "nms_nbi/src/framework/i18n" "nms_nbi/src/framework/utils/ctx" "nms_nbi/src/framework/vo/result" - "nms_nbi/src/modules/api_rest_cxy/service" - "nms_nbi/src/modules/api_rest_cxy/utils/kafka" - "nms_nbi/src/modules/api_rest_cxy/utils/oss" neDataModel "nms_nbi/src/modules/network_data/model" neService "nms_nbi/src/modules/network_element/service" + "nms_nbi/src/modules/nms_cxy/service" + "nms_nbi/src/modules/nms_cxy/utils/kafka" + "nms_nbi/src/modules/nms_cxy/utils/oss" "github.com/gin-gonic/gin" ) @@ -20,6 +20,7 @@ var NewTest = &TestController{ alarmService: service.NewAlarmImpl, configService: service.NewConfigImpl, performanceService: service.NewPerformanceImpl, + resourceService: service.NewResourceImpl, } // 测试接口 @@ -34,6 +35,8 @@ type TestController struct { configService service.IConfig // 性能数据处理服务 performanceService service.IPerformance + // 资源数据处理服务 + resourceService service.IResource } // kafka发送消息 @@ -215,6 +218,15 @@ func (s *TestController) OssTestUp(c *gin.Context) { }) return } + if body.OperType == "resource" { + err := s.resourceService.ResourceeUploadOSS("AMF") + c.JSON(200, map[string]any{ + "requestId": body.RequestId, + "operType": body.OperType, + "err": err, + }) + return + } c.JSON(200, map[string]any{ "requestId": body.RequestId, diff --git a/src/modules/api_rest_cxy/model/alarm.go b/src/modules/nms_cxy/model/alarm.go similarity index 100% rename from src/modules/api_rest_cxy/model/alarm.go rename to src/modules/nms_cxy/model/alarm.go diff --git a/src/modules/api_rest_cxy/api_rest_cxy.go b/src/modules/nms_cxy/nms_cxy.go similarity index 94% rename from src/modules/api_rest_cxy/api_rest_cxy.go rename to src/modules/nms_cxy/nms_cxy.go index db9bab2..301f9d2 100644 --- a/src/modules/api_rest_cxy/api_rest_cxy.go +++ b/src/modules/nms_cxy/nms_cxy.go @@ -1,11 +1,12 @@ -package apirestcxy +package nmscxy import ( + "nms_nbi/src/framework/config" "nms_nbi/src/framework/logger" "nms_nbi/src/framework/middleware" - "nms_nbi/src/modules/api_rest_cxy/controller" - "nms_nbi/src/modules/api_rest_cxy/utils/kafka" - "nms_nbi/src/modules/api_rest_cxy/utils/oss" + "nms_nbi/src/modules/nms_cxy/controller" + "nms_nbi/src/modules/nms_cxy/utils/kafka" + "nms_nbi/src/modules/nms_cxy/utils/oss" "github.com/gin-gonic/gin" ) @@ -14,7 +15,8 @@ import ( func Setup(router *gin.Engine) { logger.Infof("开始加载 ====> NMS-CXY 北向模块路由") - apiRest := router.Group("nms-cxy/api/rest") + routerGroup := config.Get("nmsCXY.routerGroup") + apiRest := router.Group(routerGroup.(string)) // 启动时需要的初始参数 InitLoad() diff --git a/src/modules/api_rest_cxy/service/alarm.go b/src/modules/nms_cxy/service/alarm.go similarity index 91% rename from src/modules/api_rest_cxy/service/alarm.go rename to src/modules/nms_cxy/service/alarm.go index e51e6ef..5db654d 100644 --- a/src/modules/api_rest_cxy/service/alarm.go +++ b/src/modules/nms_cxy/service/alarm.go @@ -1,8 +1,8 @@ package service import ( - "nms_nbi/src/modules/api_rest_cxy/model" neDataModel "nms_nbi/src/modules/network_data/model" + "nms_nbi/src/modules/nms_cxy/model" ) // 告警数据处理服务 服务层接口 diff --git a/src/modules/api_rest_cxy/service/alarm.impl.go b/src/modules/nms_cxy/service/alarm.impl.go similarity index 96% rename from src/modules/api_rest_cxy/service/alarm.impl.go rename to src/modules/nms_cxy/service/alarm.impl.go index 3733dfb..a2afb42 100644 --- a/src/modules/api_rest_cxy/service/alarm.impl.go +++ b/src/modules/nms_cxy/service/alarm.impl.go @@ -8,11 +8,11 @@ import ( "nms_nbi/src/framework/utils/date" "nms_nbi/src/framework/utils/file" "nms_nbi/src/framework/utils/parse" - "nms_nbi/src/modules/api_rest_cxy/model" - "nms_nbi/src/modules/api_rest_cxy/utils/common" - "nms_nbi/src/modules/api_rest_cxy/utils/kafka" neDataModel "nms_nbi/src/modules/network_data/model" neDataService "nms_nbi/src/modules/network_data/service" + "nms_nbi/src/modules/nms_cxy/model" + "nms_nbi/src/modules/nms_cxy/utils/common" + "nms_nbi/src/modules/nms_cxy/utils/kafka" ) // 实例化数据层 AlarmImpl 结构体 diff --git a/src/modules/api_rest_cxy/service/config.go b/src/modules/nms_cxy/service/config.go similarity index 100% rename from src/modules/api_rest_cxy/service/config.go rename to src/modules/nms_cxy/service/config.go diff --git a/src/modules/api_rest_cxy/service/config.impl.go b/src/modules/nms_cxy/service/config.impl.go similarity index 94% rename from src/modules/api_rest_cxy/service/config.impl.go rename to src/modules/nms_cxy/service/config.impl.go index 49a7689..eb77e83 100644 --- a/src/modules/api_rest_cxy/service/config.impl.go +++ b/src/modules/nms_cxy/service/config.impl.go @@ -4,7 +4,7 @@ import ( "fmt" "nms_nbi/src/framework/constants/uploadsubpath" "nms_nbi/src/framework/utils/file" - "nms_nbi/src/modules/api_rest_cxy/utils/common" + "nms_nbi/src/modules/nms_cxy/utils/common" ) // 实例化数据层 ConfigImpl 结构体 diff --git a/src/modules/api_rest_cxy/service/log.go b/src/modules/nms_cxy/service/log.go similarity index 100% rename from src/modules/api_rest_cxy/service/log.go rename to src/modules/nms_cxy/service/log.go diff --git a/src/modules/api_rest_cxy/service/log.impl.go b/src/modules/nms_cxy/service/log.impl.go similarity index 98% rename from src/modules/api_rest_cxy/service/log.impl.go rename to src/modules/nms_cxy/service/log.impl.go index 749e511..55f47d2 100644 --- a/src/modules/api_rest_cxy/service/log.impl.go +++ b/src/modules/nms_cxy/service/log.impl.go @@ -6,7 +6,7 @@ import ( "nms_nbi/src/framework/i18n" "nms_nbi/src/framework/utils/file" "nms_nbi/src/framework/utils/parse" - "nms_nbi/src/modules/api_rest_cxy/utils/common" + "nms_nbi/src/modules/nms_cxy/utils/common" systemModel "nms_nbi/src/modules/system/model" systemService "nms_nbi/src/modules/system/service" ) diff --git a/src/modules/api_rest_cxy/service/performance.go b/src/modules/nms_cxy/service/performance.go similarity index 100% rename from src/modules/api_rest_cxy/service/performance.go rename to src/modules/nms_cxy/service/performance.go diff --git a/src/modules/api_rest_cxy/service/performance.impl.go b/src/modules/nms_cxy/service/performance.impl.go similarity index 96% rename from src/modules/api_rest_cxy/service/performance.impl.go rename to src/modules/nms_cxy/service/performance.impl.go index a2ac11d..b85659f 100644 --- a/src/modules/api_rest_cxy/service/performance.impl.go +++ b/src/modules/nms_cxy/service/performance.impl.go @@ -4,9 +4,9 @@ import ( "fmt" "nms_nbi/src/framework/constants/uploadsubpath" "nms_nbi/src/framework/utils/file" - "nms_nbi/src/modules/api_rest_cxy/utils/common" neDataModel "nms_nbi/src/modules/network_data/model" neDataService "nms_nbi/src/modules/network_data/service" + "nms_nbi/src/modules/nms_cxy/utils/common" ) // 实例化数据层 PerformanceImpl 结构体 diff --git a/src/modules/nms_cxy/service/resource.go b/src/modules/nms_cxy/service/resource.go new file mode 100644 index 0000000..885583c --- /dev/null +++ b/src/modules/nms_cxy/service/resource.go @@ -0,0 +1,7 @@ +package service + +// 资源数据处理服务 服务层接口 +type IResource interface { + // ResourceeUploadOSS 资源数据上报 + ResourceeUploadOSS(neType string) error +} diff --git a/src/modules/nms_cxy/service/resource.impl.go b/src/modules/nms_cxy/service/resource.impl.go new file mode 100644 index 0000000..aa07e56 --- /dev/null +++ b/src/modules/nms_cxy/service/resource.impl.go @@ -0,0 +1,32 @@ +package service + +import ( + "fmt" + "nms_nbi/src/framework/constants/uploadsubpath" + "nms_nbi/src/framework/utils/file" + "nms_nbi/src/modules/nms_cxy/utils/common" +) + +// 实例化数据层 ResourceImpl 结构体 +var NewResourceImpl = &ResourceImpl{} + +// 资源数据处理服务 服务层处理 +type ResourceImpl struct{} + +// ResourceeUploadOSS 资源数据上报 +func (s *ResourceImpl) ResourceeUploadOSS(neType string) error { + // 配置文件目录 + dir := "C:\\usr\\local\\omc\\upload\\export\\2023\\12" + + // 文件名 + dataSaveFileName := common.DataSaveFileName{} + fileName := dataSaveFileName.ZIP() + filePath := fmt.Sprintf("%s/%s", file.ParseUploadFileDir(uploadsubpath.EXPORT), fileName) + + err := file.CompressZipByDir(filePath, dir) + if err != nil { + return err + } + + return common.UploadOSSByZip(filePath, neType, "CM") +} diff --git a/src/modules/api_rest_cxy/utils/common/common.go b/src/modules/nms_cxy/utils/common/common.go similarity index 96% rename from src/modules/api_rest_cxy/utils/common/common.go rename to src/modules/nms_cxy/utils/common/common.go index 78a5d33..58241bb 100644 --- a/src/modules/api_rest_cxy/utils/common/common.go +++ b/src/modules/nms_cxy/utils/common/common.go @@ -5,7 +5,7 @@ import ( "nms_nbi/src/framework/config" "nms_nbi/src/framework/utils/date" "nms_nbi/src/framework/utils/file" - "nms_nbi/src/modules/api_rest_cxy/utils/oss" + "nms_nbi/src/modules/nms_cxy/utils/oss" "path/filepath" "strings" "time" @@ -50,7 +50,7 @@ func (s *DataSaveFileName) join() string { if s.ResCode != "" { nameArr = append(nameArr, s.ResCode) } else { - serialNumber := config.Get("cxy.serialNumber").(string) + serialNumber := config.Get("nmsCXY.serialNumber").(string) serialNumber = fmt.Sprintf("%0*s", 16, serialNumber) nameArr = append(nameArr, serialNumber) } @@ -120,9 +120,9 @@ func DataSaveFilePath(neType, dataType string) string { // // 专业编码{separator}OMC厂商编码{separator}OMC编号 func BasePath(separator string) string { - professionCode := config.Get("cxy.professionCode").(string) - vendorCode := config.Get("cxy.vendorCode").(string) - omcCode := config.Get("cxy.omcCode").(string) + professionCode := config.Get("nmsCXY.professionCode").(string) + vendorCode := config.Get("nmsCXY.vendorCode").(string) + omcCode := config.Get("nmsCXY.omcCode").(string) return fmt.Sprintf("%s%s%s%s%s", professionCode, separator, vendorCode, separator, omcCode) } diff --git a/src/modules/api_rest_cxy/utils/kafka/kafka.go b/src/modules/nms_cxy/utils/kafka/kafka.go similarity index 98% rename from src/modules/api_rest_cxy/utils/kafka/kafka.go rename to src/modules/nms_cxy/utils/kafka/kafka.go index 03cf1f4..93c5b5b 100644 --- a/src/modules/api_rest_cxy/utils/kafka/kafka.go +++ b/src/modules/nms_cxy/utils/kafka/kafka.go @@ -16,7 +16,7 @@ var KInitConm Kafka func InitConfig() { // 服务地址 addrs := []string{} - addrsArr := config.Get("cxy.kafka.addrs").([]any) + addrsArr := config.Get("nmsCXY.kafka.addrs").([]any) for _, v := range addrsArr { addrs = append(addrs, v.(string)) } diff --git a/src/modules/api_rest_cxy/utils/oss/oss.go b/src/modules/nms_cxy/utils/oss/oss.go similarity index 79% rename from src/modules/api_rest_cxy/utils/oss/oss.go rename to src/modules/nms_cxy/utils/oss/oss.go index abdc809..7fa8c44 100644 --- a/src/modules/api_rest_cxy/utils/oss/oss.go +++ b/src/modules/nms_cxy/utils/oss/oss.go @@ -15,11 +15,11 @@ var OInitConm *minio.Client // InitConfig 连接OSS实例 func InitConfig() { // 读取数据源配置 - bucketname := config.Get("cxy.oss.bucketname").(string) - endpoint := config.Get("cxy.oss.endpoint").(string) - useSSL := config.Get("cxy.oss.useSSL").(bool) - accessKeyID := config.Get("cxy.oss.accessKeyID").(string) - secretAccessKey := config.Get("cxy.oss.secretAccessKey").(string) + bucketname := config.Get("nmsCXY.oss.bucketname").(string) + endpoint := config.Get("nmsCXY.oss.endpoint").(string) + useSSL := config.Get("nmsCXY.oss.useSSL").(bool) + accessKeyID := config.Get("nmsCXY.oss.accessKeyID").(string) + secretAccessKey := config.Get("nmsCXY.oss.secretAccessKey").(string) // 初始minio客户端对象 minioClient, err := minio.New(endpoint, &minio.Options{ @@ -44,7 +44,7 @@ func InitConfig() { // FileUploadFileByFilePath 文件上传-文件绝对路径 func FileUploadFileByFilePath(filePath, newFileName string) (minio.UploadInfo, error) { - bucketname := config.Get("cxy.oss.bucketname").(string) + bucketname := config.Get("nmsCXY.oss.bucketname").(string) contentType := "application/octet-stream" // Upload the test file with FPutObject ctx := context.Background()