Просмотр исходного кода

oa审批弹窗接口调整/添加审批记录,处理拖拽表单数据

lph 1 год назад
Родитель
Сommit
dad9b6fedc

+ 60 - 8
zkqy-ui/src/components/FormGroup/Approve.vue

@@ -3,13 +3,30 @@
     <div class="list-item" v-for="(item, index) in myFormList" :key="index">
       <k-form-build
         :dynamicData="item.template.dfFormSql || {}"
-        :defaultValue="item.template.defaultValue || {}"
+        :defaultValue="item.template.defaultValue"
         class="formBuild"
         ref="addFromRef"
         :value="item.template.dfVueTemplate"
       />
     </div>
     <el-divider></el-divider>
+    <!-- <div class="log-list"></div> -->
+    <el-descriptions
+      v-for="(item, index) in nodeLogList"
+      :key="index"
+      :title="item.taskNodeName"
+    >
+      <el-descriptions-item label="审批人">{{
+        item.createBy
+      }}</el-descriptions-item>
+      <el-descriptions-item label="审批结果">{{
+        statusObj[item.taskNodeOtherState]
+      }}</el-descriptions-item>
+      <el-descriptions-item label="审批意见">{{
+        item.taskRemark || "无"
+      }}</el-descriptions-item>
+    </el-descriptions>
+    <el-divider></el-divider>
     <el-form
       :model="form"
       ref="form"
@@ -57,6 +74,7 @@
 
 <script>
 // import formList from "@/assets/js/formArray";
+import { camelCase, toUnderline } from "@/utils/index";
 import { disableFormItem } from "@/utils/kFormDesign";
 export default {
   name: "Approve",
@@ -67,6 +85,12 @@ export default {
         return [];
       },
     },
+    nodeLogList: {
+      type: Array,
+      default: () => {
+        return [];
+      },
+    },
   },
   components: {},
   data() {
@@ -94,6 +118,11 @@ export default {
           label: "驳回",
         },
       ],
+      statusObj: {
+        pass: "通过",
+        noPass: "不通过",
+        reject: "驳回",
+      },
       rules: {
         approvalStatus: [
           {
@@ -110,16 +139,17 @@ export default {
           },
         ],
       },
+      defaultValue: {}, //表单默认值
     };
   },
   computed: {
     myFormList() {
-      // return this.disableHandler(formList);
-      this.formList.forEach((item) => {
-        item.template.dfFormSql = JSON.parse(item.template.dfFormSql);
-        item.template.dfVueTemplate = JSON.parse(item.template.dfVueTemplate);
-      });
-      return this.formList;
+      return this.disableHandler(this.formList);
+      // this.formList.forEach((item) => {
+      //   item.template.dfFormSql = JSON.parse(item.template.dfFormSql);
+      //   item.template.dfVueTemplate = JSON.parse(item.template.dfVueTemplate);
+      // });
+      // return this.formList;
     },
   },
   methods: {
@@ -130,9 +160,24 @@ export default {
 
      */
     disableHandler(formList) {
+      this.resetForm();
       if (formList.length == 0) return [];
       formList.forEach((item) => {
-        item.formInfo.jsonData = disableFormItem(item.formInfo.jsonData);
+        item.template.dfFormSql = JSON.parse(item.template.dfFormSql);
+        item.template.dfVueTemplate = disableFormItem(
+          JSON.parse(item.template.dfVueTemplate)
+        );
+        item.template.defaultValue = item.template.resultMap[0]?.resultMap
+          ? item.template.resultMap[0].resultMap
+          : {};
+        for (const key of Object.keys(item.template.defaultValue)) {
+          item.template.defaultValue[toUnderline(key)] =
+            item.template.defaultValue[key];
+        }
+        // this.$nextTick(() => {
+        //   Object.assign(this.defaultValue, item.template.defaultValue);
+        // });
+        // item.formInfo.jsonData = disableFormItem(item.formInfo.jsonData);
       });
       return formList;
     },
@@ -156,6 +201,13 @@ export default {
         });
       });
     },
+    // 重置审批表单
+    resetForm() {
+      Object.assign(this.form, {
+        approvalStatus: "",
+        approvalRemark: "",
+      });
+    },
   },
   mounted() {},
 };

+ 7 - 4
zkqy-ui/src/views/bussiness/OAMange.vue

@@ -164,7 +164,11 @@
         <!-- 审批弹窗 -->
         <el-dialog title="审批" :visible.sync="show">
           <!-- <FormGroup ref="formGroupRef" :formList="formList"></FormGroup> -->
-          <Approve ref="approveRef" :formList="formList"></Approve>
+          <Approve
+            ref="approveRef"
+            :formList="formList"
+            :nodeLogList="nodeLogList"
+          ></Approve>
           <template #footer>
             <span>
               <el-button @click="show = false">取消</el-button>
@@ -276,6 +280,7 @@ export default {
       // 弹窗表单渲染数据
       formData: {},
       backExceptionTaskList: ["GY06"], //特殊回退表单组件列表
+      nodeLogList: [], //节点日志列表
     };
   },
   computed: {
@@ -342,8 +347,8 @@ export default {
       if (res.code == 200) {
         this.formList = res.data;
         this.tableName = res.data[0].template.dfTableName;
+        this.nodeLogList = row.nodeLog.slice(1);
         this.show = true;
-        console.log(this.show);
       } else {
         this.$message.error("网络异常,请稍后再试");
       }
@@ -399,9 +404,7 @@ export default {
         benTaskNodeKey,
         bepTaskProcessXmlContent
       );
-      console.log(this.$refs);
       let res = await this.$refs.approveRef.getformInfo();
-      console.log(res);
       if (!res.flag) return;
       // 准备审批数据
       let payLoad = {