浏览代码

权限控制

zhuliu 2 年之前
父节点
当前提交
29f85fec05

+ 2 - 2
RMS-FrontEnd/src/directives/permission.js

@@ -1,4 +1,4 @@
-import axios from '@/utils/axios'
+
 import Store from '@/store'
 // export default {
 //     inserted(el,bindling){
@@ -37,6 +37,6 @@ import Store from '@/store'
 // }
 
 export const hasPermission = (sign) => {
-  
     return (Store.state.admin.permission).indexOf(sign) !== -1
+    
   }

+ 4 - 1
RMS-FrontEnd/src/views/components/articles/ContrastIndex.vue

@@ -37,7 +37,7 @@
             </div>
            
             <div  style="  position: relative;">
-              <el-link v-for="item in menuList" :type="activeMenu === item.value ? 'primary' : undefined" @click.native="handleSelect(item.value)" v-if="$permission('/workspace/patent/worth')?true:item.value !='patentWorth'" :disabled="item.value === 'PatentExport' ? !$permission('/workspace/details/exportDocument'): false ">{{ item.label }}</el-link>
+              <el-link v-for="item in menuList" :type="activeMenu === item.value ? 'primary' : undefined" @click.native="handleSelect(item.value)" v-if="!item.show" :disabled="item.value === 'PatentExport' ? !$permission('/workspace/details/exportDocument'): false ">{{ item.label }}</el-link>
               <el-link v-for="item in menuList2" :type="activeMenu === item.value ? 'primary' : undefined" @click.native="handleSelect(item.value)">{{ item.label }}</el-link>
               <el-tooltip class="item" effect="dark" :content="(showRight ? '隐藏' : '显示') + '右侧菜单'" placement="top" v-if="showcard==false">
                 <i :class="showRight ? 'el-icon-s-unfold' : 'el-icon-s-fold'" style="font-size: 25px;position: absolute; right: 10px; margin-top: 5px;color: #2f2f2f; cursor: pointer" @click="showRight = !showRight"></i>
@@ -187,14 +187,17 @@ export default {
         // },
         {
           value:'Permit',
+          show:this.$permission('/workspace/patent/worth')?false:true,
           label:'许可历史'
         },
         {
           value:'ProductManage',
+          show:this.$permission('/workspace/product')?false:true,
           label:'商品化'
         },
         {
           value:'patentWorth',
+          show:this.$permission('/workspace/patent/worth')?false:true,
           label:'价值曲线'
         }
       ],

+ 3 - 1
RMS-FrontEnd/src/views/components/articles/components/history/other.vue

@@ -31,7 +31,7 @@
                              <span v-else><i class="el-icon-minus"></i></span>
                         </span>
                         <span v-else>
-                          <span v-if="scope.row.reportFiles || scope.row.fileList">
+                          <span v-if="(scope.row.reportFiles && scope.row.reportFiles.length>0) || (scope.row.fileList&&scope.row.fileList.length>0)">
                               <div v-if="scope.row.reportFiles" v-for="item in scope.row.reportFiles" style="margin:0;display:flex;justify-content:space-around;"><p style="margin:0;width:calc(100% - 40px);overflow: hidden;white-space: nowrap;text-overflow:ellipsis">{{item.name?item.name:item.fileName}}</p> <p style="margin:0;" @click="delFile(scope.row,item.id)"><i class="el-icon-close"></i></p></div>
                               <div v-if="scope.row.fileList" v-for="item in scope.row.fileList" style="margin:0;display:flex;justify-content:space-around;"><p style="margin:0;width:calc(100% - 40px);overflow: hidden;white-space: nowrap;text-overflow:ellipsis">{{item.name?item.name:item.fileName}}</p> <p style="margin:0;" @click="delFile(scope.row,item.uid,1)"><i class="el-icon-close"></i></p></div>
                             </span>
@@ -143,6 +143,7 @@ export default {
       }else{
         this.row.fileList.push(file.raw) 
       }
