Skip to content

Commit 2c2d930

Browse files
YunaiVgitee-org
authored andcommitted
!432 将业务表单做为动态组件,直接显示到审批页面,不再需要点击查看
Merge pull request !432 from 疯狂的世界/flowable
2 parents ad5912b + 3e93db6 commit 2c2d930

File tree

2 files changed

+19
-9
lines changed

2 files changed

+19
-9
lines changed

src/views/bpm/oa/leave/detail.vue

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<template>
22
<div class="app-container">
33
<!-- 对话框(添加 / 修改) -->
4-
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
4+
<el-form ref="form" :model="form" label-width="100px">
55
<el-form-item label="开始时间:" prop="startTime"> {{parseTime(form.startTime, '{y}-{m}-{d}')}} </el-form-item>
66
<el-form-item label="结束时间:" prop="endTime"> {{parseTime(form.endTime, '{y}-{m}-{d}')}} </el-form-item>
77
<el-form-item label="请假类型:" prop="type">
@@ -19,9 +19,15 @@ export default {
1919
name: "BpmOALeaveDetail",
2020
components: {
2121
},
22+
props: {
23+
id: {
24+
type: [String, Number],
25+
default: undefined
26+
},
27+
},
2228
data() {
2329
return {
24-
id: undefined, // 请假编号
30+
leaveId: undefined, // 请假编号
2531
// 表单参数
2632
form: {
2733
startTime: undefined,
@@ -34,8 +40,8 @@ export default {
3440
};
3541
},
3642
created() {
37-
this.id = this.$route.query.id;
38-
if (!this.id) {
43+
this.leaveId = this.id || this.$route.query.id;
44+
if (!this.leaveId) {
3945
this.$message.error('未传递 id 参数,无法查看 OA 请假信息');
4046
return;
4147
}
@@ -44,7 +50,7 @@ export default {
4450
methods: {
4551
/** 获得请假信息 */
4652
getDetail() {
47-
getLeave(this.id).then(response => {
53+
getLeave(this.leaveId).then(response => {
4854
this.form = response.data;
4955
});
5056
},

src/views/bpm/processInstance/detail.vue

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -39,10 +39,7 @@
3939
</div>
4040
</el-col>
4141
<div v-if="this.processInstance.processDefinition && this.processInstance.processDefinition.formType === 20">
42-
<router-link :to="this.processInstance.processDefinition.formCustomViewPath + '?id='
43-
+ this.processInstance.businessKey">
44-
<el-button type="primary">点击查看</el-button>
45-
</router-link>
42+
<async-biz-form-component :id="this.processInstance.businessKey"></async-biz-form-component>
4643
</div>
4744
</el-card>
4845

@@ -115,6 +112,7 @@ import {approveTask, getTaskListByProcessInstanceId, rejectTask, updateTaskAssig
115112
import {getDate} from "@/utils/dateUtils";
116113
import {listSimpleUsers} from "@/api/system/user";
117114
import {getActivityList} from "@/api/bpm/activity";
115+
import Vue from "vue";
118116
119117
// 流程实例的详情页,可用于审批
120118
export default {
@@ -193,6 +191,12 @@ export default {
193191
// 设置流程信息
194192
this.processInstance = response.data;
195193
194+
//将业务表单,注册为动态组件
195+
const path = this.processInstance.processDefinition.formCustomViewPath;
196+
Vue.component("async-biz-form-component", function(resolve) {
197+
require([`@/views${path}`], resolve);
198+
});
199+
196200
// 设置表单信息
197201
if (this.processInstance.processDefinition.formType === 10) {
198202
this.detailForm = {

0 commit comments

Comments
 (0)