1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
| <template>
| <div>
| <basic-container>
| <avue-form :option="option" v-model="form" @submit="handleSubmit" />
| </basic-container>
| <basic-container v-if="this.website.design.designMode">
| <flow-design :is-display="true" :process-definition-id="processDefinitionId"></flow-design>
| </basic-container>
| </div>
| </template>
|
| <script>
| import { leaveProcess } from '@/api/work/process';
|
| export default {
| data() {
| return {
| processDefinitionId: '',
| form: {},
| option: {
| group: [
| {
| icon: 'el-icon-view',
| label: '请假基础信息',
| prop: 'group1',
| column: [
| {
| label: '审批人员',
| prop: 'taskUser',
| type: 'select',
| dicUrl: `/blade-system/user/user-list`,
| props: {
| label: 'account',
| value: 'id',
| },
| span: 24,
| rules: [
| {
| required: true,
| message: '请选择审批人员',
| trigger: 'blur',
| },
| ],
| },
| {
| label: '开始时间',
| prop: 'startTime',
| type: 'datetime',
| valueFormat: 'YYYY-MM-DD HH:mm:ss',
| rules: [
| {
| required: true,
| message: '请选择开始时间',
| trigger: 'blur',
| },
| ],
| },
| {
| label: '结束时间',
| prop: 'endTime',
| type: 'datetime',
| valueFormat: 'YYYY-MM-DD HH:mm:ss',
| rules: [
| {
| required: true,
| message: '请选择结束时间',
| trigger: 'blur',
| },
| ],
| },
| {
| label: '请假理由',
| prop: 'reason',
| type: 'textarea',
| span: 24,
| rules: [
| {
| required: true,
| message: '请输入请假理由',
| trigger: 'blur',
| },
| ],
| },
| ],
| },
| ],
| },
| };
| },
| created() {
| if (this.website.design.designMode) {
| this.processDefinitionId = this.$route.params.processDefinitionId;
| }
| },
| methods: {
| handleSubmit() {
| const params = {
| processDefinitionId: this.$route.params.processDefinitionId,
| ...this.form,
| };
| leaveProcess(params).then(resp => {
| const data = resp.data;
| if (data.success) {
| this.$message.success(data.msg);
| this.$router.$avueRouter.closeTag();
| this.$router.push({ path: `/work/start` });
| } else {
| this.$message.error(data.msg || '提交失败');
| }
| });
| },
| },
| };
| </script>
|
|