+
     },
 
     handleClick(tab, event) {
@@ -168,6 +169,7 @@ export default {
       
     },
     delFile1(row,id,index){
+      console.log(row)
         var index = row.reportFiles.findIndex(item=>{
           return item.id == id
         })

+ 5 - 2
RMS-FrontEnd/src/views/components/articles/index.vue

@@ -67,7 +67,7 @@
                 </div>
               
                 <div style="  position: relative;">
-                  <el-link v-for="item in menuList" :type="activeMenu === item.value ? 'primary' : undefined" v-if="$permission('/workspace/patent/worth')?true:item.value !='patentWorth'" :disabled="item.value === 'PatentExport' ? !$permission('/workspace/details/exportDocument'): false " @click.native="handleSelect(item.value)">{{ item.label }}</el-link>
+                  <el-link v-for="item in menuList" :type="activeMenu === item.value ? 'primary' : undefined" v-if="!item.show" :disabled="item.value === 'PatentExport' ? !$permission('/workspace/details/exportDocument'): false " @click.native="handleSelect(item.value)">{{ item.label }}</el-link>
                   <el-link v-for="item in menuList2" :type="activeMenu === item.value ? 'primary' : undefined" :disabled="item.value === 'PatentExport' ? !$permission('/workspace/details/exportDocument'): false " @click.native="handleSelect(item.value)">{{ item.label }}</el-link>
                   <el-tooltip class="item" effect="dark" :content="(showRight ? '隐藏' : '显示') + '右侧菜单'" placement="top">
                     <i :class="showRight ? 'el-icon-s-unfold' : 'el-icon-s-fold'" style="font-size: 25px;position: absolute; right: 10px; margin-top: 5px;color: #2f2f2f; cursor: pointer" @click="showRight = !showRight"></i>
@@ -295,14 +295,17 @@ export default {
         // },
         {
           value:'Permit',
+          show:this.$permission('/workspace/patent/worth')?false:true,
           label:'许可历史'
         },
         {
           value:'ProductManage',
+          show:this.$permission('/workspace/product')?false:true,
           label:'商品化'
         },
         {
           value:'patentWorth',
+          show:this.$permission('/workspace/patent/worth')?false:true,
           label:'价值曲线'
         }
       ],
@@ -470,6 +473,7 @@ if(index!=-1){
       pRightName:this.contrastList[index].features[i].rightName,
       content:this.contrastList[index].features[i].content,
       comResult:this.contrastList[index].assoRecordsFeatures[i].comResult,
+      featuresOrder:this.contrastList[index].features[i].featuresOrder,
     })
   }
   // this.selectedFeaturesId=this.contrastList[index].featuresId
@@ -710,7 +714,6 @@ if(index!=-1){
           this.$store.commit('SET_PATENT_CONTRAST', a)
     },
     getFeatures(val){
-      // console.log(val)
       var a =[]
       this.ruleForm.featureslist = []
       for(var i = 0;i<val.length;i++){

+ 21 - 0
RMS-FrontEnd/src/views/components/common/menu/component/checkFile.vue

@@ -32,6 +32,9 @@ export default {
         },
         isPicture(){
             return this.$route.query.isPicture
+        },
+        productId(){
+            return this.$route.query.productId
         }
     },
     mounted(){
@@ -43,6 +46,24 @@ export default {
     },
     methods: {
         downLoad(){
+            if(this.productId){
+                const href = `/api/v2/common/download?url=${encodeURIComponent(this.row.url)}`
+                const anchor = document.createElement('a');
+                const fileName = 'download';
+                if ('download' in anchor) {
+                anchor.href = href;
+                anchor.setAttribute("download", fileName);
+                anchor.className = "download-js-link";
+                anchor.innerHTML = "downloading...";
+                anchor.style.display = "none";
+                document.body.appendChild(anchor);
+                setTimeout(function () {
+                    anchor.click();
+                    document.body.removeChild(anchor);
+                }, 66);
+                return true;
+                }
+            }
             downLoad2(this.row.url) 
         },
     },

+ 9 - 6
RMS-FrontEnd/src/views/layout/index.vue

@@ -56,7 +56,7 @@
             </div>
           </el-header>
           <el-main class="admin-main-box">
-            <router-view style=""></router-view>
+            <router-view style="" v-if="show"></router-view>
           </el-main>
           <el-footer style="height:44px" v-if="aside">
             <Footer ></Footer>
@@ -117,6 +117,7 @@ export default {
           { title: '我发起的', path:"task/MyInitiate"}, 
           { title: '我处理的', path:"task/MyHandle"}, 
       ],
+      show:false,
     }
   },
   watch: {
@@ -138,7 +139,7 @@ export default {
      ...mapGetters(['webSocket','userinfo'])
   },
   async created(){
-    this.getPermissionList()
+    await this.getPermissionList()
     await this.getUserinfo()
     
   },
@@ -226,15 +227,17 @@ export default {
             }
           }
   },
-  getPermissionList(){
+  async getPermissionList(){
     var code = "6a8d3f4d1d5f11eda41c00163e2f0200;5051395c24e311eda41c00163e2f0200;a97c468b924111ed905500163e2f0200"
-   this.$api.getPermissionList({code:code}).then(response=>{
-        // localStorage.permission =JSON.stringify(JSON.parse(response.data).data) 
+    await this.$api.getPermissionList({code:code}).then(response=>{
         this.$store.commit('SET_ADMIN_PERMISSION', response.data)
-      // console.log(response.data)
+      
       }).catch(error=>{
         this.$store.commit('SET_ADMIN_PERMISSION', [])
       })
+      this.$nextTick(()=>{
+        this.show = true
+      })
     },
     getSelect() {
       this.$api.getDict().then(response => {

+ 2 - 2
RMS-FrontEnd/src/views/product/components/category.vue

@@ -97,7 +97,7 @@
                 </span>
               </span>
               <!-- upload展示,preview-src-list大图展示 -->
-                <el-image ref="image" style="width:100%;height: 100%;" :src="categoryForm.pictures[0].id?$p + categoryForm.pictures[0].url:categoryForm.pictures[0].url" :preview-src-list="categoryForm.pictures"></el-image>
+                <el-image ref="image" style="width:100%;height: 100%;" :src="categoryForm.pictures[0].id?$p2 + categoryForm.pictures[0].url:categoryForm.pictures[0].url" :preview-src-list="categoryForm.pictures"></el-image>
             </span>
             <i v-else class="el-icon-plus avatar-uploader-icon"></i>
           </el-upload>
@@ -254,7 +254,7 @@ export default {
         case '4':// 图片预览
           if (row.pictures && row.pictures.length>0) {
             var item = row.pictures[0]
-              var FileUrl = this.$p + row.pictures[0].url
+              var FileUrl = this.$p2 + row.pictures[0].url
               var isPicture = 1
               const router = this.$router.resolve({
                     path: '/checkFile',

+ 1 - 0
RMS-FrontEnd/src/views/product/components/framework/framework.vue

@@ -122,6 +122,7 @@ export default {
                     row: JSON.stringify(item),
                     FileUrl: FileUrl,
                     isPicture:isPicture,
+                    productId:true
                 }
             })
           window.open(router.href, '_blank');

+ 25 - 1
RMS-FrontEnd/src/views/product/components/mixins.js

@@ -20,4 +20,28 @@ export const commonMethods = {
             window.open(router.href, '_blank');
           }
     },
-}
+}
+
+export const File2 = {
+    methods: {
+        downLoad(item){ 
+            const href = `/api/v2/common/download?url=${encodeURIComponent(item)}`
+            const anchor = document.createElement('a');
+            const fileName = 'download';
+            if ('download' in anchor) {
+              anchor.href = href;
+              anchor.setAttribute("download", fileName);
+              anchor.className = "download-js-link";
+              anchor.innerHTML = "downloading...";
+              anchor.style.display = "none";
+              document.body.appendChild(anchor);
+              setTimeout(function () {
+                anchor.click();
+                document.body.removeChild(anchor);
+              }, 66);
+              return true;
+            }
+        },
+       
+    },
+  }

+ 5 - 4
RMS-FrontEnd/src/views/product/components/product.vue

@@ -163,7 +163,7 @@
               <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview"></i>
               <i class="el-icon-delete" @click.stop="handleRemove"></i></span>
             </span>
-            <el-image ref="image" style="width:100%;height: 100%;" :src="productForm.pictures[0].id? $p + productForm.pictures[0].url:productForm.pictures[0].url" :preview-src-list="productForm.pictures"></el-image>
+            <el-image ref="image" style="width:100%;height: 100%;" :src="productForm.pictures[0].id? $p2 + productForm.pictures[0].url:productForm.pictures[0].url" :preview-src-list="productForm.pictures"></el-image>
           </span>
           <i v-else class="el-icon-plus avatar-uploader-icon"></i>
         </el-upload>
@@ -207,7 +207,7 @@
                   <i class="el-icon-delete" @click.stop="handleRemove"></i>
                 </span>
               </span>
-                <el-image ref="image" style="width:100%;height: 100%;" :src="categoryForm.pictures[0].id?$p + categoryForm.pictures[0].url:categoryForm.pictures[0].url" :preview-src-list="categoryForm.pictures"></el-image>
+                <el-image ref="image" style="width:100%;height: 100%;" :src="categoryForm.pictures[0].id?$p2 + categoryForm.pictures[0].url:categoryForm.pictures[0].url" :preview-src-list="categoryForm.pictures"></el-image>
             </span>
             <i v-else class="el-icon-plus avatar-uploader-icon"></i>
           </el-upload>
@@ -314,7 +314,7 @@ export default {
   },
   computed: {
     userinfo() {
-      return this.$store.state.user.userinfo
+      return this.$store.state.admin.userinfo
     }
   },
   watch:{
@@ -590,7 +590,7 @@ export default {
     previewPictures(row) {
       if (row.pictures && row.pictures.length>0) {
               var item = row.pictures[0]//图片每条信息
-              var FileUrl = this.$p + row.pictures[0].url//每张图片的url
+              var FileUrl = this.$p2 + row.pictures[0].url//每张图片的url
               var isPicture = 1
               const router = this.$router.resolve({
                     path: '/checkFile',
@@ -598,6 +598,7 @@ export default {
                         row: JSON.stringify(item),
                         FileUrl: FileUrl,
                         isPicture:isPicture,
+                        productId:true
                     }
                 })
               window.open(router.href, '_blank');

+ 1 - 1
RMS-FrontEnd/src/views/product/components/productCollapse.vue

@@ -163,7 +163,7 @@ export default {
     previewPictures(row) {
       if (row.pictures && row.pictures.length>0) {
               var item = row.pictures[0]//图片每条信息
-              var FileUrl = this.$p + row.pictures[0].url//每张图片的url
+              var FileUrl = this.$p2 + row.pictures[0].url//每张图片的url
               var isPicture = 1
               const router = this.$router.resolve({
                     path: '/checkFile',

+ 3 - 2
RMS-FrontEnd/src/views/product/components/relatedPatents/components/import/SystemTask.vue

@@ -74,13 +74,14 @@
 
 <script>
 import { mapGetters } from "vuex";
-import { downLoad2, getFileName } from "@/utils";
+import { File2 } from "@/views/product/components/mixins";
 
 export default {
   // props: {
   //   form: Number,
   // },
   props:['form','productId'],
+  mixins:[File2],
   data() {
     return {
       activeName: '0',
@@ -229,7 +230,7 @@ export default {
       })
     },
     handleDownload(row) {
-      downLoad2(row.filePath)
+      this.downLoad(row.url)
     },
     handleDelete(row) {
       this.$confirm('确认删除本条数据吗?', '提示', {

+ 26 - 4
RMS-FrontEnd/src/views/report/FTO/FTOPage/ReportDetails/index.vue

@@ -3,7 +3,7 @@
         <el-container>
         <el-aside width="210px" style="overflow:hidden" class="patent-articles-menu">
           <el-menu class="theme-dark" :default-active="activeMenu" @select="handleSelect">
-            <el-menu-item v-for="item in menuList" :index="item.path" v-if="item.show && (item.path=='TaskDetails'?$reportPermission(reportId,[0,1]):true)">
+            <el-menu-item v-for="item in menuList" :index="item.path" v-if="item.show">
               <i class="el-icon-film"></i>
               <span slot="title">{{item.title}}</span>
             </el-menu-item>
@@ -56,15 +56,20 @@ export default {
                 { title: '对比结果', path:"ContrastResult",show:true}, 
                 // { title: '对比方案', path:"ContrastPlan"}, 
                 { title: '报告文档', path:"ReportFile",show:true}, 
-                { title: '后续跟进事项', path:"remarryMatter",show:true}, 
-                { title: '任务清单', path:"TaskDetails",show:true}, 
+                { title: '后续跟进事项', path:"remarryMatter",show:(this.row && this.row.status==3 && this.$permission('/rms/matter'))?true:false}, 
+                { title: '任务清单', path:"TaskDetails",show:(this.$reportPermission(this.reportId,[0,1]))?true:false}, 
             ],
         }
     },
     watch: {
-  
+        // show(){
+        //     this.setData()
+        // }
     },
     computed:{
+        // show(){
+        //     return this.$permission('/rms/matter')
+        // },
         dictMessage() {
             return this.$s.getSession('row').dictMessage.REPORT_TYPE
         },
@@ -81,10 +86,27 @@ export default {
             return this.$s.getSession('row').signPatentNo
         }
     },
+    created(){
+        this.setData()
+    },
     mounted() {
         this.changePageTitle()
     },
     methods: {
+        setData(){
+            this.menuList =[
+                { title: '基本信息', path:"BasicInformation",show:true}, 
+                { title: '标的产品信息', path:"ProductMessage",show:true}, 
+                { title: '对比文件', path:"ContrastFile",show:this.$s.getSession('row').type == 4?false:true}, 
+                { title: '专利与产品关联比对', path:"ProductContrast",show:this.$s.getSession('row').type == 4?true:false}, 
+                // { title: '新对比文件', path:"referenceFile"}, 
+                { title: '对比结果', path:"ContrastResult",show:true}, 
+                // { title: '对比方案', path:"ContrastPlan"}, 
+                { title: '报告文档', path:"ReportFile",show:true}, 
+                { title: '后续跟进事项', path:"remarryMatter",show:(this.row && this.row.status==3 && this.$permission('/rms/matter'))?true:false}, 
+                { title: '任务清单', path:"TaskDetails",show:(this.$reportPermission(this.reportId,[0,1]))?true:false}, 
+            ]
+        },
         changePageTitle() {
             document.title = `${this.row.name} ${'报告详情'}`
         },

+ 5 - 3
RMS-FrontEnd/src/views/report/FTO/FTOPage/components/ContrasrProduct.vue

@@ -74,11 +74,10 @@
                 </div>
 
                 <div style="  position: relative;">
-                  <el-link v-for="item in menuList" :type="activeMenu === item.value ? 'primary' : undefined"
-                  v-if="$permission('/workspace/patent/worth')?true:item.value !='patentWorth'"
+                  <el-link v-for="item in menuList" :key="item.value" :type="activeMenu === item.value ? 'primary' : undefined" v-if="!item.show"
                     :disabled="item.value === 'PatentExport' ? !$permission('/workspace/details/exportDocument') : false"
                     @click.native="handleSelect(item.value)">{{ item.label }}</el-link>
-                  <el-link v-for="item in menuList2" :type="activeMenu === item.value ? 'primary' : undefined"
+                  <el-link v-for="item in menuList2" :key="item.value" :type="activeMenu === item.value ? 'primary' : undefined"
                     :disabled="item.value === 'PatentExport' ? !$permission('/workspace/details/exportDocument') : false"
                     @click.native="handleSelect(item.value)">{{ item.label }}</el-link>
                   <el-tooltip class="item" effect="dark" :content="(showRight ? '隐藏' : '显示') + '右侧菜单'" placement="top">
@@ -277,14 +276,17 @@ export default {
         // },
         {
           value:'Permit',
+          show:this.$permission('/workspace/patent/worth')?false:true,
           label:'许可历史'
         },
         {
           value:'ProductManage2',
+          show:this.$permission('/workspace/product')?false:true,
           label:'商品化'
         },
         {
           value:'patentWorth',
+          show:this.$permission('/workspace/patent/worth')?false:true,
           label:'价值曲线'
         }
       ],

+ 4 - 1
RMS-FrontEnd/src/views/report/FTO/FTOPage/components/patentMessage.vue

@@ -24,7 +24,7 @@
                 </div>
                
                 <div  style="  position: relative;">
-                    <el-link v-for="item in menuList" :type="activeMenu === item.value ? 'primary' : undefined" v-if="$permission('/workspace/patent/worth')?true:item.value !='patentWorth'" :disabled="item.value === 'PatentExport' ? !$permission('/workspace/details/exportDocument'): false " @click.native="handleSelect(item.value)">{{ item.label }}</el-link>
+                    <el-link v-for="item in menuList" :type="activeMenu === item.value ? 'primary' : undefined" v-if="!item.show" :disabled="item.value === 'PatentExport' ? !$permission('/workspace/details/exportDocument'): false " @click.native="handleSelect(item.value)">{{ item.label }}</el-link>
                   <el-link v-for="item in menuList2" :type="activeMenu === item.value ? 'primary' : undefined" :disabled="item.value === 'PatentExport' ? !$permission('/workspace/details/exportDocument'): false " @click.native="handleSelect(item.value)">{{ item.label }}</el-link>
                   <el-tooltip class="item" effect="dark"  :content="(showRight ? '隐藏' : '显示') + '右侧菜单'" placement="top" v-if="showcard==true">
                     <i :class="showRight ? 'el-icon-s-unfold' : 'el-icon-s-fold'" style="font-size: 25px;position: absolute; right: 10px; margin-top: 5px;color: #2f2f2f; cursor: pointer" @click="showRight = !showRight"></i>
@@ -182,14 +182,17 @@ import PatentWorth from '@/views/components/articles/components/history/componen
         // },
         {
           value:'Permit',
+          show:this.$permission('/workspace/patent/worth')?false:true,
           label:'许可历史'
         },
         {
           value:'ProductManage',
+          show:this.$permission('/workspace/product')?false:true,
           label:'商品化'
         },
         {
           value:'patentWorth',
+          show:this.$permission('/workspace/patent/worth')?false:true,
           label:'价值曲线'
         }
       ],

+ 9 - 1
RMS-FrontEnd/src/views/report/Invalid/InvalidPage/Result.vue

@@ -40,7 +40,7 @@
           <el-tab-pane label="查看对比结果" name="first">
             <el-table
                 ref="table"
-                :data="tableData.filter(item=>typeArr.includes(item.pType))"
+                :data="tableData"
                 :span-method="objectSpanMethod"
                 :row-class-name="tableRowClassName"
                 border
@@ -387,6 +387,7 @@ export default {
       show: true,
       show1: true,
       tableData: [],
+      tableData1: [],
       tableData2: [],
       tableHeader: [],
       checkList: [],
@@ -638,6 +639,9 @@ export default {
       } else {
         this.typeArr.push(1, 0);
       }
+      this.tableData1 = JSON.parse(JSON.stringify(this.tableData1))
+      this.tableData = this.tableData1.filter(item=>this.typeArr.includes(item.pType))
+      this.getSpanArr(this.tableData)
     },
     // open(row){
     //   //console.log(row)
@@ -752,6 +756,10 @@ export default {
                   
                 })
                 this.getRightList()
+                this.$nextTick(()=>{
+                  this.tableData1 = this.tableData
+                })
+                
                 this.getSpanArr(this.tableData)
                 }
                

+ 23 - 4
RMS-FrontEnd/src/views/report/avoid/avoidAsid/index.vue

@@ -3,7 +3,7 @@
       <el-container>
       <el-aside width="210px" style="overflow:hidden" class="patent-articles-menu">
         <el-menu class="theme-dark" :default-active="activeMenu" @select="handleSelect">
-          <el-menu-item v-for="item in menuList" :index="item.path" v-if="item.path=='TaskDetails'?$reportPermission(reportId,[0,1]):true">
+          <el-menu-item v-for="item in menuList" :key="item.path" :index="item.path" v-if="!item.show">
             <i class="el-icon-film"></i>
             <span slot="title">{{item.title}}</span>
           </el-menu-item>
@@ -47,15 +47,20 @@ export default {
               { title: '回避设计方案', path:"avoid"}, 
               { title: '回避设计结果', path:"direction"}, 
               { title: '报告文档', path:"ReportFile"}, 
-              { title: '后续跟进事项', path:"remarryMatter"}, 
-              { title: '任务清单', path:"TaskDetails"}, 
+              { title: '后续跟进事项', path:"remarryMatter",show:(this.row&&this.row.status==3 && this.$permission('/rms/matter'))?false:true}, 
+              { title: '任务清单', path:"TaskDetails",show:(this.$reportPermission(this.reportId,[0,1]))?false:true}, 
           ],
       }
   },
   watch: {
-
+    // show(){
+    //       this.setData()
+    //     }
   },
   computed:{
+    // show(){
+    //         return this.$permission('/rms/matter')
+    //     },
       dictMessage() {
           return this.$s.getSession('row').dictMessage.REPORT_TYPE
       },
@@ -75,11 +80,25 @@ export default {
           return this.$s.getSession('row').signPatentNo
       }
   },
+  created(){
+    this.setData()
+  },
   mounted() {
     this.changePageTitle()
       // console.log(this.row);
   },
   methods: {
+    setData(){
+            this.menuList =[
+                  { title: '基本信息', path: "BasicInformation" }, 
+                  { title: '标的专利特征拆分详情', path:"SignPatent"}, 
+                  { title: '回避设计方案', path:"avoid"}, 
+                  { title: '回避设计结果', path:"direction"}, 
+                  { title: '报告文档', path:"ReportFile"}, 
+                  { title: '后续跟进事项', path:"remarryMatter",show:(this.row&&this.row.status==3 && this.$permission('/rms/matter'))?false:true}, 
+                  { title: '任务清单', path:"TaskDetails",show:(this.$reportPermission(this.reportId,[0,1]))?false:true}, 
+              ]
+        },
       changePageTitle() {
           document.title = `${this.row.name} ${'报告详情'}`
       },

+ 1 - 1
RMS-FrontEnd/src/views/report/components/CreateReport.vue

@@ -34,7 +34,7 @@
             <el-form-item label="结论论述" v-if="!form.id &&form.status == 3">
               <el-input v-model="form.cronConclusion" type="textarea" placeholder="请输入结论论述"></el-input>
             </el-form-item>
-            <el-form-item label="后续跟进事项" v-if="!form.id &&form.status == 3">
+            <el-form-item label="后续跟进事项" v-if="!form.id &&form.status == 3 && $permission('/rms/matter')">
              <span v-if="form.followUps"><span v-for="item in form.followUps" :key="item.followUpName" style="margin-right:10px">{{ item.followUpName}}</span></span> 
               <span>
                 <el-popover

+ 1 - 1
RMS-FrontEnd/src/views/report/components/cronConclusion.vue

@@ -9,7 +9,7 @@
             <el-form-item label="结论论述" >
               <el-input v-model="form.cronConclusion" type="textarea" placeholder="请输入结论论述"></el-input>
             </el-form-item>
-            <el-form-item label="后续跟进事项">
+            <el-form-item label="后续跟进事项" v-if="$permission('/rms/matter')">
              <span v-if="form.followUps"><span v-for="item in form.followUps" :key="item.followUpName" style="margin-right:10px">{{ item.followUpName}}</span></span> 
               <span>
                 <el-popover

+ 24 - 4
RMS-FrontEnd/src/views/report/reportDetails/index.vue

@@ -3,7 +3,7 @@
         <el-container>
         <el-aside width="210px" style="overflow:hidden" class="patent-articles-menu">
           <el-menu class="theme-dark" :default-active="activeMenu" @select="handleSelect">
-            <el-menu-item v-for="item in menuList" :index="item.path" v-if="item.path=='TaskDetails'?$reportPermission(reportId,[0,1]):true">
+            <el-menu-item v-for="item in menuList" :index="item.path" v-if="!item.show">
               <i class="el-icon-film"></i>
               <span slot="title">{{item.title}}</span>
             </el-menu-item>
@@ -52,15 +52,17 @@ export default {
                 { title: '对比结果', path:"ContrastResult"}, 
                 { title: '对比方案', path:"ContrastPlan"}, 
                 { title: '报告文档', path:"ReportFile"}, 
-                { title: '后续跟进事项', path:"remarryMatter"}, 
-                { title: '任务清单', path:"TaskDetails"}, 
+                { title: '后续跟进事项', path:"remarryMatter",show:!(this.$permission('/rms/matter') && this.row && this.row.status == 3)}, 
+                { title: '任务清单', path:"TaskDetails",show:(this.$reportPermission(this.reportId,[0,1]))?false:true}, 
             ],
         }
     },
     watch: {
-  
     },
     computed:{
+        // show(){
+        //     return this.$permission('/rms/matter')
+        // },
         dictMessage() {
             return this.$s.getSession('row').dictMessage.REPORT_TYPE
         },
@@ -74,10 +76,28 @@ export default {
             return this.$s.getSession('row').signPatentNo
         }
     },
+    created(){
+
+        this.setData()
+    },
     mounted() {
+        
         this.changePageTitle()
     },
     methods: {
+        setData(){
+            this.menuList =[
+                { title: '基本信息', path:"BasicInformation"}, 
+                { title: '标的专利特征拆分详情', path:"SignPatent"}, 
+                { title: '对比文件', path:"ContrastFile"}, 
+                // { title: '新对比文件', path:"referenceFile"}, 
+                { title: '对比结果', path:"ContrastResult"}, 
+                { title: '对比方案', path:"ContrastPlan"}, 
+                { title: '报告文档', path:"ReportFile"}, 
+                { title: '后续跟进事项', path:"remarryMatter",show:(this.row && this.row.status==3 && this.$permission('/rms/matter'))?false:true}, 
+                { title: '任务清单', path:"TaskDetails",show:(this.$reportPermission(this.reportId,[0,1]))?false:true}, 
+            ]
+        },
         changePageTitle() {
             document.title = `${this.row.name} ${'报告详情'}`
         },