diff --git a/src/api/traceManage/analysis.ts b/src/api/trace/analysis.ts similarity index 100% rename from src/api/traceManage/analysis.ts rename to src/api/trace/analysis.ts diff --git a/src/api/traceManage/pcap.ts b/src/api/trace/pcap.ts similarity index 100% rename from src/api/traceManage/pcap.ts rename to src/api/trace/pcap.ts diff --git a/src/api/trace/task.ts b/src/api/trace/task.ts new file mode 100644 index 00000000..f48ac1db --- /dev/null +++ b/src/api/trace/task.ts @@ -0,0 +1,89 @@ +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 listTraceTask(query: Record) { + return request({ + url: '/trace/task/list', + method: 'get', + params: query, + }); +} + +/** + * 查询跟踪任务信息 + * @param id 网元ID + * @returns object + */ +export async function getTraceTask(id: string | number) { + return request({ + url: `/trace/task/${id}`, + method: 'get', + }); +} + +/** + * 新增任务 + * @param data 网元对象 + * @returns object + */ +export function addTraceTask(data: Record) { + return request({ + url: `/trace/task`, + method: 'post', + data: data, + }); +} + +/** + * 修改任务 + * @param data 网元对象 + * @returns object + */ +export function updateTraceTask(data: Record) { + return request({ + url: `/trace/task`, + method: 'put', + data: data, + }); +} + +/** + * 跟踪任务删除 + * @param ids ID多个逗号分隔 + * @returns object + */ +export async function delTraceTask(ids: string) { + return request({ + url: `/trace/task/${ids}`, + method: 'delete', + }); +} + +/** + * 获取网元跟踪接口列表 + * @returns object + */ +export async function getNeTraceInterfaceAll() { + // 发起请求 + const result = await request({ + url: `/api/rest/databaseManagement/v1/elementType/omc_db/objectType/ne_info`, + method: 'get', + params: { + SQL: `SELECT ne_type,interface FROM trace_info GROUP BY ne_type,interface`, + }, + }); + // 解析数据 + if (result.code === RESULT_CODE_SUCCESS && Array.isArray(result.data.data)) { + let data = result.data.data[0]; + return Object.assign(result, { + data: parseObjLineToHump(data['trace_info']), + }); + } + return result; +} diff --git a/src/api/traceManage/task.ts b/src/api/traceManage/task.ts deleted file mode 100644 index f55066f7..00000000 --- a/src/api/traceManage/task.ts +++ /dev/null @@ -1,154 +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 listTraceTask(query: Record) { - let totalSQL = 'select count(*) as total from trace_task where 1=1 '; - let rowsSQL = 'select * from trace_task where 1=1 '; - - // 查询 - let querySQL = ''; - if (query.imsi) { - querySQL += ` and imsi like '%${query.imsi}%' `; - } - if (query.beginTime) { - querySQL += ` and start_time >= '${query.beginTime}' `; - } - if (query.endTime) { - querySQL += ` and end_time <= '${query.endTime}' `; - } - - // 分页 - const pageNum = (query.pageNum - 1) * query.pageSize; - const limtSql = ` limit ${pageNum},${query.pageSize} `; - - // 排序 - let sortSql = ' order by start_time '; - if (query.sortOrder === 'asc') { - sortSql += ' asc '; - } else { - sortSql += ' desc '; - } - - // 发起请求 - const result = await request({ - url: `/api/rest/databaseManagement/v1/select/omc_db/trace_task`, - 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['trace_task']; - 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 id 网元ID - * @returns object - */ -export async function getTraceTask(id: string | number) { - // 发起请求 - const result = await request({ - url: `/api/rest/databaseManagement/v1/select/omc_db/trace_task`, - method: 'get', - params: { - SQL: `select * from trace_task where id = ${id}`, - }, - }); - // 解析数据 - if (result.code === RESULT_CODE_SUCCESS && Array.isArray(result.data.data)) { - let data = result.data.data[0]; - return Object.assign(result, { - data: parseObjLineToHump(data['trace_task'][0]), - }); - } - return result; -} - -/** - * 新增任务 - * @param data 网元对象 - * @returns object - */ -export function addTraceTask(data: Record) { - return request({ - url: `/api/rest/traceManagement/v1/subscriptions`, - method: 'post', - data: data, - }); -} - -/** - * 修改任务 - * @param data 网元对象 - * @returns object - */ -export function updateTraceTask(data: Record) { - return request({ - url: `/api/rest/traceManagement/v1/subscriptions`, - method: 'put', - data: data, - }); -} - -/** - * 删除任务 - * @param noticeId 网元ID - * @returns object - */ -export async function delTraceTask(id: string) { - return request({ - url: `/api/rest/traceManagement/v1/subscriptions?id=${id}`, - method: 'delete', - }); -} - -/** - * 获取网元跟踪接口列表 - * @returns object - */ -export async function getNeTraceInterfaceAll() { - // 发起请求 - const result = await request({ - url: `/api/rest/databaseManagement/v1/elementType/omc_db/objectType/ne_info`, - method: 'get', - params: { - SQL: `SELECT ne_type,interface FROM trace_info GROUP BY ne_type,interface`, - }, - }); - // 解析数据 - if (result.code === RESULT_CODE_SUCCESS && Array.isArray(result.data.data)) { - let data = result.data.data[0]; - return Object.assign(result, { - data: parseObjLineToHump(data['trace_info']), - }); - } - return result; -} diff --git a/src/i18n/locales/en-US.ts b/src/i18n/locales/en-US.ts index e4675330..890401d9 100644 --- a/src/i18n/locales/en-US.ts +++ b/src/i18n/locales/en-US.ts @@ -149,6 +149,7 @@ export default { page403: 'No Access', page404: 'Match Page Not Found', helpDoc: 'System User Documentation', + traceTaskHLR: 'Tracking Tasks HLR', lockScreen: 'Lock Screen', account: { index: "Personal Center", @@ -1143,25 +1144,24 @@ export default { imsiPlease: 'Please enter IMSI', imsiTip: 'Mobile communication IMSI number', srcIp: 'Source IP Address', - srcIpPlease: 'Please enter the source IP address', + srcIpPlease: 'Please enter the IP address', srcIpTip: 'Current sender IPv4 address', dstIp: 'Destination IP Address', - dstIpPlease: 'Please enter the destination IP address', + dstIpPlease: 'Please enter the IP address', dstIpTip: 'IPv4 address of the receiving end of the other party', interfaces: 'Signaling Interface', interfacesPlease: 'Please enter the signaling interface', signalPort: 'Signal Port', signalPortPlease: 'Please enter the signaling port', - signalPortTip: 'Port corresponding to the interface', + signalPortTip: 'Port of the side corresponding to the destination IP address or source IP address', rangePicker: 'Start/End Time', rangePickerPlease: 'Please select the start and end time of the task', - remark: 'Task Description', + remark: 'Remark', remarkPlease: 'Task description can be entered', addTask: 'Add Task', editTask: 'Modify Task', viewTask: 'View Task', errorTaskInfo: 'Failed to obtain task information', - delTask: 'Successfully deleted task {id}', delTaskTip: 'Are you sure to delete the data item with record ID {id} ?', stopTask: 'Successful cessation of tasks {id}', stopTaskTip: 'Confirm stopping the task with record ID {id} ?', diff --git a/src/i18n/locales/zh-CN.ts b/src/i18n/locales/zh-CN.ts index 0194c001..c5c07ff9 100644 --- a/src/i18n/locales/zh-CN.ts +++ b/src/i18n/locales/zh-CN.ts @@ -149,6 +149,7 @@ export default { page403: '没有访问权限', page404: '找不到匹配页面', helpDoc: '系统使用文档', + traceTaskHLR: '跟踪任务 HLR', lockScreen: '锁屏', account: { index: "个人中心", @@ -1152,16 +1153,15 @@ export default { interfacesPlease: '请输入信令接口', signalPort: '信令端口', signalPortPlease: '请输入信令端口', - signalPortTip: '接口对应的端口', + signalPortTip: '目标IP地址或源IP地址对应一方的端口', rangePicker: '开始结束时间', rangePickerPlease: '请选择任务时间开始结束时间', - remark: '任务说明', + remark: '说明', remarkPlease: '可输入任务说明', addTask: '添加任务', editTask: '修改任务', viewTask: '查看任务', errorTaskInfo: '获取任务信息失败', - delTask: '成功删除任务 {id}', delTaskTip: '确认删除记录编号为 {id} 的数据项?', stopTask: '成功停止任务 {id}', stopTaskTip: '确认停止记录编号为 {id} 的任务?', diff --git a/src/views/perfManage/perfReport/index.vue b/src/views/perfManage/perfReport/index.vue index 5d883b96..41c2c164 100644 --- a/src/views/perfManage/perfReport/index.vue +++ b/src/views/perfManage/perfReport/index.vue @@ -9,7 +9,7 @@ import { parseDateToStr } from '@/utils/date-utils'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; import { saveAs } from 'file-saver'; import useI18n from '@/hooks/useI18n'; -import { getTraceRawInfo, listTraceData } from '@/api/traceManage/analysis'; +import { getTraceRawInfo, listTraceData } from '@/api/trace/analysis'; const { t } = useI18n(); /**查询参数 */ diff --git a/src/views/perfManage/perfSet/index.vue b/src/views/perfManage/perfSet/index.vue index 5d883b96..41c2c164 100644 --- a/src/views/perfManage/perfSet/index.vue +++ b/src/views/perfManage/perfSet/index.vue @@ -9,7 +9,7 @@ import { parseDateToStr } from '@/utils/date-utils'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; import { saveAs } from 'file-saver'; import useI18n from '@/hooks/useI18n'; -import { getTraceRawInfo, listTraceData } from '@/api/traceManage/analysis'; +import { getTraceRawInfo, listTraceData } from '@/api/trace/analysis'; const { t } = useI18n(); /**查询参数 */ diff --git a/src/views/traceManage/analysis/index.vue b/src/views/traceManage/analysis/index.vue index 23f78a50..26137c6a 100644 --- a/src/views/traceManage/analysis/index.vue +++ b/src/views/traceManage/analysis/index.vue @@ -9,7 +9,7 @@ import { parseDateToStr } from '@/utils/date-utils'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; import { saveAs } from 'file-saver'; import useI18n from '@/hooks/useI18n'; -import { getTraceRawInfo, listTraceData } from '@/api/traceManage/analysis'; +import { getTraceRawInfo, listTraceData } from '@/api/trace/analysis'; const { t } = useI18n(); /**查询参数 */ diff --git a/src/views/traceManage/pcap/index.vue b/src/views/traceManage/pcap/index.vue index 2bea5b96..4bc5c0ea 100644 --- a/src/views/traceManage/pcap/index.vue +++ b/src/views/traceManage/pcap/index.vue @@ -9,7 +9,7 @@ import { dumpStop, dumpDownload, traceUPF, -} from '@/api/traceManage/pcap'; +} from '@/api/trace/pcap'; import { listAllNeInfo } from '@/api/ne/neInfo'; import { getNeFile } from '@/api/tool/neFile'; import saveAs from 'file-saver'; diff --git a/src/views/traceManage/task/index.vue b/src/views/traceManage/task/index.vue index 707c8d5c..4c7cdab2 100644 --- a/src/views/traceManage/task/index.vue +++ b/src/views/traceManage/task/index.vue @@ -1,5 +1,5 @@ @@ -571,7 +606,7 @@ onMounted(() => { > @@ -580,13 +615,13 @@ onMounted(() => { @@ -600,8 +635,8 @@ onMounted(() => { @@ -628,10 +663,23 @@ onMounted(() => { @@ -690,6 +738,12 @@ onMounted(() => { :pagination="tablePagination" :scroll="{ x: true }" @change="fnTableChange" + :row-selection="{ + type: 'checkbox', + columnWidth: '48px', + selectedRowKeys: tableState.selectedRowKeys, + onChange: fnTableSelectedRowKeys, + }" >