Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
S
sts网站
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
liyang
sts网站
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
Hide whitespace changes
Inline
Side-by-side
Showing
28 changed files
with
503 additions
and
325 deletions
+503
-325
VelocityUtils.java
...src/main/java/com/ruoyi/generator/util/VelocityUtils.java
+22
-0
index-tree.vue.vm
ruoyi-generator/src/main/resources/vm/vue/index-tree.vue.vm
+21
-34
index.vue.vm
ruoyi-generator/src/main/resources/vm/vue/index.vue.vm
+21
-34
index.js
ruoyi-ui/src/components/DictData/index.js
+21
-0
index.vue
ruoyi-ui/src/components/DictTag/index.vue
+10
-10
main.js
ruoyi-ui/src/main.js
+3
-0
Dict.js
ruoyi-ui/src/utils/dict/Dict.js
+82
-0
DictConverter.js
ruoyi-ui/src/utils/dict/DictConverter.js
+17
-0
DictData.js
ruoyi-ui/src/utils/dict/DictData.js
+13
-0
DictMeta.js
ruoyi-ui/src/utils/dict/DictMeta.js
+38
-0
DictOptions.js
ruoyi-ui/src/utils/dict/DictOptions.js
+51
-0
index.js
ruoyi-ui/src/utils/dict/index.js
+33
-0
ruoyi.js
ruoyi-ui/src/utils/ruoyi.js
+18
-2
index.vue
ruoyi-ui/src/views/monitor/job/index.vue
+19
-28
log.vue
ruoyi-ui/src/views/monitor/job/log.vue
+11
-20
index.vue
ruoyi-ui/src/views/monitor/logininfor/index.vue
+6
-10
index.vue
ruoyi-ui/src/views/monitor/operlog/index.vue
+12
-21
index.vue
ruoyi-ui/src/views/system/config/index.vue
+10
-14
index.vue
ruoyi-ui/src/views/system/dept/index.vue
+10
-14
data.vue
ruoyi-ui/src/views/system/dict/data.vue
+10
-14
index.vue
ruoyi-ui/src/views/system/dict/index.vue
+10
-14
index.vue
ruoyi-ui/src/views/system/menu/index.vue
+14
-23
index.vue
ruoyi-ui/src/views/system/notice/index.vue
+15
-24
index.vue
ruoyi-ui/src/views/system/post/index.vue
+10
-14
authUser.vue
ruoyi-ui/src/views/system/role/authUser.vue
+2
-6
index.vue
ruoyi-ui/src/views/system/role/index.vue
+9
-13
selectUser.vue
ruoyi-ui/src/views/system/role/selectUser.vue
+2
-8
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