From 287a666e1b2bb155e86aa88ebace201d1e8a51f6 Mon Sep 17 00:00:00 2001
From: zhou zhou <3272660260@qq.com>
Date: 星期四, 19 三月 2026 13:26:02 +0800
Subject: [PATCH] #AI.国际化
---
rsf-admin/src/page/system/aiShared/AiRuntimeSummary.jsx | 25 +++++++++++++++----------
1 files changed, 15 insertions(+), 10 deletions(-)
diff --git a/rsf-admin/src/page/system/aiShared/AiRuntimeSummary.jsx b/rsf-admin/src/page/system/aiShared/AiRuntimeSummary.jsx
index bf0a840..723ff59 100644
--- a/rsf-admin/src/page/system/aiShared/AiRuntimeSummary.jsx
+++ b/rsf-admin/src/page/system/aiShared/AiRuntimeSummary.jsx
@@ -1,8 +1,10 @@
import React, { useEffect, useState } from "react";
+import { useTranslate } from "react-admin";
import { Alert, Box, Card, CardContent, Chip, CircularProgress, Grid, Stack, Typography } from "@mui/material";
import { getAiConfigSummary } from "@/api/ai/configCenter";
const AiRuntimeSummary = ({ promptCode = "home.default" }) => {
+ const translate = useTranslate();
const [summary, setSummary] = useState(null);
const [loading, setLoading] = useState(true);
const [error, setError] = useState("");
@@ -22,7 +24,7 @@
if (!active) {
return;
}
- setError(err?.message || "鑾峰彇杩愯鎬佹憳瑕佸け璐�");
+ setError(err?.message || translate("ai.runtimeSummary.fetchFailed"));
})
.finally(() => {
if (active) {
@@ -46,9 +48,9 @@
<CardContent>
<Stack direction="row" justifyContent="space-between" alignItems="center" mb={2}>
<Box>
- <Typography variant="h6">褰撳墠杩愯鎬�</Typography>
+ <Typography variant="h6">{translate("ai.runtimeSummary.title")}</Typography>
<Typography variant="body2" color="text.secondary">
- 灞曠ず褰撳墠鐢熸晥鐨勬ā鍨嬨�丳rompt 涓� MCP 鎸傝浇淇℃伅銆�
+ {translate("ai.runtimeSummary.description")}
</Typography>
</Box>
{loading && <CircularProgress size={24} />}
@@ -57,29 +59,32 @@
{!loading && !error && summary && (
<Grid container spacing={2}>
<Grid item xs={12} md={4}>
- <Typography variant="caption" color="text.secondary">褰撳墠妯″瀷</Typography>
+ <Typography variant="caption" color="text.secondary">{translate("ai.runtimeSummary.currentModel")}</Typography>
<Typography variant="body1">{summary.activeModel || "--"}</Typography>
<Typography variant="body2" color="text.secondary">
{summary.activeParamName || "--"}
</Typography>
<Stack direction="row" spacing={1} mt={1} flexWrap="wrap" useFlexGap>
- <Chip size="small" label={`鏍¢獙 ${summary.activeParamValidateStatus || "--"}`} />
- <Chip size="small" variant="outlined" label={summary.activeParamValidatedAt || "鏈牎楠�"} />
+ <Chip size="small" label={translate("ai.runtimeSummary.validateStatus", { status: summary.activeParamValidateStatus || "--" })} />
+ <Chip size="small" variant="outlined" label={summary.activeParamValidatedAt || translate("ai.common.notValidated")} />
</Stack>
</Grid>
<Grid item xs={12} md={4}>
- <Typography variant="caption" color="text.secondary">褰撳墠 Prompt</Typography>
+ <Typography variant="caption" color="text.secondary">{translate("ai.runtimeSummary.currentPrompt")}</Typography>
<Typography variant="body1">{summary.promptName || "--"}</Typography>
<Typography variant="body2" color="text.secondary">
{summary.promptCode || "--"} / {summary.promptScene || "--"}
</Typography>
<Typography variant="body2" color="text.secondary" mt={1}>
- 鏈�杩戞洿鏂帮細{summary.activePromptUpdatedAt || "--"} / {summary.activePromptUpdatedBy || "--"}
+ {translate("ai.runtimeSummary.lastUpdated", {
+ time: summary.activePromptUpdatedAt || "--",
+ user: summary.activePromptUpdatedBy || "--",
+ })}
</Typography>
</Grid>
<Grid item xs={12} md={4}>
- <Typography variant="caption" color="text.secondary">宸插惎鐢� MCP</Typography>
- <Typography variant="body1">{summary.enabledMcpCount ?? 0} 涓�</Typography>
+ <Typography variant="caption" color="text.secondary">{translate("ai.runtimeSummary.enabledMcp")}</Typography>
+ <Typography variant="body1">{translate("ai.runtimeSummary.enabledMcpCount", { count: summary.enabledMcpCount ?? 0 })}</Typography>
<Stack direction="row" spacing={1} mt={1} flexWrap="wrap" useFlexGap>
{(summary.enabledMcpNames || []).map((name) => (
<Chip key={name} size="small" variant="outlined" label={name} />
--
Gitblit v1.9.1