Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
F
finance-manage
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
finance-oa
finance-manage
Commits
12ab8b03
Commit
12ab8b03
authored
Sep 17, 2021
by
RuoYi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
使用vue-data-dict,简化数据字典使用
parent
23270c60
Changes
28
Hide whitespace changes
Inline
Side-by-side
Showing
28 changed files
with
503 additions
and
325 deletions
+503
-325
ruoyi-generator/src/main/java/com/ruoyi/generator/util/VelocityUtils.java
...src/main/java/com/ruoyi/generator/util/VelocityUtils.java
+22
-0
ruoyi-generator/src/main/resources/vm/vue/index-tree.vue.vm
ruoyi-generator/src/main/resources/vm/vue/index-tree.vue.vm
+21
-34
ruoyi-generator/src/main/resources/vm/vue/index.vue.vm
ruoyi-generator/src/main/resources/vm/vue/index.vue.vm
+21
-34
ruoyi-ui/src/components/DictData/index.js
ruoyi-ui/src/components/DictData/index.js
+21
-0
ruoyi-ui/src/components/DictTag/index.vue
ruoyi-ui/src/components/DictTag/index.vue
+10
-10
ruoyi-ui/src/main.js
ruoyi-ui/src/main.js
+3
-0
ruoyi-ui/src/utils/dict/Dict.js
ruoyi-ui/src/utils/dict/Dict.js
+82
-0
ruoyi-ui/src/utils/dict/DictConverter.js
ruoyi-ui/src/utils/dict/DictConverter.js
+17
-0
ruoyi-ui/src/utils/dict/DictData.js
ruoyi-ui/src/utils/dict/DictData.js
+13
-0
ruoyi-ui/src/utils/dict/DictMeta.js
ruoyi-ui/src/utils/dict/DictMeta.js
+38
-0
ruoyi-ui/src/utils/dict/DictOptions.js
ruoyi-ui/src/utils/dict/DictOptions.js
+51
-0
ruoyi-ui/src/utils/dict/index.js
ruoyi-ui/src/utils/dict/index.js
+33
-0
ruoyi-ui/src/utils/ruoyi.js
ruoyi-ui/src/utils/ruoyi.js
+18
-2
ruoyi-ui/src/views/monitor/job/index.vue
ruoyi-ui/src/views/monitor/job/index.vue
+19
-28
ruoyi-ui/src/views/monitor/job/log.vue
ruoyi-ui/src/views/monitor/job/log.vue
+11
-20
ruoyi-ui/src/views/monitor/logininfor/index.vue
ruoyi-ui/src/views/monitor/logininfor/index.vue
+6
-10
ruoyi-ui/src/views/monitor/operlog/index.vue
ruoyi-ui/src/views/monitor/operlog/index.vue
+12
-21
ruoyi-ui/src/views/system/config/index.vue
ruoyi-ui/src/views/system/config/index.vue
+10
-14
ruoyi-ui/src/views/system/dept/index.vue
ruoyi-ui/src/views/system/dept/index.vue
+10
-14
ruoyi-ui/src/views/system/dict/data.vue
ruoyi-ui/src/views/system/dict/data.vue
+10
-14
ruoyi-ui/src/views/system/dict/index.vue
ruoyi-ui/src/views/system/dict/index.vue
+10
-14
ruoyi-ui/src/views/system/menu/index.vue
ruoyi-ui/src/views/system/menu/index.vue
+14
-23
ruoyi-ui/src/views/system/notice/index.vue
ruoyi-ui/src/views/system/notice/index.vue
+15
-24
ruoyi-ui/src/views/system/post/index.vue
ruoyi-ui/src/views/system/post/index.vue
+10
-14
ruoyi-ui/src/views/system/role/authUser.vue
ruoyi-ui/src/views/system/role/authUser.vue
+2
-6
ruoyi-ui/src/views/system/role/index.vue
ruoyi-ui/src/views/system/role/index.vue
+9
-13
ruoyi-ui/src/views/system/role/selectUser.vue
ruoyi-ui/src/views/system/role/selectUser.vue
+2
-8
ruoyi-ui/src/views/system/user/index.vue
ruoyi-ui/src/views/system/user/index.vue
+13
-22
No files found.
ruoyi-generator/src/main/java/com/ruoyi/generator/util/VelocityUtils.java
View file @
12ab8b03
...
@@ -58,6 +58,7 @@ public class VelocityUtils
...
@@ -58,6 +58,7 @@ public class VelocityUtils
velocityContext
.
put
(
"permissionPrefix"
,
getPermissionPrefix
(
moduleName
,
businessName
));
velocityContext
.
put
(
"permissionPrefix"
,
getPermissionPrefix
(
moduleName
,
businessName
));
velocityContext
.
put
(
"columns"
,
genTable
.
getColumns
());
velocityContext
.
put
(
"columns"
,
genTable
.
getColumns
());
velocityContext
.
put
(
"table"
,
genTable
);
velocityContext
.
put
(
"table"
,
genTable
);
velocityContext
.
put
(
"dicts"
,
getDicts
(
genTable
));
setMenuVelocityContext
(
velocityContext
,
genTable
);
setMenuVelocityContext
(
velocityContext
,
genTable
);
if
(
GenConstants
.
TPL_TREE
.
equals
(
tplCategory
))
if
(
GenConstants
.
TPL_TREE
.
equals
(
tplCategory
))
{
{
...
@@ -260,6 +261,27 @@ public class VelocityUtils
...
@@ -260,6 +261,27 @@ public class VelocityUtils
return
importList
;
return
importList
;
}
}
/**
* 根据列类型获取字典组
*
* @param genTable 业务表对象
* @return 返回字典组
*/
public
static
String
getDicts
(
GenTable
genTable
)
{
List
<
GenTableColumn
>
columns
=
genTable
.
getColumns
();
List
<
String
>
dicts
=
new
ArrayList
<
String
>();
for
(
GenTableColumn
column
:
columns
)
{
if
(!
column
.
isSuperColumn
()
&&
StringUtils
.
isNotEmpty
(
column
.
getDictType
())
&&
StringUtils
.
equalsAny
(
column
.
getHtmlType
(),
new
String
[]
{
GenConstants
.
HTML_SELECT
,
GenConstants
.
HTML_RADIO
}))
{
dicts
.
add
(
"'"
+
column
.
getDictType
()
+
"'"
);
}
}
return
StringUtils
.
join
(
dicts
,
", "
);
}
/**
/**
* 获取权限前缀
* 获取权限前缀
*
*
...
...
ruoyi-generator/src/main/resources/vm/vue/index-tree.vue.vm
View file @
12ab8b03
...
@@ -25,10 +25,10 @@
...
@@ -25,10 +25,10 @@
<el-form-item label="${comment}" prop="${column.javaField}">
<el-form-item label="${comment}" prop="${column.javaField}">
<el-select v-model="queryParams.${column.javaField}" placeholder="请选择${comment}" clearable size="small">
<el-select v-model="queryParams.${column.javaField}" placeholder="请选择${comment}" clearable size="small">
<el-option
<el-option
v-for="dict in
${column.javaField}Options
"
v-for="dict in
dict.type.${dictType}
"
:key="dict.
dictV
alue"
:key="dict.
v
alue"
:label="dict.
dictL
abel"
:label="dict.
l
abel"
:value="dict.
dictV
alue"
:value="dict.
v
alue"
/>
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
...
@@ -108,7 +108,7 @@
...
@@ -108,7 +108,7 @@
#elseif($column.list && "" != $column.dictType)
#elseif($column.list && "" != $column.dictType)
<el-table-column label="${comment}" align="center" prop="${javaField}">
<el-table-column label="${comment}" align="center" prop="${javaField}">
<template slot-scope="scope">
<template slot-scope="scope">
<dict-tag :options="
${javaField}Options
" :value="scope.row.${javaField}"/>
<dict-tag :options="
dict.type.${column.dictType}
" :value="scope.row.${javaField}"/>
</template>
</template>
</el-table-column>
</el-table-column>
#elseif($column.list && "" != $javaField)
#elseif($column.list && "" != $javaField)
...
@@ -184,10 +184,10 @@
...
@@ -184,10 +184,10 @@
<el-form-item label="${comment}" prop="${field}">
<el-form-item label="${comment}" prop="${field}">
<el-select v-model="form.${field}" placeholder="请选择${comment}">
<el-select v-model="form.${field}" placeholder="请选择${comment}">
<el-option
<el-option
v-for="dict in
${field}Options
"
v-for="dict in
dict.type.${dictType}
"
:key="dict.
dictV
alue"
:key="dict.
v
alue"
:label="dict.
dictL
abel"
:label="dict.
l
abel"
#if($column.javaType == "Integer" || $column.javaType == "Long"):value="parseInt(dict.
dictValue)"#else:value="dict.dictV
alue"#end
#if($column.javaType == "Integer" || $column.javaType == "Long"):value="parseInt(dict.
value)"#else:value="dict.v
alue"#end
></el-option>
></el-option>
</el-select>
</el-select>
...
@@ -202,10 +202,10 @@
...
@@ -202,10 +202,10 @@
<el-form-item label="${comment}">
<el-form-item label="${comment}">
<el-checkbox-group v-model="form.${field}">
<el-checkbox-group v-model="form.${field}">
<el-checkbox
<el-checkbox
v-for="dict in
${field}Options
"
v-for="dict in
dict.type.${dictType}
"
:key="dict.
dictV
alue"
:key="dict.
v
alue"
:label="dict.
dictV
alue">
:label="dict.
v
alue">
{{dict.
dictL
abel}}
{{dict.
l
abel}}
</el-checkbox>
</el-checkbox>
</el-checkbox-group>
</el-checkbox-group>
</el-form-item>
</el-form-item>
...
@@ -219,11 +219,11 @@
...
@@ -219,11 +219,11 @@
<el-form-item label="${comment}">
<el-form-item label="${comment}">
<el-radio-group v-model="form.${field}">
<el-radio-group v-model="form.${field}">
<el-radio
<el-radio
v-for="dict in
${field}Options
"
v-for="dict in
dict.type.${dictType}
"
:key="dict.
dictV
alue"
:key="dict.
v
alue"
#if($column.javaType == "Integer" || $column.javaType == "Long"):label="parseInt(dict.
dictValue)"#else:label="dict.dictV
alue"#end
#if($column.javaType == "Integer" || $column.javaType == "Long"):label="parseInt(dict.
value)"#else:label="dict.v
alue"#end
>{{dict.
dictL
abel}}</el-radio>
>{{dict.
l
abel}}</el-radio>
</el-radio-group>
</el-radio-group>
</el-form-item>
</el-form-item>
#elseif($column.htmlType == "radio" && $dictType)
#elseif($column.htmlType == "radio" && $dictType)
...
@@ -265,6 +265,9 @@ import "@riophae/vue-treeselect/dist/vue-treeselect.css";
...
@@ -265,6 +265,9 @@ import "@riophae/vue-treeselect/dist/vue-treeselect.css";
export default {
export default {
name: "${BusinessName}",
name: "${BusinessName}",
#if(${dicts} != '')
dicts: [${dicts}],
#end
components: {
components: {
Treeselect
Treeselect
},
},
...
@@ -283,16 +286,7 @@ export default {
...
@@ -283,16 +286,7 @@ export default {
// 是否显示弹出层
// 是否显示弹出层
open: false,
open: false,
#foreach ($column in $columns)
#foreach ($column in $columns)
#set($parentheseIndex=$column.columnComment.indexOf("("))
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
#if($parentheseIndex != -1)
#set($comment=$column.columnComment.substring(0, $parentheseIndex))
#else
#set($comment=$column.columnComment)
#end
#if(${column.dictType} != '')
// $comment字典
${column.javaField}Options: [],
#elseif($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
// $comment时间范围
// $comment时间范围
daterange${AttrName}: [],
daterange${AttrName}: [],
...
@@ -330,13 +324,6 @@ export default {
...
@@ -330,13 +324,6 @@ export default {
},
},
created() {
created() {
this.getList();
this.getList();
#foreach ($column in $columns)
#if(${column.dictType} != '')
this.getDicts("${column.dictType}").then(response => {
this.${column.javaField}Options = response.data;
});
#end
#end
},
},
methods: {
methods: {
/** 查询${functionName}列表 */
/** 查询${functionName}列表 */
...
...
ruoyi-generator/src/main/resources/vm/vue/index.vue.vm
View file @
12ab8b03
...
@@ -25,10 +25,10 @@
...
@@ -25,10 +25,10 @@
<el-form-item label="${comment}" prop="${column.javaField}">
<el-form-item label="${comment}" prop="${column.javaField}">
<el-select v-model="queryParams.${column.javaField}" placeholder="请选择${comment}" clearable size="small">
<el-select v-model="queryParams.${column.javaField}" placeholder="请选择${comment}" clearable size="small">
<el-option
<el-option
v-for="dict in
${column.javaField}Options
"
v-for="dict in
dict.type.${dictType}
"
:key="dict.
dictV
alue"
:key="dict.
v
alue"
:label="dict.
dictL
abel"
:label="dict.
l
abel"
:value="dict.
dictV
alue"
:value="dict.
v
alue"
/>
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
...
@@ -137,7 +137,7 @@
...
@@ -137,7 +137,7 @@
#elseif($column.list && "" != $column.dictType)
#elseif($column.list && "" != $column.dictType)
<el-table-column label="${comment}" align="center" prop="${javaField}">
<el-table-column label="${comment}" align="center" prop="${javaField}">
<template slot-scope="scope">
<template slot-scope="scope">
<dict-tag :options="
${javaField}Options
" :value="scope.row.${javaField}"/>
<dict-tag :options="
dict.type.${column.dictType}
" :value="scope.row.${javaField}"/>
</template>
</template>
</el-table-column>
</el-table-column>
#elseif($column.list && "" != $javaField)
#elseif($column.list && "" != $javaField)
...
@@ -206,10 +206,10 @@
...
@@ -206,10 +206,10 @@
<el-form-item label="${comment}" prop="${field}">
<el-form-item label="${comment}" prop="${field}">
<el-select v-model="form.${field}" placeholder="请选择${comment}">
<el-select v-model="form.${field}" placeholder="请选择${comment}">
<el-option
<el-option
v-for="dict in
${field}Options
"
v-for="dict in
dict.type.${dictType}
"
:key="dict.
dictV
alue"
:key="dict.
v
alue"
:label="dict.
dictL
abel"
:label="dict.
l
abel"
#if($column.javaType == "Integer" || $column.javaType == "Long"):value="parseInt(dict.
dictValue)"#else:value="dict.dictV
alue"#end
#if($column.javaType == "Integer" || $column.javaType == "Long"):value="parseInt(dict.
value)"#else:value="dict.v
alue"#end
></el-option>
></el-option>
</el-select>
</el-select>
...
@@ -224,10 +224,10 @@
...
@@ -224,10 +224,10 @@
<el-form-item label="${comment}">
<el-form-item label="${comment}">
<el-checkbox-group v-model="form.${field}">
<el-checkbox-group v-model="form.${field}">
<el-checkbox
<el-checkbox
v-for="dict in
${field}Options
"
v-for="dict in
dict.type.${dictType}
"
:key="dict.
dictV
alue"
:key="dict.
v
alue"
:label="dict.
dictV
alue">
:label="dict.
v
alue">
{{dict.
dictL
abel}}
{{dict.
l
abel}}
</el-checkbox>
</el-checkbox>
</el-checkbox-group>
</el-checkbox-group>
</el-form-item>
</el-form-item>
...
@@ -241,11 +241,11 @@
...
@@ -241,11 +241,11 @@
<el-form-item label="${comment}">
<el-form-item label="${comment}">
<el-radio-group v-model="form.${field}">
<el-radio-group v-model="form.${field}">
<el-radio
<el-radio
v-for="dict in
${field}Options
"
v-for="dict in
dict.type.${dictType}
"
:key="dict.
dictV
alue"
:key="dict.
v
alue"
#if($column.javaType == "Integer" || $column.javaType == "Long"):label="parseInt(dict.
dictValue)"#else:label="dict.dictV
alue"#end
#if($column.javaType == "Integer" || $column.javaType == "Long"):label="parseInt(dict.
value)"#else:label="dict.v
alue"#end
>{{dict.
dictL
abel}}</el-radio>
>{{dict.
l
abel}}</el-radio>
</el-radio-group>
</el-radio-group>
</el-form-item>
</el-form-item>
#elseif($column.htmlType == "radio" && $dictType)
#elseif($column.htmlType == "radio" && $dictType)
...
@@ -317,6 +317,9 @@ import { list${BusinessName}, get${BusinessName}, del${BusinessName}, add${Busin
...
@@ -317,6 +317,9 @@ import { list${BusinessName}, get${BusinessName}, del${BusinessName}, add${Busin
export default {
export default {
name: "${BusinessName}",
name: "${BusinessName}",
#if(${dicts} != '')
dicts: [${dicts}],
#end
data() {
data() {
return {
return {
// 遮罩层
// 遮罩层
...
@@ -348,16 +351,7 @@ export default {
...
@@ -348,16 +351,7 @@ export default {
// 是否显示弹出层
// 是否显示弹出层
open: false,
open: false,
#foreach ($column in $columns)
#foreach ($column in $columns)
#set($parentheseIndex=$column.columnComment.indexOf("("))
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
#if($parentheseIndex != -1)
#set($comment=$column.columnComment.substring(0, $parentheseIndex))
#else
#set($comment=$column.columnComment)
#end
#if(${column.dictType} != '')
// $comment字典
${column.javaField}Options: [],
#elseif($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
// $comment时间范围
// $comment时间范围
daterange${AttrName}: [],
daterange${AttrName}: [],
...
@@ -397,13 +391,6 @@ export default {
...
@@ -397,13 +391,6 @@ export default {
},
},
created() {
created() {
this.getList();
this.getList();
#foreach ($column in $columns)
#if(${column.dictType} != '')
this.getDicts("${column.dictType}").then(response => {
this.${column.javaField}Options = response.data;
});
#end
#end
},
},
methods: {
methods: {
/** 查询${functionName}列表 */
/** 查询${functionName}列表 */
...
...
ruoyi-ui/src/components/DictData/index.js
0 → 100644
View file @
12ab8b03
import
Vue
from
'
vue
'
import
DataDict
from
'
@/utils/dict
'
import
{
getDicts
as
getDicts
}
from
'
@/api/system/dict/data
'
function
install
()
{
Vue
.
use
(
DataDict
,
{
metas
:
{
'
*
'
:
{
labelField
:
'
dictLabel
'
,
valueField
:
'
dictValue
'
,
request
(
dictMeta
)
{
return
getDicts
(
dictMeta
.
type
).
then
(
res
=>
res
.
data
)
},
},
},
})
}
export
default
{
install
,
}
\ No newline at end of file
ruoyi-ui/src/components/DictTag/index.vue
View file @
12ab8b03
<
template
>
<
template
>
<div>
<div>
<template
v-for=
"(item, index) in options"
>
<template
v-for=
"(item, index) in options"
>
<template
v-if=
"values.includes(item.
dictV
alue)"
>
<template
v-if=
"values.includes(item.
v
alue)"
>
<span
<span
v-if=
"item.
listClass == 'default' || item
.listClass == ''"
v-if=
"item.
raw.listClass == 'default' || item.raw
.listClass == ''"
:key=
"item.
dictV
alue"
:key=
"item.
v
alue"
:index=
"index"
:index=
"index"
:class=
"item.cssClass"
:class=
"item.
raw.
cssClass"
>
{{
item
.
dictL
abel
}}
</span
>
{{
item
.
l
abel
}}
</span
>
>
<el-tag
<el-tag
v-else
v-else
:disable-transitions=
"true"
:disable-transitions=
"true"
:key=
"item.
dictV
alue"
:key=
"item.
v
alue"
:index=
"index"
:index=
"index"
:type=
"item.
listClass == 'primary' ? '' : item
.listClass"
:type=
"item.
raw.listClass == 'primary' ? '' : item.raw
.listClass"
:class=
"item.cssClass"
:class=
"item.
raw.
cssClass"
>
>
{{
item
.
dictL
abel
}}
{{
item
.
l
abel
}}
</el-tag>
</el-tag>
</
template
>
</
template
>
</template>
</template>
...
@@ -49,4 +49,4 @@ export default {
...
@@ -49,4 +49,4 @@ export default {
.el-tag
+
.el-tag
{
.el-tag
+
.el-tag
{
margin-left
:
10px
;
margin-left
:
10px
;
}
}
</
style
>
</
style
>
\ No newline at end of file
ruoyi-ui/src/main.js
View file @
12ab8b03
...
@@ -30,6 +30,8 @@ import ImageUpload from "@/components/ImageUpload"
...
@@ -30,6 +30,8 @@ import ImageUpload from "@/components/ImageUpload"
import
DictTag
from
'
@/components/DictTag
'
import
DictTag
from
'
@/components/DictTag
'
// 头部标签组件
// 头部标签组件
import
VueMeta
from
'
vue-meta
'
import
VueMeta
from
'
vue-meta
'
// 字典数据组件
import
DictData
from
'
@/components/DictData
'
// 全局方法挂载
// 全局方法挂载
Vue
.
prototype
.
getDicts
=
getDicts
Vue
.
prototype
.
getDicts
=
getDicts
...
@@ -64,6 +66,7 @@ Vue.component('ImageUpload', ImageUpload)
...
@@ -64,6 +66,7 @@ Vue.component('ImageUpload', ImageUpload)
Vue
.
use
(
directive
)
Vue
.
use
(
directive
)
Vue
.
use
(
VueMeta
)
Vue
.
use
(
VueMeta
)
DictData
.
install
()
/**
/**
* If you don't want to use mock-server
* If you don't want to use mock-server
...
...
ruoyi-ui/src/utils/dict/Dict.js
0 → 100644
View file @
12ab8b03
import
Vue
from
'
vue
'
import
{
mergeRecursive
}
from
"
@/utils/ruoyi
"
;
import
DictMeta
from
'
./DictMeta
'
import
DictData
from
'
./DictData
'
const
DEFAULT_DICT_OPTIONS
=
{
types
:
[],
}
/**
* @classdesc 字典
* @property {Object} label 标签对象,内部属性名为字典类型名称
* @property {Object} dict 字段数组,内部属性名为字典类型名称
* @property {Array.<DictMeta>} _dictMetas 字典元数据数组
*/
export
default
class
Dict
{
constructor
()
{
this
.
owner
=
null
this
.
label
=
{}
this
.
type
=
{}
}
init
(
options
)
{
if
(
options
instanceof
Array
)
{
options
=
{
types
:
options
}
}
const
opts
=
mergeRecursive
(
DEFAULT_DICT_OPTIONS
,
options
)
if
(
opts
.
types
===
undefined
)
{
throw
new
Error
(
'
need dict types
'
)
}
const
ps
=
[]
this
.
_dictMetas
=
opts
.
types
.
map
(
t
=>
DictMeta
.
parse
(
t
))
this
.
_dictMetas
.
forEach
(
dictMeta
=>
{
const
type
=
dictMeta
.
type
Vue
.
set
(
this
.
label
,
type
,
{})
Vue
.
set
(
this
.
type
,
type
,
[])
if
(
dictMeta
.
lazy
)
{
return
}
ps
.
push
(
loadDict
(
this
,
dictMeta
))
})
return
Promise
.
all
(
ps
)
}
/**
* 重新加载字典
* @param {String} type 字典类型
*/
reloadDict
(
type
)
{
const
dictMeta
=
this
.
_dictMetas
.
find
(
e
=>
e
.
type
===
type
)
if
(
dictMeta
===
undefined
)
{
return
Promise
.
reject
(
`the dict meta of
${
type
}
was not found`
)
}
return
loadDict
(
this
,
dictMeta
)
}
}
/**
* 加载字典
* @param {Dict} dict 字典
* @param {DictMeta} dictMeta 字典元数据
* @returns {Promise}
*/
function
loadDict
(
dict
,
dictMeta
)
{
return
dictMeta
.
request
(
dictMeta
)
.
then
(
response
=>
{
const
type
=
dictMeta
.
type
let
dicts
=
dictMeta
.
responseConverter
(
response
,
dictMeta
)
if
(
!
(
dicts
instanceof
Array
))
{
console
.
error
(
'
the return of responseConverter must be Array.<DictData>
'
)
dicts
=
[]
}
else
if
(
dicts
.
filter
(
d
=>
d
instanceof
DictData
).
length
!==
dicts
.
length
)
{
console
.
error
(
'
the type of elements in dicts must be DictData
'
)
dicts
=
[]
}
dict
.
type
[
type
].
splice
(
0
,
Number
.
MAX_SAFE_INTEGER
,
...
dicts
)
dicts
.
forEach
(
d
=>
{
Vue
.
set
(
dict
.
label
[
type
],
d
.
value
,
d
.
label
)
})
return
dicts
})
}
ruoyi-ui/src/utils/dict/DictConverter.js
0 → 100644
View file @
12ab8b03
import
DictOptions
from
'
./DictOptions
'
import
DictData
from
'
./DictData
'
export
default
function
(
dict
,
dictMeta
)
{
const
label
=
determineDictField
(
dict
,
dictMeta
.
labelField
,
...
DictOptions
.
DEFAULT_LABEL_FIELDS
)
const
value
=
determineDictField
(
dict
,
dictMeta
.
valueField
,
...
DictOptions
.
DEFAULT_VALUE_FIELDS
)
return
new
DictData
(
dict
[
label
],
dict
[
value
],
dict
)
}
/**
* 确定字典字段
* @param {DictData} dict
* @param {...String} fields
*/
function
determineDictField
(
dict
,
...
fields
)
{
return
fields
.
find
(
f
=>
Object
.
prototype
.
hasOwnProperty
.
call
(
dict
,
f
))
}
ruoyi-ui/src/utils/dict/DictData.js
0 → 100644
View file @
12ab8b03
/**
* @classdesc 字典数据
* @property {String} label 标签
* @property {*} value 标签
* @property {Object} raw 原始数据
*/
export
default
class
DictData
{
constructor
(
label
,
value
,
raw
)
{
this
.
label
=
label
this
.
value
=
value
this
.
raw
=
raw
}
}
ruoyi-ui/src/utils/dict/DictMeta.js
0 → 100644
View file @
12ab8b03
import
{
mergeRecursive
}
from
"
@/utils/ruoyi
"
;
import
DictOptions
from
'
./DictOptions
'
/**
* @classdesc 字典元数据
* @property {String} type 类型
* @property {Function} request 请求
* @property {String} label 标签字段
* @property {String} value 值字段
*/
export
default
class
DictMeta
{
constructor
(
options
)
{
this
.
type
=
options
.
type
this
.
request
=
options
.
request
,
this
.
responseConverter
=
options
.
responseConverter
this
.
labelField
=
options
.
labelField
this
.
valueField
=
options
.
valueField
this
.
lazy
=
options
.
lazy
===
true
}
}
/**
* 解析字典元数据
* @param {Object} options
* @returns {DictMeta}
*/
DictMeta
.
parse
=
function
(
options
)
{
let
opts
=
null
if
(
typeof
options
===
'
string
'
)
{
opts
=
DictOptions
.
metas
[
options
]
||
{}
opts
.
type
=
options
}
else
if
(
typeof
options
===
'
object
'
)
{
opts
=
options
}
opts
=
mergeRecursive
(
DictOptions
.
metas
[
'
*
'
],
opts
)
return
new
DictMeta
(
opts
)
}
ruoyi-ui/src/utils/dict/DictOptions.js
0 → 100644
View file @
12ab8b03
import
{
mergeRecursive
}
from
"
@/utils/ruoyi
"
;
import
dictConverter
from
'
./DictConverter
'
export
const
options
=
{
metas
:
{
'
*
'
:
{
/**
* 字典请求,方法签名为function(dictMeta: DictMeta): Promise
*/
request
:
(
dictMeta
)
=>
{
console
.
log
(
`load dict
${
dictMeta
.
type
}
`
)
return
Promise
.
resolve
([])
},
/**
* 字典响应数据转换器,方法签名为function(response: Object, dictMeta: DictMeta): DictData
*/
responseConverter
,
labelField
:
'
label
'
,
valueField
:
'
value
'
,
},
},
/**
* 默认标签字段
*/
DEFAULT_LABEL_FIELDS
:
[
'
label
'
,
'
name
'
,
'
title
'
],
/**
* 默认值字段
*/
DEFAULT_VALUE_FIELDS
:
[
'
value
'
,
'
id
'
,
'
uid
'
,
'
key
'
],
}
/**
* 映射字典
* @param {Object} response 字典数据
* @param {DictMeta} dictMeta 字典元数据
* @returns {DictData}
*/
function
responseConverter
(
response
,
dictMeta
)
{
const
dicts
=
response
.
content
instanceof
Array
?
response
.
content
:
response
if
(
dicts
===
undefined
)
{
console
.
warn
(
`no dict data of "
${
dictMeta
.
type
}
" found in the response`
)
return
[]
}
return
dicts
.
map
(
d
=>
dictConverter
(
d
,
dictMeta
))
}
export
function
mergeOptions
(
src
)
{
mergeRecursive
(
options
,
src
)
}
export
default
options
ruoyi-ui/src/utils/dict/index.js
0 → 100644
View file @
12ab8b03
import
Dict
from
'
./Dict
'
import
{
mergeOptions
}
from
'
./DictOptions
'
export
default
function
(
Vue
,
options
)
{
mergeOptions
(
options
)
Vue
.
mixin
({
data
()
{
if
(
this
.
$options
.
dicts
===
undefined
||
this
.
$options
.
dicts
===
null
)
{
return
{}
}
const
dict
=
new
Dict
()
dict
.
owner
=
this
return
{
dict
}
},
created
()
{
if
(
!
(
this
.
dict
instanceof
Dict
))
{
return
}
options
.
onCreated
&&
options
.
onCreated
(
this
.
dict
)
this
.
dict
.
init
(
this
.
$options
.
dicts
).
then
(()
=>
{
options
.
onReady
&&
options
.
onReady
(
this
.
dict
)
this
.
$nextTick
(()
=>
{
this
.
$emit
(
'
dictReady
'
,
this
.
dict
)
if
(
this
.
$options
.
methods
&&
this
.
$options
.
methods
.
onDictReady
instanceof
Function
)
{
this
.
$options
.
methods
.
onDictReady
.
call
(
this
,
this
.
dict
)
}
})
})
},
})
}
ruoyi-ui/src/utils/ruoyi.js
View file @
12ab8b03
...
@@ -72,8 +72,8 @@ export function addDateRange(params, dateRange, propName) {
...
@@ -72,8 +72,8 @@ export function addDateRange(params, dateRange, propName) {
export
function
selectDictLabel
(
datas
,
value
)
{
export
function
selectDictLabel
(
datas
,
value
)
{
var
actions
=
[];
var
actions
=
[];
Object
.
keys
(
datas
).
some
((
key
)
=>
{
Object
.
keys
(
datas
).
some
((
key
)
=>
{
if
(
datas
[
key
].
dictV
alue
==
(
''
+
value
))
{
if
(
datas
[
key
].
v
alue
==
(
''
+
value
))
{
actions
.
push
(
datas
[
key
].
dictL
abel
);
actions
.
push
(
datas
[
key
].
l
abel
);
return
true
;
return
true
;
}
}
})
})
...
@@ -122,6 +122,22 @@ export function praseStrEmpty(str) {
...
@@ -122,6 +122,22 @@ export function praseStrEmpty(str) {
return
str
;
return
str
;
}
}
// 数据合并
export
function
mergeRecursive
(
source
,
target
)
{
for
(
var
p
in
target
)
{
try
{
if
(
target
[
p
].
constructor
==
Object
)
{
source
[
p
]
=
mergeRecursive
(
source
[
p
],
target
[
p
]);
}
else
{
source
[
p
]
=
target
[
p
];
}
}
catch
(
e
)
{
source
[
p
]
=
target
[
p
];
}
}
return
source
;
};
/**
/**
* 构造树型结构数据
* 构造树型结构数据
* @param {*} data 数据源
* @param {*} data 数据源
...
...
ruoyi-ui/src/views/monitor/job/index.vue
View file @
12ab8b03
...
@@ -13,20 +13,20 @@
...
@@ -13,20 +13,20 @@
<el-form-item
label=
"任务组名"
prop=
"jobGroup"
>
<el-form-item
label=
"任务组名"
prop=
"jobGroup"
>
<el-select
v-model=
"queryParams.jobGroup"
placeholder=
"请选择任务组名"
clearable
size=
"small"
>
<el-select
v-model=
"queryParams.jobGroup"
placeholder=
"请选择任务组名"
clearable
size=
"small"
>
<el-option
<el-option
v-for=
"dict in
jobGroupOptions
"
v-for=
"dict in
dict.type.sys_job_group
"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictL
abel"
:label=
"dict.
l
abel"
:value=
"dict.
dictV
alue"
:value=
"dict.
v
alue"
/>
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"任务状态"
prop=
"status"
>
<el-form-item
label=
"任务状态"
prop=
"status"
>
<el-select
v-model=
"queryParams.status"
placeholder=
"请选择任务状态"
clearable
size=
"small"
>
<el-select
v-model=
"queryParams.status"
placeholder=
"请选择任务状态"
clearable
size=
"small"
>
<el-option
<el-option
v-for=
"dict in
statusOption
s"
v-for=
"dict in
dict.type.sys_job_statu
s"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictL
abel"
:label=
"dict.
l
abel"
:value=
"dict.
dictV
alue"
:value=
"dict.
v
alue"
/>
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
...
@@ -99,7 +99,7 @@
...
@@ -99,7 +99,7 @@
<el-table-column
label=
"任务名称"
align=
"center"
prop=
"jobName"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"任务名称"
align=
"center"
prop=
"jobName"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"任务组名"
align=
"center"
prop=
"jobGroup"
>
<el-table-column
label=
"任务组名"
align=
"center"
prop=
"jobGroup"
>
<template
slot-scope=
"scope"
>
<template
slot-scope=
"scope"
>
<dict-tag
:options=
"
jobGroupOptions
"
:value=
"scope.row.jobGroup"
/>
<dict-tag
:options=
"
dict.type.sys_job_group
"
:value=
"scope.row.jobGroup"
/>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"调用目标字符串"
align=
"center"
prop=
"invokeTarget"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"调用目标字符串"
align=
"center"
prop=
"invokeTarget"
:show-overflow-tooltip=
"true"
/>
...
@@ -168,10 +168,10 @@
...
@@ -168,10 +168,10 @@
<el-form-item
label=
"任务分组"
prop=
"jobGroup"
>
<el-form-item
label=
"任务分组"
prop=
"jobGroup"
>
<el-select
v-model=
"form.jobGroup"
placeholder=
"请选择"
>
<el-select
v-model=
"form.jobGroup"
placeholder=
"请选择"
>
<el-option
<el-option
v-for=
"dict in
jobGroupOptions
"
v-for=
"dict in
dict.type.sys_job_group
"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictL
abel"
:label=
"dict.
l
abel"
:value=
"dict.
dictV
alue"
:value=
"dict.
v
alue"
></el-option>
></el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
...
@@ -225,10 +225,10 @@
...
@@ -225,10 +225,10 @@
<el-form-item
label=
"状态"
>
<el-form-item
label=
"状态"
>
<el-radio-group
v-model=
"form.status"
>
<el-radio-group
v-model=
"form.status"
>
<el-radio
<el-radio
v-for=
"dict in
statusOption
s"
v-for=
"dict in
dict.type.sys_job_statu
s"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictV
alue"
:label=
"dict.
v
alue"
>
{{dict.
dictL
abel}}
</el-radio>
>
{{dict.
l
abel}}
</el-radio>
</el-radio-group>
</el-radio-group>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
...
@@ -301,6 +301,7 @@ import Crontab from '@/components/Crontab'
...
@@ -301,6 +301,7 @@ import Crontab from '@/components/Crontab'
export
default
{
export
default
{
components
:
{
Crontab
},
components
:
{
Crontab
},
name
:
"
Job
"
,
name
:
"
Job
"
,
dicts
:
[
'
sys_job_group
'
,
'
sys_job_status
'
],
data
()
{
data
()
{
return
{
return
{
// 遮罩层
// 遮罩层
...
@@ -329,10 +330,6 @@ export default {
...
@@ -329,10 +330,6 @@ export default {
openCron
:
false
,
openCron
:
false
,
// 传入的表达式
// 传入的表达式
expression
:
""
,
expression
:
""
,
// 任务组名字典
jobGroupOptions
:
[],
// 状态字典
statusOptions
:
[],
// 查询参数
// 查询参数
queryParams
:
{
queryParams
:
{
pageNum
:
1
,
pageNum
:
1
,
...
@@ -359,12 +356,6 @@ export default {
...
@@ -359,12 +356,6 @@ export default {
},
},
created
()
{
created
()
{
this
.
getList
();
this
.
getList
();
this
.
getDicts
(
"
sys_job_group
"
).
then
(
response
=>
{
this
.
jobGroupOptions
=
response
.
data
;
});
this
.
getDicts
(
"
sys_job_status
"
).
then
(
response
=>
{
this
.
statusOptions
=
response
.
data
;
});
},
},
methods
:
{
methods
:
{
/** 查询定时任务列表 */
/** 查询定时任务列表 */
...
@@ -378,7 +369,7 @@ export default {
...
@@ -378,7 +369,7 @@ export default {
},
},
// 任务组名字典翻译
// 任务组名字典翻译
jobGroupFormat
(
row
,
column
)
{
jobGroupFormat
(
row
,
column
)
{
return
this
.
selectDictLabel
(
this
.
jobGroupOptions
,
row
.
jobGroup
);
return
this
.
selectDictLabel
(
this
.
dict
.
type
.
sys_job_group
,
row
.
jobGroup
);
},
},
// 取消按钮
// 取消按钮
cancel
()
{
cancel
()
{
...
...
ruoyi-ui/src/views/monitor/job/log.vue
View file @
12ab8b03
...
@@ -20,10 +20,10 @@
...
@@ -20,10 +20,10 @@
style=
"width: 240px"
style=
"width: 240px"
>
>
<el-option
<el-option
v-for=
"dict in
jobGroupOptions
"
v-for=
"dict in
dict.type.sys_job_group
"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictL
abel"
:label=
"dict.
l
abel"
:value=
"dict.
dictV
alue"
:value=
"dict.
v
alue"
/>
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
...
@@ -36,10 +36,10 @@
...
@@ -36,10 +36,10 @@
style=
"width: 240px"
style=
"width: 240px"
>
>
<el-option
<el-option
v-for=
"dict in
statusOption
s"
v-for=
"dict in
dict.type.sys_common_statu
s"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictL
abel"
:label=
"dict.
l
abel"
:value=
"dict.
dictV
alue"
:value=
"dict.
v
alue"
/>
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
...
@@ -112,14 +112,14 @@
...
@@ -112,14 +112,14 @@
<el-table-column
label=
"任务名称"
align=
"center"
prop=
"jobName"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"任务名称"
align=
"center"
prop=
"jobName"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"任务组名"
align=
"center"
prop=
"jobGroup"
:show-overflow-tooltip=
"true"
>
<el-table-column
label=
"任务组名"
align=
"center"
prop=
"jobGroup"
:show-overflow-tooltip=
"true"
>
<template
slot-scope=
"scope"
>
<template
slot-scope=
"scope"
>
<dict-tag
:options=
"
jobGroupOptions
"
:value=
"scope.row.jobGroup"
/>
<dict-tag
:options=
"
dict.type.sys_job_group
"
:value=
"scope.row.jobGroup"
/>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"调用目标字符串"
align=
"center"
prop=
"invokeTarget"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"调用目标字符串"
align=
"center"
prop=
"invokeTarget"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"日志信息"
align=
"center"
prop=
"jobMessage"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"日志信息"
align=
"center"
prop=
"jobMessage"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"执行状态"
align=
"center"
prop=
"status"
>
<el-table-column
label=
"执行状态"
align=
"center"
prop=
"status"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<dict-tag
:options=
"
statusOption
s"
:value=
"scope.row.status"
/>
<dict-tag
:options=
"
dict.type.sys_common_statu
s"
:value=
"scope.row.status"
/>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"执行时间"
align=
"center"
prop=
"createTime"
width=
"180"
>
<el-table-column
label=
"执行时间"
align=
"center"
prop=
"createTime"
width=
"180"
>
...
@@ -190,6 +190,7 @@ import { listJobLog, delJobLog, exportJobLog, cleanJobLog } from "@/api/monitor/
...
@@ -190,6 +190,7 @@ import { listJobLog, delJobLog, exportJobLog, cleanJobLog } from "@/api/monitor/
export
default
{
export
default
{
name
:
"
JobLog
"
,
name
:
"
JobLog
"
,
dicts
:
[
'
sys_common_status
'
,
'
sys_job_group
'
],
data
()
{
data
()
{
return
{
return
{
// 遮罩层
// 遮罩层
...
@@ -212,10 +213,6 @@ export default {
...
@@ -212,10 +213,6 @@ export default {
dateRange
:
[],
dateRange
:
[],
// 表单参数
// 表单参数
form
:
{},
form
:
{},
// 执行状态字典
statusOptions
:
[],
// 任务组名字典
jobGroupOptions
:
[],
// 查询参数
// 查询参数
queryParams
:
{
queryParams
:
{
pageNum
:
1
,
pageNum
:
1
,
...
@@ -237,12 +234,6 @@ export default {
...
@@ -237,12 +234,6 @@ export default {
}
else
{
}
else
{
this
.
getList
();
this
.
getList
();
}
}
this
.
getDicts
(
"
sys_common_status
"
).
then
(
response
=>
{
this
.
statusOptions
=
response
.
data
;
});
this
.
getDicts
(
"
sys_job_group
"
).
then
(
response
=>
{
this
.
jobGroupOptions
=
response
.
data
;
});
},
},
methods
:
{
methods
:
{
/** 查询调度日志列表 */
/** 查询调度日志列表 */
...
...
ruoyi-ui/src/views/monitor/logininfor/index.vue
View file @
12ab8b03
...
@@ -30,10 +30,10 @@
...
@@ -30,10 +30,10 @@
style=
"width: 240px"
style=
"width: 240px"
>
>
<el-option
<el-option
v-for=
"dict in
statusOption
s"
v-for=
"dict in
dict.type.sys_common_statu
s"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictL
abel"
:label=
"dict.
l
abel"
:value=
"dict.
dictV
alue"
:value=
"dict.
v
alue"
/>
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
...
@@ -101,7 +101,7 @@
...
@@ -101,7 +101,7 @@
<el-table-column
label=
"操作系统"
align=
"center"
prop=
"os"
/>
<el-table-column
label=
"操作系统"
align=
"center"
prop=
"os"
/>
<el-table-column
label=
"登录状态"
align=
"center"
prop=
"status"
>
<el-table-column
label=
"登录状态"
align=
"center"
prop=
"status"
>
<template
slot-scope=
"scope"
>
<template
slot-scope=
"scope"
>
<dict-tag
:options=
"
statusOption
s"
:value=
"scope.row.status"
/>
<dict-tag
:options=
"
dict.type.sys_common_statu
s"
:value=
"scope.row.status"
/>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"操作信息"
align=
"center"
prop=
"msg"
/>
<el-table-column
label=
"操作信息"
align=
"center"
prop=
"msg"
/>
...
@@ -127,6 +127,7 @@ import { list, delLogininfor, cleanLogininfor, exportLogininfor } from "@/api/mo
...
@@ -127,6 +127,7 @@ import { list, delLogininfor, cleanLogininfor, exportLogininfor } from "@/api/mo
export
default
{
export
default
{
name
:
"
Logininfor
"
,
name
:
"
Logininfor
"
,
dicts
:
[
'
sys_common_status
'
],
data
()
{
data
()
{
return
{
return
{
// 遮罩层
// 遮罩层
...
@@ -143,8 +144,6 @@ export default {
...
@@ -143,8 +144,6 @@ export default {
total
:
0
,
total
:
0
,
// 表格数据
// 表格数据
list
:
[],
list
:
[],
// 状态数据字典
statusOptions
:
[],
// 日期范围
// 日期范围
dateRange
:
[],
dateRange
:
[],
// 默认排序
// 默认排序
...
@@ -161,9 +160,6 @@ export default {
...
@@ -161,9 +160,6 @@ export default {
},
},
created
()
{
created
()
{
this
.
getList
();
this
.
getList
();
this
.
getDicts
(
"
sys_common_status
"
).
then
(
response
=>
{
this
.
statusOptions
=
response
.
data
;
});
},
},
methods
:
{
methods
:
{
/** 查询登录日志列表 */
/** 查询登录日志列表 */
...
...
ruoyi-ui/src/views/monitor/operlog/index.vue
View file @
12ab8b03
...
@@ -30,10 +30,10 @@
...
@@ -30,10 +30,10 @@
style=
"width: 240px"
style=
"width: 240px"
>
>
<el-option
<el-option
v-for=
"dict in
typeOptions
"
v-for=
"dict in
dict.type.sys_oper_type
"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictL
abel"
:label=
"dict.
l
abel"
:value=
"dict.
dictV
alue"
:value=
"dict.
v
alue"
/>
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
...
@@ -46,10 +46,10 @@
...
@@ -46,10 +46,10 @@
style=
"width: 240px"
style=
"width: 240px"
>
>
<el-option
<el-option
v-for=
"dict in
statusOption
s"
v-for=
"dict in
dict.type.sys_common_statu
s"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictL
abel"
:label=
"dict.
l
abel"
:value=
"dict.
dictV
alue"
:value=
"dict.
v
alue"
/>
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
...
@@ -113,7 +113,7 @@
...
@@ -113,7 +113,7 @@
<el-table-column
label=
"系统模块"
align=
"center"
prop=
"title"
/>
<el-table-column
label=
"系统模块"
align=
"center"
prop=
"title"
/>
<el-table-column
label=
"操作类型"
align=
"center"
prop=
"businessType"
>
<el-table-column
label=
"操作类型"
align=
"center"
prop=
"businessType"
>
<template
slot-scope=
"scope"
>
<template
slot-scope=
"scope"
>
<dict-tag
:options=
"
typeOptions
"
:value=
"scope.row.businessType"
/>
<dict-tag
:options=
"
dict.type.sys_oper_type
"
:value=
"scope.row.businessType"
/>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"请求方式"
align=
"center"
prop=
"requestMethod"
/>
<el-table-column
label=
"请求方式"
align=
"center"
prop=
"requestMethod"
/>
...
@@ -122,7 +122,7 @@
...
@@ -122,7 +122,7 @@
<el-table-column
label=
"操作地点"
align=
"center"
prop=
"operLocation"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"操作地点"
align=
"center"
prop=
"operLocation"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"操作状态"
align=
"center"
prop=
"status"
>
<el-table-column
label=
"操作状态"
align=
"center"
prop=
"status"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<dict-tag
:options=
"
statusOption
s"
:value=
"scope.row.status"
/>
<dict-tag
:options=
"
dict.type.sys_common_statu
s"
:value=
"scope.row.status"
/>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"操作日期"
align=
"center"
prop=
"operTime"
sortable=
"custom"
:sort-orders=
"['descending', 'ascending']"
width=
"180"
>
<el-table-column
label=
"操作日期"
align=
"center"
prop=
"operTime"
sortable=
"custom"
:sort-orders=
"['descending', 'ascending']"
width=
"180"
>
...
@@ -200,6 +200,7 @@ import { list, delOperlog, cleanOperlog, exportOperlog } from "@/api/monitor/ope
...
@@ -200,6 +200,7 @@ import { list, delOperlog, cleanOperlog, exportOperlog } from "@/api/monitor/ope
export
default
{
export
default
{
name
:
"
Operlog
"
,
name
:
"
Operlog
"
,
dicts
:
[
'
sys_oper_type
'
,
'
sys_common_status
'
],
data
()
{
data
()
{
return
{
return
{
// 遮罩层
// 遮罩层
...
@@ -218,10 +219,6 @@ export default {
...
@@ -218,10 +219,6 @@ export default {
list
:
[],
list
:
[],
// 是否显示弹出层
// 是否显示弹出层
open
:
false
,
open
:
false
,
// 类型数据字典
typeOptions
:
[],
// 类型数据字典
statusOptions
:
[],
// 日期范围
// 日期范围
dateRange
:
[],
dateRange
:
[],
// 默认排序
// 默认排序
...
@@ -241,12 +238,6 @@ export default {
...
@@ -241,12 +238,6 @@ export default {
},
},
created
()
{
created
()
{
this
.
getList
();
this
.
getList
();
this
.
getDicts
(
"
sys_oper_type
"
).
then
(
response
=>
{
this
.
typeOptions
=
response
.
data
;
});
this
.
getDicts
(
"
sys_common_status
"
).
then
(
response
=>
{
this
.
statusOptions
=
response
.
data
;
});
},
},
methods
:
{
methods
:
{
/** 查询登录日志 */
/** 查询登录日志 */
...
@@ -261,7 +252,7 @@ export default {
...
@@ -261,7 +252,7 @@ export default {
},
},
// 操作日志类型字典翻译
// 操作日志类型字典翻译
typeFormat
(
row
,
column
)
{
typeFormat
(
row
,
column
)
{
return
this
.
selectDictLabel
(
this
.
typeOptions
,
row
.
businessType
);
return
this
.
selectDictLabel
(
this
.
dict
.
type
.
sys_oper_type
,
row
.
businessType
);
},
},
/** 搜索按钮操作 */
/** 搜索按钮操作 */
handleQuery
()
{
handleQuery
()
{
...
...
ruoyi-ui/src/views/system/config/index.vue
View file @
12ab8b03
...
@@ -24,10 +24,10 @@
...
@@ -24,10 +24,10 @@
<el-form-item
label=
"系统内置"
prop=
"configType"
>
<el-form-item
label=
"系统内置"
prop=
"configType"
>
<el-select
v-model=
"queryParams.configType"
placeholder=
"系统内置"
clearable
size=
"small"
>
<el-select
v-model=
"queryParams.configType"
placeholder=
"系统内置"
clearable
size=
"small"
>
<el-option
<el-option
v-for=
"dict in
typeOptions
"
v-for=
"dict in
dict.type.sys_yes_no
"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictL
abel"
:label=
"dict.
l
abel"
:value=
"dict.
dictV
alue"
:value=
"dict.
v
alue"
/>
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
...
@@ -114,7 +114,7 @@
...
@@ -114,7 +114,7 @@
<el-table-column
label=
"参数键值"
align=
"center"
prop=
"configValue"
/>
<el-table-column
label=
"参数键值"
align=
"center"
prop=
"configValue"
/>
<el-table-column
label=
"系统内置"
align=
"center"
prop=
"configType"
>
<el-table-column
label=
"系统内置"
align=
"center"
prop=
"configType"
>
<template
slot-scope=
"scope"
>
<template
slot-scope=
"scope"
>
<dict-tag
:options=
"
typeOptions
"
:value=
"scope.row.configType"
/>
<dict-tag
:options=
"
dict.type.sys_yes_no
"
:value=
"scope.row.configType"
/>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"备注"
align=
"center"
prop=
"remark"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"备注"
align=
"center"
prop=
"remark"
:show-overflow-tooltip=
"true"
/>
...
@@ -166,10 +166,10 @@
...
@@ -166,10 +166,10 @@
<el-form-item
label=
"系统内置"
prop=
"configType"
>
<el-form-item
label=
"系统内置"
prop=
"configType"
>
<el-radio-group
v-model=
"form.configType"
>
<el-radio-group
v-model=
"form.configType"
>
<el-radio
<el-radio
v-for=
"dict in
typeOptions
"
v-for=
"dict in
dict.type.sys_yes_no
"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictV
alue"
:label=
"dict.
v
alue"
>
{{dict.
dictL
abel}}
</el-radio>
>
{{dict.
l
abel}}
</el-radio>
</el-radio-group>
</el-radio-group>
</el-form-item>
</el-form-item>
<el-form-item
label=
"备注"
prop=
"remark"
>
<el-form-item
label=
"备注"
prop=
"remark"
>
...
@@ -189,6 +189,7 @@ import { listConfig, getConfig, delConfig, addConfig, updateConfig, exportConfig
...
@@ -189,6 +189,7 @@ import { listConfig, getConfig, delConfig, addConfig, updateConfig, exportConfig
export
default
{
export
default
{
name
:
"
Config
"
,
name
:
"
Config
"
,
dicts
:
[
'
sys_yes_no
'
],
data
()
{
data
()
{
return
{
return
{
// 遮罩层
// 遮罩层
...
@@ -211,8 +212,6 @@ export default {
...
@@ -211,8 +212,6 @@ export default {
title
:
""
,
title
:
""
,
// 是否显示弹出层
// 是否显示弹出层
open
:
false
,
open
:
false
,
// 类型数据字典
typeOptions
:
[],
// 日期范围
// 日期范围
dateRange
:
[],
dateRange
:
[],
// 查询参数
// 查询参数
...
@@ -241,9 +240,6 @@ export default {
...
@@ -241,9 +240,6 @@ export default {
},
},
created
()
{
created
()
{
this
.
getList
();
this
.
getList
();
this
.
getDicts
(
"
sys_yes_no
"
).
then
(
response
=>
{
this
.
typeOptions
=
response
.
data
;
});
},
},
methods
:
{
methods
:
{
/** 查询参数列表 */
/** 查询参数列表 */
...
...
ruoyi-ui/src/views/system/dept/index.vue
View file @
12ab8b03
...
@@ -13,10 +13,10 @@
...
@@ -13,10 +13,10 @@
<el-form-item
label=
"状态"
prop=
"status"
>
<el-form-item
label=
"状态"
prop=
"status"
>
<el-select
v-model=
"queryParams.status"
placeholder=
"部门状态"
clearable
size=
"small"
>
<el-select
v-model=
"queryParams.status"
placeholder=
"部门状态"
clearable
size=
"small"
>
<el-option
<el-option
v-for=
"dict in
statusOptions
"
v-for=
"dict in
dict.type.sys_normal_disable
"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictL
abel"
:label=
"dict.
l
abel"
:value=
"dict.
dictV
alue"
:value=
"dict.
v
alue"
/>
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
...
@@ -61,7 +61,7 @@
...
@@ -61,7 +61,7 @@
<el-table-column
prop=
"orderNum"
label=
"排序"
width=
"200"
></el-table-column>
<el-table-column
prop=
"orderNum"
label=
"排序"
width=
"200"
></el-table-column>
<el-table-column
prop=
"status"
label=
"状态"
width=
"100"
>
<el-table-column
prop=
"status"
label=
"状态"
width=
"100"
>
<template
slot-scope=
"scope"
>
<template
slot-scope=
"scope"
>
<dict-tag
:options=
"
statusOptions
"
:value=
"scope.row.status"
/>
<dict-tag
:options=
"
dict.type.sys_normal_disable
"
:value=
"scope.row.status"
/>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"创建时间"
align=
"center"
prop=
"createTime"
width=
"200"
>
<el-table-column
label=
"创建时间"
align=
"center"
prop=
"createTime"
width=
"200"
>
...
@@ -135,10 +135,10 @@
...
@@ -135,10 +135,10 @@
<el-form-item
label=
"部门状态"
>
<el-form-item
label=
"部门状态"
>
<el-radio-group
v-model=
"form.status"
>
<el-radio-group
v-model=
"form.status"
>
<el-radio
<el-radio
v-for=
"dict in
statusOptions
"
v-for=
"dict in
dict.type.sys_normal_disable
"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictV
alue"
:label=
"dict.
v
alue"
>
{{dict.
dictL
abel}}
</el-radio>
>
{{dict.
l
abel}}
</el-radio>
</el-radio-group>
</el-radio-group>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
...
@@ -159,6 +159,7 @@ import "@riophae/vue-treeselect/dist/vue-treeselect.css";
...
@@ -159,6 +159,7 @@ import "@riophae/vue-treeselect/dist/vue-treeselect.css";
export
default
{
export
default
{
name
:
"
Dept
"
,
name
:
"
Dept
"
,
dicts
:
[
'
sys_normal_disable
'
],
components
:
{
Treeselect
},
components
:
{
Treeselect
},
data
()
{
data
()
{
return
{
return
{
...
@@ -180,8 +181,6 @@ export default {
...
@@ -180,8 +181,6 @@ export default {
refreshTable
:
true
,
refreshTable
:
true
,
// 是否展开
// 是否展开
expand
:
false
,
expand
:
false
,
// 状态数据字典
statusOptions
:
[],
// 查询参数
// 查询参数
queryParams
:
{
queryParams
:
{
deptName
:
undefined
,
deptName
:
undefined
,
...
@@ -219,9 +218,6 @@ export default {
...
@@ -219,9 +218,6 @@ export default {
},
},
created
()
{
created
()
{
this
.
getList
();
this
.
getList
();
this
.
getDicts
(
"
sys_normal_disable
"
).
then
(
response
=>
{
this
.
statusOptions
=
response
.
data
;
});
},
},
methods
:
{
methods
:
{
/** 查询部门列表 */
/** 查询部门列表 */
...
...
ruoyi-ui/src/views/system/dict/data.vue
View file @
12ab8b03
...
@@ -23,10 +23,10 @@
...
@@ -23,10 +23,10 @@
<el-form-item
label=
"状态"
prop=
"status"
>
<el-form-item
label=
"状态"
prop=
"status"
>
<el-select
v-model=
"queryParams.status"
placeholder=
"数据状态"
clearable
size=
"small"
>
<el-select
v-model=
"queryParams.status"
placeholder=
"数据状态"
clearable
size=
"small"
>
<el-option
<el-option
v-for=
"dict in
statusOptions
"
v-for=
"dict in
dict.type.sys_normal_disable
"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictL
abel"
:label=
"dict.
l
abel"
:value=
"dict.
dictV
alue"
:value=
"dict.
v
alue"
/>
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
...
@@ -96,7 +96,7 @@
...
@@ -96,7 +96,7 @@
<el-table-column
label=
"字典排序"
align=
"center"
prop=
"dictSort"
/>
<el-table-column
label=
"字典排序"
align=
"center"
prop=
"dictSort"
/>
<el-table-column
label=
"状态"
align=
"center"
prop=
"status"
>
<el-table-column
label=
"状态"
align=
"center"
prop=
"status"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<dict-tag
:options=
"
statusOptions
"
:value=
"scope.row.status"
/>
<dict-tag
:options=
"
dict.type.sys_normal_disable
"
:value=
"scope.row.status"
/>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"备注"
align=
"center"
prop=
"remark"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"备注"
align=
"center"
prop=
"remark"
:show-overflow-tooltip=
"true"
/>
...
@@ -164,10 +164,10 @@
...
@@ -164,10 +164,10 @@
<el-form-item
label=
"状态"
prop=
"status"
>
<el-form-item
label=
"状态"
prop=
"status"
>
<el-radio-group
v-model=
"form.status"
>
<el-radio-group
v-model=
"form.status"
>
<el-radio
<el-radio
v-for=
"dict in
statusOptions
"
v-for=
"dict in
dict.type.sys_normal_disable
"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictV
alue"
:label=
"dict.
v
alue"
>
{{dict.
dictL
abel}}
</el-radio>
>
{{dict.
l
abel}}
</el-radio>
</el-radio-group>
</el-radio-group>
</el-form-item>
</el-form-item>
<el-form-item
label=
"备注"
prop=
"remark"
>
<el-form-item
label=
"备注"
prop=
"remark"
>
...
@@ -188,6 +188,7 @@ import { listType, getType } from "@/api/system/dict/type";
...
@@ -188,6 +188,7 @@ import { listType, getType } from "@/api/system/dict/type";
export
default
{
export
default
{
name
:
"
Data
"
,
name
:
"
Data
"
,
dicts
:
[
'
sys_normal_disable
'
],
data
()
{
data
()
{
return
{
return
{
// 遮罩层
// 遮罩层
...
@@ -239,8 +240,6 @@ export default {
...
@@ -239,8 +240,6 @@ export default {
label
:
"
危险
"
label
:
"
危险
"
}
}
],
],
// 状态数据字典
statusOptions
:
[],
// 类型数据字典
// 类型数据字典
typeOptions
:
[],
typeOptions
:
[],
// 查询参数
// 查询参数
...
@@ -271,9 +270,6 @@ export default {
...
@@ -271,9 +270,6 @@ export default {
const
dictId
=
this
.
$route
.
params
&&
this
.
$route
.
params
.
dictId
;
const
dictId
=
this
.
$route
.
params
&&
this
.
$route
.
params
.
dictId
;
this
.
getType
(
dictId
);
this
.
getType
(
dictId
);
this
.
getTypeList
();
this
.
getTypeList
();
this
.
getDicts
(
"
sys_normal_disable
"
).
then
(
response
=>
{
this
.
statusOptions
=
response
.
data
;
});
},
},
methods
:
{
methods
:
{
/** 查询字典类型详细 */
/** 查询字典类型详细 */
...
...
ruoyi-ui/src/views/system/dict/index.vue
View file @
12ab8b03
...
@@ -30,10 +30,10 @@
...
@@ -30,10 +30,10 @@
style=
"width: 240px"
style=
"width: 240px"
>
>
<el-option
<el-option
v-for=
"dict in
statusOptions
"
v-for=
"dict in
dict.type.sys_normal_disable
"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictL
abel"
:label=
"dict.
l
abel"
:value=
"dict.
dictV
alue"
:value=
"dict.
v
alue"
/>
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
...
@@ -125,7 +125,7 @@
...
@@ -125,7 +125,7 @@
</el-table-column>
</el-table-column>
<el-table-column
label=
"状态"
align=
"center"
prop=
"status"
>
<el-table-column
label=
"状态"
align=
"center"
prop=
"status"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<dict-tag
:options=
"
statusOptions
"
:value=
"scope.row.status"
/>
<dict-tag
:options=
"
dict.type.sys_normal_disable
"
:value=
"scope.row.status"
/>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"备注"
align=
"center"
prop=
"remark"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"备注"
align=
"center"
prop=
"remark"
:show-overflow-tooltip=
"true"
/>
...
@@ -174,10 +174,10 @@
...
@@ -174,10 +174,10 @@
<el-form-item
label=
"状态"
prop=
"status"
>
<el-form-item
label=
"状态"
prop=
"status"
>
<el-radio-group
v-model=
"form.status"
>
<el-radio-group
v-model=
"form.status"
>
<el-radio
<el-radio
v-for=
"dict in
statusOptions
"
v-for=
"dict in
dict.type.sys_normal_disable
"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictV
alue"
:label=
"dict.
v
alue"
>
{{dict.
dictL
abel}}
</el-radio>
>
{{dict.
l
abel}}
</el-radio>
</el-radio-group>
</el-radio-group>
</el-form-item>
</el-form-item>
<el-form-item
label=
"备注"
prop=
"remark"
>
<el-form-item
label=
"备注"
prop=
"remark"
>
...
@@ -197,6 +197,7 @@ import { listType, getType, delType, addType, updateType, exportType, refreshCac
...
@@ -197,6 +197,7 @@ import { listType, getType, delType, addType, updateType, exportType, refreshCac
export
default
{
export
default
{
name
:
"
Dict
"
,
name
:
"
Dict
"
,
dicts
:
[
'
sys_normal_disable
'
],
data
()
{
data
()
{
return
{
return
{
// 遮罩层
// 遮罩层
...
@@ -219,8 +220,6 @@ export default {
...
@@ -219,8 +220,6 @@ export default {
title
:
""
,
title
:
""
,
// 是否显示弹出层
// 是否显示弹出层
open
:
false
,
open
:
false
,
// 状态数据字典
statusOptions
:
[],
// 日期范围
// 日期范围
dateRange
:
[],
dateRange
:
[],
// 查询参数
// 查询参数
...
@@ -246,9 +245,6 @@ export default {
...
@@ -246,9 +245,6 @@ export default {
},
},
created
()
{
created
()
{
this
.
getList
();
this
.
getList
();
this
.
getDicts
(
"
sys_normal_disable
"
).
then
(
response
=>
{
this
.
statusOptions
=
response
.
data
;
});
},
},
methods
:
{
methods
:
{
/** 查询字典类型列表 */
/** 查询字典类型列表 */
...
...
ruoyi-ui/src/views/system/menu/index.vue
View file @
12ab8b03
...
@@ -13,10 +13,10 @@
...
@@ -13,10 +13,10 @@
<el-form-item
label=
"状态"
prop=
"status"
>
<el-form-item
label=
"状态"
prop=
"status"
>
<el-select
v-model=
"queryParams.status"
placeholder=
"菜单状态"
clearable
size=
"small"
>
<el-select
v-model=
"queryParams.status"
placeholder=
"菜单状态"
clearable
size=
"small"
>
<el-option
<el-option
v-for=
"dict in
statusOptions
"
v-for=
"dict in
dict.type.sys_normal_disable
"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictL
abel"
:label=
"dict.
l
abel"
:value=
"dict.
dictV
alue"
:value=
"dict.
v
alue"
/>
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
...
@@ -68,7 +68,7 @@
...
@@ -68,7 +68,7 @@
<el-table-column
prop=
"component"
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=
"status"
label=
"状态"
width=
"80"
>
<el-table-column
prop=
"status"
label=
"状态"
width=
"80"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<dict-tag
:options=
"
statusOptions
"
:value=
"scope.row.status"
/>
<dict-tag
:options=
"
dict.type.sys_normal_disable
"
:value=
"scope.row.status"
/>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"创建时间"
align=
"center"
prop=
"createTime"
>
<el-table-column
label=
"创建时间"
align=
"center"
prop=
"createTime"
>
...
@@ -240,10 +240,10 @@
...
@@ -240,10 +240,10 @@
</span>
</span>
<el-radio-group
v-model=
"form.visible"
>
<el-radio-group
v-model=
"form.visible"
>
<el-radio
<el-radio
v-for=
"dict in
visibleOptions
"
v-for=
"dict in
dict.type.sys_show_hide
"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictV
alue"
:label=
"dict.
v
alue"
>
{{dict.
dictL
abel}}
</el-radio>
>
{{dict.
l
abel}}
</el-radio>
</el-radio-group>
</el-radio-group>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
...
@@ -257,10 +257,10 @@
...
@@ -257,10 +257,10 @@
</span>
</span>
<el-radio-group
v-model=
"form.status"
>
<el-radio-group
v-model=
"form.status"
>
<el-radio
<el-radio
v-for=
"dict in
statusOptions
"
v-for=
"dict in
dict.type.sys_normal_disable
"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictV
alue"
:label=
"dict.
v
alue"
>
{{dict.
dictL
abel}}
</el-radio>
>
{{dict.
l
abel}}
</el-radio>
</el-radio-group>
</el-radio-group>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
...
@@ -282,6 +282,7 @@ import IconSelect from "@/components/IconSelect";
...
@@ -282,6 +282,7 @@ import IconSelect from "@/components/IconSelect";
export
default
{
export
default
{
name
:
"
Menu
"
,
name
:
"
Menu
"
,
dicts
:
[
'
sys_show_hide
'
,
'
sys_normal_disable
'
],
components
:
{
Treeselect
,
IconSelect
},
components
:
{
Treeselect
,
IconSelect
},
data
()
{
data
()
{
return
{
return
{
...
@@ -301,10 +302,6 @@ export default {
...
@@ -301,10 +302,6 @@ export default {
isExpandAll
:
false
,
isExpandAll
:
false
,
// 重新渲染表格状态
// 重新渲染表格状态
refreshTable
:
true
,
refreshTable
:
true
,
// 显示状态数据字典
visibleOptions
:
[],
// 菜单状态数据字典
statusOptions
:
[],
// 查询参数
// 查询参数
queryParams
:
{
queryParams
:
{
menuName
:
undefined
,
menuName
:
undefined
,
...
@@ -328,12 +325,6 @@ export default {
...
@@ -328,12 +325,6 @@ export default {
},
},
created
()
{
created
()
{
this
.
getList
();
this
.
getList
();
this
.
getDicts
(
"
sys_show_hide
"
).
then
(
response
=>
{
this
.
visibleOptions
=
response
.
data
;
});
this
.
getDicts
(
"
sys_normal_disable
"
).
then
(
response
=>
{
this
.
statusOptions
=
response
.
data
;
});
},
},
methods
:
{
methods
:
{
// 选择图标
// 选择图标
...
...
ruoyi-ui/src/views/system/notice/index.vue
View file @
12ab8b03
...
@@ -22,10 +22,10 @@
...
@@ -22,10 +22,10 @@
<el-form-item
label=
"类型"
prop=
"noticeType"
>
<el-form-item
label=
"类型"
prop=
"noticeType"
>
<el-select
v-model=
"queryParams.noticeType"
placeholder=
"公告类型"
clearable
size=
"small"
>
<el-select
v-model=
"queryParams.noticeType"
placeholder=
"公告类型"
clearable
size=
"small"
>
<el-option
<el-option
v-for=
"dict in
typeOptions
"
v-for=
"dict in
dict.type.sys_notice_type
"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictL
abel"
:label=
"dict.
l
abel"
:value=
"dict.
dictV
alue"
:value=
"dict.
v
alue"
/>
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
...
@@ -82,12 +82,12 @@
...
@@ -82,12 +82,12 @@
/>
/>
<el-table-column
label=
"公告类型"
align=
"center"
prop=
"noticeType"
width=
"100"
>
<el-table-column
label=
"公告类型"
align=
"center"
prop=
"noticeType"
width=
"100"
>
<template
slot-scope=
"scope"
>
<template
slot-scope=
"scope"
>
<dict-tag
:options=
"
typeOptions
"
:value=
"scope.row.noticeType"
/>
<dict-tag
:options=
"
dict.type.sys_notice_type
"
:value=
"scope.row.noticeType"
/>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"状态"
align=
"center"
prop=
"status"
width=
"100"
>
<el-table-column
label=
"状态"
align=
"center"
prop=
"status"
width=
"100"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<dict-tag
:options=
"
statusOption
s"
:value=
"scope.row.status"
/>
<dict-tag
:options=
"
dict.type.sys_notice_statu
s"
:value=
"scope.row.status"
/>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"创建者"
align=
"center"
prop=
"createBy"
width=
"100"
/>
<el-table-column
label=
"创建者"
align=
"center"
prop=
"createBy"
width=
"100"
/>
...
@@ -137,10 +137,10 @@
...
@@ -137,10 +137,10 @@
<
el
-
form
-
item
label
=
"
公告类型
"
prop
=
"
noticeType
"
>
<
el
-
form
-
item
label
=
"
公告类型
"
prop
=
"
noticeType
"
>
<
el
-
select
v
-
model
=
"
form.noticeType
"
placeholder
=
"
请选择
"
>
<
el
-
select
v
-
model
=
"
form.noticeType
"
placeholder
=
"
请选择
"
>
<
el
-
option
<
el
-
option
v
-
for
=
"
dict in
typeOptions
"
v
-
for
=
"
dict in
dict.type.sys_notice_type
"
:
key
=
"
dict.
dictV
alue
"
:
key
=
"
dict.
v
alue
"
:
label
=
"
dict.
dictL
abel
"
:
label
=
"
dict.
l
abel
"
:
value
=
"
dict.
dictV
alue
"
:
value
=
"
dict.
v
alue
"
><
/el-option
>
><
/el-option
>
<
/el-select
>
<
/el-select
>
<
/el-form-item
>
<
/el-form-item
>
...
@@ -149,10 +149,10 @@
...
@@ -149,10 +149,10 @@
<
el
-
form
-
item
label
=
"
状态
"
>
<
el
-
form
-
item
label
=
"
状态
"
>
<
el
-
radio
-
group
v
-
model
=
"
form.status
"
>
<
el
-
radio
-
group
v
-
model
=
"
form.status
"
>
<
el
-
radio
<
el
-
radio
v
-
for
=
"
dict in
statusOption
s
"
v
-
for
=
"
dict in
dict.type.sys_notice_statu
s
"
:
key
=
"
dict.
dictV
alue
"
:
key
=
"
dict.
v
alue
"
:
label
=
"
dict.
dictV
alue
"
:
label
=
"
dict.
v
alue
"
>
{{
dict
.
dictL
abel
}}
<
/el-radio
>
>
{{
dict
.
l
abel
}}
<
/el-radio
>
<
/el-radio-group
>
<
/el-radio-group
>
<
/el-form-item
>
<
/el-form-item
>
<
/el-col
>
<
/el-col
>
...
@@ -176,6 +176,7 @@ import { listNotice, getNotice, delNotice, addNotice, updateNotice } from "@/api
...
@@ -176,6 +176,7 @@ import { listNotice, getNotice, delNotice, addNotice, updateNotice } from "@/api
export
default
{
export
default
{
name
:
"
Notice
"
,
name
:
"
Notice
"
,
dicts
:
[
'
sys_notice_status
'
,
'
sys_notice_type
'
],
data
()
{
data
()
{
return
{
return
{
// 遮罩层
// 遮罩层
...
@@ -196,10 +197,6 @@ export default {
...
@@ -196,10 +197,6 @@ export default {
title
:
""
,
title
:
""
,
// 是否显示弹出层
// 是否显示弹出层
open
:
false
,
open
:
false
,
// 类型数据字典
statusOptions
:
[],
// 状态数据字典
typeOptions
:
[],
// 查询参数
// 查询参数
queryParams
:
{
queryParams
:
{
pageNum
:
1
,
pageNum
:
1
,
...
@@ -223,12 +220,6 @@ export default {
...
@@ -223,12 +220,6 @@ export default {
}
,
}
,
created
()
{
created
()
{
this
.
getList
();
this
.
getList
();
this
.
getDicts
(
"
sys_notice_status
"
).
then
(
response
=>
{
this
.
statusOptions
=
response
.
data
;
}
);
this
.
getDicts
(
"
sys_notice_type
"
).
then
(
response
=>
{
this
.
typeOptions
=
response
.
data
;
}
);
}
,
}
,
methods
:
{
methods
:
{
/** 查询公告列表 */
/** 查询公告列表 */
...
...
ruoyi-ui/src/views/system/post/index.vue
View file @
12ab8b03
...
@@ -22,10 +22,10 @@
...
@@ -22,10 +22,10 @@
<el-form-item
label=
"状态"
prop=
"status"
>
<el-form-item
label=
"状态"
prop=
"status"
>
<el-select
v-model=
"queryParams.status"
placeholder=
"岗位状态"
clearable
size=
"small"
>
<el-select
v-model=
"queryParams.status"
placeholder=
"岗位状态"
clearable
size=
"small"
>
<el-option
<el-option
v-for=
"dict in
statusOptions
"
v-for=
"dict in
dict.type.sys_normal_disable
"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictL
abel"
:label=
"dict.
l
abel"
:value=
"dict.
dictV
alue"
:value=
"dict.
v
alue"
/>
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
...
@@ -90,7 +90,7 @@
...
@@ -90,7 +90,7 @@
<el-table-column
label=
"岗位排序"
align=
"center"
prop=
"postSort"
/>
<el-table-column
label=
"岗位排序"
align=
"center"
prop=
"postSort"
/>
<el-table-column
label=
"状态"
align=
"center"
prop=
"status"
>
<el-table-column
label=
"状态"
align=
"center"
prop=
"status"
>
<template
slot-scope=
"scope"
>
<template
slot-scope=
"scope"
>
<dict-tag
:options=
"
statusOptions
"
:value=
"scope.row.status"
/>
<dict-tag
:options=
"
dict.type.sys_normal_disable
"
:value=
"scope.row.status"
/>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"创建时间"
align=
"center"
prop=
"createTime"
width=
"180"
>
<el-table-column
label=
"创建时间"
align=
"center"
prop=
"createTime"
width=
"180"
>
...
@@ -141,10 +141,10 @@
...
@@ -141,10 +141,10 @@
<el-form-item
label=
"岗位状态"
prop=
"status"
>
<el-form-item
label=
"岗位状态"
prop=
"status"
>
<el-radio-group
v-model=
"form.status"
>
<el-radio-group
v-model=
"form.status"
>
<el-radio
<el-radio
v-for=
"dict in
statusOptions
"
v-for=
"dict in
dict.type.sys_normal_disable
"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictV
alue"
:label=
"dict.
v
alue"
>
{{dict.
dictL
abel}}
</el-radio>
>
{{dict.
l
abel}}
</el-radio>
</el-radio-group>
</el-radio-group>
</el-form-item>
</el-form-item>
<el-form-item
label=
"备注"
prop=
"remark"
>
<el-form-item
label=
"备注"
prop=
"remark"
>
...
@@ -164,6 +164,7 @@ import { listPost, getPost, delPost, addPost, updatePost, exportPost } from "@/a
...
@@ -164,6 +164,7 @@ import { listPost, getPost, delPost, addPost, updatePost, exportPost } from "@/a
export
default
{
export
default
{
name
:
"
Post
"
,
name
:
"
Post
"
,
dicts
:
[
'
sys_normal_disable
'
],
data
()
{
data
()
{
return
{
return
{
// 遮罩层
// 遮罩层
...
@@ -186,8 +187,6 @@ export default {
...
@@ -186,8 +187,6 @@ export default {
title
:
""
,
title
:
""
,
// 是否显示弹出层
// 是否显示弹出层
open
:
false
,
open
:
false
,
// 状态数据字典
statusOptions
:
[],
// 查询参数
// 查询参数
queryParams
:
{
queryParams
:
{
pageNum
:
1
,
pageNum
:
1
,
...
@@ -214,9 +213,6 @@ export default {
...
@@ -214,9 +213,6 @@ export default {
},
},
created
()
{
created
()
{
this
.
getList
();
this
.
getList
();
this
.
getDicts
(
"
sys_normal_disable
"
).
then
(
response
=>
{
this
.
statusOptions
=
response
.
data
;
});
},
},
methods
:
{
methods
:
{
/** 查询岗位列表 */
/** 查询岗位列表 */
...
...
ruoyi-ui/src/views/system/role/authUser.vue
View file @
12ab8b03
...
@@ -69,7 +69,7 @@
...
@@ -69,7 +69,7 @@
<el-table-column
label=
"手机"
prop=
"phonenumber"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"手机"
prop=
"phonenumber"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"状态"
align=
"center"
prop=
"status"
>
<el-table-column
label=
"状态"
align=
"center"
prop=
"status"
>
<template
slot-scope=
"scope"
>
<template
slot-scope=
"scope"
>
<dict-tag
:options=
"
statusOptions
"
:value=
"scope.row.status"
/>
<dict-tag
:options=
"
dict.type.sys_normal_disable
"
:value=
"scope.row.status"
/>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"创建时间"
align=
"center"
prop=
"createTime"
width=
"180"
>
<el-table-column
label=
"创建时间"
align=
"center"
prop=
"createTime"
width=
"180"
>
...
@@ -107,6 +107,7 @@ import selectUser from "./selectUser";
...
@@ -107,6 +107,7 @@ import selectUser from "./selectUser";
export
default
{
export
default
{
name
:
"
AuthUser
"
,
name
:
"
AuthUser
"
,
dicts
:
[
'
sys_normal_disable
'
],
components
:
{
selectUser
},
components
:
{
selectUser
},
data
()
{
data
()
{
return
{
return
{
...
@@ -122,8 +123,6 @@ export default {
...
@@ -122,8 +123,6 @@ export default {
total
:
0
,
total
:
0
,
// 用户表格数据
// 用户表格数据
userList
:
[],
userList
:
[],
// 状态数据字典
statusOptions
:
[],
// 查询参数
// 查询参数
queryParams
:
{
queryParams
:
{
pageNum
:
1
,
pageNum
:
1
,
...
@@ -139,9 +138,6 @@ export default {
...
@@ -139,9 +138,6 @@ export default {
if
(
roleId
)
{
if
(
roleId
)
{
this
.
queryParams
.
roleId
=
roleId
;
this
.
queryParams
.
roleId
=
roleId
;
this
.
getList
();
this
.
getList
();
this
.
getDicts
(
"
sys_normal_disable
"
).
then
(
response
=>
{
this
.
statusOptions
=
response
.
data
;
});
}
}
},
},
methods
:
{
methods
:
{
...
...
ruoyi-ui/src/views/system/role/index.vue
View file @
12ab8b03
...
@@ -30,10 +30,10 @@
...
@@ -30,10 +30,10 @@
style=
"width: 240px"
style=
"width: 240px"
>
>
<el-option
<el-option
v-for=
"dict in
statusOptions
"
v-for=
"dict in
dict.type.sys_normal_disable
"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictL
abel"
:label=
"dict.
l
abel"
:value=
"dict.
dictV
alue"
:value=
"dict.
v
alue"
/>
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
...
@@ -183,10 +183,10 @@
...
@@ -183,10 +183,10 @@
<el-form-item
label=
"状态"
>
<el-form-item
label=
"状态"
>
<el-radio-group
v-model=
"form.status"
>
<el-radio-group
v-model=
"form.status"
>
<el-radio
<el-radio
v-for=
"dict in
statusOptions
"
v-for=
"dict in
dict.type.sys_normal_disable
"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictV
alue"
:label=
"dict.
v
alue"
>
{{dict.
dictL
abel}}
</el-radio>
>
{{dict.
l
abel}}
</el-radio>
</el-radio-group>
</el-radio-group>
</el-form-item>
</el-form-item>
<el-form-item
label=
"菜单权限"
>
<el-form-item
label=
"菜单权限"
>
...
@@ -265,6 +265,7 @@ import { treeselect as deptTreeselect, roleDeptTreeselect } from "@/api/system/d
...
@@ -265,6 +265,7 @@ import { treeselect as deptTreeselect, roleDeptTreeselect } from "@/api/system/d
export
default
{
export
default
{
name
:
"
Role
"
,
name
:
"
Role
"
,
dicts
:
[
'
sys_normal_disable
'
],
data
()
{
data
()
{
return
{
return
{
// 遮罩层
// 遮罩层
...
@@ -295,8 +296,6 @@ export default {
...
@@ -295,8 +296,6 @@ export default {
deptNodeAll
:
false
,
deptNodeAll
:
false
,
// 日期范围
// 日期范围
dateRange
:
[],
dateRange
:
[],
// 状态数据字典
statusOptions
:
[],
// 数据范围选项
// 数据范围选项
dataScopeOptions
:
[
dataScopeOptions
:
[
{
{
...
@@ -354,9 +353,6 @@ export default {
...
@@ -354,9 +353,6 @@ export default {
},
},
created
()
{
created
()
{
this
.
getList
();
this
.
getList
();
this
.
getDicts
(
"
sys_normal_disable
"
).
then
(
response
=>
{
this
.
statusOptions
=
response
.
data
;
});
},
},
methods
:
{
methods
:
{
/** 查询角色列表 */
/** 查询角色列表 */
...
...
ruoyi-ui/src/views/system/role/selectUser.vue
View file @
12ab8b03
...
@@ -34,7 +34,7 @@
...
@@ -34,7 +34,7 @@
<el-table-column
label=
"手机"
prop=
"phonenumber"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"手机"
prop=
"phonenumber"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"状态"
align=
"center"
prop=
"status"
>
<el-table-column
label=
"状态"
align=
"center"
prop=
"status"
>
<template
slot-scope=
"scope"
>
<template
slot-scope=
"scope"
>
<dict-tag
:options=
"
statusOptions
"
:value=
"scope.row.status"
/>
<dict-tag
:options=
"
dict.type.sys_normal_disable
"
:value=
"scope.row.status"
/>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"创建时间"
align=
"center"
prop=
"createTime"
width=
"180"
>
<el-table-column
label=
"创建时间"
align=
"center"
prop=
"createTime"
width=
"180"
>
...
@@ -61,6 +61,7 @@
...
@@ -61,6 +61,7 @@
<
script
>
<
script
>
import
{
unallocatedUserList
,
authUserSelectAll
}
from
"
@/api/system/role
"
;
import
{
unallocatedUserList
,
authUserSelectAll
}
from
"
@/api/system/role
"
;
export
default
{
export
default
{
dicts
:
[
'
sys_normal_disable
'
],
props
:
{
props
:
{
// 角色编号
// 角色编号
roleId
:
{
roleId
:
{
...
@@ -77,8 +78,6 @@ export default {
...
@@ -77,8 +78,6 @@ export default {
total
:
0
,
total
:
0
,
// 未授权用户数据
// 未授权用户数据
userList
:
[],
userList
:
[],
// 状态数据字典
statusOptions
:
[],
// 查询参数
// 查询参数
queryParams
:
{
queryParams
:
{
pageNum
:
1
,
pageNum
:
1
,
...
@@ -89,11 +88,6 @@ export default {
...
@@ -89,11 +88,6 @@ export default {
}
}
};
};
},
},
created
()
{
this
.
getDicts
(
"
sys_normal_disable
"
).
then
(
response
=>
{
this
.
statusOptions
=
response
.
data
;
});
},
methods
:
{
methods
:
{
// 显示弹框
// 显示弹框
show
()
{
show
()
{
...
...
ruoyi-ui/src/views/system/user/index.vue
View file @
12ab8b03
...
@@ -57,10 +57,10 @@
...
@@ -57,10 +57,10 @@
style=
"width: 240px"
style=
"width: 240px"
>
>
<el-option
<el-option
v-for=
"dict in
statusOptions
"
v-for=
"dict in
dict.type.sys_normal_disable
"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictL
abel"
:label=
"dict.
l
abel"
:value=
"dict.
dictV
alue"
:value=
"dict.
v
alue"
/>
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
...
@@ -251,10 +251,10 @@
...
@@ -251,10 +251,10 @@
<el-form-item
label=
"用户性别"
>
<el-form-item
label=
"用户性别"
>
<el-select
v-model=
"form.sex"
placeholder=
"请选择"
>
<el-select
v-model=
"form.sex"
placeholder=
"请选择"
>
<el-option
<el-option
v-for=
"dict in
sexOptions
"
v-for=
"dict in
dict.type.sys_user_sex
"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictL
abel"
:label=
"dict.
l
abel"
:value=
"dict.
dictV
alue"
:value=
"dict.
v
alue"
></el-option>
></el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
...
@@ -263,10 +263,10 @@
...
@@ -263,10 +263,10 @@
<el-form-item
label=
"状态"
>
<el-form-item
label=
"状态"
>
<el-radio-group
v-model=
"form.status"
>
<el-radio-group
v-model=
"form.status"
>
<el-radio
<el-radio
v-for=
"dict in
statusOptions
"
v-for=
"dict in
dict.type.sys_normal_disable
"
:key=
"dict.
dictV
alue"
:key=
"dict.
v
alue"
:label=
"dict.
dictV
alue"
:label=
"dict.
v
alue"
>
{{dict.
dictL
abel}}
</el-radio>
>
{{dict.
l
abel}}
</el-radio>
</el-radio-group>
</el-radio-group>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
...
@@ -354,6 +354,7 @@ import "@riophae/vue-treeselect/dist/vue-treeselect.css";
...
@@ -354,6 +354,7 @@ import "@riophae/vue-treeselect/dist/vue-treeselect.css";
export
default
{
export
default
{
name
:
"
User
"
,
name
:
"
User
"
,
dicts
:
[
'
sys_normal_disable
'
,
'
sys_user_sex
'
],
components
:
{
Treeselect
},
components
:
{
Treeselect
},
data
()
{
data
()
{
return
{
return
{
...
@@ -385,10 +386,6 @@ export default {
...
@@ -385,10 +386,6 @@ export default {
initPassword
:
undefined
,
initPassword
:
undefined
,
// 日期范围
// 日期范围
dateRange
:
[],
dateRange
:
[],
// 状态数据字典
statusOptions
:
[],
// 性别状态字典
sexOptions
:
[],
// 岗位选项
// 岗位选项
postOptions
:
[],
postOptions
:
[],
// 角色选项
// 角色选项
...
@@ -472,12 +469,6 @@ export default {
...
@@ -472,12 +469,6 @@ export default {
created
()
{
created
()
{
this
.
getList
();
this
.
getList
();
this
.
getTreeselect
();
this
.
getTreeselect
();
this
.
getDicts
(
"
sys_normal_disable
"
).
then
(
response
=>
{
this
.
statusOptions
=
response
.
data
;
});
this
.
getDicts
(
"
sys_user_sex
"
).
then
(
response
=>
{
this
.
sexOptions
=
response
.
data
;
});
this
.
getConfigKey
(
"
sys.user.initPassword
"
).
then
(
response
=>
{
this
.
getConfigKey
(
"
sys.user.initPassword
"
).
then
(
response
=>
{
this
.
initPassword
=
response
.
msg
;
this
.
initPassword
=
response
.
msg
;
});
});
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment