diff --git a/src/views/device/Product/Detail/DeviceAccess/accessModal.vue b/src/views/device/Product/Detail/DeviceAccess/accessModal.vue index 3e5c6bbf..69286ec9 100644 --- a/src/views/device/Product/Detail/DeviceAccess/accessModal.vue +++ b/src/views/device/Product/Detail/DeviceAccess/accessModal.vue @@ -257,12 +257,15 @@ const findProvidersByProvider = (provider: string) => { */ const submitData = async () => { if (selectedRowKeys.value.length) { + if (checkData.value.channel === 'plugin') { const resp = await getProductByPluginId(checkData.value.channelId).catch(() => ({ success: false, result: []})) + const metadataResp = await getAccessConfig(props.productId!, checkData.value.id).catch(() => ({ success: false, result: {}})) emit('submit', { access: {...checkData.value}, - productTypes: resp.result + productTypes: resp.result, + metadata: metadataResp.result }) } else { loading.value= true diff --git a/src/views/device/Product/Detail/DeviceAccess/index.vue b/src/views/device/Product/Detail/DeviceAccess/index.vue index 99762247..cf5b621a 100644 --- a/src/views/device/Product/Detail/DeviceAccess/index.vue +++ b/src/views/device/Product/Detail/DeviceAccess/index.vue @@ -615,11 +615,13 @@ const checkAccess = async (data: any) => { productTypes.value = [] productData.id = undefined productData.metadata = {} + metadata.value = data.metadata?.[0] || { + properties: [] + } if (data.access.channel === 'plugin') { // 插件设备 markdownToHtml.value = '' productTypes.value = data.productTypes.map(item => ({ ...item, label: item.name, value: item.id})) } else { - metadata.value = data.metadata[0] handleColumns() markdownToHtml.value = config.value?.document ? marked(config.value.document) : ''; getGuide(!!data.metadata.length); //