Преглед изворни кода

fix(notice): 将详情类型从'detail'改为'view'并调整相关逻辑

liujt пре 2 месеци
родитељ
комит
45742011a6

+ 7 - 5
src/views/bpm/documents/noticeIssuance/components/addOrEdit.vue

@@ -2,7 +2,7 @@
     <div>
         <el-card shadow="never">
             <el-tabs v-model="tabValue" type="card" @tab-click="handleTabClick">
-                <el-tab-pane label="稿纸信息" name="1">
+                <el-tab-pane v-if="query.type != 'view'" label="稿纸信息" name="1">
                     <MainBodyTemplate ref="mainBodyTemplate" :type="routerQuery.type" menu="notice" :disabled="disabled" @sendFiles="getFiles"></MainBodyTemplate>
                 </el-tab-pane>
                 <el-tab-pane label="正文" name="2">
@@ -27,7 +27,7 @@
                     </el-row>
                   </div>
                 </el-tab-pane>
-                <el-tab-pane v-if="formData?.processInstanceId && !isApprove" label="流程详情" name="4">
+                <el-tab-pane v-if="formData?.processInstanceId && !isApprove && query.type != 'view'" label="流程详情" name="4">
                      <bpmDetail
                         v-if="formData.processInstanceId"
                         :id="formData.processInstanceId"
@@ -130,7 +130,7 @@ export default {
   created() {
     // this.routerQuery = this.isApprove ? this.query : this.$route.query;
     this.routerQuery = this.query;
-    this.tabValue = '1';
+    this.tabValue = this.query.type == 'view' ? '3' : '1';
     console.log('this.query~~~', this.query);
     this.$nextTick(() => {
       this.getDetail();
@@ -139,7 +139,7 @@ export default {
   },
   computed: {
     disabled() {
-      return this.routerQuery.type == 'detail';
+      return this.routerQuery.type == 'detail' || this.routerQuery.type == 'view';
     },
   },
   methods: {
@@ -186,7 +186,9 @@ export default {
       let ids =this.formData.fields.find((item) => item.fieldKey == 'attachments')?.defaultValue || '';
       this.getFiles(ids);
       console.log(this.formData, this.$refs.mainBodyTemplate);
-      this.$refs.mainBodyTemplate.setData(this.formData.fields);
+      this.$nextTick(() => {
+        this.$refs.mainBodyTemplate && this.$refs.mainBodyTemplate.setData(this.formData.fields);
+      })
     },
     async getTemplateDetail() {
       let res = await docTplTemplateById(this.routerQuery.id);

+ 1 - 1
src/views/home/index.vue

@@ -338,7 +338,7 @@ export default {
       
       this.$refs.noticeIssuanceDetailRef.openDrawer({
         id: item.id,
-        type: 'detail'
+        type: 'view'
       });
       
       // this.$router.push({