From 50e95b985a72fcec4a93a2470e9efdfb2620148a Mon Sep 17 00:00:00 2001
From: zhou zhou <3272660260@qq.com>
Date: 星期四, 02 四月 2026 15:46:09 +0800
Subject: [PATCH] #i18n
---
rsf-design/src/views/system/dept/index.vue | 44 +++++++++++++++++++++++++++-----------------
1 files changed, 27 insertions(+), 17 deletions(-)
diff --git a/rsf-design/src/views/system/dept/index.vue b/rsf-design/src/views/system/dept/index.vue
index 2dbb5b6..d77b852 100644
--- a/rsf-design/src/views/system/dept/index.vue
+++ b/rsf-design/src/views/system/dept/index.vue
@@ -17,9 +17,9 @@
>
<template #left>
<ElSpace wrap>
- <ElButton v-auth="'add'" @click="handleAdd" v-ripple>鏂板閮ㄩ棬</ElButton>
+ <ElButton v-auth="'add'" @click="handleAdd" v-ripple>{{ t('pages.system.dept.buttons.add') }}</ElButton>
<ElButton @click="toggleExpand" v-ripple>
- {{ isExpanded ? '鏀惰捣' : '灞曞紑' }}
+ {{ isExpanded ? t('common.actions.collapse') : t('common.actions.expand') }}
</ElButton>
</ElSpace>
</template>
@@ -48,6 +48,7 @@
<script setup>
import { ElMessage, ElMessageBox } from 'element-plus'
+ import { useI18n } from 'vue-i18n'
import { guardRequestWithMessage } from '@/utils/sys/requestGuard'
import { useTableColumns } from '@/hooks/core/useTableColumns'
import {
@@ -70,6 +71,7 @@
defineOptions({ name: 'Dept' })
+ const { t } = useI18n()
const loading = ref(false)
const isExpanded = ref(false)
const tableRef = ref()
@@ -83,18 +85,19 @@
const searchItems = computed(() => [
{
- label: '閮ㄩ棬鍚嶇О',
+ label: t('pages.system.dept.table.name'),
key: 'condition',
type: 'input',
props: {
clearable: true,
- placeholder: '璇疯緭鍏ラ儴闂ㄥ悕绉�'
+ placeholder: t('pages.system.dept.search.conditionPlaceholder')
}
}
])
const { columnChecks, columns } = useTableColumns(() =>
createDeptTableColumns({
+ t,
handleEdit: handleEdit,
handleDelete: handleDelete
})
@@ -111,7 +114,7 @@
fetchGetDeptTree(buildDeptSearchParams(searchForm)),
[],
{
- timeoutMessage: '閮ㄩ棬鍔犺浇瓒呮椂锛屽凡鍋滄绛夊緟'
+ timeoutMessage: t('pages.system.dept.messages.pageTimeout')
}
)
const normalizedRows = normalizeDeptTreeRows(tree || [])
@@ -148,23 +151,30 @@
deptTreeOptions.value = buildDeptTreeOptions(tableData.value, row.id)
dialogVisible.value = true
} catch (error) {
- ElMessage.error(error?.message || '鑾峰彇閮ㄩ棬璇︽儏澶辫触')
+ ElMessage.error(error?.message || t('pages.system.dept.messages.detailFailed'))
}
}
async function handleDelete(row) {
try {
- await ElMessageBox.confirm(`纭畾瑕佸垹闄ら儴闂ㄣ��${row.name || row.id}銆嶅悧锛焋, '鍒犻櫎纭', {
- confirmButtonText: '纭畾',
- cancelButtonText: '鍙栨秷',
- type: 'warning'
- })
+ await ElMessageBox.confirm(
+ t('crud.confirm.deleteMessage', {
+ entity: t('pages.system.dept.entity'),
+ label: row.name || row.id
+ }),
+ t('crud.confirm.deleteTitle'),
+ {
+ confirmButtonText: t('common.confirm'),
+ cancelButtonText: t('common.cancel'),
+ type: 'warning'
+ }
+ )
await fetchDeleteDept(row.id)
- ElMessage.success('鍒犻櫎鎴愬姛')
+ ElMessage.success(t('crud.messages.deleteSuccess'))
await loadDeptTree()
} catch (error) {
if (error !== 'cancel') {
- ElMessage.error(error?.message || '鍒犻櫎澶辫触')
+ ElMessage.error(error?.message || t('crud.messages.deleteFailed'))
}
}
}
@@ -172,23 +182,23 @@
async function handleDialogSubmit(formData) {
const payload = buildDeptSavePayload(formData)
if (payload.id && payload.id === payload.parentId) {
- ElMessage.error('涓婄骇閮ㄩ棬涓嶈兘閫夋嫨褰撳墠閮ㄩ棬')
+ ElMessage.error(t('pages.system.dept.messages.parentSelfInvalid'))
return
}
try {
if (payload.id) {
await fetchUpdateDept(payload)
- ElMessage.success('淇敼鎴愬姛')
+ ElMessage.success(t('crud.messages.updateSuccess'))
} else {
await fetchSaveDept(payload)
- ElMessage.success('鏂板鎴愬姛')
+ ElMessage.success(t('crud.messages.createSuccess'))
}
dialogVisible.value = false
currentDeptData.value = buildDeptDialogModel()
await loadDeptTree()
} catch (error) {
- ElMessage.error(error?.message || '鎻愪氦澶辫触')
+ ElMessage.error(error?.message || t('crud.messages.submitFailed'))
}
}
--
Gitblit v1.9.1