From a1d7e81859f554f3a53680cc35f0f49bf1f77098 Mon Sep 17 00:00:00 2001
From: wwf <1971391498@qq.com>
Date: 星期四, 14 五月 2026 14:37:02 +0800
Subject: [PATCH] 导入项目

---
 src/views/infra/apiAccessLog/ApiAccessLogDetail.vue |   79 +++++++++++++++++++++++++++++++++++++++
 1 files changed, 79 insertions(+), 0 deletions(-)

diff --git a/src/views/infra/apiAccessLog/ApiAccessLogDetail.vue b/src/views/infra/apiAccessLog/ApiAccessLogDetail.vue
new file mode 100644
index 0000000..314fd26
--- /dev/null
+++ b/src/views/infra/apiAccessLog/ApiAccessLogDetail.vue
@@ -0,0 +1,79 @@
+<template>
+  <Dialog v-model="dialogVisible" :max-height="500" :scroll="true" title="璇︽儏" width="800">
+    <el-descriptions :column="1" border>
+      <el-descriptions-item label="鏃ュ織涓婚敭" min-width="120">
+        {{ detailData.id }}
+      </el-descriptions-item>
+      <el-descriptions-item label="閾捐矾杩借釜">
+        {{ detailData.traceId }}
+      </el-descriptions-item>
+      <el-descriptions-item label="搴旂敤鍚�">
+        {{ detailData.applicationName }}
+      </el-descriptions-item>
+      <el-descriptions-item label="鐢ㄦ埛淇℃伅">
+        {{ detailData.userId }}
+        <dict-tag :type="DICT_TYPE.USER_TYPE" :value="detailData.userType" />
+      </el-descriptions-item>
+      <el-descriptions-item label="鐢ㄦ埛 IP">
+        {{ detailData.userIp }}
+      </el-descriptions-item>
+      <el-descriptions-item label="鐢ㄦ埛 UA">
+        {{ detailData.userAgent }}
+      </el-descriptions-item>
+      <el-descriptions-item label="璇锋眰淇℃伅">
+        {{ detailData.requestMethod }} {{ detailData.requestUrl }}
+      </el-descriptions-item>
+      <el-descriptions-item label="璇锋眰鍙傛暟">
+        {{ detailData.requestParams }}
+      </el-descriptions-item>
+      <el-descriptions-item label="璇锋眰缁撴灉">
+        {{ detailData.responseBody }}
+      </el-descriptions-item>
+      <el-descriptions-item label="璇锋眰鏃堕棿">
+        {{ formatDate(detailData.beginTime) }} ~ {{ formatDate(detailData.endTime) }}
+      </el-descriptions-item>
+      <el-descriptions-item label="璇锋眰鑰楁椂">{{ detailData.duration }} ms</el-descriptions-item>
+      <el-descriptions-item label="鎿嶄綔缁撴灉">
+        <div v-if="detailData.resultCode === 0">姝e父</div>
+        <div v-else-if="detailData.resultCode > 0">
+          澶辫触 | {{ detailData.resultCode }} | {{ detailData.resultMsg }}
+        </div>
+      </el-descriptions-item>
+      <el-descriptions-item label="鎿嶄綔妯″潡">
+        {{ detailData.operateModule }}
+      </el-descriptions-item>
+      <el-descriptions-item label="鎿嶄綔鍚�">
+        {{ detailData.operateName }}
+      </el-descriptions-item>
+      <el-descriptions-item label="鎿嶄綔鍚�">
+        <dict-tag :type="DICT_TYPE.INFRA_OPERATE_TYPE" :value="detailData.operateType" />
+      </el-descriptions-item>
+    </el-descriptions>
+  </Dialog>
+</template>
+
+<script lang="ts" setup>
+import { DICT_TYPE } from '@/utils/dict'
+import { formatDate } from '@/utils/formatTime'
+import * as ApiAccessLog from '@/api/infra/apiAccessLog'
+
+defineOptions({ name: 'ApiAccessLogDetail' })
+
+const dialogVisible = ref(false) // 寮圭獥鐨勬槸鍚﹀睍绀�
+const detailLoading = ref(false) // 琛ㄥ崟鍦板姞杞戒腑
+const detailData = ref({} as ApiAccessLog.ApiAccessLogVO) // 璇︽儏鏁版嵁
+
+/** 鎵撳紑寮圭獥 */
+const open = async (data: ApiAccessLog.ApiAccessLogVO) => {
+  dialogVisible.value = true
+  // 璁剧疆鏁版嵁
+  detailLoading.value = true
+  try {
+    detailData.value = data
+  } finally {
+    detailLoading.value = false
+  }
+}
+
+defineExpose({ open }) // 鎻愪緵 open 鏂规硶锛岀敤浜庢墦寮�寮圭獥
+</script>

--
Gitblit v1.8.0