From 8c9f4f20341274df1c2326a1ce7fbc59770afc65 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期日, 02 三月 2025 23:45:41 +0800
Subject: [PATCH] Merge branch 'dev'

---
 src/components/Process/panel/formPanel.vue |   68 +++++++++++++++++++++++++++------
 1 files changed, 55 insertions(+), 13 deletions(-)

diff --git a/src/components/Process/panel/formPanel.vue b/src/components/Process/panel/formPanel.vue
index d5016c2..4de7efc 100644
--- a/src/components/Process/panel/formPanel.vue
+++ b/src/components/Process/panel/formPanel.vue
@@ -1,23 +1,39 @@
 <template>
   <div>
     <el-form label-width="80px" size="small" @submit.native.prevent>
-      <el-form-item label="娴佺▼琛ㄥ崟">
-        <el-select v-model="bpmnFormData.formKey" clearable class="m-2" placeholder="鎸傝浇鑺傜偣琛ㄥ崟" @clear="updateElementFormKey(null)" @change="updateElementFormKey">
-          <el-option
-              v-for="item in formList"
-              :key="item.formId"
-              :label="item.formName"
-              :value="item.formId"
-          />
-        </el-select>
-      </el-form-item>
+          <el-form-item label="娴佺▼琛ㄥ崟">
+            <el-select v-model="bpmnFormData.formKey" clearable class="m-2" placeholder="鎸傝浇鑺傜偣琛ㄥ崟" @clear="updateElementFormKey(null)" @change="updateElementFormKey">
+              <el-option
+                v-for="item in formList"
+                :key="item.formId"
+                :label="item.formName"
+                :value="item.formId"
+              />
+            </el-select>
+            <el-button
+              style="margin-left: 10px"
+              size="mini"
+              type="text"
+              icon="el-icon-view"
+              :disabled="checkState"
+              @click="handleDetail()"
+            >棰勮
+            </el-button>
+          </el-form-item>
+
     </el-form>
+
+    <!--琛ㄥ崟璇︽儏-->
+    <el-dialog :title="formTitle" :visible.sync="formRenderOpen" width="60%" append-to-body>
+      <v-form-render :form-data="formData" ref="vFormRef"/>
+    </el-dialog>
+
   </div>
 </template>
 
 <script>
 
-import { listAllForm } from '@/api/flowable/form'
+import { listAllForm, getForm} from '@/api/flowable/form'
 import {StrUtil} from "@/utils/StrUtil";
 export default {
   name: "FormPanel",
@@ -30,11 +46,21 @@
   },
   data() {
     return {
+      formTitle: "",
+      formOpen: false,
+      formRenderOpen: false,
+      formData: {},
       formList: [], // 琛ㄥ崟鏁版嵁
-      bpmnFormData: {}
+      bpmnFormData: {
+        formKey:null
+      },
     }
   },
-
+  computed:{
+    checkState(){
+      return this.bpmnFormData.formKey === null || this.bpmnFormData.formKey === undefined;
+    }
+  },
   /** 浼犲�肩洃鍚� */
   watch: {
     id: {
@@ -59,7 +85,23 @@
     resetFlowForm() {
       this.bpmnFormData.formKey = this.modelerStore.element.businessObject.formKey;
     },
+    handleDetail() {
+      getForm(this.bpmnFormData.formKey).then(res =>{
+        this.formRenderOpen = true;
+        this.formTitle = "琛ㄥ崟璇︽儏";
+        this.$nextTick(() => {
+          // 鍥炴樉鏁版嵁
+          this.$refs.vFormRef.setFormJson(JSON.parse(res.data.formContent))
+          this.$nextTick(() => {
+            // 琛ㄥ崟绂佺敤
+            this.$refs.vFormRef.disableForm();
+          })
+        })
 
+      })
+
+
+    },
     updateElementFormKey(val) {
       this.init()
       if (StrUtil.isBlank(val)) {

--
Gitblit v1.8.0