前端国际化2

This commit is contained in:
ls
2026-01-07 19:43:06 +08:00
parent 92f4b27aeb
commit d287a3bfd3
8 changed files with 235 additions and 229 deletions

View File

@@ -8,7 +8,7 @@
v-model="query.name"
clearable
size="mini"
placeholder="输入部门名称搜索"
:placeholder="$t('sys_dept.name')"
style="width: 200px;"
class="filter-item"
@keyup.enter.native="crud.toQuery"
@@ -17,12 +17,12 @@
v-model="query.is_used"
clearable
size="mini"
placeholder="状态"
:placeholder="$t('common.status')"
class="filter-item"
style="width: 90px"
@change="crud.toQuery"
>
<el-option v-for="item in enabledTypeOptions" :key="item.key" :label="item.display_name" :value="item.key" />
<el-option v-for="item in enabledTypeOptions" :key="item.key" :label="$t('sys_dept.' + item.display_name.toLowerCase())" :value="item.key" />
</el-select>
<rrOperation />
</div>
@@ -37,13 +37,13 @@
width="500px"
>
<el-form ref="form" inline :model="form" :rules="rules" size="mini" label-width="80px">
<el-form-item label="部门编码" prop="code">
<el-form-item :label="$t('sys_dept.code')" prop="code">
<el-input v-model="form.code" :disabled="crud.status.edit" style="width: 370px;" />
</el-form-item>
<el-form-item label="部门名称" prop="name">
<el-form-item :label="$t('sys_dept.name')" prop="name">
<el-input v-model="form.name" style="width: 370px;" />
</el-form-item>
<el-form-item label="部门排序" prop="dept_sort">
<el-form-item :label="$t('sys_dept.dept_sort')" prop="dept_sort">
<el-input-number
v-model.number="form.dept_sort"
:min="0"
@@ -52,16 +52,16 @@
style="width: 370px;"
/>
</el-form-item>
<el-form-item label="外部标识" prop="ext_id">
<el-form-item :label="$t('sys_dept.ext_id')" prop="ext_id">
<el-input v-model="form.ext_id" style="width: 370px;" />
</el-form-item>
<el-form-item label="顶级部门">
<el-form-item :label="$t('sys_dept.top_dept')">
<el-radio-group v-model="form.isTop" style="width: 140px">
<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-form-item label="状态" prop="is_used">
<el-form-item :label="$t('common.status')" prop="is_used">
<el-switch
v-model="form.is_used"
active-color="#409EFF"
@@ -70,20 +70,20 @@
inactive-valu="false"
/>
</el-form-item>
<el-form-item v-if="form.isTop === '0'" style="margin-bottom: 0;" label="上级部门" prop="pid">
<el-form-item v-if="form.isTop === '0'" style="margin-bottom: 0;" :label="$t('sys_dept.parent_dept')" prop="pid">
<treeselect
v-model="form.pid"
:load-options="loadDepts"
:options="depts"
style="width: 370px;"
:normalizer="normalizer"
placeholder="选择部门类目"
:placeholder="$t('sys_dept.select_dept_category')"
/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="text" @click="crud.cancelCU">取消</el-button>
<el-button :loading="crud.status.cu === 2" type="primary" @click="crud.submitCU">确认</el-button>
<el-button type="text" @click="crud.cancelCU">{{$t('common.Cancel')}}</el-button>
<el-button :loading="crud.status.cu === 2" type="primary" @click="crud.submitCU">{{$t('common.Confirm')}}</el-button>
</div>
</el-dialog>
<!--表格渲染 :load="getDeptDatas" 点击事件 row-key需要指定唯一的数据id-->
@@ -102,9 +102,9 @@
>
<el-table-column :selectable="checkboxT" type="selection" width="55" />
<!-- <el-table-column label="编码" prop="code" />-->
<el-table-column label="名称" prop="name" />
<el-table-column label="排序" prop="dept_sort" />
<el-table-column label="状态" align="center" prop="is_used">
<el-table-column :label="$t('sys_dept.name')" prop="name" />
<el-table-column :label="$t('sys_dept.dept_sort')" prop="dept_sort" />
<el-table-column :label="$t('common.status')" align="center" prop="is_used">
<template slot-scope="scope">
<el-switch
v-model="scope.row.is_used"
@@ -115,10 +115,10 @@
/>
</template>
</el-table-column>
<el-table-column prop="create_time" label="创建日期" />
<el-table-column prop="create_time" :label="$t('common.create_time')" />
<el-table-column
v-permission="['admin','dept:edit','dept:del']"
label="操作"
:label="$t('common.Operate')"
width="130px"
align="center"
fixed="right"
@@ -128,7 +128,7 @@
:data="scope.row"
:permission="permission"
:disabled-dle="scope.row.id === 1"
msg="确定删除吗,如果存在下级节点则一并删除此操作不能撤销"
:msg="$t('sys_dept.confirm_delete_msg')"
/>
</template>
</el-table-column>

View File

