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) {