增加页面翻译

This commit is contained in:
不做码农
2022-05-22 19:34:16 +08:00
parent d24546faf7
commit 2a1425d749
11 changed files with 195 additions and 83 deletions
+4 -4
View File
@@ -6,7 +6,7 @@
<svg-icon name="peoples" class-name="card-panel-icon" />
</div>
<div class="card-panel-description">
<div class="card-panel-text" v-waves>在线用户</div>
<div class="card-panel-text" v-waves>{{$t('layout.onlineUsers')}}</div>
<div id="onlineNum" class="card-panel-num">{{ state.onlineUserNum }}</div>
</div>
</div>
@@ -17,7 +17,7 @@
<svg-icon name="message" class-name="card-panel-icon" />
</div>
<div class="card-panel-description">
<div class="card-panel-text" v-waves>消息</div>
<div class="card-panel-text" v-waves>{{$t('layout.message')}}</div>
<div class="card-panel-num" id="messageNum">{{ state.chatNum }}</div>
</div>
</div>
@@ -28,7 +28,7 @@
<svg-icon name="money" class-name="card-panel-icon" />
</div>
<div class="card-panel-description">
<div class="card-panel-text" v-waves>金额</div>
<div class="card-panel-text" v-waves>{{$t('layout.amount')}}</div>
<div id="amount" class="card-panel-num">{{ state.amount }}</div>
</div>
</div>
@@ -39,7 +39,7 @@
<svg-icon name="shopping" class-name="card-panel-icon" />
</div>
<div class="card-panel-description">
<div class="card-panel-text" v-waves>订单</div>
<div class="card-panel-text" v-waves>{{$t('layout.order')}}</div>
<div id="order" class="card-panel-num">{{ state.order }}</div>
</div>
</div>
+7 -9
View File
@@ -34,7 +34,7 @@
</el-row>
<el-row :gutter="20">
<el-col :lg="16" :sm="24">
<h2>ZRAdmin.NET后台管理框架</h2>
<h2>ZRAdmin.NET {{ $t('layout.BackstageManagement') }}</h2>
<p>
ZRAdmin.NET借鉴了很多开源项目的优点,让你开发Web管理系统更简单,所以我也把它给开源了(前端
<code>vue页面</code>主要参考若依,在此表示感谢.)
@@ -53,9 +53,7 @@
</el-link>
</p>
<p>
<el-button type="primary" size="small" icon="Cloudy" plain @click="goTarget('https://gitee.com/izory/ZrAdminNetCore')"
>访问码云
</el-button>
<el-button type="primary" size="small" icon="Cloudy" plain @click="goTarget('https://gitee.com/izory/ZrAdminNetCore')">Gitee </el-button>
<el-button type="primary" size="small" icon="Cloudy" plain @click="goTarget('https://github.com/izhaorui/ZrAdmin.NET')"
>Github
</el-button>
@@ -64,9 +62,9 @@
<h3>{{ $t('layout.tip1') }}</h3>
</el-col>
<el-col :lg="8" :sm="24">
<h2>技术选型</h2>
<h2>{{ $t('layout.technicalSelection') }}</h2>
<el-col :span="10">
<h4>后端技术</h4>
<h4>{{ $t('layout.backendTechnology') }}</h4>
<ul>
<li>NET6</li>
<li>JWT</li>
@@ -81,7 +79,7 @@
</ul>
</el-col>
<el-col :span="10">
<h4>前端技术</h4>
<h4>{{ $t('layout.frontendTechnology') }}</h4>
<ul>
<li>Vue3</li>
<li>Vuex</li>
@@ -106,7 +104,7 @@
</template>
<div class="body">
<div style="color: red">打赏作者喝杯咖啡表示鼓励</div>
<div style="color: red">{{ $t('layout.rewardUser') }}</div>
<img src="@/assets/images/reward.jpg" alt="donate" style="width: 100%" />
</div>
</el-card>
@@ -122,7 +120,7 @@
<el-link href="http://www.izhaorui.cn/doc" target="_blank"> http://www.izhaorui.cn/doc </el-link>
</p>
<p>
<el-icon> <UserFilled /> </el-icon>QQ群:
<el-icon> <UserFilled /> </el-icon>{{ $t('layout.qqGroup') }}:
<el-link
target="_black"
href="https://qm.qq.com/cgi-bin/qm/qr?k=Y__-fTGo_K2UIo3nWz7QnvS8LoRfPWKm&authKey=/ldXxiuolv80PF4yC8VtLk/TvAYbIhm2LKP8YVHCxAk+x2I+iqPAM1H/IsxQ+0gC&noverify=0">
+8 -8
View File
@@ -5,7 +5,7 @@
<el-col :md="24" :lg="16" :xl="16" class="mb10">
<el-card shadow="hover">
<template #header>
<span>我的工作台</span>
<span>{{$t('layout.myWorkbench')}}</span>
</template>
<div class="user-item">
<div class="user-item-left">
@@ -20,7 +20,7 @@
<el-col :xs="24" :sm="24" :md="24">
<el-row>
<el-col :xs="24" :lg="8" class="right-l-v">
<div class="right-label">昵称:</div>
<div class="right-label">{{$t('common.nickName')}}:</div>
<div class="right-value">{{ userInfo.nickName }}</div>
</el-col>
<el-col :xs="24" :lg="16" class="right-l-v">
@@ -42,7 +42,7 @@
</div>
</el-col>
<el-col :xs="24" :sm="12" :md="16" class="right-l-v">
<div class="right-label one-text-overflow">时间:</div>
<div class="right-label one-text-overflow">{{$t('common.time')}}:</div>
<div class="right-value one-text-overflow">
{{ currentTime }}
</div>
@@ -51,7 +51,7 @@
</el-col>
<el-col :lg="24" class="mt10">
<el-button size="small" icon="edit">
<router-link to="/user/profile">修改信息</router-link>
<router-link to="/user/profile">{{$t('layout.modifyInformation')}}</router-link>
</el-button>
<!-- <el-button size="small" icon="el-icon-position" type="primary">发布活动</el-button> -->
</el-col>
@@ -64,8 +64,8 @@
<el-card shadow="hover">
<template #header>
<div>
<span>在线用户</span>
<el-button class="home-card-more" text @click="onOpenGitee">更多</el-button>
<span>{{$t('layout.onlineUsers')}}</span>
<el-button class="home-card-more" text @click="onOpenGitee">{{$t('btn.more')}}</el-button>
</div>
</template>
<div class="info">
@@ -75,6 +75,7 @@
<ul class="info-ul">
<li v-for="(v, k) in onlineUsers" :key="k" class="info-item">
<div class="info-item-left" v-text="v.name"></div>
<div>{{v.userIP}}</div>
<div class="info-item-right" v-text="dayjs(v.loginTime).format('HH:mm:ss')"></div>
</li>
</ul></div
@@ -165,7 +166,6 @@ function onOpenGitee() {}
<style lang="scss" scoped>
.home {
width: 97%;
overflow: hidden;
.home-card-more {
float: right;
@@ -198,7 +198,7 @@ function onOpenGitee() {}
display: flex;
.right-label {
color: gray;
width: 40px;
width: 75px;
}
.right-value {
flex: 1;
+39 -39
View File
@@ -1,10 +1,10 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch">
<el-form-item label="菜单名称" prop="menuName">
<el-form-item :label="$t('m.menuName')" prop="menuName">
<el-input v-model="queryParams.menuName" placeholder="请输入菜单名称" clearable @keyup.enter="handleQuery" />
</el-form-item>
<el-form-item label="状态" prop="status">
<el-form-item :label="$t('m.menuState')" prop="status">
<el-select v-model="queryParams.status" placeholder="菜单状态" clearable>
<el-option v-for="dict in sys_normal_disable" :key="dict.dictValue" :label="dict.dictLabel" :value="dict.dictValue" />
</el-select>
@@ -33,23 +33,23 @@
:default-expand-all="isExpandAll"
border
:tree-props="{ children: 'children', hasChildren: 'hasChildren' }">
<el-table-column prop="menuName" label="菜单名称" :show-overflow-tooltip="true" width="160"></el-table-column>
<el-table-column prop="icon" label="图标" align="center" width="60">
<el-table-column prop="menuName" :label="$t('m.menuName')" :show-overflow-tooltip="true" width="160"></el-table-column>
<el-table-column prop="icon" :label="$t('m.icon')" align="center" width="60">
<template #default="scope">
<svg-icon :name="scope.row.icon" />
</template>
</el-table-column>
<el-table-column prop="menuId" label="菜单id" :show-overflow-tooltip="true" width="80" align="center"></el-table-column>
<el-table-column prop="menuType" label="类型" align="center" width="80">
<el-table-column prop="menuId" :label="$t('m.menuid')" :show-overflow-tooltip="true" width="80" align="center"></el-table-column>
<el-table-column prop="menuType" :label="$t('m.menuType')" align="center" width="80">
<template #default="scope">
<el-tag type="danger" v-if="scope.row.menuType == 'M' && scope.row.isFrame == 1">链接</el-tag>
<el-tag v-else-if="scope.row.menuType == 'C'">菜单</el-tag>
<el-tag type="success" v-else-if="scope.row.menuType == 'M'">目录</el-tag>
<el-tag type="warning" v-else-if="scope.row.menuType == 'F'">按钮</el-tag>
<el-tag type="danger" v-if="scope.row.menuType == 'M' && scope.row.isFrame == 1">{{ $t('m.link') }}</el-tag>
<el-tag v-else-if="scope.row.menuType == 'C'">{{ $t('m.menu') }}</el-tag>
<el-tag type="success" v-else-if="scope.row.menuType == 'M'">{{ $t('m.directory') }}</el-tag>
<el-tag type="warning" v-else-if="scope.row.menuType == 'F'">{{ $t('m.button') }}</el-tag>
</template>
</el-table-column>
<!-- <el-table-column prop="orderNum" label="排序" width="60" align="center"></el-table-column> -->
<el-table-column prop="orderNum" label="排序" width="90" sortable align="center">
<el-table-column prop="orderNum" :label="$t('m.sort')" width="90" sortable align="center">
<template #default="scope">
<span v-show="editIndex != scope.$index" @click="editCurrRow(scope.$index)">{{ scope.row.orderNum }}</span>
<el-input
@@ -59,24 +59,24 @@
@blur="handleChangeSort(scope.row)"></el-input>
</template>
</el-table-column>
<el-table-column prop="perms" label="权限标识" :show-overflow-tooltip="true"></el-table-column>
<el-table-column prop="component" label="组件路径" :show-overflow-tooltip="true"></el-table-column>
<el-table-column prop="visible" label="显示" width="70" align="center">
<el-table-column prop="perms" :label="$t('m.authorityID')" :show-overflow-tooltip="true"></el-table-column>
<el-table-column prop="component" :label="$t('m.componentPath')" :show-overflow-tooltip="true"></el-table-column>
<el-table-column prop="visible" :label="$t('m.isShow')" width="70" align="center">
<template #default="scope">
<dict-tag :options="sys_show_hide" :value="scope.row.visible" />
</template>
</el-table-column>
<el-table-column prop="status" label="状态" width="80" align="center">
<el-table-column prop="status" :label="$t('m.menuState')" width="80" align="center">
<template #default="scope">
<dict-tag :options="sys_normal_disable" :value="scope.row.status" />
</template>
</el-table-column>
<el-table-column label="创建时间" align="center" prop="createTime">
<el-table-column :label="$t('common.addTime')" align="center" prop="createTime">
<template #default="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" width="170" class-name="small-padding fixed-width">
<el-table-column :label="$t('btn.operate')" align="center" width="170" class-name="small-padding fixed-width">
<template #default="scope">
<el-button text size="small" icon="Edit" @click="handleUpdate(scope.row)" v-hasPermi="['system:menu:edit']"></el-button>
<el-button text size="small" icon="Plus" @click="handleAdd(scope.row)" v-hasPermi="['system:menu:add']"></el-button>
@@ -90,7 +90,7 @@
<el-form ref="menuRef" :model="form" :rules="rules" label-width="100px">
<el-row>
<el-col :lg="24">
<el-form-item label="上级菜单">
<el-form-item :label="$t('m.parentMenu')">
<el-cascader
class="w100"
:options="menuOptions"
@@ -106,16 +106,16 @@
</el-form-item>
</el-col>
<el-col :lg="24">
<el-form-item label="菜单类型" prop="menuType">
<el-form-item :label="$t('m.menuType')" prop="menuType">
<el-radio-group v-model="form.menuType">
<el-radio label="M">目录</el-radio>
<el-radio label="C">菜单</el-radio>
<el-radio label="F">按钮</el-radio>
<el-radio label="M">{{ $t('m.directory') }}</el-radio>
<el-radio label="C">{{ $t('m.menu') }}</el-radio>
<el-radio label="F">{{ $t('m.button') }}</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item label="菜单名称" prop="menuName">
<el-form-item :label="$t('m.menuName')" prop="menuName">
<el-input v-model="form.menuName" placeholder="请输入菜单名称" />
</el-form-item>
</el-col>
@@ -127,18 +127,18 @@
<questionFilled />
</el-icon>
</el-tooltip>
多语言key
{{ $t('languageKey') }}
</template>
<el-input v-model="form.menuNameKey" placeholder="请输入多语言菜单key" />
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item label="显示排序" prop="orderNum">
<el-form-item :label="$t('m.sort')" prop="orderNum">
<el-input-number v-model="form.orderNum" controls-position="right" :min="0" />
</el-form-item>
</el-col>
<el-col :lg="24" v-if="form.menuType != 'F'">
<el-form-item label="菜单图标" prop="icon">
<el-form-item :label="$t('m.icon')" prop="icon">
<el-popover placement="bottom-start" :width="540" v-model:visible="showChooseIcon" trigger="click" @show="showSelectIcon">
<template #reference>
<el-input v-model="form.icon" placeholder="点击选择图标" @click="showSelectIcon" readonly>
@@ -162,11 +162,11 @@
<questionFilled />
</el-icon>
</el-tooltip>
是否外链
{{ $t('m.isFrame') }}
</template>
<el-radio-group v-model="form.isFrame">
<el-radio label="1">是</el-radio>
<el-radio label="0">否</el-radio>
<el-radio label="1">{{ $t('common.yes') }}</el-radio>
<el-radio label="0">{{ $t('common.no') }}</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
@@ -178,7 +178,7 @@
<questionFilled />
</el-icon>
</el-tooltip>
路由地址
{{ $t('m.routePath') }}
</template>
<el-input v-model="form.path" placeholder="请输入路由地址" />
</el-form-item>
@@ -191,7 +191,7 @@
<questionFilled />
</el-icon>
</el-tooltip>
组件路径
{{ $t('m.componentPath') }}
</template>
<el-input v-model="form.component" placeholder="请输入组件路径" />
</el-form-item>
@@ -205,7 +205,7 @@
<questionFilled />
</el-icon>
</el-tooltip>
权限字符
{{ $t('m.permissionStr') }}
</template>
</el-form-item>
</el-col>
@@ -230,11 +230,11 @@
<questionFilled />
</el-icon>
</el-tooltip>
是否缓存
{{ $t('m.isCache') }}
</template>
<el-radio-group v-model="form.isCache">
<el-radio label="0">缓存</el-radio>
<el-radio label="1">不缓存</el-radio>
<el-radio label="0">{{ $t('common.yes') }}</el-radio>
<el-radio label="1">{{ $t('common.no') }}</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
@@ -246,7 +246,7 @@
<questionFilled />
</el-icon>
</el-tooltip>
显示状态
{{ $t('m.isShow') }}
</template>
<el-radio-group v-model="form.visible">
<el-radio v-for="dict in sys_show_hide" :key="dict.dictValue" :label="dict.dictValue">{{ dict.dictLabel }}</el-radio>
@@ -261,7 +261,7 @@
<questionFilled />
</el-icon>
</el-tooltip>
菜单状态
{{ $t('m.menuState') }}
</template>
<el-radio-group v-model="form.status">
<el-radio v-for="dict in sys_normal_disable" :key="dict.dictValue" :label="dict.dictValue">{{ dict.dictLabel }}</el-radio>
@@ -393,7 +393,7 @@ function handleAdd(row) {
form.value.parentId = 0
}
open.value = true
title.value = '添加菜单'
title.value = proxy.$t('btn.add')
}
/** 展开/折叠操作 */
function toggleExpandAll() {
@@ -410,7 +410,7 @@ async function handleUpdate(row) {
getMenu(row.menuId).then((response) => {
form.value = response.data
open.value = true
title.value = '修改菜单'
title.value = proxy.$t('btn.edit')
})
}
/** 提交按钮 */