286 Commits

Author SHA1 Message Date
TsMask
90395e7464 ref: 重构获取网元状态信息 2025-10-27 15:16:30 +08:00
TsMask
0b15ff1476 fix: AMF配置WhiteList Content导入index0无效问题 2025-10-24 20:46:20 +08:00
TsMask
8ced920aec chore: 更新版本号 2.2510.4 2025-10-24 20:11:19 +08:00
zhongzm
4ae74103f1 Merge remote-tracking branch 'origin/main-v2' into main-v2 2025-10-23 18:06:45 +08:00
zhongzm
1c4c1a796d feat:同步语音仪表盘:修改useNeInfoStore导入地址、补充接口导入、修改ims请求参数、修改响应码 2025-10-23 18:06:34 +08:00
TsMask
a658852772 feat: 基站状态补充randId列 2025-10-23 14:15:46 +08:00
TsMask
0d13400229 chore: 更新版本号 2.2510.3 2025-10-18 18:09:04 +08:00
TsMask
7491ccc00b feat: 网元配置备份修改表单校验规则,添加备注字段必填项 2025-10-18 14:20:46 +08:00
TsMask
fc64460870 feat: 网元配置选择传入neId查询配置数据 2025-10-17 10:20:40 +08:00
TsMask
323da55c9d feat: 更新根网管节点处理逻辑,支持无OMC情况 2025-10-15 11:42:27 +08:00
TsMask
26cf7fa560 style: 移除ID列显示 2025-10-14 11:08:58 +08:00
TsMask
5ea56e779a feat: 备份网元日志文件数据查看 2025-10-14 11:08:39 +08:00
TsMask
174a7afc47 chore: 更新版本号 2.2510.2 2025-10-11 19:06:04 +08:00
TsMask
f4e61a0ebc fix: MML回车undefined问题,关闭搜索匹配 2025-10-11 17:28:05 +08:00
TsMask
97e5533d6e style: 移除ID列显示 2025-10-09 19:54:49 +08:00
TsMask
e1c4229e58 style: 移除网元版本和授权ID列显示 2025-10-09 11:22:19 +08:00
TsMask
c6e21c6c38 fix: SMSC-CDR添加结果原因说明 2025-09-28 20:13:13 +08:00
TsMask
b1d0771d56 feat: UDM-auth数据导出按钮权限定义 2025-09-28 19:31:42 +08:00
TsMask
22b0b7e204 chore: 更新版本号 2.2509.4 2025-09-26 20:22:30 +08:00
TsMask
93f31eded4 Merge branch 'main-v2' of http://192.168.2.166:3180/OMC/ems_frontend_vue3 into main-v2 2025-09-25 15:30:32 +08:00
TsMask
1eec47f410 style: UDM数据显示创建时间列 2025-09-25 15:30:28 +08:00
zhongzm
d9bc5b9f02 feat:中英文补充 2025-09-22 18:13:20 +08:00
zhongzm
3116e51338 feat:取消成功网元排列,仅保留显示失败网元 2025-09-22 18:09:27 +08:00
TsMask
3026ac1dd8 rev:流量格式化MB、GB 2025-09-19 14:19:07 +08:00
TsMask
c01380da6b feat: 添加系统备份功能,包括导入导出OMC的API和界面支持 2025-09-19 12:04:49 +08:00
zhongzm
98e4d39cdf feat:流量格式化MB、GB 2025-09-19 09:18:32 +08:00
TsMask
1c025c2cc1 feat: 日志备份文件查看kpi文件记录 2025-09-18 11:02:20 +08:00
TsMask
20a12eba56 fix: 根据搜索条件导出,去除最大记录限制 2025-09-18 11:01:36 +08:00
TsMask
904488f59a feat: 添加活动告警自动刷新功能并优化代码结构 2025-09-15 19:32:11 +08:00
TsMask
a2f93f7862 feat: 修复奇安信浏览器时区格式错误 2025-09-15 16:40:40 +08:00
TsMask
d249d14c49 feat: 添加网元配置快速PLMN修改框 2025-09-15 16:11:08 +08:00
TsMask
58d0e6e884 feat: 移除掉一些权限标识 2025-09-15 14:23:17 +08:00
zhongzm
510e3e1006 feat:ue和ne模块权限按钮 2025-09-12 18:52:50 +08:00
zhongzm
02b12d76a7 Merge remote-tracking branch 'origin/main-v2' into main-v2 2025-09-12 17:09:32 +08:00
zhongzm
5839aa3cb1 feat:监控模块按钮权限 2025-09-12 17:09:17 +08:00
TsMask
83a289492d fix: UDM数据导出提示信息,导出总数 2025-09-12 17:08:07 +08:00
zhongzm
05d59ec526 feat:进度条显示调整 2025-09-11 11:42:29 +08:00
zhongzm
c22d7604cf feat:fnModalOk参数传递修复 2025-09-11 11:04:05 +08:00
zhongzm
6f9639d3d4 feat:控制台警告修复 2025-09-11 10:38:13 +08:00
zhongzm
5932662e7c feat:网元许可快速上传功能 2025-09-10 18:08:53 +08:00
zhongzm
cdbe9a1e42 feat:网元信息快速OAM功能 2025-09-10 16:27:34 +08:00
TsMask
a032236d7d chore: 更新版本号 2.2508.4 2025-08-29 19:19:51 +08:00
TsMask
1dcd8a6e25 feat: 网元授权显示用户数/基站数 2025-08-29 18:49:58 +08:00
TsMask
e075779b91 style: 网元当前版本显示是否有包存在 2025-08-29 18:49:49 +08:00
TsMask
e5ce2ebb02 fix: cdr/ue导出操作后锁定按钮事件防重发 2025-08-28 16:09:45 +08:00
TsMask
3da786f6b9 feat: 网元可选静态可选项添加PGWC 2025-08-28 10:55:31 +08:00
TsMask
d4e603be63 fix: 参数配置添加校验过滤长度~和-定义范围 2025-08-28 10:42:07 +08:00
TsMask
a7024df325 fix: UPF流量统计数据同时获取刷新 2025-08-28 09:52:25 +08:00
TsMask
b525b92163 fix: UPF流量统计字节数据格式化显示不一致问题 2025-08-28 09:51:24 +08:00
TsMask
7916cc5a54 feat: 指标Title管理页面功能 2025-08-21 11:10:51 +08:00
TsMask
54468e2728 style: sgwc导出超时180s 2025-08-19 16:07:43 +08:00
TsMask
91ce2d7737 fix: 增加多个导出操作的超时时间至180秒 2025-08-18 19:07:41 +08:00
zhongzm
40705c6863 feat:中英文补充 2025-08-15 19:04:53 +08:00
TsMask
c43e57a5d8 chore: 更新版本号 2.2508.2 2025-08-15 18:49:10 +08:00
TsMask
037fb18e06 fix: 给config.js加随机数避免缓存 2025-08-15 09:48:36 +08:00
TsMask
8eaddc8e79 fix: 第三方用户不可删除和修改密码 2025-08-14 10:48:40 +08:00
TsMask
a7b539cd36 feat: 第三方登录认证功能和管理页 2025-08-12 09:54:37 +08:00
TsMask
0514c58b63 style:: 系统操作日志详情json格式化显示 2025-08-11 15:39:02 +08:00
TsMask
6a558788c7 fix: 网元信息更新禁止修改neType neId 2025-08-11 11:42:47 +08:00
zhongzm
253e36073d feat:用户数重置0 注释 2025-08-11 11:23:46 +08:00
zhongzm
3d7543074d feat:用户数网元切换显示 2025-08-11 11:15:51 +08:00
zhongzm
91175acd31 feat:用户数累加问题修复 2025-08-11 10:40:36 +08:00
zhongzm
a7c2d25c5d feat:液体图中浮标显示错误修复 2025-08-08 19:53:36 +08:00
zhongzm
cd495ab817 feat:基站数修复以及资源模块下拉框修复 2025-08-08 19:41:52 +08:00
TsMask
3229f21bcf fix: 告警事件时间显示不是时间格式字符串 2025-08-08 18:26:46 +08:00
zhongzm
33ffbbe4b2 feat:透明柱状图自适应,数值标签定位 2025-08-08 17:36:25 +08:00
zhongzm
2b4ce5f1c4 feat:告警数据参数调整 2025-08-08 17:15:20 +08:00
TsMask
8a31265743 chore: 更新版本号 2.2508.1 2025-08-08 12:12:08 +08:00
zhongzm
2492555a69 feat:主动呼叫改正在通话 2025-08-08 11:36:15 +08:00
zhongzm
6644ef2608 feat:网元切换清除缓存数据 2025-08-08 11:35:50 +08:00
zhongzm
1359aa8994 feat:调整顺序 2025-08-07 19:15:40 +08:00
TsMask
bffd3fe791 Merge branch 'main-v2' of http://192.168.2.166:3180/OMC/ems_frontend_vue3 into main-v2 2025-08-07 15:49:49 +08:00
TsMask
c020598678 fix: 看板切换upf的流量统计显示 2025-08-07 15:49:47 +08:00
zhongzm
7a7a0938ca feat:语音仪表盘中英文适配 2025-08-06 17:35:03 +08:00
TsMask
48a4497c14 fix: 看板2用户数量显示不出 2025-08-05 19:51:06 +08:00
TsMask
1342a37d50 style: 修改广播帮助的数量提示 2025-08-05 18:51:33 +08:00
TsMask
67dc3a0389 fix: MML日志列表显示 2025-08-05 17:28:03 +08:00
TsMask
7901b34c04 style: 系统用户账号简单4位长度 2025-08-05 17:27:18 +08:00
TsMask
6aeb645d88 fix: CBC创建时间格式显示错误 2025-08-05 17:26:20 +08:00
TsMask
501fc4fd07 style: 网元概览隐藏容量字段显示 2025-08-05 15:25:34 +08:00
TsMask
b16a91ca74 fix: 关闭网元reload操作,只有amf smf upf udm四个网元支持,改用mml发送 2025-08-05 11:23:55 +08:00
TsMask
37691e5349 fix: MML命令为空判断不发送 2025-08-04 18:27:24 +08:00
TsMask
e4136a27ee fix: UDM鉴权更新ki长度提示错误无法发送请求 2025-08-04 16:41:08 +08:00
TsMask
27bcf0ce6b chore: 更新版本号 2.2507.4 2025-08-01 18:23:02 +08:00
TsMask
6ca7181bce fix: cbc表格列宽设置 2025-08-01 17:51:22 +08:00
zhongzm
a0ae414ec6 feat:数据采集说明 2025-08-01 17:33:06 +08:00
zhongzm
ef3368ded9 feat:修复界面溢出 2025-08-01 16:58:00 +08:00
zhongzm
abdd58fc81 feat:底部边距 2025-08-01 16:52:58 +08:00
zhongzm
6572fd13b1 feat:告警模块优化 2025-08-01 16:44:20 +08:00
lai
e190379468 Merge branch 'main-v2' of http://192.168.2.166:3180/OMC/ems_frontend_vue3 into main-v2 2025-08-01 15:54:34 +08:00
lai
6b2682b3d3 新增cbc界面 2025-08-01 15:49:01 +08:00
zhongzm
bbc27c757b feat:数据处理修复,显示优化 2025-08-01 15:04:19 +08:00
zhongzm
cf88c86b75 Merge remote-tracking branch 'origin/main-v2' into main-v2 2025-07-30 18:34:50 +08:00
zhongzm
aa16a7356f feat:参数值推送显示修复 2025-07-30 18:34:39 +08:00
TsMask
e982f09874 chore: 更新版本号 2.2507.3 2025-07-25 20:31:15 +08:00
TsMask
9e69e76670 style: 将UDM鉴权导出按钮隐藏 2025-07-24 19:21:00 +08:00
TsMask
ad373961e4 fix:: 自定义指标数值格式处理,导出表格修复 2025-07-23 10:56:59 +08:00
TsMask
26da73654f fix: 仪表盘2用户事件显示不正常 2025-07-22 18:51:41 +08:00
TsMask
09b7d806ea fix:: 自定义指标数值格式化保留3位小数 2025-07-22 18:50:57 +08:00
TsMask
b5400b0dd8 feat: 参数配置AMF导入Index字段存在更新,不存在默认新增 2025-07-21 17:13:10 +08:00
TsMask
b5b9e763aa feat: 参数配置刷新无法正常打开,导入白名单字段格式转换 2025-07-21 15:40:30 +08:00
TsMask
fb20e40e67 chore: 更新版本号 2.2507.2 2025-07-18 21:28:49 +08:00
TsMask
a19427e953 fix: 指标页面数据获取异常接口调整 2025-07-18 21:24:58 +08:00
TsMask
a76c595c4c del: 删除无用文件 2025-07-18 21:23:24 +08:00
zhongzm
ee55be5fcc feat:参数和接口修改问题 2025-07-18 18:56:02 +08:00
zhongzm
96c1f54b71 feat:综合仪表盘修改迁移以及版本兼容修复 2025-07-18 17:27:12 +08:00
zhongzm
8b6805fdb0 feat:综合仪表盘修改初版 2025-07-18 15:19:05 +08:00
TsMask
f5cdad08c5 fix: 注释掉echarts-liquidfill 2025-07-16 15:03:43 +08:00
TsMask
10a5ed15bf feat: mt版本移动过来的的告警/仪表/性能大屏页面 2025-07-16 14:51:41 +08:00
TsMask
ab7a466879 fix: 基站状态记录和smscCDR导出改为get行为 2025-07-15 19:54:02 +08:00
TsMask
82b1340906 fix: 基站状态拓扑图显示失败 2025-07-15 19:53:08 +08:00
TsMask
46ace81d9d fix: 调整UE数据返回参数 2025-07-15 19:52:38 +08:00
TsMask
73993eb4ce fix: 参数配置列表项不记录勾选状态 2025-07-15 19:51:54 +08:00
TsMask
dd9bcaa7ce fix: 调整告警类型参数值 2025-07-15 19:51:20 +08:00
TsMask
27b2cfb449 feat: 调整MML命令请求接口 2025-07-15 19:50:09 +08:00
TsMask
3eae546aa4 fix: CDR返回信息调整 2025-07-15 19:49:18 +08:00
TsMask
818f91ad89 feat: 调整nssf/n3iwf接口调用 2025-07-15 19:47:46 +08:00
TsMask
594e439b43 fix: 调整安装UE_POOL改到基础项 2025-07-10 14:30:07 +08:00
TsMask
a0ae95345c fix: 调整安装UE_POOL改到基础项 2025-07-10 11:23:27 +08:00
TsMask
2e23709fe4 feat: HLR跟踪页面标识为UDM 2025-07-07 10:43:50 +08:00
TsMask
c80e7f17de chore: 更新版本号 2.2507.1 2025-07-05 10:28:27 +08:00
TsMask
799eacc9fa chore: 更新版本号 2.2507.1 2025-07-05 10:17:34 +08:00
TsMask
8e769a99e9 fix: 修复listCacheKey函数中的URL路径错误 2025-07-02 18:49:16 +08:00
TsMask
93ea37bbc1 fix: SMF-DATA图表日期显示不完整 2025-07-02 18:10:09 +08:00
TsMask
e3f70640b8 fix: 跟踪任务编号的传入获取信息 2025-07-02 15:27:45 +08:00
TsMask
2181d51999 fix: 参数配置可见visible属性判断 2025-06-30 16:17:07 +08:00
TsMask
a2a7ec3857 chore: 更新版本号 2.2506.4 2025-06-27 19:33:51 +08:00
TsMask
1566392c19 feat: AMF/MME对应的IMEI白名单模板去除index 2025-06-24 17:13:57 +08:00
TsMask
5704ff09c3 fix: UDM-IMS数据批量新增/批量删除命令调整 2025-06-24 17:13:18 +08:00
TsMask
673b8f9ad2 chore: 更新版本号 2.250620 2025-06-20 19:30:30 +08:00
TsMask
b6468eecab feat: UDM签约cnType新增可选1仅5G/2仅4G 2025-06-20 14:54:53 +08:00
TsMask
b8c6761fbf feat: 给AMF/MME对应的IMEI白名单添加批量导入和批量删除功能 2025-06-20 14:39:53 +08:00
TsMask
d6aa4086e2 feat: UDM voup/ims导入失败文件下载 2025-06-16 18:47:13 +08:00
TsMask
f513b47fb8 chore: 更新版本号 2.250613 2025-06-13 20:12:08 +08:00
TsMask
eb1dccd642 fix: 数值控件属性maxlength拼写错误 2025-06-12 19:40:25 +08:00
TsMask
94ba520f5d fix: 空格内容无法编辑,提示信息显示方向 2025-06-12 10:34:05 +08:00
TsMask
d3649ea784 style: 抓包文件目录列表显示文件大小 2025-06-11 20:35:35 +08:00
TsMask
2f7c22aac2 chore: 更新版本号 2.250607 2025-06-07 16:29:29 +08:00
TsMask
2f8ed1d821 fix: 请求响应码常量,身份信息更换逻辑优化 2025-06-07 16:28:18 +08:00
TsMask
d84a6626c1 fix: 更新tcpdump路径从/tmp到/usr/local以符合新目录结构 2025-06-06 15:06:52 +08:00
TsMask
9ad497471d style: 补充版本发布日志 2025-06-03 17:36:59 +08:00
TsMask
51097f7bd1 style: 网元参数配置修改tooltip位置为bottomLeft防止遮挡 2025-05-30 16:49:50 +08:00
TsMask
87b4c19f5a chore: 更新版本号 2.250530 2025-05-30 14:41:24 +08:00
TsMask
319f03abfd fix: 服务器时间格式化指定时区 2025-05-30 14:16:31 +08:00
TsMask
d6a82f2034 style: 网元授权状态更新容量和更新时间局部变化 2025-05-29 20:33:17 +08:00
TsMask
2288af6403 style: 网元授权状态更新容量和更新时间局部变化 2025-05-29 19:50:28 +08:00
TsMask
62e8d996d9 style: 网元授权状态更新容量和更新时间局部变化 2025-05-29 16:35:08 +08:00
TsMask
35cabc1973 fix: 网元信令跟踪支持选择轻量版UPF 2025-05-26 20:10:32 +08:00
TsMask
91fb19a072 fix: 看板数据加载间隔从5秒调整为10秒 2025-05-23 19:16:42 +08:00
TsMask
af3e0505cf fix: 看板UDM选择添加下拉菜单的弹出容器属性 2025-05-23 17:16:03 +08:00
TsMask
49b70f5d40 chore: 更新版本号 2.250523 2025-05-23 14:52:20 +08:00
TsMask
5b1e7be9ea fix: 修复同步操作加载提示未隐藏的问题 2025-05-22 19:58:36 +08:00
TsMask
998318a543 fix: 告警确认相关提示Tip多语言显示 2025-05-22 19:18:23 +08:00
TsMask
42e71317a2 fix: 网元授权许可证状态统一刷新功能 2025-05-22 09:55:31 +08:00
TsMask
245e33a308 fix: 活动告警启用历史同步按钮 2025-05-20 15:48:31 +08:00
TsMask
7439981557 fix: 更新批量刷新信息,容量仅UDM/AMF/MME 2025-05-20 15:43:29 +08:00
TsMask
2c67108751 fix: 仪表盘数据会话属累加 2025-05-16 20:05:51 +08:00
TsMask
6a8936a9ba fix: 网元主机信息编辑表单不验证免密类型, 主机列表的查询类型参数 2025-05-16 17:52:10 +08:00
TsMask
39d63dea42 chore: 更新版本号 2.250516 2025-05-16 09:47:37 +08:00
TsMask
e0531d0c7d fix: 编译类型检查错误 2025-05-15 16:30:24 +08:00
TsMask
b817b7aa51 feat: 网元授权上传变更确认延迟2s刷新授权状态 2025-05-14 14:19:22 +08:00
TsMask
631adb26a3 fix: 英文修改基站名称为 RAN Node Name 2025-05-13 18:29:13 +08:00
TsMask
6eea86f4e7 feat: 根据网元类型过滤导出备份数据可选的数据来源 2025-05-13 18:28:36 +08:00
TsMask
6062170556 feat: 跟踪任务添加标题,编号后面加任务详情 2025-05-12 18:18:35 +08:00
TsMask
ae6b866e0a chore: 更新版本号 2.250509 2025-05-09 19:55:07 +08:00
TsMask
ef084b4287 feat: 更新日志文件导出列表,添加系统登录和操作日志 2025-05-09 14:22:01 +08:00
TsMask
602381b6a9 feat: 网元授权添加用户容量列 2025-05-09 12:04:14 +08:00
TsMask
f3c75b9992 fix: OAM读取结构错误 2025-05-09 12:03:34 +08:00
TsMask
583be8c8fe fix: 仪表盘用户数据刷新时显示0闪烁 2025-05-07 16:56:14 +08:00
TsMask
75a8b35226 feat: 看板含有网元显示区域 2025-05-07 16:09:36 +08:00
TsMask
d3efefe7c5 feat: 根据网元显示特有菜单 2025-05-07 15:45:54 +08:00
TsMask
2c2ca82442 fix: 移除网络错误时的退出登录状态处理逻辑 2025-04-30 18:16:21 +08:00
TsMask
bdc389b37d chore: 更新版本号 2.250430 2025-04-30 18:07:48 +08:00
TsMask
caed6203ac feat: PCF用户策略页面多语言翻译 2025-04-30 17:00:56 +08:00
TsMask
64739f1fb8 feat: 在上传切片文件到网元端时添加删除临时文件选项 2025-04-30 16:55:27 +08:00
TsMask
d3b9f21511 fix: 优化PCF用户策略页面及接口调整 2025-04-30 16:55:16 +08:00
TsMask
f0fd698bec fix: 时间控件格式移除插件属性value-format="x" 2025-04-29 20:28:10 +08:00
TsMask
0085310518 feat: 服务器时区UTC格式转换 2025-04-29 20:27:15 +08:00
TsMask
82238f8f21 feat: 添加网络错误处理,退出登录状态 2025-04-29 17:10:10 +08:00
TsMask
cb6ed51a4e fix: 替换获取服务器时间接口 2025-04-29 17:09:41 +08:00
TsMask
13a18a7131 del: 移除部分旧/apt/rest/直连接口 2025-04-29 17:08:56 +08:00
TsMask
c571453983 feat: 网元服务操作局部状态刷新,补充提示信息 2025-04-29 10:34:09 +08:00
TsMask
5713916bc8 fix: 时间格式常量定义及默认格式 2025-04-28 19:35:39 +08:00
TsMask
76caaf694c feat: 添加IMS SIP响应码原因显示 2025-04-28 19:34:56 +08:00
TsMask
42f8c0b64f fix: 看板流量图确保时间以HH:mm:ss格式显示 2025-04-28 18:32:14 +08:00
TsMask
a65f8ed95f fix: 看板用户活动乱序问题 2025-04-28 18:30:14 +08:00
TsMask
78b5ec90ee fix: 修复引导获取token存储问题 2025-04-27 18:45:56 +08:00
TsMask
efceb68ff3 chore: 更新版本号 2.250427 2025-04-27 17:49:08 +08:00
TsMask
96621f4261 chore: 更新依赖项版本 2025-04-27 17:48:49 +08:00
TsMask
f41557de94 fix: 去除请求方法PATCH 2025-04-27 17:47:58 +08:00
TsMask
2de9788373 ref : 重构令牌管理逻辑,,统一状态码识别 2025-04-27 17:23:33 +08:00
TsMask
f76311cf1b chore: 编译文件引用缺失 2025-04-25 17:31:25 +08:00
TsMask
19eea9fe9b feat: UDMVolte用户特殊VoIP数据 2025-04-25 17:23:38 +08:00
TsMask
df73440d86 style: 补充多语言翻译 2025-04-25 16:22:38 +08:00
TsMask
032d0578bb fix: 调度任务参数最大输入2000字符。日志查看id错误修复 2025-04-25 16:18:40 +08:00
TsMask
204d198819 ref: 统一ftp操作功能,备份文件查看下载删除功能 2025-04-25 16:16:09 +08:00
TsMask
71b4943816 style: neFile目录移动到ne 2025-04-25 16:14:23 +08:00
TsMask
f76602d66e feat: 终端目录部分调整,添加udm-voip/volte功能页面 2025-04-24 09:58:34 +08:00
TsMask
352f7082f2 feat: 修改OAM配置中的同步功能为重启功能 2025-04-21 10:56:09 +08:00
TsMask
35f2950143 chore: 更新版本号 2.250418 2025-04-18 19:20:58 +08:00
TsMask
0b6e8e6fbe feat: 添加告警信息导出功能,并优化历史告警页面 2025-04-18 19:20:10 +08:00
TsMask
e10740220c fix: 统一国际时区格式 2025-04-18 19:19:53 +08:00
TsMask
f7ea8e13ec feat: 更新锁屏密码Basd64编码处理,无密码直接进入 2025-04-18 16:05:59 +08:00
TsMask
294212620e feat: PCAP文件解析功能页面优化 2025-04-18 15:51:24 +08:00
TsMask
48f8f13bf3 fix: 移除信令接口查询 2025-04-18 15:47:04 +08:00
TsMask
35ce214bc4 feat: 支持ws工具心跳ping消息 2025-04-18 15:39:55 +08:00
TsMask
b92c871b3b perf: 重构信令跟踪功能 2025-04-18 15:38:57 +08:00
TsMask
83808a4f88 ref: 重构网元跟踪任务功能页面 2025-04-18 15:38:21 +08:00
TsMask
59127104a6 fix: 看板用户数初始neId传入失败,禁止选择当前项 2025-04-11 18:00:06 +08:00
TsMask
fc233c38ea feat: 添加网元配置文件备份的FTP配置管理功能 2025-04-10 21:07:29 +08:00
TsMask
4dda60c8c4 fix: mml补充UDM特殊命令处理 2025-04-10 21:01:35 +08:00
TsMask
c926da4f2e feat: UE添加导入模板下载功能 2025-04-10 21:00:17 +08:00
TsMask
5b6520ef5e fix: 网元授权上传后点击ok检查状态 2025-04-10 20:34:15 +08:00
TsMask
7973b179af feat: 添加密码过期功能支持,密码有效期时间天 2025-04-01 17:34:27 +08:00
TsMask
e10a6b5202 chore: 更新版本号 2.250321 2025-03-31 19:01:50 +08:00
TsMask
2c31da625d feat: 添加强制密码修改功能的国际化支持 2025-03-31 19:01:16 +08:00
TsMask
45771aba1e fix: 在密码重置成功后添加用户登出功能 2025-03-31 19:00:48 +08:00
TsMask
d037a76856 feat: 添加强制密码重置功能及相关组件 2025-03-31 19:00:34 +08:00
TsMask
c72f0290fd fix: 使用常量替代验证码成功返回码,并添加验证码文本处理 2025-03-31 19:00:04 +08:00
TsMask
6093a234cc fix: 修正解锁成功提示中的拼写错误 2025-03-31 18:59:47 +08:00
TsMask
e4234dd1f4 fix: 终端redis连接后默认发送PING确认是否连接 2025-03-27 15:57:37 +08:00
TsMask
cfc56ca4ea fix: 密码校验格式由后端处理 2025-03-27 15:54:51 +08:00
TsMask
0ff899b40b fix: 配置文件config.js变更 2025-03-26 16:32:46 +08:00
TsMask
d8778d2632 fix: KPI总览无数据时展示title 2025-03-26 16:32:34 +08:00
TsMask
1514e65df4 fix: KPI总览调整指标 2025-03-26 16:32:26 +08:00
TsMask
38ea54f41a fix: 看板用户数切换展示 2025-03-26 16:32:10 +08:00
TsMask
2ddf169f97 chore: 更新版本号 2.250321 2025-03-21 18:02:49 +08:00
TsMask
8d4d729e25 fix: 禁止admin修改菜单分配 2025-03-21 17:10:39 +08:00
TsMask
6905d29ea4 feat: 看板UPF流量总计7or30天 2025-03-21 15:13:41 +08:00
TsMask
eea53fdf2a fix: 自定义指标只有UPF显示sum列其他网元隐藏 2025-03-21 15:08:33 +08:00
TsMask
9bef7a8b3c fix: 禁止admin修改菜单分配 2025-03-21 15:06:55 +08:00
TsMask
c084203a03 feat: 系统配置返回服务版本适用版本适配 2025-03-19 18:00:35 +08:00
TsMask
0fd9ef7e48 fix: pcap分析Protocol列换行问题 2025-03-19 17:59:46 +08:00
TsMask
775dacc4a8 chore: 更新依赖版本 2025-03-18 14:15:21 +08:00
TsMask
dfa1a580d0 fix: 调整默认背景图片为静态目录 2025-03-18 10:14:49 +08:00
TsMask
d3cbf2b748 fix: 默认本地配置判断baseUrl支持https 2025-03-14 16:39:27 +08:00
TsMask
95fc2086e6 chore: 更新版本号 2.250314 2025-03-14 11:32:12 +08:00
TsMask
98a4c554e5 fix: 当前用户禁止删除/重置密码 2025-03-13 16:55:12 +08:00
TsMask
3fcf79fe13 fix: 角色分配给用户列表属性错误 2025-03-13 16:54:21 +08:00
TsMask
0e238be98a fix: 网元概览找状态在线的选中 2025-03-13 11:47:18 +08:00
TsMask
95b2ec0f5e style: 自定义指标多语言描述中文屏蔽 2025-03-13 11:46:40 +08:00
TsMask
b740f6b5fd style: 表格时间字段宽度width200px 2025-03-13 11:05:47 +08:00
TsMask
2678ab3bfb feat: PCAP历史目录下载为zip 2025-03-13 11:05:05 +08:00
TsMask
fec1ee0f68 fix: 编译类型错误 2025-03-11 15:50:48 +08:00
TsMask
e9f58a491b chore: 更新版本号 2.250308 2025-03-08 10:44:16 +08:00
TsMask
4982109af3 style: 优化PacketTable组件的滚动条样式和布局 2025-03-08 10:36:42 +08:00
TsMask
d42e6356f3 fix: UDM用户数据操作限制输入框最大值500 2025-03-05 19:40:42 +08:00
TsMask
b21cbb14d7 fix: 根据网元列表得到网元类型 2025-03-05 15:24:33 +08:00
TsMask
dd9656fa72 fix: 活动告警添加清除操作 2025-03-05 14:58:47 +08:00
TsMask
f36980efb9 fix: 修正告警标题翻译错误 2025-03-05 11:15:57 +08:00
TsMask
db0b6a1199 feat: 添加软件包文件未发现提示信息 2025-03-05 11:11:50 +08:00
TsMask
d677963810 fix: 网元软件版本安装参数错误 2025-03-04 18:14:20 +08:00
TsMask
2812cefd13 fix: 看板UPF切换问题 2025-03-04 17:01:33 +08:00
TsMask
8f0058bedc fix: 看板标识错误smfUeNum 2025-03-04 16:04:22 +08:00
TsMask
46b3744330 feat: 看板权限控制部分显示 2025-03-03 18:23:56 +08:00
TsMask
c937351194 feat: 菜单权限按钮添加菜单状态选择 2025-03-03 18:23:05 +08:00
TsMask
c38b956326 chore: 更新版本号 2.250228 2025-02-28 20:27:31 +08:00
TsMask
6d2945c506 fix: 修正获取最大ID的逻辑并调整表格列宽 2025-02-28 19:44:54 +08:00
TsMask
33088a9366 feat: 更新数据获取逻辑并添加数据使用情况展示 2025-02-28 19:44:47 +08:00
TsMask
4861230f56 fix: 网元许可调整表格列宽和图标样式 2025-02-28 19:44:33 +08:00
TsMask
f5f67b5023 refactor: 注释掉不必要的内存和CPU使用率计算逻辑 2025-02-28 19:43:54 +08:00
TsMask
62bb7462d1 feat: 添加带时区的时间格式支持 2025-02-28 19:43:44 +08:00
TsMask
fb5068a772 fix: 修正多个组件中获取最大ID的逻辑 2025-02-28 19:43:38 +08:00
TsMask
1162bb5b28 refactor: 移除未使用的主机信息查询逻辑 2025-02-28 19:42:36 +08:00
TsMask
1e2824657c refactor: 优化告警相关API去除SQL查询 2025-02-28 15:56:18 +08:00
TsMask
7ccaf6df65 fix: smsc查询时间默认最近一小时 2025-02-27 21:09:47 +08:00
TsMask
77328e61c9 fix: 网元参数配置使用单网元模式 2025-02-27 21:09:07 +08:00
TsMask
d83cbd3806 fix: editId类型调整 2025-02-27 21:08:13 +08:00
TsMask
157a7a60d3 fix: 告警关闭非必要的操作 2025-02-27 15:41:03 +08:00
TsMask
365fab3965 style: 告警前传日志单行超出省略显示 2025-02-27 15:34:51 +08:00
TsMask
1517cb685c fix: UPF上下行总计查询beginTimes时间类型错误 2025-02-27 15:33:56 +08:00
TsMask
88a2167bed fix: 总览数值累加/基站跳转页面修改 2025-02-27 15:33:08 +08:00
TsMask
82d328e974 fix: CDR/UE数据空关闭loading 2025-02-27 15:31:58 +08:00
TsMask
6b81ea000b style: 关闭任务名称/菜单名称查询 2025-02-27 15:29:48 +08:00
TsMask
d88a3e7e25 fix: 系统设置更换主页页面选择死循环问题 2025-02-26 17:48:42 +08:00
TsMask
dd54b10f4d fix: 告警关闭非必要的操作 2025-02-26 17:25:59 +08:00
TsMask
15ebd48283 fix: id类型错误 2025-02-26 17:25:17 +08:00
TsMask
8e4df6a85f fix: 上传接口变更 2025-02-26 14:32:30 +08:00
TsMask
1aca8ae486 fix: 网元软件id类型错误 2025-02-26 11:16:49 +08:00
TsMask
5a61fc355e fix: 上传接口变更 2025-02-26 11:12:06 +08:00
TsMask
7429a55734 fix: hostId 变更类型和字段名 2025-02-26 09:51:34 +08:00
TsMask
cdc31a9ced fix: 兼容3G的SGWC字段 2025-02-21 15:48:55 +08:00
TsMask
257896a10e fix: 编译类型修复 2025-02-20 11:30:51 +08:00
TsMask
485fa89833 fix: 页面字段/接口调整 2025-02-20 10:47:23 +08:00
TsMask
814bae0b94 fix: 多语言字段变更优化字典映射类型 2025-02-20 10:44:55 +08:00
TsMask
7322759545 fix: 接口变更/请求方法为大写 2025-02-20 10:42:34 +08:00
319 changed files with 31456 additions and 12014 deletions