@@ -1,7 +1,7 @@
<template>
<div>
<div v-if="query.code === ''">
<div class="my-code">点击字典查看详情</div>
<div class="my-code">{{$t('sys_dict.click_dict_detail')}}</div>
</div>
<div v-else>
<!--工具栏-->
@@ -12,7 +12,7 @@
v-model="query.label"
clearable
size="mini"
placeholder="输入字典标签查询"
:placeholder="$t('sys_dict.search_by_label')"
style="width: 200px;"
class="filter-item"
@keyup.enter.native="toQuery"
@@ -30,13 +30,13 @@
width="500px"
>
<el-form ref="form" :model="form" :rules="rules" size="mini" label-width="80px">
<el-form-item label="字典标签" prop="label">
<el-form-item :label="$t('sys_dict.label')" prop="label">
<el-input v-model="form.label" style="width: 370px;" />
</el-form-item>
<el-form-item label="字典值" prop="value">
<el-form-item :label="$t('sys_dict.value')" prop="value">
<el-input v-model="form.value" style="width: 370px;" />
</el-form-item>
<el-form-item label="排序" prop="dict_sort">
<el-form-item :label="$t('sys_dict.dict_sort')" prop="dict_sort">
<el-input-number
v-model.number="form.dict_sort"
:min="0"
@@ -45,19 +45,19 @@
style="width: 370px;"
/>
</el-form-item>
<el-form-item label="参数1" prop="para1">
<el-form-item :label="$t('sys_dict.para1')" prop="para1">
<el-input v-model="form.para1" style="width: 370px;" />
</el-form-item>
<el-form-item label="参数2" prop="para2">
<el-form-item :label="$t('sys_dict.para2')" prop="para2">
<el-input v-model="form.para2" style="width: 370px;" />
</el-form-item>
<el-form-item label="参数3" prop="para3">
<el-form-item :label="$t('sys_dict.para3')" prop="para3">
<el-input v-model="form.para3" style="width: 370px;" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="text" @click="crud.cancelCU">取消</el-button>
<el-button :loading="crud.status.cu === 2" type="primary" @click="crud.submitCU">确认</el-button>
<el-button type="text" @click="crud.cancelCU">{{$t('common.Cancel')}}</el-button>
<el-button :loading="crud.status.cu === 2" type="primary" @click="crud.submitCU">{{$t('common.Confirm')}}</el-button>
</div>
</el-dialog>
<!--表格渲染-->
@@ -69,18 +69,18 @@
style="width: 100%;"
@selection-change="crud.selectionChangeHandler"
>
<el-table-column label="所属字典" min-width="150" show-overflow-tooltip>
<el-table-column :label="$t('sys_dict.belong_dict')" min-width="150" show-overflow-tooltip>
{{ query.code }}
</el-table-column>
<el-table-column prop="label" label="字典标签" align="center" width="120" show-overflow-tooltip />
<el-table-column prop="value" label="字典值" align="center" width="60" />
<el-table-column prop="dict_sort" label="排序" align="center" width="65" />
<el-table-column prop="para1" label="参数1" align="center" width="65" />
<el-table-column prop="para2" label="参数2" align="center" width="65" />
<el-table-column prop="para3" label="参数3" align="center" width="65" />
<el-table-column prop="label" :label="$t('sys_dict.label')" align="center" width="120" show-overflow-tooltip />
<el-table-column prop="value" :label="$t('sys_dict.value')" align="center" width="60" />
<el-table-column prop="dict_sort" :label="$t('sys_dict.dict_sort')" align="center" width="65" />
<el-table-column prop="para1" :label="$t('sys_dict.para1')" align="center" width="65" />
<el-table-column prop="para2" :label="$t('sys_dict.para2')" align="center" width="65" />
<el-table-column prop="para3" :label="$t('sys_dict.para3')" align="center" width="65" />
<el-table-column
v-permission="['admin','dict:edit','dict:del']"
label="操作"
:label="$t('common.Operate')"
align="center"
width="115px"
fixed="right"
@@ -99,6 +99,8 @@
</div>
</template>
<script>
import crudDictDetail from '@/views/system/dict/dictDetail'
import CRUD, { form, header, presenter } from '@crud/crud'

View File

@@ -10,16 +10,16 @@
width="500px"
>
<el-form ref="form" :model="form" :rules="rules" size="mini" label-width="80px">
<el-form-item label="字典编码" prop="code">
<el-form-item :label="$t('sys_dict.code')" prop="code">
<el-input v-model="form.code" style="width: 370px;" />
</el-form-item>
<el-form-item label="名称">
<el-form-item :label="$t('sys_dict.name')">
<el-input v-model="form.name" style="width: 370px;" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="text" @click="crud.cancelCU">取消</el-button>
<el-button :loading="crud.status.cu === 2" type="primary" @click="crud.submitCU">确认</el-button>
<el-button type="text" @click="crud.cancelCU">{{$t('common.Cancel')}}</el-button>
<el-button :loading="crud.status.cu === 2" type="primary" @click="crud.submitCU">{{$t('common.Confirm')}}</el-button>
</div>
</el-dialog>
<!-- 字典列表 -->
@@ -34,7 +34,7 @@
v-model="query.blurry"
clearable
size="mini"
placeholder="输入名称或者描述搜索"
:placeholder="$t('common.inputCodeOrName')"
style="width: 200px;"
class="filter-item"
@keyup.enter.native="crud.toQuery"
@@ -54,11 +54,11 @@
@current-change="handleCurrentChange"
>
<el-table-column type="selection" width="55" />
<el-table-column show-overflow-tooltip prop="code" label="编码" />
<el-table-column show-overflow-tooltip prop="name" label="名称" />
<el-table-column show-overflow-tooltip prop="code" :label="$t('sys_dict.code')" />
<el-table-column show-overflow-tooltip prop="name" :label="$t('sys_dict.name')" />
<el-table-column
v-permission="['admin','dict:edit','dict:del']"
label="操作"
:label="$t('common.Operate')"
width="130px"
align="center"
fixed="right"
@@ -79,7 +79,7 @@
<el-col :xs="11" :sm="11" :md="11" :lg="11" :xl="11">
<el-card class="box-card">
<div slot="header" class="clearfix">
<span>字典详情</span>
<span>{{$t('sys_dict.dict_detail')}}</span>
<el-button
v-if="checkPermission(['admin','dict:add']) && this.$refs.dictDetail && this.$refs.dictDetail.query.code"
class="filter-item"
@@ -88,7 +88,7 @@
type="primary"
icon="el-icon-plus"
@click="$refs.dictDetail && $refs.dictDetail.crud.toAdd()"
>新增
>{{$t('common.Create')}}
</el-button>
</div>
<dictDetail ref="dictDetail" :permission="permission" />
@@ -98,6 +98,7 @@
</div>
</template>
<script>
import checkPermission from '@/utils/permission'
import dictDetail from './dictDetail.vue'

View File

@@ -8,7 +8,7 @@
v-model="query.blurry"
clearable
size="mini"
placeholder="模糊搜索"
:placeholder="$t('common.fuzzy_search')"
style="width: 200px;margin-bottom: 10px"
class="filter-item"
@keyup.enter.native="queryBlurry"
@@ -16,7 +16,7 @@
<el-select
v-model="query.system_type"
style="width: 100px; height: 35px;top: -5px;"
placeholder="所属系统"
:placeholder="$t('sys_menu.owned_system')"
@change="changetype"
>
<el-option
@@ -39,15 +39,15 @@
width="650px"
>
<el-form ref="form" :inline="true" :model="form" :rules="rules" size="mini" label-width="80px">
<el-form-item label="菜单类型" prop="type">
<el-form-item :label="$t('sys_menu.type')" prop="type">
<el-radio-group v-model="form.type" size="mini">
<el-radio-button label="1">系统</el-radio-button>
<el-radio-button label="2">目录</el-radio-button>
<el-radio-button label="3">菜单</el-radio-button>
<el-radio-button label="4">按钮</el-radio-button>
<el-radio-button label="1">{{$t('sys_menu.type_system')}}</el-radio-button>
<el-radio-button label="2">{{$t('sys_menu.type_directory')}}</el-radio-button>
<el-radio-button label="3">{{$t('sys_menu.type_menu')}}</el-radio-button>
<el-radio-button label="4">{{$t('sys_menu.type_button')}}</el-radio-button>
</el-radio-group>
</el-form-item>
<el-form-item v-show="form.type.toString() !== '1' && form.type.toString() !== '4' " label="菜单图标" prop="icon">
<el-form-item v-show="form.type.toString() !== '1' && form.type.toString() !== '4' " :label="$t('sys_menu.icon')" prop="icon">
<el-popover
placement="bottom-start"
width="450"
@@ -55,7 +55,7 @@
@show="$refs['iconSelect'].reset()"
>
<IconSelect ref="iconSelect" @selected="selected" />
<el-input slot="reference" v-model="form.icon" style="width: 450px;" placeholder="点击选择图标" readonly>
<el-input slot="reference" v-model="form.icon" style="width: 450px;" :placeholder="$t('sys_menu.click_select_icon')" readonly>
<svg-icon
v-if="form.icon"
slot="prefix"
@@ -67,41 +67,41 @@
</el-input>
</el-popover>
</el-form-item>
<el-form-item v-show="form.type.toString() !== '2' && form.type.toString() !== '1'" label="外链菜单" prop="iframe">
<el-form-item v-show="form.type.toString() !== '2' && form.type.toString() !== '1'" :label="$t('sys_menu.iframe')" prop="iframe">
<el-radio-group v-model="form.iframe" size="mini">
<el-radio-button label="true"></el-radio-button>
<el-radio-button label="false"></el-radio-button>
<el-radio-button label="true">{{$t('common.Yes')}}</el-radio-button>
<el-radio-button label="false">{{$t('common.No')}}</el-radio-button>
</el-radio-group>
</el-form-item>
<el-form-item v-show="form.type.toString() === '3'" label="菜单缓存" prop="cache">
<el-form-item v-show="form.type.toString() === '3'" :label="$t('sys_menu.cache')" prop="cache">
<el-radio-group v-model="form.cache" size="mini">
<el-radio-button label="true"></el-radio-button>
<el-radio-button label="false"></el-radio-button>
<el-radio-button label="true">{{$t('common.Yes')}}</el-radio-button>
<el-radio-button label="false">{{$t('common.No')}}</el-radio-button>
</el-radio-group>
</el-form-item>
<el-form-item v-show="form.type.toString() !== '2' && form.type.toString() !== '1' " label="菜单可见" prop="hidden">
<el-form-item v-show="form.type.toString() !== '2' && form.type.toString() !== '1' " :label="$t('sys_menu.hidden')" prop="hidden">
<el-radio-group v-model="form.hidden" size="mini">
<el-radio-button label="false"></el-radio-button>
<el-radio-button label="true"></el-radio-button>
<el-radio-button label="false">{{$t('common.Yes')}}</el-radio-button>
<el-radio-button label="true">{{$t('common.No')}}</el-radio-button>
</el-radio-group>
</el-form-item>
<el-form-item v-if="form.type.toString() !== '2'" label="菜单标题" prop="title">
<el-form-item v-if="form.type.toString() !== '2'" :label="$t('sys_menu.title')" prop="title">
<el-input
v-model="form.title"
:style=" form.type.toString() === '0' ? 'width: 450px' : 'width: 190px'"
placeholder="菜单标题"
:placeholder="$t('sys_menu.title')"
/>
</el-form-item>
<el-form-item v-if="form.type.toString() === '2'" label="按钮名称" prop="title">
<el-input v-model="form.title" placeholder="按钮名称" style="width: 190px;" />
<el-form-item v-if="form.type.toString() === '2'" :label="$t('sys_menu.button_name')" prop="title">
<el-input v-model="form.title" :placeholder="$t('sys_menu.button_name')" style="width: 190px;" />
</el-form-item>
<el-form-item v-show="form.type.toString() !== '1' " label="权限标识" prop="permission">
<el-input v-model="form.permission" :disabled="form.iframe" placeholder="权限标识" style="width: 190px;" />
<el-form-item v-show="form.type.toString() !== '1' " :label="$t('sys_menu.permission')" prop="permission">
<el-input v-model="form.permission" :disabled="form.iframe" :placeholder="$t('sys_menu.permission')" style="width: 190px;" />
</el-form-item>
<el-form-item v-if="form.type.toString() !== '1' && form.type.toString() !== '2'" label="路由地址" prop="path">
<el-input v-model="form.path" placeholder="路由地址" style="width: 190px;" />
<el-form-item v-if="form.type.toString() !== '1' && form.type.toString() !== '2'" :label="$t('sys_menu.path')" prop="path">
<el-input v-model="form.path" :placeholder="$t('sys_menu.path')" style="width: 190px;" />
</el-form-item>
<el-form-item label="菜单排序" prop="menu_sort">
<el-form-item :label="$t('sys_menu.menu_sort')" prop="menu_sort">
<el-input-number
v-model.number="form.menu_sort"
:min="0"
@@ -110,13 +110,13 @@
style="width: 190px;"
/>
</el-form-item>
<el-form-item v-show="!form.iframe && form.type.toString() === '3' " label="组件名称" prop="component_name">
<el-input v-model="form.component_name" style="width: 190px;" placeholder="匹配组件内Name字段" />
<el-form-item v-show="!form.iframe && form.type.toString() === '3' " :label="$t('sys_menu.component_name')" prop="component_name">
<el-input v-model="form.component_name" style="width: 190px;" :placeholder="$t('sys_menu.match_component_name')" />
</el-form-item>
<el-form-item v-show="!form.iframe && (form.type.toString() === '2' ||form.type.toString() === '3' ) " label="组件路径" prop="component">
<el-input v-model="form.component" style="width: 190px;" placeholder="组件路径" />
<el-form-item v-show="!form.iframe && (form.type.toString() === '2' ||form.type.toString() === '3' ) " :label="$t('sys_menu.component')" prop="component">
<el-input v-model="form.component" style="width: 190px;" :placeholder="$t('sys_menu.component')" />
</el-form-item>
<el-form-item label="上级类目" prop="pid">
<el-form-item :label="$t('sys_menu.parent_category')" prop="pid">
<!-- normalizer转换- loadMenus 点击扩展的时候会调用该方法-->
<treeselect
v-model="form.pid"
@@ -124,13 +124,13 @@
:load-options="loadMenus"
:normalizer="normalizer"
style="width: 450px;"
placeholder="选择上级类目"
:placeholder="$t('sys_menu.select_parent_category')"
/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="text" @click="crud.cancelCU">取消</el-button>
<el-button :loading="crud.status.cu === 2" type="primary" @click="crud.submitCU">确认</el-button>
<el-button type="text" @click="crud.cancelCU">{{$t('common.Cancel')}}</el-button>
<el-button :loading="crud.status.cu === 2" type="primary" @click="crud.submitCU">{{$t('common.Confirm')}}</el-button>
</div>
</el-dialog>
<!--表格渲染-->
@@ -149,46 +149,46 @@
@selection-change="crud.selectionChangeHandler"
>
<el-table-column type="selection" width="55" />
<el-table-column label="菜单标题" prop="title" :min-width="100" />
<el-table-column label="所属系统" prop="system_type" :min-width="flexWidth('system_type',crud.data,'所属系统')">
<el-table-column :label="$t('sys_menu.title')" prop="title" :min-width="100" />
<el-table-column :label="$t('sys_menu.system_type')" prop="system_type" :min-width="flexWidth('system_type',crud.data,$t('sys_menu.system_type'))">
<template slot-scope="scope">
{{ dict.label.system_type[scope.row.system_type] }} : {{scope.row.system_type}}
</template>
</el-table-column>
<el-table-column prop="icon" label="图标" align="center" :min-width="flexWidth('icon',crud.data,'图标')">
<el-table-column prop="icon" :label="$t('sys_menu.icon')" align="center" :min-width="flexWidth('icon',crud.data,$t('sys_menu.icon'))">
<template slot-scope="scope">
<svg-icon :icon-class="scope.row.icon ? scope.row.icon : ''" />
</template>
</el-table-column>
<el-table-column prop="menu_sort" align="center" label="排序" :min-width="flexWidth('menu_sort',crud.data,'排序')">
<el-table-column prop="menu_sort" align="center" :label="$t('sys_menu.menu_sort')" :min-width="flexWidth('menu_sort',crud.data,$t('sys_menu.menu_sort'))">
<template slot-scope="scope">
{{ scope.row.menu_sort }}
</template>
</el-table-column>
<el-table-column prop="permission" label="权限标识" :min-width="flexWidth('permission',crud.data,'权限标识')" />
<el-table-column prop="component" label="组件路径" min-width="120" />
<el-table-column prop="iframe" label="外链" :formatter="crud.formatIsOrNot" :min-width="flexWidth('iframe',crud.data,'外链')">
<el-table-column prop="permission" :label="$t('sys_menu.permission')" :min-width="flexWidth('permission',crud.data,$t('sys_menu.permission'))" />
<el-table-column prop="component" :label="$t('sys_menu.component')" min-width="120" />
<el-table-column prop="iframe" :label="$t('sys_menu.iframe')" :formatter="crud.formatIsOrNot" :min-width="flexWidth('iframe',crud.data,$t('sys_menu.iframe'))">
<template slot-scope="scope">
<span v-if="scope.row.iframe"></span>
<span v-else></span>
<span v-if="scope.row.iframe">{{$t('common.Yes')}}</span>
<span v-else>{{$t('common.No')}}</span>
</template>
</el-table-column>
<el-table-column prop="cache" label="缓存" :formatter="crud.formatIsOrNot" :min-width="flexWidth('cache',crud.data,'缓存')">
<el-table-column prop="cache" :label="$t('sys_menu.cache')" :formatter="crud.formatIsOrNot" :min-width="flexWidth('cache',crud.data,$t('sys_menu.cache'))">
<template slot-scope="scope">
<span v-if="scope.row.cache"></span>
<span v-else></span>
<span v-if="scope.row.cache">{{$t('common.Yes')}}</span>
<span v-else>{{$t('common.No')}}</span>
</template>
</el-table-column>
<el-table-column prop="hidden" label="可见" :formatter="crud.formatIsOrNot" :min-width="flexWidth('hidden',crud.data,'可见')">
<el-table-column prop="hidden" :label="$t('sys_menu.hidden')" :formatter="crud.formatIsOrNot" :min-width="flexWidth('hidden',crud.data,$t('sys_menu.hidden'))">
<template slot-scope="scope">
<span v-if="scope.row.hidden"></span>
<span v-else></span>
<span v-if="scope.row.hidden">{{$t('common.No')}}</span>
<span v-else>{{$t('common.Yes')}}</span>
</template>
</el-table-column>
<el-table-column prop="create_time" label="创建日期" :min-width="flexWidth('create_time',crud.data,'创建日期')" />
<el-table-column prop="create_time" :label="$t('common.create_time')" :min-width="flexWidth('create_time',crud.data,$t('common.create_time'))" />
<el-table-column
v-permission="['admin','menu:edit','menu:del']"
label="操作"
:label="$t('common.Operate')"
width="130px"
align="center"
fixed="right"
@@ -197,7 +197,7 @@
<udOperation
:data="scope.row"
:permission="permission"
msg="确定删除吗,如果存在下级节点则一并删除此操作不能撤销"
:msg="$t('sys_menu.confirm_delete_msg')"
/>
</template>
</el-table-column>

