From d8887d36d08e3a0a5068763c8460b0b4f16e87ee Mon Sep 17 00:00:00 2001
From: shikeying <pxzsky@163.com>
Date: 星期一, 03 四月 2023 16:21:37 +0800
Subject: [PATCH] 待办任务审批测试界面

---
 src/views/activiti/task/index.vue |  126 ++++++++++++++++++++---------------------
 1 files changed, 61 insertions(+), 65 deletions(-)

diff --git a/src/views/activiti/task/index.vue b/src/views/activiti/task/index.vue
index f5ed247..9452a39 100644
--- a/src/views/activiti/task/index.vue
+++ b/src/views/activiti/task/index.vue
@@ -1,14 +1,13 @@
 <template>
   <div class="app-container">
 
-
     <el-table v-loading="loading" :data="tastList">
       <!--      <el-table-column label="娴佺▼ID" align="center" prop="id"/>-->
-      <el-table-column label="娴佺▼鍚嶇О" align="center" prop="instanceName"/>
-      <el-table-column label="浠诲姟鑺傜偣鍚嶇О" align="center" prop="name"/>
-      <el-table-column label="浠诲姟鐘舵��" align="center" prop="status"/>
-      <el-table-column label="鍔炵悊浜�" align="center" prop="assignee"/>
-      <el-table-column label="鍒涘缓鏃堕棿" align="center" prop="createdDate"/>
+      <el-table-column label="娴佺▼鍚嶇О" align="center" prop="title"/>
+      <el-table-column label="浠诲姟鑺傜偣鍚嶇О" align="center" prop="taskName"/>
+      <el-table-column label="浠诲姟鐘舵��" align="center" prop=""/>
+      <el-table-column label="鍔炵悊浜�" align="center" prop="userId"/>
+      <el-table-column label="鍒涘缓鏃堕棿" align="center" prop="createTime"/>
 
       <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
         <template slot-scope="scope">
@@ -16,7 +15,7 @@
             size="mini"
             type="text"
             icon="el-icon-edit"
-            @click="examineAndApprove (scope.row)"
+            @click="showTodoDetail(scope.row)"
             v-hasPermi="['wf:task:**']"
           >瀹℃壒
           </el-button>
@@ -34,30 +33,40 @@
 
     <!-- 瀹℃壒瀵硅瘽妗� -->
     <el-dialog :title="title" :visible.sync="open" v-if="open" width="500px" append-to-body>
-      <leaveHistoryForm :businessKey="businessKey" v-if="'leave'==definitionKey"/>
-
+<!--      <leaveHistoryForm :businessKey="businessKey" v-if="'leave'==definitionKey"/>-->
       <el-form :model="form" ref="form" label-width="100px" class="demo-dynamic">
-        <el-form-item
-          v-for="(domain, index) in form.formData"
-          :label="domain.controlLable"
-          :key="index"
-        >
-          <el-radio-group v-model="domain.controlValue" v-if="'radio'==domain.controlType">
-            <el-radio v-for="(defaults,indexd) in domain.controlDefault.split('--__--')"
-                      :label=indexd
-                      :key="indexd"
-                      >{{defaults}}
-
-            </el-radio>
-
-          </el-radio-group>
-          <el-input type="textarea" v-model="domain.controlValue" v-if="'textarea'==domain.controlType"
-          ></el-input>
+        <el-form-item label="娴佺▼鍚嶇О">
+          <el-input v-model="todoTask.title"/>
         </el-form-item>
+        <el-form-item label="浠诲姟鍚嶇О">
+          <el-input v-model="todoTask.taskName"/>
+        </el-form-item>
+        <el-form-item label="涓氬姟涓婚敭" prop="businessKey">
+<!--          <el-input v-model="todoTask.businessKey"/>-->
+          <el-input v-model="form.businessKey"/>
+        </el-form-item>
+        <el-form-item label="娴佺▼鏍囪瘑" prop="processDefinitionKey">
+<!--          <el-input v-model="todoTask.processDefinitionKey"/>-->
+          <el-input v-model="form.processDefinitionKey"/>
+        </el-form-item>
+        <el-form-item label="浠诲姟ID" prop="taskInstanceId">
+<!--          <el-input v-model="todoTask.id"/>-->
+          <el-input v-model="form.taskInstanceId"/>
+        </el-form-item>
+        <el-form-item label="瀹℃壒閫夐」" prop="approveResult">
+          <el-radio-group v-model="form.approveResult">
+            <el-radio value="yes">鍚屾剰</el-radio>
+            <el-radio value="no">閫�鍥�</el-radio>
+          </el-radio-group>
+        </el-form-item>
+        <el-form-item label="瀹℃壒鎰忚" prop="approveSummary">
+          <el-input v-model="form.approveSummary" placeholder="杈撳叆瀹℃壒鎰忚" maxlength="90" />
+        </el-form-item>
+
       </el-form>
 
       <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+        <el-button type="primary" @click="submitForm">杞� 鍙�</el-button>
         <el-button @click="cancel">鍙� 娑�</el-button>
       </div>
     </el-dialog>