View File

@@ -11,7 +11,7 @@ VITE_APP_NAME = "Core Network OMC"
VITE_APP_CODE = "OMC"
# 应用版本
VITE_APP_VERSION = "2.250208"
VITE_APP_VERSION = "local-dev"
# 接口基础URL地址-不带/后缀
VITE_API_BASE_URL = "/omc-api"

View File

@@ -11,7 +11,7 @@ VITE_APP_NAME = "Core Network OMC"
VITE_APP_CODE = "OMC"
# 应用版本
VITE_APP_VERSION = "2.250208"
VITE_APP_VERSION = "local-prod"
# 接口基础URL地址-不带/后缀
VITE_API_BASE_URL = "/omc-api"

View File

@@ -1,5 +1,211 @@
# 版本发布日志
## 2.2510.4-20251024
- 新增 同步语音仪表盘修改useNeInfoStore导入地址、补充接口导入、修改ims请求参数、修改响应码
- 新增 基站状态补充randId列
## 2.2510.3-20251018
- 新增 备份网元日志文件数据查看
- 修复 更新根网管节点处理逻辑支持无OMC情况
- 新增 网元配置选择传入neId查询相应版本配置数据
- 修复 网元配置备份修改表单校验规则,添加备注字段必填项
## 2.2510.2-20251011
- 新增 UDM-auth数据导出按钮权限定义
- 新增 SMSC-CDR添加结果原因说明
- 优化 移除CDR/UE/网元版本/授权列表显示ID列
- 修复 MML回车undefined问题关闭搜索匹配
## 2.2509.4-20250926
- 优化 UDM数据显示创建时间列
- 优化 中英文补充
- 新增 添加系统备份功能包括导入导出OMC的API和界面支持
- 新增 日志备份文件查看kpi文件记录
- 优化 根据搜索条件导出,去除最大记录限制
- 新增 添加活动告警自动刷新功能并优化代码结构
- 修复 奇安信浏览器时区格式错误
- 新增 添加网元配置快速PLMN修改框
- 新增 ue和ne模块权限按钮
- 新增 监控模块按钮权限
- 修复 UDM数据导出提示信息导出总数
- 新增 网元许可快速上传功能
- 新增 网元信息快速OAM功能
## 2.2508.4-20250829
- 新增 网元授权显示用户数/基站数
- 优化 网元当前版本显示是否有包存在
- 优化 cdr/ue导出操作后锁定按钮事件防重发
- 优化 网元可选静态可选项添加PGWC
- 优化 参数配置添加校验过滤长度~和-定义范围
- 修复 UPF流量统计数据同时获取刷新
- 修复 UPF流量统计字节数据格式化显示不一致问题
- 新增 指标Title管理页面功能
- 新增 增加多个导出操作的超时时间至180秒
## 2.2508.2-20250815
- 优化 给config.js加随机数避免缓存
- 新增 第三方登录认证功能和管理页,第三方用户不可删除和修改密码
- 优化 系统操作日志详情json格式化显示
- 优化 网元信息更新禁止修改neType neId
- 修复 用户数累加问题修复,液体图中浮标显示错误修复
- 修复 基站数修复以及资源模块下拉框修复
- 修复 告警事件时间显示不是时间格式字符串
- 修复 透明柱状图自适应,数值标签定位
- 修复 告警数据参数调整
## 2.2508.1-20250808
- 修复 UDM鉴权更新ki长度提示错误无法发送请求
- 优化 MML命令为空判断不发送MML日志列表显示
- 优化 关闭网元reload操作只有amf smf upf udm四个网元支持改用mml发送
- 优化 网元概览隐藏容量字段显示CBC创建时间格式显示错误
- 优化 系统用户账号简单4位长度
- 修复 看板2用户数量显示不出修改广播帮助的数量提示
- 优化 性能栏目相关页面主动呼叫改正在通话,网元切换清除缓存数据
## 2.2507.4-20250801
- 新增 cbc界面
- 修复 数据处理修复,显示优化
- 修复 告警模块优化,底部边距,数据采集说明
## 2.2507.3-20250725
- 优化 将UDM鉴权导出按钮隐藏
- 修复 自定义指标数值格式处理,导出表格修复
- 修复 仪表盘2用户事件显示不正常
- 修复 自定义指标数值格式化保留3位小数
- 优化 参数配置AMF导入Index字段存在更新不存在默认新增
## 2.2507.2-20250718
- 优化 变更nssf/n3iwf接口调用
- 优化 调整告警类型参数值,参数配置列表项不记录勾选状态
- 优化 调整UE数据返回参数
- 修复 基站状态拓扑图显示失败
- 修复 基站状态记录和smscCDR导出改为get行为
- 新增 mt版本移动过来的的告警/仪表/性能大屏页面
- 移除 删除无用文件
- 修复 指标页面数据获取异常接口调整
## 2.2507.1-20250705
- 修复 缓存管理列表key查询URL路径错误
- 优化 SMF-Date显示图表日期显示不完整改日期格式
- 修复 跟踪任务编号的传入获取信息不一致
- 修复 参数配置可见visible属性判断
## 2.2506.4-20250627
- 修复 UDM-IMS数据批量新增/批量删除命令调整
- 优化 AMF/MME对应的IMEI白名单模板去除index
## 2.2506.3-20250620
- 新增 UDM签约cnType新增可选1仅5G/2仅4G
- 新增 给AMF/MME对应的IMEI白名单添加批量导入和批量删除功能
- 新增 UDM voup/ims导入失败文件下载
## 2.2506.2-20250613
- 修复 数值控件属性maxlength拼写错误
- 修复 空格内容无法编辑,提示信息显示方向
- 优化 抓包文件目录列表显示文件大小
## 2.2506.1-20250607
- 优化 请求响应码常量,身份信息更换逻辑优化
- 修复 更新tcpdump路径从/tmp到/usr/local以符合新目录结构
## 2.2505.4-20250530
- 优化 网元参数配置修改tooltip位置为bottomLeft防止遮挡
- 修复 服务器时间格式化指定时区
- 优化 网元授权状态更新容量和更新时间局部变化
- 修复 网元信令跟踪支持选择轻量版UPF
- 修复 看板数据加载间隔从5秒调整为10秒
- 修复 看板UDM选择添加下拉菜单的弹出容器属性
## 2.2505.3-20250523
- 修复 修复同步操作加载提示未隐藏的问题
- 修复 告警确认相关提示Tip多语言显示
- 修复 网元授权许可证状态统一刷新功能
- 修复 活动告警启用历史同步按钮
- 修复 更新批量刷新信息容量仅UDM/AMF/MME
- 修复 仪表盘数据会话属累加
- 修复 网元主机信息编辑表单不验证免密类型, 主机列表的查询类型参数
## 2.2505.2-20250516
- 修复 编译类型检查错误
- 新增 网元授权上传变更确认延迟2s刷新授权状态
- 修复 英文修改基站名称为 RAN Node Name
- 新增 根据网元类型过滤导出备份数据可选的数据来源
- 新增 跟踪任务添加标题,编号后面加任务详情
## 2.2505.1-20250509
- 新增 更新日志文件导出列表,添加系统登录和操作日志
- 新增 网元授权添加用户容量列
- 修复 OAM读取结构错误
- 修复 仪表盘用户数据刷新时显示0闪烁
- 新增 看板含有网元显示区域
- 新增 根据网元显示特有菜单
- 修复 移除网络错误时的退出登录状态处理逻辑
## 2.2504.4-20250430
- 新增 PCF用户策略页面多语言翻译
- 新增 在上传切片文件到网元端时添加删除临时文件选项
- 修复 优化PCF用户策略页面及接口调整
- 修复 时间控件格式移除插件属性value-format="x"
- 新增 服务器时区UTC格式转换
- 新增 添加网络错误处理,退出登录状态
- 修复 替换获取服务器时间接口
- 移除 移除部分旧/apt/rest/直连接口
- 新增 网元服务操作局部状态刷新,补充提示信息
- 修复 时间格式常量定义及默认格式
- 新增 添加IMS SIP响应码原因显示
- 修复 看板流量图确保时间以HH:mm:ss格式显示
- 修复 看板用户活动乱序问题
- 修复 修复引导获取token存储问题
## 2.2503.4-20250331
- 更新 依赖项版本
- 修复 去除请求方法PATCH
- 重构 重构令牌管理逻辑,,统一状态码识别
- 更新 编译文件引用缺失
- 新增 UDMVolte用户特殊VoIP数据
- 优化 补充多语言翻译
- 修复 调度任务参数最大输入2000字符。日志查看id错误修复
- 重构 统一ftp操作功能备份文件查看下载删除功能
- 优化 neFile目录移动到ne
- 新增 终端目录部分调整添加udm-voip/volte功能页面
- 新增 修改OAM配置中的同步功能为重启功能
- 新增 添加告警信息导出功能,并优化历史告警页面
- 修复 统一国际时区格式
- 新增 更新锁屏密码Basd64编码处理无密码直接进入
- 新增 PCAP文件解析功能页面优化
- 修复 移除信令接口查询
- 新增 支持ws工具心跳ping消息
- 重构 重构信令跟踪功能
- 重构 重构网元跟踪任务功能页面
- 修复 看板用户数初始neId传入失败禁止选择当前项
- 新增 添加网元配置文件备份的FTP配置管理功能
- 修复 mml补充UDM特殊命令处理
- 新增 UE添加导入模板下载功能
- 修复 网元授权上传后点击ok检查状态
- 新增 添加密码过期功能支持,密码有效期时间天
## 2.2404.1-20240402
- 新增 网元安装流程相关页面与操作相关接口联调

View File

@@ -2,14 +2,18 @@
<html lang="zh-CN">
<head>
<meta charset="UTF-8" />
<meta name="google" content="notranslate">
<meta name="google" content="notranslate" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>loading...</title>
<link rel="icon" href="/favicon.ico" />
<link rel="preload" href="/loading.js" as="script">
<link rel="preload" href="/loading.js" as="script" />
<script async src="/loading.js"></script>
<link rel="preload" href="/config.js" as="script">
<script async src="/config.js"></script>
<script>
var script = document.createElement('script');
script.src = '/config.js?nocache=' + new Date().getTime();
script.async = true;
document.head.appendChild(script);
</script>
</head>
<body>
<div id="app"></div>

View File

@@ -12,50 +12,51 @@
"preview": "vite preview"
},
"dependencies": {
"@ant-design/icons-vue": "^7.0.1",
"@antv/g6": "4.8.24",
"@codemirror/lang-javascript": "^6.2.2",
"@codemirror/lang-yaml": "^6.1.2",
"@codemirror/merge": "^6.8.0",
"@codemirror/theme-one-dark": "^6.1.2",
"@tato30/vue-pdf": "^1.11.3",
"@vueuse/core": "^12.5.0",
"@xterm/addon-fit": "^0.10.0",
"@xterm/xterm": "^5.5.0",
"ant-design-vue": "^4.2.6",
"antdv-pro-layout": "^4.2.0",
"antdv-pro-modal": "^4.0.6",
"codemirror": "^6.0.1",
"crypto-js": "^4.2.0",
"dayjs": "^1.11.11",
"echarts": "~5.6.0",
"file-saver": "^2.0.5",
"grid-layout-plus": "^1.0.6",
"intl-tel-input": "~25.2.0",
"@ant-design/icons-vue": "7.0.1",
"@antv/g6": "4.8.25",
"@codemirror/lang-javascript": "6.2.3",
"@codemirror/lang-yaml": "6.1.2",
"@codemirror/merge": "6.10.0",
"@codemirror/theme-one-dark": "6.1.2",
"@tato30/vue-pdf": "1.11.3",
"@vueuse/core": "13.0.0",
"@xterm/addon-fit": "0.10.0",
"@xterm/xterm": "5.5.0",
"ant-design-vue": "4.2.6",
"antdv-pro-layout": "4.2.0",
"antdv-pro-modal": "4.0.8",
"codemirror": "6.0.1",
"crypto-js": "4.2.0",
"dayjs": "1.11.13",
"echarts": "5.6.0",
"echarts-liquidfill": "^3.1.0",
"file-saver": "2.0.5",
"grid-layout-plus": "1.0.6",
"intl-tel-input": "25.2.0",
"js-base64": "^3.7.7",
"js-cookie": "^3.0.5",
"localforage": "^1.10.0",
"nprogress": "^0.2.0",
"p-queue": "~8.0.1",
"pinia": "^2.3.0",
"vue": "^3.5.13",
"vue-i18n": "^11.1.0",
"vue-router": "^4.5.0",
"vue3-smooth-dnd": "^0.0.6",
"xlsx": "~0.18.5"
"p-queue": "8.0.1",
"pinia": "2.3.0",
"vue": "3.5.13",
"vue-i18n": "11.1.2",
"vue-router": "4.5.0",
"vue3-smooth-dnd": "0.0.6",
"xlsx": "0.18.5"
},
"devDependencies": {
"@types/crypto-js": "^4.2.2",
"@types/file-saver": "^2.0.7",
"@types/js-cookie": "^3.0.6",
"@types/crypto-js": "4.2.2",
"@types/file-saver": "2.0.7",
"@types/js-cookie": "3.0.6",
"@types/node": "^18.0.0",
"@types/nprogress": "^0.2.3",
"@vitejs/plugin-vue": "^5.2.1",
"less": "^4.2.1",
"typescript": "~5.6.3",
"unplugin-vue-components": "^0.28.0",
"vite": "^6.1.0",
"vite-plugin-compression": "~0.5.1",
"vue-tsc": "^2.2.0"
"@types/nprogress": "0.2.3",
"@vitejs/plugin-vue": "5.2.3",
"less": "4.2.2",
"typescript": "5.8.2",
"unplugin-vue-components": "0.28.0",
"vite": "6.3.3",
"vite-plugin-compression": "0.5.1",
"vue-tsc": "2.2.8"
}
}

View File

Before

Width:  |  Height:  |  Size: 226 KiB

After

Width:  |  Height:  |  Size: 226 KiB

View File

Before

Width:  |  Height:  |  Size: 70 KiB

After

Width:  |  Height:  |  Size: 70 KiB

View File

@@ -10,12 +10,19 @@
*
*/
(function () {
// host = ip:port
// const host = '192.168.8.100:33030';
const host = `${window.location.hostname}:33030`;
// baseUrl = protocol://ip:port
// baseUrl = 'http://192.168.8.100:33030';
const protocol = window.location.protocol
let wsprotocol = "ws:"
const hostname = window.location.hostname
let host = `${hostname}:33030`;
if (protocol === 'https:') {
host = `${hostname}:33443`;
wsprotocol = "wss:"
}
// Service Address
sessionStorage.setItem('baseUrl', `http://${host}`);
sessionStorage.setItem('baseUrl', `${protocol}//${host}`);
// websocket Address
sessionStorage.setItem('wsUrl', `ws://${host}`);
})();
sessionStorage.setItem('wsUrl', `${wsprotocol}//${host}`);
})();

Binary file not shown.

View File

@@ -0,0 +1,2 @@
#imsi,msisdn,sess_rules,pcc_rules,hdr_enrich,rfsp,sar,qos_audio,qos_video,online,offline
460996650000580,62357000580,internet|ims_sig,internet|ims_sig,dnn,1,def_sar,qos_audio,qos_video,0,0

View File

@@ -0,0 +1,2 @@
460996650000580,1234567890ABCDEF1234567890ABCDEF,0,8000
460996650000581,1234567890ABCDEF1234567890ABCDEF,0,8000

View File

@@ -0,0 +1,2 @@
460996650000580,62357000580,def_ambr,def_nssai,def_arfb,def_sar,0,3,def_snssai,1-000001&content&ims,1,64,24,65,def_eps,1,010200000000,-
460996650000581,62357000581,def_ambr,def_nssai,def_arfb,def_sar,0,3,def_snssai,1-000001&content&ims,1,64,24,65,def_eps,1,010200000000,-

View File

@@ -0,0 +1,3 @@
#username,password
62357000580,123456
62357000581,123456

View File

@@ -0,0 +1,4 @@
#vlote=0 MSISDN and IMSI need to be filled in the same way.
#imsi,msisdn,vlote,vni
460996650000580,62357000580,1,ims.mnc000.mcc460.3gppnetwork.org
62357000581,62357000581,0,ims.mnc000.mcc460.3gppnetwork.org

View File

@@ -5,13 +5,11 @@ import zhCN from 'ant-design-vue/es/locale/zh_CN';
import enUS from 'ant-design-vue/es/locale/en_US';
import { usePrefersColorScheme, viewTransitionTheme } from 'antdv-pro-layout';
import dayjs from 'dayjs';
import advancedFormat from 'dayjs/plugin/advancedFormat';
import useLayoutStore from '@/store/modules/layout';
import useAppStore from '@/store/modules/app';
import useI18n from '@/hooks/useI18n';
const { t, currentLocale } = useI18n();
const { themeConfig, initPrimaryColor, changeConf } = useLayoutStore();
dayjs.extend(advancedFormat);
// dayjs.locale('zh-cn'); // 默认中文
let locale = ref(enUS); // 国际化初始中文

156
src/api/auth.ts Normal file
View File

@@ -0,0 +1,156 @@
import { request } from '@/plugins/http-fetch';
import { sessionGet } from '@/utils/cache-session-utils';
/**
* 登录方法
* @param data 数据
* @returns 结果
*/
export function login(data: Record<string, string>) {
return request({
url: '/auth/login',
method: 'POST',
data: data,
whithToken: false,
});
}
/**
* 退出方法
* @returns object
*/
export function logout() {
return request({
url: '/auth/logout',
method: 'POST',
repeatSubmit: false,
});
}
/**
* 注册方法
* @param data 注册对象
* @returns object
*/
export function register(data: Record<string, any>) {
return request({
url: '/auth/register',
method: 'POST',
data: data,
whithToken: false,
});
}
/**
* 刷新登录令牌
* @param data 数据
* @returns 结果
*/
export function refreshToken(refreshToken: string) {
return request({
url: '/auth/refresh-token',
method: 'POST',
data: { refreshToken },
whithToken: false,
});
}
/**
* 获取用户详细信息
* @returns object
*/
export function getInfo() {
return request({
url: '/me',
method: 'GET',
});
}
/**
* 获取路由
* @returns object
*/
export const getRouter = () => {
return request({
url: '/router',
method: 'GET',
});
};
/**
* 获取验证码
* @returns object
*/
export function getCaptchaImage() {
return request({
url: '/captcha-image',
method: 'GET',
whithToken: false,
});
}
/**
* 登录认证源
* @returns object
*/
export function getLoginSource() {
return request({
url: '/auth/login/source',
method: 'GET',
whithToken: false,
});
}
/**
* LDAP登录
* @returns object
*/
export function loginLDAP(data: Record<string, string>) {
return request({
url: '/auth/login/ldap',
method: 'POST',
data: data,
whithToken: false,
});
}
/**
* SMTP登录
* @returns object
*/
export function loginSMTP(data: Record<string, string>) {
return request({
url: '/auth/login/smtp',
method: 'POST',
data: data,
whithToken: false,
});
}
/**
* 登录认证源OAuth2跳转登录URL
* @returns object
*/
export function loginOAuth2URL(state: string): string {
// 兼容旧前端可改配置文件
const baseUrl = import.meta.env.PROD
? sessionGet('baseUrl') || import.meta.env.VITE_API_BASE_URL
: import.meta.env.VITE_API_BASE_URL;
return `${baseUrl}/auth/login/oauth2/authorize?state=${state}`;
}
/**
* 登录认证源OAuth2认证登录
* @returns object
*/
export function loginOAuth2Token(code: string, state: string) {
return request({
url: '/auth/login/oauth2/token',
method: 'POST',
data: {
code,
state,
},
whithToken: false,
});
}

