mirror of
				https://gitee.com/hhyykk/ipms-sjy.git
				synced 2025-10-31 10:18:42 +08:00 
			
		
		
		
	将业务表单做为动态组件,直接显示到审批页面,不再需要点击查看
This commit is contained in:
		| @@ -1,7 +1,7 @@ | |||||||
| <template> | <template> | ||||||
|   <div class="app-container"> |   <div class="app-container"> | ||||||
|     <!-- 对话框(添加 / 修改) --> |     <!-- 对话框(添加 / 修改) --> | ||||||
|       <el-form ref="form" :model="form" :rules="rules" label-width="100px"> |       <el-form ref="form" :model="form" label-width="100px"> | ||||||
|         <el-form-item label="开始时间:" prop="startTime"> {{parseTime(form.startTime, '{y}-{m}-{d}')}} </el-form-item> |         <el-form-item label="开始时间:" prop="startTime"> {{parseTime(form.startTime, '{y}-{m}-{d}')}} </el-form-item> | ||||||
|         <el-form-item label="结束时间:" prop="endTime"> {{parseTime(form.endTime, '{y}-{m}-{d}')}} </el-form-item> |         <el-form-item label="结束时间:" prop="endTime"> {{parseTime(form.endTime, '{y}-{m}-{d}')}} </el-form-item> | ||||||
|         <el-form-item label="请假类型:" prop="type"> |         <el-form-item label="请假类型:" prop="type"> | ||||||
| @@ -19,9 +19,15 @@ export default { | |||||||
|   name: "LeaveDetail", |   name: "LeaveDetail", | ||||||
|   components: { |   components: { | ||||||
|   }, |   }, | ||||||
|  |   props: { | ||||||
|  |     id: { | ||||||
|  |       type: [String, Number], | ||||||
|  |       default: undefined | ||||||
|  |     }, | ||||||
|  |   }, | ||||||
|   data() { |   data() { | ||||||
|     return { |     return { | ||||||
|       id: undefined, // 请假编号 |       leaveId: undefined, // 请假编号 | ||||||
|       // 表单参数 |       // 表单参数 | ||||||
|       form: { |       form: { | ||||||
|         startTime: undefined, |         startTime: undefined, | ||||||
| @@ -34,8 +40,8 @@ export default { | |||||||
|     }; |     }; | ||||||
|   }, |   }, | ||||||
|   created() { |   created() { | ||||||
|     this.id = this.$route.query.id; |     this.leaveId = this.id || this.$route.query.id; | ||||||
|     if (!this.id) { |     if (!this.leaveId) { | ||||||
|       this.$message.error('未传递 id 参数,无法查看 OA 请假信息'); |       this.$message.error('未传递 id 参数,无法查看 OA 请假信息'); | ||||||
|       return; |       return; | ||||||
|     } |     } | ||||||
| @@ -44,7 +50,7 @@ export default { | |||||||
|   methods: { |   methods: { | ||||||
|     /** 获得请假信息 */ |     /** 获得请假信息 */ | ||||||
|     getDetail() { |     getDetail() { | ||||||
|       getLeave(this.id).then(response => { |       getLeave(this.leaveId).then(response => { | ||||||
|         this.form = response.data; |         this.form = response.data; | ||||||
|       }); |       }); | ||||||
|     }, |     }, | ||||||
|   | |||||||
| @@ -39,10 +39,7 @@ | |||||||
|         </div> |         </div> | ||||||
|       </el-col> |       </el-col> | ||||||
|       <div v-if="this.processInstance.processDefinition && this.processInstance.processDefinition.formType === 20"> |       <div v-if="this.processInstance.processDefinition && this.processInstance.processDefinition.formType === 20"> | ||||||
|         <router-link :to="this.processInstance.processDefinition.formCustomViewPath + '?id=' |         <async-biz-form-component :id="this.processInstance.businessKey"></async-biz-form-component> | ||||||
|                           + this.processInstance.businessKey"> |  | ||||||
|           <el-button type="primary">点击查看</el-button> |  | ||||||
|         </router-link> |  | ||||||
|       </div> |       </div> | ||||||
|     </el-card> |     </el-card> | ||||||
|  |  | ||||||
| @@ -115,6 +112,7 @@ import {approveTask, getTaskListByProcessInstanceId, rejectTask, updateTaskAssig | |||||||
| import {getDate} from "@/utils/dateUtils"; | import {getDate} from "@/utils/dateUtils"; | ||||||
| import {listSimpleUsers} from "@/api/system/user"; | import {listSimpleUsers} from "@/api/system/user"; | ||||||
| import {getActivityList} from "@/api/bpm/activity"; | import {getActivityList} from "@/api/bpm/activity"; | ||||||
|  | import Vue from "vue"; | ||||||
|  |  | ||||||
| // 流程实例的详情页,可用于审批 | // 流程实例的详情页,可用于审批 | ||||||
| export default { | export default { | ||||||
| @@ -193,6 +191,12 @@ export default { | |||||||
|         // 设置流程信息 |         // 设置流程信息 | ||||||
|         this.processInstance = response.data; |         this.processInstance = response.data; | ||||||
|  |  | ||||||
|  |         //将业务表单,注册为动态组件 | ||||||
|  |         const path = this.processInstance.processDefinition.formCustomViewPath; | ||||||
|  |         Vue.component("async-biz-form-component", function(resolve) { | ||||||
|  |           require([`@/views${path}`], resolve); | ||||||
|  |         }); | ||||||
|  |  | ||||||
|         // 设置表单信息 |         // 设置表单信息 | ||||||
|         if (this.processInstance.processDefinition.formType === 10) { |         if (this.processInstance.processDefinition.formType === 10) { | ||||||
|           this.detailForm = { |           this.detailForm = { | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 owen
					owen