From c846ff24b7670f23a0fbbccd3a014757c2edcc06 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E5=B0=8F=E6=9E=97?= <320730042@qq.com> Date: Sat, 6 Jul 2024 18:47:41 +0800 Subject: [PATCH] feat: soap --- src/api/order/index.ts | 2 +- src/api/soap/index.ts | 40 ++++ src/api/soap/types.ts | 6 + src/router/index.ts | 13 ++ src/utils/confirm.ts | 20 ++ .../components/RemoteOperateInfo.vue | 8 + .../components/SoapPackageLog.vue | 202 ++++++++++++++++++ 7 files changed, 290 insertions(+), 1 deletion(-) create mode 100644 src/api/soap/index.ts create mode 100644 src/api/soap/types.ts create mode 100644 src/utils/confirm.ts create mode 100644 src/views/family/operate/remote-operation/components/SoapPackageLog.vue diff --git a/src/api/order/index.ts b/src/api/order/index.ts index 2642ef9..5a47841 100644 --- a/src/api/order/index.ts +++ b/src/api/order/index.ts @@ -111,7 +111,7 @@ export function deviceOderTablePage( }); } -export function checkDeviceExits(devSnoOui): AxiosPromise { +export function checkDeviceExits(devSnoOui: string): AxiosPromise { return request({ url: `/api/order/v1/check-dev/${devSnoOui}`, method: "GET", diff --git a/src/api/soap/index.ts b/src/api/soap/index.ts new file mode 100644 index 0000000..f4006a3 --- /dev/null +++ b/src/api/soap/index.ts @@ -0,0 +1,40 @@ +import { AxiosPromise } from "axios"; +import { SoapPageResult } from "@/api/soap/types"; +import request from "@/utils/request"; + +export function soapPage( + devId?: number, + data?: PageQuery +): AxiosPromise { + return request({ + url: `/api/device-soap-log/v1/page/${devId}`, + method: "POST", + data, + }); +} +export function soapStart(devId?: number) { + return request({ + url: `/api/device-soap-log/v1/start/${devId}`, + method: "PUT", + }); +} +export function soapStop(devId?: number) { + return request({ + url: `/api/device-soap-log/v1/stop/${devId}`, + method: "PUT", + }); +} +export function soapDelete(devId?: number) { + return request({ + url: `/api/device-soap-log/v1/delete/${devId}`, + method: "DELETE", + }); +} +export function soapExport(devId?: number, data?: PageQuery) { + return request({ + url: `/api/device-soap-log/v1/_export/${devId}`, + method: "GET", + params: data, + responseType: "arraybuffer", + }); +} diff --git a/src/api/soap/types.ts b/src/api/soap/types.ts new file mode 100644 index 0000000..fb3f5ac --- /dev/null +++ b/src/api/soap/types.ts @@ -0,0 +1,6 @@ +export interface DeviceSoapLogVO { + operTime?: string; + soapDirect?: string; + soapDesc?: string; +} +export type SoapPageResult = PageResult; diff --git a/src/router/index.ts b/src/router/index.ts index d526489..f187ac8 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -295,6 +295,19 @@ export const constantRoutes: RouteRecordRaw[] = [ title: "设备操作日志", }, }, + { + path: "/resources/remote-info/soap-package-log/:devId", + name: "SoapPackageLog", + component: () => + import( + "@/views/family/operate/remote-operation/components/SoapPackageLog.vue" + ), + meta: { + hidden: true, + keepAlive: true, + title: "SOAP包日志", + }, + }, ], }, ]; diff --git a/src/utils/confirm.ts b/src/utils/confirm.ts new file mode 100644 index 0000000..346f2ed --- /dev/null +++ b/src/utils/confirm.ts @@ -0,0 +1,20 @@ +import { ElMessage, ElMessageBox } from "element-plus"; + +function confirm(message: string, ok: Function) { + ElMessageBox.confirm(`${message},是否继续?`, "警告", { + confirmButtonText: "确认", + cancelButtonText: "取消", + type: "warning", + }) + .then(() => { + ok(); + }) + .catch((err) => { + ElMessage({ + type: "info", + message: "取消操作" + err, + }); + }); +} + +export { confirm }; diff --git a/src/views/family/operate/remote-operation/components/RemoteOperateInfo.vue b/src/views/family/operate/remote-operation/components/RemoteOperateInfo.vue index ea95a53..0b7cd8d 100644 --- a/src/views/family/operate/remote-operation/components/RemoteOperateInfo.vue +++ b/src/views/family/operate/remote-operation/components/RemoteOperateInfo.vue @@ -354,6 +354,9 @@ 设备操作日志 + SOAP包日志 @@ -454,6 +457,11 @@ const skipDeviceOperateLog = () => { path: `/resources/remote-info/device-operate-log/${remote.value.devId}`, }); }; +const skipSoapPackageLog = () => { + router.push({ + path: `/resources/remote-info/soap-package-log/${remote.value.devId}`, + }); +}; onMounted(() => { getData(); }); diff --git a/src/views/family/operate/remote-operation/components/SoapPackageLog.vue b/src/views/family/operate/remote-operation/components/SoapPackageLog.vue new file mode 100644 index 0000000..c4744f1 --- /dev/null +++ b/src/views/family/operate/remote-operation/components/SoapPackageLog.vue @@ -0,0 +1,202 @@ + + + + +