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
928cf499
Commit
928cf499
authored
Apr 01, 2021
by
mayongxin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
perf:新增IIS助理服务器配置
parent
7948067a
Pipeline
#25430
skipped with stages
Changes
9
Pipelines
1
Show whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
670 additions
and
255 deletions
+670
-255
ProjectManage.jsx
...tformCenter/messageManage/projectManage/ProjectManage.jsx
+142
-162
EditModal.jsx
...nter/messageManage/projectManage/components/EditModal.jsx
+227
-30
DayOfWeekSelect.jsx
...ojectManage/components/IISAgentConfig/DayOfWeekSelect.jsx
+4
-1
HourOfDaySelect.jsx
...ojectManage/components/IISAgentConfig/HourOfDaySelect.jsx
+12
-3
VisibleIISAgentConfig.jsx
...anage/components/IISAgentConfig/VisibleIISAgentConfig.jsx
+174
-27
VisibleIISAgentConfig.less
...nage/components/IISAgentConfig/VisibleIISAgentConfig.less
+18
-1
VisibleRoleModal.jsx
...projectManage/components/RolseSelect/VisibleRoleModal.jsx
+45
-12
VisibleRoleModal.less
...rojectManage/components/RolseSelect/VisibleRoleModal.less
+41
-16
messagemanage.jsx
src/services/platform/messagemanage.jsx
+7
-3
No files found.
src/pages/platformCenter/messageManage/projectManage/ProjectManage.jsx
View file @
928cf499
...
...
@@ -6,7 +6,8 @@ import {
Input
,
Button
,
Select
,
Popconfirm
Popconfirm
,
message
}
from
'antd'
;
import
{
PlusCircleOutlined
}
from
'@ant-design/icons'
;
...
...
@@ -14,12 +15,12 @@ const { Search } = Input;
const
{
Option
}
=
Select
;
import
EditModal
from
'./components/EditModal'
import
VisibleRoleModal
from
'./components/RolseSelect/VisibleRoleModal'
import
{
GetMessageConfigList
,
UpdateMessageConfig
,
InsertMessageConfig
,
DeleteMessageConfig
}
from
'@/services/platform/messagemanage'
import
{
GetMessageConfigList
,
UpdateMessageConfig
,
InsertMessageConfig
,
DeleteMessageConfig
,
GetMsgTypeList
,
DeleteIISAgentConfig
}
from
'@/services/platform/messagemanage'
import
styles
from
'./ProjectManage.less'
const
ProjectManage
=
()
=>
{
const
[
visibleParams
,
setvisibleParams
]
=
useState
({
modal
Visible
:
false
,
// 新增弹窗
add
Visible
:
false
,
// 新增弹窗
delVisible
:
false
,
// 删除弹窗
editVisible
:
false
,
// 修改弹窗
spinLoading
:
false
,
// 加载弹窗
...
...
@@ -27,11 +28,14 @@ const ProjectManage = () => {
loading
:
false
,
checkBoxLoading
:
false
,
});
const
[
currentType
,
setCurrentType
]
=
useState
(
"全部"
)
const
[
currentName
,
setCurrentName
]
=
useState
(
"全部"
)
const
[
messageTypes
,
setMessageTypes
]
=
useState
([])
const
[
currentTemplate
,
setCurrentTempalte
]
=
useState
({});
const
[
flag
,
setFlag
]
=
useState
(
0
)
const
[
pageIndex
,
setPageIndex
]
=
useState
(
0
)
const
[
pageSize
,
setPageSize
]
=
useState
(
10
)
const
[
dataList
,
setDataList
]
=
useState
([])
const
[
pageIndex
,
setPageIndex
]
=
useState
(
0
)
const
[
pageSize
,
setPageSize
]
=
useState
(
10
)
const
[
dataList
,
setDataList
]
=
useState
([])
const
columns
=
[
{
title
:
'方案名称'
,
...
...
@@ -58,6 +62,9 @@ const ProjectManage = () => {
title
:
'是否启用'
,
dataIndex
:
'is_use'
,
key
:
'is_use'
,
render
:
(
text
,
record
)
=>
(
<
div
>
{
text
===
"0"
?
"否"
:
"是"
}
</
div
>
)
},
{
title
:
'操作'
,
...
...
@@ -86,140 +93,33 @@ const ProjectManage = () => {
编辑
</
Button
>
<
div
onClick=
{
e
=>
e
.
stopPropagation
()
}
>
{
record
.
type
!=
"通用报警"
&&
record
.
type
!=
"工单提醒"
&&
record
.
type
!=
"系统通知"
&&
(<
div
onClick=
{
e
=>
e
.
stopPropagation
()
}
>
<
Popconfirm
title=
"是否删除该连接的历史记录
?"
title=
"是否删除方案
?"
okText=
"确认"
cancelText=
"取消"
onConfirm=
{
()
=>
{
//delConfirm(record);
DeleteProject
(
record
)
}
}
>
<
Button
size=
"small"
danger
>
删除
</
Button
>
</
Popconfirm
>
</
div
>
</
div
>)
}
</
Space
>
),
},
];
const
data
=
[
{
key
:
'1'
,
name
:
"工单提醒"
,
type
:
"工单办理"
,
send_pattern
:
"平台弹框"
,
receive_person
:
"推送组"
,
is_use
:
"是"
},
{
key
:
'2'
,
name
:
"工单提醒"
,
type
:
"工单办理"
,
send_pattern
:
"平台弹框"
,
receive_person
:
"推送组"
,
is_use
:
"是"
},
{
key
:
'3'
,
name
:
"工单提醒"
,
type
:
"工单办理"
,
send_pattern
:
"平台弹框"
,
receive_person
:
"推送组"
,
is_use
:
"是"
},
{
key
:
'4'
,
name
:
"工单提醒"
,
type
:
"工单办理"
,
send_pattern
:
"平台弹框"
,
receive_person
:
"推送组"
,
is_use
:
"是"
},
{
key
:
'5'
,
name
:
"工单提醒"
,
type
:
"工单办理"
,
send_pattern
:
"平台弹框"
,
receive_person
:
"推送组"
,
is_use
:
"是"
},
{
key
:
'6'
,
name
:
"工单提醒"
,
type
:
"工单办理"
,
send_pattern
:
"平台弹框"
,
receive_person
:
"推送组"
,
is_use
:
"是"
},
{
key
:
'7'
,
name
:
"工单提醒"
,
type
:
"工单办理"
,
send_pattern
:
"平台弹框"
,
receive_person
:
"推送组"
,
is_use
:
"是"
},
{
key
:
'8'
,
name
:
"工单提醒"
,
type
:
"工单办理"
,
send_pattern
:
"平台弹框"
,
receive_person
:
"推送组"
,
is_use
:
"是"
},
{
key
:
'9'
,
name
:
"工单提醒"
,
type
:
"工单办理"
,
send_pattern
:
"平台弹框"
,
receive_person
:
"推送组"
,
is_use
:
"是"
},
{
key
:
'10'
,
name
:
"工单提醒"
,
type
:
"工单办理"
,
send_pattern
:
"平台弹框"
,
receive_person
:
"推送组"
,
is_use
:
"是"
},
{
key
:
'11'
,
name
:
"工单提醒"
,
type
:
"工单办理"
,
send_pattern
:
"平台弹框"
,
receive_person
:
"推送组"
,
is_use
:
"是"
},
{
key
:
'12'
,
name
:
"工单提醒"
,
type
:
"工单办理"
,
send_pattern
:
"平台弹框"
,
receive_person
:
"推送组"
,
is_use
:
"是"
},
{
key
:
'13'
,
name
:
"工单提醒"
,
type
:
"工单办理"
,
send_pattern
:
"平台弹框"
,
receive_person
:
"推送组"
,
is_use
:
"是"
},
]
const
placeholder
=
'请输入方案名称'
const
handleSearch
=
()
=>
{
const
handleSearch
=
(
value
)
=>
{
GetMessageList
({
pageSize
:
10
,
pageIndex
:
0
,
search
:
value
})
}
const
changeDesc
=
(
record
)
=>
{
...
...
@@ -227,62 +127,144 @@ const ProjectManage = () => {
handleShowModal
(
"editVisible"
,
true
)
}
const
TestDesc
=
(
record
)
=>
{
console
.
log
(
record
,
"选中的方案"
)
// setCurrentTempalte(record)
// handleShowModal("editVisible", true)
}
const
DeleteProject
=
(
record
)
=>
{
let
agen
=
record
.
item
.
AgentConfig
let
config
=
record
.
item
.
MessageConfig
if
(
agen
)
{
DeleteIISAgentConfig
({
agentName
:
config
.
MsgType
}).
then
(
res
=>
{
if
(
res
===
0
)
{
DeleteMessageConfig
({
id
:
config
.
ID
}).
then
(
res3
=>
{
if
(
res3
.
code
===
0
)
{
message
.
success
(
"删除方案成功"
)
setFlag
(
flag
+
1
)
}
}
)
}
}
)
}
else
{
DeleteMessageConfig
({
id
:
config
.
ID
}).
then
(
res3
=>
{
if
(
res3
.
code
===
0
){
message
.
success
(
"删除方案成功"
)
setFlag
(
flag
+
1
)
}
}
)
}
}
const
handleReset
=
()
=>
{
setCurrentType
(
"全部"
)
setCurrentName
(
"全部"
)
GetMessageList
({
pageSize
:
10
,
pageIndex
:
0
})
}
// 弹出模态框
const
handleShowModal
=
(
key
,
value
)
=>
{
setvisibleParams
({
...
visibleParams
,
[
key
]:
value
});
};
const
editModal
=
()
=>
{
handleShowModal
(
"editVisbile"
,
false
)
setFlag
(
flag
+
1
)
}
const
bddModal
=
()
=>
{
handleShowModal
(
"addVisbile"
,
false
)
setFlag
(
flag
+
1
)
}
const
onAddClick
=
()
=>
{
setCurrentTempalte
({})
handleShowModal
(
"addVisible"
,
true
)
}
const
onTypeChange
=
(
value
)
=>
{
if
(
value
==
"全部"
)
{
setCurrentType
(
""
)
GetMessageList
({
pageIndex
:
pageIndex
,
pageSize
:
10
})
}
else
{
GetMessageList
({
pageIndex
:
pageIndex
,
pageSize
:
10
,
infoType
:
value
,
msgType
:
currentName
==
"全部"
?
""
:
currentName
})
setCurrentType
(
value
)
}
}
const
onNameChange
=
(
value
)
=>
{
if
(
value
==
"全部"
)
{
setCurrentName
(
""
)
GetMessageList
({
pageIndex
:
pageIndex
,
pageSize
:
10
})
}
else
{
GetMessageList
({
pageIndex
:
pageIndex
,
pageSize
:
10
,
msgType
:
value
,
infoType
:
currentType
==
"全部"
?
""
:
currentType
})
setCurrentName
(
value
)
}
}
useEffect
(()
=>
{
GetMessageConfigList
({
pageIndex
:
pageIndex
,
pageSize
:
10
,
}).
then
(
GetMsgTypeList
().
then
(
res
=>
{
if
(
res
.
code
===
0
)
{
setMessageTypes
(
res
.
data
)
}
}
)
},
[])
useEffect
(()
=>
{
GetMessageList
({
pageIndex
:
pageIndex
,
pageSize
:
10
})
},
[
flag
])
const
GetMessageList
=
(
params
)
=>
{
GetMessageConfigList
(
params
).
then
(
res
=>
{
let
mesList
=
[]
if
(
res
.
code
===
0
)
{
res
.
MessageConfigModels
.
map
((
item
)
=>
{
if
(
res
.
code
===
0
)
{
res
.
data
.
MessageConfigModels
.
map
((
item
)
=>
{
mesList
.
push
({
name
:
item
.
ThemeName
,
type
:
item
.
MesType
,
send_pattern
:
item
.
PushMode
,
receive_person
:
item
.
Pusher
,
is_use
:
item
.
IsStarted
name
:
item
.
MessageConfig
.
MsgType
,
type
:
item
.
MessageConfig
.
ThemeName
,
send_pattern
:
item
.
MessageConfig
.
PushMode
,
receive_person
:
item
.
MessageConfig
.
PushGroup
,
is_use
:
item
.
MessageConfig
.
IsStarted
,
...
item
.
MessageConfig
,
item
:
item
})
})
setDataList
(
mesList
)
}
}
)
},
[
flag
])
}
return
(
<
div
className=
{
styles
.
project_container
}
>
<
div
className=
{
styles
.
operate_bar
}
>
<
div
className=
{
styles
.
template_type
}
>
<
div
className=
{
styles
.
title
}
>
方案类型
</
div
>
<
Select
placeholder=
"请选择方案类型!"
defaultValue=
"0"
style=
{
{
width
:
"150px"
}
}
>
<
Option
value=
"
0
"
>
全部
</
Option
>
<
Option
value=
"
1
"
>
监控报警
</
Option
>
<
Option
value=
"
2
"
>
工单办理
</
Option
>
<
Option
value=
"
3
"
>
平台公告
</
Option
>
<
Option
value=
"
4
"
>
定时推送
</
Option
>
<
Select
placeholder=
"请选择方案类型!"
defaultValue=
{
currentType
}
style=
{
{
width
:
"150px"
}
}
onChange=
{
onTypeChange
}
>
<
Option
value=
"
全部
"
>
全部
</
Option
>
<
Option
value=
"
监控报警
"
>
监控报警
</
Option
>
<
Option
value=
"
工单办理
"
>
工单办理
</
Option
>
<
Option
value=
"
平台公告
"
>
平台公告
</
Option
>
<
Option
value=
"
定时推送
"
>
定时推送
</
Option
>
</
Select
>
</
div
>
<
div
className=
{
styles
.
template_type
}
>
<
div
className=
{
styles
.
title
}
>
方案名称
</
div
>
<
Select
placeholder=
"请选择方案名称!"
defaultValue=
"0"
style=
{
{
width
:
"150px"
}
}
>
<
Option
value=
"0"
>
全部
</
Option
>
<
Option
value=
"1"
>
GCK简报
</
Option
>
<
Option
value=
"2"
>
GCK运行日报
</
Option
>
<
Option
value=
"3"
>
二供简报
</
Option
>
<
Option
value=
"4"
>
消息提醒
</
Option
>
<
Select
placeholder=
"请选择方案名称!"
defaultValue=
{
currentName
}
style=
{
{
width
:
"150px"
}
}
onChange=
{
onNameChange
}
>
<
Option
value=
"全部"
>
全部
</
Option
>
{
messageTypes
.
map
((
item
,
idx
)
=>
{
return
(
<
Option
key=
{
idx
}
value=
{
item
}
>
{
item
}
</
Option
>
)
})
}
</
Select
>
</
div
>
<
div
className=
{
styles
.
fast_search
}
>
...
...
@@ -296,13 +278,13 @@ const ProjectManage = () => {
style=
{
{
width
:
"300px"
}
}
/>
</
div
>
<
Button
type=
"primary"
>
重置
</
Button
>
<
Button
type=
"primary"
onClick=
{
handleReset
}
>
重置
</
Button
>
<
Button
type=
"primary"
style=
{
{
marginLeft
:
"10px"
}
}
icon=
{
<
PlusCircleOutlined
/>
}
>
新增
</
Button
>
<
Button
type=
"primary"
style=
{
{
marginLeft
:
"10px"
}
}
icon=
{
<
PlusCircleOutlined
/>
}
onClick=
{
onAddClick
}
>
新增
</
Button
>
</
div
>
<
div
className=
{
styles
.
list_view
}
>
<
Table
columns=
{
columns
}
dataSource=
{
data
}
pagination=
{
{
pageSize
:
'10'
}
}
/>
<
Table
columns=
{
columns
}
dataSource=
{
data
List
}
pagination=
{
{
pageSize
:
'10'
}
}
/>
</
div
>
<
EditModal
visible=
{
visibleParams
.
editVisible
}
...
...
@@ -310,14 +292,12 @@ const ProjectManage = () => {
onCancel=
{
()
=>
handleShowModal
(
'editVisible'
,
false
)
}
confirmModal=
{
editModal
}
/>
{
/* <VisibleRoleModal
visible={true}
template={currentTemplate}
onCancel={() => handleShowModal('editVisible', false)}
confirmModal={editModal}
/> */
}
<
EditModal
visible=
{
visibleParams
.
addVisible
}
template=
{
{}
}
onCancel=
{
()
=>
handleShowModal
(
'addVisible'
,
false
)
}
confirmModal=
{
bddModal
}
/>
</
div
>
)
}
...
...
src/pages/platformCenter/messageManage/projectManage/components/EditModal.jsx
View file @
928cf499
import
React
,
{
useState
,
useEffect
,
useRef
}
from
'react'
import
SiteModal
from
'@/components/Modal/SiteModa'
;
import
{
Form
,
Input
,
notification
,
Select
,
Checkbox
}
from
'antd'
import
{
Form
,
Input
,
notification
,
Select
,
Checkbox
,
message
}
from
'antd'
import
BaseForm
from
'@/components/BaseForm/index'
;
import
{
Switch
}
from
'react-router'
;
import
{
iteratee
}
from
'lodash'
;
...
...
@@ -8,6 +8,10 @@ import styles from './EditModal.less';
import
v
from
'voca'
;
import
VisibleRoleModal
from
'./RolseSelect/VisibleRoleModal'
import
VisibleIISAgentConfig
from
'./IISAgentConfig/VisibleIISAgentConfig'
import
{
GetMessageTemplate
}
from
'@/services/platform/messagemanage'
import
moment
from
'moment'
import
{
UpdateMessageConfig
,
InsertMessageConfig
,
AddIISAgentConfig
}
from
'@/services/platform/messagemanage'
const
{
Item
}
=
Form
;
const
EditModal
=
props
=>
{
...
...
@@ -16,17 +20,188 @@ const EditModal = props => {
const
[
form
]
=
Form
.
useForm
();
const
[
loading
,
setLoading
]
=
useState
(
false
);
const
[
isStart
,
setIsStart
]
=
useState
(
false
);
const
[
IISConfig
,
setIISConfig
]
=
useState
(
null
)
const
{
template
,
confirmModal
}
=
props
const
[
currentTrench
,
setCurrentTrench
]
=
useState
({
isMessageShow
:
false
,
isAPPShow
:
false
,
isWEBShow
:
false
,
isWXShow
:
false
})
const
formEntity
=
useRef
(
null
);
const
plainOptions
=
[
'APP'
,
'微信'
,
'WEB'
,
'短信'
];
const
plainOptions
=
[
'平台弹框'
,
'短信推送'
,
'公众号推送'
];
const
[
APP_ITEMS
,
setAPP_ITEMS
]
=
useState
([])
const
[
WEB_ITEMS
,
setWEB_ITEMS
]
=
useState
([])
const
[
WX_ITEMS
,
setWX_ITEMS
]
=
useState
([])
const
[
MES_ITEMS
,
setMES_ITEMS
]
=
useState
([])
useEffect
(()
=>
{
GetMessageTemplate
().
then
(
res
=>
{
if
(
res
.
code
===
0
)
{
let
arr1
=
[]
let
arr2
=
[]
let
arr3
=
[]
let
arr4
=
[]
res
.
data
.
map
((
item
,
index
)
=>
{
if
(
item
.
Type
===
"公众号"
)
{
arr1
.
push
(
item
)
}
if
(
item
.
Type
===
"短信"
)
{
arr2
.
push
(
item
)
}
if
(
item
.
Type
===
"APP"
)
{
arr3
.
push
(
item
)
}
if
(
item
.
Type
===
"WEB"
)
{
arr4
.
push
(
item
)
}
})
setAPP_ITEMS
(
arr3
)
setMES_ITEMS
(
arr2
)
setWX_ITEMS
(
arr1
)
setWEB_ITEMS
(
arr4
)
}
}
)
},
[])
useEffect
(()
=>
{
if
(
template
.
ThemeName
)
{
form
.
setFieldsValue
({
name
:
template
.
MsgType
,
isStart
:
template
.
IsStarted
===
"0"
?
"关闭"
:
"开启"
,
to_person
:
template
.
PushGroup
,
push_plan
:
template
.
MsgType
,
push_mode
:
template
.
PushMode
.
split
(
","
),
app_template
:
template
.
AppTemplateID
,
app_path
:
template
.
AppFunctionPath
,
wx_template
:
parseInt
(
template
.
PublicTemplateID
),
h5_path
:
template
.
PublicPath
,
miniprogram_path
:
template
.
MiniAppRoute
,
web_template
:
template
.
WebTemplateID
,
web_path
:
template
.
WebFunctionPath
,
message_template
:
template
.
MsgTemplateID
,
})
setCurrentTrench
({
isAPPShow
:
template
.
PushMode
.
split
(
","
).
indexOf
(
"平台弹框"
)
>
-
1
?
true
:
false
,
isWXShow
:
template
.
PushMode
.
split
(
","
).
indexOf
(
"公众号推送"
)
>
-
1
?
true
:
false
,
isWEBShow
:
template
.
PushMode
.
split
(
","
).
indexOf
(
"平台弹框"
)
>
-
1
?
true
:
false
,
isMessageShow
:
template
.
PushMode
.
split
(
","
).
indexOf
(
"短信推送"
)
>
-
1
?
true
:
false
,
})
}
},
[
props
])
const
onNameChange
=
(
e
)
=>
{
form
.
setFieldsValue
({
push_plan
:
e
.
target
.
value
})
}
const
onSubmit
=
()
=>
{
console
.
log
(
form
.
getFieldValue
())
let
fv
=
form
.
getFieldValue
()
if
(
template
.
ThemeName
)
{
let
a
=
{
ID
:
template
.
ID
,
ThemeName
:
template
.
ThemeName
,
MsgType
:
fv
.
name
,
PublicTemplateID
:
fv
.
wx_template
,
PublicConfig
:
template
.
PublicConfig
,
PublicPath
:
fv
.
h5_path
,
MsgTemplateName
:
template
.
MsgTemplateName
,
MsgTemplateCode
:
template
.
MsgTemplateCode
,
MsgConfig
:
template
.
MsgConfig
,
MiniAppRoute
:
fv
.
miniprogram_path
,
AppFunctionPath
:
fv
.
app_path
,
AppConfig
:
template
.
AppConfig
,
WebFunctionPath
:
fv
.
web_path
,
WebConfig
:
template
.
WebConfig
,
IsDelete
:
template
.
IsDelete
,
InputTime
:
moment
().
format
(
"YYYY-MM-DD HH:mm:ss"
),
Pusher
:
template
.
Pusher
,
PushMode
:
fv
.
push_mode
.
toString
(),
PushPath
:
template
.
PushPath
,
IsStarted
:
fv
.
isStart
,
MsgTemplateID
:
fv
.
message_template
,
AppTemplateID
:
fv
.
app_template
,
WebTemplateID
:
fv
.
web_template
,
PushGroup
:
fv
.
to_person
.
toString
()
}
console
.
log
(
a
)
UpdateMessageConfig
(
a
).
then
(
res
=>
{
if
(
res
.
code
===
0
)
{
if
(
IISConfig
)
{
AddIISAgentConfig
(
IISConfig
).
then
(
res
=>
{
if
(
res
.
code
===
0
)
{
message
.
success
(
"保存成功"
)
confirmModal
()
}
}
)
}
else
{
message
.
success
(
"保存成功"
)
confirmModal
()
}
}
}
)
}
else
{
let
b
=
{
ThemeName
:
"定时推送"
,
MsgType
:
fv
.
name
,
PublicTemplateID
:
fv
.
wx_template
,
PublicConfig
:
template
.
PublicConfig
,
PublicPath
:
fv
.
h5_path
,
MsgTemplateName
:
template
.
MsgTemplateName
,
MsgTemplateCode
:
template
.
MsgTemplateCode
,
MsgConfig
:
template
.
MsgConfig
,
MiniAppRoute
:
fv
.
miniprogram_path
,
AppFunctionPath
:
fv
.
app_path
,
AppConfig
:
template
.
AppConfig
,
WebFunctionPath
:
fv
.
web_path
,
WebConfig
:
template
.
WebConfig
,
IsDelete
:
template
.
IsDelete
,
InputTime
:
moment
().
format
(
"YYYY-MM-DD HH:mm:ss"
),
Pusher
:
template
.
Pusher
,
PushMode
:
fv
.
push_mode
.
toString
(),
PushPath
:
template
.
PushPath
,
IsStarted
:
fv
.
isStart
,
MsgTemplateID
:
fv
.
message_template
,
AppTemplateID
:
fv
.
app_template
,
WebTemplateID
:
fv
.
web_template
,
PushGroup
:
fv
.
to_person
.
toString
()
}
console
.
log
(
b
)
InsertMessageConfig
(
b
).
then
(
res
=>
{
if
(
res
.
code
===
0
)
{
if
(
IISConfig
)
{
AddIISAgentConfig
(
IISConfig
).
then
(
res
=>
{
if
(
res
.
code
===
0
)
{
message
.
success
(
"保存成功"
)
confirmModal
()
}
}
)
}
else
{
message
.
success
(
"保存成功"
)
confirmModal
()
}
}
}
)
}
}
const
operateProject
=
()
=>
{
...
...
@@ -34,20 +209,22 @@ const EditModal = props => {
const
onTypeChange
=
(
value
)
=>
{
console
.
log
(
value
)
setCurrentTrench
({
isAPPShow
:
value
.
indexOf
(
"
APP
"
)
>
-
1
?
true
:
false
,
isWXShow
:
value
.
indexOf
(
"
微信
"
)
>
-
1
?
true
:
false
,
isWEBShow
:
value
.
indexOf
(
"
WEB
"
)
>
-
1
?
true
:
false
,
isMessageShow
:
value
.
indexOf
(
"短信"
)
>
-
1
?
true
:
false
,
isAPPShow
:
value
.
indexOf
(
"
平台弹框
"
)
>
-
1
?
true
:
false
,
isWXShow
:
value
.
indexOf
(
"
公众号推送
"
)
>
-
1
?
true
:
false
,
isWEBShow
:
value
.
indexOf
(
"
平台弹框
"
)
>
-
1
?
true
:
false
,
isMessageShow
:
value
.
indexOf
(
"短信
推送
"
)
>
-
1
?
true
:
false
,
})
}
const
handleGetForm
=
form
=>
{
formEntity
.
current
=
form
;
};
const
onIISAgentSubmit
=
(
value
)
=>
{
console
.
log
(
value
,
"IIS配置"
)
}
return
(
<
SiteModal
{
...
props
}
title=
"编辑推送方案"
title=
{
template
.
ThemeName
?
"编辑推送方案"
:
"新增推送方案"
}
bodyStyle=
{
{
width
:
'100%'
,
minHeight
:
'100px'
}
}
style=
{
{
top
:
200
,
borderRadius
:
'20px'
}
}
width=
"1200px"
...
...
@@ -69,16 +246,16 @@ const EditModal = props => {
},
]
}
>
<
Input
placeholder=
"请输入方案名称"
/>
<
Input
placeholder=
"请输入方案名称"
disabled=
{
template
.
ThemeName
?
true
:
false
}
onChange=
{
onNameChange
}
/>
</
Item
>
<
Item
label=
"是否开启"
name=
"isStart"
initialValue=
"开启"
>
<
Select
>
<
Option
value=
"
开启
"
>
开启
</
Option
>
<
Option
value=
"
关闭
"
>
关闭
</
Option
>
<
Option
value=
"
1
"
>
开启
</
Option
>
<
Option
value=
"
0
"
>
关闭
</
Option
>
</
Select
>
</
Item
>
<
Item
...
...
@@ -86,17 +263,17 @@ const EditModal = props => {
name=
"to_person"
>
<
VisibleRoleModal
/>
<
VisibleRoleModal
/>
</
Item
>
<
Item
label=
"定时计划"
name=
"push_plan"
>
<
VisibleIISAgentConfig
/>
<
VisibleIISAgentConfig
agentConfig=
{
template
.
item
&&
template
.
item
.
AgentConfig
}
onIISAgentSubmit=
{
onIISAgentSubmit
}
/>
</
Item
>
<
Item
label=
"推送方式"
name=
"p
arams
"
name=
"p
ush_mode
"
>
<
Checkbox
.
Group
options=
{
plainOptions
}
...
...
@@ -116,9 +293,14 @@ const EditModal = props => {
label=
"模板"
name=
"app_template"
>
<
Select
defaultValue=
{
"开启"
}
>
<
Option
value=
"开启"
>
开启
</
Option
>
<
Option
value=
"关闭"
>
关闭
</
Option
>
<
Select
>
{
APP_ITEMS
.
map
((
item
,
idx
)
=>
{
return
(
<
Option
value=
{
item
.
Id
}
key=
{
idx
}
>
{
item
.
LikeName
}
</
Option
>
)
})
}
</
Select
>
</
Item
>
<
Item
...
...
@@ -142,9 +324,14 @@ const EditModal = props => {
label=
"模板"
name=
"wx_template"
>
<
Select
defaultValue=
{
"开启"
}
>
<
Option
value=
"开启"
>
开启
</
Option
>
<
Option
value=
"关闭"
>
关闭
</
Option
>
<
Select
>
{
WX_ITEMS
.
map
((
item
,
idx
)
=>
{
return
(
<
Option
value=
{
item
.
Id
}
key=
{
idx
}
>
{
item
.
LikeName
}
</
Option
>
)
})
}
</
Select
>
</
Item
>
<
Item
...
...
@@ -174,9 +361,14 @@ const EditModal = props => {
label=
"模板"
name=
"web_template"
>
<
Select
defaultValue=
{
"开启"
}
>
<
Option
value=
"开启"
>
开启
</
Option
>
<
Option
value=
"关闭"
>
关闭
</
Option
>
<
Select
>
{
WEB_ITEMS
.
map
((
item
,
idx
)
=>
{
return
(
<
Option
value=
{
item
.
Id
}
key=
{
idx
}
>
{
item
.
LikeName
}
</
Option
>
)
})
}
</
Select
>
</
Item
>
<
Item
...
...
@@ -201,9 +393,14 @@ const EditModal = props => {
label=
"模板"
name=
"message_template"
>
<
Select
defaultValue=
{
"开启"
}
>
<
Option
value=
"开启"
>
开启
</
Option
>
<
Option
value=
"关闭"
>
关闭
</
Option
>
<
Select
>
{
MES_ITEMS
.
map
((
item
,
idx
)
=>
{
return
(
<
Option
value=
{
item
.
Id
}
key=
{
idx
}
>
{
item
.
LikeName
}
</
Option
>
)
})
}
</
Select
>
</
Item
>
</
div
>
...
...
src/pages/platformCenter/messageManage/projectManage/components/IISAgentConfig/DayOfWeekSelect.jsx
View file @
928cf499
...
...
@@ -8,7 +8,7 @@ const DayOfWeekSelect = props => {
const
[
selectValues
,
setSelectValues
]
=
useState
([])
const
{
onChange
}
=
props
const
{
onChange
,
value
}
=
props
const
hours
=
[
{
name
:
"星期一"
,
value
:
'1'
},
...
...
@@ -45,6 +45,9 @@ const DayOfWeekSelect = props => {
setSelectValues
(
value
)
onChange
&&
onChange
(
values
)
}
useEffect
(()
=>
{
setSelectValues
(
value
)
},[
props
])
return
(
<
div
>
<
Radio
.
Group
onChange=
{
onTypeChange
}
>
...
...
src/pages/platformCenter/messageManage/projectManage/components/IISAgentConfig/HourOfDaySelect.jsx
View file @
928cf499
...
...
@@ -8,7 +8,7 @@ const HourOfDaySelect = props => {
const
[
selectValues
,
setSelectValues
]
=
useState
([])
const
{
onChange
}
=
props
const
{
onChange
,
value
}
=
props
const
hours
=
[
{
name
:
"0:00"
,
value
:
'0'
},
...
...
@@ -40,19 +40,28 @@ const HourOfDaySelect = props => {
let
values
=
[]
switch
(
e
.
target
.
value
)
{
case
0
:
values
=
[
"0"
,
"1"
,
"2"
,
"3"
,
"4"
,
"5"
,
"6"
,
"7"
,
"8"
,
"9"
,
"10"
,
"11"
,
"12"
,
"13"
,
"14"
,
"15"
,
"16"
,
"17"
,
"18"
,
"19"
,
"20"
,
"21"
,
"22"
,
"23"
,]
values
=
[
"0"
,
"1"
,
"2"
,
"3"
,
"4"
,
"5"
,
"6"
,
"7"
,
"8"
,
"9"
,
"10"
,
"11"
,
"12"
,
"13"
,
"14"
,
"15"
,
"16"
,
"17"
,
"18"
,
"19"
,
"20"
,
"21"
,
"22"
,
"23"
]
break
case
1
:
values
=
[]
break
case
2
:
values
=
[
"6"
,
"8"
]
break
case
3
:
values
=
[
"0"
,
"8"
,
"16"
]
break
case
4
:
values
=
[
"0"
,
"6"
,
"12"
,
"18"
]
break
}
onChange
&&
onChange
(
value
)
onChange
&&
onChange
(
values
)
setSelectValues
(
values
)
}
useEffect
(()
=>
{
setSelectValues
(
value
)
},[
props
])
const
onCheckChange
=
(
value
)
=>
{
setSelectValues
(
value
)
...
...
src/pages/platformCenter/messageManage/projectManage/components/IISAgentConfig/VisibleIISAgentConfig.jsx
View file @
928cf499
import
React
,
{
useEffect
,
useState
}
from
'react'
import
SiteModal
from
'@/components/Modal/SiteModa'
;
import
{
Checkbox
,
Input
,
Button
,
Modal
,
Form
,
Radio
,
DatePicker
,
Switch
}
from
'antd'
import
{
Checkbox
,
Input
,
Button
,
Modal
,
Form
,
Radio
,
DatePicker
,
Switch
,
Select
,
message
}
from
'antd'
import
HourOfDaySelect
from
'./HourOfDaySelect'
import
DayOfWeekSelect
from
'./DayOfWeekSelect'
import
styles
from
'./VisibleIISAgentConfig.less'
import
moment
from
'moment'
import
{
tr
}
from
'voca'
;
const
{
Item
}
=
Form
;
...
...
@@ -12,29 +14,154 @@ const VisibleIISAgentConfig = props => {
const
[
loading
,
setLoading
]
=
useState
(
false
);
const
[
previewVisible
,
setPreviewVisible
]
=
useState
(
false
)
const
[
selectRole
,
setSelectRole
]
=
useState
([])
const
[
isReentrant
,
setIsReentrant
]
=
useState
(
false
)
const
[
isReentrant
,
setIsReentrant
]
=
useState
(
false
)
const
[
postCheck
,
setPostCheck
]
=
useState
(
false
)
const
[
reenCheck
,
setReenCheck
]
=
useState
(
false
)
const
[
logCheck
,
setLogCheck
]
=
useState
(
false
)
const
[
isEndTimeShow
,
setIsEndTimeShow
]
=
useState
(
false
)
const
[
isLoopShow
,
setIsLoopShow
]
=
useState
(
false
)
const
[
isDayLoopShow
,
setIsDayLoopShow
]
=
useState
(
false
)
const
[
isWeekLoopShow
,
setIsWeekLoopShow
]
=
useState
(
false
)
const
[
form
]
=
Form
.
useForm
();
const
onSubmit
=
()
=>
{
const
dateFormat
=
'YYYY-MM-DD HH:mm:ss'
;
const
{
agentConfig
,
value
,
onIISAgentSubmit
}
=
props
useEffect
(()
=>
{
if
(
agentConfig
)
{
form
.
setFieldsValue
({
is_enable
:
agentConfig
.
Enabled
,
url_type
:
agentConfig
.
Absolute
?
false
:
true
,
url_path
:
agentConfig
.
Url
,
request_header
:
agentConfig
.
CustomHeader
,
plan_type
:
agentConfig
.
LoopMode
,
start_time
:
moment
(
agentConfig
.
StartFrom
,
dateFormat
),
end_time
:
moment
(
agentConfig
.
EndAt
,
dateFormat
),
loop_mode
:
agentConfig
.
LoopMode
,
interval
:
agentConfig
.
Interval
,
loop_unit
:
agentConfig
.
LoopUnit
,
hour_of_day
:
agentConfig
.
HourOfDay
&&
agentConfig
.
HourOfDay
.
split
(
","
),
day_of_week
:
agentConfig
.
DayOfWeek
,
time_out
:
agentConfig
.
Timeout
,
post_state
:
agentConfig
.
UsePostState
,
reentrant
:
agentConfig
.
AllowReentrant
,
enable_log
:
agentConfig
.
AllowLog
,
})
changeLoopMode
(
agentConfig
.
LoopMode
)
setReenCheck
(
agentConfig
.
AllowReentrant
)
setPostCheck
(
agentConfig
.
UsePostState
)
setLogCheck
(
agentConfig
.
AllowLog
)
}
form
.
setFieldsValue
({
name
:
value
})
setSelectRole
(
props
.
value
)
},
[
props
])
const
handleCancel
=
()
=>
{
setPreviewVisible
(
false
)
}
const
handleOk
=
()
=>
{
let
fv
=
form
.
getFieldValue
()
onIISAgentSubmit
&&
onIISAgentSubmit
(
{
Url
:
fv
.
url_path
,
CustomHeader
:
fv
.
request_header
,
StartFrom
:
fv
.
start_time
&&
fv
.
start_time
.
format
(
dateFormat
),
EndAt
:
fv
.
end_time
&&
fv
.
end_time
.
format
(
dateFormat
),
MillisecondsTimeout
:
fv
.
time_out
,
LoopMode
:
fv
.
loop_mode
,
LoopUnit
:
fv
.
loop_unit
,
MonthOfYear
:
""
,
WeekOfMonth
:
""
,
DayOfWeek
:
fv
.
day_of_week
,
DayOfMonth
:
""
,
HourOfDay
:
fv
.
hour_of_day
.
toString
(),
Interval
:
fv
.
interval
,
UsePostState
:
fv
.
post_state
,
AllowReentrant
:
fv
.
reentrant
,
AllowLog
:
fv
.
enable_log
,
Enabled
:
fv
.
is_enable
,
Timeout
:
fv
.
time_out
,
Absolute
:
true
}
)
setPreviewVisible
(
false
)
}
const
handleClick
=
()
=>
{
if
(
value
)
{
setPreviewVisible
(
true
)
}
else
{
message
.
error
(
"请先输入方案名称!"
)
}
}
const
onPostChange
=
(
value
)
=>
{
setIsReentrant
(
value
)
setPostCheck
(
value
)
form
.
setFieldsValue
({
post_state
:
value
})
}
const
onReenChange
=
(
value
)
=>
{
setReenCheck
(
value
)
form
.
setFieldsValue
({
reentrant
:
value
})
}
const
onLogChange
=
(
value
)
=>
{
setLogCheck
(
value
)
form
.
setFieldsValue
({
enable_log
:
value
})
}
const
changeLoopMode
=
(
value
)
=>
{
switch
(
value
)
{
case
"ByOnce"
:
setIsEndTimeShow
(
false
)
setIsLoopShow
(
true
)
setIsWeekLoopShow
(
false
)
setIsDayLoopShow
(
false
)
break
case
"BYLOOP"
:
setIsEndTimeShow
(
true
)
setIsLoopShow
(
true
)
setIsWeekLoopShow
(
false
)
setIsDayLoopShow
(
false
)
break
case
"ByDay"
:
setIsEndTimeShow
(
true
)
setIsLoopShow
(
false
)
setIsWeekLoopShow
(
false
)
setIsDayLoopShow
(
true
)
break
case
"ByWeek"
:
setIsEndTimeShow
(
true
)
setIsLoopShow
(
false
)
setIsWeekLoopShow
(
true
)
setIsDayLoopShow
(
true
)
break
}
}
const
onLoopModeChange
=
(
e
)
=>
{
changeLoopMode
(
e
.
target
.
value
)
}
return
(
<
div
>
<
div
onClick=
{
handleClick
}
>
选择推送组
</
div
>
<
div
>
{
selectRole
}
</
div
>
<
div
className=
{
styles
.
agent_container
}
>
<
Input
value=
{
selectRole
}
disabled=
{
true
}
/>
<
div
className=
{
styles
.
select_btn
}
onClick=
{
handleClick
}
>
推送计划
</
div
>
<
SiteModal
{
...
props
}
title=
"编辑定时任务"
...
...
@@ -56,13 +183,22 @@ const VisibleIISAgentConfig = props => {
label=
"计划名称"
name=
"name"
>
<
Input
placeholder=
"请输入计划名称"
/>
<
Input
placeholder=
"请输入计划名称"
disabled=
{
true
}
/>
</
Item
>
<
Item
label=
"是否开启"
name=
"is_enable"
>
<
Select
>
<
Option
value=
{
true
}
>
开启
</
Option
>
<
Option
value=
{
false
}
>
关闭
</
Option
>
</
Select
>
</
Item
>
<
Item
label=
"路径类型"
name=
"url_type"
>
<
Radio
.
Group
value=
{
false
}
>
<
Radio
.
Group
>
<
Radio
value=
{
false
}
>
相对路径
</
Radio
>
<
Radio
value=
{
true
}
>
绝对路径
</
Radio
>
</
Radio
.
Group
>
...
...
@@ -80,12 +216,14 @@ const VisibleIISAgentConfig = props => {
<
Input
placeholder=
"请输入URL名称"
/>
</
Item
>
<
Item
label=
"
计划类型
"
name=
"
plan_typ
e"
label=
"
执行方式
"
name=
"
loop_mod
e"
>
<
Radio
.
Group
value=
{
1
}
buttonStyle=
'outline'
>
<
Radio
value=
{
1
}
>
重复执行
</
Radio
>
<
Radio
value=
{
0
}
>
执行一次
</
Radio
>
<
Radio
.
Group
onChange=
{
onLoopModeChange
}
>
<
Radio
value=
{
"ByOnce"
}
>
一次
</
Radio
>
<
Radio
value=
{
"BYLOOP"
}
>
循环
</
Radio
>
<
Radio
value=
{
"ByDay"
}
>
每天
</
Radio
>
<
Radio
value=
{
"ByWeek"
}
>
每周
</
Radio
>
</
Radio
.
Group
>
</
Item
>
<
Item
...
...
@@ -94,22 +232,20 @@ const VisibleIISAgentConfig = props => {
>
<
DatePicker
showTime
/>
</
Item
>
{
isEndTimeShow
&&
(
<
Item
label=
"结束时间"
name=
"end_time"
>
<
DatePicker
showTime
/>
</
Item
>
<
Item
label=
"执行方式"
name=
"loopMode"
>
<
Radio
.
Group
value=
{
false
}
>
<
Radio
value=
{
0
}
>
循环
</
Radio
>
<
Radio
value=
{
1
}
>
每天
</
Radio
>
<
Radio
value=
{
2
}
>
每周
</
Radio
>
</
Radio
.
Group
>
</
Item
>
)
}
{
isLoopShow
&&
(
<
div
>
<
Item
label=
"循环周期"
name=
"interval"
...
...
@@ -122,18 +258,29 @@ const VisibleIISAgentConfig = props => {
>
<
Input
placeholder=
"请输入循环单位"
/>
</
Item
>
</
div
>
)
}
{
isDayLoopShow
&&
(
<
Item
label=
"日循环"
name=
"hour_of_day"
>
<
HourOfDaySelect
/>
</
Item
>
)
}
{
isWeekLoopShow
&&
(
<
Item
label=
"周循环"
name=
"day_of_week"
>
<
DayOfWeekSelect
/>
</
Item
>
)
}
<
Item
label=
"超时时间"
name=
"time_out"
...
...
@@ -144,19 +291,19 @@ const VisibleIISAgentConfig = props => {
label=
"POST状态"
name=
"post_state"
>
<
Switch
checkedChildren=
"开启"
unCheckedChildren=
"关闭"
onChange=
{
onPostChange
}
/>
<
Switch
checkedChildren=
"开启"
unCheckedChildren=
"关闭"
onChange=
{
onPostChange
}
checked=
{
postCheck
}
/>
</
Item
>
<
Item
label=
"允许
并发
"
label=
"允许
重入
"
name=
"reentrant"
>
<
Switch
checkedChildren=
"开启"
unCheckedChildren=
"关闭"
disabled=
{
isReentrant
}
/>
<
Switch
checkedChildren=
"开启"
unCheckedChildren=
"关闭"
onChange=
{
onReenChange
}
disabled=
{
isReentrant
}
checked=
{
reenCheck
}
/>
</
Item
>
<
Item
label=
"开启日志"
name=
"enable_log"
>
<
Switch
checkedChildren=
"开启"
unCheckedChildren=
"关闭"
/>
<
Switch
checkedChildren=
"开启"
unCheckedChildren=
"关闭"
onChange=
{
onLogChange
}
checked=
{
logCheck
}
/>
</
Item
>
</
Form
>
...
...
src/pages/platformCenter/messageManage/projectManage/components/IISAgentConfig/VisibleIISAgentConfig.less
View file @
928cf499
.IISAgent_container{
.agent_container {
display: flex;
flex-direction: row;
.select_btn {
display: inline-block;
color: #2f54eb;
cursor: pointer;
border-bottom: 1px solid #2f54eb;
width: 80px;
margin-left: 20px;
}
.select_result {}
}
.IISAgent_container {
overflow-y: scroll;
height: 500px;
}
src/pages/platformCenter/messageManage/projectManage/components/RolseSelect/VisibleRoleModal.jsx
View file @
928cf499
import
React
,
{
useEffect
,
useState
}
from
'react'
import
SiteModal
from
'@/components/Modal/SiteModa'
;
import
{
Checkbox
,
Input
,
Button
,
Modal
}
from
'antd'
import
{
data
}
from
'../Mock'
//
import { data } from '../Mock'
import
_
from
'lodash'
;
import
classnames
from
'classnames'
;
import
styles
from
'./VisibleRoleModal.less'
import
{
ManOutlined
}
from
'@ant-design/icons'
;
import
{
RoleGroupList
}
from
'@/services/platform/messagemanage'
const
checkIsGroup
=
node
=>
node
.
children
?.
length
>
0
;
...
...
@@ -18,7 +18,39 @@ const VisibleRoleModal = props => {
const
[
loading
,
setLoading
]
=
useState
(
false
);
const
[
previewVisible
,
setPreviewVisible
]
=
useState
(
false
)
const
[
selectRole
,
setSelectRole
]
=
useState
([])
const
[
selectRole
,
setSelectRole
]
=
useState
([])
const
[
dataTree
,
setDataTree
]
=
useState
([])
const
GetRoleGroupList
=
()
=>
{
RoleGroupList
().
then
(
res
=>
{
//数据转换
let
tree
=
[]
res
.
data
.
roleList
.
map
((
item
,
index
)
=>
{
tree
.
push
({
name
:
item
.
visibleTitle
,
id
:
index
,
children
:
item
.
roleList
.
map
((
roleItem
)
=>
{
return
(
{
name
:
roleItem
.
roleName
,
id
:
roleItem
.
roleName
,
children
:[]
}
)
})
})
})
setDataTree
(
tree
)
}
)
}
useEffect
(()
=>
{
setSelectRole
(
props
.
value
)
GetRoleGroupList
()
},
[
props
])
const
onSubmit
=
()
=>
{
}
...
...
@@ -32,18 +64,19 @@ const VisibleRoleModal = props => {
const
handleClick
=
()
=>
{
setPreviewVisible
(
true
)
}
const
onChange2
=
(
value
)
=>
{
const
onChange2
=
(
value
)
=>
{
console
.
log
(
value
)
setSelectRole
(
value
.
toString
())
}
return
(
<
div
>
<
div
onClick=
{
handleClick
}
>
选择推送组
</
div
>
<
div
>
{
selectRole
}
</
div
>
<
div
className=
{
styles
.
role_container
}
>
<
Input
disabled=
{
true
}
value=
{
selectRole
}
/>
<
div
className=
{
styles
.
select_btn
}
onClick=
{
handleClick
}
>
推送人员
</
div
>
<
SiteModal
{
...
props
}
title=
"
编辑推送方案
"
title=
"
选择推送人员
"
bodyStyle=
{
{
width
:
'100%'
,
minHeight
:
'100px'
}
}
style=
{
{
top
:
200
,
borderRadius
:
'20px'
}
}
width=
"800px"
...
...
@@ -56,8 +89,8 @@ const VisibleRoleModal = props => {
onCancel=
{
handleCancel
}
>
<
div
>
<
ListCard
{
...
props
}
onChange2=
{
onChange2
}
/>
<
div
className=
{
styles
.
list_card
}
>
<
ListCard
{
...
props
}
onChange2=
{
onChange2
}
data=
{
dataTree
}
/>
</
div
>
</
SiteModal
>
</
div
>
...
...
@@ -80,7 +113,7 @@ const checkChildrenByCondition = (
const
ListCard
=
props
=>
{
const
{
onChange
,
onChange2
}
=
props
const
{
onChange
,
onChange2
,
data
}
=
props
const
[
changedItem
,
setChangedItem
]
=
useState
({
item
:
{}
});
const
[
valueList
,
setValueList
]
=
useState
([]);
...
...
@@ -124,7 +157,7 @@ const ListCard = props => {
}
useEffect
(()
=>
{
setValueList
([
'1'
,
'2'
,
'3'
])
},
[])
return
(
<
div
>
...
...
src/pages/platformCenter/messageManage/projectManage/components/RolseSelect/VisibleRoleModal.less
View file @
928cf499
.role_container {
display: flex;
flex-direction: row;
.select_btn {
display: inline-block;
color: #2f54eb;
cursor: pointer;
border-bottom: 1px solid #2f54eb;
width: 80px;
margin-left: 20px;
}
}
.list_card{
overflow-y: scroll;
height: 500px;
}
.divBox {
// display: flex;
width: 100%;
...
...
@@ -7,45 +24,53 @@
margin-top: 20px;
min-height: 50px;
padding: 0 10px 10px 20px;
.ant-checkbox-wrapper{
.ant-checkbox-wrapper {
background-color: #fff;
}
.topCheckbox{
height: 20px;
.topCheckbox {
// height: 75px;
margin: -10px 0 0 0px;
line-height: 20px;
}
.topCheckbox>label :hover{
.topCheckbox>label :hover {
font-weight: 600;
}
.checkdiv {
display: flex;
flex-wrap: wrap;
// margin-left: 20px;
// justify-content: space-between;
}
}
.divSingle{
}
.divSingle {
border: none;
margin-top: 20px;
min-width: 180px;
flex-grow: 0;
flex-shrink: 0;
//
flex-grow: 0;
//
flex-shrink: 0;
// flex:0 0 auto;
// flex-basis: auto;
margin-right: 10px;
background: transparent;
}
.isSearch{
}
.isSearch {
color: red;
background-color: yellow;
}
.boldLabel{
}
.boldLabel {
font-size: 15px;
font-weight: bold;
background-color: #fff;
}
.btnBox{
}
.btnBox {
position: sticky;
bottom: 0px;
right: 0px;
...
...
@@ -56,4 +81,4 @@
display: flex;
justify-content: flex-end;
align-items: center;
}
\ No newline at end of file
}
\ No newline at end of file
src/services/platform/messagemanage.jsx
View file @
928cf499
...
...
@@ -15,9 +15,9 @@ export const GetThirdpartyTemplates = param =>
export
const
GetMessageConfigList
=
param
=>
get
(
`
${
PUBLISH_SERVICE
}
/MessageConfig/GetMessageConfigList`
,
param
);
export
const
InsertMessageConfig
=
param
=>
ge
t
(
`
${
PUBLISH_SERVICE
}
/MessageConfig/InsertMessageConfig`
,
param
);
pos
t
(
`
${
PUBLISH_SERVICE
}
/MessageConfig/InsertMessageConfig`
,
param
);
export
const
UpdateMessageConfig
=
param
=>
ge
t
(
`
${
PUBLISH_SERVICE
}
/MessageConfig/UpdateMessageConfig`
,
param
);
pos
t
(
`
${
PUBLISH_SERVICE
}
/MessageConfig/UpdateMessageConfig`
,
param
);
export
const
DeleteMessageConfig
=
param
=>
get
(
`
${
PUBLISH_SERVICE
}
/MessageConfig/DeleteMessageConfig`
,
param
);
export
const
GetMessageVersion
=
param
=>
...
...
@@ -27,8 +27,12 @@ export const GetMsgTypeList = param =>
export
const
TestPush
=
param
=>
get
(
`
${
PUBLISH_SERVICE
}
/MessageConfig/TestPush`
,
param
);
export
const
AddIISAgentConfig
=
param
=>
ge
t
(
`
${
PUBLISH_SERVICE
}
/MessageConfig/AddIISAgentConfig`
,
param
);
pos
t
(
`
${
PUBLISH_SERVICE
}
/MessageConfig/AddIISAgentConfig`
,
param
);
export
const
DeleteIISAgentConfig
=
param
=>
get
(
`
${
PUBLISH_SERVICE
}
/MessageConfig/DeleteIISAgentConfig`
,
param
);
export
const
GetIISAgentConfig
=
param
=>
get
(
`
${
PUBLISH_SERVICE
}
/MessageConfig/GetIISAgentConfig`
,
param
);
//组件接口
export
const
RoleGroupList
=
param
=>
get
(
`
${
PUBLISH_SERVICE
}
/UserCenter/RoleGroupList`
,
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