75
src/api/cbc/cbe.ts Normal file
View File

@@ -0,0 +1,75 @@
import { request } from '@/plugins/http-fetch';
/**
* CBC列表
* @param query 查询参数
* @returns object
*/
export function listCBC(query: Record<string, any>) {
return request({
url: `/neData/cbc/message/list`,
method: 'GET',
params: query,
timeout: 30_000,
});
}
/**
* CBC签约用户新增
* @param data 签约对象
* @returns object
*/
export function addCBC(data: Record<string, any>) {
return request({
url: `/neData/cbc/message?neId=${data.neId}`,
method: 'POST',
data: data,
timeout: 180_000,
});
}
export function updateCBCStatus(data:any) {
return request({
url: `/neData/cbc/message/${data.id}/${data.status}?neId=${data.neId}`,
method: 'PUT',
timeout: 180_000,
});
}
export function updateCBC(data:any) {
return request({
url: `/neData/cbc/message/${data.id}?neId=${data.neId}`,
method: 'PUT',
data,
timeout: 180_000,
});
}
/**
* CBC删除
* @param data 签约对象
* @returns object
*/
export function delCBC(neId: string, id: string) {
return request({
url: `/neData/cbc/message/${id}?neId=${neId}`,
method: 'DELETE',
timeout: 180_000,
});
}

View File

