From 76d07c0c336eafb918fba27450d63865baeb0642 Mon Sep 17 00:00:00 2001 From: wupengfei <834520024@qq.com> Date: 星期一, 29 九月 2025 09:19:56 +0800 Subject: [PATCH] Merge branch 'master' into dev-1.1.2 --- src/views/TraceIdLogManage/components/ThreeResourceLogsView.vue | 105 +++++++++++++++++++++------------------------------- 1 files changed, 43 insertions(+), 62 deletions(-) diff --git a/src/views/TraceIdLogManage/components/ThreeResourceLogsView.vue b/src/views/TraceIdLogManage/components/ThreeResourceLogsView.vue index e650493..333817d 100644 --- a/src/views/TraceIdLogManage/components/ThreeResourceLogsView.vue +++ b/src/views/TraceIdLogManage/components/ThreeResourceLogsView.vue @@ -1,84 +1,40 @@ <template> - <!-- <el-collapse v-model="activeName" accordion> - <el-collapse-item - v-for="item in threeResourceLogs" - :key="item.id" - name="1" - style="overflow: auto; max-height: 600px" - > - <ProForm :model="item" is-read> - <ProFormItemV2 label="method:"> - {{ EnumResourceMethodText[item.method] }} - </ProFormItemV2> - <ProFormItemV2 label="domain:">{{ item.domain }} </ProFormItemV2> - <ProFormItemV2 label="path:"> {{ item.path }}</ProFormItemV2> - <ProFormItemV2 label="requestHeaders:" label-position="top"> - <json-viewer - :copyable="true" - :boxed="true" - :value="JSON.parse(item.requestHeaders)" - ></json-viewer> - </ProFormItemV2> - <ProFormItemV2 label="request:" label-position="top"> - <json-viewer - :copyable="true" - :boxed="true" - :value="JSON.parse(item.request)" - ></json-viewer> - </ProFormItemV2> - <ProFormItemV2 label="responseHeaders:" label-position="top"> - <json-viewer - :copyable="true" - :boxed="true" - :value="JSON.parse(item.responseHeaders)" - ></json-viewer> - </ProFormItemV2> - <ProFormItemV2 label="response:" label-position="top"> - <json-viewer - :copyable="true" - :boxed="true" - :value="JSON.parse(item.response)" - ></json-viewer> - </ProFormItemV2> - <ProFormItemV2 label="isSuccess:"> {{ item.isSuccess ? '鏄�' : '鍚�' }}</ProFormItemV2> - <ProFormItemV2 label="elapsedMilliseconds:"> {{ item.elapsedMilliseconds }}</ProFormItemV2> - <ProFormItemV2 label="createdUser:"> - <json-viewer - :copyable="true" - :boxed="true" - :value="JSON.parse(JSON.stringify(item.createdUser))" - ></json-viewer> - </ProFormItemV2> - <ProFormItemV2 label="createdTime:"> - {{ format(item.createdTime, 'YYYY-MM-DD HH:mm:ss') }}</ProFormItemV2 - > - </ProForm> - </el-collapse-item> - </el-collapse> --> <AppContainer> <ProTableV2 :columns="columns" - :show-pagination="false" + :operationBtns="operationBtns" :table-data="threeResourceLogs" :column-render-map="columnsRenderProps" > <template #requestHeaders="{ row }"> - <el-button type="primary" link @click="handleAdd({ json: JSON.parse(row.requestHeaders) })" + <el-button + type="primary" + link + @click="handleAdd({ json: { requestHeaders: JSON.parse(row.requestHeaders) } })" >鏌ョ湅</el-button > </template> <template #request="{ row }"> - <el-button type="primary" link @click="handleAdd({ json: JSON.parse(row.request) })" + <el-button + type="primary" + link + @click="handleAdd({ json: { request: JSON.parse(row.request) } })" >鏌ョ湅</el-button > </template> <template #responseHeaders="{ row }"> - <el-button type="primary" link @click="handleAdd({ json: JSON.parse(row.responseHeaders) })" + <el-button + type="primary" + link + @click="handleAdd({ json: { responseHeaders: JSON.parse(row.responseHeaders) } })" >鏌ョ湅</el-button > </template> <template #response="{ row }"> - <el-button type="primary" link @click="handleAdd({ json: JSON.parse(row.response) })" + <el-button + type="primary" + link + @click="handleAdd({ json: { response: JSON.parse(row.response) } })" >鏌ョ湅</el-button > </template> @@ -86,7 +42,7 @@ <el-button type="primary" link - @click="handleAdd({ json: JSON.parse(JSON.stringify(row.createdUser)) })" + @click="handleAdd({ json: { createdUser: JSON.parse(JSON.stringify(row.createdUser)) } })" >鏌ョ湅</el-button > </template> @@ -102,6 +58,7 @@ defineColumns, ProTableV2Props, useFormDialog, + defineOperationBtns, } from '@bole-core/components'; import { EnumResourceMethodText } from '@/constants'; import JsonViewerDialog from './JsonViewerDialog.vue'; @@ -138,6 +95,18 @@ })) ); +const operationBtns = defineOperationBtns([ + { + data: { + enCode: 'detailBtn', + name: '鏌ョ湅', + }, + emits: { + onClick: (role) => openDialog(role), + }, + }, +]); + const columnsRenderProps: ProTableV2Props['columnRenderMap'] = { method: { type: 'enum', valueEnum: EnumResourceMethodText }, isSuccess: { @@ -153,4 +122,16 @@ json: null, }, }); + +function openDialog(row: API.GetResourceLogsQueryResultItem) { + handleAdd({ + json: { + requestHeaders: JSON.parse(row.requestHeaders), + request: JSON.parse(row.request), + responseHeaders: JSON.parse(row.responseHeaders), + response: JSON.parse(row.response), + createdUser: JSON.parse(JSON.stringify(row.createdUser)), + }, + }); +} </script> -- Gitblit v1.9.1