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
5b04f388
Commit
5b04f388
authored
Aug 09, 2020
by
平凡
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
重写表格工具栏右侧添加刷新&显隐查询栏
parent
a7eb07c7
Hide whitespace changes
Inline
Side-by-side
Showing
20 changed files
with
166 additions
and
354 deletions
+166
-354
index-tree.vue.vm
ruoyi-generator/src/main/resources/vm/vue/index-tree.vue.vm
+1
-8
index.vue.vm
ruoyi-generator/src/main/resources/vm/vue/index.vue.vm
+1
-8
ruoyi.scss
ruoyi-ui/src/assets/styles/ruoyi.scss
+1
-0
index.vue
ruoyi-ui/src/components/TableToolsExt/index.vue
+38
-0
main.js
ruoyi-ui/src/main.js
+3
-0
index.vue
ruoyi-ui/src/views/monitor/job/index.vue
+1
-8
log.vue
ruoyi-ui/src/views/monitor/job/log.vue
+1
-8
index.vue
ruoyi-ui/src/views/monitor/logininfor/index.vue
+1
-8
index.vue
ruoyi-ui/src/views/monitor/online/index.vue
+2
-2
index.vue
ruoyi-ui/src/views/monitor/operlog/index.vue
+1
-8
index.vue
ruoyi-ui/src/views/system/config/index.vue
+1
-8
index.vue
ruoyi-ui/src/views/system/dept/index.vue
+1
-8
data.vue
ruoyi-ui/src/views/system/dict/data.vue
+2
-9
index.vue
ruoyi-ui/src/views/system/dict/index.vue
+1
-8
index.vue
ruoyi-ui/src/views/system/menu/index.vue
+1
-8
index.vue
ruoyi-ui/src/views/system/notice/index.vue
+1
-8
index.vue
ruoyi-ui/src/views/system/post/index.vue
+1
-8
index.vue
ruoyi-ui/src/views/system/role/index.vue
+1
-8
index.vue
ruoyi-ui/src/views/system/user/index.vue
+106
-231
index.vue
ruoyi-ui/src/views/tool/gen/index.vue
+1
-8
No files found.
ruoyi-generator/src/main/resources/vm/vue/index-tree.vue.vm
View file @
5b04f388
...
...
@@ -66,14 +66,7 @@
v-hasPermi="['${moduleName}:${businessName}:add']"
>新增</el-button>
</el-col>
<div class="top-right-btn">
<el-tooltip class="item" effect="dark" content="刷新" placement="top">
<el-button size="mini" circle icon="el-icon-refresh" @click="handleQuery" />
</el-tooltip>
<el-tooltip class="item" effect="dark" :content="showSearch ? '隐藏搜索' : '显示搜索'" placement="top">
<el-button size="mini" circle icon="el-icon-search" @click="showSearch=!showSearch" />
</el-tooltip>
</div>
<table-tools-ext :showSearch.sync="showSearch" @queryTable="getList"></table-tools-ext>
</el-row>
<el-table
...
...
ruoyi-generator/src/main/resources/vm/vue/index.vue.vm
View file @
5b04f388
...
...
@@ -95,14 +95,7 @@
v-hasPermi="['${moduleName}:${businessName}:export']"
>导出</el-button>
</el-col>
<div class="top-right-btn">
<el-tooltip class="item" effect="dark" content="刷新" placement="top">
<el-button size="mini" circle icon="el-icon-refresh" @click="handleQuery" />
</el-tooltip>
<el-tooltip class="item" effect="dark" :content="showSearch ? '隐藏搜索' : '显示搜索'" placement="top">
<el-button size="mini" circle icon="el-icon-search" @click="showSearch=!showSearch" />
</el-tooltip>
</div>
<table-tools-ext :showSearch.sync="showSearch" @queryTable="getList"></table-tools-ext>
</el-row>
<el-table v-loading="loading" :data="${businessName}List" @selection-change="handleSelectionChange">
...
...
ruoyi-ui/src/assets/styles/ruoyi.scss
View file @
5b04f388
...
...
@@ -222,5 +222,6 @@
}
.top-right-btn
{
position
:
relative
;
float
:
right
;
}
\ No newline at end of file
ruoyi-ui/src/components/TableToolsExt/index.vue
0 → 100644
View file @
5b04f388
<!-- @author Shiyn/ huangmx 20200807优化-->
<
template
>
<div
class=
"top-right-btn"
>
<el-row>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"showSearch ? '隐藏搜索' : '显示搜索'"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-search"
@
click=
"clickSearch()"
/>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"刷新"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-refresh"
@
click=
"clickFresh()"
/>
</el-tooltip>
</el-row>
</div>
</
template
>
<
script
>
export
default
{
name
:
"TableToolsExt"
,
data
()
{
return
{};
},
props
:
{
showSearch
:
{
type
:
Boolean
,
default
:
true
,
},
},
methods
:
{
//搜索
clickSearch
()
{
this
.
$emit
(
"update:showSearch"
,
!
this
.
showSearch
);
},
//刷新
clickFresh
()
{
this
.
$emit
(
"queryTable"
);
},
},
};
</
script
>
\ No newline at end of file
ruoyi-ui/src/main.js
View file @
5b04f388
...
...
@@ -20,6 +20,8 @@ import { getDicts } from "@/api/system/dict/data";
import
{
getConfigKey
}
from
"@/api/system/config"
;
import
{
parseTime
,
resetForm
,
addDateRange
,
selectDictLabel
,
selectDictLabels
,
download
,
handleTree
}
from
"@/utils/ruoyi"
;
import
Pagination
from
"@/components/Pagination"
;
//自定义表格工具扩展
import
TableToolsExt
from
"@/components/TableToolsExt"
// 全局方法挂载
Vue
.
prototype
.
getDicts
=
getDicts
...
...
@@ -46,6 +48,7 @@ Vue.prototype.msgInfo = function (msg) {
// 全局组件挂载
Vue
.
component
(
'Pagination'
,
Pagination
)
Vue
.
component
(
'TableToolsExt'
,
TableToolsExt
)
Vue
.
use
(
permission
)
...
...
ruoyi-ui/src/views/monitor/job/index.vue
View file @
5b04f388
...
...
@@ -84,14 +84,7 @@
v-hasPermi=
"['monitor:job:query']"
>
日志
</el-button>
</el-col>
<div
class=
"top-right-btn"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"刷新"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-refresh"
@
click=
"handleQuery"
/>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"showSearch ? '隐藏搜索' : '显示搜索'"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-search"
@
click=
"showSearch=!showSearch"
/>
</el-tooltip>
</div>
<table-tools-ext
:showSearch
.
sync=
"showSearch"
@
queryTable=
"getList"
></table-tools-ext>
</el-row>
<el-table
v-loading=
"loading"
:data=
"jobList"
@
selection-change=
"handleSelectionChange"
>
...
...
ruoyi-ui/src/views/monitor/job/log.vue
View file @
5b04f388
...
...
@@ -90,14 +90,7 @@
v-hasPermi=
"['monitor:job:export']"
>
导出
</el-button>
</el-col>
<div
class=
"top-right-btn"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"刷新"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-refresh"
@
click=
"handleQuery"
/>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"showSearch ? '隐藏搜索' : '显示搜索'"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-search"
@
click=
"showSearch=!showSearch"
/>
</el-tooltip>
</div>
<table-tools-ext
:showSearch
.
sync=
"showSearch"
@
queryTable=
"getList"
></table-tools-ext>
</el-row>
<el-table
v-loading=
"loading"
:data=
"jobLogList"
@
selection-change=
"handleSelectionChange"
>
...
...
ruoyi-ui/src/views/monitor/logininfor/index.vue
View file @
5b04f388
...
...
@@ -84,14 +84,7 @@
v-hasPermi=
"['system:logininfor:export']"
>
导出
</el-button>
</el-col>
<div
class=
"top-right-btn"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"刷新"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-refresh"
@
click=
"handleQuery"
/>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"showSearch ? '隐藏搜索' : '显示搜索'"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-search"
@
click=
"showSearch=!showSearch"
/>
</el-tooltip>
</div>
<table-tools-ext
:showSearch
.
sync=
"showSearch"
@
queryTable=
"getList"
></table-tools-ext>
</el-row>
<el-table
v-loading=
"loading"
:data=
"list"
@
selection-change=
"handleSelectionChange"
>
...
...
ruoyi-ui/src/views/monitor/online/index.vue
View file @
5b04f388
<
template
>
<div
class=
"app-container"
>
<el-form
:model=
"queryParams"
ref=
"queryForm"
:inline=
"true"
>
<el-form
:model=
"queryParams"
ref=
"queryForm"
:inline=
"true"
label-width=
"68px"
>
<el-form-item
label=
"登录地址"
prop=
"ipaddr"
>
<el-input
v-model=
"queryParams.ipaddr"
...
...
@@ -23,8 +23,8 @@
<el-button
type=
"cyan"
icon=
"el-icon-search"
size=
"mini"
@
click=
"handleQuery"
>
搜索
</el-button>
<el-button
icon=
"el-icon-refresh"
size=
"mini"
@
click=
"resetQuery"
>
重置
</el-button>
</el-form-item>
</el-form>
</el-form>
<el-table
v-loading=
"loading"
:data=
"list.slice((pageNum-1)*pageSize,pageNum*pageSize)"
...
...
ruoyi-ui/src/views/monitor/operlog/index.vue
View file @
5b04f388
...
...
@@ -100,14 +100,7 @@
v-hasPermi=
"['system:config:export']"
>
导出
</el-button>
</el-col>
<div
class=
"top-right-btn"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"刷新"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-refresh"
@
click=
"handleQuery"
/>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"showSearch ? '隐藏搜索' : '显示搜索'"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-search"
@
click=
"showSearch=!showSearch"
/>
</el-tooltip>
</div>
<table-tools-ext
:showSearch
.
sync=
"showSearch"
@
queryTable=
"getList"
></table-tools-ext>
</el-row>
<el-table
v-loading=
"loading"
:data=
"list"
@
selection-change=
"handleSelectionChange"
>
...
...
ruoyi-ui/src/views/system/config/index.vue
View file @
5b04f388
...
...
@@ -97,14 +97,7 @@
v-hasPermi=
"['system:config:remove']"
>
清理缓存
</el-button>
</el-col>
<div
class=
"top-right-btn"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"刷新"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-refresh"
@
click=
"handleQuery"
/>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"showSearch ? '隐藏搜索' : '显示搜索'"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-search"
@
click=
"showSearch=!showSearch"
/>
</el-tooltip>
</div>
<table-tools-ext
:showSearch
.
sync=
"showSearch"
@
queryTable=
"getList"
></table-tools-ext>
</el-row>
<el-table
v-loading=
"loading"
:data=
"configList"
@
selection-change=
"handleSelectionChange"
>
...
...
ruoyi-ui/src/views/system/dept/index.vue
View file @
5b04f388
...
...
@@ -36,14 +36,7 @@
v-hasPermi=
"['system:dept:add']"
>
新增
</el-button>
</el-col>
<div
class=
"top-right-btn"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"刷新"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-refresh"
@
click=
"handleQuery"
/>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"showSearch ? '隐藏搜索' : '显示搜索'"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-search"
@
click=
"showSearch=!showSearch"
/>
</el-tooltip>
</div>
<table-tools-ext
:showSearch
.
sync=
"showSearch"
@
queryTable=
"getList"
></table-tools-ext>
</el-row>
<el-table
...
...
ruoyi-ui/src/views/system/dict/data.vue
View file @
5b04f388
<
template
>
<div
class=
"app-container"
>
<el-form
:model=
"queryParams"
ref=
"queryForm"
v-show=
"showSearch"
:inline=
"true
"
>
<el-form
:model=
"queryParams"
ref=
"queryForm"
:inline=
"true"
v-show=
"showSearch"
label-width=
"68px
"
>
<el-form-item
label=
"字典名称"
prop=
"dictType"
>
<el-select
v-model=
"queryParams.dictType"
size=
"small"
>
<el-option
...
...
@@ -75,14 +75,7 @@
v-hasPermi=
"['system:dict:export']"
>
导出
</el-button>
</el-col>
<div
class=
"top-right-btn"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"刷新"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-refresh"
@
click=
"handleQuery"
/>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"showSearch ? '隐藏搜索' : '显示搜索'"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-search"
@
click=
"showSearch=!showSearch"
/>
</el-tooltip>
</div>
<table-tools-ext
:showSearch
.
sync=
"showSearch"
@
queryTable=
"getList"
></table-tools-ext>
</el-row>
<el-table
v-loading=
"loading"
:data=
"dataList"
@
selection-change=
"handleSelectionChange"
>
...
...
ruoyi-ui/src/views/system/dict/index.vue
View file @
5b04f388
...
...
@@ -103,14 +103,7 @@
v-hasPermi=
"['system:dict:remove']"
>
清理缓存
</el-button>
</el-col>
<div
class=
"top-right-btn"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"刷新"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-refresh"
@
click=
"handleQuery"
/>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"showSearch ? '隐藏搜索' : '显示搜索'"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-search"
@
click=
"showSearch=!showSearch"
/>
</el-tooltip>
</div>
<table-tools-ext
:showSearch
.
sync=
"showSearch"
@
queryTable=
"getList"
></table-tools-ext>
</el-row>
<el-table
v-loading=
"loading"
:data=
"typeList"
@
selection-change=
"handleSelectionChange"
>
...
...
ruoyi-ui/src/views/system/menu/index.vue
View file @
5b04f388
...
...
@@ -36,14 +36,7 @@
v-hasPermi=
"['system:menu:add']"
>
新增
</el-button>
</el-col>
<div
class=
"top-right-btn"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"刷新"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-refresh"
@
click=
"handleQuery"
/>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"showSearch ? '隐藏搜索' : '显示搜索'"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-search"
@
click=
"showSearch=!showSearch"
/>
</el-tooltip>
</div>
<table-tools-ext
:showSearch
.
sync=
"showSearch"
@
queryTable=
"getList"
></table-tools-ext>
</el-row>
<el-table
...
...
ruoyi-ui/src/views/system/notice/index.vue
View file @
5b04f388
...
...
@@ -65,14 +65,7 @@
v-hasPermi=
"['system:notice:remove']"
>
删除
</el-button>
</el-col>
<div
class=
"top-right-btn"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"刷新"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-refresh"
@
click=
"handleQuery"
/>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"showSearch ? '隐藏搜索' : '显示搜索'"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-search"
@
click=
"showSearch=!showSearch"
/>
</el-tooltip>
</div>
<table-tools-ext
:showSearch
.
sync=
"showSearch"
@
queryTable=
"getList"
></table-tools-ext>
</el-row>
<el-table
v-loading=
"loading"
:data=
"noticeList"
@
selection-change=
"handleSelectionChange"
>
...
...
ruoyi-ui/src/views/system/post/index.vue
View file @
5b04f388
...
...
@@ -74,14 +74,7 @@
v-hasPermi=
"['system:post:export']"
>
导出
</el-button>
</el-col>
<div
class=
"top-right-btn"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"刷新"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-refresh"
@
click=
"handleQuery"
/>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"showSearch ? '隐藏搜索' : '显示搜索'"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-search"
@
click=
"showSearch=!showSearch"
/>
</el-tooltip>
</div>
<table-tools-ext
:showSearch
.
sync=
"showSearch"
@
queryTable=
"getList"
></table-tools-ext>
</el-row>
<el-table
v-loading=
"loading"
:data=
"postList"
@
selection-change=
"handleSelectionChange"
>
...
...
ruoyi-ui/src/views/system/role/index.vue
View file @
5b04f388
...
...
@@ -94,14 +94,7 @@
v-hasPermi=
"['system:role:export']"
>
导出
</el-button>
</el-col>
<div
class=
"top-right-btn"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"刷新"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-refresh"
@
click=
"handleQuery"
/>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"showSearch ? '隐藏搜索' : '显示搜索'"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-search"
@
click=
"showSearch=!showSearch"
/>
</el-tooltip>
</div>
<table-tools-ext
:showSearch
.
sync=
"showSearch"
@
queryTable=
"getList"
></table-tools-ext>
</el-row>
<el-table
v-loading=
"loading"
:data=
"roleList"
@
selection-change=
"handleSelectionChange"
>
...
...
ruoyi-ui/src/views/system/user/index.vue
View file @
5b04f388
...
...
@@ -4,77 +4,28 @@
<!--部门数据-->
<el-col
:span=
"4"
:xs=
"24"
>
<div
class=
"head-container"
>
<el-input
v-model=
"deptName"
placeholder=
"请输入部门名称"
clearable
size=
"small"
prefix-icon=
"el-icon-search"
style=
"margin-bottom: 20px"
/>
<el-input
v-model=
"deptName"
placeholder=
"请输入部门名称"
clearable
size=
"small"
prefix-icon=
"el-icon-search"
style=
"margin-bottom: 20px"
/>
</div>
<div
class=
"head-container"
>
<el-tree
:data=
"deptOptions"
:props=
"defaultProps"
:expand-on-click-node=
"false"
:filter-node-method=
"filterNode"
ref=
"tree"
default-expand-all
@
node-click=
"handleNodeClick"
/>
<el-tree
:data=
"deptOptions"
:props=
"defaultProps"
:expand-on-click-node=
"false"
:filter-node-method=
"filterNode"
ref=
"tree"
default-expand-all
@
node-click=
"handleNodeClick"
/>
</div>
</el-col>
<!--用户数据-->
<el-col
:span=
"20"
:xs=
"24"
>
<el-form
:model=
"queryParams"
ref=
"queryForm"
:inline=
"true"
v-show=
"showSearch"
label-width=
"68px"
>
<el-form-item
label=
"用户名称"
prop=
"userName"
>
<el-input
v-model=
"queryParams.userName"
placeholder=
"请输入用户名称"
clearable
size=
"small"
style=
"width: 240px"
@
keyup
.
enter
.
native=
"handleQuery"
/>
<el-input
v-model=
"queryParams.userName"
placeholder=
"请输入用户名称"
clearable
size=
"small"
style=
"width: 240px"
@
keyup
.
enter
.
native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"手机号码"
prop=
"phonenumber"
>
<el-input
v-model=
"queryParams.phonenumber"
placeholder=
"请输入手机号码"
clearable
size=
"small"
style=
"width: 240px"
@
keyup
.
enter
.
native=
"handleQuery"
/>
<el-input
v-model=
"queryParams.phonenumber"
placeholder=
"请输入手机号码"
clearable
size=
"small"
style=
"width: 240px"
@
keyup
.
enter
.
native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"状态"
prop=
"status"
>
<el-select
v-model=
"queryParams.status"
placeholder=
"用户状态"
clearable
size=
"small"
style=
"width: 240px"
>
<el-option
v-for=
"dict in statusOptions"
:key=
"dict.dictValue"
:label=
"dict.dictLabel"
:value=
"dict.dictValue"
/>
<el-select
v-model=
"queryParams.status"
placeholder=
"用户状态"
clearable
size=
"small"
style=
"width: 240px"
>
<el-option
v-for=
"dict in statusOptions"
:key=
"dict.dictValue"
:label=
"dict.dictLabel"
:value=
"dict.dictValue"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"创建时间"
>
<el-date-picker
v-model=
"dateRange"
size=
"small"
style=
"width: 240px"
value-format=
"yyyy-MM-dd"
type=
"daterange"
range-separator=
"-"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
></el-date-picker>
<el-date-picker
v-model=
"dateRange"
size=
"small"
style=
"width: 240px"
value-format=
"yyyy-MM-dd"
type=
"daterange"
range-separator=
"-"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
></el-date-picker>
</el-form-item>
<el-form-item>
<el-button
type=
"cyan"
icon=
"el-icon-search"
size=
"mini"
@
click=
"handleQuery"
>
搜索
</el-button>
...
...
@@ -84,60 +35,21 @@
<el-row
:gutter=
"10"
class=
"mb8"
>
<el-col
:span=
"1.5"
>
<el-button
type=
"primary"
icon=
"el-icon-plus"
size=
"mini"
@
click=
"handleAdd"
v-hasPermi=
"['system:user:add']"
>
新增
</el-button>
<el-button
type=
"primary"
icon=
"el-icon-plus"
size=
"mini"
@
click=
"handleAdd"
v-hasPermi=
"['system:user:add']"
>
新增
</el-button>
</el-col>
<el-col
:span=
"1.5"
>
<el-button
type=
"success"
icon=
"el-icon-edit"
size=
"mini"
:disabled=
"single"
@
click=
"handleUpdate"
v-hasPermi=
"['system:user:edit']"
>
修改
</el-button>
<el-button
type=
"success"
icon=
"el-icon-edit"
size=
"mini"
:disabled=
"single"
@
click=
"handleUpdate"
v-hasPermi=
"['system:user:edit']"
>
修改
</el-button>
</el-col>
<el-col
:span=
"1.5"
>
<el-button
type=
"danger"
icon=
"el-icon-delete"
size=
"mini"
:disabled=
"multiple"
@
click=
"handleDelete"
v-hasPermi=
"['system:user:remove']"
>
删除
</el-button>
<el-button
type=
"danger"
icon=
"el-icon-delete"
size=
"mini"
:disabled=
"multiple"
@
click=
"handleDelete"
v-hasPermi=
"['system:user:remove']"
>
删除
</el-button>
</el-col>
<el-col
:span=
"1.5"
>
<el-button
type=
"info"
icon=
"el-icon-upload2"
size=
"mini"
@
click=
"handleImport"
v-hasPermi=
"['system:user:import']"
>
导入
</el-button>
<el-button
type=
"info"
icon=
"el-icon-upload2"
size=
"mini"
@
click=
"handleImport"
v-hasPermi=
"['system:user:import']"
>
导入
</el-button>
</el-col>
<el-col
:span=
"1.5"
>
<el-button
type=
"warning"
icon=
"el-icon-download"
size=
"mini"
@
click=
"handleExport"
v-hasPermi=
"['system:user:export']"
>
导出
</el-button>
<el-button
type=
"warning"
icon=
"el-icon-download"
size=
"mini"
@
click=
"handleExport"
v-hasPermi=
"['system:user:export']"
>
导出
</el-button>
</el-col>
<div
class=
"top-right-btn"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"刷新"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-refresh"
@
click=
"handleQuery"
/>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"showSearch ? '隐藏搜索' : '显示搜索'"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-search"
@
click=
"showSearch=!showSearch"
/>
</el-tooltip>
</div>
<table-tools-ext
:showSearch
.
sync=
"showSearch"
@
queryTable=
"getList"
></table-tools-ext>
</el-row>
<el-table
v-loading=
"loading"
:data=
"userList"
@
selection-change=
"handleSelectionChange"
>
...
...
@@ -149,12 +61,7 @@
<el-table-column
label=
"手机号码"
align=
"center"
prop=
"phonenumber"
width=
"120"
/>
<el-table-column
label=
"状态"
align=
"center"
>
<template
slot-scope=
"scope"
>
<el-switch
v-model=
"scope.row.status"
active-value=
"0"
inactive-value=
"1"
@
change=
"handleStatusChange(scope.row)"
></el-switch>
<el-switch
v-model=
"scope.row.status"
active-value=
"0"
inactive-value=
"1"
@
change=
"handleStatusChange(scope.row)"
></el-switch>
</
template
>
</el-table-column>
<el-table-column
label=
"创建时间"
align=
"center"
prop=
"createTime"
width=
"160"
>
...
...
@@ -162,46 +69,16 @@
<span>
{{
parseTime
(
scope
.
row
.
createTime
)
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"操作"
align=
"center"
width=
"180"
class-name=
"small-padding fixed-width"
>
<el-table-column
label=
"操作"
align=
"center"
width=
"180"
class-name=
"small-padding fixed-width"
>
<
template
slot-scope=
"scope"
>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-edit"
@
click=
"handleUpdate(scope.row)"
v-hasPermi=
"['system:user:edit']"
>
修改
</el-button>
<el-button
v-if=
"scope.row.userId !== 1"
size=
"mini"
type=
"text"
icon=
"el-icon-delete"
@
click=
"handleDelete(scope.row)"
v-hasPermi=
"['system:user:remove']"
>
删除
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-key"
@
click=
"handleResetPwd(scope.row)"
v-hasPermi=
"['system:user:resetPwd']"
>
重置
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-edit"
@
click=
"handleUpdate(scope.row)"
v-hasPermi=
"['system:user:edit']"
>
修改
</el-button>
<el-button
v-if=
"scope.row.userId !== 1"
size=
"mini"
type=
"text"
icon=
"el-icon-delete"
@
click=
"handleDelete(scope.row)"
v-hasPermi=
"['system:user:remove']"
>
删除
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-key"
@
click=
"handleResetPwd(scope.row)"
v-hasPermi=
"['system:user:resetPwd']"
>
重置
</el-button>
</
template
>
</el-table-column>
</el-table>
<pagination
v-show=
"total>0"
:total=
"total"
:page
.
sync=
"queryParams.pageNum"
:limit
.
sync=
"queryParams.pageSize"
@
pagination=
"getList"
/>
<pagination
v-show=
"total>0"
:total=
"total"
:page
.
sync=
"queryParams.pageNum"
:limit
.
sync=
"queryParams.pageSize"
@
pagination=
"getList"
/>
</el-col>
</el-row>
...
...
@@ -248,23 +125,14 @@
<el-col
:span=
"12"
>
<el-form-item
label=
"用户性别"
>
<el-select
v-model=
"form.sex"
placeholder=
"请选择"
>
<el-option
v-for=
"dict in sexOptions"
:key=
"dict.dictValue"
:label=
"dict.dictLabel"
:value=
"dict.dictValue"
></el-option>
<el-option
v-for=
"dict in sexOptions"
:key=
"dict.dictValue"
:label=
"dict.dictLabel"
:value=
"dict.dictValue"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"12"
>
<el-form-item
label=
"状态"
>
<el-radio-group
v-model=
"form.status"
>
<el-radio
v-for=
"dict in statusOptions"
:key=
"dict.dictValue"
:label=
"dict.dictValue"
>
{{dict.dictLabel}}
</el-radio>
<el-radio
v-for=
"dict in statusOptions"
:key=
"dict.dictValue"
:label=
"dict.dictValue"
>
{{dict.dictLabel}}
</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
...
...
@@ -273,26 +141,14 @@
<el-col
:span=
"12"
>
<el-form-item
label=
"岗位"
>
<el-select
v-model=
"form.postIds"
multiple
placeholder=
"请选择"
>
<el-option
v-for=
"item in postOptions"
:key=
"item.postId"
:label=
"item.postName"
:value=
"item.postId"
:disabled=
"item.status == 1"
></el-option>
<el-option
v-for=
"item in postOptions"
:key=
"item.postId"
:label=
"item.postName"
:value=
"item.postId"
:disabled=
"item.status == 1"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"12"
>
<el-form-item
label=
"角色"
>
<el-select
v-model=
"form.roleIds"
multiple
placeholder=
"请选择"
>
<el-option
v-for=
"item in roleOptions"
:key=
"item.roleId"
:label=
"item.roleName"
:value=
"item.roleId"
:disabled=
"item.status == 1"
></el-option>
<el-option
v-for=
"item in roleOptions"
:key=
"item.roleId"
:label=
"item.roleName"
:value=
"item.roleId"
:disabled=
"item.status == 1"
></el-option>
</el-select>
</el-form-item>
</el-col>
...
...
@@ -313,18 +169,7 @@
<!-- 用户导入对话框 -->
<el-dialog
:title=
"upload.title"
:visible
.
sync=
"upload.open"
width=
"400px"
append-to-body
>
<el-upload
ref=
"upload"
:limit=
"1"
accept=
".xlsx, .xls"
:headers=
"upload.headers"
:action=
"upload.url + '?updateSupport=' + upload.updateSupport"
:disabled=
"upload.isUploading"
:on-progress=
"handleFileUploadProgress"
:on-success=
"handleFileSuccess"
:auto-upload=
"false"
drag
>
<el-upload
ref=
"upload"
:limit=
"1"
accept=
".xlsx, .xls"
:headers=
"upload.headers"
:action=
"upload.url + '?updateSupport=' + upload.updateSupport"
:disabled=
"upload.isUploading"
:on-progress=
"handleFileUploadProgress"
:on-success=
"handleFileSuccess"
:auto-upload=
"false"
drag
>
<i
class=
"el-icon-upload"
></i>
<div
class=
"el-upload__text"
>
将文件拖到此处,或
...
...
@@ -345,7 +190,17 @@
</template>
<
script
>
import
{
listUser
,
getUser
,
delUser
,
addUser
,
updateUser
,
exportUser
,
resetUserPwd
,
changeUserStatus
,
importTemplate
}
from
"@/api/system/user"
;
import
{
listUser
,
getUser
,
delUser
,
addUser
,
updateUser
,
exportUser
,
resetUserPwd
,
changeUserStatus
,
importTemplate
,
}
from
"@/api/system/user"
;
import
{
getToken
}
from
"@/utils/auth"
;
import
{
treeselect
}
from
"@/api/system/dept"
;
import
Treeselect
from
"@riophae/vue-treeselect"
;
...
...
@@ -394,7 +249,7 @@ export default {
form
:
{},
defaultProps
:
{
children
:
"children"
,
label
:
"label"
label
:
"label"
,
},
// 用户导入参数
upload
:
{
...
...
@@ -409,7 +264,7 @@ export default {
// 设置上传的请求头部
headers
:
{
Authorization
:
"Bearer "
+
getToken
()
},
// 上传的地址
url
:
process
.
env
.
VUE_APP_BASE_API
+
"/system/user/importData"
url
:
process
.
env
.
VUE_APP_BASE_API
+
"/system/user/importData"
,
},
// 查询参数
queryParams
:
{
...
...
@@ -418,57 +273,57 @@ export default {
userName
:
undefined
,
phonenumber
:
undefined
,
status
:
undefined
,
deptId
:
undefined
deptId
:
undefined
,
},
// 表单校验
rules
:
{
userName
:
[
{
required
:
true
,
message
:
"用户名称不能为空"
,
trigger
:
"blur"
}
{
required
:
true
,
message
:
"用户名称不能为空"
,
trigger
:
"blur"
}
,
],
nickName
:
[
{
required
:
true
,
message
:
"用户昵称不能为空"
,
trigger
:
"blur"
}
{
required
:
true
,
message
:
"用户昵称不能为空"
,
trigger
:
"blur"
}
,
],
deptId
:
[
{
required
:
true
,
message
:
"归属部门不能为空"
,
trigger
:
"blur"
}
{
required
:
true
,
message
:
"归属部门不能为空"
,
trigger
:
"blur"
}
,
],
password
:
[
{
required
:
true
,
message
:
"用户密码不能为空"
,
trigger
:
"blur"
}
{
required
:
true
,
message
:
"用户密码不能为空"
,
trigger
:
"blur"
}
,
],
email
:
[
{
required
:
true
,
message
:
"邮箱地址不能为空"
,
trigger
:
"blur"
},
{
type
:
"email"
,
message
:
"'请输入正确的邮箱地址"
,
trigger
:
[
"blur"
,
"change"
]
}
trigger
:
[
"blur"
,
"change"
]
,
}
,
],
phonenumber
:
[
{
required
:
true
,
message
:
"手机号码不能为空"
,
trigger
:
"blur"
},
{
pattern
:
/^1
[
3|4|5|6|7|8|9
][
0-9
]\d{8}
$/
,
message
:
"请输入正确的手机号码"
,
trigger
:
"blur"
}
]
}
trigger
:
"blur"
,
}
,
]
,
}
,
};
},
watch
:
{
// 根据名称筛选部门树
deptName
(
val
)
{
this
.
$refs
.
tree
.
filter
(
val
);
}
}
,
},
created
()
{
this
.
getList
();
this
.
getTreeselect
();
this
.
getDicts
(
"sys_normal_disable"
).
then
(
response
=>
{
this
.
getDicts
(
"sys_normal_disable"
).
then
(
(
response
)
=>
{
this
.
statusOptions
=
response
.
data
;
});
this
.
getDicts
(
"sys_user_sex"
).
then
(
response
=>
{
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
;
});
},
...
...
@@ -476,7 +331,8 @@ export default {
/** 查询用户列表 */
getList
()
{
this
.
loading
=
true
;
listUser
(
this
.
addDateRange
(
this
.
queryParams
,
this
.
dateRange
)).
then
(
response
=>
{
listUser
(
this
.
addDateRange
(
this
.
queryParams
,
this
.
dateRange
)).
then
(
(
response
)
=>
{
this
.
userList
=
response
.
rows
;
this
.
total
=
response
.
total
;
this
.
loading
=
false
;
...
...
@@ -485,7 +341,7 @@ export default {
},
/** 查询部门下拉树结构 */
getTreeselect
()
{
treeselect
().
then
(
response
=>
{
treeselect
().
then
(
(
response
)
=>
{
this
.
deptOptions
=
response
.
data
;
});
},
...
...
@@ -502,15 +358,22 @@ export default {
// 用户状态修改
handleStatusChange
(
row
)
{
let
text
=
row
.
status
===
"0"
?
"启用"
:
"停用"
;
this
.
$confirm
(
'确认要"'
+
text
+
'""'
+
row
.
userName
+
'"用户吗?'
,
"警告"
,
{
this
.
$confirm
(
'确认要"'
+
text
+
'""'
+
row
.
userName
+
'"用户吗?'
,
"警告"
,
{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
()
{
type
:
"warning"
,
}
)
.
then
(
function
()
{
return
changeUserStatus
(
row
.
userId
,
row
.
status
);
}).
then
(()
=>
{
})
.
then
(()
=>
{
this
.
msgSuccess
(
text
+
"成功"
);
}).
catch
(
function
()
{
})
.
catch
(
function
()
{
row
.
status
=
row
.
status
===
"0"
?
"1"
:
"0"
;
});
},
...
...
@@ -533,7 +396,7 @@ export default {
status
:
"0"
,
remark
:
undefined
,
postIds
:
[],
roleIds
:
[]
roleIds
:
[]
,
};
this
.
resetForm
(
"form"
);
},
...
...
@@ -550,7 +413,7 @@ export default {
},
// 多选框选中数据
handleSelectionChange
(
selection
)
{
this
.
ids
=
selection
.
map
(
item
=>
item
.
userId
);
this
.
ids
=
selection
.
map
(
(
item
)
=>
item
.
userId
);
this
.
single
=
selection
.
length
!=
1
;
this
.
multiple
=
!
selection
.
length
;
},
...
...
@@ -558,7 +421,7 @@ export default {
handleAdd
()
{
this
.
reset
();
this
.
getTreeselect
();
getUser
().
then
(
response
=>
{
getUser
().
then
(
(
response
)
=>
{
this
.
postOptions
=
response
.
posts
;
this
.
roleOptions
=
response
.
roles
;
this
.
open
=
true
;
...
...
@@ -571,7 +434,7 @@ export default {
this
.
reset
();
this
.
getTreeselect
();
const
userId
=
row
.
userId
||
this
.
ids
;
getUser
(
userId
).
then
(
response
=>
{
getUser
(
userId
).
then
(
(
response
)
=>
{
this
.
form
=
response
.
data
;
this
.
postOptions
=
response
.
posts
;
this
.
roleOptions
=
response
.
roles
;
...
...
@@ -586,21 +449,23 @@ export default {
handleResetPwd
(
row
)
{
this
.
$prompt
(
'请输入"'
+
row
.
userName
+
'"的新密码'
,
"提示"
,
{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
}).
then
(({
value
})
=>
{
resetUserPwd
(
row
.
userId
,
value
).
then
(
response
=>
{
cancelButtonText
:
"取消"
,
})
.
then
(({
value
})
=>
{
resetUserPwd
(
row
.
userId
,
value
).
then
((
response
)
=>
{
if
(
response
.
code
===
200
)
{
this
.
msgSuccess
(
"修改成功,新密码是:"
+
value
);
}
});
}).
catch
(()
=>
{});
})
.
catch
(()
=>
{});
},
/** 提交按钮 */
submitForm
:
function
()
{
this
.
$refs
[
"form"
].
validate
(
valid
=>
{
submitForm
:
function
()
{
this
.
$refs
[
"form"
].
validate
(
(
valid
)
=>
{
if
(
valid
)
{
if
(
this
.
form
.
userId
!=
undefined
)
{
updateUser
(
this
.
form
).
then
(
response
=>
{
updateUser
(
this
.
form
).
then
(
(
response
)
=>
{
if
(
response
.
code
===
200
)
{
this
.
msgSuccess
(
"修改成功"
);
this
.
open
=
false
;
...
...
@@ -608,7 +473,7 @@ export default {
}
});
}
else
{
addUser
(
this
.
form
).
then
(
response
=>
{
addUser
(
this
.
form
).
then
(
(
response
)
=>
{
if
(
response
.
code
===
200
)
{
this
.
msgSuccess
(
"新增成功"
);
this
.
open
=
false
;
...
...
@@ -622,29 +487,39 @@ export default {
/** 删除按钮操作 */
handleDelete
(
row
)
{
const
userIds
=
row
.
userId
||
this
.
ids
;
this
.
$confirm
(
'是否确认删除用户编号为"'
+
userIds
+
'"的数据项?'
,
"警告"
,
{
this
.
$confirm
(
'是否确认删除用户编号为"'
+
userIds
+
'"的数据项?'
,
"警告"
,
{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
()
{
type
:
"warning"
,
}
)
.
then
(
function
()
{
return
delUser
(
userIds
);
}).
then
(()
=>
{
})
.
then
(()
=>
{
this
.
getList
();
this
.
msgSuccess
(
"删除成功"
);
}).
catch
(
function
()
{});
})
.
catch
(
function
()
{});
},
/** 导出按钮操作 */
handleExport
()
{
const
queryParams
=
this
.
queryParams
;
this
.
$confirm
(
'是否确认导出所有用户数据项?'
,
"警告"
,
{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
()
{
this
.
$confirm
(
"是否确认导出所有用户数据项?"
,
"警告"
,
{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
,
})
.
then
(
function
()
{
return
exportUser
(
queryParams
);
}).
then
(
response
=>
{
})
.
then
((
response
)
=>
{
this
.
download
(
response
.
msg
);
}).
catch
(
function
()
{});
})
.
catch
(
function
()
{});
},
/** 导入按钮操作 */
handleImport
()
{
...
...
@@ -653,7 +528,7 @@ export default {
},
/** 下载模板操作 */
importTemplate
()
{
importTemplate
().
then
(
response
=>
{
importTemplate
().
then
(
(
response
)
=>
{
this
.
download
(
response
.
msg
);
});
},
...
...
@@ -672,7 +547,7 @@ export default {
// 提交上传文件
submitFileForm
()
{
this
.
$refs
.
upload
.
submit
();
}
}
}
,
}
,
};
</
script
>
\ No newline at end of file
ruoyi-ui/src/views/tool/gen/index.vue
View file @
5b04f388
...
...
@@ -76,14 +76,7 @@
v-hasPermi=
"['tool:gen:remove']"
>
删除
</el-button>
</el-col>
<div
class=
"top-right-btn"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"刷新"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-refresh"
@
click=
"handleQuery"
/>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"showSearch ? '隐藏搜索' : '显示搜索'"
placement=
"top"
>
<el-button
size=
"mini"
circle
icon=
"el-icon-search"
@
click=
"showSearch=!showSearch"
/>
</el-tooltip>
</div>
<table-tools-ext
:showSearch
.
sync=
"showSearch"
@
queryTable=
"getList"
></table-tools-ext>
</el-row>
<el-table
v-loading=
"loading"
:data=
"tableList"
@
selection-change=
"handleSelectionChange"
>
...
...
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