View File

@@ -10,12 +10,12 @@
label-width="80px"
label-suffix=":"
>
<el-form-item label="模糊查询">
<el-form-item :label="$t('sys_param.fuzzy_query')">
<el-input
v-model="query.code"
clearable
style="width: 240px"
placeholder="编码/名称"
:placeholder="$t('sys_param.code_name')"
/>
</el-form-item>
<rrOperation />
@@ -32,22 +32,22 @@
width="500px"
>
<el-form ref="form" :model="form" :rules="rules" size="mini" label-width="80px">
<el-form-item label="编码" prop="code">
<el-form-item :label="$t('sys_param.code')" prop="code">
<el-input v-model="form.code" style="width: 370px;" />
</el-form-item>
<el-form-item label="名字" prop="name">
<el-form-item :label="$t('sys_param.name')" prop="name">
<el-input v-model="form.name" style="width: 370px;" />
</el-form-item>
<el-form-item label="" prop="value">
<el-form-item :label="$t('sys_param.value')" prop="value">
<el-input v-model="form.value" style="width: 370px;" />
</el-form-item>
<el-form-item label="备注" prop="description">
<el-form-item :label="$t('common.remark')" prop="description">
<el-input v-model="form.remark" style="width: 380px;" rows="5" type="textarea" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="text" @click="crud.cancelCU">取消</el-button>
<el-button :loading="crud.cu === 2" type="primary" @click="crud.submitCU">确认</el-button>
<el-button type="text" @click="crud.cancelCU">{{$t('common.Cancel')}}</el-button>
<el-button :loading="crud.cu === 2" type="primary" @click="crud.submitCU">{{$t('common.Confirm')}}</el-button>
</div>
</el-dialog>
<!--表格渲染-->
@@ -61,11 +61,11 @@
>
<el-table-column type="selection" width="55" />
<el-table-column v-if="false" prop="id" label="id" />
<el-table-column prop="code" label="编码" min-width="130" show-overflow-tooltip />
<el-table-column prop="name" label="名称" min-width="120" show-overflow-tooltip />
<el-table-column prop="value" label="" min-width="270" show-overflow-tooltip />
<el-table-column prop="remark" label="备注" />
<el-table-column v-permission="['admin','param:edit','param:del']" label="操作" width="150px" align="center">
<el-table-column prop="code" :label="$t('sys_param.code')" min-width="130" show-overflow-tooltip />
<el-table-column prop="name" :label="$t('sys_param.name')" min-width="120" show-overflow-tooltip />
<el-table-column prop="value" :label="$t('sys_param.value')" min-width="270" show-overflow-tooltip />
<el-table-column prop="remark" :label="$t('common.remark')" />
<el-table-column v-permission="['admin','param:edit','param:del']" :label="$t('common.Operate')" width="150px" align="center">
<template slot-scope="scope">
<udOperation
:data="scope.row"
@@ -80,6 +80,7 @@
</div>
</template>
<script>
import crudParam from '@/views/system/param/param'
import CRUD, { presenter, header, form, crud } from '@crud/crud'

View File

@@ -8,7 +8,7 @@
v-model="query.blurry"
size="mini"
clearable
placeholder="输入名称"
:placeholder="$t('common.name')"
style="width: 200px;"
class="filter-item"
@keyup.enter.native="crud.toQuery"
@@ -27,16 +27,16 @@
width="520px"
>
<el-form ref="form" :inline="true" :model="form" :rules="rules" size="mini" label-width="80px">
<el-form-item label="角色名称" prop="name">
<el-form-item :label="$t('sys_role.name')" prop="name">
<el-input v-model="form.name" style="width: 380px;"/>
</el-form-item>
<el-form-item label="备注" prop="description">
<el-form-item :label="$t('common.remark')" prop="remark">
<el-input v-model="form.remark" style="width: 380px;" rows="2" type="textarea"/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="text" @click="crud.cancelCU">取消</el-button>
<el-button :loading="crud.status.cu === 2" type="primary" @click="crud.submitCU">确认</el-button>
<el-button type="text" @click="crud.cancelCU">{{$t('common.Cancel')}}</el-button>
<el-button :loading="crud.status.cu === 2" type="primary" @click="crud.submitCU">{{$t('common.Confirm')}}</el-button>
</div>
</el-dialog>
<el-row :gutter="15">
@@ -44,7 +44,7 @@
<el-col :span="12" style="margin-bottom: 10px">
<el-card class="box-card" shadow="never">
<div slot="header" class="clearfix">
<span class="role-span">角色列表</span>
<span class="role-span">{{$t('sys_role.role_list')}}</span>
</div>
<el-table
ref="table"
@@ -56,16 +56,16 @@
@current-change="handleCurrentChange"
>
<el-table-column type="selection" width="55"/>
<el-table-column prop="name" label="名称" min-width="100" show-overflow-tooltip/>
<el-table-column show-overflow-tooltip prop="remark" label="描述"/>
<el-table-column show-overflow-tooltip width="135px" prop="create_time" label="创建日期">
<el-table-column prop="name" :label="$t('common.name')" min-width="100" show-overflow-tooltip/>
<el-table-column show-overflow-tooltip prop="remark" :label="$t('common.remark')"/>
<el-table-column show-overflow-tooltip width="135px" prop="create_time" :label="$t('common.create_time')">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.create_time) }}</span>
</template>
</el-table-column>
<el-table-column
v-permission="['admin','roles:edit','roles:del']"
label="操作"
:label="$t('common.Operate')"
width="130px"
align="center"
fixed="right"
@@ -86,8 +86,8 @@
<el-col :span="12">
<el-card class="box-card" shadow="never">
<div slot="header" class="clearfix">
<el-tooltip class="item" effect="dark" content="选择指定角色分配菜单" placement="top">
<span class="role-span">菜单分配</span>
<el-tooltip class="item" effect="dark" :content="$t('system.select_role_assign_menu')" placement="top">
<span class="role-span">{{$t('sys_menu.menu_assignment')}}</span>
</el-tooltip>
<el-button
v-permission="['admin','roles:edit']"
@@ -98,7 +98,7 @@
style="float: right; padding: 6px 10px"
type="primary"
@click="saveMenu"
>保存
>{{$t('common.save')}}
</el-button>
</div>
@@ -121,6 +121,7 @@
</div>
</template>
<script>
import crudRoles from './role'
import crudMenu from '../menu/menu'

View File

