From 189d56b9d1611780a20117ab5d640077b4fb9820 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E5=B0=8F=E6=9E=97?= <320730042@qq.com> Date: Tue, 30 Jul 2024 17:23:27 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E8=AF=A6=E7=BB=86=E6=B8=85=E5=8D=95?= =?UTF-8?q?=E7=BB=9F=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/report/index.ts | 28 ++ src/api/report/types.ts | 61 +++ src/plugins/permission.ts | 8 +- .../components/SoapPackageLog.vue | 1 - .../detail-inventory-statistics/index.vue | 467 +++++++++++++++++- src/views/family/statement/index.vue | 25 +- 6 files changed, 573 insertions(+), 17 deletions(-) create mode 100644 src/api/report/index.ts create mode 100644 src/api/report/types.ts diff --git a/src/api/report/index.ts b/src/api/report/index.ts new file mode 100644 index 0000000..19a35e5 --- /dev/null +++ b/src/api/report/index.ts @@ -0,0 +1,28 @@ +import { AxiosPromise } from "axios"; +import request from "@/utils/request"; +import { ReportBasicQuery, ReportDetailPageResult } from "@/api/report/types"; + +export function reportArea(groupId?: number): AxiosPromise { + return request({ + url: `/api/domain/v1/report-area/options/${groupId}`, + method: "GET", + }); +} + +export function reportDetailPage( + data: ReportBasicQuery +): AxiosPromise { + return request({ + url: `/api/report/v1/detail-inventory-statistics`, + method: "POST", + data, + }); +} +export function reportExportDetail(queryParams: ReportBasicQuery) { + return request({ + url: `/api/report/v1/_export`, + method: "get", + params: queryParams, + responseType: "arraybuffer", + }); +} diff --git a/src/api/report/types.ts b/src/api/report/types.ts new file mode 100644 index 0000000..abe6e5f --- /dev/null +++ b/src/api/report/types.ts @@ -0,0 +1,61 @@ +export interface ReportBasicQuery extends PageQuery { + area?: number; + + subarea?: number; + + category?: string; + + devName?: string; + + accessType?: string; + + devType?: string; + + gateWayType?: string; + + firstStartTime?: string; + + firstEndTime?: string; + + lastStartTime?: string; + + lastEndTime?: string; + + onLineStartTime?: string; + + onLineEndTime?: string; +} +export interface DetailInventoryStatisticsVO { + area?: String; + + subArea?: string; + + devId?: string; + + category?: string; + + devName?: string; + + oui?: string; + + devSno?: string; + + devHard?: string; + + devSoft?: string; + + gateWayType?: string; + + sno?: string; + + pppoe?: string; + + createTime?: string; + + modifyTime?: string; + + onLineTime?: string; + + rgMode?: string; +} +export type ReportDetailPageResult = PageResult; diff --git a/src/plugins/permission.ts b/src/plugins/permission.ts index 2f6be2c..d54aa7c 100644 --- a/src/plugins/permission.ts +++ b/src/plugins/permission.ts @@ -6,7 +6,13 @@ import NProgress from "@/utils/nprogress"; export function setupPermission() { // 白名单路由 const whiteList = ["/login"]; - const threeLevelCatalog = ["Operate", "Broadband", "Iptv", "Voip"]; + const threeLevelCatalog = [ + "Operate", + "Broadband", + "Iptv", + "Voip", + "Statement", + ]; router.beforeEach(async (to, from, next) => { NProgress.start(); diff --git a/src/views/family/operate/remote-operation/components/SoapPackageLog.vue b/src/views/family/operate/remote-operation/components/SoapPackageLog.vue index c16e80d..3c34be5 100644 --- a/src/views/family/operate/remote-operation/components/SoapPackageLog.vue +++ b/src/views/family/operate/remote-operation/components/SoapPackageLog.vue @@ -103,7 +103,6 @@ import { Refresh, } from "@element-plus/icons-vue"; import { confirm } from "@/utils/confirm"; -import { exportUser } from "@/api/user"; const route = useRoute(); let devId: number = parseInt(route.params.devId); diff --git a/src/views/family/statement/detail-inventory-statistics/index.vue b/src/views/family/statement/detail-inventory-statistics/index.vue index 28ef6ec..a0deb69 100644 --- a/src/views/family/statement/detail-inventory-statistics/index.vue +++ b/src/views/family/statement/detail-inventory-statistics/index.vue @@ -1,27 +1,472 @@ diff --git a/src/views/family/statement/index.vue b/src/views/family/statement/index.vue index d348559..f0f9857 100644 --- a/src/views/family/statement/index.vue +++ b/src/views/family/statement/index.vue @@ -1,6 +1,23 @@ - + +