From 1f9f510f3f3aeb108e39b48e15f745939bb95573 Mon Sep 17 00:00:00 2001 From: K <1175047471@qq.com> Date: Wed, 6 Mar 2024 09:29:00 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B6=88=E8=B4=B9=E7=BB=84=E8=AF=A6?= =?UTF-8?q?=E6=83=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/subscription/consumer/index.ts | 35 ++++++- src/api/subscription/consumer/types.ts | 7 ++ .../consumer/components/OnlineClient.vue | 34 +++++++ .../consumer/components/Product.vue | 91 ++++++++++++++++++ .../subscription/consumer/components/index.ts | 2 + src/views/subscription/consumer/detail.vue | 96 +++++++++++++++++++ src/views/subscription/consumer/index.vue | 7 +- 7 files changed, 270 insertions(+), 2 deletions(-) create mode 100644 src/views/subscription/consumer/components/OnlineClient.vue create mode 100644 src/views/subscription/consumer/components/Product.vue create mode 100644 src/views/subscription/consumer/components/index.ts create mode 100644 src/views/subscription/consumer/detail.vue diff --git a/src/api/subscription/consumer/index.ts b/src/api/subscription/consumer/index.ts index c25862db..f10df17a 100644 --- a/src/api/subscription/consumer/index.ts +++ b/src/api/subscription/consumer/index.ts @@ -1,4 +1,4 @@ -import type { Consumer, GetConsumerListParams } from './types' +import type { Consumer, GetConsumerListParams, Product } from './types' import { defHttp } from '@/utils/http/axios' export function getConsumerList(params: GetConsumerListParams) { @@ -27,3 +27,36 @@ export function deleteConsumer(id: string) { url: `/server/consumer/remove?id=${id}`, }) } + +export function getConsumerDetail(id: string) { + return defHttp.get({ + url: '/server/consumer/detail', + params: { + id, + }, + }) +} + +export function getOnlineClientList(consumerToken: string) { + return defHttp.get({ + url: '/server/client/list', + params: { + consumerToken, + }, + }) +} + +export function getSubscribeList(consumerId: string) { + return defHttp.get({ + url: '/server/consumer/subscribeList', + params: { + consumerId, + }, + }) +} + +export function disSubscription(consumerId: string, serverSubscribeId: string) { + return defHttp.post({ + url: `/server/consumer/unsubscription?consumerId=${consumerId}&serverSubscribeId=${serverSubscribeId}`, + }) +} diff --git a/src/api/subscription/consumer/types.ts b/src/api/subscription/consumer/types.ts index 444b873c..35742dc8 100644 --- a/src/api/subscription/consumer/types.ts +++ b/src/api/subscription/consumer/types.ts @@ -9,3 +9,10 @@ export interface Consumer { createTime: string subscribes: string } + +export interface Product { + id: string + messageType: string + productId: string + tenantId: string +} diff --git a/src/views/subscription/consumer/components/OnlineClient.vue b/src/views/subscription/consumer/components/OnlineClient.vue new file mode 100644 index 00000000..4578b3c6 --- /dev/null +++ b/src/views/subscription/consumer/components/OnlineClient.vue @@ -0,0 +1,34 @@ + + + diff --git a/src/views/subscription/consumer/components/Product.vue b/src/views/subscription/consumer/components/Product.vue new file mode 100644 index 00000000..24471ef1 --- /dev/null +++ b/src/views/subscription/consumer/components/Product.vue @@ -0,0 +1,91 @@ + + + diff --git a/src/views/subscription/consumer/components/index.ts b/src/views/subscription/consumer/components/index.ts new file mode 100644 index 00000000..eda7e295 --- /dev/null +++ b/src/views/subscription/consumer/components/index.ts @@ -0,0 +1,2 @@ +export { default as OnlineClient } from './OnlineClient.vue' +export { default as Product } from './Product.vue' diff --git a/src/views/subscription/consumer/detail.vue b/src/views/subscription/consumer/detail.vue new file mode 100644 index 00000000..05d7a938 --- /dev/null +++ b/src/views/subscription/consumer/detail.vue @@ -0,0 +1,96 @@ + + + diff --git a/src/views/subscription/consumer/index.vue b/src/views/subscription/consumer/index.vue index 059dc337..fb861d71 100644 --- a/src/views/subscription/consumer/index.vue +++ b/src/views/subscription/consumer/index.vue @@ -24,7 +24,7 @@ const [register, { reload }] = useTable({ isTreeTable: true, useSearchForm: true, actionColumn: { - width: 160, + width: 220, title: '操作', dataIndex: 'action', fixed: 'right', @@ -55,6 +55,11 @@ async function handleDelete(id: string) {