Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
C
CivManage
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
ReactWeb5
CivManage
Commits
2e4a7dad
Commit
2e4a7dad
authored
Jun 02, 2022
by
邓超
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix: admin不开发数据库操作权限,修改用户管理样式,正常模式跟沙箱都可正常显示
parent
f5fef0a2
Pipeline
#51934
passed with stages
in 9 minutes 6 seconds
Changes
12
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
403 additions
and
194 deletions
+403
-194
index.less
src/components/BasePageContainer/index.less
+24
-5
itemCard.less
src/components/CheckGroup/itemCard.less
+9
-9
index.jsx
src/pages/user/login/index.jsx
+1
-1
RoleManage.jsx
src/pages/userCenter/roleManage/RoleManage.jsx
+1
-1
RoleManage.less
src/pages/userCenter/roleManage/RoleManage.less
+61
-9
NewSelectUser.jsx
src/pages/userCenter/roleManage/SelectUser/NewSelectUser.jsx
+20
-18
SelectUser.less
src/pages/userCenter/roleManage/SelectUser/SelectUser.less
+67
-39
SiteManage.jsx
src/pages/userCenter/siteManage/SiteManage.jsx
+3
-3
SiteManage.less
src/pages/userCenter/siteManage/SiteManage.less
+41
-14
UserManage.jsx
src/pages/userCenter/userManage/UserManage.jsx
+83
-78
UserManage.less
src/pages/userCenter/userManage/UserManage.less
+89
-13
config.js
src/routes/config.js
+4
-4
No files found.
src/components/BasePageContainer/index.less
View file @
2e4a7dad
.ant-pro-basicLayout-content .ant-pro-page-container{
margin:0
.ant-pro-basicLayout-content .ant-pro-page-container
{
margin:
0
}
.ant-pro-page-container-children-content{
margin:0
.ant-pro-page-container-children-content {
margin: 0
}
.ant-layout .ant-layout-content{
.ant-layout .ant-layout-content {
margin: 0px !important;
}
.ant-pro-page-container {
height: 100%;
}
.ant-pro-grid-content {
height: 100%;
.ant-pro-grid-content-children {
height: 100%;
.ant-pro-page-container-children-content {
height: 100%;
}
}
}
\ No newline at end of file
src/components/CheckGroup/itemCard.less
View file @
2e4a7dad
...
...
@@ -48,13 +48,13 @@
}
.btnBox {
position: sticky;
bottom: 0px;
right: 0px;
background-color: #fff;
width: 100%;
height: 40px;
padding: 0 20px;
display: flex;
justify-content: flex-end;
align-items: center;
//
bottom: 0px;
//
right: 0px;
//
background-color: #fff;
//
width: 100%;
//
height: 40px;
//
padding: 0 20px;
//
display: flex;
//
justify-content: flex-end;
//
align-items: center;
}
src/pages/user/login/index.jsx
View file @
2e4a7dad
...
...
@@ -51,7 +51,7 @@ const Login = props => {
if
(
userMode
===
USER_MODE
.
SUPER
)
{
history
.
push
(
`/solution`
);
}
else
{
history
.
push
(
`/
dbm/dbInit
`
);
history
.
push
(
`/
authority/user
`
);
}
}
if
(
userMode
===
USER_MODE
.
COMMON
)
{
...
...
src/pages/userCenter/roleManage/RoleManage.jsx
View file @
2e4a7dad
...
...
@@ -782,7 +782,7 @@ const SiteManage = () => {
</
div
>
<
hr
style=
{
{
width
:
'95%'
,
color
:
'#eeecec'
,
marginLeft
:
'15px'
}
}
/>
{
treeData
&&
treeData
.
length
>
0
&&
(
<
div
style=
{
{
height
:
'calc(100
vh - 13
0px)'
,
overflowY
:
'scroll'
}
}
>
<
div
style=
{
{
height
:
'calc(100
% - 4
0px)'
,
overflowY
:
'scroll'
}
}
>
<
Tree
showIcon
onSelect=
{
handleTreeSelect
}
...
...
src/pages/userCenter/roleManage/RoleManage.less
View file @
2e4a7dad
.ant-spin-container {
height: 100%;
}
.cardBox {
min-height: calc(100vh - 74px);
max-height: calc(100vh - 74px);
overflow-y: scroll;
// min-height: calc(100vh - 74px);
// max-height: calc(100vh - 74px);
height: 100%;
// overflow-y: scroll;
// overflow: auto;
overflow: hidden;
width: 320px;
...
...
@@ -13,15 +18,22 @@
transition-property: width, left;
transition-duration: 0.5s;
white-space: nowrap;
.ant-card-body {
height: 100%;
}
.ant-tree-node-content-wrapper {
display: flex;
align-items: center;
.ant-tree-iconEle {
display: flex;
align-items: center;
width: 18px;
}
}
.switcher {
display: block;
position: absolute;
...
...
@@ -33,11 +45,13 @@
z-index: 1;
}
}
.hideBox {
left: 0px;
top: 0;
width: 26px;
}
.hideH {
width: 100%;
}
...
...
@@ -46,45 +60,57 @@
display: flex;
align-items: center;
}
.treeTitle {
display: flex;
span {
display: none;
}
}
.treeTitle:hover {
span {
margin-left: 20px;
display: block;
}
}
.titleBox {
display: flex;
// flex-wrap: wrap;
justify-content: space-around;
align-items: center;
}
.cardBoxR {
height: calc(100vh - 192px);
height: calc(100% - 36px);
min-width: 870px;
overflow-y: scroll;
}
.cardBoxRNew {
height: calc(100vh - 160px);
min-width: 870px;
overflow-y: scroll;
// height: calc(100vh - 160px);
height: 100%;
// min-width: 870px;
// overflow-y: scroll;
}
.cardBoxH {
height: calc(100vh - 151px);
// height: calc(100vh - 151px);
height: 100%;
min-width: 870px;
overflow-y: scroll;
}
:global {
.ant-tree-switcher {
display: flex;
align-items: center;
margin-right: -8px;
margin-left: 5px;
// color:#1890FF;
.ant-tree-switcher-line-icon {
// margin-left: 5px;
...
...
@@ -105,27 +131,50 @@
.boxR {
width: 100%;
height: 100%;
position: relative;
transition: width 2s;
.ant-card {
height: 100%;
}
.ant-card-body {
height: 100%;
}
.ant-tabs {
height: 100%;
}
.ant-tabs-content {
height: 100%;
}
}
// .anticon-unordered-list{
// vertical-align: 0.125em;
// color:#1890FF;
// }
.content {
width: 100%;
height: 100%;
display: flex;
position: relative;
}
.title {
display: flex;
align-items: center;
justify-content: space-between;
width: 100%;
}
.tip {
display: none;
}
.title:hover {
.tip {
display: flex;
...
...
@@ -134,14 +183,16 @@
width: 60%;
}
}
.fs {
font-size: 18px;
margin-left: 10px;
}
.titleTop {
width: 20rem;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
padding-left: 10px;
}
}
\ No newline at end of file
src/pages/userCenter/roleManage/SelectUser/NewSelectUser.jsx
View file @
2e4a7dad
...
...
@@ -259,33 +259,35 @@ const NewSelectUser = props => {
</
Button
>
</
div
>
{
/* 复选框模块 */
}
<
Spin
spinning=
{
loading
}
>
<
div
className=
{
styles
.
checkContainer
}
>
{
allList
.
map
((
item
,
index
)
=>
(
<
div
className=
{
styles
.
checkBoxContent
}
key=
{
item
.
groupId
}
>
<
CardCheck
cardMsg=
{
item
}
cardIndex=
{
index
}
callback=
{
(
val
,
newCheckList
)
=>
checkCallBack
(
val
,
newCheckList
)
}
checkList=
{
checkList
}
deleKey=
{
deleKey
}
delFlag=
{
delFlag
}
/>
</
div
>
))
}
</
div
>
</
Spin
>
<
div
className=
{
styles
.
checkScrollBox
}
>
<
Spin
spinning=
{
loading
}
>
<
div
className=
{
styles
.
checkContainer
}
>
{
allList
.
map
((
item
,
index
)
=>
(
<
div
className=
{
styles
.
checkBoxContent
}
key=
{
item
.
groupId
}
>
<
CardCheck
cardMsg=
{
item
}
cardIndex=
{
index
}
callback=
{
(
val
,
newCheckList
)
=>
checkCallBack
(
val
,
newCheckList
)
}
checkList=
{
checkList
}
deleKey=
{
deleKey
}
delFlag=
{
delFlag
}
/>
</
div
>
))
}
</
div
>
</
Spin
>
</
div
>
</
div
>
<
div
className=
{
styles
.
tableRight
}
>
<
Table
bordered
style=
{
{
width
:
'400px'
,
overflowX
:
'hidden'
}
}
style=
{
{
width
:
'400px'
,
height
:
'100%'
,
overflowX
:
'hidden'
}
}
rowKey=
{
record
=>
record
.
value
}
columns=
{
columns
}
dataSource=
{
checkList
}
pagination=
{
false
}
size=
"small"
scroll=
{
{
y
:
'cal
a(100vh - 257
px)'
}
}
scroll=
{
{
y
:
'cal
c(100% - 40
px)'
}
}
/>
</
div
>
</
div
>
...
...
src/pages/userCenter/roleManage/SelectUser/SelectUser.less
View file @
2e4a7dad
.pushTestContent {
display: flex;
height: calc(100% - 75px);
.searchHeader {
display: flex;
}
.checkContainer {
height: calc(100vh - 300px);
width: 100%;
.checkScrollBox {
overflow-y: scroll;
height: calc(100% - 82px);
margin: 20px 0;
padding-right: 5px;
.checkContent {
display: flex;
.checkContainer {
width: 100%;
flex-direction: column;
border: 1px solid #c2cdfd;
border-radius: 5px;
margin-top: 20px;
min-height: 50px;
padding: 0 10px 10px 20px;
.ant-checkbox-wrapper {
background-color: #fff;
}
.topCheckbox {
height: 20px;
margin: -10px 0 0 0px;
line-height: 20px;
}
.topCheckbox > label :hover {
font-weight: 600;
}
.bottomCheckbox {
margin-top: 10px;
.checkContent {
display: flex;
width: 100%;
flex-direction: column;
border: 1px solid #c2cdfd;
border-radius: 5px;
margin-top: 20px;
min-height: 50px;
padding: 0 10px 10px 20px;
.ant-checkbox-wrapper {
min-width: 150px;
margin-left: 0;
background-color: #fff;
}
.topCheckbox {
height: 20px;
margin: -10px 0 0 0px;
line-height: 20px;
}
.topCheckbox>label :hover {
font-weight: 600;
}
.bottomCheckbox {
margin-top: 10px;
.ant-checkbox-wrapper {
min-width: 150px;
margin-left: 0;
}
// .ant-checkbox-group-item {
// min-width: 150px !important;
// }
// .ant-checkbox-wrapper {
// min-width: 150px !important;
// }
}
.checkdiv {
display: flex;
flex-wrap: wrap;
}
// .ant-checkbox-group-item {
// min-width: 150px !important;
// }
// .ant-checkbox-wrapper {
// min-width: 150px !important;
// }
}
.checkdiv {
display: flex;
flex-wrap: wrap;
}
}
}
.leftContent {
width:
7
0%;
width:
10
0%;
}
.tableRight {
margin-left: 10px;
height: 100%;
.ant-spin-nested-loading {
height: 100%;
.ant-table {
height: 100%;
.ant-table-container {
height: 100%;
}
}
}
}
.ant-table-body {
height: calc(100vh - 290px);
//
height: calc(100vh - 290px);
}
}
}
\ No newline at end of file
src/pages/userCenter/siteManage/SiteManage.jsx
View file @
2e4a7dad
...
...
@@ -685,7 +685,7 @@ const SiteManageV2 = () => {
/>
</
Tooltip
>
{
treeData
.
length
>
0
&&
(
<
div
style=
{
{
height
:
'
calc(100vh - 120px)
'
,
overflowY
:
'scroll'
}
}
>
<
div
style=
{
{
height
:
'
100%
'
,
overflowY
:
'scroll'
}
}
>
<
Tree
showIcon=
"true"
showLine=
{
{
showLeafIcon
:
false
}
}
...
...
@@ -770,7 +770,7 @@ const SiteManageV2 = () => {
<
Button
onClick=
{
restButton
}
>
重置
</
Button
>
</
Card
>
<
div
style=
{
{
background
:
'#fff'
}
}
>
<
div
style=
{
{
background
:
'#fff'
,
height
:
'calc(100% - 64px)'
,
paddingBottom
:
'10px'
}
}
>
<
Spin
spinning=
{
checkLoading
}
tip=
"loading..."
>
<
Card
className=
{
classnames
({
...
...
@@ -782,7 +782,7 @@ const SiteManageV2 = () => {
style=
{
{
display
:
'flex'
,
flexDirection
:
'column '
,
height
:
'
calc(100vh - 240px)
'
,
height
:
'
100%
'
,
}
}
>
{
/* <Checkbox className={styles.siteAll}>全选/反选</Checkbox> */
}
...
...
src/pages/userCenter/siteManage/SiteManage.less
View file @
2e4a7dad
...
...
@@ -42,12 +42,12 @@
line-height: 1;
}
.ant-dropdown-menu-item
>
.anticon:first-child {
.ant-dropdown-menu-item
>
.anticon:first-child {
vertical-align: 0.15em !important;
}
.ant-table-tbody {
.ant-table-row:hover
>
td {
.ant-table-row:hover
>
td {
background: #aed8fa !important;
}
}
...
...
@@ -90,10 +90,12 @@
.ant-card-body {
padding: 15px;
}
.ant-spin-container {
// overflow-y: scroll;
// height: calc(100vh - 410px);
}
.ant-tree-treenode {
width: 100% !important;
...
...
@@ -112,7 +114,7 @@
}
.ant-tree-treenode:hover {
.iconWraper1
>
span {
.iconWraper1
>
span {
margin-left: 12px;
font-size: 18px;
display: inline-block;
...
...
@@ -123,9 +125,11 @@
display: flex;
width: 100%;
position: relative;
height: 100%;
.orgContainer {
height: calc(100vh - 74px);
// height: calc(100vh - 74px);
height: 100%;
width: 320px;
padding-right: 10px;
left: 0;
...
...
@@ -136,6 +140,11 @@
transition-property: width, left;
transition-duration: 0.5s;
white-space: nowrap;
padding-bottom: 10px;
.ant-card-body {
height: 100%;
}
.ant-tree {
padding-top: 6px;
...
...
@@ -171,7 +180,7 @@
}
.userContainer {
height:
calc(100vh - 74px) !important
;
height:
100%
;
z-index: 999;
min-width: 800px;
background: white;
...
...
@@ -242,17 +251,27 @@
//机构编辑面板
.boxR {
width: 100%;
height: 100%;
position: relative;
transition: width 2s;
.ant-spin-nested-loading {
height: calc(100% - 50px);
}
.ant-card-body {
height: 100%;
}
}
.cardBoxR {
min-height: calc(100vh - 210px);
max-height: calc(100vh - 210px);
// min-height: calc(100vh - 210px);
// max-height: calc(100vh - 210px);
height: 100%;
min-width: 600px;
}
.siteCheckbox .ant-collapse-content
>
.ant-collapse-content-box {
.siteCheckbox .ant-collapse-content
>
.ant-collapse-content-box {
padding: 16px 16px 0;
}
...
...
@@ -264,6 +283,7 @@
white-space: nowrap;
text-overflow: ellipsis;
}
.siteListTitle {
width: 199px;
// margin:0 0 15px 0;
...
...
@@ -272,6 +292,7 @@
white-space: nowrap;
text-overflow: ellipsis;
}
.sitePanel {
margin: 0 0 10px 0;
}
...
...
@@ -299,7 +320,7 @@
overflow: auto;
}
.sitePanel .ant-checkbox-wrapper
+
.ant-checkbox-wrapper {
.sitePanel .ant-checkbox-wrapper
+
.ant-checkbox-wrapper {
margin: 0;
}
...
...
@@ -324,6 +345,7 @@
border: 1px solid #f5f5f5;
overflow: auto;
.siteSelectUl {
margin: 0;
padding: 15px;
...
...
@@ -334,8 +356,7 @@
li {
height: 35px;
line-height: 35px;
background: rgba(24, 144, 255, 0.16) url('../../../assets/images/icons/close.png') no-repeat
170px;
background: rgba(24, 144, 255, 0.16) url('../../../assets/images/icons/close.png') no-repeat 170px;
background-size: 20px;
background-position: center right;
margin: 0 10px 10px 0;
...
...
@@ -348,8 +369,7 @@
}
}
.siteline {
}
.siteline {}
.siteBtn {
width: 100%;
...
...
@@ -383,14 +403,17 @@
height: 50vh;
}
}
.title {
display: flex;
align-items: center;
width: 100%;
}
.tip {
display: none;
}
.title:hover {
.tip {
display: flex;
...
...
@@ -399,19 +422,22 @@
width: 40%;
}
}
.titleText {
width: 12rem;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.fs {
font-size: 18px;
margin-left: 10px;
}
.titleTop {
width: 12rem;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
}
\ No newline at end of file
src/pages/userCenter/userManage/UserManage.jsx
View file @
2e4a7dad
/* eslint-disable eqeqeq */
import
React
,
{
useState
,
useEffect
}
from
'react'
;
import
React
,
{
useState
,
useEffect
,
useRef
}
from
'react'
;
import
{
// Tree,
Table
,
...
...
@@ -164,6 +164,8 @@ const UserManage = () => {
const
[
menuID
,
setMenuID
]
=
useState
(
''
);
// 选中的树IDs
const
[
keepId
,
setKeepId
]
=
useState
(
''
);
const
[
flag
,
setFlag
]
=
useState
(
1
);
// 刷新标志
const
userContainer
=
useRef
();
const
flagRef
=
useRef
(
1
);
const
setRowClassName
=
record
=>
record
.
userID
===
selectColor
.
userID
?
styles
.
clickRowStyle
:
''
;
// 用户表列名
...
...
@@ -367,6 +369,28 @@ const UserManage = () => {
setExpendKey
(
menuID
);
console
.
log
(
expendKey
);
},
[
menuID
]);
// 获取用户机构树
useEffect
(()
=>
{
window
.
addEventListener
(
'resize'
,
resizeListener
);
updateTrees
();
return
()
=>
{
window
.
removeEventListener
(
'resize'
,
resizeListener
);
};
},
[]);
// 更新获取初始范围
useEffect
(()
=>
{
getOrgArea
().
then
(
res
=>
{
if
(
res
.
msg
===
'Ok'
)
{
console
.
log
(
res
);
setOrgAreas
(
res
.
Results
);
}
});
},
[
saveExtentFlag
]);
const
resizeListener
=
()
=>
{
flagRef
.
current
+=
1
;
setFlag
(
flagRef
.
current
);
};
// 模糊查询匹配的样式
const
searchStyle
=
val
=>
{
let
n
;
...
...
@@ -570,20 +594,6 @@ const UserManage = () => {
});
};
// 获取用户机构树
useEffect
(()
=>
{
updateTrees
();
},
[]);
// 更新获取初始范围
useEffect
(()
=>
{
getOrgArea
().
then
(
res
=>
{
if
(
res
.
msg
===
'Ok'
)
{
console
.
log
(
res
);
setOrgAreas
(
res
.
Results
);
}
});
},
[
saveExtentFlag
]);
// 点击树节点,获取当前机构下所有用户
const
onSelect
=
(
props
,
e
)
=>
{
console
.
log
(
props
);
...
...
@@ -1242,13 +1252,13 @@ const UserManage = () => {
};
// 更改机构范围
const
submitExtent
=
(
extent
,
areaName
,
flag
)
=>
{
const
submitExtent
=
(
extent
,
areaName
,
flag
s
)
=>
{
setTreeLoading
(
true
);
console
.
log
(
extent
);
console
.
log
(
areaName
);
console
.
log
(
flag
);
console
.
log
(
flag
s
);
console
.
log
(
currentSelectOrg1
);
if
(
flag
===
0
)
{
if
(
flag
s
===
0
)
{
setTreeLoading
(
false
);
notification
.
warn
({
message
:
'提交失败'
,
...
...
@@ -1400,42 +1410,45 @@ const UserManage = () => {
const
kee
=
()
=>
{
setUserVisible
(
false
);
};
console
.
log
(
userContainer
.
current
?.
clientHeight
,
'userContainer.current.clientHeight'
);
return
(
<
PageContainer
className=
{
styles
.
userManageContainer
}
>
<
div
className=
{
styles
.
contentContainer
}
>
{
/* 左侧机构树 */
}
<
Spin
spinning=
{
treeLoading
}
tip=
"loading..."
>
<
Card
style=
{
{
overflowY
:
'hidden'
}
}
style=
{
{
overflowY
:
'hidden'
,
height
:
'100%'
}
}
className=
{
classnames
({
[
styles
.
orgContainer
]:
true
,
[
styles
.
orgContainerHide
]:
!
treeVisible
,
})
}
>
<
div
>
<
span
style=
{
{
fontSize
:
'15px '
,
fontWeight
:
'bold'
,
marginLeft
:
'15px'
,
}
}
>
机构列表
</
span
>
<
Tooltip
title=
"添加顶级机构"
>
<
PlusSquareFilled
onClick=
{
()
=>
addOrg
()
}
<
div
style=
{
{
display
:
'flex'
,
flexDirection
:
'column'
,
height
:
'100%'
}
}
>
<
div
style=
{
{
display
:
'flex'
}
}
>
<
span
style=
{
{
color
:
'#1890FF'
,
fontSize
:
'25px'
,
verticalAlign
:
'middle'
,
marginLeft
:
'64%'
,
fontSize
:
'15px '
,
fontWeight
:
'bold'
,
marginLeft
:
'15px'
,
}
}
/>
</
Tooltip
>
>
机构列表
</
span
>
<
Tooltip
title=
"添加顶级机构"
>
<
PlusSquareFilled
onClick=
{
()
=>
addOrg
()
}
style=
{
{
color
:
'#1890FF'
,
fontSize
:
'25px'
,
verticalAlign
:
'middle'
,
marginLeft
:
'64%'
,
}
}
/>
</
Tooltip
>
</
div
>
<
hr
style=
{
{
width
:
'95%'
,
color
:
'#eeecec'
,
marginLeft
:
'15px'
}
}
/>
{
treeData
.
length
>
0
&&
(
<
div
style=
{
{
height
:
'
calc(100vh - 130px)
'
,
overflowY
:
'scroll'
}
}
>
<
div
style=
{
{
height
:
'
100%
'
,
overflowY
:
'scroll'
}
}
>
<
Tree
showIcon=
"true"
blockNode
...
...
@@ -1468,6 +1481,7 @@ const UserManage = () => {
{
/* 右侧用户表 */
}
<
div
ref=
{
userContainer
}
className=
{
classnames
({
[
styles
.
userContainer
]:
true
,
})
}
...
...
@@ -1500,45 +1514,36 @@ const UserManage = () => {
</
Dropdown
>
</
span
>
</
div
>
{
/* <div
className={classnames({
[styles.boxR]: true,
[styles.boxH]: treeVisible,
})}
>
<div
className={classnames({
[styles.cardBoxR]: true,
[styles.boxH]: treeVisible,
})}
> */
}
<
Table
// style={{ width: treeVisible ? '81%' : '100%' }}
rowSelection=
{
{
type
:
'checkbox'
,
...
rowSelection
,
}
}
rowClassName=
{
setRowClassName
}
size=
"small"
rowKey=
{
record
=>
record
.
userID
}
locale=
{
zhCN
}
bordered
columns=
{
columns
}
dataSource=
{
tableData
}
loading=
{
tableLoading
}
scroll=
{
{
x
:
'max-content'
,
y
:
'calc(100vh - 210px)'
}
}
// scroll={{ x: 'max-content' }}
pagination=
{
{
showTotal
:
(
total
,
range
)
=>
`第${range[0]}-${range[1]} 条/共 ${total} 条`
,
pageSizeOptions
:
[
10
,
20
,
50
,
100
],
defaultPageSize
:
20
,
showQuickJumper
:
true
,
showSizeChanger
:
true
,
}
}
onChange=
{
onChangeInput
}
/>
{
/* </div>
</div> */
}
{
userContainer
.
current
&&
(
<
Table
// style=
{{
height
:
'
calc
(100%
-50
px
)'
}}
rowSelection=
{
{
type
:
'checkbox'
,
...
rowSelection
,
}
}
rowClassName=
{
setRowClassName
}
size=
"small"
rowKey=
{
record
=>
record
.
userID
}
locale=
{
zhCN
}
bordered
columns=
{
columns
}
dataSource=
{
tableData
}
loading=
{
tableLoading
}
scroll=
{
{
x
:
'max-content'
,
y
:
`calc(${userContainer.current.clientHeight}px - 150px)`
,
}
}
// scroll=
{{
x
:
'
max
-
content
'
}}
pagination=
{
{
showTotal
:
(
total
,
range
)
=>
`第${range[0]}-${range[1]} 条/共 ${total} 条`
,
pageSizeOptions
:
[
10
,
20
,
50
,
100
],
defaultPageSize
:
20
,
showQuickJumper
:
true
,
showSizeChanger
:
true
,
}
}
onChange=
{
onChangeInput
}
/>
)
}
</
div
>
{
/* Modal弹框 */
}
...
...
src/pages/userCenter/userManage/UserManage.less
View file @
2e4a7dad
...
...
@@ -12,6 +12,7 @@
background: rgba(74, 74, 75, 0.3);
margin-bottom: 10px;
}
//滚动条的轨道(里面装有thumb)滚动槽
::-webkit-scrollbar-track {
box-shadow: 0;
...
...
@@ -22,6 +23,7 @@
.ant-tree-node-content-wrapper {
width: 100%;
// overflow: hidden !important;
.ant-tree-title {
overflow: hidden;
...
...
@@ -31,50 +33,63 @@
justify-content: space-between;
}
}
.ant-pagination-prev,
.ant-pagination-next {
line-height: 8px !important;
}
.ant-input-search-button {
line-height: 1;
}
.ant-dropdown-menu-item > .anticon:first-child {
.ant-dropdown-menu-item>.anticon:first-child {
vertical-align: 0.15em !important;
}
.ant-table-tbody {
.ant-table-row:hover
>
td {
.ant-table-row:hover
>
td {
background: #aed8fa !important;
}
}
.ant-modal-close-icon {
vertical-align: 0.3em;
}
.ant-notification-close-icon {
vertical-align: 0.2em;
}
.ant-tree-switcher-icon svg {
font-size: 14px;
color: #767777 !important;
}
.ant-card-body {
padding: 12px 24px 24px 10px;
}
}
.redText {
color: red;
cursor: pointer;
}
.ant-layout {
overflow: auto;
.ant-layout-content {
margin: 12px !important;
}
}
.ant-btn > .anticon + span,
.ant-btn > span + .anticon {
.ant-btn>.anticon+span,
.ant-btn>span+.anticon {
margin-left: 8px;
vertical-align: middle;
}
.siteTitle {
font-size: 16px;
margin: 0 0 6px 0;
...
...
@@ -82,25 +97,33 @@
padding: 3px;
border-bottom: 1px solid #ccc;
}
.userManageContainer {
height: 100%;
.ant-modal-footer {
border: none;
padding: 28px 40px;
height: 100%;
}
.ant-form-item {
vertical-align: top;
}
.ant-form-item-label > label {
.ant-form-item-label>label {
align-items: middle;
}
.ant-modal-body {
padding-bottom: 0px;
padding-right: 40px;
padding-left: 40px;
.ant-form {
width: 90%;
}
}
// .anticon svg {
// margin-top: -3px;
// }
...
...
@@ -110,8 +133,10 @@
color: rgba(0, 0, 0, 0.85);
font-size: 14px;
}
.ant-tree-treenode {
width: 100% !important;
.ant-tree-node-content-wrapper {
display: inline-block;
width: 100%;
...
...
@@ -119,33 +144,45 @@
.iconWraper1 {
float: right;
span {
display: none;
}
}
}
.ant-tree-treenode:hover {
.iconWraper1
>
span {
.iconWraper1
>
span {
margin-left: 12px;
font-size: 18px;
display: inline-block;
}
}
.ant-radio-group {
margin: 0px !important;
}
.contentContainer {
display: flex;
width: 100%;
height: 100%;
position: relative;
// .ant-table.ant-table-bordered > .ant-table-container {
// min-width: 81%;
// }
.ant-tree-switcher_close .ant-tree-switcher-icon svg {
margin: auto;
}
.ant-spin-container {
height: 100%;
}
.orgContainer {
height: calc(100vh - 74px);
// height: calc(100vh - 74px);
height: 100%;
width: 320px;
padding-right: 10px;
left: 0;
...
...
@@ -156,17 +193,23 @@
transition-property: width;
transition-duration: 0.5s;
white-space: nowrap;
.ant-card-body {
height: 100%;
}
.ant-tree {
padding-top: 6px;
.ant-tree-switcher {
line-height: 1;
margin-right: 0px !important;
color: #1890ff;
.ant-tree-switcher-line-icon {
margin-left: 5px;
}
}
}
.switcher {
display: block;
position: absolute;
...
...
@@ -183,27 +226,33 @@
// transform: translateX(-230px);
width: 26px;
}
.ant-popover-message-title {
padding-left: 20px;
}
.title1 {
display: flex;
align-items: center;
width: 100%;
}
.tip1 {
display: none;
}
.fs1 {
font-size: 18px;
margin-left: 10px;
}
.listHover {
display: flex;
align-items: center;
justify-content: flex-end;
width: 25%;
}
.title1:hover {
.tip1 {
display: flex;
...
...
@@ -212,23 +261,28 @@
width: 25%;
}
}
.titleText {
width: 20rem;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.userContainerHide {
width: 100%;
}
.userContainer {
height: calc(100vh - 74px) !important;
// height: calc(100vh - 74px) !important;
height: 100%;
z-index: 999;
background: white;
min-width: 800px;
width: 100%;
position: relative;
transition: width 0.5s;
.title {
margin: 16px 0 10px 16px;
display: inline-block;
...
...
@@ -238,6 +292,7 @@
text-overflow: ellipsis;
white-space: nowrap;
}
.ant-table-pagination {
padding-right: 12px;
background: white;
...
...
@@ -245,61 +300,76 @@
padding: 8px;
padding-right: 20px;
}
.ant-btn {
margin: 0px 10px;
.ant-btn-primary {
background: #50aefc;
}
}
.ant-input-search-button {
margin-left: 0px !important;
}
.ant-table-thead tr th {
font-weight: 600;
color: rgba(0, 0, 0, 0.85);
}
.ant-table-cell {
text-align: center;
overflow: hidden;
// text-overflow:ellipsis;
white-space: nowrap;
}
.ant-table-body {
height: calc(100vh - 210px);
// height: calc(100vh - 210px);
// height: 100%;
border-right: white;
overflow: auto !important;
//
overflow: auto !important;
}
.clickRowStyle {
background: #cfe7fd;
}
.ant-pagination {
z-index: 999;
border-top: 1px solid #f0eded;
}
}
}
.boxR {
width: 100%;
position: relative;
transition: width 2s;
}
.cardBoxR {
min-width: 800px;
}
.ant-modal-root {
.ant-tree-switcher {
line-height: 1;
color: #1890ff;
}
.ant-checkbox-group .ant-checkbox-group-item {
margin-right: 0px !important;
min-width: 200px !important;
}
.ant-tree-list-holder {
overflow: auto;
overflow-x: hidden;
height: 40vh;
}
.ant-tabs-content-holder {
overflow: auto;
height: 50vh;
...
...
@@ -310,19 +380,22 @@
.ant-modal-content {
border-radius: 5px;
}
.ant-modal-header {
border-radius: 5px 5px 0 0;
padding: 28px 40px;
}
.ant-modal-close {
top: 14px;
right: 20px;
}
.ant-modal-footer .ant-btn
+
.ant-btn:not(.ant-dropdown-trigger) {
.ant-modal-footer .ant-btn
+
.ant-btn:not(.ant-dropdown-trigger) {
margin-bottom: 0;
margin-left: 15px;
}
// .ant-form-horizontal .ant-form-item-control {
// margin-left: 10px;
// }
...
...
@@ -331,14 +404,16 @@
border-radius: 10px;
background-color: rgba(255, 255, 255, 0.788);
}
.ant-popover-inner-content {
padding: 10px 10px;
}
.ant-popover-message
>
.anticon {
.ant-popover-message
>
.anticon {
top: 7.0005px;
}
// .ant-tree {
// overflow-y: scroll;
// height: calc(100vh - 150px);
// }
// }
\ No newline at end of file
src/routes/config.js
View file @
2e4a7dad
...
...
@@ -97,24 +97,24 @@ export default {
name
:
'数据库'
,
icon
:
<
DatabaseOutlined
style
=
{
iconStyle
}
/>
,
component
:
BlankLayout
,
authority
:
admin
Authority
,
authority
:
super
Authority
,
routes
:
[
{
path
:
'/dbm/dbInit'
,
name
:
'数据库连接'
,
authority
:
admin
Authority
,
authority
:
super
Authority
,
component
:
InitDataBase
,
},
{
path
:
'/dbm/dbUpdate'
,
name
:
'数据库升级'
,
authority
:
admin
Authority
,
authority
:
super
Authority
,
component
:
ManagementDataBase
,
},
{
path
:
'/dbm/dbSource'
,
name
:
'多数据源'
,
authority
:
admin
Authority
,
authority
:
super
Authority
,
component
:
DatabaseConnectConfig
,
},
],
...
...
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