@jiangood/open-admin-flowable 2.2.1 → 2.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/components/InstanceView.jsx +2 -4
- package/src/components/flowable/done-table.jsx +2 -4
- package/src/components/flowable/my-table.jsx +2 -4
- package/src/components/flowable/todo-table.jsx +1 -2
- package/src/pages/flowable/design/index.jsx +6 -8
- package/src/pages/flowable/design/provider/properties/AssignmentSection.jsx +3 -4
- package/src/pages/flowable/design/provider/properties/ConditionDesign.jsx +1 -2
- package/src/pages/flowable/design/provider/properties/DelegateExpressionProps.jsx +1 -2
- package/src/pages/flowable/design/provider/properties/FormProps.jsx +1 -2
- package/src/pages/flowable/index.jsx +6 -8
- package/src/pages/flowable/monitor/definition/index.jsx +1 -2
- package/src/pages/flowable/monitor/instance/index.jsx +3 -5
- package/src/pages/flowable/monitor/instance/view.jsx +1 -1
- package/src/pages/flowable/monitor/task/index.jsx +2 -3
- package/src/pages/flowable/simulate/InitPhase.jsx +1 -1
- package/src/pages/flowable/simulate/RunningPhase.jsx +1 -1
- package/src/pages/flowable/simulate/index.jsx +7 -8
- package/src/pages/flowable/user-task/form.jsx +3 -4
- package/src/pages/flowable/user-task/index.jsx +3 -3
- package/src/pages/flowable/user-task/instance/view.jsx +1 -1
- package/src/constants/api.js +0 -39
- package/src/constants/routes.js +0 -8
package/package.json
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import {Gap, HttpUtils, Page, PageUtils, ProTable} from "@jiangood/open-admin";
|
|
3
3
|
import {Card, Empty, Skeleton, Table} from "antd";
|
|
4
|
-
import {USER_TASK_GET_INSTANCE_INFO, MONITOR_INSTANCE_VARS} from "@/constants/api";
|
|
5
|
-
|
|
6
4
|
export default class extends React.Component {
|
|
7
5
|
state = {
|
|
8
6
|
commentList: [],
|
|
@@ -22,7 +20,7 @@ export default class extends React.Component {
|
|
|
22
20
|
|
|
23
21
|
const reqParams = {id};
|
|
24
22
|
if (businessKey) reqParams.businessKey = businessKey;
|
|
25
|
-
HttpUtils.get(
|
|
23
|
+
HttpUtils.get('admin/flowable/user-task/getInstanceInfo', reqParams).then(rs => {
|
|
26
24
|
this.setState(rs)
|
|
27
25
|
this.setState({
|
|
28
26
|
commentList: rs.commentList,
|
|
@@ -76,7 +74,7 @@ export default class extends React.Component {
|
|
|
76
74
|
{dataIndex: 'value', title: '变量值'},
|
|
77
75
|
]}
|
|
78
76
|
rowKey='key'
|
|
79
|
-
request={() => HttpUtils.get(
|
|
77
|
+
request={() => HttpUtils.get('admin/flowable/monitor/instance/vars', {id})}
|
|
80
78
|
/>
|
|
81
79
|
</Card>
|
|
82
80
|
)}
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import {Button} from "antd";
|
|
2
2
|
import {HttpUtils, PageUtils, ProTable} from "@jiangood/open-admin";
|
|
3
3
|
import React from "react";
|
|
4
|
-
import {USER_TASK_DONE_PAGE} from "@/constants/api";
|
|
5
|
-
import {ROUTE_USER_INSTANCE_VIEW} from "@/constants/routes";
|
|
6
4
|
|
|
7
5
|
const columns = [
|
|
8
6
|
{title: '流程名称', dataIndex: 'instanceName'},
|
|
@@ -16,7 +14,7 @@ const columns = [
|
|
|
16
14
|
{
|
|
17
15
|
title: '操作', dataIndex: 'option',
|
|
18
16
|
render: (_, record) => (
|
|
19
|
-
<Button size='small' onClick={() => PageUtils.open(
|
|
17
|
+
<Button size='small' onClick={() => PageUtils.open('/flowable/user-task/instance/view' + '?id=' + record.instanceId, '流程信息')}>查看</Button>
|
|
20
18
|
),
|
|
21
19
|
},
|
|
22
20
|
];
|
|
@@ -24,7 +22,7 @@ const columns = [
|
|
|
24
22
|
export default function DoneTable() {
|
|
25
23
|
return <ProTable
|
|
26
24
|
showToolbarSearch={false}
|
|
27
|
-
request={(params) => HttpUtils.get(
|
|
25
|
+
request={(params) => HttpUtils.get('admin/flowable/user-task/doneTaskPage', params)}
|
|
28
26
|
columns={columns}
|
|
29
27
|
size='small'
|
|
30
28
|
/>;
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import {Button} from "antd";
|
|
2
2
|
import {HttpUtils, PageUtils, ProTable} from "@jiangood/open-admin";
|
|
3
3
|
import React from "react";
|
|
4
|
-
import {USER_TASK_MY_INSTANCE} from "@/constants/api";
|
|
5
|
-
import {ROUTE_USER_INSTANCE_VIEW} from "@/constants/routes";
|
|
6
4
|
|
|
7
5
|
const columns = [
|
|
8
6
|
{
|
|
@@ -21,14 +19,14 @@ const columns = [
|
|
|
21
19
|
{
|
|
22
20
|
title: '操作', dataIndex: 'option',
|
|
23
21
|
render: (_, record) => (
|
|
24
|
-
<Button size='small' onClick={() => PageUtils.open(
|
|
22
|
+
<Button size='small' onClick={() => PageUtils.open('/flowable/user-task/instance/view' + '?id=' + record.id, '流程信息')}>查看</Button>
|
|
25
23
|
),
|
|
26
24
|
},
|
|
27
25
|
];
|
|
28
26
|
|
|
29
27
|
export default function MyTable() {
|
|
30
28
|
return <ProTable
|
|
31
|
-
request={(params) => HttpUtils.get(
|
|
29
|
+
request={(params) => HttpUtils.get('admin/flowable/user-task/myInstance', params)}
|
|
32
30
|
columns={columns}
|
|
33
31
|
/>;
|
|
34
32
|
}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import {HttpUtils, LinkButton, ProTable} from "@jiangood/open-admin";
|
|
2
2
|
import React from "react";
|
|
3
|
-
import {USER_TASK_TODO_PAGE} from "@/constants/api";
|
|
4
3
|
|
|
5
4
|
const columns = [
|
|
6
5
|
{title: '发起人', dataIndex: 'instanceStarter'},
|
|
@@ -21,7 +20,7 @@ const columns = [
|
|
|
21
20
|
export default function TodoTable() {
|
|
22
21
|
return <ProTable
|
|
23
22
|
showToolbarSearch={false}
|
|
24
|
-
request={(params) => HttpUtils.get(
|
|
23
|
+
request={(params) => HttpUtils.get('admin/flowable/user-task/todoTaskPage', params)}
|
|
25
24
|
columns={columns}
|
|
26
25
|
size='small'
|
|
27
26
|
/>;
|
|
@@ -10,8 +10,6 @@ import customTranslate from "./customTranslate/customTranslate";
|
|
|
10
10
|
import contextPad from "./contextPad";
|
|
11
11
|
import {CloudUploadOutlined, DownloadOutlined, SaveOutlined, UploadOutlined} from "@ant-design/icons";
|
|
12
12
|
import {HttpUtils, PageLoading, PageUtils, ProTable} from "@jiangood/open-admin";
|
|
13
|
-
import {MODEL_DETAIL, MODEL_SAVE_CONTENT, MODEL_DEPLOY, MODEL_GET_DEFINITION_CONTENT, MODEL_DEFINITION_PAGE} from "@/constants/api";
|
|
14
|
-
import {ROUTE_SIMULATE} from "@/constants/routes";
|
|
15
13
|
import 'bpmn-js/dist/assets/bpmn-js.css';
|
|
16
14
|
import flowableJson from './descriptors/flowable';
|
|
17
15
|
import PropertiesPanel from './PropertiesPanel';
|
|
@@ -32,7 +30,7 @@ export default class extends React.Component {
|
|
|
32
30
|
|
|
33
31
|
async componentDidMount() {
|
|
34
32
|
const params = PageUtils.currentParams()
|
|
35
|
-
const rs = await HttpUtils.get(
|
|
33
|
+
const rs = await HttpUtils.get('admin/flowable/model/detail', {id: params.id})
|
|
36
34
|
this.setState({model: rs, id: params.id}, this.initBpmn)
|
|
37
35
|
}
|
|
38
36
|
|
|
@@ -91,7 +89,7 @@ export default class extends React.Component {
|
|
|
91
89
|
const hide = message.loading('正在保存...', 0)
|
|
92
90
|
try {
|
|
93
91
|
const res = await this.bpmnModeler.saveXML();
|
|
94
|
-
await HttpUtils.post(
|
|
92
|
+
await HttpUtils.post('admin/flowable/model/saveContent', {id, content: res.xml});
|
|
95
93
|
} finally {
|
|
96
94
|
hide()
|
|
97
95
|
}
|
|
@@ -102,7 +100,7 @@ export default class extends React.Component {
|
|
|
102
100
|
const hide = message.loading('正在部署...', 0)
|
|
103
101
|
try {
|
|
104
102
|
const res = await this.bpmnModeler.saveXML();
|
|
105
|
-
await HttpUtils.post(
|
|
103
|
+
await HttpUtils.post('admin/flowable/model/deploy', {id, content: res.xml});
|
|
106
104
|
} finally {
|
|
107
105
|
hide()
|
|
108
106
|
}
|
|
@@ -121,7 +119,7 @@ export default class extends React.Component {
|
|
|
121
119
|
<Button icon={<DownloadOutlined/>} onClick={this.handleExportXML}>导出XML</Button>
|
|
122
120
|
<Button icon={<UploadOutlined/>} onClick={this.handleImportXML}>导入XML</Button>
|
|
123
121
|
<Button
|
|
124
|
-
onClick={() => PageUtils.open(
|
|
122
|
+
onClick={() => PageUtils.open('/flowable/simulate' + '?id=' + this.state.id, "流程仿真")}> 仿真 </Button>
|
|
125
123
|
|
|
126
124
|
<Button title='查看已部署的历史版本' onClick={() => {
|
|
127
125
|
this.setState({deployedModal: true})
|
|
@@ -164,7 +162,7 @@ export default class extends React.Component {
|
|
|
164
162
|
dataIndex:'id',
|
|
165
163
|
render:(_, record)=> {
|
|
166
164
|
return <Button type='primary' onClick={()=>{
|
|
167
|
-
HttpUtils.get(
|
|
165
|
+
HttpUtils.get('admin/flowable/model/getDefinitionContent',{id: record.id}).then(xml=>{
|
|
168
166
|
this.bpmnModeler.importXML(xml)
|
|
169
167
|
this.setState({deployedModal:false})
|
|
170
168
|
})
|
|
@@ -174,7 +172,7 @@ export default class extends React.Component {
|
|
|
174
172
|
]}
|
|
175
173
|
request={params => {
|
|
176
174
|
params.key = this.state.model.key
|
|
177
|
-
return HttpUtils.get(
|
|
175
|
+
return HttpUtils.get('admin/flowable/model/definitionPage', params)
|
|
178
176
|
}}>
|
|
179
177
|
|
|
180
178
|
</ProTable>
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import {Form, Radio} from "antd";
|
|
2
2
|
import {FieldRemoteSelect, FieldRemoteSelectMultipleInline, StringUtils} from "@jiangood/open-admin";
|
|
3
3
|
import React from "react";
|
|
4
|
-
import {MODEL_ASSIGNEE_OPTIONS, MODEL_CANDIDATE_GROUPS_OPTIONS, MODEL_CANDIDATE_USERS_OPTIONS} from "@/constants/api";
|
|
5
4
|
|
|
6
5
|
export default function AssignmentSection(props) {
|
|
7
6
|
const {element, modeling} = props
|
|
@@ -57,17 +56,17 @@ export default function AssignmentSection(props) {
|
|
|
57
56
|
}}>
|
|
58
57
|
{mode === 'assignee' && (
|
|
59
58
|
<Form.Item label="办理人" name='assignee'>
|
|
60
|
-
<FieldRemoteSelect url=
|
|
59
|
+
<FieldRemoteSelect url='admin/flowable/model/assigneeOptions'/>
|
|
61
60
|
</Form.Item>
|
|
62
61
|
)}
|
|
63
62
|
{mode === 'candidateGroups' && (
|
|
64
63
|
<Form.Item label="候选组" name='candidateGroups'>
|
|
65
|
-
<FieldRemoteSelect url=
|
|
64
|
+
<FieldRemoteSelect url='admin/flowable/model/candidateGroupsOptions'/>
|
|
66
65
|
</Form.Item>
|
|
67
66
|
)}
|
|
68
67
|
{mode === 'candidateUsers' && (
|
|
69
68
|
<Form.Item label="候选人" name='candidateUsers'>
|
|
70
|
-
<FieldRemoteSelectMultipleInline url=
|
|
69
|
+
<FieldRemoteSelectMultipleInline url='admin/flowable/model/candidateUsersOptions'/>
|
|
71
70
|
</Form.Item>
|
|
72
71
|
)}
|
|
73
72
|
</Form>
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import {Button, Input, InputNumber, Modal, Select} from "antd";
|
|
2
2
|
import {Component} from "react";
|
|
3
3
|
import {FieldBoolean, FieldTable, HttpUtils, ObjectUtils, StringUtils, ThemeUtils} from "@jiangood/open-admin";
|
|
4
|
-
import {MODEL_VAR_LIST} from "@/constants/api";
|
|
5
4
|
import {ConditionExpressionUtils} from "./ConditionExpressionUtils";
|
|
6
5
|
|
|
7
6
|
|
|
@@ -133,7 +132,7 @@ export class ConditionDesignButton extends Component {
|
|
|
133
132
|
|
|
134
133
|
componentDidMount() {
|
|
135
134
|
const {processId} = this.props;
|
|
136
|
-
HttpUtils.get(
|
|
135
|
+
HttpUtils.get('admin/flowable/model/varList', {code: processId}).then(rs => {
|
|
137
136
|
const options = rs.map(r => {
|
|
138
137
|
return {
|
|
139
138
|
label: r.label,
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import {Select} from 'antd';
|
|
2
2
|
import {useEffect, useState} from 'react';
|
|
3
3
|
import {HttpUtils} from "@jiangood/open-admin";
|
|
4
|
-
import {MODEL_JAVA_DELEGATE_OPTIONS} from "@/constants/api";
|
|
5
4
|
|
|
6
5
|
export default function DelegateExpressionField({element, modeling}) {
|
|
7
6
|
const [options, setOptions] = useState([]);
|
|
8
7
|
|
|
9
8
|
useEffect(() => {
|
|
10
|
-
HttpUtils.get(
|
|
9
|
+
HttpUtils.get('admin/flowable/model/javaDelegateOptions').then(rs => {
|
|
11
10
|
setOptions((rs || []).map(o => typeof o === 'string' ? {label: o, value: o} : o));
|
|
12
11
|
});
|
|
13
12
|
}, []);
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import {Select} from 'antd';
|
|
2
2
|
import {useEffect, useState} from 'react';
|
|
3
3
|
import {HttpUtils} from "@jiangood/open-admin";
|
|
4
|
-
import {MODEL_FORM_OPTIONS} from "@/constants/api";
|
|
5
4
|
|
|
6
5
|
export default function FormField({element, modeling, processId}) {
|
|
7
6
|
const [options, setOptions] = useState([]);
|
|
8
7
|
|
|
9
8
|
useEffect(() => {
|
|
10
|
-
HttpUtils.get(
|
|
9
|
+
HttpUtils.get('admin/flowable/model/formOptions', {code: processId}).then(rs => {
|
|
11
10
|
setOptions((rs || []).map(o => typeof o === 'string' ? {label: o, value: o} : o));
|
|
12
11
|
});
|
|
13
12
|
}, [processId]);
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import {Button, Popconfirm, Space} from 'antd';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import {ButtonList, HttpUtils, Page, PageUtils, ProTable} from "@jiangood/open-admin";
|
|
4
|
-
import {MODEL_PAGE, MODEL_DELETE} from "@/constants/api";
|
|
5
|
-
import {ROUTE_DESIGN, ROUTE_MONITOR_TASK, ROUTE_MONITOR_INSTANCE, ROUTE_MONITOR_DEFINITION} from "@/constants/routes";
|
|
6
4
|
|
|
7
5
|
export default class extends React.Component {
|
|
8
6
|
|
|
@@ -37,7 +35,7 @@ export default class extends React.Component {
|
|
|
37
35
|
render: (_, record) => (
|
|
38
36
|
<Space>
|
|
39
37
|
<Button size='small' type='primary'
|
|
40
|
-
onClick={() => PageUtils.open(
|
|
38
|
+
onClick={() => PageUtils.open('/flowable/design' + '?id=' + record.id, '流程设计' + record.name)}> 设计 </Button>
|
|
41
39
|
<Popconfirm perm='flowable/model:delete' title={'是否确定删除流程模型'}
|
|
42
40
|
onConfirm={() => this.handleDelete(record)}>
|
|
43
41
|
<Button size='small' danger>删除</Button>
|
|
@@ -49,7 +47,7 @@ export default class extends React.Component {
|
|
|
49
47
|
|
|
50
48
|
|
|
51
49
|
handleDelete = row => {
|
|
52
|
-
HttpUtils.post(
|
|
50
|
+
HttpUtils.post('admin/flowable/model/delete', {id: row.id}).then(rs => {
|
|
53
51
|
this.actionRef.current.reload();
|
|
54
52
|
})
|
|
55
53
|
}
|
|
@@ -60,18 +58,18 @@ export default class extends React.Component {
|
|
|
60
58
|
return <Page padding>
|
|
61
59
|
<ProTable
|
|
62
60
|
actionRef={this.actionRef}
|
|
63
|
-
request={(params) => HttpUtils.get(
|
|
61
|
+
request={(params) => HttpUtils.get('admin/flowable/model/page', params)}
|
|
64
62
|
columns={this.columns}
|
|
65
63
|
showToolbarSearch={true}
|
|
66
64
|
toolBarRender={() => {
|
|
67
65
|
return <ButtonList>
|
|
68
|
-
<Button onClick={() => PageUtils.open(
|
|
66
|
+
<Button onClick={() => PageUtils.open('/flowable/monitor/task', "运行中的任务")}>
|
|
69
67
|
运行中的任务
|
|
70
68
|
</Button>
|
|
71
|
-
<Button onClick={() => PageUtils.open(
|
|
69
|
+
<Button onClick={() => PageUtils.open('/flowable/monitor/instance', "运行中的流程实例")}>
|
|
72
70
|
运行中的流程实例
|
|
73
71
|
</Button>
|
|
74
|
-
<Button onClick={() => PageUtils.open(
|
|
72
|
+
<Button onClick={() => PageUtils.open('/flowable/monitor/definition', "已部署的流程定义")}>
|
|
75
73
|
已部署的流程定义
|
|
76
74
|
</Button>
|
|
77
75
|
</ButtonList>
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import {HttpUtils, ProTable} from "@jiangood/open-admin";
|
|
3
|
-
import {MONITOR_DEFINITION_PAGE} from "@/constants/api";
|
|
4
3
|
|
|
5
4
|
export default class extends React.Component {
|
|
6
5
|
|
|
@@ -80,7 +79,7 @@ export default class extends React.Component {
|
|
|
80
79
|
return <ProTable
|
|
81
80
|
search={false}
|
|
82
81
|
columns={this.columns}
|
|
83
|
-
request={(params) => HttpUtils.get(
|
|
82
|
+
request={(params) => HttpUtils.get('admin/flowable/monitor/definitionPage', params)}
|
|
84
83
|
>
|
|
85
84
|
|
|
86
85
|
</ProTable>
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import {Button, message, Popconfirm, Space} from "antd";
|
|
2
2
|
import {HttpUtils, PageUtils, ProTable} from "@jiangood/open-admin";
|
|
3
3
|
import React from "react";
|
|
4
|
-
import {MONITOR_PROCESS_INSTANCE_CLOSE, MONITOR_INSTANCE_PAGE} from "@/constants/api";
|
|
5
|
-
import {ROUTE_MONITOR_INSTANCE_VIEW} from "@/constants/routes";
|
|
6
4
|
|
|
7
5
|
export default class extends React.Component {
|
|
8
6
|
|
|
@@ -54,7 +52,7 @@ export default class extends React.Component {
|
|
|
54
52
|
fixed: 'right',
|
|
55
53
|
render: (_, r) => {
|
|
56
54
|
return <Space>
|
|
57
|
-
<Button size='small' onClick={() => PageUtils.open(
|
|
55
|
+
<Button size='small' onClick={() => PageUtils.open('/flowable/monitor/instance/view' + '?id=' + r.id, '查看流程')}>查看</Button>
|
|
58
56
|
<Popconfirm title={'关闭流程'}
|
|
59
57
|
onConfirm={() => this.close(r.id)}>
|
|
60
58
|
<Button size='small' >终止</Button>
|
|
@@ -65,7 +63,7 @@ export default class extends React.Component {
|
|
|
65
63
|
]
|
|
66
64
|
|
|
67
65
|
close = (id) => {
|
|
68
|
-
HttpUtils.get(
|
|
66
|
+
HttpUtils.get('admin/flowable/monitor/processInstance/close', {id}).then((rs) => {
|
|
69
67
|
this.tableRef.current.reload()
|
|
70
68
|
}).catch(e => {
|
|
71
69
|
message.error(e?.message || '关闭流程失败');
|
|
@@ -78,7 +76,7 @@ export default class extends React.Component {
|
|
|
78
76
|
return <ProTable
|
|
79
77
|
actionRef={this.tableRef}
|
|
80
78
|
columns={this.columns}
|
|
81
|
-
request={(params) => HttpUtils.get(
|
|
79
|
+
request={(params) => HttpUtils.get('admin/flowable/monitor/instancePage', params)}
|
|
82
80
|
>
|
|
83
81
|
|
|
84
82
|
</ProTable>
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import {FieldUserSelect, HttpUtils, Page, ProTable} from "@jiangood/open-admin";
|
|
2
2
|
import {Button, Form, message, Modal} from "antd";
|
|
3
3
|
import React from "react";
|
|
4
|
-
import {MONITOR_SET_ASSIGNEE, MONITOR_TASK} from "@/constants/api";
|
|
5
4
|
|
|
6
5
|
export default class extends React.Component {
|
|
7
6
|
|
|
@@ -19,7 +18,7 @@ export default class extends React.Component {
|
|
|
19
18
|
};
|
|
20
19
|
|
|
21
20
|
submitSetAssignee = values => {
|
|
22
|
-
HttpUtils.post(
|
|
21
|
+
HttpUtils.post('admin/flowable/monitor/setAssignee',values).then(()=>{
|
|
23
22
|
this.setState({assigneeFormOpen:false})
|
|
24
23
|
this.taskTableRef.current.reload()
|
|
25
24
|
}).catch(e => {
|
|
@@ -75,7 +74,7 @@ export default class extends React.Component {
|
|
|
75
74
|
}
|
|
76
75
|
}
|
|
77
76
|
]}
|
|
78
|
-
request={(params) => HttpUtils.get(
|
|
77
|
+
request={(params) => HttpUtils.get('admin/flowable/monitor/task', params)}
|
|
79
78
|
>
|
|
80
79
|
<Form.Item label='受理人' name='assignee'>
|
|
81
80
|
<FieldUserSelect />
|
|
@@ -2,7 +2,7 @@ import React from "react";
|
|
|
2
2
|
import {Button, Form, Input, Select, Splitter} from "antd";
|
|
3
3
|
import {StringUtils} from "@jiangood/open-admin";
|
|
4
4
|
import {PlayCircleOutlined} from "@ant-design/icons";
|
|
5
|
-
import HistoryListPanel from "
|
|
5
|
+
import HistoryListPanel from "../../../components/flowable/HistoryListPanel";
|
|
6
6
|
|
|
7
7
|
export default class InitPhase extends React.Component {
|
|
8
8
|
render() {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import {Button, Card, Empty, Input, Select, Space, Splitter, Table, Tag, Typography} from "antd";
|
|
3
3
|
import {CheckCircleOutlined, CloseCircleOutlined} from "@ant-design/icons";
|
|
4
|
-
import ProcessImageViewer from "
|
|
4
|
+
import ProcessImageViewer from "../../../components/ProcessImageViewer";
|
|
5
5
|
|
|
6
6
|
export default class RunningPhase extends React.Component {
|
|
7
7
|
render() {
|
|
@@ -4,7 +4,6 @@ import {HttpUtils, PageLoading, PageUtils} from "@jiangood/open-admin";
|
|
|
4
4
|
import InitPhase from "./InitPhase";
|
|
5
5
|
import RunningPhase from "./RunningPhase";
|
|
6
6
|
import FinishedPhase from "./FinishedPhase";
|
|
7
|
-
import {SIMULATE_GET, SIMULATE_USERS, SIMULATE_LIST, SIMULATE_START, SIMULATE_STATUS, SIMULATE_TASK_HANDLE, SIMULATE_DELETE} from "@/constants/api";
|
|
8
7
|
|
|
9
8
|
const PHASE_INIT = 'init';
|
|
10
9
|
const PHASE_RUNNING = 'running';
|
|
@@ -32,7 +31,7 @@ export default class extends React.Component {
|
|
|
32
31
|
const params = PageUtils.currentParams();
|
|
33
32
|
const id = this.id = params.id;
|
|
34
33
|
|
|
35
|
-
HttpUtils.get(
|
|
34
|
+
HttpUtils.get('admin/flowable/simulate/get', {id}).then(rs => {
|
|
36
35
|
this.setState({model: rs}, this.loadHistory);
|
|
37
36
|
});
|
|
38
37
|
|
|
@@ -40,7 +39,7 @@ export default class extends React.Component {
|
|
|
40
39
|
}
|
|
41
40
|
|
|
42
41
|
loadUsers = (searchText) => {
|
|
43
|
-
HttpUtils.get(
|
|
42
|
+
HttpUtils.get('admin/flowable/simulate/users', {searchText}).then(rs => {
|
|
44
43
|
this.setState({users: rs || []});
|
|
45
44
|
});
|
|
46
45
|
}
|
|
@@ -49,7 +48,7 @@ export default class extends React.Component {
|
|
|
49
48
|
const {model} = this.state;
|
|
50
49
|
if (!model?.key) return;
|
|
51
50
|
this.setState({historyLoading: true});
|
|
52
|
-
HttpUtils.get(
|
|
51
|
+
HttpUtils.get('admin/flowable/simulate/list', {key: model.key}).then(rs => {
|
|
53
52
|
this.setState({historyList: rs || [], historyLoading: false});
|
|
54
53
|
}).catch(e => {
|
|
55
54
|
message.error(e?.message || '加载历史记录失败');
|
|
@@ -59,7 +58,7 @@ export default class extends React.Component {
|
|
|
59
58
|
|
|
60
59
|
handleStart = values => {
|
|
61
60
|
this.setState({submitting: true});
|
|
62
|
-
HttpUtils.post(
|
|
61
|
+
HttpUtils.post('admin/flowable/simulate/start', values).then(rs => {
|
|
63
62
|
message.success('仿真流程已启动');
|
|
64
63
|
this.loadStatus(rs.instanceId);
|
|
65
64
|
}).catch(e => {
|
|
@@ -70,7 +69,7 @@ export default class extends React.Component {
|
|
|
70
69
|
|
|
71
70
|
loadStatus = (instanceId) => {
|
|
72
71
|
this.setState({loading: true, instanceId, phase: PHASE_RUNNING, taskFormValues: {}});
|
|
73
|
-
HttpUtils.get(
|
|
72
|
+
HttpUtils.get('admin/flowable/simulate/status', {instanceId}).then(rs => {
|
|
74
73
|
const phase = rs.finished ? PHASE_FINISHED : PHASE_RUNNING;
|
|
75
74
|
this.setState({status: rs, phase, loading: false, submitting: false});
|
|
76
75
|
}).catch(e => {
|
|
@@ -109,7 +108,7 @@ export default class extends React.Component {
|
|
|
109
108
|
}
|
|
110
109
|
|
|
111
110
|
this.setState({submitting: true});
|
|
112
|
-
HttpUtils.post(
|
|
111
|
+
HttpUtils.post('admin/flowable/simulate/task/handle', {
|
|
113
112
|
taskId,
|
|
114
113
|
action,
|
|
115
114
|
comment: formValue.comment || '',
|
|
@@ -146,7 +145,7 @@ export default class extends React.Component {
|
|
|
146
145
|
okType: 'danger',
|
|
147
146
|
cancelText: '取消',
|
|
148
147
|
onOk: () => {
|
|
149
|
-
HttpUtils.post(
|
|
148
|
+
HttpUtils.post('admin/flowable/simulate/delete', {instanceId}).then(() => {
|
|
150
149
|
message.success('仿真记录已删除');
|
|
151
150
|
this.loadHistory();
|
|
152
151
|
});
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import {Button, Card, Empty, Form, Input, message, Radio, Spin, Splitter, Table, Typography} from "antd";
|
|
3
|
-
import ProcessImageViewer from "
|
|
3
|
+
import ProcessImageViewer from "../../../components/ProcessImageViewer";
|
|
4
4
|
import {FormRegistryUtils, Gap, HttpUtils, Page, PageUtils} from "@jiangood/open-admin";
|
|
5
|
-
import {USER_TASK_GET_INSTANCE_INFO_BY_TASK_ID, USER_TASK_HANDLE_TASK} from "@/constants/api";
|
|
6
5
|
|
|
7
6
|
export default class extends React.Component {
|
|
8
7
|
|
|
@@ -31,7 +30,7 @@ export default class extends React.Component {
|
|
|
31
30
|
const {taskId} = PageUtils.currentParams()
|
|
32
31
|
|
|
33
32
|
|
|
34
|
-
HttpUtils.get(
|
|
33
|
+
HttpUtils.get('admin/flowable/user-task/getInstanceInfoByTaskId', {taskId}).then(rs => {
|
|
35
34
|
this.setState({data: rs})
|
|
36
35
|
}).catch(e => {
|
|
37
36
|
message.error(e?.message || '获取任务信息失败');
|
|
@@ -51,7 +50,7 @@ export default class extends React.Component {
|
|
|
51
50
|
value.formData = this.state.formData
|
|
52
51
|
}
|
|
53
52
|
value.taskId = this.state.data.taskId
|
|
54
|
-
await HttpUtils.post(
|
|
53
|
+
await HttpUtils.post('admin/flowable/user-task/handleTask', value)
|
|
55
54
|
|
|
56
55
|
PageUtils.closeCurrent()
|
|
57
56
|
} catch (error) {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import {Tabs} from "antd";
|
|
3
3
|
import {Page, PageLoading} from "@jiangood/open-admin";
|
|
4
|
-
import TodoTable from "
|
|
5
|
-
import DoneTable from "
|
|
6
|
-
import MyTable from "
|
|
4
|
+
import TodoTable from "../../../components/flowable/todo-table";
|
|
5
|
+
import DoneTable from "../../../components/flowable/done-table";
|
|
6
|
+
import MyTable from "../../../components/flowable/my-table";
|
|
7
7
|
|
|
8
8
|
export default class extends React.Component {
|
|
9
9
|
state = { show: true }
|
package/src/constants/api.js
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
export const MODEL_PAGE = 'admin/flowable/model/page'
|
|
2
|
-
export const MODEL_DETAIL = 'admin/flowable/model/detail'
|
|
3
|
-
export const MODEL_SAVE_CONTENT = 'admin/flowable/model/saveContent'
|
|
4
|
-
export const MODEL_DEPLOY = 'admin/flowable/model/deploy'
|
|
5
|
-
export const MODEL_DELETE = 'admin/flowable/model/delete'
|
|
6
|
-
export const MODEL_GET_DEFINITION_CONTENT = 'admin/flowable/model/getDefinitionContent'
|
|
7
|
-
export const MODEL_DEFINITION_PAGE = 'admin/flowable/model/definitionPage'
|
|
8
|
-
export const MODEL_FORM_OPTIONS = 'admin/flowable/model/formOptions'
|
|
9
|
-
export const MODEL_JAVA_DELEGATE_OPTIONS = 'admin/flowable/model/javaDelegateOptions'
|
|
10
|
-
export const MODEL_VAR_LIST = 'admin/flowable/model/varList'
|
|
11
|
-
export const MODEL_ASSIGNEE_OPTIONS = 'admin/flowable/model/assigneeOptions'
|
|
12
|
-
export const MODEL_CANDIDATE_GROUPS_OPTIONS = 'admin/flowable/model/candidateGroupsOptions'
|
|
13
|
-
export const MODEL_CANDIDATE_USERS_OPTIONS = 'admin/flowable/model/candidateUsersOptions'
|
|
14
|
-
|
|
15
|
-
export const SIMULATE_GET = 'admin/flowable/simulate/get'
|
|
16
|
-
export const SIMULATE_USERS = 'admin/flowable/simulate/users'
|
|
17
|
-
export const SIMULATE_LIST = 'admin/flowable/simulate/list'
|
|
18
|
-
export const SIMULATE_START = 'admin/flowable/simulate/start'
|
|
19
|
-
export const SIMULATE_STATUS = 'admin/flowable/simulate/status'
|
|
20
|
-
export const SIMULATE_TASK_HANDLE = 'admin/flowable/simulate/task/handle'
|
|
21
|
-
export const SIMULATE_DELETE = 'admin/flowable/simulate/delete'
|
|
22
|
-
|
|
23
|
-
export const USER_TASK_TODO_PAGE = 'admin/flowable/user-task/todoTaskPage'
|
|
24
|
-
export const USER_TASK_DONE_PAGE = 'admin/flowable/user-task/doneTaskPage'
|
|
25
|
-
export const USER_TASK_MY_INSTANCE = 'admin/flowable/user-task/myInstance'
|
|
26
|
-
export const USER_TASK_GET_INSTANCE_INFO = 'admin/flowable/user-task/getInstanceInfo'
|
|
27
|
-
export const USER_TASK_GET_INSTANCE_INFO_BY_TASK_ID = 'admin/flowable/user-task/getInstanceInfoByTaskId'
|
|
28
|
-
export const USER_TASK_HANDLE_TASK = 'admin/flowable/user-task/handleTask'
|
|
29
|
-
|
|
30
|
-
export const MONITOR_PROCESS_INSTANCE_CLOSE = 'admin/flowable/monitor/processInstance/close'
|
|
31
|
-
export const MONITOR_INSTANCE_PAGE = 'admin/flowable/monitor/instancePage'
|
|
32
|
-
export const MONITOR_SET_ASSIGNEE = 'admin/flowable/monitor/setAssignee'
|
|
33
|
-
export const MONITOR_TASK = 'admin/flowable/monitor/task'
|
|
34
|
-
export const MONITOR_DEFINITION_PAGE = 'admin/flowable/monitor/definitionPage'
|
|
35
|
-
export const MONITOR_INSTANCE_VARS = 'admin/flowable/monitor/instance/vars'
|
|
36
|
-
|
|
37
|
-
export const EXAMPLE_LEAVE_LIST = 'admin/flowable/example/leave/list'
|
|
38
|
-
export const EXAMPLE_LEAVE_DETAIL = 'admin/flowable/example/leave/detail'
|
|
39
|
-
export const EXAMPLE_LEAVE_START = 'admin/flowable/example/leave/start'
|
package/src/constants/routes.js
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export const ROUTE_DESIGN = '/flowable/design'
|
|
2
|
-
export const ROUTE_SIMULATE = '/flowable/simulate'
|
|
3
|
-
export const ROUTE_TASK_FORM = '/flowable/user-task/form'
|
|
4
|
-
export const ROUTE_USER_INSTANCE_VIEW = '/flowable/user-task/instance/view'
|
|
5
|
-
export const ROUTE_MONITOR_TASK = '/flowable/monitor/task'
|
|
6
|
-
export const ROUTE_MONITOR_INSTANCE = '/flowable/monitor/instance'
|
|
7
|
-
export const ROUTE_MONITOR_DEFINITION = '/flowable/monitor/definition'
|
|
8
|
-
export const ROUTE_MONITOR_INSTANCE_VIEW = '/flowable/monitor/instance/view'
|