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
fd923672
Commit
fd923672
authored
Aug 30, 2021
by
邓超
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: 修改数据库初始化界面,替换web页面配置跟app配置接口,修复遇到的问题
parent
c4788d3e
Pipeline
#33626
passed with stages
in 33 minutes 13 seconds
Changes
16
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
384 additions
and
94 deletions
+384
-94
index.jsx
src/components/RadioGroup/index.jsx
+34
-0
index.less
src/components/RadioGroup/index.less
+14
-0
InitDataBase.jsx
src/pages/database/InitDataBase.jsx
+252
-34
InitDataBase.less
src/pages/database/InitDataBase.less
+32
-6
SiteConfig.jsx
src/pages/mobileConfig/SiteConfig.jsx
+3
-7
addConfig.jsx
src/pages/mobileConfig/addConfig.jsx
+2
-6
index.js
src/pages/mobileConfig/index.js
+1
-1
miniMenu.jsx
src/pages/mobileConfig/menuconfig/miniMenu.jsx
+1
-1
RoleManage.jsx
src/pages/userCenter/roleManage/RoleManage.jsx
+5
-12
EditModal.jsx
src/pages/userCenter/siteManage/EditModal.jsx
+1
-1
siteManage.jsx
src/pages/userCenter/siteManageV2/siteManage.jsx
+8
-9
AddForm.jsx
src/pages/webConfig/menuconfig/AddForm.jsx
+1
-0
webMenu.jsx
src/pages/webConfig/menuconfig/webMenu.jsx
+5
-4
api.js
src/services/database/api.js
+10
-0
api.js
src/services/mobileConfig/api.js
+10
-10
api.js
src/services/webConfig/api.js
+5
-3
No files found.
src/components/RadioGroup/index.jsx
0 → 100644
View file @
fd923672
import
React
,
{
useState
,
useEffect
}
from
'react'
;
import
{
Radio
}
from
'antd'
;
import
styles
from
'./index.less'
;
const
RadioBox
=
props
=>
{
const
{
radioTitle
,
radioOptions
,
currentVal
,
currentIndex
,
callBack
,
}
=
props
;
useEffect
(()
=>
{},
[]);
// 选择时通过回调函数传回要改变数据的索引跟选中的值
const
onChange
=
e
=>
{
callBack
(
currentIndex
,
e
.
target
.
value
);
};
return
(
<
div
className=
{
styles
.
radioBox
}
>
<
div
className=
{
styles
.
radioTitle
}
>
{
radioTitle
}
:
</
div
>
<
div
className=
{
styles
.
radioContent
}
>
<
Radio
.
Group
onChange=
{
onChange
}
value=
{
currentVal
}
>
{
radioOptions
.
map
((
item
,
num
)
=>
(
<
Radio
value=
{
item
.
version
}
key=
{
num
}
className=
{
styles
.
radio
}
>
{
item
.
functionName
+
item
.
version
}
</
Radio
>
))
}
</
Radio
.
Group
>
</
div
>
</
div
>
);
};
export
default
RadioBox
;
src/components/RadioGroup/index.less
0 → 100644
View file @
fd923672
.radioBox {
display: flex;
justify-content: flex-start;
margin-bottom: 20px;
.radioTitle {
width: 100px;
}
.radioContent {
width: 760px;
.radio {
margin-bottom: 10px;
}
}
}
src/pages/database/InitDataBase.jsx
View file @
fd923672
...
...
@@ -13,8 +13,11 @@ import {
Col
,
Popconfirm
,
Spin
,
Tabs
,
Radio
,
}
from
'antd'
;
import
PageContainer
from
'@/components/BasePageContainer'
;
import
RadioBox
from
'@/components/RadioGroup'
;
import
{
connect
}
from
'react-redux'
;
import
{
setTableSQLDirName
,
...
...
@@ -28,9 +31,13 @@ import {
updateConnDescNew
,
deleteInitDBLogNew
,
connectionTest
,
GetProductList
,
// 获取产品列表
GetDbProduct
,
// 获取产品方案配置
InitAddDataBase
,
// 数据库初始化
}
from
'@/services/database/api'
;
import
styles
from
'./InitDataBase.less'
;
const
{
TabPane
}
=
Tabs
;
const
{
Option
}
=
Select
;
const
formLables
=
{
ip
:
'服务器名或IP地址'
,
...
...
@@ -55,12 +62,18 @@ const InitDataBase = props => {
const
[
desc
,
setDesc
]
=
useState
(
''
);
// 修改描述
const
[
allSqlDir
,
setAllSqulDir
]
=
useState
([]);
// 修改产品方案
const
[
defaultSqlDir
,
setDefaultSqlDir
]
=
useState
(
''
);
// 修改产品方案默认值
const
[
modalVisible
,
setModalVisible
]
=
useState
(
false
);
// 修改秒速弹窗
const
[
modalVisible
,
setModalVisible
]
=
useState
({
describeVisible
:
false
,
// 描述弹窗
versionVisible
:
false
,
// 检查版本弹窗
initVisible
:
false
,
// 初始化选择产品弹窗
});
// 修改弹窗
const
[
initVisible
,
setInitVisible
]
=
useState
(
false
);
// 数据库初始化弹窗
const
[
initContent
,
setInitContent
]
=
useState
(
''
);
// 数据库初始化内容
const
[
cardLoading
,
setCardLoading
]
=
useState
(
false
);
// 初始化card Loading
const
[
finish
,
setFinish
]
=
useState
(
false
);
const
[
initLoading
,
setInitLoading
]
=
useState
(
false
);
const
[
initList
,
setInitList
]
=
useState
([]);
// 数据库初始化产品数据
const
[
dbExists
,
setDbExists
]
=
useState
(
false
);
// 数据库是否存在
const
scroll
=
useRef
(
null
);
// 获取数据库配置信息
...
...
@@ -71,7 +84,7 @@ const InitDataBase = props => {
getDataBaseConfigNew
().
then
(
resnew
=>
{
setCardLoading
(
false
);
let
res
=
resnew
.
data
;
if
(
resnew
.
code
==
0
)
{
if
(
resnew
.
code
==
=
0
)
{
const
{
inUse
}
=
res
;
let
obj
=
{};
...
...
@@ -97,13 +110,17 @@ const InitDataBase = props => {
}
};
},
[]);
// 弹出模态框
const
handleShowModal
=
(
key
,
value
)
=>
{
setModalVisible
({
...
modalVisible
,
[
key
]:
value
});
};
// 获取数据库连接记录
const
getConnRecordData
=
()
=>
{
setTableLoading
(
true
);
getConnRecordNew
()
.
then
(
resnew
=>
{
setTableLoading
(
false
);
if
(
resnew
.
code
==
0
)
{
if
(
resnew
.
code
==
=
0
)
{
let
res
=
resnew
.
data
;
let
arr
=
res
.
map
((
item
,
index
)
=>
{
item
.
key
=
index
;
...
...
@@ -122,7 +139,7 @@ const InitDataBase = props => {
setInitLoading
(
true
);
getInitDBLogNew
()
.
then
(
res
=>
{
if
(
res
.
code
==
0
)
{
if
(
res
.
code
==
=
0
)
{
if
(
res
.
data
.
content
)
{
setInitLoading
(
false
);
let
arr
=
[];
...
...
@@ -200,7 +217,7 @@ const InitDataBase = props => {
})
.
then
(
resnew
=>
{
setCardLoading
(
false
);
if
(
resnew
.
code
==
0
)
{
if
(
resnew
.
code
==
=
0
)
{
// setUpData(upData + 1);
getConnRecordData
();
notification
.
success
({
...
...
@@ -301,7 +318,7 @@ const InitDataBase = props => {
dirName
:
val
,
})
.
then
(
res
=>
{
if
(
res
.
code
==
0
)
{
if
(
res
.
code
==
=
0
)
{
notification
.
success
({
message
:
'提示'
,
duration
:
3
,
...
...
@@ -322,7 +339,7 @@ const InitDataBase = props => {
// 展示修改描述
const
changeDesc
=
val
=>
{
setDesc
(
val
);
setModalVisible
(
true
);
handleShowModal
(
'describeVisible'
,
true
);
};
const
descChange
=
e
=>
{
const
{
value
}
=
e
.
target
;
...
...
@@ -343,23 +360,6 @@ const InitDataBase = props => {
const
modalOkCallback
=
()
=>
{
const
obj
=
form
.
getFieldsValue
();
// 更新描述
// updateConnDesc({
// _version: 9999,
// _dc: new Date().getTime(),
// ip: obj.ip,
// dbName: obj.dbName,
// userName: obj.userName,
// password: obj.password,
// desc,
// })
// .then(res => {
// setModalVisible(false);
// setUpData(upData + 1);
// })
// .catch(err => {
// console.error(err);
// setModalVisible(false);
// });
updateConnDescNew
({
ip
:
obj
.
ip
,
dbName
:
obj
.
dbName
,
...
...
@@ -368,13 +368,13 @@ const InitDataBase = props => {
desc
,
})
.
then
(
res
=>
{
setModalVisible
(
false
);
handleShowModal
(
'describeVisible'
,
false
);
// setUpData(upData + 1);
getConnRecordData
();
})
.
catch
(
err
=>
{
console
.
error
(
err
);
setModalVisible
(
false
);
handleShowModal
(
'describeVisible'
,
false
);
});
};
// 删除数据库连接记录
...
...
@@ -407,6 +407,177 @@ const InitDataBase = props => {
console
.
error
(
err
);
});
};
// 获取数据库初始化回显列表
const
getInitList
=
()
=>
{
setInitList
([]);
handleShowModal
(
'initVisible'
,
true
);
setInitLoading
(
true
);
let
obj
=
form
.
getFieldsValue
();
let
req1
=
GetProductList
();
let
req2
=
GetDbProduct
({
...
obj
});
Promise
.
all
([
req1
,
req2
])
.
then
(
res
=>
{
if
(
res
[
1
].
code
!==
0
||
res
[
0
].
code
!==
0
)
{
setInitLoading
(
false
);
notification
.
error
({
message
:
'提示'
,
duration
:
3
,
description
:
'连接失败'
,
});
return
;
}
setDbExists
(
res
[
1
].
DBExists
);
let
fileList
=
res
[
0
].
data
?
res
[
0
].
data
:
[];
let
dataList
=
res
[
1
].
data
.
Product
?
res
[
1
].
data
.
Product
:
[];
// 没有库或者dataList为[]直接用fileList作为回显
if
(
!
res
[
1
].
data
.
DBExists
||
dataList
.
length
===
0
)
{
setInitList
(
fileList
);
setInitLoading
(
false
);
return
;
}
let
mapList
=
new
Map
();
// 通过map给数据库中中的节点中的key的值当作key,checkVersion当作value进行存储
dataList
.
forEach
(
element
=>
{
// 存入一级目录是否有选中项的key
mapList
.
set
(
element
.
key
,
element
.
check
);
element
.
modularSolutions
.
forEach
(
item
=>
{
// 存入二级目录对应的选中的checkVersion跟check
mapList
.
set
(
item
.
key
,
{
checkVersion
:
item
.
checkVersion
,
check
:
item
.
check
,
});
item
.
functionrSolutions
.
forEach
(
val
=>
{
// 存入三级目录对应的选中的checkVersion跟check
mapList
.
set
(
val
.
key
,
val
.
isCheck
);
});
});
});
fileList
.
forEach
(
element
=>
{
// 根据key来获取第一级目录tab的check
let
tabKey
=
mapList
.
get
(
element
.
key
);
element
.
check
=
tabKey
===
undefined
?
null
:
tabKey
;
element
.
modularSolutions
.
forEach
(
item
=>
{
let
mapCheckVersion
=
mapList
.
get
(
item
.
key
);
// 根据key值去匹配对应的checkVersion
item
.
checkVersion
=
mapCheckVersion
.
checkVersion
===
undefined
?
null
:
mapCheckVersion
.
checkVersion
;
// 根据key值去匹配对应的二级目录的check
item
.
check
=
mapCheckVersion
.
check
===
undefined
?
null
:
mapCheckVersion
.
check
;
item
.
functionrSolutions
.
forEach
(
val
=>
{
// 根据三级目录对应的选中key匹配isCheck
let
isCheck
=
mapList
.
get
(
val
.
key
);
val
.
isCheck
=
isCheck
===
undefined
?
null
:
isCheck
;
});
});
});
console
.
log
(
fileList
);
setInitList
(
fileList
);
setInitLoading
(
false
);
})
.
catch
(()
=>
{
notification
.
error
({
message
:
'提示'
,
duration
:
3
,
description
:
'连接失败'
,
});
setInitLoading
(
false
);
});
};
// 初始化产品列表渲染
const
renderInitListItem
=
(
tabItem
,
index
)
=>
(
<
TabPane
tab=
{
tabItem
.
productName
}
key=
{
index
}
>
<
div
className=
{
styles
.
tabContainer
}
>
{
tabItem
.
modularSolutions
.
map
((
item
,
num
)
=>
(
<
React
.
Fragment
key=
{
item
.
key
}
>
{
item
.
functionrSolutions
.
length
>
0
?
(
<
RadioBox
radioTitle=
{
item
.
modularName
}
radioOptions=
{
item
.
functionrSolutions
}
currentVal=
{
item
.
checkVersion
}
currentIndex=
{
{
tabIndex
:
index
,
radioIndex
:
num
}
}
callBack=
{
radioChange
}
/>
)
:
null
}
</
React
.
Fragment
>
))
}
</
div
>
</
TabPane
>
);
// 单选选后的回调,改变数据
const
radioChange
=
(
index
,
value
)
=>
{
setInitList
(
val
=>
{
const
list
=
JSON
.
parse
(
JSON
.
stringify
(
val
));
// 修改一级菜单的check字段
list
[
index
.
tabIndex
].
check
=
true
;
// 修改二级菜单的check字段
list
[
index
.
tabIndex
].
modularSolutions
[
index
.
radioIndex
].
check
=
true
;
// 修改选中的checkVersion值
list
[
index
.
tabIndex
].
modularSolutions
[
index
.
radioIndex
].
checkVersion
=
value
;
// 修改单选isCheck字段
list
[
index
.
tabIndex
].
modularSolutions
[
index
.
radioIndex
].
functionrSolutions
.
forEach
(
item
=>
{
if
(
item
.
version
===
value
)
{
item
.
isCheck
=
true
;
}
else
{
item
.
isCheck
=
false
;
}
});
return
list
;
});
};
const
initDatabasePro
=
()
=>
{
// handleShowModal('versionVisible', true);
let
productSetting
=
initList
;
let
obj
=
form
.
getFieldsValue
();
console
.
log
({
...
obj
,
productSetting
});
// 数据库存在调用编辑接口否则调用新增接口
setInitLoading
(
true
);
if
(
dbExists
)
{
InitAddDataBase
({
...
obj
,
productSetting
}).
then
(
res
=>
{
setInitLoading
(
false
);
if
(
res
.
code
===
0
)
{
notification
.
success
({
message
:
'提示'
,
duration
:
3
,
description
:
'操作成功'
,
});
handleShowModal
(
'initVisible'
,
false
);
}
else
{
notification
.
error
({
message
:
'提示'
,
duration
:
15
,
description
:
res
.
msg
,
});
}
});
return
;
}
InitAddDataBase
({
...
obj
,
productSetting
}).
then
(
res
=>
{
setInitLoading
(
false
);
if
(
res
.
code
===
0
)
{
notification
.
success
({
message
:
'提示'
,
duration
:
3
,
description
:
'操作成功'
,
});
handleShowModal
(
'initVisible'
,
false
);
}
else
{
notification
.
error
({
message
:
'提示'
,
duration
:
15
,
description
:
res
.
msg
,
});
}
});
};
const
columns
=
[
{
title
:
'服务器名或IP地址'
,
...
...
@@ -547,17 +718,19 @@ const InitDataBase = props => {
</
Button
>
</
Space
>
<
Space
>
<
Popconfirm
{
/*
<Popconfirm
title="是否执行数据库初始化"
okText="确认"
cancelText="取消"
onConfirm={() => {
initClick();
}}
>
<
Button
type=
"primary"
>
数据库初始化
</
Button
>
</
Popconfirm
>
{
defaultSqlDir
&&
(
> */
}
<
Button
type=
"primary"
onClick=
{
()
=>
getInitList
()
}
>
数据库初始化
</
Button
>
{
/* </Popconfirm> */
}
{
/* {defaultSqlDir && (
<Select
placeholder="请选择解决方案"
style={{ width: '200px' }}
...
...
@@ -578,7 +751,7 @@ const InitDataBase = props => {
);
})}
</Select>
)
}
)}
*/
}
</
Space
>
</
Space
>
</
div
>
...
...
@@ -653,9 +826,9 @@ const InitDataBase = props => {
<
Modal
title=
"修改链接描述"
visible=
{
modalVisible
}
visible=
{
modalVisible
.
describeVisible
}
onOk=
{
()
=>
modalOkCallback
()
}
onCancel=
{
()
=>
setModalVisible
(
false
)
}
onCancel=
{
()
=>
handleShowModal
(
'describeVisible'
,
false
)
}
width=
"800px"
bodyStyle=
{
{
minHeight
:
'100px'
,
...
...
@@ -681,6 +854,51 @@ const InitDataBase = props => {
</
Col
>
</
Row
>
</
Modal
>
{
/* 检查版本弹窗 */
}
<
Modal
title=
"版本检查"
visible=
{
modalVisible
.
versionVisible
}
onOk=
{
()
=>
modalOkCallback
()
}
onCancel=
{
()
=>
handleShowModal
(
'versionVisible'
,
false
)
}
>
<
p
>
当前版本运行正常
</
p
>
</
Modal
>
{
/* 初始化选择产品弹窗 */
}
<
Modal
title=
"初始化"
maskClosable=
{
false
}
visible=
{
modalVisible
.
initVisible
}
onCancel=
{
()
=>
handleShowModal
(
'initVisible'
,
false
)
}
footer=
{
[
<
Button
key=
"back"
onClick=
{
()
=>
handleShowModal
(
'initVisible'
,
false
)
}
>
取消
</
Button
>,
<
Popconfirm
placement=
"topLeft"
title=
"是否确认初始化"
onConfirm=
{
initDatabasePro
}
okText=
"确认"
key=
"submit"
cancelText=
"取消"
>
<
Button
type=
"primary"
loading=
{
initLoading
}
>
确认
</
Button
>
</
Popconfirm
>,
]
}
width=
{
900
}
>
<
Spin
spinning=
{
initLoading
}
>
<
div
className=
{
styles
.
cardContainer
}
>
<
Tabs
defaultActiveKey=
"1"
type=
"card"
tabBarGutter=
{
-
1
}
>
{
initList
.
map
((
item
,
index
)
=>
renderInitListItem
(
item
,
index
))
}
</
Tabs
>
</
div
>
</
Spin
>
</
Modal
>
</
PageContainer
>
</>
);
...
...
src/pages/database/InitDataBase.less
View file @
fd923672
.tableTitle{
.tableTitle
{
font-size: 16px;
}
.mgTop20{
.mgTop20
{
margin-top: 20px !important;
}
.tCenter{
.tCenter
{
text-align: center;
}
.decsBox{
.decsBox
{
height: 32px;
line-height: 32px;
}
.btnBox {
display: flex !important;
justify-content: space-between;
}
\ No newline at end of file
}
.ant-modal-header {
height: 70px;
}
.cardContainer {
margin-top: 10px;
border: 1px solid #ecf0fa;
border-top: none;
.ant-tabs-nav {
background-color: #f4f6fc;
.ant-tabs-tab {
background-color: transparent;
border: none;
border-top: 2px solid transparent;
box-sizing: content-box;
}
.ant-tabs-tab-active {
border: none;
background-color: #fff;
border-top: 2px solid #1685ff;
}
}
.tabContainer {
padding-left: 20px;
box-sizing: border-box;
}
}
src/pages/mobileConfig/SiteConfig.jsx
View file @
fd923672
...
...
@@ -50,7 +50,7 @@ const SiteConfig = props => {
let
obj
=
{};
let
arr
=
Object
.
keys
(
form
.
getFieldsValue
());
arr
.
map
(
k
=>
{
obj
[
k
]
=
res
[
k
];
obj
[
k
]
=
res
.
data
[
k
];
});
form
.
setFieldsValue
(
obj
);
})
...
...
@@ -67,14 +67,10 @@ const SiteConfig = props => {
setLoading
(
true
);
const
obj
=
{
...
form
.
getFieldsValue
()
};
let
params
=
{
...
obj
,
mode
:
'single'
,
client
:
clientName
};
editWebsite
(
params
,
{
headers
:
{
'content-type'
:
'application/x-www-form-urlencggoded;charset=UTF-8'
,
},
})
editWebsite
(
params
)
.
then
(
res
=>
{
setLoading
(
false
);
if
(
res
.
success
)
{
if
(
res
.
code
===
0
)
{
submitCallback
(
obj
.
title
);
notification
.
success
({
message
:
'提示'
,
...
...
src/pages/mobileConfig/addConfig.jsx
View file @
fd923672
...
...
@@ -43,14 +43,10 @@ const AddConfig = props => {
setLoading
(
true
);
const
obj
=
{
...
form
.
getFieldsValue
()
};
let
params
=
{
...
obj
,
mode
:
'single'
};
addWebsite
(
params
,
{
headers
:
{
'content-type'
:
'application/x-www-form-urlencggoded;charset=UTF-8'
,
},
})
addWebsite
(
params
)
.
then
(
res
=>
{
setLoading
(
false
);
if
(
res
.
code
===
0
)
{
if
(
res
.
code
===
0
)
{
addCallback
(
params
.
title
);
notification
.
success
({
message
:
'提示'
,
...
...
src/pages/mobileConfig/index.js
View file @
fd923672
...
...
@@ -141,7 +141,7 @@ const MobileConfigPage = props => {
})
.
then
(
res
=>
{
setLoading
(
false
);
if
(
res
.
success
)
{
if
(
res
.
code
===
0
)
{
setMiniTitle
(
''
);
setTimeout
(()
=>
{
setFlag
(
flag
+
1
);
...
...
src/pages/mobileConfig/menuconfig/miniMenu.jsx
View file @
fd923672
...
...
@@ -303,7 +303,7 @@ const MiniMenu = props => {
})
.
then
(
res
=>
{
setSubmitLoading
(
false
);
if
(
res
.
success
)
{
if
(
res
.
code
===
0
)
{
setAddVisible
(
false
);
setAddTwoVisible
(
false
);
setFlag
(
flag
+
1
);
...
...
src/pages/userCenter/roleManage/RoleManage.jsx
View file @
fd923672
...
...
@@ -476,20 +476,13 @@ const SiteManage = () => {
};
const
handleCommit
=
results
=>
{
setBtnLoading
(
true
);
setMenuToRole
(
qs
.
stringify
({
roleID
,
menuNameList
:
String
(
results
.
flat
()),
}),
{
headers
:
{
'content-type'
:
'application/x-www-form-urlencggoded;charset=UTF-8'
,
},
},
)
setMenuToRole
({
roleID
:
Number
(
roleID
),
menuIdList
:
String
(
results
.
flat
()),
})
.
then
(
res
=>
{
setBtnLoading
(
false
);
if
(
res
.
msg
===
'Ok'
)
{
if
(
res
.
code
===
0
)
{
setValueList
([...
results
.
flat
()]);
notification
.
success
({
message
:
'提示'
,
...
...
src/pages/userCenter/siteManage/EditModal.jsx
View file @
fd923672
...
...
@@ -18,7 +18,7 @@ const EditModal = props => {
editStation
({
stationName
:
res
.
stationName
,
description
:
res
.
description
,
stationID
:
stationObj
,
stationID
:
stationObj
.
id
,
})
.
then
(
res
=>
{
setLoading
(
false
);
...
...
src/pages/userCenter/siteManageV2/siteManage.jsx
View file @
fd923672
...
...
@@ -70,6 +70,7 @@ const SiteManageV2 = () => {
const
[
treeState
,
setTreeState
]
=
useState
(
true
);
// 树第一次加载
const
[
treeLoading
,
setTreeLoading
]
=
useState
(
false
);
const
[
currentStation
,
setCurrentStation
]
=
useState
(
''
);
// 当前选中站点
const
[
currentStationMsg
,
setCurrentStationMsg
]
=
useState
({});
//当前编辑节点信息
const
[
currentStationOperate
,
setCurrentStationOperate
]
=
useState
(
false
)
const
[
flag
,
setFlag
]
=
useState
(
1
);
//操作标致触发界面刷新
const
[
dataList
,
setdataList
]
=
useState
([]);
//当前站点对应的分页用户列表
...
...
@@ -131,7 +132,10 @@ const SiteManageV2 = () => {
//编辑当前站点
const
editorSite
=
(
e
,
recode
)
=>
{
e
.
stopPropagation
();
setCurrentStation
(
recode
.
id
);
// console.log(recode);
// 保存编辑回显信息
setCurrentStationMsg
(
recode
);
// setCurrentStation(recode.id);
handleShowModal
(
'editVisible'
,
true
);
}
// 重新渲染树
...
...
@@ -422,15 +426,10 @@ const SiteManageV2 = () => {
description
:
'请至少选择选择一个用户!'
,
});
chooseUserToStation
(
qs
.
stringify
(
{
{
userList
:
String
(
result
.
flat
()),
stationID
:
currentStation
,
}),
{
headers
:
{
'content-type'
:
'application/x-www-form-urlencggoded;charset=UTF-8'
,
},
},
}
)
.
then
(
res
=>
{
handleShowModal
(
'btnLoading'
,
false
);
...
...
@@ -537,7 +536,7 @@ const SiteManageV2 = () => {
/>
<
EditModal
visible=
{
visibleParams
.
editVisible
}
stationObj=
{
currentStation
}
stationObj=
{
currentStation
Msg
}
onCancel=
{
()
=>
handleShowModal
(
'editVisible'
,
false
)
}
confirmModal=
{
editModal
}
/>
...
...
src/pages/webConfig/menuconfig/AddForm.jsx
View file @
fd923672
...
...
@@ -96,6 +96,7 @@ const AddForm = props => {
rules=
{
[
{
required
:
true
,
// pattern: /^[^\s]*$/,
message
:
'请输入功能路径'
,
},
]
}
...
...
src/pages/webConfig/menuconfig/webMenu.jsx
View file @
fd923672
...
...
@@ -263,10 +263,11 @@ const MiniMenu = props => {
};
// 新增提交的回调
const
submitCallback
=
(
prop
,
item
)
=>
{
console
.
log
(
subSystemValue
,
'subSystemValue'
);
setSubmitLoading
(
true
);
let
baseUrl
=
handleGeturl
(
prop
.
imageUrl
);
let
obj
=
{
...
prop
,
baseUrl
};
const
parentID
=
item
.
menuID
?
item
.
menuID
:
-
1
;
const
parentID
=
item
.
menuID
?
Number
(
item
.
menuID
)
:
-
1
;
addWebMenu
({
_dc
:
Date
.
now
(),
parentID
,
...
...
@@ -307,7 +308,7 @@ const MiniMenu = props => {
obj
.
relatedRoleList
=
String
(
roleList
)
||
''
;
editWebMenu
({
_dc
:
Date
.
now
(),
menuID
,
menuID
:
Number
(
menuID
)
,
// subSystemValue,
...
obj
,
})
...
...
@@ -339,12 +340,12 @@ const MiniMenu = props => {
// 新接口改为editWebMenu 原来为pEditWebMenu
editWebMenu
({
_dc
:
Date
.
now
(),
menuID
,
menuID
:
Number
(
menuID
)
,
// subSystemValue,
...
obj
,
product
:
null
,
baseUrl
:
null
,
hideInMenu
:
null
,
hideInMenu
:
false
,
})
.
then
(
res
=>
{
setLoading
(
false
);
...
...
src/services/database/api.js
View file @
fd923672
...
...
@@ -203,3 +203,13 @@ export const AddUserAuthSetting = params =>
get
(
`
${
PUBLISH_SERVICE
}
/WebSite/AddUserAuthSetting`
,
params
);
export
const
GetUserAuthSet
=
params
=>
get
(
`
${
PUBLISH_SERVICE
}
/WebSite/GetUserAuthSet`
,
params
);
// 获取产品列表
export
const
GetProductList
=
params
=>
get
(
`
${
PUBLISH_SERVICE
}
/DBManager/GetProductList`
,
params
);
// 获取产品方案配置
export
const
GetDbProduct
=
params
=>
post
(
`
${
PUBLISH_SERVICE
}
/DBManager/GetDbProduct`
,
params
);
// 数据库初始化
export
const
InitAddDataBase
=
params
=>
post
(
`
${
PUBLISH_SERVICE
}
/DBManager/InitAddDataBase`
,
params
);
src/services/mobileConfig/api.js
View file @
fd923672
...
...
@@ -13,7 +13,7 @@ export const miniAppSiteTree = params =>
* title:'名称'
*/
export
const
getWebsite
=
params
=>
get
(
`
${
CITY_SERVICE
}
/OMS.svc
/MiniApp_GetWebsite`
,
params
);
get
(
`
${
PUBLISH_SERVICE
}
/WebSite
/MiniApp_GetWebsite`
,
params
);
/**
*
* @param {*} params
...
...
@@ -29,10 +29,10 @@ export const getWebsite = params =>
"cloudLogin":false
*/
export
const
editWebsite
=
(
params
,
options
)
=>
{
let
strParams
=
JSON
.
stringify
(
params
)
;
let
qsParams
=
qs
.
stringify
({
config
:
strParams
})
;
let
strParams
=
params
;
let
qsParams
=
strParams
;
return
post
(
`
${
CITY_SERVICE
}
/OMS.svc
/MiniApp_EditWebsite?_version=9999`
,
`
${
PUBLISH_SERVICE
}
/WebSite
/MiniApp_EditWebsite?_version=9999`
,
qsParams
,
options
,
);
...
...
@@ -65,7 +65,7 @@ export const getMiniAppModuleTree = params =>
}
*/
export
const
addMenu
=
params
=>
get
(
`
${
CITY_SERVICE
}
/OMS.svc
/MiniApp_AddMenu`
,
params
);
post
(
`
${
PUBLISH_SERVICE
}
/WebSite
/MiniApp_AddMenu`
,
params
);
// 获取菜单详情
/**
...
...
@@ -90,14 +90,14 @@ export const getRoleListPlain = params =>
// 删除小程序
export
const
deleteWebsite
=
params
=>
get
(
`
${
CITY_SERVICE
}
/OMS.svc
/MiniApp_DeleteWebsite`
,
params
);
get
(
`
${
PUBLISH_SERVICE
}
/WebSite
/MiniApp_DeleteWebsite`
,
params
);
// 新增小程序
export
const
addWebsite
=
(
params
,
options
)
=>
{
let
strParams
=
JSON
.
stringify
(
params
);
let
qsParams
=
qs
.
stringify
({
config
:
strParams
});
//
let strParams = JSON.stringify(params);
//
let qsParams = qs.stringify({ config: strParams });
return
post
(
`
${
CITY_SERVICE
}
/OMS.svc
/MiniApp_AddWebsite?_version=9999`
,
qsP
arams
,
`
${
PUBLISH_SERVICE
}
/WebSite
/MiniApp_AddWebsite?_version=9999`
,
p
arams
,
options
,
);
};
...
...
src/services/webConfig/api.js
View file @
fd923672
...
...
@@ -75,12 +75,14 @@ export const addWebMenu = param => {
const
defaultConfig
=
{
pageUrl
:
''
};
// eslint-disable-next-line no-return-assign
Object
.
keys
(
param
).
forEach
(
k
=>
(
defaultConfig
[
k
]
=
param
[
k
]));
return
get
(
`
${
PUBLISH_SERVICE
}
/WebSite/AddMenu?_version=9999`
,
defaultConfig
);
return
post
(
`
${
PUBLISH_SERVICE
}
/WebSite/AddMenu?_version=9999`
,
defaultConfig
,
);
};
export
const
editWebMenu
=
param
=>
// get(`${CITY_SERVICE}/OMS.svc/W4_EditMenu?_version=9999`, param);
get
(
`
${
PUBLISH_SERVICE
}
/WebSite/EditMenu?_version=9999`
,
param
);
post
(
`
${
PUBLISH_SERVICE
}
/WebSite/EditMenu?_version=9999`
,
param
);
export
const
pEditWebMenu
=
param
=>
get
(
`
${
CITY_SERVICE
}
/OMS.svc/P_EditMenu?_version=9999`
,
param
);
...
...
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