zhuliu 9 mesi fa
parent
commit
048f7f49a4

+ 45 - 25
src/utils/constants.js

@@ -87,95 +87,115 @@ export default {
     {
       label:'文本',
       value:'text',
-      DBType:['CN','WD'],
+      DBType:['CN','WD','inner_CN','inner_WD'],
       children:[
-        {label: '发明名称/标题', value: 'TI',DBType:['CN','WD'],type:3,dataType:1,placeholder:'请输入发明名称/标题,例:计算机 OR "computer and phone"'},
+        {label: '发明名称/标题', value: 'TI',DBType:['CN','WD','inner_CN','inner_WD'],type:3,dataType:1,placeholder:'请输入发明名称/标题,例:计算机 OR "computer and phone"'},
         {label: '主权利要求', value: 'CL',DBType:['CN'],type:1,dataType:1,placeholder:'请输入主权利要求,例:加煤系统 OR "computer and phone"'},
-        {label: '关键词', value: 'TX',DBType:['CN','WD'],type:3,dataType:1,placeholder:'请输入关键词,例:石墨烯 OR "computer and phone"'},
-        {label: '摘要', value: 'AB',DBType:['CN','WD'],type:3,dataType:1,placeholder:'请输入摘要或简要说明,例:外喷放热气 OR "computer and phone"'},
+        {label: '权利要求', value: 'CL',DBType:['inner_CN','inner_WD'],type:1,dataType:1,placeholder:'请输入权利要求,例:加煤系统 OR "computer and phone"'},
+        {label: '说明书', value: 'ins',DBType:['inner_CN','inner_WD'],type:1,dataType:1,placeholder:'请输入说明书,例:加煤系统 OR "computer and phone"'},
+        {label: '关键词', value: 'TX',DBType:['CN','WD','inner_CN','inner_WD'],type:3,dataType:1,placeholder:'请输入关键词,例:石墨烯 OR "computer and phone"'},
+        {label: '摘要', value: 'AB',DBType:['CN','WD','inner_CN','inner_WD'],type:3,dataType:1,placeholder:'请输入摘要或简要说明,例:外喷放热气 OR "computer and phone"'},
       ]
     },
     {
       label:'号码',
       value:'number',
-      DBType:['CN','WD'],
+      DBType:['CN','WD','inner_CN','inner_WD'],
       children:[
-        {label: '申请号', value: 'AN',DBType:['CN','WD'],type:3,dataType:1,placeholder:'请输入申请号,例:CN202330275114.7 OR CN202330275114.7'},
+        {label: '申请号', value: 'AN',DBType:['CN','WD','inner_CN','inner_WD'],type:3,dataType:1,placeholder:'请输入申请号,例:CN202330275114.7 OR CN202330275114.7'},
         {label: '原始申请号', value: 'ANO',DBType:['CN','WD'],type:3,dataType:1,placeholder:'请输入原始申请号,例:CN202330275109.6 OR CN202330275109.6'},
-        {label: '授权公告号', value: 'GN',DBType:['CN'],type:1,dataType:1,placeholder:'请输入授权公告号,例:CN102860161 OR CN1526554846'},
-        {label: '公开号', value: 'PN',DBType:['CN','WD'],type:3,dataType:1,placeholder:'请输入公开号,例:CN102860161 OR CN1526554846'},
+        {label: '授权公告号', value: 'GN',DBType:['CN','inner_CN','inner_WD'],type:1,dataType:1,placeholder:'请输入授权公告号,例:CN102860161 OR CN1526554846'},
+        {label: '公开号', value: 'PN',DBType:['CN','WD','inner_CN','inner_WD'],type:3,dataType:1,placeholder:'请输入公开号,例:CN102860161 OR CN1526554846'},
         { label: '原始公开号', value: 'PNO', DBType:['WD'],type: 2, dataType: 1, placeholder: '请输入原始公开号,例:CN102860161 OR CN1526554846' },
-         {label: '优先权号', value: 'PR',DBType:['CN','WD'],type:3,dataType:1,placeholder:'请输入优先权号,例:DEP3833692.8'},
+         {label: '优先权号', value: 'PR',DBType:['CN','WD','inner_CN','inner_WD'],type:3,dataType:1,placeholder:'请输入优先权号,例:DEP3833692.8'},
+         {label: 'PCT申请号', value: 'PCTAN',DBType:['inner_CN','inner_WD'],type:3,dataType:1,placeholder:'请输入PCT申请号'},
       ]
     },
     {
       label:'类型及状态',
       value:'typeAndStatus',
       show:true,
-      DBType:['CN'],
+      DBType:['CN','inner_CN','inner_WD'],
       children:[
-        {label: '专利类型',value: 'PT',DBType:['CN'],type:1,dataType:3},
-        {label: '法律状态', value: 'LG',DBType:['CN'],type:1,dataType:3},
+        {label: '专利类型',value: 'PT',DBType:['CN','inner_CN','inner_WD'],type:1,dataType:3},
+        {label: '法律状态', value: 'LG',DBType:['CN','inner_CN','inner_WD'],type:1,dataType:3},
       ]
     },
     {
       label:'分类',
       value:'typeNumber',
-      DBType:['CN','WD'],
+      DBType:['CN','WD','inner_CN','inner_WD'],
       children:[
         {label: '分类号', value: 'IC',DBType:['CN','WD'],type:3,dataType:1,placeholder:'请输入分类号,例:21-01 OR B61D47/00'},
         {label: '主分类号', value: 'MC',DBType:['CN','WD'],type:3,dataType:1,placeholder:'请输入分类号,例:21-01 OR B61D47/00'},
         // {label: '优先权号', value: 'PR',type:3,dataType:1,placeholder:'请输入优先权号,例:DEP3833692.8'},
         {label: '范畴分类', value: 'CT',DBType:['CN'],type:1,dataType:1,placeholder:'请输入范畴分类,例:32D OR 40B'},
         {label: '欧洲分类', value: 'EC',DBType:['WD'],type:2,dataType:1,placeholder:'请输入欧洲分类号'},
+
+        {label: 'IPC分类号', value: 'MIPC',DBType:['inner_CN','inner_WD'],type:3,dataType:1,placeholder:'请输入IPC分类号,例:21-01 OR B61D47/00'},
+        {label: 'LOC分类号', value: 'MLOC',DBType:['inner_CN','inner_WD'],type:3,dataType:1,placeholder:'请输入LOC分类号,例:21-01 OR B61D47/00'},
       ]
     },
     {
       label:'日期',
       value:'date',
-      DBType:['CN','WD'],
+      DBType:['CN','WD','inner_CN','inner_WD'],
       children:[
-        {label: '申请日', value: 'AD',DBType:['CN','WD'],type:3,dataType:1,placeholder:'请输入申请日,例:2020 OR 202001 OR 20230101 OR 20230101~20230601'},
-        {label: '授权公告日', value: 'GD',DBType:['CN'],type:1,dataType:1,placeholder:'请输入授权公告日,例:2020 OR 202001 OR 20230101 OR 20230101~20230601'},
-        {label: '公开日', value: 'PD',DBType:['CN','WD'],type:3,dataType:1,placeholder:'请输入公开日,例:2020 OR 202001 OR 20230101 OR 20230101~20230601'},
+        {label: '申请日', value: 'AD',DBType:['CN','WD','inner_CN','inner_WD'],type:3,dataType:1,placeholder:'请输入申请日,例:2020 OR 202001 OR 20230101 OR 20230101~20230601'},
+        {label: '授权公告日', value: 'GD',DBType:['CN','inner_CN','inner_WD'],type:1,dataType:1,placeholder:'请输入授权公告日,例:2020 OR 202001 OR 20230101 OR 20230101~20230601'},
+        {label: '公开日', value: 'PD',DBType:['CN','WD','inner_CN','inner_WD'],type:3,dataType:1,placeholder:'请输入公开日,例:2020 OR 202001 OR 20230101 OR 20230101~20230601'},
+        {label: '优先权日', value: 'PRD',DBType:['inner_CN','inner_WD'],type:3,dataType:1,placeholder:'请输入优先权日,例:2020 OR 202001 OR 20230101 OR 20230101~20230601'},
       ]
     },
     {
       label:'公司/人',
       value:'person',
-      DBType:['CN','WD'],
+      DBType:['CN','WD','inner_CN','inner_WD'],
       children:[
-        {label: '发明人', value: 'IN',DBType:['CN','WD'],type:3,dataType:1,placeholder:'请输入发明人,例:钟丽红'},
+        {label: '发明人', value: 'IN',DBType:['CN','WD','inner_CN','inner_WD'],type:3,dataType:1,placeholder:'请输入发明人,例:钟丽红'},
         {label: '第一发明人', value: 'FI',DBType:['CN','WD'],type:3,dataType:1,placeholder:'请输入第一发明人,例:钟丽红'},
-        {label: '申请人', value: 'PA',DBType:['CN','WD'],type:3,dataType:1,placeholder:'请输入申请人,例:钟丽红'},
+        {label: '申请人', value: 'PA',DBType:['CN','WD','inner_CN','inner_WD'],type:3,dataType:1,placeholder:'请输入申请人,例:钟丽红'},
         {label: '第一申请人', value: 'FP',DBType:['CN','WD'],type:3,dataType:1,placeholder:'请输入第一申请人,例:钟丽红'},
-        {label: '权利人', value: 'PE',DBType:['CN'],type:1,dataType:1,placeholder:'请输入权利人,例:钟丽红'},
+        {label: '权利人', value: 'PE',DBType:['CN','inner_CN','inner_WD'],type:1,dataType:1,placeholder:'请输入权利人,例:钟丽红'},
         // {label: '代理机构代码', value: 'AG',type:1,dataType:1,placeholder:'请输入代理机构代码,例:11223'},
         {label: '代理人', value: 'AT',DBType:['CN'],type:1,dataType:1,placeholder:'请输入代理人,例:张三'},
-        {label: '代理机构名称', value: 'AGN',DBType:['CN'],type:1,dataType:1,placeholder:'请输入代理机构名称,例:威士博'},
+        {label: '代理人', value: 'AG',DBType:['inner_CN','inner_WD'],type:1,dataType:1,placeholder:'请输入代理人,例:张三'},
+        {label: '代理机构名称', value: 'AGN',DBType:['CN','inner_CN','inner_WD'],type:1,dataType:1,placeholder:'请输入代理机构名称,例:威士博'},
       ]
     },
     {
       label:'地址',
       value:'address',
-      DBType:['CN'],
+      DBType:['CN','inner_CN','inner_WD'],
       show:true,
       children:[
         // {label: '国省代码', value: 'CO',type:3,dataType:1,placeholder:'请输入国省代码,例:94 OR CN'},
         // {label: '发明人国家', value: 'ICO',type:2,dataType:1,placeholder:'请输入发明人国家,例:94 OR CN'},
         // {label: '国家', value: 'GJ',type:3,dataType:3,placeholder:'请输入国家,例:CN'},
         {label: '申请人地址', value: 'DZ',DBType:['CN'],type:1,dataType:1,placeholder:'请输入申请人地址,例:深圳市南山区'},
+        {label: '申请人地址', value: 'ADD',DBType:['inner_CN','inner_WD'],type:1,dataType:1,placeholder:'请输入申请人地址,例:深圳市南山区'},
+        {label: '权利人地址', value: 'RDD',DBType:['inner_CN','inner_WD'],type:1,dataType:1,placeholder:'请输入权利人地址,例:深圳市南山区'},
       ]
     },
     {
       label:'国家/地区',
       value:'country',
-      DBType:['CN','WD'],
+      DBType:['CN','WD','inner_CN','inner_WD'],
       children:[
         {label: '申请人国家/地区', value: 'CO',DBType:['CN'],type:1,dataType:1,placeholder:'请输入国省代码,例:94 OR CN'},
         // {label: '发明人国家', value: 'ICO',type:2,dataType:1,placeholder:'请输入发明人国家,例:94 OR CN'},
         {label: '受理局', value: 'GJ',DBType:['WD'],type:2,dataType:3,placeholder:'请输入国家,例:CN'},
-        // {label: '申请人地址', value: 'DZ',type:1,dataType:1,placeholder:'请输入申请人地址,例:深圳市南山区'},
+        {label: '申请国家', value: 'CO',DBType:[,'inner_CN','inner_WD'],type:2,dataType:3,placeholder:'请输入国家,例:CN'},
+        {label: '申请人国家', value: 'AAC',DBType:[,'inner_CN','inner_WD'],type:2,dataType:3,placeholder:'请输入申请人国家,例:CN'},
+        {label: '权利人国家', value: 'DZ',DBType:[,'inner_CN','inner_WD'],type:2,dataType:3,placeholder:'请输入权利人国家,例:CN'},
+      ],
+      otherField:[
+        {label: '申请人省', value: 'ADP',DBType:[,'inner_CN','inner_WD'],type:2,dataType:3,placeholder:'请输入申请人省'},
+        {label: '申请人市', value: 'ADC',DBType:[,'inner_CN','inner_WD'],type:2,dataType:3,placeholder:'请输入申请人市'},
+        {label: '申请人区县', value: 'ADD',DBType:[,'inner_CN','inner_WD'],type:2,dataType:3,placeholder:'请输入申请人区县'},
+        {label: '权利人省', value: 'RDP',DBType:[,'inner_CN','inner_WD'],type:2,dataType:3,placeholder:'请输入权利人省'},
+        {label: '权利人市', value: 'RDC',DBType:[,'inner_CN','inner_WD'],type:2,dataType:3,placeholder:'请输入权利人市'},
+        {label: '权利人区县', value: 'RDD',DBType:[,'inner_CN','inner_WD'],type:2,dataType:3,placeholder:'请输入权利人区县'},
       ]
     },
     {

+ 4 - 4
src/views/components/import/conditionImport/FormSearch.vue

@@ -10,9 +10,9 @@
                     <div>
                         <el-row>
                             <el-col :span="24">
-                                <div v-for="(i,index) in item.children" :key="i.value">
-                                    <div>
-                                        <el-col :span="12" v-if="i.DBType.indexOf(DBType)!=-1">
+                                <template v-for="(i,index) in item.children" >
+                                    <div v-if="i.DBType.indexOf(DBType)!=-1" :key="i.value">
+                                        <el-col :span="12" >
                                             <el-form-item :label="i.label+':'">
                                                 <!-- <el-select v-model="form[item.children[index].value]" multiple filterable collapse-tags placeholder="请选择,可多选" style="width:100%">
                                                     <el-option
@@ -55,7 +55,7 @@
                                         </el-col>
                                     </div>
                                     
-                                </div>
+                                </template>
                                 
                             </el-col>
                         </el-row>

+ 5 - 1
src/views/components/import/conditionImport/index.vue

@@ -1,6 +1,6 @@
 <template>
   <div style="background:white">
-    <search :importData="importData" :editData="editData" :noveltySearch='noveltySearch' :projectId="projectId" :isEdit="isEdit" :innerProjectId1="innerProjectId"></search>
+    <search :importData="importData" :editData="editData" :noveltySearch='noveltySearch' :projectId="projectId" :isEdit="isEdit" :innerProjectId1="innerProjectId" :defaultSearchDB="defaultSearchDB"></search>
   </div>
 </template>
 
@@ -38,6 +38,10 @@ export default {
     },
     innerProjectId(){
       return this.$route.query.innerProjectId
+    },
+    defaultSearchDB(){
+      var a = this.$route.query.defaultSearchDB
+      return a?JSON.parse(a):undefined
     }
   },
   created() {

+ 52 - 7
src/views/components/import/conditionImport/search.vue

@@ -4,12 +4,15 @@
             <div class="search-menu">
                 <div class="type">
                     <el-radio-group v-model="DBType">
-                        <el-radio label="CN">中国专利检索</el-radio>
-                        <el-radio label="WD">世界专利检索</el-radio>
+                        <template v-for="type in defaultSearchDB" >
+                            <el-radio v-if="searchDB[type]" :key="type" :label="type">{{searchDB[type]}}</el-radio>
+                        </template>
+                        
+                        <!-- <el-radio label="CN">中国专利检索</el-radio>
+                        <el-radio label="WD">世界专利检索</el-radio> -->
                         <el-radio label="inner" v-if="noveltySearch">
                             <span v-if="DBType != 'inner'">内部专利检索</span>
                             <el-select v-else v-model.number="innerProjectId" @change="changeProjectId" filterable remote clearable placeholder="默认全部内部数据检索" v-SelectLazyLoading="lazyLoading" :remote-method="remoteMethod">
-                               
                                 <el-option
                                     v-for="item in projectQuery.data"
                                     :key="item.id"
@@ -64,12 +67,47 @@ export default {
         createNoveltySearch
     },
     mixins:[mixins],
-    props:['importData','editData','noveltySearch','projectId','isEdit','innerProjectId1'],
+    props:{
+        importData:{
+            type:Object,
+            default:()=>{
+                return {}
+            }
+        },
+        editData:{
+            type:Object,
+            default:()=>{
+                return {}
+            }
+        },
+        noveltySearch:{
+            type:Boolean,
+            default:false
+        },
+        projectId:'',
+        isEdit:{
+            type:Boolean,
+            default:false
+        },
+        innerProjectId1:'',
+        defaultSearchDB:{
+            type:Array,
+            default:()=>{
+                return ['CN','WD']
+            }
+        }
+    },
     data() {
         return {
+            searchDB:{
+                'CN':'中国专利检索',
+                'WD':'世界专利检索',
+                'inner_CN':'中国专利检索(内)',
+                'inner_WD':'全球专利检索(内)',
+            },
             isComponent:'customSearch',
             countryList:[],
-            DBType:"CN",
+            DBType:this.defaultSearchDB[0],
             selected:['US','DE','JP','GB','FR','KR','RU','CH','EP','WO'],
             innerProjectId: null,
             projectQuery:{
@@ -103,7 +141,7 @@ export default {
     },
     watch:{
         DBType(val){
-            if(val == 'inner' && this.projectQuery.data.length == 0){
+            if(val != 'CN' && val != 'WD' && this.projectQuery.data.length == 0){
                 if(this.innerProjectId){
                     this.projectQuery.id = this.innerProjectId
                 }
@@ -242,6 +280,13 @@ export default {
                     return
                 }
             }
+            if(this.DBType == 'inner_CN'){
+                if(val){
+                    val = val + ' AND CO=CN'
+                }else{
+                    val = 'CO=CN'
+                }
+            }
             var a = {
                 ...this.importData,
                 searchCondition:val || "",
@@ -259,7 +304,7 @@ export default {
                     data:JSON.stringify(a),
                     noveltySearch:this.noveltySearch,
                     projectId:this.projectId,
-                    outside:this.DBType == 'inner'?false:true,
+                    outside:(this.DBType != 'CN' && this.DBType != 'WD')?false:true,
                     innerProjectId:this.innerProjectId,
                     semanteme:this.semanteme
                 }

+ 13 - 6
src/views/layout/components/UserBar.vue

@@ -2,12 +2,12 @@
   <div class="admin-user-bar">
     <div class="menu">
       <span v-for="(item,index) in menu" :key="index">
-        <el-dropdown @command="changePage($event,item)" v-if="item.children && item.children.length>0">
+        <el-dropdown  v-if="item.children && item.children.length>0">
           <el-link :underline="true" :type="item.belong==belong?'primary':'default'" class="el-dropdown-link">
             {{ item.current }}<i class="el-icon-arrow-down el-icon--right"></i>
             </el-link>
           <el-dropdown-menu slot="dropdown">
-            <el-dropdown-item v-for="(menuItem,index2) in item.children" :key="index2" :command="menuItem.value">{{menuItem.label}}</el-dropdown-item>
+            <el-dropdown-item v-for="(menuItem,index2) in item.children" :key="index2" :command="menuItem.value" @click.native.stop="changePage(menuItem.value,menuItem,item)">{{menuItem.label}}</el-dropdown-item>
           </el-dropdown-menu>
         </el-dropdown>
         <el-link v-else :underline="true" @click="changePage(item.path)" :type="item.belong==belong?'primary':'default'">{{ item.label }}</el-link>
@@ -185,11 +185,11 @@ export default {
               value:'/AllReport?componentType=1',
             },
             {
-              label:'官方无效',
+              label:'官方无效报告',
               value:'/AllReport?componentType=2',
             },
             {
-              label:'查新检索',
+              label:'查新检索报告',
               value:'/noveltySearch',
             }
           ]
@@ -226,7 +226,10 @@ export default {
             },
             {
               label:'内部专利检索',
-              value:'/innerPatentSearch',
+              value:'/conditionImport',
+              query:{
+                defaultSearchDB:JSON.stringify(['inner_CN','inner_WD'])
+              }
             },
             {
               label:'查新检索',
@@ -281,9 +284,13 @@ export default {
       this.clientVisible = false
     },
     //跳转页面
-    changePage(path,item){
+    changePage(path,item,parent){
       var query = {}
       if(item){
+        if(item.query){
+          query=item.query
+        }
+        parent.current = item.label
         // query.componentType = value
         // var arr = item.children
         // var obj = arr.find(i=>{