@@ -1,95 +0,0 @@
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
import { request } from '@/plugins/http-fetch';
import { parseObjLineToHump } from '@/utils/parse-utils';
/**
* 查询备份列表
* @param query 查询参数
* @returns object
*/
export async function listNeBackup(query: Record<string, any>) {
let totalSQL = 'select count(id) as total from ne_backup ';
let rowsSQL = ' select * from ne_backup ';
// 查询
let querySQL = 'where 1=1';
if (query.neType) {
querySQL += ` and ne_type like '%${query.neType}%' `;
}
// 分页
const pageNum = (query.pageNum - 1) * query.pageSize;
const limtSql = ` order by create_time desc limit ${pageNum},${query.pageSize} `;
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/ne_backup`,
method: 'get',
params: {
totalSQL: totalSQL + querySQL,
rowsSQL: rowsSQL + querySQL + limtSql,
},
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS) {
const data: DataList = {
total: 0,
rows: [],
code: result.code,
msg: result.msg,
};
result.data.data.forEach((item: any) => {
const itemData = item['ne_backup'];
if (Array.isArray(itemData)) {
if (itemData.length === 1 && itemData[0]['total'] >= 0) {
data.total = itemData[0]['total'];
} else {
data.rows = itemData.map(v => parseObjLineToHump(v));
}
}
});
return data;
}
return result;
}
/**
* 删除备份信息
* @param noticeId 网元ID
* @returns object
*/
export async function delNeBackup(data: Record<string, any>) {
return request({
url: `/api/rest/systemManagement/v1/${data.neType}/neBackup/${data.fileName}`,
method: 'delete',
});
}
/**
* 获取备份信息文件
* @param menuId 网元ID
* @returns object
*/
export async function downloadNeBackup(data: Record<string, any>) {
return await request({
url: `/api/rest/systemManagement/v1/${data.neType}/neBackup/${data.fileName}`,
method: 'get',
responseType: 'blob',
timeout: 180_000,
});
}
/**
* 修改备份说明
* @param menuId 网元ID
* @returns object
*/
export async function updateBackInfo(data:Record<string,any>){
return request({
url: `/api/rest/databaseManagement/v1/omc_db/ne_backup?WHERE=id=${data.id}`,
method: 'put',
data: { data: { comment: data.backupInfo } },
});
}

View File

@@ -1,85 +0,0 @@
import {
RESULT_CODE_ERROR,
RESULT_CODE_SUCCESS,
RESULT_MSG_ERROR,
} from '@/constants/result-constants';
import { language, request } from '@/plugins/http-fetch';
/**
* 更新网元配置重新载入
* @param neType 网元类型
* @param neId 网元ID
* @returns
*/
export async function updateNeConfigReload(neType: string, neId: string) {
// 发起请求
const result = await request({
url: `/api/rest/operationManagement/v1/elementType/${neType}/objectType/mml?ne_id=${neId}`,
method: 'post',
data: { mml: ['reload'] },
timeout: 180_000,
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS && Array.isArray(result.data.data)) {
const v = result.data.data[0];
const str = v.toLowerCase();
if (str.indexOf('ok') !== -1) {
delete result.data;
} else if (str.indexOf('success') !== -1) {
delete result.data;
} else {
return { code: RESULT_CODE_ERROR, msg: RESULT_MSG_ERROR[language] };
}
}
return result;
}
/**
* 从参数配置PCF中获取对应信息提供给PCC用户策略输入框
* @param neId
* @returns object {pccRules,sessionRules,qosTemplate,headerEnrichTemplate,serviceAreaRestriction}
*/
export async function getPCCRule(neId: any) {
const paramNameArr = [
'pccRules',
'sessionRules',
'qosTemplate',
'headerEnrichTemplate',
'serviceAreaRestriction',
];
const reqArr = [];
for (const paramName of paramNameArr) {
reqArr.push(
request({
url: `/ne/config/data`,
params: { neType: 'PCF', neId, paramName },
method: 'get',
})
);
}
return await Promise.allSettled(reqArr).then(resArr => {
// 规则数据
const obj: any = {};
resArr.forEach((item, i: number) => {
if (item.status === 'fulfilled') {
const res = item.value;
if (res.code === RESULT_CODE_SUCCESS && Array.isArray(res.data)) {
const key = paramNameArr[i];
obj[key] = res.data.map((item: any) => {
if ('qosTemplate' === key) {
return { value: item.qosId, label: item.qosId };
}
if ('headerEnrichTemplate' === key) {
return { value: item.templateName, label: item.templateName };
}
if ('serviceAreaRestriction' === key) {
return { value: item.name, label: item.name };
}
return { value: item.ruleId, label: item.ruleId };
});
}
}
});
return obj;
});
}

View File

@@ -1,242 +0,0 @@
import {
RESULT_CODE_ERROR,
RESULT_CODE_SUCCESS,
RESULT_MSG_ERROR,
} from '@/constants/result-constants';
import { language, request } from '@/plugins/http-fetch';
import { parseObjLineToHump } from '@/utils/parse-utils';
import { NE_TYPE_LIST } from '@/constants/ne-constants';
/**
* 查询网元列表
* @param query 查询参数
* @returns object
*/
export async function listNeInfo(query: Record<string, any>) {
let totalSQL = 'select count(*) as total from ne_info where 1=1 ';
let rowsSQL = 'select * from ne_info where 1=1 ';
// 查询
let querySQL = '';
if (query.neType) {
querySQL += ` and ne_type = '${query.neType}' `;
}
// 分页
const pageNum = (query.pageNum - 1) * query.pageSize;
const limtSql = ` limit ${pageNum},${query.pageSize} `;
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/ne_info`,
method: 'get',
params: {
totalSQL: totalSQL + querySQL,
rowsSQL: rowsSQL + querySQL + limtSql,
},
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS) {
const data: DataList = {
total: 0,
rows: [],
code: result.code,
msg: result.msg,
};
result.data.data.forEach((item: any) => {
const itemData = item['ne_info'];
if (Array.isArray(itemData)) {
if (itemData.length === 1 && itemData[0]['total'] >= 0) {
data.total = itemData[0]['total'];
} else {
data.rows = itemData.map(v => parseObjLineToHump(v));
//通过sort进行冒泡排序
data.rows.sort((a: any, b: any) => {
const typeA = NE_TYPE_LIST.indexOf(a.neType);
const typeB = NE_TYPE_LIST.indexOf(b.neType);
if (typeA === -1) return 1; // 如果不在特定顺序中,排到后面
if (typeB === -1) return -1; // 如果不在特定顺序中,排到后面
return typeA - typeB;
});
}
}
});
return data;
}
return result;
}
/**
* 查询网元详细
* @param menuId 网元ID
* @returns object
*/
export async function getNeInfo(id: string | number) {
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/ne_info`,
method: 'get',
params: {
SQL: `select * from ne_info where id = ${id}`,
},
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS && Array.isArray(result.data.data)) {
let neInfo = result.data.data[0]['ne_info'];
if (neInfo) {
return Object.assign(result, {
data: parseObjLineToHump(neInfo[0]),
});
}
return { code: RESULT_CODE_ERROR, msg: RESULT_MSG_ERROR[language] };
}
return result;
}
/**
* 新增网元
* @param data 网元对象
* @returns object
*/
export function addNeInfo(data: Record<string, any>) {
data.port = `${data.port}`;
return request({
url: `/api/rest/systemManagement/v1/elementType/${data.neType.toLowerCase()}/objectType/neInfo?sync2ne=${
data.sync
}`,
method: 'post',
data: data,
});
}
/**
* 修改网元
* @param data 网元对象
* @returns object
*/
export function updateNeInfo(data: Record<string, any>) {
data.port = `${data.port}`;
return request({
url: `/api/rest/systemManagement/v1/elementType/${data.neType}/objectType/neInfo?sync2ne=${data.sync}`,
method: 'put',
data: data,
});
}
/**
* 删除网元
* @param noticeId 网元ID
* @returns object
*/
export async function delNeInfo(data: Record<string, any>) {
return request({
url: `/api/rest/systemManagement/v1/elementType/${data.neType}/objectType/neInfo?ne_id=${data.neId}`,
method: 'delete',
timeout: 60 * 1000,
});
}
/**
* 导出网元配置文件
* @param data data {neType neId}
* @returns bolb
*/
export function exportSet(data: Record<string, any>) {
return request({
url: `/api/rest/systemManagement/v1/elementType/${data.neType}/objectType/cm?ne_id=${data.neId}`,
method: 'get',
responseType: 'blob',
headers: {
'Content-Type': 'application/octet-stream',
},
timeout: 180_000,
});
}
/**
* 导入网元配置文件
* @param data 网元对象
* @returns object
*/
export function importFile(data: Record<string, any>) {
let dataType: 'json' | 'form-data' = 'json';
let url = `/api/rest/systemManagement/v1/elementType/${data.neType}/objectType/cm?ne_id=${data.neId}`;
let obj: any = { fileName: data.fileName };
if (data.importType === 'local') {
let formData = new FormData();
formData.append('nfType', data.neType);
formData.append('nfId', data.neId);
formData.append('file', data.file);
obj = formData;
dataType = 'form-data';
}
// 处理FormData类型的data
return request({
url,
method: 'post',
data: obj,
dataType,
timeout: 180_000,
});
}
/**
* 查询远程服务器上网元配置文件
* @param data 网元对象
* @returns object
*/
export async function listServerFile(data: Record<string, any>) {
const result = await request({
url: `/api/rest/databaseManagement/v1/omc_db/ne_backup?SQL= select * from ne_backup where ne_type ='${data.neType}'`,
method: 'get',
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS && Array.isArray(result.data.data)) {
let data = result.data.data[0];
return Object.assign(result, {
data: parseObjLineToHump(data['ne_backup']),
});
}
return result;
}
/**
* 启动网元
* @data {neType,neId}
* @returns bolb
*/
export function startNf(data: Record<string, any>) {
return request({
url: `/api/rest/systemManagement/v1/elementType/${data.neType}/objectType/service/start?neId=${data.neId}`,
method: 'post',
timeout: 180_000,
});
}
/**
* 重启网元
* @data {neType,neId}
* @returns bolb
*/
export function restartNf(data: Record<string, any>) {
return request({
url: `/api/rest/systemManagement/v1/elementType/${data.neType}/objectType/service/restart?neId=${data.neId}`,
method: 'post',
timeout: 180_000,
});
}
/**
* 停止网元
* @data {neType,neId}
* @returns bolb
*/
export function stopNf(data: Record<string, any>) {
return request({
url: `/api/rest/systemManagement/v1/elementType/${data.neType}/objectType/service/stop?neId=${data.neId}`,
method: 'post',
timeout: 180_000,
});
}

View File

@@ -1,220 +0,0 @@
import {
RESULT_CODE_ERROR,
RESULT_CODE_SUCCESS,
RESULT_MSG_ERROR,
} from '@/constants/result-constants';
import { language, request } from '@/plugins/http-fetch';
import { parseObjLineToHump } from '@/utils/parse-utils';
/**
* 查询软件列表
* @param query 查询参数
* @returns object
*/
export async function listNeSoftware(query: Record<string, any>) {
let totalSQL = 'select count(id) as total from ne_software ';
let rowsSQL = ' select * from ne_software ';
// 查询
let querySQL = 'where 1=1';
if (query.neType) {
querySQL += ` and ne_type like '%${query.neType}%' `;
}
// 分页
const pageNum = (query.pageNum - 1) * query.pageSize;
const limtSql = ` order by update_time desc limit ${pageNum},${query.pageSize} `;
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/ne_software`,
method: 'get',
params: {
totalSQL: totalSQL + querySQL,
rowsSQL: rowsSQL + querySQL + limtSql,
},
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS) {
const data: DataList = {
total: 0,
rows: [],
code: result.code,
msg: result.msg,
};
result.data.data.forEach((item: any) => {
const itemData = item['ne_software'];
if (Array.isArray(itemData)) {
if (itemData.length === 1 && itemData[0]['total'] >= 0) {
data.total = itemData[0]['total'];
} else {
data.rows = itemData.map(v => parseObjLineToHump(v));
}
}
});
return data;
}
return result;
}
/**
* 删除软件信息
* @param noticeId 网元ID
* @returns object
*/
export async function delNeSoftware(data: Record<string, any>) {
return request({
url: `/api/rest/systemManagement/v1/${data.neType}/software/${data.version}`,
method: 'delete',
});
}
/**
* 获取软件信息文件
* @param menuId 网元ID
* @returns object
*/
export async function downloadNeSoftware(data: Record<string, any>) {
return await request({
url: `/api/rest/systemManagement/v1/${data.neType}/software/${data.version}`,
method: 'get',
responseType: 'blob',
timeout: 180_000,
});
}
/**
* 上传文件
* @param data 表单数据对象
* @returns object
*/
export function uploadNeSoftware(data: FormData) {
return request({
url: `/api/rest/systemManagement/v1/${data.get('nf')}/software/${data.get(
'version'
)}`,
method: 'post',
data,
dataType: 'form-data',
timeout: 180_000,
});
}
/**
* 下发文件
* @param data 数据对象
* @returns object
*/
export async function sendNeSoftware(data: Record<string, any>) {
const result = await request({
url: `/api/rest/systemManagement/v1/${data.neType}/software/${data.version}/${data.neId}`,
method: 'post',
timeout: 180_000,
repeatSubmit: false,
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS) {
delete result.data;
return result;
}
return { code: RESULT_CODE_ERROR, msg: RESULT_MSG_ERROR[language] };
}
/**
* 激活文件
* @param data 数据对象
* @returns object
*/
export async function runNeSoftware(data: Record<string, any>) {
const result = await request({
url: `/api/rest/systemManagement/v1/${data.neType}/software/${data.version}/${data.neId}`,
method: 'put',
timeout: 180_000,
repeatSubmit: false,
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS) {
delete result.data;
return result;
}
return { code: RESULT_CODE_ERROR, msg: RESULT_MSG_ERROR[language] };
}
/**
* 回退文件
* @param data 数据对象
* @returns object
*/
export async function backNeSoftware(data: Record<string, any>) {
const result = await request({
url: `/api/rest/systemManagement/v1/${data.neType}/software/${data.version}/${data.neId}`,
method: 'PATCH',
timeout: 180_000,
repeatSubmit: false,
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS) {
delete result.data;
return result;
}
return { code: RESULT_CODE_ERROR, msg: RESULT_MSG_ERROR[language] };
}
/**
* 查询版本列表
* @param query 查询参数
* @returns object
*/
export async function listNeVersion(query: Record<string, any>) {
let totalSQL = 'select count(id) as total from ne_version ';
let rowsSQL = 'select * from ne_version ';
// 查询
let querySQL = 'where 1=1';
if (query.neType) {
querySQL += ` and ne_type like '%${query.neType}%' `;
}
if (query.status) {
querySQL += ` and status = '${query.status}' `;
}
if (query.beginTime && query.endTime) {
querySQL += ` and update_time BETWEEN '${query.beginTime}' AND '${query.endTime}' `;
}
// 分页
const pageNum = (query.pageNum - 1) * query.pageSize;
const limtSql = ` order by update_time desc limit ${pageNum},${query.pageSize} `;
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/ne_version`,
method: 'get',
params: {
totalSQL: totalSQL + querySQL,
rowsSQL: rowsSQL + querySQL + limtSql,
},
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS) {
const data: DataList = {
total: 0,
rows: [],
code: result.code,
msg: result.msg,
};
result.data.data.forEach((item: any) => {
const itemData = item['ne_version'];
if (Array.isArray(itemData)) {
if (itemData.length === 1 && itemData[0]['total'] >= 0) {
data.total = itemData[0]['total'];
} else {
data.rows = itemData.map(v => parseObjLineToHump(v));
}
}
});
return data;
}
return result;
}

View File

@@ -1,36 +1,30 @@
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
import { request } from '@/plugins/http-fetch';
import { parseObjLineToHump } from '@/utils/parse-utils';
import { parseDateToStr } from '@/utils/date-utils';
import useUserStore from '@/store/modules/user';
/**
* 获取活动告警数
* @returns object
*/
export async function getActiveAlarmTotal() {
let totalSQL = `select count(*) as total from alarm where alarm_status='1'`;
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/alarm`,
method: 'get',
url: `/neData/alarm/list`,
method: 'GET',
params: {
SQL: totalSQL,
alarmStatus: 'Active',
sortField: 'event_time',
sortOrder: 'desc',
pageNum: 1,
pageSize: 1,
},
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS) {
const itemData = result.data.data;
if (Array.isArray(itemData)) {
const v = itemData[0]['alarm'];
if (Array.isArray(v)) {
result.data = v[0]['total'];
}
}
}
return result;
return {
code: result.code,
msg: result.msg,
data: result.data.total ?? 0,
};
}
/**
@@ -38,125 +32,28 @@ export async function getActiveAlarmTotal() {
* @param query 查询参数
* @returns object
*/
export async function listAct(query: Record<string, any>, filterSQl: string) {
let totalSQL = `select count(*) as total from alarm where alarm_status='1' ${filterSQl} `;
let rowsSQL = `select * from alarm where alarm_status='1' ${filterSQl}`;
// 查询
let querySQL = '';
if (query.alarmCode) {
querySQL += ` and alarm_code = '${query.alarmCode}' `;
}
if (query.alarmType) {
querySQL += ` and alarm_type = '${query.alarmType}' `;
}
if (query.pvFlag) {
querySQL += ` and pv_flag = '${query.pvFlag}' `;
}
if (query.origSeverity) {
querySQL += ` and orig_severity in('${query.origSeverity}' )`;
}
if (query.neId) {
querySQL += ` and ne_id like '%${query.neId}%' `;
}
if (query.neName) {
querySQL += ` and ne_name like '%${query.neName}%' `;
}
if (query.neType) {
querySQL += ` and ne_type like '%${query.neType}%' `;
}
if (query.beginTime && query.endTime) {
querySQL += ` and event_time BETWEEN '${query.beginTime}' and ' ${query.endTime}'`;
}
// 分页
const pageNum = (query.pageNum - 1) * query.pageSize;
const limtSql = ` order by event_time desc limit ${pageNum},${query.pageSize} `;
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/alarm`,
method: 'get',
params: {
SQL: totalSQL + querySQL,
rowsSQL: rowsSQL + querySQL + limtSql,
},
export async function listAct(query: Record<string, any>) {
return await request({
url: `/neData/alarm/list`,
method: 'GET',
params: query,
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS) {
const data: DataList = {
total: 0,
rows: [],
code: result.code,
msg: result.msg,
};
result.data.data.forEach((item: any) => {
const itemData = item['alarm'];
if (Array.isArray(itemData)) {
if (itemData.length === 1 && itemData[0]['total'] >= 0) {
data.total = itemData[0]['total'];
} else {
data.rows = itemData.map(v => parseObjLineToHump(v));
}
}
});
return data;
}
return result;
}
/**
* 确认告警信息
* @param data 鉴权对象
* @param ids 记录ID
* @param state 状态 true确认 false取消确认
* @returns object
*/
export function updateConfirm(data: Record<string, any>) {
var time = new Date();
const userName = useUserStore().userName;
let finalData = {
alarm: {
ack_time: parseDateToStr(time),
ack_user: userName,
ack_state: '1',
},
};
export function ackAlarm(ids: number[], state: boolean) {
return request({
url: `/api/rest/databaseManagement/v1/update/omc_db/alarm?WHERE=id='${data.id}'`,
method: 'put',
data: finalData,
});
}
/**
* 取消确认告警
* @param data 鉴权对象
* @returns object
*/
export function cancelConfirm(data: (string | number)[]) {
var time = new Date();
const userName = useUserStore().userName;
let finalData = {
alarm: {
ack_time: parseDateToStr(time),
ack_user: '',
ack_state: '0',
url: `/neData/alarm/ack'`,
method: 'PUT',
data: {
ids: ids,
ackState: state,
},
};
return request({
url: `/api/rest/databaseManagement/v1/update/omc_db/alarm?WHERE=id in(${data.join(
','
)})`,
method: 'put',
data: finalData,
});
}
@@ -187,7 +84,7 @@ export function showPass(data: Record<string, any>) {
return request({
url: `/api/rest/databaseManagement/v1/omc_db/config?WHERE=config_tag='displayFilter'`,
method: 'put',
method: 'PUT',
data: toBackJson,
});
}
@@ -199,7 +96,7 @@ export function showPass(data: Record<string, any>) {
export function getPass() {
return request({
url: `/api/rest/databaseManagement/v1/select/omc_db/config`,
method: 'get',
method: 'GET',
params: {
SQL: "SELECT value_json,value FROM config WHERE config_tag ='displayFilter'",
},
@@ -208,27 +105,29 @@ export function getPass() {
/**
* 清除告警信息
* @param data 鉴权对象
* @param ids 记录ID
* @returns object
*/
export function clearAlarm(data: Record<string, any>) {
var time = new Date();
const userName = useUserStore().userName;
let finalData = {
data: {
clear_time: parseDateToStr(time),
clear_type: '2',
alarm_status: '0',
clear_user: userName,
},
};
export function clearAlarm(ids: number[]) {
return request({
url: `/api/rest/databaseManagement/v1/update/omc_db/alarm?WHERE=id in(${data.join(
','
)})`,
method: 'put',
data: finalData,
url: `/neData/alarm/clear`,
method: 'PUT',
data: { ids },
});
}
/**
* 告警信息导出
* @param params 查询列表条件
* @returns object
*/
export function exportAlarm(params: Record<string, any>) {
return request({
url: '/neData/alarm/export',
method: 'GET',
params: params,
responseType: 'blob',
timeout: 180_000,
});
}
@@ -240,7 +139,7 @@ export function clearAlarm(data: Record<string, any>) {
export function listSync() {
return request({
url: `/api/rest/faultManagement/v1/elementType/all/objectType/alarms`,
method: 'get',
method: 'GET',
timeout: 180_000,
});
}
@@ -275,7 +174,7 @@ export async function exportAll(query: Record<string, any>) {
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/alarm`,
method: 'get',
method: 'GET',
params: {
rowsSQL: rowsSQL + querySQL,
},
@@ -295,33 +194,13 @@ export async function exportAll(query: Record<string, any>) {
* @returns bolb
*/
export async function origGet() {
let totalSQL = `select count(*) as value,orig_severity as name from alarm WHERE alarm_status='1' and orig_severity!='Event' group by orig_severity`;
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/alarm`,
method: 'get',
return await request({
url: `/neData/alarm/count/severity`,
method: 'GET',
params: {
SQL: totalSQL,
alarmStatus: 'Active',
},
timeout: 30_000,
});
////
// 解析数据
if (result.code === RESULT_CODE_SUCCESS) {
const itemData = result.data.data;
if (Array.isArray(itemData)) {
const v = itemData[0]['alarm'];
if (Array.isArray(v)) {
result.data = v;
}
if (v === null) {
result.data = [];
}
}
}
return result;
}
/**
@@ -329,34 +208,13 @@ export async function origGet() {
* @param filterFlag 查询参数
* @returns object
*/
export async function top3Sel(filterFlag?: string) {
let filter = ` WHERE alarm_status='1'and orig_severity='${filterFlag}'`;
if (!filterFlag) filter = "WHERE alarm_status='1'";
let top3SQL = `select count(*) as value,ne_type as name from alarm ${filter} and orig_severity!='Event' group by ne_type ORDER BY value desc limit 0,3 `;
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/alarm`,
method: 'get',
export async function top3Sel() {
return await request({
url: `/neData/alarm/count/ne`,
method: 'GET',
params: {
SQL: top3SQL,
alarmStatus: 'Active',
top: 3,
},
timeout: 30_000,
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS) {
const itemData = result.data.data;
if (Array.isArray(itemData)) {
const v = itemData[0]['alarm'];
if (Array.isArray(v)) {
result.data = v;
}
if (v === null) {
result.data = [];
}
}
}
return result;
}

View File

@@ -1,8 +1,6 @@
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
import { request } from '@/plugins/http-fetch';
import { parseObjLineToHump } from '@/utils/parse-utils';
import { parseDateToStr } from '@/utils/date-utils';
import useUserStore from '@/store/modules/user';
/**
* 查询列表
@@ -10,73 +8,11 @@ import useUserStore from '@/store/modules/user';
* @returns object
*/
export async function listAct(query: Record<string, any>) {
let totalSQL = `select count(*) as total from alarm_event where 1=1 `;
let rowsSQL = `select * from alarm_event where 1=1 `;
// 查询
let querySQL = '';
if (query.alarmCode) {
querySQL += ` and alarm_code = '${query.alarmCode}' `;
}
if (query.alarmType) {
querySQL += ` and alarm_type = '${query.alarmType}' `;
}
if (query.pvFlag) {
querySQL += ` and pv_flag = '${query.pvFlag}' `;
}
if (query.neId) {
querySQL += ` and ne_id like '%${query.neId}%' `;
}
if (query.neName) {
querySQL += ` and ne_name like '%${query.neName}%' `;
}
if (query.neType) {
querySQL += ` and ne_type like '%${query.neType}%' `;
}
if (query.beginTime && query.endTime) {
querySQL += ` and event_time BETWEEN '${query.beginTime}' and ' ${query.endTime}'`;
}
// 分页
const pageNum = (query.pageNum - 1) * query.pageSize;
const limtSql = ` order by event_time desc limit ${pageNum},${query.pageSize} `;
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/alarm_event`,
method: 'get',
params: {
SQL: totalSQL + querySQL,
rowsSQL: rowsSQL + querySQL + limtSql,
},
return await request({
url: `/neData/alarm/log/event`,
method: 'GET',
params: query,
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS) {
const data: DataList = {
total: 0,
rows: [],
code: result.code,
msg: result.msg,
};
result.data.data.forEach((item: any) => {
const itemData = item['alarm_event'];
if (Array.isArray(itemData)) {
if (itemData.length === 1 && itemData[0]['total'] >= 0) {
data.total = itemData[0]['total'];
} else {
data.rows = itemData.map(v => parseObjLineToHump(v));
}
}
});
return data;
}
return result;
}
/**
@@ -109,7 +45,7 @@ export async function exportAll(query: Record<string, any>) {
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/alarm_event`,
method: 'get',
method: 'GET',
params: {
rowsSQL: rowsSQL + querySQL,
},

View File

@@ -18,7 +18,7 @@ export async function getAlarmSet() {
// 历史告警保存时间
const logDurationResult = await request({
url: `/api/rest/databaseManagement/v1/omc_db/config`,
method: 'get',
method: 'GET',
params: {
SQL: `SELECT * FROM config WHERE config_tag = 'historyDuration'`,
},
@@ -27,7 +27,7 @@ export async function getAlarmSet() {
// 同步设置
const logCapacityResult = await request({
url: `/api/rest/databaseManagement/v1/omc_db/config`,
method: 'get',
method: 'GET',
params: {
SQL: `SELECT * FROM config WHERE config_tag = 'syncTaskPeriod'`,
},
@@ -90,14 +90,14 @@ export async function updateAlarmSet(data: Record<string, any>) {
// 历史告警保存时间
const historyDurationResult = await request({
url: `/api/rest/databaseManagement/v1/omc_db/config?WHERE=config_tag='historyDuration'`,
method: 'put',
method: 'PUT',
data: { data: { value: data.historyDuration.toString() } },
});
arr.push(historyDurationResult);
// 同步设置
const syncTaskPeriodResult = await request({
url: `/api/rest/databaseManagement/v1/omc_db/config?WHERE=config_tag='syncTaskPeriod'`,
method: 'put',
method: 'PUT',
data: { data: { value_json: JSON.stringify(syncTaskPeriodJson) } },
});
arr.push(syncTaskPeriodResult);
@@ -145,7 +145,7 @@ export async function getForwardSet() {
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/omc_db/config`,
method: 'get',
method: 'GET',
params: {
SQL: `SELECT * FROM config WHERE config_tag = 'forwardAlarm'`,
},
@@ -180,7 +180,7 @@ export async function updateForwardSet(data: Record<string, any>) {
];
const result = await request({
url: `/api/rest/databaseManagement/v1/omc_db/config?WHERE=config_tag='forwardAlarm'`,
method: 'put',
method: 'PUT',
data: { data: { value_json: JSON.stringify(obj) } },
});
// 解析数据

View File

@@ -4,71 +4,6 @@ import { parseObjLineToHump } from '@/utils/parse-utils';
import { parseDateToStr } from '@/utils/date-utils';
import useUserStore from '@/store/modules/user';
/**
* 查询列表
* @param query 查询参数
* @returns object
*/
export async function listAct(query: Record<string, any>) {
let totalSQL = `select count(*) as total from alarm where alarm_status='0'`;
let rowsSQL = `select * from alarm where alarm_status='0'`;
// 查询
let querySQL = '';
querySQL += query.alarm_code
? ` and alarm_code = '${query.alarm_code}' `
: '';
querySQL += query.alarm_type
? ` and alarm_type = '${query.alarm_type}' `
: '';
querySQL += query.pv_flag ? ` and pv_flag = '${query.pv_flag}' ` : '';
querySQL += query.orig_severity
? ` and orig_severity in('${query.orig_severity}' )`
: '';
querySQL += query.ne_id ? ` and ne_id like '%${query.ne_id}%' ` : '';
querySQL += query.ne_name ? ` and ne_name like '%${query.ne_name}%' ` : '';
querySQL += query.ne_type ? ` and ne_type like '%${query.ne_type}%' ` : '';
querySQL +=
query.beginTime && query.endTime
? ` and event_time BETWEEN '${query.beginTime}' and ' ${query.endTime}'`
: '';
// 分页
const pageNum = (query.pageNum - 1) * query.pageSize;
const limtSql = ` order by clear_time desc limit ${pageNum},${query.pageSize} `;
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/alarm`,
method: 'get',
params: {
SQL: totalSQL + querySQL,
rowsSQL: rowsSQL + querySQL + limtSql,
},
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS) {
const data: DataList = {
total: 0,
rows: [],
code: result.code,
msg: result.msg,
};
result.data.data.forEach((item: any) => {
const itemData = item['alarm'];
if (Array.isArray(itemData)) {
if (itemData.length === 1 && itemData[0]['total'] >= 0) {
data.total = itemData[0]['total'];
} else {
data.rows = itemData.map(v => parseObjLineToHump(v));
}
}
});
return data;
}
return result;
}
/**
* 确认告警信息
* @param data 鉴权对象
@@ -87,7 +22,7 @@ export function updateConfirm(data: Record<string, any>) {
return request({
url: `/api/rest/databaseManagement/v1/update/omc_db/alarm?WHERE=id='${data.id}'`,
method: 'put',
method: 'PUT',
data: finalData,
});
}
@@ -111,7 +46,7 @@ export function cancelConfirm(data: (string | number)[]) {
url: `/api/rest/databaseManagement/v1/update/omc_db/alarm?WHERE=id in(${data.join(
','
)})`,
method: 'put',
method: 'PUT',
data: finalData,
});
}
@@ -146,7 +81,7 @@ export async function exportAll(query: Record<string, any>) {
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/alarm`,
method: 'get',
method: 'GET',
params: {
rowsSQL: rowsSQL + querySQL,
},

View File

@@ -1,83 +1,15 @@
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
import { request } from '@/plugins/http-fetch';
import { parseDateToStr } from '@/utils/date-utils';
import { NE_TYPE_LIST } from '@/constants/ne-constants';
/**
* 查询公告列表
* @param query 查询参数
* @returns object
*/
export async function listMain() {
const result = await request({
url: '/api/rest/systemManagement/v1/elementType/all/objectType/systemState',
method: 'get',
timeout: 60_000,
});
// console.log(result);
let realData = result.data.data;
const mergedData = realData.map((obj: any) => {
// console.log(obj);
const [key, value] = Object.entries(obj)[0];
const ipAddress = (value as any).ipAddress;
const systemState = (value as any).systemState;
const serialNum = (value as any).serialNum;
const version = (value as any).version;
const errCode = systemState && systemState['errorCode'];
var time = new Date();
// console.log(key, value);
let mergedObj;
if (errCode === undefined && systemState) {
mergedObj = {
...systemState,
refresh: parseDateToStr(time),
ipAddress: ipAddress,
name: key.split('/').join('_'),
status: 'Normal',
};
} else {
mergedObj = {
version,
refresh: parseDateToStr(time),
ipAddress,
serialNum,
name: key.split('/').join('_'),
expiryDate: '-',
status: 'Abnormal',
};
}
return mergedObj;
});
//通过sort进行冒泡排序
mergedData.sort((a: any, b: any) => {
const typeA = NE_TYPE_LIST.indexOf(a.name.split('_')[0]);
const typeB = NE_TYPE_LIST.indexOf(b.name.split('_')[0]);
if (typeA === -1) return 1; // 如果不在特定顺序中,排到后面
if (typeB === -1) return -1; // 如果不在特定顺序中,排到后面
return typeA - typeB;
});
return mergedData;
}
/**
* 获取服务器时间
* 服务器时间
* @returns object
*/
export async function getServerTime() {
// 发起请求
const result = await request({
url: `/api/rest/systemManagement/v1/elementType/OMC/objectType/time`,
method: 'get',
return request({
url: `/time`,
method: 'GET',
whithToken: false,
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS && result.data) {
return Object.assign(result, {
data: result.data.data,
});
}
return result;
}
/**
@@ -87,7 +19,7 @@ export async function getServerTime() {
export function getSysConf() {
return request({
url: `/sys-conf`,
method: 'get',
method: 'GET',
whithToken: false,
});
}

View File

@@ -1,6 +1,4 @@
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
import { request } from '@/plugins/http-fetch';
import { parseObjLineToHump } from '@/utils/parse-utils';
/**
* 查询日志列表
@@ -8,65 +6,9 @@ import { parseObjLineToHump } from '@/utils/parse-utils';
* @returns object
*/
export async function listAlarm(query: Record<string, any>) {
let totalSQL = 'select count(*) as total from alarm_log where 1=1 ';
let rowsSQL = 'select * from alarm_log where 1=1 ';
// 查询
let querySQL = '';
if (query.neType) {
querySQL += ` and ne_type like '%${query.neType}%' `;
}
if (query.status) {
querySQL += ` and alarm_status = '${query.status}' `;
}
if (query.beginTime) {
querySQL += ` and log_time >= '${query.beginTime}' `;
}
if (query.endTime) {
querySQL += ` and log_time <= '${query.endTime}' `;
}
// 排序
let sortSql = ' order by log_time ';
if (query.sortOrder === 'asc') {
sortSql += ' asc ';
} else {
sortSql += ' desc ';
}
// 分页
const pageNum = (query.pageNum - 1) * query.pageSize;
const limtSql = ` limit ${pageNum},${query.pageSize} `;
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/alarm_log`,
method: 'get',
params: {
totalSQL: totalSQL + querySQL,
rowsSQL: rowsSQL + querySQL + sortSql + limtSql,
},
return await request({
url: `/neData/alarm/log/list`,
method: 'GET',
params: query,
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS) {
const data: DataList = {
total: 0,
rows: [],
code: result.code,
msg: result.msg,
};
result.data.data.forEach((item: any) => {
const itemData = item['alarm_log'];
if (Array.isArray(itemData)) {
if (itemData.length === 1 && itemData[0]['total'] >= 0) {
data.total = itemData[0]['total'];
} else {
data.rows = itemData.map(v => parseObjLineToHump(v));
}
}
});
return data;
}
return result;
}

View File

@@ -1,95 +0,0 @@
import { CACHE_SESSION_CRYPTO_API } from '@/constants/cache-keys-constants';
import { sessionGet } from '@/utils/cache-session-utils';
import { request } from '@/plugins/http-fetch';
/**
* 获取下拉框数据
* @returns object
*/
export function getBakFile() {
return request({
url: '/lm/table/list',
method: 'get',
});
}
/**
* 获取对应类型的文件列表
* @param query 查询参数
* @returns object
*/
export function getBakFileList(query: Record<string, any>) {
return request({
url: '/lm/file/list',
method: 'get',
params: query,
});
}
/**
* 下载远端文件
* @param query 查询参数
* @returns object
*/
export function downFile(query: Record<string, any>) {
return request({
url: `/lm/file/${query.fileName}`,
method: 'get',
params: query,
responseType: 'blob',
timeout: 180_000,
});
}
/**
* 删除远端获取文件
* @param query 查询参数
* @returns object
*/
export function delFile(query: Record<string, any>) {
return request({
url: `/lm/file/${query.fileName}`,
method: 'delete',
params: query,
});
}
/**
* 更新FTP信息
* @param data 数据
* @returns object
*/
export function updateFTPInfo(data: Record<string, any>) {
return request({
url: `/lm/table/ftp`,
method: 'post',
data: data,
crypto: sessionGet(CACHE_SESSION_CRYPTO_API) !== 'false',
});
}
/**
* 获取FTP信息
* @param data 数据
* @returns object
*/
export function getFTPInfo() {
return request({
url: `/lm/table/ftp`,
method: 'get',
crypto: sessionGet(CACHE_SESSION_CRYPTO_API) !== 'false',
});
}
/**
* 发送FTP文件
* @param data 数据
* @returns object
*/
export function putFTPInfo(filePath: string, fileName: string) {
return request({
url: `/lm/table/ftp`,
method: 'put',
data: { filePath, fileName },
});
}

View File

@@ -1,6 +1,4 @@
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
import { request } from '@/plugins/http-fetch';
import { parseObjLineToHump } from '@/utils/parse-utils';
/**
* 查询日志列表
@@ -8,62 +6,9 @@ import { parseObjLineToHump } from '@/utils/parse-utils';
* @returns object
*/
export async function listForwarding(query: Record<string, any>) {
let totalSQL = 'select count(*) as total from alarm_forward_log where 1=1 ';
let rowsSQL = 'select * from alarm_forward_log where 1=1 ';
// 查询
let querySQL = '';
if (query.neType) {
querySQL += ` and ne_type like '%${query.neType}%' `;
}
if (query.beginTime) {
querySQL += ` and log_time >= '${query.beginTime}' `;
}
if (query.endTime) {
querySQL += ` and log_time <= '${query.endTime}' `;
}
// 排序
let sortSql = ' order by log_time ';
if (query.sortOrder === 'asc') {
sortSql += ' asc ';
} else {
sortSql += ' desc ';
}
// 分页
const pageNum = (query.pageNum - 1) * query.pageSize;
const limtSql = ` limit ${pageNum},${query.pageSize} `;
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/alarm_forward_log`,
method: 'get',
params: {
totalSQL: totalSQL + querySQL,
rowsSQL: rowsSQL + querySQL + sortSql + limtSql,
},
return await request({
url: `/neData/alarm/forward/log/list`,
method: 'GET',
params: query,
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS) {
const data: DataList = {
total: 0,
rows: [],
code: result.code,
msg: result.msg,
};
result.data.data.forEach((item: any) => {
const itemData = item['alarm_forward_log'];
if (Array.isArray(itemData)) {
if (itemData.length === 1 && itemData[0]['total'] >= 0) {
data.total = itemData[0]['total'];
} else {
data.rows = itemData.map(v => parseObjLineToHump(v));
}
}
});
return data;
}
return result;
}

View File

@@ -18,7 +18,7 @@ export async function getLogSet() {
// 日志保存时间
const logDurationResult = await request({
url: `/api/rest/databaseManagement/v1/omc_db/config`,
method: 'get',
method: 'GET',
params: {
SQL: `SELECT * FROM config WHERE config_tag = 'logDuration'`,
},
@@ -27,7 +27,7 @@ export async function getLogSet() {
// 日志最大容量
const logCapacityResult = await request({
url: `/api/rest/databaseManagement/v1/omc_db/config`,
method: 'get',
method: 'GET',
params: {
SQL: `SELECT * FROM config WHERE config_tag = 'logCapacity'`,
},
@@ -76,7 +76,7 @@ export async function updateLogSet(data: Record<string, any>) {
const value = `${data[key]}`;
const result = request({
url: `/api/rest/databaseManagement/v1/omc_db/config?WHERE=config_tag='${key}'`,
method: 'put',
method: 'PUT',
data: { data: { value } },
});
arr.push(result);
@@ -120,7 +120,7 @@ export async function getFtpLogSet() {
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/omc_db/config`,
method: 'get',
method: 'GET',
params: {
SQL: `SELECT * FROM config WHERE config_tag = 'ftpLogSet'`,
},
@@ -151,7 +151,7 @@ export async function getFtpLogSet() {
export async function updateFtpLogSet(data: Record<string, any>) {
const result = await request({
url: `/api/rest/databaseManagement/v1/omc_db/config?WHERE=config_tag='ftpLogSet'`,
method: 'put',
method: 'PUT',
data: { data: { value_json: JSON.stringify(data) } },
});
// 解析数据
@@ -176,7 +176,7 @@ export async function getRemoteOut() {
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/omc_db/config`,
method: 'get',
method: 'GET',
params: {
SQL: `SELECT * FROM config WHERE config_tag = 'remoteLogSet'`,
},
@@ -206,7 +206,7 @@ export async function getRemoteOut() {
export async function updateRemoteOut(data: Record<string, any>) {
const result = await request({
url: `/api/rest/databaseManagement/v1/omc_db/config?WHERE=config_tag='remoteLogSet'`,
method: 'put',
method: 'PUT',
data: { data: { value_json: JSON.stringify(data) } },
});
// 解析数据
@@ -254,7 +254,7 @@ export async function exportLog(query: Record<string, any>) {
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/${query.logType}`,
method: 'get',
method: 'GET',
params: {
SQL: querySQL,
},
@@ -277,7 +277,7 @@ export async function exportLog(query: Record<string, any>) {
export async function backupLog(logType: string) {
const result = await request({
url: `/api/rest/dataManagement/v1/omc_db/${logType}/backup`,
method: 'post',
method: 'POST',
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS && result.data.data) {
@@ -300,7 +300,7 @@ export async function backupLog(logType: string) {
export async function backupDownload(path: string) {
return request({
url: `/api/rest/fileManagement/v1/path/file?path=${path}`,
method: 'get',
method: 'GET',
responseType: 'blob',
timeout: 180_000,
});
@@ -314,7 +314,7 @@ export async function backupDownload(path: string) {
export function backupFileList() {
return request({
url: `/api/rest/fileManagement/v1/files/listFiles`,
method: 'post',
method: 'POST',
data: {
path: '/usr/local/omc/database',
expand: true,

View File

@@ -1,69 +0,0 @@
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
import { request } from '@/plugins/http-fetch';
import { parseObjLineToHump } from '@/utils/parse-utils';
/**
* 查询日志列表
* @param query 查询参数
* @returns object
*/
export async function listMML(query: Record<string, any>) {
let totalSQL = 'select count(*) as total from mml_log where 1=1 ';
let rowsSQL = 'select * from mml_log where 1=1 ';
// 查询
let querySQL = '';
if (query.accountName) {
querySQL += ` and user like '%${query.accountName}%' `;
}
if (query.beginTime) {
querySQL += ` and log_time >= '${query.beginTime}' `;
}
if (query.endTime) {
querySQL += ` and log_time <= '${query.endTime}' `;
}
// 排序
let sortSql = ' order by log_time ';
if (query.sortOrder === 'asc') {
sortSql += ' asc ';
} else {
sortSql += ' desc ';
}
// 分页
const pageNum = (query.pageNum - 1) * query.pageSize;
const limtSql = ` limit ${pageNum},${query.pageSize} `;
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/mml_log`,
method: 'get',
params: {
totalSQL: totalSQL + querySQL,
rowsSQL: rowsSQL + querySQL + sortSql + limtSql,
},
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS) {
const data: DataList = {
total: 0,
rows: [],
code: result.code,
msg: result.msg,
};
result.data.data.forEach((item: any) => {
const itemData = item['mml_log'];
if (Array.isArray(itemData)) {
if (itemData.length === 1 && itemData[0]['total'] >= 0) {
data.total = itemData[0]['total'];
} else {
data.rows = itemData.map(v => parseObjLineToHump(v));
}
}
});
return data;
}
return result;
}

View File

@@ -41,7 +41,7 @@ export async function listOperationLog(query: Record<string, any>) {
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/operation_log`,
method: 'get',
method: 'GET',
params: {
totalSQL: totalSQL + querySQL,
rowsSQL: rowsSQL + querySQL + sortSql + limtSql,
@@ -50,9 +50,8 @@ export async function listOperationLog(query: Record<string, any>) {
// 解析数据
if (result.code === RESULT_CODE_SUCCESS) {
const data: DataList = {
total: 0,
rows: [],
const data = {
data: { total: 0, rows: [] as any },
code: result.code,
msg: result.msg,
};
@@ -60,9 +59,9 @@ export async function listOperationLog(query: Record<string, any>) {
const itemData = item['operation_log'];
if (Array.isArray(itemData)) {
if (itemData.length === 1 && itemData[0]['total'] >= 0) {
data.total = itemData[0]['total'];
data.data.total = itemData[0]['total'];
} else {
data.rows = itemData.map(v => parseObjLineToHump(v));
data.data.rows = itemData.map(v => parseObjLineToHump(v));
}
}
});

View File

@@ -1,72 +0,0 @@
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
import { request } from '@/plugins/http-fetch';
import { parseObjLineToHump } from '@/utils/parse-utils';
/**
* 查询日志列表
* @param query 查询参数
* @returns object
*/
export async function listSecurityLog(query: Record<string, any>) {
let totalSQL = 'select count(*) as total from security_log where 1=1 ';
let rowsSQL = 'select * from security_log where 1=1 ';
// 查询
let querySQL = '';
if (query.accountName) {
querySQL += ` and account_name like '%${query.accountName}%' `;
}
if (query.opType) {
querySQL += ` and op_type = '${query.opType}' `;
}
if (query.beginTime) {
querySQL += ` and op_time >= '${query.beginTime}' `;
}
if (query.endTime) {
querySQL += ` and op_time <= '${query.endTime}' `;
}
// 排序
let sortSql = ' order by op_time ';
if (query.sortOrder === 'asc') {
sortSql += ' asc ';
} else {
sortSql += ' desc ';
}
// 分页
const pageNum = (query.pageNum - 1) * query.pageSize;
const limtSql = ` limit ${pageNum},${query.pageSize} `;
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/security_log`,
method: 'get',
params: {
totalSQL: totalSQL + querySQL,
rowsSQL: rowsSQL + querySQL + sortSql + limtSql,
},
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS) {
const data: DataList = {
total: 0,
rows: [],
code: result.code,
msg: result.msg,
};
result.data.data.forEach((item: any) => {
const itemData = item['security_log'];
if (Array.isArray(itemData)) {
if (itemData.length === 1 && itemData[0]['total'] >= 0) {
data.total = itemData[0]['total'];
} else {
data.rows = itemData.map(v => parseObjLineToHump(v));
}
}
});
return data;
}
return result;
}

View File

@@ -1,63 +0,0 @@
import { CACHE_SESSION_CRYPTO_API } from '@/constants/cache-keys-constants';
import { sessionGet } from '@/utils/cache-session-utils';
import { request } from '@/plugins/http-fetch';
// 登录方法
export function login(data: Record<string, string>) {
return request({
url: '/login',
method: 'post',
data: data,
whithToken: false,
crypto: sessionGet(CACHE_SESSION_CRYPTO_API) !== 'false',
});
}
/**
* 注册方法
* @param data 注册对象
* @returns object
*/
export function register(data: Record<string, any>) {
return request({
url: '/register',
method: 'post',
data: data,
whithToken: false,
crypto: sessionGet(CACHE_SESSION_CRYPTO_API) !== 'false',
});
}
/**
* 获取用户详细信息
* @returns object
*/
export function getInfo() {
return request({
url: '/getInfo',
method: 'get',
});
}
/**
* 退出方法
* @returns object
*/
export function logout() {
return request({
url: '/logout',
method: 'post',
});
}
/**
* 获取验证码
* @returns object
*/
export function getCaptchaImage() {
return request({
url: '/captchaImage',
method: 'get',
whithToken: false,
});
}

View File

@@ -15,7 +15,7 @@ export async function getOperationSet() {
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/omc_db/config`,
method: 'get',
method: 'GET',
params: {
SQL: `SELECT * FROM config WHERE config_tag = 'operationSet'`,
},
@@ -45,7 +45,7 @@ export async function getOperationSet() {
export async function updateOperationSet(data: Record<string, any>) {
const result = await request({
url: `/api/rest/databaseManagement/v1/omc_db/config?WHERE=config_tag='operationSet'`,
method: 'put',
method: 'PUT',
data: { data: { value_json: JSON.stringify(data) } },
});
// 解析数据

View File

@@ -1,6 +1,4 @@
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
import { request } from '@/plugins/http-fetch';
import { parseObjLineToHump } from '@/utils/parse-utils';
/**
* 查询网元可用cmd命令
@@ -8,22 +6,17 @@ import { parseObjLineToHump } from '@/utils/parse-utils';
* @returns object
*/
export async function getMMLByNE(neType: string) {
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/elementType/omc_db/objectType/mml_system`,
method: 'get',
return request({
url: '/tool/mml/system/list',
method: 'GET',
params: {
SQL: `select * from mml_system where ne_type = '${neType}' and status = 'Active'`,
neType: neType,
status: 'Active',
pageNum: 1,
pageSize: 1000,
},
timeout: 60_000,
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS && Array.isArray(result.data.data)) {
let data = result.data.data[0];
return Object.assign(result, {
data: parseObjLineToHump(data['mml_system']),
});
}
return result;
}
/**
@@ -40,16 +33,15 @@ export async function sendMMlByNE(
objectType: string,
cmdArr: string[]
) {
// 发起请求
const result = await request({
url: `/api/rest/operationManagement/v1/elementType/${neType}/objectType/${objectType}?ne_id=${neId}`,
method: 'post',
data: { mml: cmdArr },
return request({
url: '/tool/mml/command',
method: 'POST',
data: {
neType: neType,
neId: neId,
type: objectType,
command: cmdArr,
},
timeout: 180_000,
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS && Array.isArray(result.data.data)) {
result.data = result.data.data;
}
return result;
}

View File

@@ -10,7 +10,7 @@ export async function getMMLByOMC() {
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/elementType/omc_db/objectType/mml_command`,
method: 'get',
method: 'GET',
params: {
SQL: `select * from mml_command where ne_type = 'OMC' and status = 'Active'`,
},
@@ -35,7 +35,7 @@ export async function sendMMlByOMC(neId: string, cmdArr: string[]) {
// 发起请求
const result = await request({
url: `/api/rest/operationManagement/v1/elementType/OMC/objectType/mml?ne_id=${neId}`,
method: 'post',
method: 'POST',
data: { mml: cmdArr },
timeout: 180_000,
});

View File

@@ -1,28 +1,21 @@
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
import { request } from '@/plugins/http-fetch';
import { parseObjLineToHump } from '@/utils/parse-utils';
/**
* 查询UDM可用cmd命令
* @returns object
*/
export async function getMMLByUDM() {
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/elementType/omc_db/objectType/mml_subscriber`,
method: 'get',
return request({
url: '/tool/mml/subscriber/list',
method: 'GET',
params: {
SQL: `select * from mml_subscriber where ne_type = 'UDM' and status = 'Active'`,
neType: 'UDM',
status: 'Active',
pageNum: 1,
pageSize: 1000,
},
timeout: 60_000,
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS && Array.isArray(result.data.data)) {
let data = result.data.data[0];
return Object.assign(result, {
data: parseObjLineToHump(data['mml_subscriber']),
});
}
return result;
}
/**
@@ -32,16 +25,15 @@ export async function getMMLByUDM() {
* @returns
*/
export async function sendMMlByUDM(neId: string, cmdArr: string[]) {
// 发起请求
const result = await request({
url: `/api/rest/operationManagement/v1/elementType/UDM/objectType/mml?ne_id=${neId}`,
method: 'post',
data: { mml: cmdArr },
return request({
url: '/tool/mml/command',
method: 'POST',
data: {
neType: 'UDM',
neId: neId,
type: 'General',
command: cmdArr,
},
timeout: 180_000,
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS && Array.isArray(result.data.data)) {
result.data = result.data.data;
}
return result;
}

View File

@@ -7,7 +7,7 @@ import { request } from '@/plugins/http-fetch';
export function getCache() {
return request({
url: '/monitor/cache',
method: 'get',
method: 'GET',
});
}
@@ -17,8 +17,8 @@ export function getCache() {
*/
export function listCacheName() {
return request({
url: '/monitor/cache/getNames',
method: 'get',
url: '/monitor/cache/names',
method: 'GET',
});
}
@@ -29,8 +29,9 @@ export function listCacheName() {
*/
export function listCacheKey(cacheName: string) {
return request({
url: `/monitor/cache/getKeys/${cacheName}`,
method: 'get',
url: `/monitor/cache/keys`,
method: 'GET',
params: { cacheName },
});
}
@@ -42,8 +43,22 @@ export function listCacheKey(cacheName: string) {
*/
export function getCacheValue(cacheName: string, cacheKey: string) {
return request({
url: `/monitor/cache/getValue/${cacheName}/${cacheKey}`,
method: 'get',
url: `/monitor/cache/value`,
method: 'GET',
params: { cacheName, cacheKey },
});
}
/**
* 缓存名称列表安全删除
*
* 指定可清理的缓存key
* @returns object
*/
export function clearCacheSafe() {
return request({
url: '/monitor/cache/names',
method: 'DELETE',
});
}
@@ -54,8 +69,9 @@ export function getCacheValue(cacheName: string, cacheKey: string) {
*/
export function clearCacheName(cacheName: string) {
return request({
url: `/monitor/cache/clearCacheName/${cacheName}`,
method: 'delete',
url: `/monitor/cache/keys`,
method: 'DELETE',
params: { cacheName },
});
}
@@ -67,20 +83,8 @@ export function clearCacheName(cacheName: string) {
*/
export function clearCacheKey(cacheName: string, cacheKey: string) {
return request({
url: `/monitor/cache/clearCacheKey/${cacheName}/${cacheKey}`,
method: 'delete',
});
}
/**
* 安全清理缓存名称
*
* 指定可清理的缓存key
* @returns object
*/
export function clearCacheSafe() {
return request({
url: '/monitor/cache/clearCacheSafe',
method: 'delete',
url: `/monitor/cache/value`,
method: 'DELETE',
params: { cacheName, cacheKey },
});
}

View File

@@ -8,8 +8,8 @@ import { request } from '@/plugins/http-fetch';
export function exportJob(query: Record<string, any>) {
return request({
url: '/monitor/job/export',
method: 'post',
data: query,
method: 'GET',
params: query,
responseType: 'blob',
});
}
@@ -22,7 +22,7 @@ export function exportJob(query: Record<string, any>) {
export function listJob(query: Record<string, any>) {
return request({
url: '/monitor/job/list',
method: 'get',
method: 'GET',
params: query,
});
}
@@ -35,7 +35,7 @@ export function listJob(query: Record<string, any>) {
export function getJob(jobId: string | number) {
return request({
url: `/monitor/job/${jobId}`,
method: 'get',
method: 'GET',
});
}
@@ -47,7 +47,7 @@ export function getJob(jobId: string | number) {
export function addJob(data: Record<string, any>) {
return request({
url: '/monitor/job',
method: 'post',
method: 'POST',
data: data,
});
}
@@ -60,7 +60,7 @@ export function addJob(data: Record<string, any>) {
export function updateJob(data: Record<string, any>) {
return request({
url: '/monitor/job',
method: 'put',
method: 'PUT',
data: data,
});
}
@@ -73,7 +73,7 @@ export function updateJob(data: Record<string, any>) {
export function delJob(jobId: string | number) {
return request({
url: `/monitor/job/${jobId}`,
method: 'delete',
method: 'DELETE',
});
}
@@ -85,14 +85,14 @@ export function delJob(jobId: string | number) {
*/
export function changeJobStatus(
jobId: string | number,
status: string | number
statusFlag: string | number
) {
return request({
url: '/monitor/job/changeStatus',
method: 'put',
url: '/monitor/job/status',
method: 'PUT',
data: {
jobId,
status,
statusFlag,
},
});
}
@@ -105,7 +105,7 @@ export function changeJobStatus(
export function runJob(jobId: string) {
return request({
url: `/monitor/job/run/${jobId}`,
method: 'put',
method: 'PUT',
});
}
@@ -115,7 +115,7 @@ export function runJob(jobId: string) {
*/
export function resetQueueJob() {
return request({
url: '/monitor/job/resetQueueJob',
method: 'put',
url: '/monitor/job/reset',
method: 'PUT',
});
}

View File

@@ -5,13 +5,11 @@ import { request } from '@/plugins/http-fetch';
* @param query 查询参数
* @returns bolb
*/
export function exportJobLog(
query: Record<string, any>
) {
export function exportJobLog(query: Record<string, any>) {
return request({
url: '/monitor/jobLog/export',
method: 'post',
data: query,
url: '/monitor/job/log/export',
method: 'GET',
params: query,
responseType: 'blob',
});
}
@@ -23,8 +21,8 @@ export function exportJobLog(
*/
export function listJobLog(query: Record<string, any>) {
return request({
url: '/monitor/jobLog/list',
method: 'get',
url: '/monitor/job/log/list',
method: 'GET',
params: query,
});
}
@@ -36,8 +34,8 @@ export function listJobLog(query: Record<string, any>) {
*/
export function delJobLog(jobLogId: string) {
return request({
url: `/monitor/jobLog/${jobLogId}`,
method: 'delete',
url: `/monitor/job/log/${jobLogId}`,
method: 'DELETE',
});
}
@@ -47,7 +45,7 @@ export function delJobLog(jobLogId: string) {
*/
export function cleanJobLog() {
return request({
url: '/monitor/jobLog/clean',
method: 'delete',
url: '/monitor/job/log/clean',
method: 'DELETE',
});
}

View File

@@ -4,7 +4,7 @@ import { request } from '@/plugins/http-fetch';
export function getLoad(query: Record<string, any>) {
return request({
url: '/monitor/load',
method: 'get',
method: 'GET',
params: query,
timeout: 60_000,
});

View File

@@ -7,8 +7,8 @@ import { request } from '@/plugins/http-fetch';
*/
export function listOnline(query: Record<string, any>) {
return request({
url: '/monitor/online/list',
method: 'get',
url: '/monitor/user-online/list',
method: 'GET',
params: query,
});
}
@@ -20,7 +20,7 @@ export function listOnline(query: Record<string, any>) {
*/
export function forceLogout(tokenId: string) {
return request({
url: `/monitor/online/${tokenId}`,
method: 'delete',
url: `/monitor/user-online/logout/${tokenId}`,
method: 'DELETE',
});
}

View File

@@ -3,8 +3,7 @@ import { request } from '@/plugins/http-fetch';
/**服务器服务信息 */
export function getSystemInfo() {
return request({
url: '/monitor/system-info',
method: 'get',
timeout: 60_000,
url: '/monitor/system',
method: 'GET',
});
}

View File

@@ -4,7 +4,7 @@ import { request } from '@/plugins/http-fetch';
export function getGraphGroups() {
return request({
url: '/chart/graph/groups',
method: 'get',
method: 'GET',
});
}
@@ -12,7 +12,7 @@ export function getGraphGroups() {
export function getGraphData(group: string) {
return request({
url: '/chart/graph',
method: 'get',
method: 'GET',
params: {
group,
},
@@ -23,7 +23,7 @@ export function getGraphData(group: string) {
export function saveGraphData(group: string, data: Record<string, any>) {
return request({
url: '/chart/graph',
method: 'post',
method: 'POST',
data: {
group,
data,
@@ -35,6 +35,6 @@ export function saveGraphData(group: string, data: Record<string, any>) {
export function delGraphData(group: string) {
return request({
url: `/chart/graph/${group}`,
method: 'delete',
method: 'DELETE',
});
}

View File

@@ -1,3 +1,4 @@
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
import { request } from '@/plugins/http-fetch';
/**
@@ -5,10 +6,11 @@ import { request } from '@/plugins/http-fetch';
* @param query 查询参数
* @returns object
*/
export function getAllNeConfig(neType: string) {
export function getAllNeConfig(neType: string, neId: string) {
return request({
url: `/ne/config/list/${neType}`,
method: 'get',
method: 'GET',
params: { neId },
timeout: 60_000,
});
}
@@ -22,7 +24,7 @@ export function getNeConfigData(params: Record<string, any>) {
return request({
url: `/ne/config/data`,
params,
method: 'get',
method: 'GET',
});
}
@@ -34,7 +36,7 @@ export function getNeConfigData(params: Record<string, any>) {
export function editNeConfigData(data: Record<string, any>) {
return request({
url: `/ne/config/data`,
method: 'put',
method: 'PUT',
data: data,
});
}
@@ -47,7 +49,7 @@ export function editNeConfigData(data: Record<string, any>) {
export function addNeConfigData(data: Record<string, any>) {
return request({
url: `/ne/config/data`,
method: 'post',
method: 'POST',
data: data,
});
}
@@ -60,7 +62,57 @@ export function addNeConfigData(data: Record<string, any>) {
export function delNeConfigData(params: Record<string, any>) {
return request({
url: `/ne/config/data`,
method: 'delete',
method: 'DELETE',
params,
});
}
/**
* 从参数配置PCF中获取对应信息提供给PCF用户策略输入框
* @param neId
* @returns object {pccRules,sessionRules,qosTemplate,headerEnrichTemplate,serviceAreaRestriction}
*/
export async function getPCFRule(neId: any) {
const paramNameArr = [
'pccRules',
'sessionRules',
'qosTemplate',
'headerEnrichTemplate',
'serviceAreaRestriction',
];
const reqArr = [];
for (const paramName of paramNameArr) {
reqArr.push(
request({
url: `/ne/config/data`,
params: { neType: 'PCF', neId, paramName },
method: 'GET',
})
);
}
return await Promise.allSettled(reqArr).then(resArr => {
// 规则数据
const obj: any = {};
resArr.forEach((item, i: number) => {
if (item.status === 'fulfilled') {
const res = item.value;
if (res.code === RESULT_CODE_SUCCESS) {
const key = paramNameArr[i];
obj[key] = res.data.map((item: any) => {
if ('qosTemplate' === key) {
return { value: item.qosId, label: item.qosId };
}
if ('headerEnrichTemplate' === key) {
return { value: item.templateName, label: item.templateName };
}
if ('serviceAreaRestriction' === key) {
return { value: item.name, label: item.name };
}
return { value: item.ruleId, label: item.ruleId };
});
}
}
});
return obj;
});
}

View File

@@ -1,4 +1,6 @@
import { CACHE_SESSION_CRYPTO_API } from '@/constants/cache-keys-constants';
import { request } from '@/plugins/http-fetch';
import { sessionGet } from '@/utils/cache-session-utils';
/**
* 网元配置文件备份记录列表
@@ -8,7 +10,7 @@ import { request } from '@/plugins/http-fetch';
export function listNeConfigBackup(query: Record<string, any>) {
return request({
url: '/ne/config/backup/list',
method: 'get',
method: 'GET',
params: query,
});
}
@@ -21,7 +23,7 @@ export function listNeConfigBackup(query: Record<string, any>) {
export function updateNeConfigBackup(data: Record<string, any>) {
return request({
url: '/ne/config/backup',
method: 'put',
method: 'PUT',
data: data,
});
}
@@ -34,7 +36,7 @@ export function updateNeConfigBackup(data: Record<string, any>) {
export async function downNeConfigBackup(id: string) {
return await request({
url: '/ne/config/backup/download',
method: 'get',
method: 'GET',
params: { id },
responseType: 'blob',
timeout: 180_000,
@@ -49,7 +51,7 @@ export async function downNeConfigBackup(id: string) {
export async function delNeConfigBackup(id: string) {
return request({
url: '/ne/config/backup',
method: 'delete',
method: 'DELETE',
params: { id },
});
}
@@ -62,7 +64,7 @@ export async function delNeConfigBackup(id: string) {
export function exportNeConfigBackup(data: Record<string, any>) {
return request({
url: '/ne/config/backup/export',
method: 'post',
method: 'POST',
data: data,
responseType: 'blob',
timeout: 180_000,
@@ -77,7 +79,7 @@ export function exportNeConfigBackup(data: Record<string, any>) {
export function importNeConfigBackup(data: Record<string, any>) {
return request({
url: '/ne/config/backup/import',
method: 'post',
method: 'POST',
data: data,
});
}
}

View File

@@ -8,7 +8,7 @@ import { request } from '@/plugins/http-fetch';
export function listNeHost(query: Record<string, any>) {
return request({
url: '/ne/host/list',
method: 'get',
method: 'GET',
params: query,
});
}
@@ -21,7 +21,7 @@ export function listNeHost(query: Record<string, any>) {
export function getNeHost(hostId: string | number) {
return request({
url: `/ne/host/${hostId}`,
method: 'get',
method: 'GET',
});
}
@@ -33,7 +33,7 @@ export function getNeHost(hostId: string | number) {
export function addNeHost(data: Record<string, any>) {
return request({
url: '/ne/host',
method: 'post',
method: 'POST',
data: data,
});
}
@@ -46,7 +46,7 @@ export function addNeHost(data: Record<string, any>) {
export function updateNeHost(data: Record<string, any>) {
return request({
url: '/ne/host',
method: 'put',
method: 'PUT',
data: data,
});
}
@@ -59,7 +59,7 @@ export function updateNeHost(data: Record<string, any>) {
export function delNeHost(hostId: string | number) {
return request({
url: `/ne/host/${hostId}`,
method: 'delete',
method: 'DELETE',
});
}
@@ -71,7 +71,7 @@ export function delNeHost(hostId: string | number) {
export function testNeHost(data: Record<string, any>) {
return request({
url: '/ne/host/test',
method: 'post',
method: 'POST',
data: data,
});
}
@@ -84,7 +84,7 @@ export function testNeHost(data: Record<string, any>) {
export function neHostCheckInfo(data: Record<string, any>) {
return request({
url: '/ne/host/checkBySSH',
method: 'post',
method: 'POST',
data: data,
});
}
@@ -97,7 +97,7 @@ export function neHostCheckInfo(data: Record<string, any>) {
export function neHostAuthorizedRSA(data: Record<string, any>) {
return request({
url: '/ne/host/authorizedBySSH',
method: 'post',
method: 'POST',
data: data,
});
}

View File

@@ -8,7 +8,7 @@ import { request } from '@/plugins/http-fetch';
export function listNeHostCmd(query: Record<string, any>) {
return request({
url: '/ne/hostCmd/list',
method: 'get',
method: 'GET',
params: query,
});
}
@@ -21,7 +21,7 @@ export function listNeHostCmd(query: Record<string, any>) {
export function getNeHostCmd(cmdId: string | number) {
return request({
url: `/ne/hostCmd/${cmdId}`,
method: 'get',
method: 'GET',
});
}
@@ -33,7 +33,7 @@ export function getNeHostCmd(cmdId: string | number) {
export function addNeHostCmd(data: Record<string, any>) {
return request({
url: '/ne/hostCmd',
method: 'post',
method: 'POST',
data: data,
});
}
@@ -46,7 +46,7 @@ export function addNeHostCmd(data: Record<string, any>) {
export function updateNeHostCmd(data: Record<string, any>) {
return request({
url: '/ne/hostCmd',
method: 'put',
method: 'PUT',
data: data,
});
}
@@ -59,6 +59,6 @@ export function updateNeHostCmd(data: Record<string, any>) {
export function delNeHostCmd(cmdId: string | number) {
return request({
url: `/ne/hostCmd/${cmdId}`,
method: 'delete',
method: 'DELETE',
});
}

View File

@@ -10,7 +10,7 @@ import { request } from '@/plugins/http-fetch';
export function listNeInfo(query: Record<string, any>) {
return request({
url: '/ne/info/list',
method: 'get',
method: 'GET',
params: query,
timeout: 60_000,
});
@@ -24,7 +24,7 @@ export function listNeInfo(query: Record<string, any>) {
export function getNeInfo(infoId: string | number) {
return request({
url: `/ne/info/${infoId}`,
method: 'get',
method: 'GET',
});
}
@@ -36,7 +36,7 @@ export function getNeInfo(infoId: string | number) {
export function addNeInfo(data: Record<string, any>) {
return request({
url: `/ne/info`,
method: 'post',
method: 'POST',
data: data,
crypto: sessionGet(CACHE_SESSION_CRYPTO_API) !== 'false',
timeout: 30_000,
@@ -51,7 +51,7 @@ export function addNeInfo(data: Record<string, any>) {
export function updateNeInfo(data: Record<string, any>) {
return request({
url: `/ne/info`,
method: 'put',
method: 'PUT',
data: data,
crypto: sessionGet(CACHE_SESSION_CRYPTO_API) !== 'false',
timeout: 30_000,
@@ -66,7 +66,7 @@ export function updateNeInfo(data: Record<string, any>) {
export function delNeInfo(infoIds: string | number) {
return request({
url: `/ne/info/${infoIds}`,
method: 'delete',
method: 'DELETE',
timeout: 60_000,
});
}
@@ -79,7 +79,7 @@ export function delNeInfo(infoIds: string | number) {
export function listAllNeInfo(query: Record<string, any>) {
return request({
url: '/ne/info/listAll',
method: 'get',
method: 'GET',
params: query,
timeout: 60_000,
});
@@ -94,7 +94,7 @@ export function listAllNeInfo(query: Record<string, any>) {
export function stateNeInfo(neType: string, neId: string) {
return request({
url: '/ne/info/state',
method: 'get',
method: 'GET',
params: { neType, neId },
});
}
@@ -108,7 +108,7 @@ export function stateNeInfo(neType: string, neId: string) {
export function getNeInfoByTypeAndID(neType: string, neId: string) {
return request({
url: '/ne/info/byTypeAndID',
method: 'get',
method: 'GET',
params: { neType, neId },
});
}
@@ -122,7 +122,7 @@ export function getNeInfoByTypeAndID(neType: string, neId: string) {
export function getOAMFile(neType: string, neId: string) {
return request({
url: '/ne/info/oamFile',
method: 'get',
method: 'GET',
params: { neType, neId },
});
}
@@ -138,7 +138,7 @@ export function getOAMFile(neType: string, neId: string) {
export function saveOAMFile(data: Record<string, any>) {
return request({
url: `/ne/info/oamFile`,
method: 'put',
method: 'PUT',
data: data,
timeout: 60_000,
});
@@ -151,7 +151,7 @@ export function saveOAMFile(data: Record<string, any>) {
export function getPara5GFilee() {
return request({
url: '/ne/info/para5GFile',
method: 'get',
method: 'GET',
});
}
@@ -164,7 +164,7 @@ export function getPara5GFilee() {
export function savePara5GFile(data: Record<string, any>) {
return request({
url: `/ne/info/para5GFile`,
method: 'put',
method: 'PUT',
data: data,
timeout: 60_000,
});
@@ -178,7 +178,7 @@ export function savePara5GFile(data: Record<string, any>) {
export function serviceNeAction(data: Record<string, any>) {
return request({
url: `/ne/action/service`,
method: 'put',
method: 'PUT',
data: data,
timeout: 60_000,
});

View File

@@ -8,7 +8,7 @@ import { request } from '@/plugins/http-fetch';
export function listNeLicense(query: Record<string, any>) {
return request({
url: '/ne/license/list',
method: 'get',
method: 'GET',
params: query,
timeout: 60_000,
});
@@ -22,7 +22,7 @@ export function listNeLicense(query: Record<string, any>) {
export function getNeLicense(licenseId: string | number) {
return request({
url: `/ne/license/${licenseId}`,
method: 'get',
method: 'GET',
});
}
@@ -35,7 +35,7 @@ export function getNeLicense(licenseId: string | number) {
export function getNeLicenseByTypeAndID(neType: string, neId: string) {
return request({
url: `/ne/license/byTypeAndID`,
method: 'get',
method: 'GET',
params: { neType, neId },
});
}
@@ -49,7 +49,7 @@ export function getNeLicenseByTypeAndID(neType: string, neId: string) {
export function codeNeLicense(neType: string, neId: string) {
return request({
url: `/ne/license/code`,
method: 'get',
method: 'GET',
params: { neType, neId },
});
}
@@ -62,7 +62,7 @@ export function codeNeLicense(neType: string, neId: string) {
export function changeNeLicense(data: Record<string, any>) {
return request({
url: `/ne/license/change`,
method: 'post',
method: 'POST',
data: data,
timeout: 180_000,
});
@@ -77,7 +77,7 @@ export function changeNeLicense(data: Record<string, any>) {
export function stateNeLicense(neType: string, neId: string) {
return request({
url: `/ne/license/state`,
method: 'get',
method: 'GET',
params: { neType, neId },
});
}

View File

@@ -8,7 +8,7 @@ import { request } from '@/plugins/http-fetch';
export function listNeSoftware(query: Record<string, any>) {
return request({
url: '/ne/software/list',
method: 'get',
method: 'GET',
params: query,
timeout: 60_000,
});
@@ -22,7 +22,7 @@ export function listNeSoftware(query: Record<string, any>) {
export function getNeSoftware(softwareId: string | number) {
return request({
url: `/ne/software/${softwareId}`,
method: 'get',
method: 'GET',
});
}
@@ -34,7 +34,7 @@ export function getNeSoftware(softwareId: string | number) {
export function addNeSoftware(data: Record<string, any>) {
return request({
url: `/ne/software`,
method: 'post',
method: 'POST',
data: data,
repeatSubmit: false,
});
@@ -48,7 +48,7 @@ export function addNeSoftware(data: Record<string, any>) {
export function updateNeSoftware(data: Record<string, any>) {
return request({
url: `/ne/software`,
method: 'put',
method: 'PUT',
data: data,
});
}
@@ -61,7 +61,7 @@ export function updateNeSoftware(data: Record<string, any>) {
export function delNeSoftware(softwareIds: string | number) {
return request({
url: `/ne/software/${softwareIds}`,
method: 'delete',
method: 'DELETE',
timeout: 60_000,
});
}
@@ -74,7 +74,7 @@ export function delNeSoftware(softwareIds: string | number) {
export function newNeVersion(data: Record<string, any>) {
return request({
url: `/ne/software/newNeVersion`,
method: 'post',
method: 'POST',
data: data,
});
}

View File

@@ -8,7 +8,7 @@ import { request } from '@/plugins/http-fetch';
export function listNeVersion(query: Record<string, any>) {
return request({
url: '/ne/version/list',
method: 'get',
method: 'GET',
params: query,
timeout: 60_000,
});
@@ -22,7 +22,7 @@ export function listNeVersion(query: Record<string, any>) {
export function getNeVersion(versionId: string | number) {
return request({
url: `/ne/version/${versionId}`,
method: 'get',
method: 'GET',
});
}
@@ -34,7 +34,7 @@ export function getNeVersion(versionId: string | number) {
export function operateNeVersion(data: Record<string, any>) {
return request({
url: `/ne/version/operate`,
method: 'post',
method: 'POST',
data: data,
timeout: 180_000,
});

View File

@@ -8,7 +8,7 @@ import { request } from '@/plugins/http-fetch';
export function listAMFDataUE(query: Record<string, any>) {
return request({
url: '/neData/amf/ue/list',
method: 'get',
method: 'GET',
params: query,
timeout: 60_000,
});
@@ -22,23 +22,23 @@ export function listAMFDataUE(query: Record<string, any>) {
export function delAMFDataUE(ueIds: string | number) {
return request({
url: `/neData/amf/ue/${ueIds}`,
method: 'delete',
method: 'DELETE',
timeout: 60_000,
});
}
/**
* AMF-UE会话列表导出
* @param data 查询列表条件
* @param query 查询列表条件
* @returns object
*/
export function exportAMFDataUE(data: Record<string, any>) {
export function exportAMFDataUE(query: Record<string, any>) {
return request({
url: '/neData/amf/ue/export',
method: 'post',
data,
method: 'GET',
params: query,
responseType: 'blob',
timeout: 60_000,
timeout: 180_000,
});
}
@@ -50,7 +50,7 @@ export function exportAMFDataUE(data: Record<string, any>) {
export function listAMFNblist(query: Record<string, any>) {
return request({
url: '/neData/amf/nb/list',
method: 'get',
method: 'GET',
params: query,
timeout: 60_000,
});
@@ -64,7 +64,7 @@ export function listAMFNblist(query: Record<string, any>) {
export function listAMFNbStatelist(query: Record<string, any>) {
return request({
url: '/neData/amf/nb/list-cfg',
method: 'get',
method: 'GET',
params: query,
timeout: 60_000,
});
@@ -79,7 +79,7 @@ export function listAMFNbStatelist(query: Record<string, any>) {
export function addAMFNbState(neId: string, data: Record<string, any>) {
return request({
url: `/ne/config/data`,
method: 'post',
method: 'POST',
data: {
neType: 'AMF',
neId: neId,
@@ -99,7 +99,7 @@ export function addAMFNbState(neId: string, data: Record<string, any>) {
export function editAMFNbState(neId: string, data: Record<string, any>) {
return request({
url: `/ne/config/data`,
method: 'put',
method: 'PUT',
data: {
neType: 'AMF',
neId: neId,
@@ -119,7 +119,7 @@ export function editAMFNbState(neId: string, data: Record<string, any>) {
export function delAMFNbState(neId: string, index: string | number) {
return request({
url: `/ne/config/data`,
method: 'delete',
method: 'DELETE',
params: {
neType: 'AMF',
neId: neId,

68
src/api/neData/backup.ts Normal file
View File

@@ -0,0 +1,68 @@
import { request } from '@/plugins/http-fetch';
/**
* 备份文件-获取FTP配置
* @returns object
*/
export function getBackupFTP() {
return request({
url: '/neData/backup/ftp',
method: 'GET',
});
}
/**
* 备份文件-文件FTP发送
* @param data 对象
* @returns object
*/
export function pushBackupFTP(data: Record<string, any>) {
return request({
url: '/neData/backup/ftp',
method: 'POST',
data,
});
}
/**
* 备份文件-更新FTP配置
* @param data 对象
* @returns object
*/
export function updateBackupFTP(data: Record<string, any>) {
return request({
url: '/neData/backup/ftp',
method: 'PUT',
data,
});
}
/**
* 备份文件-导出OMC
* @returns object
*/
export function exportBackupOMC() {
return request({
url: '/neData/backup/export-omc',
method: 'POST',
responseType: 'blob',
timeout: 180_000,
});
}
/**
* 备份文件-导入OMC
* @param filePath 备份文件上传返回的/upload 路径
* @returns object
*/
export function importBackupOMC(filePath: string) {
return request({
url: '/neData/backup/import-omc',
method: 'POST',
data: {
neType: 'OMC',
path: filePath,
},
timeout: 180_000,
});
}

View File

@@ -8,7 +8,7 @@ import { request } from '@/plugins/http-fetch';
export function listIMSDataCDR(query: Record<string, any>) {
return request({
url: '/neData/ims/cdr/list',
method: 'get',
method: 'GET',
params: query,
timeout: 60_000,
});
@@ -22,22 +22,48 @@ export function listIMSDataCDR(query: Record<string, any>) {
export function delIMSDataCDR(cdrIds: string | number) {
return request({
url: `/neData/ims/cdr/${cdrIds}`,
method: 'delete',
method: 'DELETE',
timeout: 60_000,
});
}
/**
* IMS-CDR会话列表导出
* @param data 查询列表条件
* @param query 查询列表条件
* @returns object
*/
export function exportIMSDataCDR(data: Record<string, any>) {
export function exportIMSDataCDR(query: Record<string, any>) {
return request({
url: '/neData/ims/cdr/export',
method: 'post',
data,
method: 'GET',
params: query,
responseType: 'blob',
timeout: 60_000,
timeout: 180_000,
});
}
/**
* SMF-在线订阅用户数量
* @param query 查询参数
* @returns object
*/
export function listIMSSessionNum(neId: string) {
return request({
url: '/neData/ims/session/num',
method: 'GET',
params: { neId },
});
}
/**
* IMS-在线会话用户列表信息
* @param query 查询参数 {neId, imsi, msisdn}
* @returns objectv
*/
export function listIMSSessionList(query: Record<string, any>) {
return request({
url: '/neData/ims/session/list',
method: 'GET',
params: query,
});
}

View File

@@ -8,7 +8,7 @@ import { request } from '@/plugins/http-fetch';
export function listMMEDataUE(query: Record<string, any>) {
return request({
url: '/neData/mme/ue/list',
method: 'get',
method: 'GET',
params: query,
timeout: 60_000,
});
@@ -22,23 +22,23 @@ export function listMMEDataUE(query: Record<string, any>) {
export function delMMEDataUE(ueIds: string | number) {
return request({
url: `/neData/mme/ue/${ueIds}`,
method: 'delete',
method: 'DELETE',
timeout: 60_000,
});
}
/**
* MME-UE会话列表导出
* @param data 查询列表条件
* @param query 查询列表条件
* @returns object
*/
export function exportMMEDataUE(data: Record<string, any>) {
export function exportMMEDataUE(query: Record<string, any>) {
return request({
url: '/neData/mme/ue/export',
method: 'post',
data,
method: 'GET',
params: query,
responseType: 'blob',
timeout: 60_000,
timeout: 180_000,
});
}
@@ -50,7 +50,7 @@ export function exportMMEDataUE(data: Record<string, any>) {
export function listMMENblist(query: Record<string, any>) {
return request({
url: '/neData/mme/nb/list',
method: 'get',
method: 'GET',
params: query,
timeout: 60_000,
});
@@ -64,7 +64,7 @@ export function listMMENblist(query: Record<string, any>) {
export function listMMENbStatelist(query: Record<string, any>) {
return request({
url: '/neData/mme/nb/list-cfg',
method: 'get',
method: 'GET',
params: query,
timeout: 60_000,
});
@@ -79,7 +79,7 @@ export function listMMENbStatelist(query: Record<string, any>) {
export function addMMENbState(neId: string, data: Record<string, any>) {
return request({
url: `/ne/config/data`,
method: 'post',
method: 'POST',
data: {
neType: 'MME',
neId: neId,
@@ -99,7 +99,7 @@ export function addMMENbState(neId: string, data: Record<string, any>) {
export function editMMENbState(neId: string, data: Record<string, any>) {
return request({
url: `/ne/config/data`,
method: 'put',
method: 'PUT',
data: {
neType: 'MME',
neId: neId,
@@ -119,7 +119,7 @@ export function editMMENbState(neId: string, data: Record<string, any>) {
export function delMMENbState(neId: string, index: string | number) {
return request({
url: `/ne/config/data`,
method: 'delete',
method: 'DELETE',
params: {
neType: 'MME',
neId: neId,

View File

@@ -8,7 +8,7 @@ import { request } from '@/plugins/http-fetch';
export function listNBState(query: Record<string, any>) {
return request({
url: '/neData/nb-state/list',
method: 'get',
method: 'GET',
params: query,
timeout: 60_000,
});
@@ -16,15 +16,15 @@ export function listNBState(query: Record<string, any>) {
/**
* 历史记录列表导出
* @param data 查询列表条件
* @param query 查询列表条件
* @returns object
*/
export function exportNBState(data: Record<string, any>) {
export function exportNBState(query: Record<string, any>) {
return request({
url: '/neData/nb-state/export',
method: 'post',
data,
method: 'GET',
params: query,
responseType: 'blob',
timeout: 60_000,
timeout: 180_000,
});
}

82
src/api/neData/pcf.ts Normal file
View File

@@ -0,0 +1,82 @@
import { request } from '@/plugins/http-fetch';
/**
* PCF-策略配置列表
* @param query 查询参数
* @returns object
*/
export function listPCFRule(query: Record<string, any>) {
return request({
url: '/neData/pcf/rule/list',
method: 'GET',
params: query,
timeout: 60_000,
});
}
/**
* PCF-策略配置添加
* @param data 参数
* @returns object
*/
export function addPCFRule(data: Record<string, any>) {
return request({
url: `/neData/pcf/rule`,
method: 'POST',
data,
});
}
/**
* PCF-策略配置更新
* @param data 参数
* @returns object
*/
export function editPCFRule(data: Record<string, any>) {
return request({
url: `/neData/pcf/rule`,
method: 'PUT',
data,
});
}
/**
* PCF-策略配置删除
*@param data 参数
* @returns object
*/
export function delPCFRule(data: Record<string, any>) {
return request({
url: `/neData/pcf/rule`,
method: 'DELETE',
params: data,
});
}
/**
* PCF-策略配置导出
* @param data 参数{ neId, fileType }
* @returns object
*/
export function exportPCFRule(data: Record<string, any>) {
return request({
url: '/neData/pcf/rule/export',
method: 'GET',
params: data,
responseType: 'blob',
timeout: 180_000,
});
}
/**
* PCF-策略配置导入
* @param data 参数
* @returns object
*/
export function importPCFRule(data: Record<string, any>) {
return request({
url: '/neData/pcf/rule/import',
method: 'PUT',
data,
});
}

View File

@@ -8,7 +8,7 @@ import { request } from '@/plugins/http-fetch';
export function listSGWCDataCDR(query: Record<string, any>) {
return request({
url: '/neData/sgwc/cdr/list',
method: 'get',
method: 'GET',
params: query,
timeout: 60_000,
});
@@ -22,22 +22,22 @@ export function listSGWCDataCDR(query: Record<string, any>) {
export function delSGWCDataCDR(cdrIds: string | number) {
return request({
url: `/neData/sgwc/cdr/${cdrIds}`,
method: 'delete',
method: 'DELETE',
timeout: 60_000,
});
}
/**
* SGWC-CDR会话列表导出
* @param data 查询列表条件
* @param query 查询列表条件
* @returns object
*/
export function exportSGWCDataCDR(data: Record<string, any>) {
export function exportSGWCDataCDR(query: Record<string, any>) {
return request({
url: '/neData/sgwc/cdr/export',
method: 'post',
data,
method: 'GET',
params: query,
responseType: 'blob',
timeout: 60_000,
timeout: 180_000,
});
}

View File

@@ -8,7 +8,7 @@ import { request } from '@/plugins/http-fetch';
export function listSMFDataCDR(query: Record<string, any>) {
return request({
url: '/neData/smf/cdr/list',
method: 'get',
method: 'GET',
params: query,
timeout: 60_000,
});
@@ -22,23 +22,23 @@ export function listSMFDataCDR(query: Record<string, any>) {
export function delSMFDataCDR(cdrIds: string | number) {
return request({
url: `/neData/smf/cdr/${cdrIds}`,
method: 'delete',
method: 'DELETE',
timeout: 60_000,
});
}
/**
* SMF-CDR会话列表导出
* @param data 查询列表条件
* @param query 查询列表条件
* @returns object
*/
export function exportSMFDataCDR(data: Record<string, any>) {
export function exportSMFDataCDR(query: Record<string, any>) {
return request({
url: '/neData/smf/cdr/export',
method: 'post',
data,
method: 'GET',
params: query,
responseType: 'blob',
timeout: 60_000,
timeout: 180_000,
});
}
@@ -50,20 +50,20 @@ export function exportSMFDataCDR(data: Record<string, any>) {
export function listSMFSubNum(neId: string) {
return request({
url: '/neData/smf/sub/num',
method: 'get',
method: 'GET',
params: { neId },
});
}
/**
* SMF-在线订阅用户列表信息
* @param query 查询参数
* @param query 查询参数 {neId, pageNum, imsi, msisdn, upstate}
* @returns object
*/
export function listSMFSubList(query: Record<string, any>) {
return request({
url: '/neData/smf/sub/list',
method: 'get',
method: 'GET',
params: query,
});
}

View File

@@ -8,7 +8,7 @@ import { request } from '@/plugins/http-fetch';
export function listSMSCDataCDR(query: Record<string, any>) {
return request({
url: '/neData/smsc/cdr/list',
method: 'get',
method: 'GET',
params: query,
timeout: 60_000,
});
@@ -22,22 +22,22 @@ export function listSMSCDataCDR(query: Record<string, any>) {
export function delSMSCDataCDR(cdrIds: string | number) {
return request({
url: `/neData/smsc/cdr/${cdrIds}`,
method: 'delete',
method: 'DELETE',
timeout: 60_000,
});
}
/**
* SMSC-CDR会话列表导出
* @param data 查询列表条件
* @param query 查询列表条件
* @returns object
*/
export function exportSMSCDataCDR(data: Record<string, any>) {
export function exportSMSCDataCDR(query: Record<string, any>) {
return request({
url: '/neData/smsc/cdr/export',
method: 'post',
data,
method: 'GET',
params: query,
responseType: 'blob',
timeout: 60_000,
timeout: 180_000,
});
}

View File

@@ -8,7 +8,7 @@ import { request } from '@/plugins/http-fetch';
export function resetUDMAuth(neId: string) {
return request({
url: `/neData/udm/auth/resetData/${neId}`,
method: 'put',
method: 'PUT',
timeout: 180_000,
});
}
@@ -21,7 +21,7 @@ export function resetUDMAuth(neId: string) {
export function listUDMAuth(query: Record<string, any>) {
return request({
url: '/neData/udm/auth/list',
method: 'get',
method: 'GET',
params: query,
timeout: 30_000,
});
@@ -36,7 +36,7 @@ export function listUDMAuth(query: Record<string, any>) {
export function getUDMAuth(neId: string, imsi: string) {
return request({
url: `/neData/udm/auth/${neId}/${imsi}`,
method: 'get',
method: 'GET',
});
}
@@ -48,7 +48,7 @@ export function getUDMAuth(neId: string, imsi: string) {
export function addUDMAuth(data: Record<string, any>) {
return request({
url: `/neData/udm/auth/${data.neId}`,
method: 'post',
method: 'POST',
data: data,
timeout: 180_000,
});
@@ -63,7 +63,7 @@ export function addUDMAuth(data: Record<string, any>) {
export function batchAddUDMAuth(data: Record<string, any>, num: number) {
return request({
url: `/neData/udm/auth/${data.neId}/${num}`,
method: 'post',
method: 'POST',
data: data,
timeout: 180_000,
});
@@ -77,7 +77,7 @@ export function batchAddUDMAuth(data: Record<string, any>, num: number) {
export function updateUDMAuth(data: Record<string, any>) {
return request({
url: `/neData/udm/auth/${data.neId}`,
method: 'put',
method: 'PUT',
data: data,
timeout: 180_000,
});
@@ -92,7 +92,7 @@ export function updateUDMAuth(data: Record<string, any>) {
export function delUDMAuth(neId: string, imsi: string) {
return request({
url: `/neData/udm/auth/${neId}/${imsi}`,
method: 'delete',
method: 'DELETE',
timeout: 180_000,
});
}
@@ -107,7 +107,7 @@ export function delUDMAuth(neId: string, imsi: string) {
export function batchDelUDMAuth(neId: string, imsi: string, num: number) {
return request({
url: `/neData/udm/auth/${neId}/${imsi}/${num}`,
method: 'delete',
method: 'DELETE',
timeout: 180_000,
});
}
@@ -120,7 +120,7 @@ export function batchDelUDMAuth(neId: string, imsi: string, num: number) {
export function importUDMAuth(data: Record<string, any>) {
return request({
url: `/neData/udm/auth/import`,
method: 'post',
method: 'POST',
data,
timeout: 180_000,
});
@@ -134,8 +134,22 @@ export function importUDMAuth(data: Record<string, any>) {
export function exportUDMAuth(data: Record<string, any>) {
return request({
url: '/neData/udm/auth/export',
method: 'post',
data,
method: 'GET',
params: data,
responseType: 'blob',
timeout: 180_000,
});
}
/**
* UDM鉴权用户导出DecAuth
* @param neId 网元ID
* @returns bolb
*/
export function exportUDMDecAuth(neId: string) {
return request({
url: `/neData/udm/auth/export-dec?neId=${neId}`,
method: 'GET',
responseType: 'blob',
timeout: 180_000,
});

View File

@@ -8,7 +8,7 @@ import { request } from '@/plugins/http-fetch';
export function resetUDMSub(neId: string) {
return request({
url: `/neData/udm/sub/resetData/${neId}`,
method: 'put',
method: 'PUT',
timeout: 180_000,
});
}
@@ -21,7 +21,7 @@ export function resetUDMSub(neId: string) {
export function listUDMSub(query: Record<string, any>) {
return request({
url: '/neData/udm/sub/list',
method: 'get',
method: 'GET',
params: query,
timeout: 30_000,
});
@@ -36,7 +36,7 @@ export function listUDMSub(query: Record<string, any>) {
export function getUDMSub(neId: string, imsi: string) {
return request({
url: `/neData/udm/sub/${neId}/${imsi}`,
method: 'get',
method: 'GET',
});
}
@@ -48,7 +48,7 @@ export function getUDMSub(neId: string, imsi: string) {
export function addUDMSub(data: Record<string, any>) {
return request({
url: `/neData/udm/sub/${data.neId}`,
method: 'post',
method: 'POST',
data: data,
timeout: 180_000,
});
@@ -63,7 +63,7 @@ export function addUDMSub(data: Record<string, any>) {
export function batchAddUDMSub(data: Record<string, any>, num: number) {
return request({
url: `/neData/udm/sub/${data.neId}/${num}`,
method: 'post',
method: 'POST',
data: data,
timeout: 180_000,
});
@@ -77,7 +77,7 @@ export function batchAddUDMSub(data: Record<string, any>, num: number) {
export function updateUDMSub(data: Record<string, any>) {
return request({
url: `/neData/udm/sub/${data.neId}`,
method: 'put',
method: 'PUT',
data: data,
timeout: 180_000,
});
@@ -91,7 +91,7 @@ export function updateUDMSub(data: Record<string, any>) {
export function delUDMSub(neId: string, imsi: string) {
return request({
url: `/neData/udm/sub/${neId}/${imsi}`,
method: 'delete',
method: 'DELETE',
timeout: 180_000,
});
}
@@ -106,7 +106,7 @@ export function delUDMSub(neId: string, imsi: string) {
export function batchDelUDMSub(neId: string, imsi: string, num: number) {
return request({
url: `/neData/udm/sub/${neId}/${imsi}/${num}`,
method: 'delete',
method: 'DELETE',
timeout: 180_000,
});
}
@@ -119,8 +119,8 @@ export function batchDelUDMSub(neId: string, imsi: string, num: number) {
export function exportUDMSub(data: Record<string, any>) {
return request({
url: '/neData/udm/sub/export',
method: 'post',
data,
method: 'GET',
params: data,
responseType: 'blob',
timeout: 180_000,
});
@@ -134,7 +134,7 @@ export function exportUDMSub(data: Record<string, any>) {
export function importUDMSub(data: Record<string, any>) {
return request({
url: `/neData/udm/sub/import`,
method: 'post',
method: 'POST',
data,
timeout: 180_000,
});

134
src/api/neData/udm_voip.ts Normal file
View File

@@ -0,0 +1,134 @@
import { request } from '@/plugins/http-fetch';
/**
* UDMVOIP用户重载数据
* @param neId 网元ID
* @returns object
*/
export function resetUDMVOIP(neId: string) {
return request({
url: `/neData/udm/voip/resetData/${neId}`,
method: 'PUT',
timeout: 180_000,
});
}
/**
* UDMVOIP用户列表
* @param query 查询参数
* @returns object
*/
export function listUDMVOIP(query: Record<string, any>) {
return request({
url: '/neData/udm/voip/list',
method: 'GET',
params: query,
timeout: 30_000,
});
}
/**
* UDMVOIP用户信息
* @param neId 网元ID
* @param username username
* @returns object
*/
export function getUDMVOIP(neId: string, username: string) {
return request({
url: `/neData/udm/voip/${neId}/${username}`,
method: 'GET',
});
}
/**
* UDMVOIP用户新增
* @param data VOIP对象
* @returns object
*/
export function addUDMVOIP(
neId: string,
data: { username: string; password: string }
) {
return request({
url: `/neData/udm/voip/${neId}`,
method: 'POST',
data: data,
timeout: 180_000,
});
}
/**
* UDMVOIP用户批量新增
* @param data VOIP对象
* @param num 数量
* @returns object
*/
export function batchAddUDMVOIP(
neId: string,
data: { username: string; password: string },
num: number
) {
return request({
url: `/neData/udm/voip/${neId}/${num}`,
method: 'POST',
data: data,
timeout: 180_000,
});
}
/**
* UDMVOIP用户删除
* @param data VOIP对象
* @returns object
*/
export function delUDMVOIP(neId: string, username: string) {
return request({
url: `/neData/udm/voip/${neId}/${username}`,
method: 'DELETE',
timeout: 180_000,
});
}
/**
* UDMVOIP用户批量删除
* @param neId 网元ID
* @param username username
* @param num 数量
* @returns object
*/
export function batchDelUDMVOIP(neId: string, username: string, num: number) {
return request({
url: `/neData/udm/voip/${neId}/${username}/${num}`,
method: 'DELETE',
timeout: 180_000,
});
}
/**
* UDMVOIP用户导出
* @param data 数据参数
* @returns bolb
*/
export function exportUDMVOIP(data: Record<string, any>) {
return request({
url: '/neData/udm/voip/export',
method: 'GET',
params: data,
responseType: 'blob',
timeout: 180_000,
});
}
/**
* UDMVOIP用户导入
* @param data 表单数据对象
* @returns object
*/
export function importUDMVOIP(data: Record<string, any>) {
return request({
url: `/neData/udm/voip/import`,
method: 'POST',
data,
timeout: 180_000,
});
}

View File

@@ -0,0 +1,137 @@
import { request } from '@/plugins/http-fetch';
/**
* UDMVolteIMS用户重载数据
* @param neId 网元ID
* @returns object
*/
export function resetUDMVolteIMS(neId: string) {
return request({
url: `/neData/udm/volte-ims/resetData/${neId}`,
method: 'PUT',
timeout: 180_000,
});
}
/**
* UDMVolteIMS用户列表
* @param query 查询参数
* @returns object
*/
export function listUDMVolteIMS(query: Record<string, any>) {
return request({
url: '/neData/udm/volte-ims/list',
method: 'GET',
params: query,
timeout: 30_000,
});
}
/**
* UDMVolteIMS用户信息
* @param neId 网元ID
* @param imsi IMSI
* @returns object
*/
export function getUDMVolteIMS(neId: string, imsi: string) {
return request({
url: `/neData/udm/volte-ims/${neId}/${imsi}`,
method: 'GET',
});
}
/**
* UDMVolteIMS用户新增
* @param data 签约对象
* @returns object
*/
export function addUDMVolteIMS(data: Record<string, any>) {
return request({
url: `/neData/udm/volte-ims/${data.neId}`,
method: 'POST',
data: data,
timeout: 180_000,
});
}
/**
* UDMVolteIMS用户批量新增
* @param data 签约对象
* @param num 数量
* @returns object
*/
export function batchAddUDMVolteIMS(data: Record<string, any>, num: number) {
return request({
url: `/neData/udm/volte-ims/${data.neId}/${num}`,
method: 'POST',
data: data,
timeout: 180_000,
});
}
/**
* UDMVolteIMS用户删除
* @param neId 网元ID
* @param imsi_msisdn IMSI/MSISDN
* @param tag 标签 0-voip 1-volte
* @returns object
*/
export function delUDMVolteIMS(neId: string, imsi_msisdn: string, tag: string) {
return request({
url: `/neData/udm/volte-ims/${neId}/${imsi_msisdn}`,
method: 'DELETE',
params: { volte: tag },
timeout: 180_000,
});
}
/**
* UDMVolteIMS用户批量删除
* @param neId 网元ID
* @param imsi IMSI
* @param num 数量
* @param tag 标签 0-voip 1-volte
* @returns object
*/
export function batchDelUDMVolteIMS(
neId: string,
imsi: string,
num: number,
tag: string
) {
return request({
url: `/neData/udm/volte-ims/${neId}/${imsi}/${num}`,
method: 'DELETE',
params: { volte: tag },
timeout: 180_000,
});
}
/**
* UDMVolteIMS用户导出
* @param data 数据参数
* @returns bolb
*/
export function exportUDMVolteIMS(data: Record<string, any>) {
return request({
url: '/neData/udm/volte-ims/export',
method: 'GET',
params: data,
responseType: 'blob',
timeout: 180_000,
});
}
/**
* UDMVolteIMS用户导入
* @param data 表单数据对象
* @returns object
*/
export function importUDMVolteIMS(data: Record<string, any>) {
return request({
url: `/neData/udm/volte-ims/import`,
method: 'POST',
data,
timeout: 180_000,
});
}

View File

@@ -1,34 +0,0 @@
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
import { request } from '@/plugins/http-fetch';
import { parseObjLineToHump } from '@/utils/parse-utils';
/**
* 查询列表
* @param query 查询参数
* @returns object
*/
export async function listBase5G(query: Record<string, any>) {
const result = await request({
url: `/api/rest/ueManagement/v1/elementType/${query.neType.toLowerCase()}/objectType/nbInfo`,
method: 'get',
params: query,
});
let data: DataList = {
total: 0,
rows: [],
code: result.code,
msg: result.msg,
};
// 解析数据
if (result.code === RESULT_CODE_SUCCESS && Array.isArray(result.data.data)) {
const rows = parseObjLineToHump(result.data.data);
data.total = rows.length;
data.rows = rows;
}
// 模拟数据
// data.rows = [{"address":"192.168.1.137:38412","id":"217","name":"attach-enb-100000-20","ueNum":0}]
// data.rows = [{address: "192.168.8.223", id: 257, name: "SmallCell", ueNum: 0}]
return data;
}

View File

@@ -1,66 +0,0 @@
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
import { request } from '@/plugins/http-fetch';
import { parseObjLineToHump } from '@/utils/parse-utils';
/**
* 查询列表
* @param query 查询参数
* @returns object
*/
export async function listUEInfoByIMS(query: Record<string, any>) {
query.nbId = query.id;
const result = await request({
url: '/api/rest/ueManagement/v1/elementType/ims/objectType/ueInfo',
method: 'get',
params: query,
});
let data: DataList = {
total: 0,
rows: [],
code: result.code,
msg: result.msg,
};
// 解析数据
if (result.code === RESULT_CODE_SUCCESS && Array.isArray(result.data.data)) {
const rows = parseObjLineToHump(result.data.data);
data.total = rows.length;
data.rows = rows;
}
// 测试数据
// data.rows = [
// {
// activeTime: '2023-11-29 17:04:54',
// barring: 0,
// impu: 'sip:12307551232@ims.mnc000.mcc460.3gppnetwork.org',
// imsi: '460001230000002',
// msisdn: '12307551232',
// regState: 1,
// },
// ];
return data;
}
/**
* 首页查询IMS在线用户数
* @param query 查询参数
* @returns neId
*/
export async function listUENumByIMS(neId: String) {
const result = await request({
url: `/api/rest/ueManagement/v1/elementType/ims/objectType/ueNum?neId=${neId}`,
method: 'get',
});
if (result.code === RESULT_CODE_SUCCESS) {
let num = result.data['ueNum'] || 0;
if (num === 0) {
num = result.data.data['ueNum'] || 0;
}
return Object.assign(result, { data: num });
}
// 模拟数据
// { "ueNum": 0 }
// result.data = 0
return result;
}

View File

@@ -3,37 +3,14 @@ import { request } from '@/plugins/http-fetch';
import { parseObjLineToHump } from '@/utils/parse-utils';
/**
* 查询列表
* @param query 查询参数
* N3IWF-在线订阅用户列表信息
* @param query 查询参数 {imsi}
* @returns object
*/
export async function listN3iwf(query: Record<string, any>) {
const result = await request({
url: '/api/rest/ueManagement/v1/elementType/n3iwf/objectType/ueInfo',
method: 'get',
export function listN3IWFSubList(query: Record<string, any>) {
return request({
url: '/neData/n3iwf/sub/list',
method: 'GET',
params: query,
});
let data: DataList = {
total: 0,
rows: [],
code: result.code,
msg: result.msg,
};
// 解析数据
if (result.code === RESULT_CODE_SUCCESS && Array.isArray(result.data.data)) {
const rows = parseObjLineToHump(result.data.data);
data.total = rows.length;
data.rows = rows;
}
// 模拟数据
// data.rows = [
// {
// "activeTime": "2023-11-29 06:35:43",
// "imsi": "460302072701181",
// "nai": "0460302072701181@nai.epc.mnc030.mcc460.3gppnetwork.org",
// "regState": 1
// }
// ]
return data;
}

View File

@@ -3,25 +3,24 @@ import { request } from '@/plugins/http-fetch';
import { parseObjLineToHump } from '@/utils/parse-utils';
/**
* 查询列表
* NSSF-在线订阅用户列表信息
* @param query 查询参数 {imsi}
* @returns object
*/
export async function listNSSF() {
const result = await request({
url: '/api/rest/ueManagement/v1/elementType/nssf/objectType/subscriptions',
method: 'get',
export function listNSSFSubList() {
return request({
url: '/neData/nssf/sub/list',
method: 'GET',
});
}
/**
* NSSF-可用AMF列表信息
* @returns object
*/
export function listNSSFAmfList() {
return request({
url: '/neData/nssf/amf/list',
method: 'GET',
});
let data: DataList = {
total: 0,
rows: [],
code: result.code,
msg: result.msg,
};
// 解析数据
if (result.code === RESULT_CODE_SUCCESS && Array.isArray(result.data.data)) {
const rows = parseObjLineToHump(result.data.data);
data.total = rows.length;
data.rows = rows;
}
return data;
}

View File

@@ -1,44 +0,0 @@
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
import { request } from '@/plugins/http-fetch';
import { parseObjLineToHump } from '@/utils/parse-utils';
/**
* 查询列表
* @returns object
*/
export async function listNSSFAMF() {
const result = await request({
url: '/api/rest/ueManagement/v1/elementType/nssf/objectType/availableAMFs',
method: 'get',
});
let data: DataList = {
total: 0,
rows: [],
code: result.code,
msg: result.msg,
};
// 解析数据
if (result.code === RESULT_CODE_SUCCESS && Array.isArray(result.data.data)) {
const rows = parseObjLineToHump(result.data.data);
data.total = rows.length;
data.rows = rows;
}
// let testData = {
// total:0,
// rows: [
// {
// nfId: '001',
// amfSetId: '001',
// },
// {
// nfId: '002',
// amfSetId: '[001,002]',
// },
// ],
// code: 1,
// msg:'',
// };
//return testData;
return data;
}

View File

@@ -1,234 +0,0 @@
import {
RESULT_CODE_ERROR,
RESULT_CODE_SUCCESS,
} from '@/constants/result-constants';
import { request } from '@/plugins/http-fetch';
import { parseObjLineToHump } from '@/utils/parse-utils';
/**
* 规则导出
* @param data 表单数据对象
* @returns bolb
*/
export function exportRule(data: Record<string, any>) {
return request({
url: `/api/rest/ueManagement/v1/elementType/pcf/objectType/ueInfo/file/export`,
method: 'get',
params: data,
responseType: 'blob',
timeout: 180_000,
});
}
/**
* 导入规则数据
* @param data 表单数据对象
* @returns object
*/
export function importRuleData(data: Record<string, any>) {
return request({
url: `/api/rest/ueManagement/v1/elementType/pcf/objectType/ueInfo/file/import?neId=${data.neId}&filePath=${data.filePath}&fileType=${data.fileType}`,
method: 'put',
data,
timeout: 60_000,
});
}
/**
* 查询规则列表
* @param query 查询参数
* @returns object
*/
export async function listRules(query: Record<string, any>) {
const result = await request({
url: '/api/rest/ueManagement/v1/elementType/pcf/objectType/ueInfo',
method: 'get',
params: query,
});
let data: DataList = {
total: 0,
rows: [],
code: result.code,
msg: result.msg,
};
// 解析数据
if (result.code === RESULT_CODE_SUCCESS) {
if (result.data?.status) {
return {
code: RESULT_CODE_ERROR,
msg: result.data?.cause,
rows: result.data,
};
}
if (Array.isArray(result.data.data)) {
const rows = parseObjLineToHump(result.data.data);
data.total = rows.length;
data.rows = rows;
}
}
// 模拟数据
// data.rows = [
// {
// "hdrEnrich": "dnn",
// "imsi": "160990100000003",
// "msisdn": "86755900011",
// "pccRules": "internet|ims_sig",
// "qosAudio": "qos_audio",
// "qosVideo": "qos_video",
// "rfsp": 0,
// "sar": "def_sar",
// "sessRules": "internet|ims_sig",
// "uePolicy": "uep_001"
// }
// ]
return data;
}
/**
* 查询规则详细
* @param neId 网元ID
* @returns object
*/
export async function getRule(neId: string, imsi: string) {
const result = await request({
url: `/api/rest/ueManagement/v1/elementType/pcf/objectType/ueInfo?neId=${neId}&imsi=${imsi}`,
method: 'get',
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS && Array.isArray(result.data.data)) {
result.data = result.data.data[0];
}
return result;
}
/**
* 修改规则
* @param data 规则对象
* @returns object
*/
export async function updateRule(data: Record<string, any>) {
const result = await request({
url: `/api/rest/ueManagement/v1/elementType/pcf/objectType/ueInfo?neId=${data.neId}`,
method: 'put',
data: data,
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS && result.data?.status) {
return {
code: RESULT_CODE_ERROR,
msg: result.data?.cause,
data: result.data,
};
}
return result;
}
/**
* 批量修改规则
* @param data 规则对象
* @returns object
*/
export async function batchUpdateRule(data: Record<string, any>) {
const result = await request({
url: `/api/rest/ueManagement/v1/elementType/pcf/objectType/ueInfo/batch/${data.num}?neId=${data.neId}`,
method: 'put',
data: data,
timeout: 60_000,
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS) {
if (result.data?.status) {
return {
code: RESULT_CODE_ERROR,
msg: result.data?.cause,
data: result.data,
};
}
if (result.data?.data) {
result.data = result.data.data;
return result;
}
}
return result;
}
/**
* 新增规则
* @param data 规则对象
* @returns object
*/
export async function addRule(data: Record<string, any>) {
const result = await request({
url: `/api/rest/ueManagement/v1/elementType/pcf/objectType/ueInfo?neId=${data.neId}`,
method: 'post',
data: data,
timeout: 60_000,
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS && result.data?.status) {
return {
code: RESULT_CODE_ERROR,
msg: result.data?.cause,
data: result.data,
};
}
return result;
}
/**
* 批量新增规则
* @param data 规则对象
* @returns object
*/
export async function batchAddRule(data: Record<string, any>) {
const result = await request({
url: `/api/rest/ueManagement/v1/elementType/pcf/objectType/ueInfo/batch/${data.num}?neId=${data.neId}`,
method: 'post',
data: data,
timeout: 60_000,
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS) {
if (result.data?.status) {
return {
code: RESULT_CODE_ERROR,
msg: result.data?.cause,
data: result.data,
};
}
if (result.data?.data) {
result.data = result.data.data;
return result;
}
}
return result;
}
/**
* 删除规则
* @param data 规则对象
* @returns object
*/
export function delRule(neId: string, imsi: string) {
return request({
url: `/api/rest/ueManagement/v1/elementType/pcf/objectType/ueInfo?neId=${neId}&imsi=${imsi}`,
method: 'delete',
timeout: 60_000,
});
}
/**
* 批量删除规则
* @param data 规则对象
* @returns object
*/
export async function batchDelRule(data: Record<string, any>) {
return request({
url: `/api/rest/ueManagement/v1/elementType/pcf/objectType/ueInfo/batch/${data.num}?neId=${data.neId}&imsi=${data.imsi}`,
method: 'delete',
timeout: 60_000,
});
}

View File

@@ -1,111 +0,0 @@
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
import { request } from '@/plugins/http-fetch';
/**
* 查询列表
* @param query 查询参数
* @returns object
*/
export async function listUEInfoBySMF(query: Record<string, any>) {
query.nbId = query.id;
const result = await request({
url: '/api/rest/ueManagement/v1/elementType/smf/objectType/ueInfo',
method: 'get',
params: query,
});
let data: DataList = {
total: 0,
rows: [],
code: result.code,
msg: result.msg,
};
// 解析数据
if (result.code === RESULT_CODE_SUCCESS && result.data) {
if (Array.isArray(result.data.data)) {
const rows = result.data.data;
data.total = rows.length;
data.rows = rows;
} else {
Object.assign(data, result.data);
}
}
// 模拟数据
// data.code = RESULT_CODE_SUCCESS;
// data.total = 2;
// data.rows = [
// {
// imsi: 'imsi-460000100000090',
// msisdn: 'msisdn-12307550090',
// pduSessionInfo: [
// {
// activeTime: '2024-06-19 14:35:26',
// dnn: 'ims',
// ipv4: '10.10.48.8',
// ipv6: '',
// pduSessionID: 6,
// ranN3IP: '192.168.1.137',
// sstSD: '1-000001',
// tai: '46000-001124',
// upState: 'Active',
// upfN3IP: '192.168.1.161',
// },
// {
// activeTime: '2024-06-19 14:35:26',
// dnn: 'cmnet',
// ipv4: '10.10.48.9',
// ipv6: '2001:4860:4860::/64',
// pduSessionID: 7,
// ranN3IP: '192.168.1.137',
// sstSD: '1-000001',
// tai: '46000-001124',
// upState: 'Active',
// upfN3IP: '192.168.1.161',
// },
// ],
// ratType: 'NR',
// },
// {
// imsi: 'imsi-460602072701180',
// msisdn: 'msisdn-123460600080',
// pduSessionInfo: [
// {
// activeTime: '2024-06-19 14:31:09',
// dnn: 'cmnet',
// ipv4: '10.10.48.4',
// ipv6: '',
// pduSessionID: 5,
// ranN3IP: '192.168.8.223',
// sstSD: '1-000001',
// tai: '46060-0001',
// upState: 'Active',
// upfN3IP: '192.168.1.161',
// },
// ],
// ratType: 'EUTRAN',
// },
// ];
return data;
}
/**
* 首页查询SMF在线用户数
* @param query 查询参数
* @returns neId
*/
export async function listUENumBySMF(neId: String) {
const result = await request({
url: `/api/rest/ueManagement/v1/elementType/smf/objectType/ueNum?neId=${neId}`,
method: 'get',
});
if (result.code === RESULT_CODE_SUCCESS) {
return Object.assign(result, {
data: result.data.data['ueNum'],
});
}
// 模拟数据
// { "data": { "ueNum": 0 } }
// result.data = 0
return result;
}

View File

@@ -8,8 +8,8 @@ import { request } from '@/plugins/http-fetch';
export async function listCustomData(query: Record<string, any>) {
// 发起请求
const result = await request({
url: `/pm/kpiC/report`,
method: 'get',
url: `/neData/kpic/data`,
method: 'GET',
params: query,
timeout: 60_000,
});

View File

@@ -1,92 +1,16 @@
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
import { request } from '@/plugins/http-fetch';
import { parseObjLineToHump } from '@/utils/parse-utils';
import { parseDateToStr } from '@/utils/date-utils';
/**
* 查询自定义指标
* @param query 查询参数
* @returns object
*/
// export async function listCustom(query: Record<string, any>) {
// let totalSQL = 'select count(*) as total from pm_custom_title where 1=1 ';
// let rowsSQL = 'select * from pm_custom_title where 1=1 ';
// // 查询
// let querySQL = '';
// if (query.neType) {
// querySQL += ` and ne_type like '%${query.neType}%' `;
// }
// // 排序
// let sortSql = ' order by update_time ';
// if (query.sortOrder === 'asc') {
// sortSql += ' asc ';
// } else {
// sortSql += ' desc ';
// }
// // 分页
// const pageNum = (query.pageNum - 1) * query.pageSize;
// const limtSql = ` limit ${pageNum},${query.pageSize} `;
// // 发起请求
// const result = await request({
// url: `/api/rest/databaseManagement/v1/select/omc_db/pm_custom_title`,
// method: 'get',
// params: {
// totalSQL: totalSQL + querySQL,
// rowsSQL: rowsSQL + querySQL + sortSql + limtSql,
// },
// });
// // 解析数据
// if (result.code === RESULT_CODE_SUCCESS) {
// const data: DataList = {
// total: 0,
// rows: [],
// code: result.code,
// msg: result.msg,
// };
// result.data.data.forEach((item: any) => {
// const itemData = item['pm_custom_title'];
// if (Array.isArray(itemData)) {
// if (itemData.length === 1 && itemData[0]['total'] >= 0) {
// data.total = itemData[0]['total'];
// } else {
// data.rows = itemData.map(v => parseObjLineToHump(v));
// }
// }
// });
// return data;
// }
// return result;
// }
/**
* 新 查询自定义指标
* @param query 查询参数
* @returns object
*/
export async function listCustom(query?: Record<string, any>) {
// 发起请求
const result = await request({
url: `/pm/kpiC/title/totalList`,
method: 'get',
return await request({
url: `/neData/kpic/title/list`,
method: 'GET',
params: query,
});
return result;
}
/**
* 查询自定义指标详细
* @param id 网元ID
* @returns object
*/
export async function getCustom(id: string | number) {
return request({
url: `/pm/kpiC/title/${id}`,
method: 'get',
});
}
/**
@@ -96,8 +20,8 @@ export async function getCustom(id: string | number) {
*/
export function addCustom(data: Record<string, any>) {
return request({
url: `/pm/kpiC/title`,
method: 'post',
url: `/neData/kpic/title`,
method: 'POST',
data: data,
});
}
@@ -109,8 +33,8 @@ export function addCustom(data: Record<string, any>) {
*/
export function updateCustom(data: Record<string, any>) {
return request({
url: `/pm/kpiC/title/${data.id}`,
method: 'put',
url: `/neData/kpic/title`,
method: 'PUT',
data: data,
});
}
@@ -121,7 +45,7 @@ export function updateCustom(data: Record<string, any>) {
*/
export async function delCustom(data: Record<string, any>) {
return request({
url: `/pm/kpiC/title/${data.id}`,
method: 'delete',
url: `/neData/kpic/title?id=${data.id}`,
method: 'DELETE',
});
}

View File

@@ -2,81 +2,6 @@ import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
import { request } from '@/plugins/http-fetch';
import { parseObjLineToHump } from '@/utils/parse-utils';
/**
* Todo 废弃
* 查询黄金指标数据
* @param query 查询参数
* @returns object
*/
export async function listgoldData(query: Record<string, any>) {
let totalSQL = 'select count(*) as total from gold_kpi where 1=1 ';
let rowsSQL =
'SELECT gold_kpi.*,kpi_title.en_title FROM gold_kpi LEFT JOIN kpi_title on gold_kpi.kpi_id=kpi_title.kpi_id where 1=1 ';
// 查询
let querySQL = '';
if (query.neType) {
querySQL += ` and gold_kpi.ne_type like '%${query.neType}%' `;
}
if (query.beginTime) {
querySQL += ` and start_time >= '${query.beginTime}' `;
}
if (query.endTime) {
querySQL += ` and end_time <= '${query.endTime}' `;
}
// 排序
let sortSql = ' order by ';
if (query.sortField) {
sortSql += ` ${query.sortField} `;
} else {
sortSql += ` start_time `;
}
if (query.sortOrder === 'asc') {
sortSql += ' asc ';
} else {
sortSql += ' desc ';
}
// 分页
const pageNum = (query.pageNum - 1) * query.pageSize;
const limtSql = ` limit ${pageNum},${query.pageSize} `;
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/gold_kpi`,
method: 'get',
params: {
totalSQL: totalSQL + querySQL,
rowsSQL: rowsSQL + querySQL + sortSql + limtSql,
},
timeout: 60_000,
});
// 解析数据
if (result.code === RESULT_CODE_SUCCESS) {
const data: DataList = {
total: 0,
rows: [],
code: result.code,
msg: result.msg,
};
result.data.data.forEach((item: any) => {
const itemData = item['gold_kpi'];
if (Array.isArray(itemData)) {
if (itemData.length === 1 && itemData[0]['total'] >= 0) {
data.total = itemData[0]['total'];
} else {
data.rows = itemData.map(v => parseObjLineToHump(v));
}
}
});
return data;
}
return result;
}
/**
* 查询黄金指标数据
* @param query 查询参数
@@ -85,7 +10,7 @@ export async function listgoldData(query: Record<string, any>) {
export async function listKPIData(query: Record<string, any>) {
const result = await request({
url: `/neData/kpi/data`,
method: 'get',
method: 'GET',
params: query,
timeout: 60_000,
});
@@ -102,86 +27,34 @@ export async function getKPITitle(neType: string) {
// 发起请求
const result = await request({
url: `/neData/kpi/title`,
method: 'get',
method: 'GET',
params: { neType },
});
// 解析数据//
return result;
}
/**
* Todo 废弃
* 查询UPF上下行速率数据
* @param query 查询参数
* @returns object
*/
export async function listUPFData(timeArr: any) {
const initTime: Date = new Date();
const twentyFourHoursAgo: Date = new Date(
initTime.getTime() - 10 * 60 * 1000
);
return await Promise.allSettled([
// 获取参数规则
request({
url: `/api/rest/databaseManagement/v1/select/omc_db/gold_kpi`,
method: 'get',
params: {
SQL: `SELECT gold_kpi.*,kpi_title.en_title FROM gold_kpi LEFT JOIN kpi_title on gold_kpi.kpi_id=kpi_title.kpi_id where 1=1 and gold_kpi.kpi_id ='UPF.03' AND timestamp BETWEEN DATE_SUB(NOW(), INTERVAL 10 MINUTE) AND NOW()`,
},
timeout: 60_000,
}),
// 获取对应信息
request({
url: `/api/rest/databaseManagement/v1/select/omc_db/gold_kpi`,
method: 'get',
params: {
SQL: `SELECT gold_kpi.*,kpi_title.en_title FROM gold_kpi LEFT JOIN kpi_title on gold_kpi.kpi_id=kpi_title.kpi_id where 1=1 and gold_kpi.kpi_id ='UPF.06' AND timestamp BETWEEN DATE_SUB(NOW(), INTERVAL 10 MINUTE) AND NOW()`,
},
timeout: 60_000,
}),
]).then(resArr => {
let upData: any = [];
let downData: any = [];
// 规则数据
if (resArr[0].status === 'fulfilled') {
const itemV: any = resArr[0].value;
// 解析数据
if (
itemV.code === RESULT_CODE_SUCCESS &&
Array.isArray(itemV.data?.data)
) {
let itemData = itemV.data.data;
let data = itemData[0]['gold_kpi'];
if (Array.isArray(data)) {
try {
upData = data.map(v => parseObjLineToHump(v));
} catch (error) {
console.error(error);
}
}
}
}
if (resArr[1].status === 'fulfilled') {
const itemV = resArr[1].value;
// 解析数据
if (
itemV.code === RESULT_CODE_SUCCESS &&
Array.isArray(itemV.data?.data)
) {
let itemData = itemV.data.data;
const data = itemData[0]['gold_kpi'];
if (Array.isArray(data)) {
try {
downData = data.map(v => parseObjLineToHump(v));
} catch (error) {
console.error(error);
}
}
}
}
return { upData, downData };
//忙时呼叫
export async function getbusyhour(query: Record<string, any>) {
return request({
url: '/neData/ims/kpi/busy-hour',
method: 'GET',
params: query,
});
}
//MOS指标
export async function getMosHour(query: Record<string, any>) {
return request({
url: '/neData/ims/cdr/mos-hour',
method: 'GET',
params: query,
});
}
//CCT指标
export async function getCctHour(query: Record<string, any>) {
return request({
url: '/neData/ims/cdr/cct-hour',
method: 'GET',
params: query,
});
}

View File

@@ -0,0 +1,51 @@
import { request } from '@/plugins/http-fetch';
/**
* 查询统计指标
* @param query 查询参数
* @returns object
*/
export async function listKPITitle(query?: Record<string, any>) {
return await request({
url: `/neData/kpi/title/list`,
method: 'GET',
params: query,
});
}
/**
* 新增统计指标
* @param data 网元对象
* @returns object
*/
export function addKPITitle(data: Record<string, any>) {
return request({
url: `/neData/kpi/title`,
method: 'POST',
data: data,
});
}
/**
* 修改统计指标
* @param data 网元对象
* @returns object
*/
export function updateKPITitle(data: Record<string, any>) {
return request({
url: `/neData/kpi/title`,
method: 'PUT',
data: data,
});
}
/**
* 删除统计指标
* @returns object
*/
export async function delKPITitle(id: string) {
return request({
url: `/neData/kpi/title?id=${id}`,
method: 'DELETE',
});
}

View File

@@ -30,10 +30,10 @@ export async function listperfData(query: Record<string, any>) {
let sortSql = ' order by ';
if (query.sortField) {
sortSql += ` ${query.sortField} `;
}else{
} else {
sortSql += ` start_time `;
}
if (query.sortOrder === 'asc') {
sortSql += ' asc ';
} else {
@@ -47,7 +47,7 @@ export async function listperfData(query: Record<string, any>) {
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/measure_data`,
method: 'get',
method: 'GET',
params: {
totalSQL: totalSQL + querySQL,
rowsSQL: rowsSQL + querySQL + sortSql + limtSql,
@@ -56,9 +56,8 @@ export async function listperfData(query: Record<string, any>) {
// 解析数据
if (result.code === RESULT_CODE_SUCCESS) {
const data: DataList = {
total: 0,
rows: [],
const data = {
data: { total: 0, rows: [] as any },
code: result.code,
msg: result.msg,
};
@@ -66,9 +65,9 @@ export async function listperfData(query: Record<string, any>) {
const itemData = item['measure_data'];
if (Array.isArray(itemData)) {
if (itemData.length === 1 && itemData[0]['total'] >= 0) {
data.total = itemData[0]['total'];
data.data.total = itemData[0]['total'];
} else {
data.rows = itemData.map(v => parseObjLineToHump(v));
data.data.rows = itemData.map(v => parseObjLineToHump(v));
}
}
});

View File

@@ -32,7 +32,7 @@ export async function listPerfThreshold(query: Record<string, any>) {
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/measure_threshold`,
method: 'get',
method: 'GET',
params: {
totalSQL: totalSQL + querySQL,
rowsSQL: rowsSQL + querySQL + sortSql + limtSql,
@@ -41,9 +41,8 @@ export async function listPerfThreshold(query: Record<string, any>) {
// 解析数据
if (result.code === RESULT_CODE_SUCCESS) {
const data: DataList = {
total: 0,
rows: [],
const data = {
data: { total: 0, rows: [] as any },
code: result.code,
msg: result.msg,
};
@@ -51,9 +50,9 @@ export async function listPerfThreshold(query: Record<string, any>) {
const itemData = item['measure_threshold'];
if (Array.isArray(itemData)) {
if (itemData.length === 1 && itemData[0]['total'] >= 0) {
data.total = itemData[0]['total'];
data.data.total = itemData[0]['total'];
} else {
data.rows = itemData.map(v => parseObjLineToHump(v));
data.data.rows = itemData.map(v => parseObjLineToHump(v));
}
}
});
@@ -71,7 +70,7 @@ export async function getPerfThre(id: string | number) {
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/measure_threshold`,
method: 'get',
method: 'GET',
params: {
SQL: `select * from measure_threshold where id = ${id}`,
},
@@ -102,7 +101,7 @@ export function addPerfThre(data: Record<string, any>) {
return request({
url: `/api/rest/databaseManagement/v1/omc_db/measure_threshold`,
method: 'post',
method: 'POST',
data: { measure_threshold: [obj] },
});
}
@@ -122,7 +121,7 @@ export function updatePerfThre(data: Record<string, any>) {
};
return request({
url: `/api/rest/databaseManagement/v1/omc_db/measure_threshold?WHERE=id=${data.id}`,
method: 'put',
method: 'PUT',
data: { measure_threshold: obj },
});
}
@@ -135,7 +134,7 @@ export function updatePerfThre(data: Record<string, any>) {
export async function delPerfThre(data: Record<string, any>) {
return request({
url: `/api/rest/databaseManagement/v1/omc_db/measure_threshold?WHERE=id=${data.id}`,
method: 'delete',
method: 'DELETE',
});
}
@@ -147,7 +146,7 @@ export async function getNePerformanceList() {
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/elementType/omc_db/objectType/measure_title`,
method: 'get',
method: 'GET',
params: {
SQL: `SELECT * FROM measure_title`,
},
@@ -170,7 +169,7 @@ export async function getNePerformanceList() {
export function threRun(data: Record<string, any>) {
return request({
url: `/api/rest/databaseManagement/v1/omc_db/measure_threshold?WHERE=id=${data.id}`,
method: 'put',
method: 'PUT',
data: { data: { status: 'Active' } },
});
}
@@ -183,7 +182,7 @@ export function threRun(data: Record<string, any>) {
export function threStop(data: Record<string, any>) {
return request({
url: `/api/rest/databaseManagement/v1/omc_db/measure_threshold?WHERE=id=${data.id}`,
method: 'put',
method: 'PUT',
data: { data: { status: 'Inactive' } },
});
}

View File

@@ -32,7 +32,7 @@ export async function listPerfTask(query: Record<string, any>) {
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/measure_task`,
method: 'get',
method: 'GET',
params: {
totalSQL: totalSQL + querySQL,
rowsSQL: rowsSQL + querySQL + sortSql+ limtSql,
@@ -41,9 +41,8 @@ export async function listPerfTask(query: Record<string, any>) {
// 解析数据
if (result.code === RESULT_CODE_SUCCESS) {
const data: DataList = {
total: 0,
rows: [],
const data = {
data: { total: 0, rows: [] as any },
code: result.code,
msg: result.msg,
};
@@ -51,9 +50,9 @@ export async function listPerfTask(query: Record<string, any>) {
const itemData = item['measure_task'];
if (Array.isArray(itemData)) {
if (itemData.length === 1 && itemData[0]['total'] >= 0) {
data.total = itemData[0]['total'];
data.data.total = itemData[0]['total'];
} else {
data.rows = itemData.map(v => parseObjLineToHump(v));
data.data.rows = itemData.map(v => parseObjLineToHump(v));
}
}
});
@@ -71,7 +70,7 @@ export async function getPerfTask(id: string | number) {
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/select/omc_db/measure_task`,
method: 'get',
method: 'GET',
params: {
SQL: `select * from measure_task where id = ${id}`,
},
@@ -120,7 +119,7 @@ export function addPerfTask(data: Record<string, any>) {
return request({
url: `/api/rest/databaseManagement/v1/omc_db/measure_task`,
method: 'post',
method: 'POST',
data: { measure_task: [obj] },
});
}
@@ -158,7 +157,7 @@ export function updatePerfTask(data: Record<string, any>) {
};
return request({
url: `/api/rest/databaseManagement/v1/omc_db/measure_task?WHERE=id=${data.id}`,
method: 'put',
method: 'PUT',
data: { measure_task: obj },
});
}
@@ -173,7 +172,7 @@ export async function delPerfTask(data: Record<string, any>) {
url: `/api/rest/performanceManagement/v1/elementType/${data.neType.toLowerCase()}/objectType/measureTask?id=${
data.id
}`,
method: 'delete',
method: 'DELETE',
});
}
@@ -185,7 +184,7 @@ export async function getNePerformanceList() {
// 发起请求
const result = await request({
url: `/api/rest/databaseManagement/v1/elementType/omc_db/objectType/measure_title`,
method: 'get',
method: 'GET',
params: {
SQL: `SELECT * FROM measure_title`,
},
@@ -209,7 +208,7 @@ export async function getNePerformanceList() {
export function taskRun(data: Record<string, any>) {
return request({
url: `/api/rest/performanceManagement/v1/elementType/${data.neType.toLowerCase()}/objectType/measureTask?id=${data.id}`,
method: 'post',
method: 'POST',
});
}
@@ -221,6 +220,6 @@ export function taskRun(data: Record<string, any>) {
export function taskStop(data: Record<string, any>) {
return request({
url: `/api/rest/performanceManagement/v1/elementType/${data.neType.toLowerCase()}/objectType/measureTask?id=${data.id}`,
method: 'PATCH',
method: 'PUT',
});
}

View File

@@ -7,7 +7,7 @@ import { request } from '@/plugins/http-fetch';
export function getUserProfile() {
return request({
url: '/system/user/profile',
method: 'get',
method: 'GET',
});
}
@@ -19,38 +19,21 @@ export function getUserProfile() {
export function updateUserProfile(data: Record<string, any>) {
return request({
url: '/system/user/profile',
method: 'put',
method: 'PUT',
data: data,
});
}
/**
* 用户密码重置
* @param userId 用户ID
* @param status 变更状态值
* 用户个人密码重置
* @param oldPassword 旧密码
* @param newPassword 新密码
* @returns object
*/
export function updateUserPwd(oldPassword: string, newPassword: string) {
export function updateUserPassword(oldPassword: string, newPassword: string) {
return request({
url: '/system/user/profile/updatePwd',
method: 'put',
data: {
oldPassword,
newPassword,
},
});
}
/**
* 用户头像上传
* @param data 表单数据对象
* @returns object
*/
export function uploadAvatar(data: FormData) {
return request({
url: '/system/user/profile/avatar',
method: 'post',
data,
dataType: 'form-data',
url: '/system/user/profile/password',
method: 'PUT',
data: { oldPassword, newPassword },
});
}

View File

@@ -1,12 +0,0 @@
import { request } from '@/plugins/http-fetch';
/**
* 获取路由
* @returns object
*/
export const getRouters = () => {
return request({
url: '/getRouters',
method: 'get',
});
};

View File

@@ -8,8 +8,8 @@ import { request } from '@/plugins/http-fetch';
export function exportConfig(query: Record<string, any>) {
return request({
url: '/system/config/export',
method: 'post',
data: query,
method: 'GET',
params: query,
responseType: 'blob',
});
}
@@ -22,7 +22,7 @@ export function exportConfig(query: Record<string, any>) {
export function listConfig(query: Record<string, any>) {
return request({
url: '/system/config/list',
method: 'get',
method: 'GET',
params: query,
});
}
@@ -35,7 +35,7 @@ export function listConfig(query: Record<string, any>) {
export function getConfig(configId: string | number) {
return request({
url: `/system/config/${configId}`,
method: 'get',
method: 'GET',
});
}
@@ -46,8 +46,8 @@ export function getConfig(configId: string | number) {
*/
export function getConfigKey(configKey: string) {
return request({
url: `/system/config/configKey/${configKey}`,
method: 'get',
url: `/system/config/config-key/${configKey}`,
method: 'GET',
});
}
@@ -59,7 +59,7 @@ export function getConfigKey(configKey: string) {
export function addConfig(data: Record<string, any>) {
return request({
url: '/system/config',
method: 'post',
method: 'POST',
data: data,
});
}
@@ -72,7 +72,7 @@ export function addConfig(data: Record<string, any>) {
export function updateConfig(data: Record<string, any>) {
return request({
url: '/system/config',
method: 'put',
method: 'PUT',
data: data,
});
}
@@ -85,7 +85,7 @@ export function updateConfig(data: Record<string, any>) {
export function delConfig(configId: string | number) {
return request({
url: `/system/config/${configId}`,
method: 'delete',
method: 'DELETE',
});
}
@@ -95,8 +95,8 @@ export function delConfig(configId: string | number) {
*/
export function refreshCache() {
return request({
url: '/system/config/refreshCache',
method: 'put',
url: '/system/config/refresh',
method: 'PUT',
});
}
@@ -107,8 +107,8 @@ export function refreshCache() {
*/
export function changeValue(data: Record<string, string>) {
return request({
url: '/system/config/changeValue',
method: 'put',
url: '/system/config/change-value',
method: 'PUT',
data: data,
});
}

View File

@@ -8,7 +8,7 @@ import { request } from '@/plugins/http-fetch';
export function listDept(query: Record<string, any>) {
return request({
url: '/system/dept/list',
method: 'get',
method: 'GET',
params: query,
});
}
@@ -21,7 +21,7 @@ export function listDept(query: Record<string, any>) {
export function listDeptExcludeChild(deptId: string | number) {
return request({
url: `/system/dept/list/exclude/${deptId}`,
method: 'get',
method: 'GET',
});
}
@@ -33,7 +33,7 @@ export function listDeptExcludeChild(deptId: string | number) {
export function getDept(deptId: string | number) {
return request({
url: `/system/dept/${deptId}`,
method: 'get',
method: 'GET',
});
}
@@ -45,7 +45,7 @@ export function getDept(deptId: string | number) {
export function addDept(data: Record<string, any>) {
return request({
url: '/system/dept',
method: 'post',
method: 'POST',
data: data,
});
}
@@ -58,7 +58,7 @@ export function addDept(data: Record<string, any>) {
export function updateDept(data: Record<string, any>) {
return request({
url: '/system/dept',
method: 'put',
method: 'PUT',
data: data,
});
}
@@ -71,7 +71,7 @@ export function updateDept(data: Record<string, any>) {
export function delDept(deptId: string | number) {
return request({
url: `/system/dept/${deptId}`,
method: 'delete',
method: 'DELETE',
});
}
@@ -79,10 +79,10 @@ export function delDept(deptId: string | number) {
* 查询部门下拉树结构
* @returns object
*/
export function deptTreeSelect() {
export function deptTree() {
return request({
url: '/system/dept/treeSelect',
method: 'get',
url: '/system/dept/tree',
method: 'GET',
});
}
@@ -91,9 +91,9 @@ export function deptTreeSelect() {
* @param roleId 角色ID
* @returns object
*/
export function roleDeptTreeSelect(roleId: string | number) {
export function deptTreeRole(roleId: string | number) {
return request({
url: `/system/dept/roleDeptTreeSelect/${roleId}`,
method: 'get',
url: `/system/dept/tree/role/${roleId}`,
method: 'GET',
});
}

View File

@@ -8,8 +8,8 @@ import { request } from '@/plugins/http-fetch';
export function exportData(query: Record<string, any>) {
return request({
url: '/system/dict/data/export',
method: 'post',
data: query,
method: 'GET',
params: query,
responseType: 'blob',
});
}
@@ -22,20 +22,20 @@ export function exportData(query: Record<string, any>) {
export function listData(query: Record<string, any>) {
return request({
url: '/system/dict/data/list',
method: 'get',
method: 'GET',
params: query,
});
}
/**
* 查询字典数据详细
* @param dictCode 字典代码值
* @param id 字典代码值
* @returns object
*/
export function getData(dictCode: string | number) {
export function getData(id: string | number) {
return request({
url: `/system/dict/data/${dictCode}`,
method: 'get',
url: `/system/dict/data/${id}`,
method: 'GET',
});
}
@@ -47,7 +47,7 @@ export function getData(dictCode: string | number) {
export function addData(data: Record<string, any>) {
return request({
url: '/system/dict/data',
method: 'post',
method: 'POST',
data: data,
});
}
@@ -60,20 +60,20 @@ export function addData(data: Record<string, any>) {
export function updateData(data: Record<string, any>) {
return request({
url: '/system/dict/data',
method: 'put',
method: 'PUT',
data: data,
});
}
/**
* 删除字典数据
* @param dictCode 字典代码值
* @param id 字典代码值
* @returns object
*/
export function delData(dictCode: string | number) {
export function delData(id: string | number) {
return request({
url: `/system/dict/data/${dictCode}`,
method: 'delete',
url: `/system/dict/data/${id}`,
method: 'DELETE',
});
}
@@ -85,6 +85,6 @@ export function delData(dictCode: string | number) {
export function getDictDataType(dictType: string) {
return request({
url: `/system/dict/data/type/${dictType}`,
method: 'get',
method: 'GET',
});
}

View File

@@ -8,8 +8,8 @@ import { request } from '@/plugins/http-fetch';
export function exportType(query: Record<string, any>) {
return request({
url: '/system/dict/type/export',
method: 'post',
data: query,
method: 'GET',
params: query,
responseType: 'blob',
});
}
@@ -22,7 +22,7 @@ export function exportType(query: Record<string, any>) {
export function listType(query: Record<string, any>) {
return request({
url: '/system/dict/type/list',
method: 'get',
method: 'GET',
params: query,
});
}
@@ -35,7 +35,7 @@ export function listType(query: Record<string, any>) {
export function getType(dictId: string | number) {
return request({
url: `/system/dict/type/${dictId}`,
method: 'get',
method: 'GET',
});
}
@@ -47,7 +47,7 @@ export function getType(dictId: string | number) {
export function addType(data: Record<string, any>) {
return request({
url: '/system/dict/type',
method: 'post',
method: 'POST',
data: data,
});
}
@@ -60,20 +60,20 @@ export function addType(data: Record<string, any>) {
export function updateType(data: Record<string, any>) {
return request({
url: '/system/dict/type',
method: 'put',
method: 'PUT',
data: data,
});
}
/**
* 删除字典类型
* @param dictCode 字典代码值
* @param id 字典代码值
* @returns object
*/
export function delType(dictId: string | number) {
export function delType(id: string | number) {
return request({
url: `/system/dict/type/${dictId}`,
method: 'delete',
url: `/system/dict/type/${id}`,
method: 'DELETE',
});
}
@@ -84,8 +84,8 @@ export function delType(dictId: string | number) {
*/
export function refreshCache() {
return request({
url: '/system/dict/type/refreshCache',
method: 'put',
url: '/system/dict/type/refresh',
method: 'PUT',
});
}
@@ -94,9 +94,9 @@ export function refreshCache() {
* @param data 字典数据对象
* @returns object
*/
export function getDictOptionselect() {
export function getDictOption() {
return request({
url: '/system/dict/type/getDictOptionselect',
method: 'get',
url: '/system/dict/type/options',
method: 'GET',
});
}

View File

@@ -10,8 +10,8 @@ export function exportSysLogLogin(
) {
return request({
url: '/system/log/login/export',
method: 'post',
data: query,
method: 'GET',
params: query,
responseType: 'blob',
});
}
@@ -26,7 +26,7 @@ export function listSysLogLogin(
) {
return request({
url: '/system/log/login/list',
method: 'get',
method: 'GET',
params: query,
});
}
@@ -39,7 +39,7 @@ export function listSysLogLogin(
export function delSysLogLogin(loginIds: string) {
return request({
url: `/system/log/login/${loginIds}`,
method: 'delete',
method: 'DELETE',
});
}
@@ -50,7 +50,7 @@ export function delSysLogLogin(loginIds: string) {
export function cleanSysLogLogin() {
return request({
url: '/system/log/login/clean',
method: 'delete',
method: 'DELETE',
});
}
@@ -62,6 +62,6 @@ export function cleanSysLogLogin() {
export function unlock(userName: string) {
return request({
url: `/system/log/login/unlock/${userName}`,
method: 'put',
method: 'PUT',
});
}

View File

@@ -10,8 +10,8 @@ export function exportSysLogOperate(
) {
return request({
url: '/system/log/operate/export',
method: 'post',
data: query,
method: 'GET',
params: query,
responseType: 'blob',
});
}
@@ -26,7 +26,7 @@ export function listSysLogOperate(
) {
return request({
url: '/system/log/operate/list',
method: 'get',
method: 'GET',
params: query,
});
}
@@ -39,7 +39,7 @@ export function listSysLogOperate(
export function delSysLogOperate(operId: string) {
return request({
url: `/system/log/operate/${operId}`,
method: 'delete',
method: 'DELETE',
});
}
@@ -50,6 +50,6 @@ export function delSysLogOperate(operId: string) {
export function cleanSysLogOperate() {
return request({
url: '/system/log/operate/clean',
method: 'delete',
method: 'DELETE',
});
}

View File

@@ -0,0 +1,64 @@
import { request } from '@/plugins/http-fetch';
/**
* 查询登录源列表
* @param query 查询参数
* @returns object
*/
export function listLoginSource(query: Record<string, any>) {
return request({
url: '/system/login-source/list',
method: 'GET',
params: query,
});
}
/**
* 查询登录源详细
* @param id 登录源ID
* @returns object
*/
export function getLoginSource(id: string | number) {
return request({
url: `/system/login-source/${id}`,
method: 'GET',
});
}
/**
* 新增登录源
* @param data 登录源对象
* @returns object
*/
export function addLoginSource(data: Record<string, any>) {
return request({
url: '/system/login-source',
method: 'POST',
data: data,
});
}
/**
* 修改登录源
* @param data 登录源对象
* @returns object
*/
export function updateLoginSource(data: Record<string, any>) {
return request({
url: '/system/login-source',
method: 'PUT',
data: data,
});
}
/**
* 认证源删除
* @param id 登录源ID
* @returns object
*/
export function delLoginSource(id: string | number) {
return request({
url: `/system/login-source/${id}`,
method: 'DELETE',
});
}

View File

@@ -8,7 +8,7 @@ import { request } from '@/plugins/http-fetch';
export function listMenu(query?: Record<string, any>) {
return request({
url: '/system/menu/list',
method: 'get',
method: 'GET',
params: query,
});
}
@@ -21,7 +21,7 @@ export function listMenu(query?: Record<string, any>) {
export function getMenu(menuId: string | number) {
return request({
url: `/system/menu/${menuId}`,
method: 'get',
method: 'GET',
});
}
@@ -31,8 +31,8 @@ export function getMenu(menuId: string | number) {
*/
export function menuTreeSelect() {
return request({
url: '/system/menu/treeSelect',
method: 'get',
url: '/system/menu/tree',
method: 'GET',
});
}
@@ -41,10 +41,10 @@ export function menuTreeSelect() {
* @param roleId 角色ID
* @returns object
*/
export function roleMenuTreeSelect(roleId: string | number) {
export function menuTreeSelectRole(roleId: string | number) {
return request({
url: `/system/menu/roleMenuTreeSelect/${roleId}`,
method: 'get',
url: `/system/menu/tree/role/${roleId}`,
method: 'GET',
});
}
@@ -56,7 +56,7 @@ export function roleMenuTreeSelect(roleId: string | number) {
export function addMenu(data: Record<string, any>) {
return request({
url: '/system/menu',
method: 'post',
method: 'POST',
data: data,
});
}
@@ -69,7 +69,7 @@ export function addMenu(data: Record<string, any>) {
export function updateMenu(data: Record<string, any>) {
return request({
url: '/system/menu',
method: 'put',
method: 'PUT',
data: data,
});
}
@@ -82,6 +82,6 @@ export function updateMenu(data: Record<string, any>) {
export function delMenu(menuId: string | number) {
return request({
url: `/system/menu/${menuId}`,
method: 'delete',
method: 'DELETE',
});
}

View File

@@ -8,8 +8,8 @@ import { request } from '@/plugins/http-fetch';
export function exportPost(query: Record<string, any>) {
return request({
url: '/system/post/export',
method: 'post',
data: query,
method: 'GET',
params: query,
responseType: 'blob',
});
}
@@ -22,7 +22,7 @@ export function exportPost(query: Record<string, any>) {
export function listPost(query: Record<string, any>) {
return request({
url: '/system/post/list',
method: 'get',
method: 'GET',
params: query,
});
}
@@ -35,7 +35,7 @@ export function listPost(query: Record<string, any>) {
export function getPost(postId: string | number) {
return request({
url: `/system/post/${postId}`,
method: 'get',
method: 'GET',
});
}
@@ -47,7 +47,7 @@ export function getPost(postId: string | number) {
export function addPost(data: Record<string, any>) {
return request({
url: '/system/post',
method: 'post',
method: 'POST',
data: data,
});
}
@@ -60,7 +60,7 @@ export function addPost(data: Record<string, any>) {
export function updatePost(data: Record<string, any>) {
return request({
url: '/system/post',
method: 'put',
method: 'PUT',
data: data,
});
}
@@ -73,6 +73,6 @@ export function updatePost(data: Record<string, any>) {
export function delPost(postId: string | number) {
return request({
url: `/system/post/${postId}`,
method: 'delete',
method: 'DELETE',
});
}

View File

@@ -7,7 +7,7 @@ import { request } from '@/plugins/http-fetch';
export function bootloaderStart() {
return request({
url: `/bootloader`,
method: 'post',
method: 'POST',
whithToken: false,
repeatSubmit: false,
});
@@ -20,7 +20,7 @@ export function bootloaderStart() {
export function bootloaderDone() {
return request({
url: `/bootloader`,
method: 'put',
method: 'PUT',
});
}
@@ -31,7 +31,7 @@ export function bootloaderDone() {
export function bootloaderReset() {
return request({
url: `/bootloader`,
method: 'delete',
method: 'DELETE',
timeout: 180_000
});
}
@@ -43,7 +43,7 @@ export function bootloaderReset() {
export function bootloaderAccount(username: string, password: string) {
return request({
url: `/bootloader/account`,
method: 'put',
method: 'PUT',
data: {
username,
password,

View File

@@ -8,7 +8,7 @@ import { request } from '@/plugins/http-fetch';
export function exportRole(query: Record<string, any>) {
return request({
url: '/system/role/export',
method: 'post',
method: 'POST',
data: query,
responseType: 'blob',
});
@@ -22,7 +22,7 @@ export function exportRole(query: Record<string, any>) {
export function listRole(query: Record<string, any>) {
return request({
url: '/system/role/list',
method: 'get',
method: 'GET',
params: query,
});
}
@@ -35,7 +35,7 @@ export function listRole(query: Record<string, any>) {
export function getRole(roleId: string | number) {
return request({
url: `/system/role/${roleId}`,
method: 'get',
method: 'GET',
});
}
@@ -47,7 +47,7 @@ export function getRole(roleId: string | number) {
export function addRole(data: Record<string, any>) {
return request({
url: '/system/role',
method: 'post',
method: 'POST',
data: data,
});
}
@@ -60,7 +60,7 @@ export function addRole(data: Record<string, any>) {
export function updateRole(data: Record<string, any>) {
return request({
url: '/system/role',
method: 'put',
method: 'PUT',
data: data,
});
}
@@ -73,24 +73,21 @@ export function updateRole(data: Record<string, any>) {
export function delRole(roleId: string | number) {
return request({
url: `/system/role/${roleId}`,
method: 'delete',
method: 'DELETE',
});
}
/**
* 角色状态修改
* @param roleId 角色ID
* @param status 角色状态
* @param statusFlag 角色状态
* @returns object
*/
export function changeRoleStatus(roleId: string, status: string | number) {
export function changeRoleStatus(roleId: string, statusFlag: string | number) {
return request({
url: '/system/role/changeStatus',
method: 'put',
data: {
roleId,
status,
},
url: '/system/role/status',
method: 'PUT',
data: { roleId, statusFlag },
});
}
@@ -101,8 +98,8 @@ export function changeRoleStatus(roleId: string, status: string | number) {
*/
export function dataScope(data: Record<string, any>) {
return request({
url: '/system/role/dataScope',
method: 'put',
url: '/system/role/data-scope',
method: 'PUT',
data: data,
});
}
@@ -112,10 +109,10 @@ export function dataScope(data: Record<string, any>) {
* @param query 查询参数
* @returns object
*/
export function authUserAllocatedList(query: Record<string, any>) {
export function authUserList(query: Record<string, any>) {
return request({
url: '/system/role/authUser/allocatedList',
method: 'get',
url: '/system/role/user/list',
method: 'GET',
params: query,
});
}
@@ -127,8 +124,8 @@ export function authUserAllocatedList(query: Record<string, any>) {
*/
export function authUserChecked(data: Record<string, any>) {
return request({
url: '/system/role/authUser/checked',
method: 'put',
url: '/system/role/user/auth',
method: 'PUT',
data: data,
});
}

View File

@@ -5,12 +5,11 @@ import { request } from '@/plugins/http-fetch';
* @param data 表单数据对象
* @returns object
*/
export function importData(data: FormData) {
export function importData(filePath: string, update: boolean) {
return request({
url: '/system/user/importData',
method: 'post',
data,
dataType: 'form-data',
url: '/system/user/import',
method: 'POST',
data: { filePath, update },
timeout: 180_000,
});
}
@@ -21,8 +20,8 @@ export function importData(data: FormData) {
*/
export function importTemplate() {
return request({
url: '/system/user/importTemplate',
method: 'get',
url: '/system/user/import/template',
method: 'GET',
responseType: 'blob',
});
}
@@ -35,8 +34,8 @@ export function importTemplate() {
export function exportUser(query: Record<string, any>) {
return request({
url: '/system/user/export',
method: 'post',
data: query,
method: 'GET',
params: query,
responseType: 'blob',
});
}
@@ -49,7 +48,7 @@ export function exportUser(query: Record<string, any>) {
export function listUser(query: Record<string, any>) {
return request({
url: '/system/user/list',
method: 'get',
method: 'GET',
params: query,
});
}
@@ -62,7 +61,7 @@ export function listUser(query: Record<string, any>) {
export function getUser(userId: string | number = '0') {
return request({
url: `/system/user/${userId}`,
method: 'get',
method: 'GET',
});
}
@@ -74,7 +73,7 @@ export function getUser(userId: string | number = '0') {
export function addUser(data: Record<string, any>) {
return request({
url: '/system/user',
method: 'post',
method: 'POST',
data: data,
});
}
@@ -87,7 +86,7 @@ export function addUser(data: Record<string, any>) {
export function updateUser(data: Record<string, any>) {
return request({
url: '/system/user',
method: 'put',
method: 'PUT',
data: data,
});
}
@@ -100,7 +99,7 @@ export function updateUser(data: Record<string, any>) {
export function delUser(userId: string | number) {
return request({
url: `/system/user/${userId}`,
method: 'delete',
method: 'DELETE',
});
}
@@ -112,8 +111,8 @@ export function delUser(userId: string | number) {
*/
export function resetUserPwd(userId: string | number, password: string) {
return request({
url: '/system/user/resetPwd',
method: 'put',
url: '/system/user/password',
method: 'PUT',
data: {
userId,
password,
@@ -124,19 +123,29 @@ export function resetUserPwd(userId: string | number, password: string) {
/**
* 用户状态修改
* @param userId 用户ID
* @param status 变更状态值
* @param statusFlag 变更状态值
* @returns object
*/
export function changeUserStatus(
userId: string | number,
status: string | number
statusFlag: string | number
) {
return request({
url: '/system/user/changeStatus',
method: 'put',
data: {
userId,
status,
},
url: '/system/user/status',
method: 'PUT',
data: { userId, statusFlag },
});
}
/**
* 用户强制重置密码
* @param password 密码
* @returns object
*/
export function updateUserPasswordForce(password: string) {
return request({
url: '/system/user/profile/password-force',
method: 'PUT',
data: { password },
});
}

View File

@@ -15,7 +15,7 @@ import { encode } from 'js-base64';
export async function downloadFile(filePath: string, range?: string) {
return request({
url: `/file/download/${encode(filePath)}`,
method: 'get',
method: 'GET',
headers: range ? { range } : {},
responseType: 'blob',
timeout: 60_000,
@@ -77,7 +77,7 @@ export async function downloadFileChunk(
export function uploadFile(data: FormData) {
return request({
url: '/file/upload',
method: 'post',
method: 'POST',
data,
dataType: 'form-data',
timeout: 180_000,
@@ -168,8 +168,8 @@ export async function uploadFileChunk(
*/
export function chunkCheck(identifier: string, fileName: string) {
return request({
url: '/file/chunkCheck',
method: 'post',
url: '/file/chunk-check',
method: 'POST',
data: { identifier, fileName },
timeout: 60_000,
});
@@ -188,8 +188,8 @@ export function chunkMerge(
subPath: string = 'default'
) {
return request({
url: '/file/chunkMerge',
method: 'post',
url: '/file/chunk-merge',
method: 'POST',
data: { identifier, fileName, subPath },
timeout: 60_000,
});
@@ -202,22 +202,66 @@ export function chunkMerge(
*/
export function chunkUpload(data: FormData) {
return request({
url: '/file/chunkUpload',
method: 'post',
url: '/file/chunk-upload',
method: 'POST',
data,
dataType: 'form-data',
timeout: 60_000,
});
}
/**
* 本地文件列表
* @param path 文件路径
* @param search search prefix
* @returns object
*/
export async function listFile(query: Record<string, any>) {
return request({
url: `/file/list`,
method: 'GET',
params: query,
});
}
/**
* 本地文件获取下载
* @param path 文件路径
* @param fileName 文件名
* @returns object
*/
export async function getFile(path: string, fileName: string) {
return request({
url: `/file`,
method: 'GET',
params: { path, fileName },
responseType: 'blob',
timeout: 60_000,
});
}
/**
* 本地文件删除
* @param path 文件路径
* @param fileName 文件名
* @returns object
*/
export async function delFile(path: string, fileName: string) {
return request({
url: `/file`,
method: 'DELETE',
params: { path, fileName },
});
}
/**
* 转存上传文件到静态资源
* @returns object
*/
export function transferStaticFile(data: Record<string, any>) {
return request({
url: `/file/transferStaticFile`,
method: 'post',
url: `/file/transfer-static-file`,
method: 'POST',
data,
timeout: 60_000,
});
@@ -241,11 +285,12 @@ export async function uploadFileToNE(
if (uploadChunkRes.code === RESULT_CODE_SUCCESS) {
const transferToNeFileRes = await request({
url: `/ne/action/pushFile`,
method: 'post',
method: 'POST',
data: {
uploadPath: uploadChunkRes.data.fileName,
uploadPath: uploadChunkRes.data.filePath,
neType,
neId,
delTemp: true,
},
timeout: 60_000,
});

View File

@@ -4,7 +4,7 @@ import { request } from '@/plugins/http-fetch';
export function iperfV(data: Record<string, string>) {
return request({
url: '/tool/iperf/v',
method: 'get',
method: 'GET',
params: data,
});
}
@@ -13,7 +13,7 @@ export function iperfV(data: Record<string, string>) {
export function iperfI(data: Record<string, string>) {
return request({
url: '/tool/iperf/i',
method: 'post',
method: 'POST',
data: data,
timeout: 60_000,
});

25
src/api/tool/mml.ts Normal file
View File

@@ -0,0 +1,25 @@
import { request } from '@/plugins/http-fetch';
// 更新网元配置重新载入
export function updateNeConfigReload(neType: string, neId: string) {
return request({
url: '/tool/mml/command',
method: 'POST',
data: {
neType: neType,
neId: neId,
type: 'General',
command: ['reload'],
},
timeout: 180_000,
});
}
// MMML日志列表
export function mmlLogList(query: Record<string, any>) {
return request({
url: '/tool/mml/log/list',
method: 'GET',
params: query,
});
}

View File

@@ -8,7 +8,7 @@ import { request } from '@/plugins/http-fetch';
export function listNeFiles(query: Record<string, any>) {
return request({
url: '/ne/action/files',
method: 'get',
method: 'GET',
params: query,
});
}
@@ -21,7 +21,7 @@ export function listNeFiles(query: Record<string, any>) {
export function getNeFile(query: Record<string, any>) {
return request({
url: '/ne/action/pullFile',
method: 'get',
method: 'GET',
params: query,
responseType: 'blob',
timeout: 180_000,
@@ -32,7 +32,7 @@ export function getNeFile(query: Record<string, any>) {
export function getNeDirZip(data: Record<string, any>) {
return request({
url: '/ne/action/pullDirZip',
method: 'get',
method: 'GET',
params: data,
responseType: 'blob',
timeout: 60_000,
@@ -43,7 +43,7 @@ export function getNeDirZip(data: Record<string, any>) {
export function getNeViewFile(data: Record<string, any>) {
return request({
url: '/ne/action/viewFile',
method: 'get',
method: 'GET',
params: data,
timeout: 60_000,
});

Some files were not shown because too many files have changed in this diff Show More