@@ -65,19 +74,19 @@
 </template>
 
 <script>
-
-
-  import {listTask, formDataShow, formDataSave} from "@/api/activiti/task";
-  import leaveHistoryForm from "@/views/workflow/leave/leaveHistoryForm";
+  import {listTask, todoDetail, transmission, formDataShow, formDataSave} from "@/api/activiti/task";
+  // import leaveHistoryForm from "@/views/workflow/leave/leaveHistoryForm";
 
   export default {
     name: "Leave",
-    components: {leaveHistoryForm},
+    components: {},
     data() {
       return {
         id:'',
         definitionKey: '',
         businessKey: '',
+        // 褰撳墠寰呭姙浠诲姟璇︾粏锛堢偣鍑荤殑璇︽儏锛夛紝2023-04-03
+        todoTask: undefined,
         // 閬僵灞�
         loading: true,
         // 閫変腑鏁扮粍
@@ -103,7 +112,13 @@
         },
         // 琛ㄥ崟鍙傛暟
         form: {
-          formData:[]
+          businessKey: undefined,
+          processDefinitionKey: undefined,
+          assignee: undefined,
+          taskInstanceId: undefined,
+          approveResult: undefined,
+          approveSummary: '',
+          approveTime: undefined
         },
         // 琛ㄥ崟鏍¢獙
         rules: {}
@@ -130,59 +145,40 @@
       },
       // 琛ㄥ崟閲嶇疆
       reset() {
-        this.definitionKey = '',
-          this.businessKey = '',
-          this.form = {
-            formData:[],
-          };
+        this.definitionKey = '';
+        this.businessKey = '';
+        this.form = {};
         this.resetForm("form");
       },
 
       /** 瀹℃壒鎸夐挳鎿嶄綔 */
-      examineAndApprove(row) {
-        console.log(row)
+      showTodoDetail(row) {
+        console.log(row);
         this.reset();
         this.definitionKey = row.definitionKey;
         this.businessKey = row.businessKey;
         this.id=row.id;
-        formDataShow(row.id).then(response => {
+        todoDetail(row).then(response => {
           // FormProperty_3qipis2--__!!radio--__!!瀹℃壒鎰忚--__!!i--__!!鍚屾剰--__--涓嶅悓鎰�
           // FormProperty_0lffpcm--__!!textarea--__!!鎵规敞--__!!f--__!!null
-          let datas = response.data;
-          let formData = []
-          for (let i = 0; i < datas.length; i++) {
-            let strings = datas[i].split('--__!!')
-            let controlValue = null
-            let controlDefault = null
-            switch (strings[1]) {
-              case 'radio':
-                controlValue = 0;
-                controlDefault = strings[4]
-                break;
-              // default:
-            }
-            formData.push({
-              controlId: strings[0],
-              controlType: strings[1],
-              controlLable: strings[2],
-              controlIsParam: strings[3],
-              controlValue: controlValue,
-              controlDefault: controlDefault
-            })
-          }
-          this.form.formData = formData;
+          this.todoTask = response.data;
+          this.form.businessKey = this.todoTask.businessKey;
+          this.form.taskInstanceId = this.todoTask.id;
+          this.form.processDefinitionKey = this.todoTask.processDefinitionKey;
+
+          // this.form.formData = formData;
           this.open = true;
           this.title = "瀹℃壒";
         });
       },
       /** 鎻愪氦鎸夐挳 */
       submitForm() {
-        formDataSave(this.id,this.form.formData).then(response => {
+        transmission(this.form).then(response => {
           this.$modal.msgSuccess("瀹℃壒鎴愬姛");
           this.open = false;
           this.getList();
         });
-      },
+      }
     }
   };
 </script>

--
Gitblit v1.9.1