Commit 2e4a7dad authored by 邓超's avatar 邓超

fix: admin不开发数据库操作权限,修改用户管理样式,正常模式跟沙箱都可正常显示

parent f5fef0a2
Pipeline #51934 passed with stages
in 9 minutes 6 seconds
.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
......@@ -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;
}
......@@ -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) {
......
......@@ -782,7 +782,7 @@ const SiteManage = () => {
</div>
<hr style={{ width: '95%', color: '#eeecec', marginLeft: '15px' }} />
{treeData && treeData.length > 0 && (
<div style={{ height: 'calc(100vh - 130px)', overflowY: 'scroll' }}>
<div style={{ height: 'calc(100% - 40px)', overflowY: 'scroll' }}>
<Tree
showIcon
onSelect={handleTreeSelect}
......
.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
......@@ -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: 'cala(100vh - 257px)' }}
scroll={{ y: 'calc(100% - 40px)' }}
/>
</div>
</div>
......
.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: 70%;
width: 100%;
}
.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
......@@ -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> */}
......
......@@ -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
/* 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, flags) => {
setTreeLoading(true);
console.log(extent);
console.log(areaName);
console.log(flag);
console.log(flags);
console.log(currentSelectOrg1);
if (flag === 0) {
if (flags === 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% -50px)' }}
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弹框 */}
......
......@@ -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
......@@ -97,24 +97,24 @@ export default {
name: '数据库',
icon: <DatabaseOutlined style={iconStyle} />,
component: BlankLayout,
authority: adminAuthority,
authority: superAuthority,
routes: [
{
path: '/dbm/dbInit',
name: '数据库连接',
authority: adminAuthority,
authority: superAuthority,
component: InitDataBase,
},
{
path: '/dbm/dbUpdate',
name: '数据库升级',
authority: adminAuthority,
authority: superAuthority,
component: ManagementDataBase,
},
{
path: '/dbm/dbSource',
name: '多数据源',
authority: adminAuthority,
authority: superAuthority,
component: DatabaseConnectConfig,
},
],
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment