diff --git a/rc_autoplc_front/src/api/system/manage-log.ts b/rc_autoplc_front/src/api/system/manage-log.ts
index 83611b4..d35f14e 100644
--- a/rc_autoplc_front/src/api/system/manage-log.ts
+++ b/rc_autoplc_front/src/api/system/manage-log.ts
@@ -36,4 +36,13 @@ export function managelogbyid(id: string | number) {
url: `/manage-log/getById/${id}`,
method: 'get',
})
-}
\ No newline at end of file
+}
+
+export function managelogexport(params: any) {
+ return request({
+ url: '/manage-log/export',
+ method: 'get',
+ params,
+ responseType: 'blob',
+ })
+}
diff --git a/rc_autoplc_front/src/api/tb/recordinfo.ts b/rc_autoplc_front/src/api/tb/recordinfo.ts
index e85b6e2..d35ecd6 100644
--- a/rc_autoplc_front/src/api/tb/recordinfo.ts
+++ b/rc_autoplc_front/src/api/tb/recordinfo.ts
@@ -37,3 +37,12 @@ export function recordInfoupd(data: any) {
data,
})
}
+
+export function recordInfoexport(params: any) {
+ return request({
+ url: '/recordInfo/export',
+ method: 'get',
+ params,
+ responseType: 'blob',
+ })
+}
diff --git a/rc_autoplc_front/src/views/Layout.vue b/rc_autoplc_front/src/views/Layout.vue
index 0ecd42f..cecb6dd 100644
--- a/rc_autoplc_front/src/views/Layout.vue
+++ b/rc_autoplc_front/src/views/Layout.vue
@@ -105,7 +105,7 @@
- 状态监控界面
+ 状态监控
diff --git a/rc_autoplc_front/src/views/manage-log/index.vue b/rc_autoplc_front/src/views/manage-log/index.vue
index f2f4620..8d9279c 100644
--- a/rc_autoplc_front/src/views/manage-log/index.vue
+++ b/rc_autoplc_front/src/views/manage-log/index.vue
@@ -59,6 +59,10 @@
查询
重置
+
+
+ 导出日志
+
@@ -131,7 +135,7 @@
@@ -427,6 +523,37 @@ onMounted(loadData)
right: 12px;
}
+.record-dot {
+ position: absolute;
+ min-width: 18px;
+ height: 18px;
+ padding: 0 5px;
+ border-radius: 999px;
+ background: #f56c6c;
+ color: #fff;
+ font-size: 12px;
+ font-weight: 700;
+ line-height: 18px;
+ text-align: center;
+ box-shadow: 0 0 0 2px #fff;
+ pointer-events: none;
+}
+
+.action-record-dot {
+ top: 10px;
+ right: 10px;
+}
+
+.island-list-record-dot {
+ bottom: 10px;
+ right: 10px;
+}
+
+.island-detail-record-dot {
+ top: 10px;
+ right: 10px;
+}
+
.island-card-main {
padding-right: 80px;
}
@@ -622,6 +749,63 @@ onMounted(loadData)
color: var(--el-text-color-secondary);
}
+.record-section {
+ margin-top: 16px;
+ padding-top: 12px;
+ border-top: 1px solid #ebeef5;
+}
+
+.record-section-title {
+ margin-bottom: 10px;
+ font-size: 14px;
+ font-weight: 700;
+ color: var(--el-text-color-primary);
+}
+
+.record-list {
+ display: flex;
+ flex-direction: column;
+ gap: 10px;
+}
+
+.record-empty-text {
+ color: var(--el-text-color-secondary);
+ font-size: 13px;
+ line-height: 1.6;
+}
+
+.record-item {
+ padding: 12px 14px;
+ border-radius: 10px;
+ background: #fafcff;
+ border: 1px solid #ebeef5;
+}
+
+.record-item-header {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ gap: 12px;
+ margin-bottom: 6px;
+}
+
+.record-item-name {
+ font-weight: 600;
+ color: var(--el-text-color-primary);
+}
+
+.record-item-content {
+ font-size: 12px;
+ color: var(--el-text-color-secondary);
+ line-height: 1.5;
+}
+
+.dialog-footer-actions {
+ display: flex;
+ justify-content: flex-end;
+ gap: 12px;
+}
+
@media (min-width: 1201px) {
.actions-row {
grid-template-columns: repeat(var(--actions-count), minmax(340px, 1fr));