updata:智控台页面添加语言切换,支持中英繁。

This commit is contained in:
rainv123
2025-09-11 17:10:50 +08:00
parent a9b0775469
commit 98a1483032
41 changed files with 3800 additions and 1061 deletions
@@ -3,7 +3,7 @@
<HeaderBar />
<div class="operation-bar">
<h2 class="page-title">服务端管理</h2>
<h2 class="page-title">{{ $t('serverSideManager.pageTitle') }}</h2>
</div>
<div class="main-wrapper">
@@ -11,19 +11,19 @@
<div class="content-area">
<el-card class="params-card" shadow="never">
<el-table ref="paramsTable" :data="paramsList" class="transparent-table" v-loading="loading"
element-loading-text="拼命加载中" element-loading-spinner="el-icon-loading"
:element-loading-text="$t('serverSideManager.loading')" element-loading-spinner="el-icon-loading"
element-loading-background="rgba(255, 255, 255, 0.7)" :header-cell-class-name="headerCellClassName">
<el-table-column label="选择" align="center" width="120">
<el-table-column :label="$t('modelConfig.select')" align="center" width="120">
<template slot-scope="scope">
<el-checkbox v-model="scope.row.selected"></el-checkbox>
</template>
</el-table-column>
<el-table-column label="ws地址" prop="address" align="center"></el-table-column>
<el-table-column label="操作" prop="operator" align="center" show-overflow-tooltip>
<el-table-column :label="$t('serverSideManager.wsAddress')" prop="address" align="center"></el-table-column>
<el-table-column :label="$t('serverSideManager.operation')" prop="operator" align="center" show-overflow-tooltip>
<template slot-scope="scope">
<el-button size="medium" type="text" @click="emitAction(scope.row, actionMap.restart)">重启</el-button>
<el-button size="medium" type="text" @click="emitAction(scope.row, actionMap.restart)">{{ $t('serverSideManager.restart') }}</el-button>
<el-button size="medium" type="text"
@click="emitAction(scope.row, actionMap.update_config)">更新配置</el-button>
@click="emitAction(scope.row, actionMap.update_config)">{{ $t('serverSideManager.updateConfig') }}</el-button>
</template>
</el-table-column>
</el-table>
@@ -44,33 +44,20 @@ import Api from "@/apis/api";
import HeaderBar from "@/components/HeaderBar.vue";
import ParamDialog from "@/components/ParamDialog.vue";
import VersionFooter from "@/components/VersionFooter.vue";
import i18n from '@/i18n';
export default {
components: { HeaderBar, ParamDialog, VersionFooter },
data() {
return {
paramsList: [],
actionMap: {
restart: {
value: 'restart',
title: "重启服务端",
message: "确定要重启服务端吗?",
confirmText: "重启",
},
update_config: {
value: 'update_config',
title: "更新配置",
message: "确定要更新配置吗?",
confirmText: "更新",
}
},
currentPage: 1,
loading: false,
pageSize: 10,
pageSizeOptions: [10, 20, 50, 100],
total: 0,
dialogVisible: false,
dialogTitle: "新增参数",
dialogTitle: '',
isAllSelected: false,
sensitive_keys: ["api_key", "personal_access_token", "access_token", "token", "secret", "access_key_secret", "secret_key"],
paramForm: {
@@ -84,6 +71,10 @@ export default {
created() {
this.fetchParams();
},
mounted() {
this.getServerList();
this.dialogTitle = this.$t('paramManagement.addParam');
},
computed: {
pageCount() {
@@ -104,6 +95,22 @@ export default {
}
return pages;
},
actionMap() {
return {
restart: {
value: 'restart',
title: this.$t('serverSideManager.restartServer'),
message: this.$t('serverSideManager.confirmRestart'),
confirmText: this.$t('serverSideManager.restart'),
},
update_config: {
value: 'update_config',
title: this.$t('serverSideManager.updateConfigTitle'),
message: this.$t('serverSideManager.confirmUpdateConfig'),
confirmText: this.$t('serverSideManager.updateConfig'),
}
};
}
},
methods: {
handlePageSizeChange(val) {
@@ -122,7 +129,7 @@ export default {
this.total = data.data.length;
} else {
this.$message.error({
message: data.msg || '获取参数列表失败',
message: data.msg || this.$t('serverSideManager.getServerListFailed'),
showClose: true
});
}
@@ -136,6 +143,7 @@ export default {
// 弹开询问框
this.$confirm(actionItem.message, actionItem.title, {
confirmButtonText: actionItem.confirmText, // 确认按钮文本
cancelButtonText: this.$t('common.cancel') // 取消按钮文本
}).then(() => {
// 用户点击了确认按钮
Api.admin.sendWsServerAction({
@@ -144,13 +152,13 @@ export default {
}, ({ data }) => {
if (data.code !== 0) {
this.$message.error({
message: data.msg || '操作失败',
message: data.msg || this.$t('serverSideManager.operationFailed'),
showClose: true
});
return;
}
this.$message.success({
message: `${actionItem.title}成功`,
message: actionItem.value === 'restart' ? this.$t('serverSideManager.restartSuccess') : this.$t('serverSideManager.updateConfigSuccess'),
showClose: true
})
})
@@ -450,26 +458,7 @@ export default {
.el-table__body-wrapper {
max-height: calc(var(--table-max-height) - 40px);
overflow-y: auto;
}
}
:deep(.el-loading-mask) {
background-color: rgba(255, 255, 255, 0.6) !important;
backdrop-filter: blur(2px);
}
:deep(.el-loading-spinner .circular) {
width: 28px;
height: 28px;
}
:deep(.el-loading-spinner .path) {
stroke: #6b8cff;
}
:deep(.el-loading-text) {
color: #6b8cff !important;
font-size: 14px;
margin-top: 8px;
}
</style>