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
f69f1b64
Commit
f69f1b64
authored
Mar 10, 2023
by
涂伟
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: '1.工单管理功能将所有功能变成数据查询,不允许修改任何数据2.表设置页面优化3.新建事件类型内置标准用法使用说明文案优化4.事件表样式优化'
parent
ab09191f
Pipeline
#68917
failed with stages
Changes
12
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
301 additions
and
189 deletions
+301
-189
index.jsx
src/pages/bsmanager/base/tablemanager/index.jsx
+7
-4
AddModal.jsx
src/pages/bsmanager/workOrder/incident/AddModal.jsx
+1
-1
incident.jsx
src/pages/bsmanager/workOrder/incident/incident.jsx
+16
-16
flow.jsx
src/pages/bsmanager/workOrder/workFlow/flow.jsx
+38
-25
ProcessConfig.jsx
...nager/workOrder/workFlow/flowComponents/ProcessConfig.jsx
+9
-8
Timelimit.jsx
...bsmanager/workOrder/workFlow/flowComponents/Timelimit.jsx
+40
-28
AddModal.jsx
.../workFlow/flowComponents/timelimitComponents/AddModal.jsx
+19
-8
flowNode.jsx
src/pages/bsmanager/workOrder/workFlow/flowNode/flowNode.jsx
+65
-31
AuxiliaryView.jsx
...er/workFlow/flowNode/flowNodeComponents/AuxiliaryView.jsx
+43
-29
NodeEdit.jsx
...rkOrder/workFlow/flowNode/flowNodeComponents/NodeEdit.jsx
+36
-28
AddModal.jsx
...wNode/flowNodeComponents/auxiliaryComponents/AddModal.jsx
+24
-8
FlowModal.jsx
...r/workOrder/workflowEdit/workFlowComponents/FlowModal.jsx
+3
-3
No files found.
src/pages/bsmanager/base/tablemanager/index.jsx
View file @
f69f1b64
...
...
@@ -273,7 +273,10 @@ const TableManager = props => {
// setTableData(res.data.root);
let
arr
=
res
.
data
.
root
;
arr
.
forEach
(
item
=>
{
item
.
tableStyle
=
item
.
tableStyle
===
'大'
?
'一行三个'
:
item
.
tableStyle
;
item
.
tableStyle
=
item
.
tableStyle
===
'大'
?
`一行三列/
${
item
.
labelStyle
?
`
${
item
.
labelStyle
}
布局`
:
'左右布局'
}
`
:
item
.
tableStyle
;
let
fieldCount
=
Number
(
item
.
fieldCount
);
let
extraFieldCount
=
Number
(
item
.
extraFieldCount
);
// item.fieldCount extraFieldCount
...
...
@@ -404,7 +407,7 @@ const TableManager = props => {
dataIndex
:
'tableAlias'
,
key
:
'tableAlias'
,
align
:
'center'
,
render
:
text
=>
<
div
>
{
text
||
'(无)'
}
</
div
>,
render
:
text
=>
<
div
>
{
text
||
<
span
style=
{
{
color
:
'grey'
}
}
>
(无)
</
span
>
}
</
div
>,
},
{
title
:
'表单布局'
,
...
...
@@ -412,7 +415,7 @@ const TableManager = props => {
key
:
'tableStyle'
,
align
:
'center'
,
width
:
80
,
render
:
text
=>
<
div
>
{
text
}
</
div
>,
render
:
text
=>
<
div
>
{
!
text
?
<
span
style=
{
{
color
:
'grey'
}
}
>
(无)
</
span
>
:
text
}
</
div
>,
},
// {
// title: '附加字段',
...
...
@@ -442,7 +445,7 @@ const TableManager = props => {
width
:
80
,
render
:
record
=>
{
if
(
record
===
'(无)'
)
{
return
<
div
>
{
record
}
</
div
>;
return
<
div
style=
{
{
color
:
'grey'
}
}
>
{
record
}
</
div
>;
}
return
<
div
style=
{
{
color
:
'red'
}
}
>
{
record
}
</
div
>;
},
...
...
src/pages/bsmanager/workOrder/incident/AddModal.jsx
View file @
f69f1b64
...
...
@@ -1954,7 +1954,7 @@ const AddModal = props => {
label=
{
<
div
style=
{
{
display
:
'flex'
,
alignItems
:
'center'
}
}
>
<
Tooltip
title
=
{<
div
>
标准
使用,使用标准工单系统,可通过勾选 前端/手持,来控制是否展示事件的填报入口,勾选及展示;
<
br
/>
内置使用,
使用第三方完整功能,仅调用接口、表结构和流程,工单系统中无法使用
</
div
>
}
title
=
{<
div
>
标准
用法:使用标准工单系统,可通过勾选 前端/手持,来控制是否展示事件的填报入口,勾选及展示;
<
br
/>
内置用法:
使用第三方完整功能,仅调用接口、表结构和流程,工单系统中无法使用
</
div
>
}
// title="标准使用,使用标准工单系统,可通过勾选 前端/手持,来控制是否展示事件的填报入口,勾选及展示;
// 内置使用,使用第三方完整功能,仅调用接口、表结构和流程,工单系统中无法使用。"
>
...
...
src/pages/bsmanager/workOrder/incident/incident.jsx
View file @
f69f1b64
...
...
@@ -93,9 +93,9 @@ const incident = () => {
dataIndex
:
'name'
,
key
:
'name'
,
width
:
150
,
render
:
record
=>
(
<
Tooltip
placement=
"topLeft"
title=
{
record
}
>
{
record
}
render
:
(
text
,
record
)
=>
(
<
Tooltip
placement=
"topLeft"
title=
{
text
}
>
{
text
}
</
Tooltip
>
),
},
...
...
@@ -139,7 +139,7 @@ const incident = () => {
width
:
80
,
render
:
record
=>
(
<
Tooltip
placement=
"topLeft"
title=
{
record
}
>
{
record
}
<
span
style=
{
{
color
:
record
==
'(无)'
?
'grey'
:
'black'
}
}
>
{
record
}
</
span
>
</
Tooltip
>
),
},
...
...
@@ -213,7 +213,7 @@ const incident = () => {
style=
{
{
display
:
'inline-block'
,
width
:
'60px'
,
color
:
Number
(
text
)
>
0
?
'red'
:
''
,
color
:
Number
(
text
)
>
0
?
'red'
:
'
grey
'
,
backgroundColor
:
Number
(
text
)
>
0
?
'yellow'
:
''
,
}
}
>
...
...
@@ -222,20 +222,20 @@ const incident = () => {
),
},
{
title
:
'上报
入口
'
,
title
:
'上报
方式
'
,
dataIndex
:
'reportable'
,
key
:
'reportable'
,
width
:
80
,
render
:
item
=>
{
if
(
item
===
'均可'
)
{
return
<
span
>
前端+手持
</
span
>;
}
else
if
(
item
===
''
||
item
===
'否'
)
{
return
<
span
>
内置用法
</
span
>;
}
else
if
(
item
===
'是'
)
{
return
<
span
>
(无)
</
span
>;
}
else
{
return
<
span
>
{
item
}
</
span
>;
}
return
<
span
>
<
Tag
color=
"processing"
>
前端
</
Tag
><
Tag
color=
"processing"
>
手持
</
Tag
>
</
span
>;
}
if
(
item
===
''
||
item
===
'否'
)
{
return
<
Tag
color=
"warning"
>
内置
</
Tag
>;
}
if
(
item
===
'是'
)
{
return
<
span
style=
{
{
color
:
'grey'
}
}
>
(无)
</
span
>;
}
return
<
span
><
Tag
color=
"processing"
>
{
item
}
</
Tag
>
</
span
>;
},
},
{
...
...
@@ -286,12 +286,12 @@ const incident = () => {
style=
{
{
fontSize
:
'16px'
,
color
:
'#1890FF'
}
}
/>
</
Tooltip
>
<
Tooltip
title=
"辅助视图"
>
{
/*
<Tooltip title="辅助视图">
<DesktopOutlined
onClick={() => auxiliaryView1(record)}
style={{ fontSize: '16px', color: '#1890FF' }}
/>
</
Tooltip
>
</Tooltip>
*/
}
<
Tooltip
title=
"导出事件"
>
<
ExportOutlined
onClick=
{
()
=>
hadelExport
(
record
)
}
...
...
src/pages/bsmanager/workOrder/workFlow/flow.jsx
View file @
f69f1b64
import
React
,
{
useEffect
,
useState
}
from
'react'
;
import
{
useHistory
}
from
'react-router-dom'
;
import
{
reloadFlows
,
removeFlowExtend
}
from
'@/services/flow/flow'
;
import
{
Tag
,
Card
,
Space
,
Table
,
Popconfirm
,
Spin
,
Tooltip
,
notification
,
message
,
Button
}
from
'antd'
;
import
{
Tag
,
Card
,
Space
,
Table
,
Popconfirm
,
Spin
,
Tooltip
,
notification
,
message
,
Button
,
}
from
'antd'
;
import
{
DoubleLeftOutlined
,
DoubleRightOutlined
,
...
...
@@ -10,6 +21,7 @@ import {
DeleteOutlined
,
OrderedListOutlined
,
ControlOutlined
,
EyeOutlined
,
}
from
'@ant-design/icons'
;
import
classnames
from
'classnames'
;
import
PageContainer
from
'@/components/BasePageContainer'
;
...
...
@@ -116,28 +128,28 @@ const Flow = () => {
console
.
log
(
flowName
);
history
.
push
({
pathname
:
'/biz/workflow/caseNode'
,
state
:
{
flowName
,
pickItemIndex
},
state
:
{
flowName
,
pickItemIndex
,
allDisabled
:
true
},
});
};
// 定义表格
const
columns
=
[
{
title
:
'名称'
,
dataIndex
:
'name'
,
width
:
150
,
align
:
'center'
},
{
title
:
'
前端
样式'
,
title
:
'
办理
样式'
,
dataIndex
:
'extendWebPage'
,
align
:
'center'
,
render
:
text
=>
(
<
span
style=
{
{
color
:
text
===
'(默认)'
?
'grey'
:
'000000D9'
}
}
>
{
text
}
</
span
>
),
},
{
title
:
'手持样式'
,
dataIndex
:
'extendMobilePage'
,
align
:
'center'
,
render
:
text
=>
(
<
span
style=
{
{
color
:
text
===
'(默认)'
?
'grey'
:
'000000D9'
}
}
>
{
text
}
</
span
>
),
},
//
{
//
title: '手持样式',
//
dataIndex: 'extendMobilePage',
//
align: 'center',
//
render: text => (
//
<span style={{ color: text === '(默认)' ? 'grey' : '000000D9' }}>{text}</span>
//
),
//
},
{
title
:
'辅助视图'
,
dataIndex
:
'extendPageCount'
,
...
...
@@ -159,12 +171,11 @@ const Flow = () => {
width
:
80
,
align
:
'center'
,
render
:
record
=>
{
if
(
record
==
'是'
)
{
return
<
Tag
color=
"success"
>
{
record
}
</
Tag
>;
}
else
{
return
<
Tag
color=
"processing"
>
{
record
}
</
Tag
>;
}
},
if
(
record
==
'是'
)
{
return
<
Tag
color=
"success"
>
{
record
}
</
Tag
>;
}
return
<
Tag
color=
"processing"
>
{
record
}
</
Tag
>;
},
},
{
title
:
'异常节点'
,
...
...
@@ -178,7 +189,7 @@ const Flow = () => {
align
:
'center'
,
// render: text => <span style={{ color: text === '(无)' ? 'grey' : '000000D9' }}>{text}</span>,
render
:
record
=>
{
if
(
record
!=
'(无)'
)
{
if
(
record
!=
'(无)'
)
{
return
(
<
Tooltip
title=
{
record
}
>
<
Tag
color=
"success"
>
有
</
Tag
>
...
...
@@ -195,16 +206,16 @@ const Flow = () => {
render
:
record
=>
(
<>
<
Space
>
<
Tooltip
title=
"流程
配置
"
>
<
E
ditTwoTone
<
Tooltip
title=
"流程
查看
"
>
<
E
yeOutlined
onClick=
{
()
=>
{
showModal
(
'processConfig'
,
true
);
showModal
(
'processConfig'
,
true
,
true
);
setProcessMsg
(
record
);
}
}
style=
{
{
fontSize
:
'16px'
,
color
:
'#1890FF'
}
}
/>
</
Tooltip
>
<
Tooltip
title=
"时限配置"
>
<
Tooltip
title=
"时限配置
查看
"
>
<
ControlOutlined
onClick=
{
()
=>
{
showModal
(
'auxiliaryView'
,
true
);
...
...
@@ -213,13 +224,13 @@ const Flow = () => {
style=
{
{
fontSize
:
'16px'
,
color
:
'#1890FF'
}
}
/>
</
Tooltip
>
<
Tooltip
title=
"节点配置"
>
<
Tooltip
title=
"节点配置
查看
"
>
<
ApartmentOutlined
onClick=
{
()
=>
toNode
(
record
.
name
)
}
style=
{
{
fontSize
:
'16px'
,
color
:
'#1890FF'
}
}
/>
</
Tooltip
>
<
Tooltip
title=
"清除流程配置"
>
{
/*
<Tooltip title="清除流程配置">
<Popconfirm
title="是否清除该流程配置?"
onConfirm={() => delProcess(record)}
...
...
@@ -229,7 +240,7 @@ const Flow = () => {
>
<DeleteOutlined style={{ fontSize: '16px', color: '#e86060' }} />
</Popconfirm>
</
Tooltip
>
</Tooltip>
*/
}
</
Space
>
</>
),
...
...
@@ -336,6 +347,7 @@ const Flow = () => {
setDataSource
(
'current'
);
getProcessData
();
}
}
allDisabled
/>
{
/* 排序弹窗 */
}
<
Order
...
...
@@ -354,6 +366,7 @@ const Flow = () => {
visible=
{
visible
.
auxiliaryView
}
msg=
{
processMsg
}
handleCancel=
{
()
=>
showModal
(
'auxiliaryView'
,
false
)
}
allDisabled
/>
</
PageContainer
>
);
...
...
src/pages/bsmanager/workOrder/workFlow/flowComponents/ProcessConfig.jsx
View file @
f69f1b64
...
...
@@ -5,7 +5,7 @@ const { Option } = Select;
const
{
TextArea
}
=
Input
;
const
ProcessConfig
=
props
=>
{
const
{
onSubumit
,
handleCancel
,
visible
,
processMsg
}
=
props
;
const
{
onSubumit
,
handleCancel
,
visible
,
processMsg
,
allDisabled
}
=
props
;
const
[
form
]
=
Form
.
useForm
();
const
[
flag
,
setFlag
]
=
useState
(
0
);
useEffect
(()
=>
{
...
...
@@ -57,11 +57,12 @@ const ProcessConfig = props => {
};
return
(
<
Modal
title=
"流程配置"
title=
{
allDisabled
?
'流程配置查看'
:
'流程配置'
}
visible=
{
visible
}
onOk=
{
onFinish
}
onCancel=
{
handleCancel
}
maskClosable=
{
false
}
footer=
{
allDisabled
?
null
:
true
}
>
<
Form
form=
{
form
}
...
...
@@ -73,7 +74,7 @@ const ProcessConfig = props => {
<
Input
disabled
/>
</
Form
.
Item
>
<
Form
.
Item
label=
"流程结束"
name=
"flowEndBehavior"
>
<
Radio
.
Group
>
<
Radio
.
Group
disabled=
{
allDisabled
}
>
<
Radio
value=
{
0
}
>
不做任何事情
</
Radio
>
<
Radio
value=
{
1
}
>
直接关闭事件
</
Radio
>
<
Radio
value=
{
2
}
>
事件转为待审核
</
Radio
>
...
...
@@ -81,12 +82,12 @@ const ProcessConfig = props => {
</
Radio
.
Group
>
</
Form
.
Item
>
<
Form
.
Item
label=
"
前端
样式"
label=
"
办理
样式"
name=
"webPage"
initialValue=
"多表显示"
rules=
{
[{
required
:
true
,
message
:
'请选择
前端
样式'
}]
}
rules=
{
[{
required
:
true
,
message
:
'请选择
办理
样式'
}]
}
>
<
Select
placeholder=
"请选择
前端样式"
>
<
Select
placeholder=
"请选择
办理样式"
disabled=
{
allDisabled
}
>
<
Option
value=
"多表在办显示"
>
多表在办显示
</
Option
>
<
Option
value=
"多表显示"
>
多表显示
</
Option
>
<
Option
value=
"表堆叠显示"
>
表堆叠显示
</
Option
>
...
...
@@ -94,13 +95,13 @@ const ProcessConfig = props => {
</
Select
>
</
Form
.
Item
>
<
Form
.
Item
label=
"编码样式"
name=
"useFixedCodingRule"
>
<
Radio
.
Group
>
<
Radio
.
Group
disabled=
{
allDisabled
}
>
<
Radio
value=
{
false
}
>
{
form
.
getFieldValue
(
'codingDefaultText'
)
}
</
Radio
>
<
Radio
value
>
{
form
.
getFieldValue
(
'coding12Text'
)
}
</
Radio
>
</
Radio
.
Group
>
</
Form
.
Item
>
<
Form
.
Item
label=
"接口配置"
name=
"interfaceConfig"
>
<
TextArea
placeholder=
"请填写接口配置"
/>
<
TextArea
placeholder=
"请填写接口配置"
disabled=
{
allDisabled
}
/>
</
Form
.
Item
>
</
Form
>
</
Modal
>
...
...
src/pages/bsmanager/workOrder/workFlow/flowComponents/Timelimit.jsx
View file @
f69f1b64
...
...
@@ -11,12 +11,12 @@ import {
message
,
Spin
,
}
from
'antd'
;
import
{
EditTwoTone
,
PlusOutlined
,
DeleteOutlined
}
from
'@ant-design/icons'
;
import
{
EditTwoTone
,
PlusOutlined
,
DeleteOutlined
,
EyeOutlined
}
from
'@ant-design/icons'
;
import
AddModal
from
'./timelimitComponents/AddModal'
;
import
styles
from
'../flow.less'
;
const
Timelimit
=
props
=>
{
const
{
handleCancel
,
visible
,
msg
}
=
props
;
const
{
handleCancel
,
visible
,
msg
,
allDisabled
}
=
props
;
const
[
tableData
,
setTableData
]
=
useState
([]);
// 回显的表格
const
[
viewModal
,
setViewModal
]
=
useState
(
false
);
// 编辑模态框
const
[
modalType
,
setModalType
]
=
useState
(
''
);
// 模态框是编辑还是修改的状态
...
...
@@ -124,23 +124,32 @@ const Timelimit = props => {
render
:
record
=>
(
<>
<
Space
>
<
Tooltip
title=
"修改流程时限配置"
>
<
EditTwoTone
onClick=
{
()
=>
toEdit
(
record
)
}
style=
{
{
fontSize
:
'16px'
,
color
:
'#1890FF'
}
}
/>
</
Tooltip
>
<
Tooltip
title=
"删除流程时限配置"
>
<
Popconfirm
title=
"是否删除改流程时限配置?"
onConfirm=
{
()
=>
delRow
(
record
)
}
onCancel=
{
()
=>
message
.
error
(
'取消清除'
)
}
okText=
"是"
cancelText=
"否"
>
<
DeleteOutlined
style=
{
{
fontSize
:
'16px'
,
color
:
'#e86060'
}
}
/>
</
Popconfirm
>
<
Tooltip
title=
{
allDisabled
?
'查看流程时限配置'
:
'修改流程时限配置'
}
>
{
allDisabled
?
(
<
EyeOutlined
onClick=
{
()
=>
toEdit
(
record
)
}
style=
{
{
fontSize
:
'16px'
,
color
:
'#1890FF'
}
}
/>
)
:
(
<
EditTwoTone
onClick=
{
()
=>
toEdit
(
record
)
}
style=
{
{
fontSize
:
'16px'
,
color
:
'#1890FF'
}
}
/>
)
}
</
Tooltip
>
{
allDisabled
?
null
:
(
<
Tooltip
title=
"删除流程时限配置"
>
<
Popconfirm
title=
"是否删除改流程时限配置?"
onConfirm=
{
()
=>
delRow
(
record
)
}
onCancel=
{
()
=>
message
.
error
(
'取消清除'
)
}
okText=
"是"
cancelText=
"否"
>
<
DeleteOutlined
style=
{
{
fontSize
:
'16px'
,
color
:
'#e86060'
}
}
/>
</
Popconfirm
>
</
Tooltip
>
)
}
</
Space
>
</>
),
...
...
@@ -159,16 +168,18 @@ const Timelimit = props => {
>
<
div
className=
{
styles
.
timelimitBox
}
>
<
div
className=
{
styles
.
buttonList
}
>
<
Button
type=
"primary"
onClick=
{
()
=>
{
setViewModal
(
true
);
setModalType
(
'add'
);
}
}
icon=
{
<
PlusOutlined
/>
}
>
新增流程时限配置
</
Button
>
{
allDisabled
?
null
:
(
<
Button
type=
"primary"
onClick=
{
()
=>
{
setViewModal
(
true
);
setModalType
(
'add'
);
}
}
icon=
{
<
PlusOutlined
/>
}
>
新增流程时限配置
</
Button
>
)
}
</
div
>
<
Spin
spinning=
{
loading
}
tip=
"loading..."
>
<
Table
...
...
@@ -206,6 +217,7 @@ const Timelimit = props => {
setViewModal
(
false
);
getData
();
}
}
allDisabled
/>
</
Modal
>
);
...
...
src/pages/bsmanager/workOrder/workFlow/flowComponents/timelimitComponents/AddModal.jsx
View file @
f69f1b64
...
...
@@ -9,7 +9,17 @@ import { Form, Modal, Input, notification, Select } from 'antd';
const
{
Option
}
=
Select
;
const
AddModal
=
props
=>
{
const
{
onSubumit
,
handleCancel
,
visible
,
msg
,
flowId
,
modalType
,
title
,
finishNodes
}
=
props
;
const
{
onSubumit
,
handleCancel
,
visible
,
msg
,
flowId
,
modalType
,
title
,
finishNodes
,
allDisabled
,
}
=
props
;
const
[
flowNodes
,
setFlowNodes
]
=
useState
([]);
const
[
timeLimitFlowNodes
,
setTimeLimitFlowNodes
]
=
useState
([]);
const
[
timeLimitFlowNodesEnd
,
setTimeLimitFlowNodesEnd
]
=
useState
([]);
...
...
@@ -170,6 +180,7 @@ const AddModal = props => {
maskClosable=
{
false
}
destroyOnClose
width=
{
550
}
footer=
{
allDisabled
?
null
:
true
}
>
<
Form
form=
{
form
}
...
...
@@ -182,7 +193,7 @@ const AddModal = props => {
<
Input
disabled
/>
</
Form
.
Item
>
<
Form
.
Item
label=
"规则名称"
name=
"Name"
rules=
{
[{
required
:
true
}]
}
>
<
Input
placeholder=
"请输入规则名称"
/>
<
Input
disabled=
{
allDisabled
}
placeholder=
"请输入规则名称"
/>
</
Form
.
Item
>
<
Form
.
Item
label=
"起止节点"
style=
{
{
marginBottom
:
0
,
message
:
'请选择节点'
}
}
required
>
<
div
style=
{
{
display
:
'flex'
}
}
>
...
...
@@ -191,7 +202,7 @@ const AddModal = props => {
style=
{
{
width
:
'100%'
}
}
rules=
{
[{
required
:
true
,
message
:
'请选择节点'
}]
}
>
<
Select
>
<
Select
disabled=
{
allDisabled
}
>
{
flowNodes
.
map
((
item
,
index
)
=>
(
<
Option
value=
{
item
.
Name
}
...
...
@@ -209,7 +220,7 @@ const AddModal = props => {
style=
{
{
width
:
'100%'
}
}
rules=
{
[{
required
:
true
,
message
:
'请选择节点'
}]
}
>
<
Select
>
<
Select
disabled=
{
allDisabled
}
>
{
flowNodes
.
map
((
item
,
index
)
=>
(
<
Option
value=
{
item
.
Name
}
...
...
@@ -239,14 +250,14 @@ const AddModal = props => {
},
]
}
>
<
Input
placeholder=
"请输入默认时限"
/>
<
Input
disabled=
{
allDisabled
}
placeholder=
"请输入默认时限"
/>
</
Form
.
Item
>
<
Form
.
Item
name=
"TimeUnit"
style=
{
{
width
:
'100%'
}
}
rules=
{
[{
required
:
true
,
message
:
'请选择时限单位'
}]
}
>
<
Select
>
<
Select
disabled=
{
allDisabled
}
>
<
Option
value=
"小时"
>
小时
</
Option
>
<
Option
value=
"自然日"
>
自然日
</
Option
>
<
Option
value=
"工作日"
>
工作日
</
Option
>
...
...
@@ -259,7 +270,7 @@ const AddModal = props => {
name=
"TimeLimitField"
rules=
{
[{
required
:
true
,
message
:
'请选择时限指派字段'
}]
}
>
<
Select
>
<
Select
disabled=
{
allDisabled
}
>
{
timeLimitFlowNodes
.
map
(
item
=>
(
<
Option
value=
{
item
.
Name
}
key=
{
item
.
ID
}
>
<
span
>
{
item
.
Name
}
</
span
>
...
...
@@ -276,7 +287,7 @@ const AddModal = props => {
name=
"TimeoutField"
rules=
{
[{
required
:
true
,
message
:
'请选择超时记录字段'
}]
}
>
<
Select
>
<
Select
disabled=
{
allDisabled
}
>
{
timeLimitFlowNodesEnd
.
map
(
item
=>
(
<
Option
value=
{
item
.
Name
}
key=
{
item
.
ID
}
>
<
span
>
{
item
.
Name
}
</
span
>
...
...
src/pages/bsmanager/workOrder/workFlow/flowNode/flowNode.jsx
View file @
f69f1b64
...
...
@@ -2,7 +2,13 @@ import React, { useEffect, useState } from 'react';
import
{
useHistory
}
from
'react-router-dom'
;
import
{
reloadFlowNodes
,
removeFlowNodeExtend
}
from
'@/services/flow/flow'
;
import
{
Space
,
Table
,
Popconfirm
,
Tooltip
,
notification
,
message
,
Button
,
Spin
,
Tag
}
from
'antd'
;
import
{
RollbackOutlined
,
EditTwoTone
,
ControlOutlined
,
DeleteOutlined
}
from
'@ant-design/icons'
;
import
{
RollbackOutlined
,
EditTwoTone
,
ControlOutlined
,
DeleteOutlined
,
EyeOutlined
,
}
from
'@ant-design/icons'
;
import
PageContainer
from
'@/components/BasePageContainer'
;
import
NodeEdit
from
'./flowNodeComponents/NodeEdit'
;
import
AuxiliaryView
from
'./flowNodeComponents/AuxiliaryView'
;
...
...
@@ -12,7 +18,7 @@ import end from '@/assets/images/icons/结束节点.png';
const
FlowNode
=
()
=>
{
const
history
=
useHistory
();
const
{
flowName
,
pickItemIndex
}
=
history
.
location
.
state
;
const
{
flowName
,
pickItemIndex
,
allDisabled
}
=
history
.
location
.
state
;
const
[
visible
,
setVisible
]
=
useState
({
nodeEdit
:
false
,
auxiliaryView
:
false
,
...
...
@@ -317,37 +323,63 @@ const FlowNode = () => {
<
Space
>
{
record
.
ID
!==
0
&&
(
<>
<
Tooltip
title=
"修改节点"
>
<
EditTwoTone
onClick=
{
()
=>
{
showModal
(
'nodeEdit'
,
true
);
setNodeMsg
(
record
);
}
}
style=
{
{
fontSize
:
'16px'
,
color
:
'#1890FF'
}
}
/>
</
Tooltip
>
<
Tooltip
title=
"节点辅助视图"
>
<
ControlOutlined
onClick=
{
()
=>
{
showModal
(
'auxiliaryView'
,
true
);
setNodeMsg
(
record
);
}
}
style=
{
{
fontSize
:
'16px'
,
color
:
'#1890FF'
}
}
/>
</
Tooltip
>
{
allDisabled
?
(
<
Tooltip
title=
"节点配置查看"
>
<
EyeOutlined
onClick=
{
()
=>
{
showModal
(
'nodeEdit'
,
true
);
setNodeMsg
(
record
);
}
}
style=
{
{
fontSize
:
'16px'
,
color
:
'#1890FF'
}
}
/>
</
Tooltip
>
)
:
(
<
Tooltip
title=
"节点配置"
>
<
EditTwoTone
onClick=
{
()
=>
{
showModal
(
'nodeEdit'
,
true
);
setNodeMsg
(
record
);
}
}
style=
{
{
fontSize
:
'16px'
,
color
:
'#1890FF'
}
}
/>
</
Tooltip
>
)
}
{
allDisabled
?
(
<
Tooltip
title=
"节点辅助视图查看"
>
<
ControlOutlined
onClick=
{
()
=>
{
showModal
(
'auxiliaryView'
,
true
);
setNodeMsg
(
record
);
}
}
style=
{
{
fontSize
:
'16px'
,
color
:
'#1890FF'
}
}
/>
</
Tooltip
>
)
:
(
<
Tooltip
title=
"节点辅助视图"
>
<
ControlOutlined
onClick=
{
()
=>
{
showModal
(
'auxiliaryView'
,
true
);
setNodeMsg
(
record
);
}
}
style=
{
{
fontSize
:
'16px'
,
color
:
'#1890FF'
}
}
/>
</
Tooltip
>
)
}
</>
)
}
<
Tooltip
title=
"清除节点配置"
>
<
Popconfirm
title=
"是否清除该节点配置?"
onConfirm=
{
()
=>
delNode
(
record
)
}
onCancel=
{
()
=>
message
.
error
(
'取消清除'
)
}
okText=
"是"
cancelText=
"否"
>
<
DeleteOutlined
style=
{
{
fontSize
:
'16px'
,
color
:
'#e86060'
}
}
/>
</
Popconfirm
>
</
Tooltip
>
{
allDisabled
?
null
:
(
<
Tooltip
title=
"清除节点配置"
>
<
Popconfirm
title=
"是否清除该节点配置?"
onConfirm=
{
()
=>
delNode
(
record
)
}
onCancel=
{
()
=>
message
.
error
(
'取消清除'
)
}
okText=
"是"
cancelText=
"否"
>
<
DeleteOutlined
style=
{
{
fontSize
:
'16px'
,
color
:
'#e86060'
}
}
/>
</
Popconfirm
>
</
Tooltip
>
)
}
</
Space
>
</>
),
...
...
@@ -501,11 +533,13 @@ const FlowNode = () => {
showModal
(
'nodeEdit'
,
false
);
getData
();
}
}
allDisabled=
{
allDisabled
}
/>
<
AuxiliaryView
visible=
{
visible
.
auxiliaryView
}
msg=
{
nodeMsg
}
handleCancel=
{
()
=>
showModal
(
'auxiliaryView'
,
false
)
}
allDisabled=
{
allDisabled
}
/>
</
div
>
</
PageContainer
>
...
...
src/pages/bsmanager/workOrder/workFlow/flowNode/flowNodeComponents/AuxiliaryView.jsx
View file @
f69f1b64
...
...
@@ -11,12 +11,12 @@ import {
message
,
Spin
,
}
from
'antd'
;
import
{
EditTwoTone
,
PlusOutlined
,
DeleteOutlined
}
from
'@ant-design/icons'
;
import
{
EditTwoTone
,
PlusOutlined
,
DeleteOutlined
,
EyeOutlined
}
from
'@ant-design/icons'
;
import
AddModal
from
'./auxiliaryComponents/AddModal'
;
import
styles
from
'../flowNode.less'
;
const
AuxiliaryView
=
props
=>
{
const
{
handleCancel
,
visible
,
msg
}
=
props
;
const
{
handleCancel
,
visible
,
msg
,
allDisabled
}
=
props
;
const
[
tableData
,
setTableData
]
=
useState
([]);
// 辅助视图对应的回显的表格
const
[
viewModal
,
setViewModal
]
=
useState
(
false
);
// 辅助视图新政编辑模态框
const
[
modalType
,
setModalType
]
=
useState
(
''
);
// 模态框是编辑还是修改的状态
...
...
@@ -165,23 +165,34 @@ const AuxiliaryView = props => {
render
:
record
=>
(
<>
<
Space
>
<
Tooltip
title=
"修改节点辅助视图"
>
<
EditTwoTone
onClick=
{
()
=>
toEdit
(
record
)
}
style=
{
{
fontSize
:
'16px'
,
color
:
'#1890FF'
}
}
/>
</
Tooltip
>
<
Tooltip
title=
"删除节点辅助视图"
>
<
Popconfirm
title=
"是否清除该辅助视图?"
onConfirm=
{
()
=>
delRow
(
record
)
}
onCancel=
{
()
=>
message
.
error
(
'取消清除'
)
}
okText=
"是"
cancelText=
"否"
>
<
DeleteOutlined
style=
{
{
fontSize
:
'16px'
,
color
:
'#e86060'
}
}
/>
</
Popconfirm
>
</
Tooltip
>
{
allDisabled
?
(
<
Tooltip
title=
"查看节点辅助视图"
>
<
EyeOutlined
onClick=
{
()
=>
toEdit
(
record
)
}
style=
{
{
fontSize
:
'16px'
,
color
:
'#1890FF'
}
}
/>
</
Tooltip
>
)
:
(
<
Tooltip
title=
"修改节点辅助视图"
>
<
EditTwoTone
onClick=
{
()
=>
toEdit
(
record
)
}
style=
{
{
fontSize
:
'16px'
,
color
:
'#1890FF'
}
}
/>
</
Tooltip
>
)
}
{
allDisabled
?
null
:
(
<
Tooltip
title=
"删除节点辅助视图"
>
<
Popconfirm
title=
"是否清除该辅助视图?"
onConfirm=
{
()
=>
delRow
(
record
)
}
onCancel=
{
()
=>
message
.
error
(
'取消清除'
)
}
okText=
"是"
cancelText=
"否"
>
<
DeleteOutlined
style=
{
{
fontSize
:
'16px'
,
color
:
'#e86060'
}
}
/>
</
Popconfirm
>
</
Tooltip
>
)
}
</
Space
>
</>
),
...
...
@@ -199,16 +210,18 @@ const AuxiliaryView = props => {
>
<
div
className=
{
styles
.
auxiliaryViewBox
}
>
<
div
className=
{
styles
.
buttonList
}
>
<
Button
type=
"primary"
onClick=
{
()
=>
{
setViewModal
(
true
);
setModalType
(
'add'
);
}
}
icon=
{
<
PlusOutlined
/>
}
>
新增辅助视图
</
Button
>
{
allDisabled
?
null
:
(
<
Button
type=
"primary"
onClick=
{
()
=>
{
setViewModal
(
true
);
setModalType
(
'add'
);
}
}
icon=
{
<
PlusOutlined
/>
}
>
新增辅助视图
</
Button
>
)
}
</
div
>
<
Spin
spinning=
{
loading
}
tip=
"loading..."
>
<
Table
...
...
@@ -244,6 +257,7 @@ const AuxiliaryView = props => {
setViewModal
(
false
);
getData
();
}
}
allDisabled=
{
allDisabled
}
/>
</
Modal
>
);
...
...
src/pages/bsmanager/workOrder/workFlow/flowNode/flowNodeComponents/NodeEdit.jsx
View file @
f69f1b64
...
...
@@ -30,7 +30,7 @@ import styles from '../flowNode.less';
const
{
Option
}
=
Select
;
const
NodeEdit
=
props
=>
{
const
{
onSubumit
,
handleCancel
,
visible
,
msg
}
=
props
;
const
{
onSubumit
,
handleCancel
,
visible
,
msg
,
allDisabled
}
=
props
;
const
[
fieldList
,
setFieldList
]
=
useState
([]);
// 当前选择库字段列表
const
[
showField
,
setShowField
]
=
useState
(
false
);
// 选择字段弹窗
const
[
fieldName
,
setFieldName
]
=
useState
();
// 编辑的字段
...
...
@@ -413,18 +413,20 @@ const NodeEdit = props => {
return
(
<
Drawer
title=
"流程节点配置"
title=
{
allDisabled
?
'流程节点查看'
:
'流程节点配置'
}
width=
"500px"
onClose=
{
handleCancel
}
destroyOnClose
visible=
{
visible
}
footer=
{
<
Space
>
<
Button
onClick=
{
handleCancel
}
>
取消
</
Button
>
<
Button
onClick=
{
onFinish
}
type=
"primary"
>
确定
</
Button
>
</
Space
>
allDisabled
?
null
:
(
<
Space
>
<
Button
onClick=
{
handleCancel
}
>
取消
</
Button
>
<
Button
onClick=
{
onFinish
}
type=
"primary"
>
确定
</
Button
>
</
Space
>
)
}
>
<
Form
...
...
@@ -443,11 +445,11 @@ const NodeEdit = props => {
name=
"NodeAliasName"
rules=
{
[{
required
:
true
,
message
:
'请填写节点别名'
}]
}
>
<
Input
placeholder=
"请输入节点别名"
/>
<
Input
disabled=
{
allDisabled
}
placeholder=
"请输入节点别名"
/>
</
Form
.
Item
>
<
Form
.
Item
label=
"节点类型"
>
<
Form
.
Item
name=
"NodeType"
style=
{
{
marginBottom
:
'10px'
}
}
>
<
Select
placeholder=
"请选择节点类型"
style=
{
{
width
:
'334px'
}
}
>
<
Select
disabled=
{
allDisabled
}
placeholder=
"请选择节点类型"
style=
{
{
width
:
'334px'
}
}
>
<
Option
value=
"办理"
>
办理
</
Option
>
<
Option
value=
"上报"
>
上报
</
Option
>
<
Option
value=
"分派"
>
分派
</
Option
>
...
...
@@ -461,13 +463,13 @@ const NodeEdit = props => {
<
Row
span=
{
24
}
>
<
Col
span=
{
9
}
>
<
Form
.
Item
name=
"Rollbackable"
valuePropName=
"checked"
style=
{
{
marginBottom
:
0
}
}
>
<
Checkbox
>
允许回退至
</
Checkbox
>
<
Checkbox
disabled=
{
allDisabled
}
>
允许回退至
</
Checkbox
>
</
Form
.
Item
>
</
Col
>
<
Col
span=
{
9
}
>
<
Form
.
Item
name=
"RollbackNode"
style=
{
{
marginBottom
:
0
}
}
initialValue=
"(上一节点)"
>
<
Select
disabled=
{
isDisable
}
disabled=
{
allDisabled
||
isDisable
}
placeholder=
"请选择回退节点"
style=
{
{
width
:
'209px'
}
}
>
...
...
@@ -487,6 +489,7 @@ const NodeEdit = props => {
onChange=
{
changTable
}
showSearch
style=
{
{
width
:
'100%'
}
}
disabled=
{
allDisabled
}
>
{
eventTable
.
map
(
item
=>
(
<
Option
value=
{
item
.
Name
}
key=
{
item
.
ID
}
>
...
...
@@ -496,7 +499,7 @@ const NodeEdit = props => {
</
Select
>
</
Form
.
Item
>
<
Form
.
Item
label=
"移交方式"
name=
"Handover"
>
<
Radio
.
Group
>
<
Radio
.
Group
disabled=
{
allDisabled
}
>
<
Radio
value=
"移交选择人"
>
移交选择人
</
Radio
>
<
Radio
value=
"自处理"
>
自处理
</
Radio
>
<
Radio
value=
"移交默认人"
>
移交默认人
</
Radio
>
...
...
@@ -546,7 +549,7 @@ const NodeEdit = props => {
unCheckedChildren=
"否"
checked=
{
visibleChecked
}
onChange=
{
change
}
disabled=
{
transfer
}
disabled=
{
allDisabled
||
transfer
}
/>
</
Form
.
Item
>
<
Form
.
Item
label=
"暂存"
name=
"IsSave"
>
...
...
@@ -555,6 +558,7 @@ const NodeEdit = props => {
unCheckedChildren=
"否"
checked=
{
visibleChecked5
}
onChange=
{
change5
}
disabled=
{
allDisabled
}
/>
</
Form
.
Item
>
<
Form
.
Item
...
...
@@ -579,7 +583,7 @@ const NodeEdit = props => {
unCheckedChildren=
"否"
checked=
{
visibleChecked6
}
onChange=
{
change6
}
disabled=
{
half
}
disabled=
{
allDisabled
||
half
}
/>
</
Form
.
Item
>
...
...
@@ -605,7 +609,7 @@ const NodeEdit = props => {
unCheckedChildren=
"否"
checked=
{
visibleChecked3
}
onChange=
{
change3
}
disabled=
{
!
autoClose
}
disabled=
{
allDisabled
||
!
autoClose
}
/>
</
Form
.
Item
>
...
...
@@ -615,6 +619,7 @@ const NodeEdit = props => {
unCheckedChildren=
"否"
checked=
{
visibleChecked1
}
onChange=
{
change1
}
disabled=
{
allDisabled
}
/>
{
/* <Radio.Group>
<Radio value="0">否</Radio>
...
...
@@ -627,6 +632,7 @@ const NodeEdit = props => {
unCheckedChildren=
"否"
checked=
{
visibleChecked2
}
onChange=
{
change2
}
disabled=
{
allDisabled
}
/>
{
/* <Radio.Group>
<Radio value={0}>否</Radio>
...
...
@@ -650,15 +656,17 @@ const NodeEdit = props => {
>
<
div
className=
{
styles
.
filedListItem
}
>
<
Form
.
Item
name=
"Fields"
style=
{
{
marginBottom
:
0
,
width
:
'100%'
}
}
>
<
Input
placeholder=
"请选编辑字段"
allowClear
/>
<
Input
disabled=
{
allDisabled
}
placeholder=
"请选编辑字段"
allowClear
/>
</
Form
.
Item
>
<
Button
type=
"dashed"
icon=
{
<
PlusOutlined
/>
}
onClick=
{
()
=>
{
deployField
(
'Fields'
);
}
}
/>
{
allDisabled
?
null
:
(
<
Button
type=
"dashed"
icon=
{
<
PlusOutlined
/>
}
onClick=
{
()
=>
{
deployField
(
'Fields'
);
}
}
/>
)
}
</
div
>
</
Form
.
Item
>
{
/* <Form.Item
...
...
@@ -688,16 +696,16 @@ const NodeEdit = props => {
/>
</div>
</Form.Item> */
}
<
Form
.
Item
label=
"前端视图"
name=
"WebPage"
>
{
/*
<Form.Item label="前端视图" name="WebPage">
<Input placeholder="请配置前端视图" />
</
Form
.
Item
>
</Form.Item>
*/
}
{
/* <Form.Item label="手持视图" name="MobilePage">
<Input placeholder="请配置手持视图" />
</Form.Item>
<Form.Item label="视图参数" name="PageParam">
<Input placeholder="请配置视图参数" />
</Form.Item> */
}
<
Form
.
Item
label=
"反馈类型"
name=
"FeedbackName"
>
{
/*
<Form.Item label="反馈类型" name="FeedbackName">
<Select placeholder="请选择反馈类型" allowClear>
{backType.map(item => (
<Option value={item.value} key={item.value}>
...
...
@@ -705,7 +713,7 @@ const NodeEdit = props => {
</Option>
))}
</Select>
</
Form
.
Item
>
</Form.Item>
*/
}
{
/* <Form.Item
name="FeedbackToEvent"
valuePropName="checked"
...
...
src/pages/bsmanager/workOrder/workFlow/flowNode/flowNodeComponents/auxiliaryComponents/AddModal.jsx
View file @
f69f1b64
...
...
@@ -6,7 +6,16 @@ import ParmarModal from './ParmarModal';
const
{
Option
}
=
Select
;
const
ProcessConfig
=
props
=>
{
const
{
onSubumit
,
handleCancel
,
visible
,
msg
,
flowNodeId
,
modalType
,
title
}
=
props
;
const
{
onSubumit
,
handleCancel
,
visible
,
msg
,
flowNodeId
,
modalType
,
title
,
allDisabled
,
}
=
props
;
const
[
showParmarModal
,
setShowParmarModal
]
=
useState
(
false
);
const
[
treeData
,
setTreeData
]
=
useState
([
'FeedbackAccount'
,
'GisGatherProjectView'
]);
const
[
paramValue
,
setParamValue
]
=
useState
([
'一键入库'
,
'edit'
]);
...
...
@@ -99,6 +108,7 @@ const ProcessConfig = props => {
onCancel=
{
handleCancel
}
maskClosable=
{
false
}
destroyOnClose
footer=
{
allDisabled
?
null
:
true
}
>
<
Form
form=
{
form
}
...
...
@@ -110,7 +120,7 @@ const ProcessConfig = props => {
<
Input
disabled
/>
</
Form
.
Item
>
<
Form
.
Item
label=
"前端标签"
name=
"WebLabel"
>
<
Input
placeholder=
"请输入前端标签"
/>
<
Input
disabled=
{
allDisabled
}
placeholder=
"请输入前端标签"
/>
</
Form
.
Item
>
<
Form
.
Item
label=
"前端视图"
name=
"WebPage"
>
<
Select
...
...
@@ -121,6 +131,7 @@ const ProcessConfig = props => {
optionLabelProp=
"label"
value=
{
selectValue
}
style=
{
{
marginLeft
:
'-3px'
}
}
disabled=
{
allDisabled
}
>
<
Option
value=
"FeedbackAccount"
label=
"FeedbackAccount"
>
<
div
style=
{
{
marginRight
:
'6px'
}
}
>
...
...
@@ -147,9 +158,13 @@ const ProcessConfig = props => {
{
selectValue
===
'FeedbackAccount'
&&
(
<
div
style=
{
{
display
:
'flex'
}
}
>
<
Form
.
Item
name=
"WebParam"
style=
{
{
marginBottom
:
0
,
width
:
'100%'
}
}
>
<
Input
placeholder=
"请输入视图参数"
style=
{
{
width
:
'100%'
}
}
/>
<
Input
disabled=
{
allDisabled
}
placeholder=
"请输入视图参数"
style=
{
{
width
:
'100%'
}
}
/>
</
Form
.
Item
>
<
Button
onClick=
{
addParama
}
>
参数管理
</
Button
>
{
allDisabled
?
null
:
<
Button
onClick=
{
addParama
}
>
参数管理
</
Button
>
}
</
div
>
)
}
{
selectValue
===
'GisGatherProjectView'
&&
(
...
...
@@ -159,6 +174,7 @@ const ProcessConfig = props => {
onSearch=
{
changeParam
}
showSearch
style=
{
{
marginLeft
:
'-3px'
}
}
disabled=
{
allDisabled
}
>
{
paramValue
?
paramValue
.
map
((
item
,
index
)
=>
(
...
...
@@ -172,18 +188,18 @@ const ProcessConfig = props => {
)
}
{
selectValue
!==
'FeedbackAccount'
&&
selectValue
!==
'GisGatherProjectView'
&&
(
<
Form
.
Item
name=
"WebParam"
style=
{
{
marginBottom
:
0
,
width
:
'100%'
}
}
>
<
Input
placeholder=
"请输入视图参数"
/>
<
Input
disabled=
{
allDisabled
}
placeholder=
"请输入视图参数"
/>
</
Form
.
Item
>
)
}
</
Form
.
Item
>
<
Form
.
Item
label=
"手持标签"
name=
"MobileLabel"
>
<
Input
placeholder=
"请输入手持标签"
/>
<
Input
disabled=
{
allDisabled
}
placeholder=
"请输入手持标签"
/>
</
Form
.
Item
>
<
Form
.
Item
label=
"手持视图"
name=
"MobilePage"
>
<
Input
placeholder=
"请输入手持视图"
/>
<
Input
disabled=
{
allDisabled
}
placeholder=
"请输入手持视图"
/>
</
Form
.
Item
>
<
Form
.
Item
label=
"手持参数"
name=
"MobileParam"
>
<
Input
placeholder=
"请输入手持参数"
/>
<
Input
disabled=
{
allDisabled
}
placeholder=
"请输入手持参数"
/>
</
Form
.
Item
>
</
Form
>
<
ParmarModal
...
...
src/pages/bsmanager/workOrder/workflowEdit/workFlowComponents/FlowModal.jsx
View file @
f69f1b64
...
...
@@ -600,12 +600,12 @@ const FlowModal = props => {
</
Radio
.
Group
>
</
Form
.
Item
>
<
Form
.
Item
label=
"
前端
样式"
label=
"
办理
样式"
name=
"WebPage"
initialValue=
"多表在办显示"
rules=
{
[{
required
:
true
,
message
:
'请选择
前端
样式'
}]
}
rules=
{
[{
required
:
true
,
message
:
'请选择
办理
样式'
}]
}
>
<
Select
placeholder=
"请选择
前端
样式"
>
<
Select
placeholder=
"请选择
办理
样式"
>
<
Option
value=
"多表在办显示"
>
多表在办显示
</
Option
>
<
Option
value=
"多表显示"
>
多表显示
</
Option
>
{
/* <Option value="表堆叠显示">表堆叠显示</Option> */
}
...
...
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