@@ -8,7 +8,7 @@
v-model="query.job_name"
clearable
size="mini"
placeholder="输入任务名称搜索"
:placeholder="$t('sys_quartz_job.search_by_job_name')"
style="width: 200px;"
class="filter-item"
@keyup.enter.native="toQuery"
@@ -24,7 +24,7 @@
type="info"
icon="el-icon-tickets"
@click="doLog"
>日志
>{{$t('sys_quartz_job.log')}}
</el-button>
</crudOperation>
<Log ref="log" />
@@ -39,60 +39,60 @@
width="730px"
>
<el-form ref="form" :inline="true" :model="form" :rules="rules" size="mini" label-width="100px">
<el-form-item label="任务名称" prop="job_name">
<el-form-item :label="$t('sys_quartz_job.job_name')" prop="job_name">
<el-input v-model="form.job_name" style="width: 220px;" />
</el-form-item>
<el-form-item label="任务描述" prop="description">
<el-form-item :label="$t('sys_quartz_job.description')" prop="description">
<el-input v-model="form.description" style="width: 220px;" />
</el-form-item>
<el-form-item label="Bean名称" prop="bean_name">
<el-form-item :label="$t('sys_quartz_job.bean_name')" prop="bean_name">
<el-input v-model="form.bean_name" style="width: 220px;" />
</el-form-item>
<el-form-item label="执行方法" prop="method_name">
<el-form-item :label="$t('sys_quartz_job.method_name')" prop="method_name">
<el-input v-model="form.method_name" style="width: 220px;" />
</el-form-item>
<el-form-item label="Cron表达式" prop="cron_expression">
<el-form-item :label="$t('sys_quartz_job.cron_expression')" prop="cron_expression">
<!-- <el-input v-model="form.cron_expression" style="width: 220px;" />-->
<el-input v-model="form.cron_expression" placeholder="请输入CRON 表达式" style="width: 220px;">
<el-input v-model="form.cron_expression" :placeholder="$t('sys_quartz_job.enter_cron_expression')" style="width: 220px;">
<template slot="append">
<el-button type="primary" @click="handleShowCron">
生成表达式
{{$t('sys_quartz_job.generate_expression')}}
<i class="el-icon-time el-icon--right" />
</el-button>
</template>
</el-input>
</el-form-item>
<el-form-item label="子任务ID">
<el-input v-model="form.sub_task" placeholder="多个用逗号隔开按顺序执行" style="width: 220px;" />
<el-form-item :label="$t('sys_quartz_job.sub_task')">
<el-input v-model="form.sub_task" :placeholder="$t('sys_quartz_job.multiple_comma_separated')" style="width: 220px;" />
</el-form-item>
<el-form-item label="任务负责人" prop="person_in_charge">
<el-form-item :label="$t('sys_quartz_job.person_in_charge')" prop="person_in_charge">
<el-input v-model="form.person_in_charge" style="width: 220px;" />
</el-form-item>
<el-form-item label="告警邮箱" prop="email">
<el-input v-model="form.email" placeholder="多个邮箱用逗号隔开" style="width: 220px;" />
<el-form-item :label="$t('sys_quartz_job.email')" prop="email">
<el-input v-model="form.email" :placeholder="$t('sys_quartz_job.multiple_email_comma_separated')" style="width: 220px;" />
</el-form-item>
<el-form-item label="调度IP" prop="email">
<el-input v-model="form.job_ip" placeholder="执行定时器的ip地址" style="width: 220px;" />
<el-form-item :label="$t('sys_quartz_job.job_ip')" prop="email">
<el-input v-model="form.job_ip" :placeholder="$t('sys_quartz_job.execute_timer_ip')" style="width: 220px;" />
</el-form-item>
<el-form-item label="失败后暂停">
<el-form-item :label="$t('sys_quartz_job.pause_after_failure')">
<el-radio-group v-model="form.pause_after_failure" style="width: 220px">
<el-radio :label="true"></el-radio>
<el-radio :label="false"></el-radio>
<el-radio :label="true">{{$t('common.Yes')}}</el-radio>
<el-radio :label="false">{{$t('common.No')}}</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="任务状态">
<el-form-item :label="$t('sys_quartz_job.status')">
<el-radio-group v-model="form.is_pause" style="width: 220px">
<el-radio :label="false">启用</el-radio>
<el-radio :label="true">暂停</el-radio>
<el-radio :label="false">{{$t('sys_quartz_job.enable')}}</el-radio>
<el-radio :label="true">{{$t('sys_quartz_job.pause')}}</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="参数内容">
<el-form-item :label="$t('sys_quartz_job.params')">
<el-input v-model="form.params" style="width: 556px;" rows="4" type="textarea" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="text" @click="crud.cancelCU">取消</el-button>
<el-button :loading="crud.status.cu === 2" type="primary" @click="crud.submitCU">确认</el-button>
<el-button type="text" @click="crud.cancelCU">{{$t('common.Cancel')}}</el-button>
<el-button :loading="crud.status.cu === 2" type="primary" @click="crud.submitCU">{{$t('common.Confirm')}}</el-button>
</div>
</el-dialog>
<!--表格渲染-->
@@ -104,36 +104,36 @@
@selection-change="crud.selectionChangeHandler"
>
<el-table-column :selectable="checkboxT" type="selection" width="55" />
<el-table-column show-overflow-tooltip prop="job_id" label="任务ID" />
<el-table-column show-overflow-tooltip prop="job_name" label="任务名称" min-width="120" />
<el-table-column show-overflow-tooltip prop="bean_name" label="Bean名称" />
<el-table-column show-overflow-tooltip prop="job_ip" label="调度IP" />
<el-table-column show-overflow-tooltip prop="method_name" label="执行方法" />
<el-table-column show-overflow-tooltip prop="params" label="参数" />
<el-table-column show-overflow-tooltip prop="job_id" :label="$t('sys_quartz_job.job_id')" />
<el-table-column show-overflow-tooltip prop="job_name" :label="$t('sys_quartz_job.job_name')" min-width="120" />
<el-table-column show-overflow-tooltip prop="bean_name" :label="$t('sys_quartz_job.bean_name')" />
<el-table-column show-overflow-tooltip prop="job_ip" :label="$t('sys_quartz_job.job_ip')" />
<el-table-column show-overflow-tooltip prop="method_name" :label="$t('sys_quartz_job.method_name')" />
<el-table-column show-overflow-tooltip prop="params" :label="$t('sys_quartz_job.params')" />
<el-table-column
show-overflow-tooltip
prop="cron_expression"
label="cron表达式"
:label="$t('sys_quartz_job.cron_expression')"
min-width="100"
show-tooltip-when-overflow
/>
<el-table-column show-overflow-tooltip prop="is_pause" width="90px" label="状态">
<el-table-column show-overflow-tooltip prop="is_pause" width="90px" :label="$t('sys_quartz_job.status')">
<template slot-scope="scope">
<el-tag :type="scope.row.is_pause ? 'warning' : 'success'">{{
scope.row.is_pause ? '已暂停' : '运行中'
}}
scope.row.is_pause ? $t('sys_quartz_job.paused') : $t('sys_quartz_job.running')
}}
</el-tag>
</template>
</el-table-column>
<el-table-column show-overflow-tooltip prop="description" width="150px" label="描述" />
<el-table-column show-overflow-tooltip prop="create_time" width="136px" label="创建日期">
<el-table-column show-overflow-tooltip prop="description" width="150px" :label="$t('sys_quartz_job.description')" />
<el-table-column show-overflow-tooltip prop="create_time" width="136px" :label="$t('common.create_time')">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.create_time) }}</span>
</template>
</el-table-column>
<el-table-column
v-permission="['admin','timing:edit','timing:del']"
label="操作"
:label="$t('common.Operate')"
width="170px"
align="center"
fixed="right"
@@ -145,7 +145,7 @@
style="margin-right: 3px;"
type="text"
@click="crud.toEdit(scope.row)"
>编辑
>{{$t('common.Update')}}
</el-button>
<el-button
v-permission="['admin','timing:edit']"
@@ -153,16 +153,16 @@
type="text"
size="mini"
@click="execute(scope.row.job_id)"
>执行
>{{$t('sys_quartz_job.execute')}}
</el-button>
<el-button
v-permission="['admin','timing:edit']"
style="margin-left: 3px"
type="text"
size="mini"
@click="updateStatus(scope.row.job_id,scope.row.is_pause ? '恢复' : '暂停')"
@click="updateStatus(scope.row.job_id,scope.row.is_pause ? $t('sys_quartz_job.resume') : $t('sys_quartz_job.pause'))"
>
{{ scope.row.is_pause ? '恢复' : '暂停' }}
{{ scope.row.is_pause ? $t('sys_quartz_job.resume') : $t('sys_quartz_job.pause') }}
</el-button>
<el-popover
:ref="scope.row.job_id"
@@ -170,25 +170,26 @@
placement="top"
width="200"
>
<p>确定停止并删除该任务吗?</p>
<p>{{$t('sys_quartz_job.confirm_stop_delete_task')}}</p>
<div style="text-align: right; margin: 0">
<el-button size="mini" type="text" @click="$refs[scope.row.job_id].doClose()">取消</el-button>
<el-button :loading="delLoading" type="primary" size="mini" @click="delMethod(scope.row.job_id)">确定
<el-button size="mini" type="text" @click="$refs[scope.row.job_id].doClose()">{{$t('common.Cancel')}}</el-button>
<el-button :loading="delLoading" type="primary" size="mini" @click="delMethod(scope.row.job_id)">{{$t('common.Confirm')}}
</el-button>
</div>
<el-button slot="reference" type="text" size="mini">删除</el-button>
<el-button slot="reference" type="text" size="mini">{{$t('common.Delete')}}</el-button>
</el-popover>
</template>
</el-table-column>
</el-table>
<!--分页组件-->
<pagination />
<el-dialog title="Cron表达式生成器" :visible.sync="openCron" append-to-body class="scrollbar" destroy-on-close>
<el-dialog :title="$t('sys_quartz_job.cron_expression_generator')" :visible.sync="openCron" append-to-body class="scrollbar" destroy-on-close>
<crontab :expression="expression" @hide="openCron=false" @fill="crontabFill" />
</el-dialog>
</div>
</template>
<script>
import crudJob from '@/views/system/timing/timing'
import Log from './log'

View File

@@ -8,7 +8,7 @@
v-model="deptName"
clearable
size="mini"
placeholder="请输入部门名称"
:placeholder="$t('sys_dept.name')"
prefix-icon="el-icon-search"
class="filter-item"
@input="getDeptDatas"
@@ -30,7 +30,7 @@
v-model="query.blurry"
clearable
size="mini"
placeholder="输入账号或者名称"
:placeholder="$t('common.inputCodeOrName')"
style="width: 200px;"
class="filter-item"
@keyup.enter.native="crud.toQuery"
@@ -39,7 +39,7 @@
v-model="query.is_used"
clearable
size="mini"
placeholder="状态"
:placeholder="$t('common.status')"
class="filter-item"
style="width: 90px"
@change="crud.toQuery"
@@ -65,20 +65,20 @@
width="700px"
>
<el-form ref="form" :inline="true" :model="form" :rules="rules" size="mini" label-width="100px">
<el-form-item label="用户名" prop="username">
<el-form-item :label="$t('sys_interface_log.username')" prop="username">
<el-input v-model="form.username" style="width: 200px;" />
</el-form-item>
<el-form-item label="电话" prop="phone">
<el-form-item :label="$t('common.phone')" prop="phone">
<el-input v-model.number="form.phone" style="width: 200px;" />
</el-form-item>
<el-form-item label="姓名" prop="preson_name">
<el-form-item :label="$t('sys_user.person_name')" prop="person_name">
<el-input v-model="form.person_name" style="width: 200px;" />
</el-form-item>
<el-form-item label="邮箱" prop="email">
<el-form-item :label="$t('common.email')" prop="email">
<el-input v-model="form.email" style="width: 200px;" />
</el-form-item>
<br v-if="!crud.status.edit">
<el-form-item v-if="crud.status.add" label="部门" prop="depts" :rules="[{ required: true, message: '请选择部门', trigger: 'change' }]">
<el-form-item v-if="crud.status.add" :label="$t('sys_dept.name')" prop="depts" :rules="[{ required: true, message: $t('common.Please_select') + $t('sys_dept.name'), trigger: 'change' }]">
<treeselect
v-model="form.depts"
:load-options="loadDepts"
@@ -87,20 +87,20 @@
:multiple="true"
:flat="true"
:normalizer="normalizer"
placeholder="选择部门类目"
:placeholder="$t('common.Please_select') + $t('sys_dept.name')"
/>
</el-form-item>
<br v-if="!crud.status.add">
<el-form-item v-if="crud.status.add" label="密码" prop="password">
<el-form-item v-if="crud.status.add" :label="$t('sys_user.password')" prop="password">
<el-input v-model="form.password" style="width: 200px;" show-password auto-complete="new-password" />
</el-form-item>
<el-form-item label="性别">
<el-form-item :label="$t('common.sex')">
<el-radio-group v-model="form.gender" style="width: 178px">
<el-radio label=""></el-radio>
<el-radio label=""></el-radio>
<el-radio label="">{{$t('common.sex_male')}}</el-radio>
<el-radio label="">{{$t('common.sex_female')}}</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="状态" prop="is_uesd">
<el-form-item :label="$t('common.status')" prop="is_used">
<el-switch
v-model="form.is_used"
active-color="#409EFF"
@@ -108,18 +108,17 @@
/>
</el-form-item>
<br v-if="!crud.status.edit">
<el-form-item v-if="crud.status.add" style="margin-bottom: 0;" label="角色" prop="roles">
<el-form-item v-if="crud.status.add" style="margin-bottom: 0;" :label="$t('sys_role.name')" prop="roles">
<el-select
v-model="roleDatas"
style="width: 512px"
multiple
active-value="1"
inactive-value="0"
placeholder="请选择"
:placeholder="$t('common.Please_select')"
@remove-tag="deleteTag"
@change="changeRole"
>
<!--:disabled="level !== 1 && item.level <= level"-->
<el-option
v-for="item in roles"
:key="item.role_id"
@@ -130,8 +129,8 @@
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="text" @click="crud.cancelCU">取消</el-button>
<el-button :loading="crud.status.cu === 2" type="primary" @click="crud.submitCU">确认</el-button>
<el-button type="text" @click="crud.cancelCU">{{$t('common.Cancel')}}</el-button>
<el-button :loading="crud.status.cu === 2" type="primary" @click="crud.submitCU">{{$t('common.Confirm')}}</el-button>
</div>
</el-dialog>
<!--表格渲染-->
@@ -143,50 +142,50 @@
@selection-change="crud.selectionChangeHandler"
>
<el-table-column type="selection" width="55" />
<el-table-column prop="username" label="用户名" :min-width="flexWidth('username',crud.data,'用户名')" />
<el-table-column prop="username" :label="$t('sys_interface_log.username')" :min-width="flexWidth('username',crud.data,$t('system.username'))" />
<el-table-column
prop="person_name"
label="姓名"
:min-width="flexWidth('person_name',crud.data,'姓名')"
:label="$t('sys_user.person_name')"
:min-width="flexWidth('person_name',crud.data,$t('sys_user.person_name'))"
/>
<el-table-column prop="gender" label="性别" :min-width="flexWidth('gender',crud.data,'性别')" />
<el-table-column prop="phone" label="电话" :min-width="flexWidth('phone',crud.data,'电话')" />
<el-table-column prop="email" label="邮箱" :min-width="flexWidth('email',crud.data,'邮箱')" />
<el-table-column show-overflow-tooltip prop="depts" label="部门" :min-width="flexWidth('depts',crud.data,'邮箱')">
<el-table-column prop="gender" :label="$t('common.sex')" :min-width="flexWidth('gender',crud.data,$t('common.sex'))" />
<el-table-column prop="phone" :label="$t('common.phone')" :min-width="flexWidth('phone',crud.data,$t('common.phone'))" />
<el-table-column prop="email" :label="$t('common.email')" :min-width="flexWidth('email',crud.data,$t('common.email'))" />
<el-table-column show-overflow-tooltip prop="depts" :label="$t('sys_dept.name')" :min-width="flexWidth('depts',crud.data,$t('sys_dept.name'))">
<template slot-scope="scope">
<span v-for="(item, index) in scope.row.depts" :key="index">
{{ item.name }}<span v-if="index !== scope.row.depts.length - 1">、</span>
</span>
</template>
</el-table-column>
<el-table-column label="状态" align="center" prop="enabled">
<el-table-column :label="$t('common.status')" align="center" prop="enabled">
<template slot-scope="scope">
<span :style="{'color': caseStatusColorFilter(scope.row.is_used)}">{{ enabledTypeOptions.find(item => {return item.key == scope.row.is_used}).display_name }}</span>
<span :style="{'color': caseStatusColorFilter(scope.row.is_used)}">{{$t('system.' + enabledTypeOptions.find(item => {return item.key == scope.row.is_used}).display_name.toLowerCase())}}</span>
</template>
</el-table-column>
<el-table-column prop="create_time" label="创建日期" :min-width="flexWidth('create_time',crud.data,'创建日期')" />
<el-table-column prop="create_time" :label="$t('common.create_time')" :min-width="flexWidth('create_time',crud.data,$t('common.create_time'))" />
<el-table-column
label="操作"
:label="$t('common.Operate')"
fixed="right"
align="center"
width="200"
>
<template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="crud.toEdit(scope.row)">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handdeleted(scope.row)">删除</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="crud.toEdit(scope.row)">{{$t('common.Update')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handdeleted(scope.row)">{{$t('common.Delete')}}</el-button>
<el-dropdown v-hasPermi="['system:user:resetPwd', 'system:user:edit']" size="mini">
<el-button size="mini" type="text" icon="el-icon-d-arrow-right">更多</el-button>
<el-button size="mini" type="text" icon="el-icon-d-arrow-right">{{$t('common.More')}}</el-button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item icon="el-icon-refresh-right"><span @click="resetPassword(scope.row)">重置密码</span></el-dropdown-item>
<el-dropdown-item icon="el-icon-refresh-right"><span @click="resetPassword(scope.row)">{{$t('system.reset_password')}}</span></el-dropdown-item>
<el-dropdown-item icon="el-icon-key">
<span @click="openDeptDrawer(scope.row)">部门权限</span>
<span @click="openDeptDrawer(scope.row)">{{$t('system.dept_permission')}}</span>
</el-dropdown-item>
<el-dropdown-item icon="el-icon-key">
<span @click="openDataDialog(scope.row)">数据权限</span>
<span @click="openDataDialog(scope.row)">{{$t('system.data_permission')}}</span>
</el-dropdown-item>
<el-dropdown-item icon="el-icon-lock"><span @click="changeEnabled(scope.row)">{{ enabledTypeOptions.find(item => {return item.key !== scope.row.is_used}).display_name }}账号</span></el-dropdown-item>
<el-dropdown-item icon="el-icon-lock"><span @click="changeEnabled(scope.row)">{{$t('system.' + enabledTypeOptions.find(item => {return item.key !== scope.row.is_used}).display_name.toLowerCase())}}{{$t('system.account')}}</span></el-dropdown-item>
<el-dropdown-item icon="el-icon-circle-check">
<span @click="openRoleDrawer(scope.row)">分配角色</span>
<span @click="openRoleDrawer(scope.row)">{{$t('system.assign_role')}}</span>
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
@@ -232,12 +231,12 @@
@selection-change="crud.selectionChangeHandler"
>
<el-table-column type="selection" width="55" />
<el-table-column prop="name" label="角色名称" min-width="100" show-overflow-tooltip />
<el-table-column prop="name" :label="$t('system.role_name')" min-width="100" show-overflow-tooltip />
</el-table>
</div>
<div style="height: 10%">
<el-button @click="cancelForm">取 消</el-button>
<el-button type="primary" @click="saveChecked">保 存</el-button>
<el-button @click="cancelForm">{{$t('common.Cancel')}}</el-button>
<el-button type="primary" @click="saveChecked">{{$t('common.Save')}}</el-button>
</div>
</div>
</el-drawer>
@@ -248,10 +247,10 @@
width="700px"
>
<el-form ref="form" :inline="true" :model="dataDialog" :rules="rules" size="mini" label-width="100px">
<el-form-item label="用户名" prop="username">
<el-form-item :label="$t('system.username')" prop="username">
<el-input v-model="dataDialog.username" disabled style="width: 200px;" />
</el-form-item>
<el-form-item label="姓名" prop="person_name">
<el-form-item :label="$t('sys_user.person_name')" prop="person_name">
<el-input v-model="dataDialog.person_name" disabled style="width: 200px;" />
</el-form-item>
<el-table
@@ -261,12 +260,12 @@
@selection-change="getRows"
>
<el-table-column type="selection" width="55" />
<el-table-column prop="label" label="权限范围" />
<el-table-column label="数据权限">
<el-table-column prop="label" :label="$t('system.permission_scope')" />
<el-table-column :label="$t('system.data_permission')">
<template slot-scope="scope">
<el-select
v-model="scope.row.permission_id"
placeholder="请选择"
:placeholder="$t('common.Please_select')"
@change="openRelevance(scope.row, scope.$index)"
>
<el-option
@@ -279,20 +278,20 @@
</template>
</el-table-column>
<el-table-column
label="操作"
:label="$t('common.Operate')"
fixed="right"
align="center"
width="100"
>
<template slot-scope="scope">
<el-button type="text" @click="showDatas(scope.row)">查看明细</el-button>
<el-button type="text" @click="showDatas(scope.row)">{{$t('system.view_details')}}</el-button>
</template>
</el-table-column>
</el-table>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="cancelDataPerm">取消</el-button>
<el-button type="primary" @click="savePermise()">确认</el-button>
<el-button @click="cancelDataPerm">{{$t('common.Cancel')}}</el-button>
<el-button type="primary" @click="savePermise()">{{$t('common.Confirm')}}</el-button>
</div>
</el-dialog>
<el-dialog
@@ -306,14 +305,14 @@
:data="dataPermissions"
style="width: 100%; max-height: 500px"
>
<el-table-column prop="permission_scope_type" label="权限类型" min-width="100" show-overflow-tooltip>
<el-table-column prop="permission_scope_type" :label="$t('system.permission_type')" min-width="100" show-overflow-tooltip>
<template slot-scope="scope">
{{ dict.label.permission_scope_type[scope.row.permission_scope_type] }}
</template>
</el-table-column>
<el-table-column prop="permissionName" label="权限范围" min-width="100" show-overflow-tooltip />
<el-table-column prop="deptName" label="部门名称" min-width="100" show-overflow-tooltip />
<el-table-column prop="person_name" label="用户名称" min-width="100" show-overflow-tooltip />
<el-table-column prop="permissionName" :label="$t('system.permission_scope')" min-width="100" show-overflow-tooltip />
<el-table-column prop="deptName" :label="$t('system.dept_name')" min-width="100" show-overflow-tooltip />
<el-table-column prop="person_name" :label="$t('system.user_name')" min-width="100" show-overflow-tooltip />
</el-table>
</el-dialog>
<relevance-user-dialog :dialog-show.sync="relevanceUser" :is-single="false" :users="userIds" @selectUsers="selectUsers" />
@@ -321,6 +320,7 @@
</div>
</template>
<script>
import crudUser from '@/views/system/user/user'
import crudDept from '../dept/dept'