cyy 1 год назад
Родитель
Сommit
b43319f63b

+ 18 - 1
src/views/platform/message/inner/detail/dialog.vue

@@ -18,6 +18,7 @@
             :readonly="readonly"
             :type="type"
             @callback="handleCallback"
+            @judgeIndex="acquire"
         />
         <div
             slot="footer"
@@ -109,6 +110,9 @@ export default {
                 case 'confirm':
                     this.confirmMsg()
                     break
+                case 'viewDetails':
+                    this.$refs.innerMessage.handleDifferentTab()
+                    break
                 default:
                     break
             }
@@ -196,8 +200,21 @@ export default {
         },
         handleCallback (res) {
             this.$emit('callback', res)
+        },
+        acquire(res){
+            let mid = { key: 'viewDetails', label: '查看详情', type: 'danger', icon: 'ibps-icon-search' }
+            if(res){
+                let indexNum = this.toolbars.findIndex(i=>i.key == mid.key)
+                if(indexNum == -1){
+                    this.toolbars.unshift(mid)
+                }
+            }else{
+                let indexNum = this.toolbars.findIndex(i=>i.key == mid.key)
+                if(indexNum != -1){
+                    this.toolbars.splice(indexNum,1)
+                }
+            }
         }
-
     }
 }
 </script>

+ 19 - 3
src/views/platform/message/inner/detail/index.vue

@@ -32,14 +32,14 @@
                     </div>
                 </el-form-item>
             </el-col>
-            <el-col v-if="judgeTF(form)" :span="12">
+            <!-- <el-col v-if="judgeTF(form)" :span="12">
                 <el-form-item v-if="showDialog==true" :label="fontText[JSON.parse(form.skipTypeMsg).skipType-1]">
                     <el-button
                         :type="form.messageType | optionsFilter(typeOptions, 'type')"
                         @click.native="handleDifferentTab(form)"
                     >点击</el-button>
                 </el-form-item>
-            </el-col>
+            </el-col> -->
             <el-col :span="12">
                 <el-form-item
                     label="是否公告:"
@@ -192,6 +192,21 @@ export default {
             return this.id
         }
     },
+    watch:{
+        showDialog: {
+            handler(val, oldVal) {
+                this.$emit('judgeIndex', val)
+            },
+            // immediate: true
+        },
+        form: {
+            handler(val, oldVal) {
+                this.judgeTF(val)
+            },
+            immediate: true,
+            deep: true
+        },
+    },
     methods: {
         handleClick (tab, event) {
             this.$refs['readedList'].loadData()
@@ -214,7 +229,8 @@ export default {
         // handleFlowlessForm(way){
         //     this.dialogformrenderVisible = true
         // },
-        handleDifferentTab (objNum) {
+        handleDifferentTab () {
+            let objNum = this.form
             const stm = JSON.parse(objNum.skipTypeMsg)
             const tid = stm.pathInfo ? stm.pathInfo :objNum.taskId
             switch (stm.skipType) {