morphone1995 4 years ago
parent
commit
6a386e6cc3

+ 38 - 0
src/api/cdss.js

@@ -341,4 +341,42 @@ export default {
   getListDicCDSS(param) {
     return axios.post(urls.getListDicCDSS, param);
   },
+
+
+
+  precDeptDataMatch(param) {
+    return axios.post(urls.precDeptDataMatch, param, {
+      responseType: 'blob',
+    });
+  },
+  precDrugDataMatch(param) {
+    return axios.post(urls.precDrugDataMatch, param, {
+      responseType: 'blob',
+    });
+  },
+  precDiseaseDataMatch(param) {
+    return axios.post(urls.precDiseaseDataMatch, param, {
+      responseType: 'blob',
+    });
+  },
+  precLisDataMatch(param) {
+    return axios.post(urls.precLisDataMatch, param, {
+      responseType: 'blob',
+    });
+  },
+  precPacsDataMatch(param) {
+    return axios.post(urls.precPacsDataMatch, param, {
+      responseType: 'blob',
+    });
+  },
+  precOperationDataMatch(param) {
+    return axios.post(urls.precOperationDataMatch, param, {
+      responseType: 'blob',
+    });
+  },
+  precFusionDataMatch(param) {
+    return axios.post(urls.precFusionDataMatch, param, {
+      responseType: 'blob',
+    });
+  },
 };

+ 13 - 6
src/api/config.js

@@ -371,7 +371,8 @@ export default {
     'deleteDiseaseRecordCDSS': '/api/cdssman/tran/diseaseConfig/deleteRecord',   //诊断-删除映射关系
     'exportDiseaseRecordCDSS': '/api/cdssman/tran/diseaseConfig/exportExcel',   //诊断-数据导出
     'importDiseaseRecordCDSS': '/api/cdssman/tran/diseaseConfig/importExcel',   //诊断-数据导入
-    'exportDiseaseModuleCDSS': '/api/cdssman/tran/diseaseConfig/exportExcelModule',   //诊断-数据导入模板导出
+    'exportDiseaseModuleCDSS': '/api/cdssman/tran/diseaseConfig/exportExcelModule',   
+    'precDiseaseDataMatch': '/api/cdssman/tran/diseaseConfig/precDataMatch',   
 
     'getLisPageCDSS': '/api/cdssman/tran/lisConfig/getPage',   //检验列表
     'lisIsExistRecordCDSS': '/api/cdssman/tran/lisConfig/isExistRecord',   //检验-映射关系是否已存在
@@ -379,7 +380,8 @@ export default {
     'deleteLisRecordCDSS': '/api/cdssman/tran/lisConfig/deleteRecord',   //检验-删除映射关系
     'exportLisRecordCDSS': '/api/cdssman/tran/lisConfig/exportExcel',   //检验-数据导出
     'importLisRecordCDSS': '/api/cdssman/tran/lisConfig/importExcel',   //检验-数据导入
-    'exportLisModuleCDSS': '/api/cdssman/tran/lisConfig/exportExcelModule',   //科室-数据导入模板导出
+    'exportLisModuleCDSS': '/api/cdssman/tran/lisConfig/exportExcelModule',   
+    'precLisDataMatch': '/api/cdssman/tran/lisConfig/precDataMatch',   
 
     'getpacsPageCDSS': '/api/cdssman/tran/pacsConfig/getPage',   //检查列表
     'pacsIsExistRecordCDSS': '/api/cdssman/tran/pacsConfig/isExistRecord',   //检查-映射关系是否已存在
@@ -387,7 +389,8 @@ export default {
     'deletePacsRecordCDSS': '/api/cdssman/tran/pacsConfig/deleteRecord',   //检查-删除映射关系
     'exportPacsRecordCDSS': '/api/cdssman/tran/pacsConfig/exportExcel',   //检查-数据导出
     'importPacsRecordCDSS': '/api/cdssman/tran/pacsConfig/importExcel',   //检查-数据导入
-    'exportPacsModuleCDSS': '/api/cdssman/tran/pacsConfig/exportExcelModule',   //科室-数据导入模板导出
+    'exportPacsModuleCDSS': '/api/cdssman/tran/pacsConfig/exportExcelModule', 
+    'precPacsDataMatch': '/api/cdssman/tran/pacsConfig/precDataMatch', 
 
     'getDrugPageCDSS': '/api/cdssman/tran/drugConfig/getPage',   //药品列表
     'drugIsExistRecordCDSS': '/api/cdssman/tran/drugConfig/isExistRecord',   //药品-映射关系是否已存在
@@ -395,7 +398,8 @@ export default {
     'deleteDrugRecordCDSS': '/api/cdssman/tran/drugConfig/deleteRecord',   //药品-删除映射关系
     'exportDrugRecordCDSS': '/api/cdssman/tran/drugConfig/exportExcel',   //药品-数据导出
     'importDrugRecordCDSS': '/api/cdssman/tran/drugConfig/importExcel',   //药品-数据导入
-    'exportDrugModuleCDSS': '/api/cdssman/tran/drugConfig/exportExcelModule',   //科室-数据导入模板导出
+    'exportDrugModuleCDSS': '/api/cdssman/tran/drugConfig/exportExcelModule',   
+    'precDrugDataMatch': '/api/cdssman/tran/drugConfig/precDataMatch',  
 
     'getOperationPageCDSS': '/api/cdssman/tran/operationConfig/getPage',   //手术/操作列表
     'operationIsExistRecordCDSS': '/api/cdssman/tran/operationConfig/isExistRecord',   //手术/操作-映射关系是否已存在
@@ -403,7 +407,8 @@ export default {
     'deleteOperationRecordCDSS': '/api/cdssman/tran/operationConfig/deleteRecord',   //手术/操作-删除映射关系
     'exportOperationRecordCDSS': '/api/cdssman/tran/operationConfig/exportExcel',   //手术/操作-数据导出
     'importOperationRecordCDSS': '/api/cdssman/tran/operationConfig/importExcel',   //手术/操作-数据导入
-    'exportOperationModuleCDSS': '/api/cdssman/tran/operationConfig/exportExcelModule',   //科室-数据导入模板导出
+    'exportOperationModuleCDSS': '/api/cdssman/tran/operationConfig/exportExcelModule', 
+    'precOperationDataMatch': '/api/cdssman/tran/operationConfig/precDataMatch', 
 
     'getFusionPageCDSS': '/api/cdssman/tran/transfusionConfig/getPage',   //输血列表
     'fusionIsExistRecordCDSS': '/api/cdssman/tran/transfusionConfig/isExistRecord',   //输血-映射关系是否已存在
@@ -411,7 +416,8 @@ export default {
     'deleteFusionRecordCDSS': '/api/cdssman/tran/transfusionConfig/deleteRecord',   //输血-删除映射关系
     'exportFusionRecordCDSS': '/api/cdssman/tran/transfusionConfig/exportExcel',   //输血-数据导出
     'importFusionRecordCDSS': '/api/cdssman/tran/transfusionConfig/importExcel',   //输血-数据导入
-    'exportFusionModuleCDSS': '/api/cdssman/tran/transfusionConfig/exportExcelModule',   //科室-数据导入模板导出
+    'exportFusionModuleCDSS': '/api/cdssman/tran/transfusionConfig/exportExcelModule',  
+    'precFusionDataMatch': '/api/cdssman/tran/transfusionConfig/precDataMatch',  
 
     'getDeptPageCDSS': '/api/cdssman/tran/deptConfig/getPage',   //科室列表
     'deptIsExistRecordCDSS': '/api/cdssman/tran/deptConfig/isExistRecord',   //科室-映射关系是否已存在
@@ -420,6 +426,7 @@ export default {
     'exportDeptRecordCDSS': '/api/cdssman/tran/deptConfig/exportExcel',   //科室-数据导出
     'importDeptRecordCDSS': '/api/cdssman/tran/deptConfig/importExcel',   //科室-数据导入
     'exportDeptModuleCDSS': '/api/cdssman/tran/deptConfig/exportExcelModule',   //科室-数据导入模板导出
+    'precDeptDataMatch': '/api/cdssman/tran/deptConfig/precDataMatch',   
    
     // 'saveHospitalInfoRecordCDSS': '/api/cdssman/tran/hospitalInfo/saveRecord',   //医院信息——修改医院信息
 

+ 40 - 2
src/components/cdssManage/dept/DeptManage.vue

@@ -1,6 +1,6 @@
 <template>
   <div>
-    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS" style="min-width: 1096px">
+    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS" style="min-width: 1196px">
       <el-form :inline="true" class="demo-form-inline">
         <el-form-item>
           <el-button type="text" class="downTemplate" @click="exportModule">导入模板下载</el-button>
@@ -12,6 +12,14 @@
             accept=".csv, application/vnd.ms-excel, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
           />
           <el-button size="mini" @click="importPage">{{uploadInfo}}</el-button>
+          <input
+            type="file"
+            name="uploadfile "
+            id="upFileMatch"
+            @change="uploadFileMatch($event)"
+            accept=".csv, application/vnd.ms-excel, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
+          />
+          <el-button size="mini" @click="handleMatchData">预匹配</el-button>
           <el-button size="mini" @click="exportData">导出</el-button>
         </el-form-item>
         <el-form-item label="医院科室名称:">
@@ -121,6 +129,33 @@ export default {
     });
   },
   methods: {
+    // 预匹配
+    handleMatchData() {
+      let inp = document.getElementById('upFileMatch');
+      inp.click();
+    },
+    // 导入数据
+    uploadFileMatch(e) {
+      let fileInfo = e.target.files[0];
+      e.preventDefault();
+      let formData = new FormData();
+      formData.append('file', fileInfo);
+      const header = {
+        headers: {
+          'Content-Type': 'multipart/form-data'
+        }
+      };
+      api.precDeptDataMatch(formData, header).then(res => {
+        if (res.status === 200) {
+          setTimeout(() => {
+            utils.downloadExportedData(res.data, '科室关联数据(预匹配).xls');
+          }, 1500);
+        }
+      });
+      let inp = document.getElementById('upFileMatch');
+      inp.value = '';
+    },
+
     handleSizeChange(val) {
       this.pageSize = val;
       this.currentPage = utils.getCurrentPage(
@@ -207,7 +242,7 @@ export default {
         name: 'AddDept',
         params: Object.assign(pam, {
           isEdit: true,
-          data: {...item, hospitalId: this.hospitalId},
+          data: { ...item, hospitalId: this.hospitalId },
           hospitaiName: this.hospitaiName
         })
       });
@@ -432,6 +467,9 @@ export default {
 #upFile {
   display: none;
 }
+#upFileMatch {
+  display: none;
+}
 .el-message-box {
   /deep/.cancelBtn {
     background-color: #d7d7d7;

+ 39 - 2
src/components/cdssManage/disease/Disease.vue

@@ -1,6 +1,6 @@
 <template>
   <div>
-    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS" style="min-width: 1096px">
+    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS" style="min-width: 1196px">
       <el-form :inline="true" class="demo-form-inline">
         <el-form-item>
           <el-button type="text" class="downTemplate" @click="exportModule">导入模板下载</el-button>
@@ -12,6 +12,14 @@
             accept=".csv, application/vnd.ms-excel, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
           />
           <el-button size="mini" @click="importPage">{{uploadInfo}}</el-button>
+          <input
+            type="file"
+            name="uploadfile "
+            id="upFileMatch"
+            @change="uploadFileMatch($event)"
+            accept=".csv, application/vnd.ms-excel, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
+          />
+          <el-button size="mini" @click="handleMatchData" style="marginLeft: 10px">预匹配</el-button>
           <el-button size="mini" @click="exportData">导出</el-button>
         </el-form-item>
         <el-form-item label="医院诊断名称:">
@@ -118,6 +126,32 @@ export default {
     });
   },
   methods: {
+    // 预匹配
+    handleMatchData() {
+      let inp = document.getElementById('upFileMatch');
+      inp.click();
+    },
+    // 导入数据
+    uploadFileMatch(e) {
+      let fileInfo = e.target.files[0];
+      e.preventDefault();
+      let formData = new FormData();
+      formData.append('file', fileInfo);
+      const header = {
+        headers: {
+          'Content-Type': 'multipart/form-data'
+        }
+      };
+      api.precDiseaseDataMatch(formData, header).then(res => {
+        if (res.status === 200) {
+          setTimeout(() => {
+            utils.downloadExportedData(res.data, '诊断关联数据(预匹配).xls');
+          }, 1500);
+        }
+      });
+      let inp = document.getElementById('upFileMatch');
+      inp.value = '';
+    },
     handleSizeChange(val) {
       this.pageSize = val;
       this.currentPage = utils.getCurrentPage(
@@ -204,7 +238,7 @@ export default {
         name: 'AddDisease',
         params: Object.assign(pam, {
           isEdit: true,
-          data: {...item, hospitalId: this.hospitalId},
+          data: { ...item, hospitalId: this.hospitalId },
           hospitaiName: this.hospitaiName
         })
       });
@@ -415,6 +449,9 @@ export default {
 #upFile {
   display: none !important;
 }
+#upFileMatch {
+  display: none;
+}
 .cdssMessage {
   /deep/.el-message-box__btns {
     .cancelBtn1 {

+ 39 - 1
src/components/cdssManage/drug/DrugManage.vue

@@ -1,6 +1,6 @@
 <template>
   <div>
-    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS" style="min-width: 1096px">
+    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS" style="min-width: 1196px">
       <el-form :inline="true" class="demo-form-inline">
         <el-form-item>
           <el-button type="text" class="downTemplate" @click="exportModule">导入模板下载</el-button>
@@ -12,6 +12,14 @@
             accept=".csv, application/vnd.ms-excel, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
           />
           <el-button size="mini" @click="importPage">{{uploadInfo}}</el-button>
+          <input
+            type="file"
+            name="uploadfile "
+            id="upFileMatch"
+            @change="uploadFileMatch($event)"
+            accept=".csv, application/vnd.ms-excel, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
+          />
+          <el-button size="mini" @click="handleMatchData" style="marginLeft: 10px">预匹配</el-button>
           <el-button size="mini" @click="exportData">导出</el-button>
         </el-form-item>
         <el-form-item label="医院药品名称:">
@@ -118,6 +126,33 @@ export default {
     });
   },
   methods: {
+    // 预匹配
+    handleMatchData() {
+      let inp = document.getElementById('upFileMatch');
+      inp.click();
+    },
+    // 导入数据
+    uploadFileMatch(e) {
+      let fileInfo = e.target.files[0];
+      e.preventDefault();
+      let formData = new FormData();
+      formData.append('file', fileInfo);
+      const header = {
+        headers: {
+          'Content-Type': 'multipart/form-data'
+        }
+      };
+      api.precDrugDataMatch(formData, header).then(res => {
+        if (res.status === 200) {
+          setTimeout(() => {
+            utils.downloadExportedData(res.data, '药品关联数据(预匹配).xls');
+          }, 1500);
+        }
+      });
+      let inp = document.getElementById('upFileMatch');
+      inp.value = '';
+    },
+
     handleSizeChange(val) {
       this.pageSize = val;
       this.currentPage = utils.getCurrentPage(
@@ -429,6 +464,9 @@ export default {
 #upFile {
   display: none !important;
 }
+#upFileMatch {
+  display: none;
+}
 .el-message-box {
   /deep/.cancelBtn {
     background-color: #d7d7d7;

+ 38 - 1
src/components/cdssManage/fusion/Fusion.vue

@@ -1,6 +1,6 @@
 <template>
   <div>
-    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS" style="min-width:1096px">
+    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS" style="min-width:1196px">
       <el-form :inline="true" class="demo-form-inline">
         <el-form-item>
           <el-button type="text" class="downTemplate" @click="exportModule">导入模板下载</el-button>
@@ -12,6 +12,14 @@
             accept=".csv, application/vnd.ms-excel, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
           />
           <el-button size="mini" @click="importPage">{{uploadInfo}}</el-button>
+          <input
+            type="file"
+            name="uploadfile "
+            id="upFileMatch"
+            @change="uploadFileMatch($event)"
+            accept=".csv, application/vnd.ms-excel, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
+          />
+          <el-button size="mini" @click="handleMatchData" style="marginLeft: 10px">预匹配</el-button>
           <el-button size="mini" @click="exportData">导出</el-button>
         </el-form-item>
         <el-form-item label="医院输血类型:">
@@ -117,6 +125,32 @@ export default {
     });
   },
   methods: {
+    // 预匹配
+    handleMatchData() {
+      let inp = document.getElementById('upFileMatch');
+      inp.click();
+    },
+    // 导入数据
+    uploadFileMatch(e) {
+      let fileInfo = e.target.files[0];
+      e.preventDefault();
+      let formData = new FormData();
+      formData.append('file', fileInfo);
+      const header = {
+        headers: {
+          'Content-Type': 'multipart/form-data'
+        }
+      };
+      api.precFusionDataMatch(formData, header).then(res => {
+        if (res.status === 200) {
+          setTimeout(() => {
+            utils.downloadExportedData(res.data, '输血关联数据(预匹配).xls');
+          }, 1500);
+        }
+      });
+      let inp = document.getElementById('upFileMatch');
+      inp.value = '';
+    },
     handleSizeChange(val) {
       this.pageSize = val;
       this.currentPage = utils.getCurrentPage(
@@ -426,6 +460,9 @@ export default {
 #upFile {
   display: none !important;
 }
+#upFileMatch {
+  display: none;
+}
 .el-message-box {
   /deep/.cancelBtn {
     background-color: #d7d7d7;

+ 38 - 1
src/components/cdssManage/lis/Lis.vue

@@ -1,6 +1,6 @@
 <template>
   <div>
-    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS" style="min-width: 1240px">
+    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS" style="min-width: 1340px">
       <el-form :inline="true" class="demo-form-inline">
         <el-form-item>
           <el-button type="text" class="downTemplate" @click="exportModule">导入模板下载</el-button>
@@ -12,6 +12,14 @@
             accept=".csv, application/vnd.ms-excel, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
           />
           <el-button size="mini" @click="importPage">{{uploadInfo}}</el-button>
+          <input
+            type="file"
+            name="uploadfile "
+            id="upFileMatch"
+            @change="uploadFileMatch($event)"
+            accept=".csv, application/vnd.ms-excel, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
+          />
+          <el-button size="mini" @click="handleMatchData" style="marginLeft: 10px">预匹配</el-button>
           <el-button size="mini" @click="exportData">导出</el-button>
         </el-form-item>
         <el-form-item label="检验套餐:">
@@ -122,6 +130,32 @@ export default {
     });
   },
   methods: {
+    // 预匹配
+    handleMatchData() {
+      let inp = document.getElementById('upFileMatch');
+      inp.click();
+    },
+    // 导入数据
+    uploadFileMatch(e) {
+      let fileInfo = e.target.files[0];
+      e.preventDefault();
+      let formData = new FormData();
+      formData.append('file', fileInfo);
+      const header = {
+        headers: {
+          'Content-Type': 'multipart/form-data'
+        }
+      };
+      api.precLisDataMatch(formData, header).then(res => {
+        if (res.status === 200) {
+          setTimeout(() => {
+            utils.downloadExportedData(res.data, '检验关联数据(预匹配).xls');
+          }, 1500);
+        }
+      });
+      let inp = document.getElementById('upFileMatch');
+      inp.value = '';
+    },
     handleSizeChange(val) {
       this.pageSize = val;
       this.currentPage = utils.getCurrentPage(
@@ -430,6 +464,9 @@ export default {
     color: #02a7f0;
   }
 }
+#upFileMatch {
+  display: none;
+}
 #upFile {
   display: none !important;
 }

+ 46 - 7
src/components/cdssManage/operation/Operation.vue

@@ -1,6 +1,6 @@
 <template>
   <div>
-    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS" style="min-width: 1180px">
+    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS" style="min-width: 1280px">
       <el-form :inline="true" class="demo-form-inline">
         <el-form-item>
           <el-button type="text" class="downTemplate" @click="exportModule">导入模板下载</el-button>
@@ -12,6 +12,14 @@
             accept=".csv, application/vnd.ms-excel, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
           />
           <el-button size="mini" @click="importPage">{{uploadInfo}}</el-button>
+          <input
+            type="file"
+            name="uploadfile "
+            id="upFileMatch"
+            @change="uploadFileMatch($event)"
+            accept=".csv, application/vnd.ms-excel, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
+          />
+          <el-button size="mini" @click="handleMatchData" style="marginLeft: 10px">预匹配</el-button>
           <el-button size="mini" @click="exportData">导出</el-button>
         </el-form-item>
         <el-form-item label="医院手术/操作名称:">
@@ -122,6 +130,32 @@ export default {
     });
   },
   methods: {
+    // 预匹配
+    handleMatchData() {
+      let inp = document.getElementById('upFileMatch');
+      inp.click();
+    },
+    // 导入数据
+    uploadFileMatch(e) {
+      let fileInfo = e.target.files[0];
+      e.preventDefault();
+      let formData = new FormData();
+      formData.append('file', fileInfo);
+      const header = {
+        headers: {
+          'Content-Type': 'multipart/form-data'
+        }
+      };
+      api.precOperationDataMatch(formData, header).then(res => {
+        if (res.status === 200) {
+          setTimeout(() => {
+            utils.downloadExportedData(res.data, '手术/操作关联数据(预匹配).xls');
+          }, 1500);
+        }
+      });
+      let inp = document.getElementById('upFileMatch');
+      inp.value = '';
+    },
     handleSizeChange(val) {
       this.pageSize = val;
       this.currentPage = utils.getCurrentPage(
@@ -314,12 +348,14 @@ export default {
         // }
       })
         .then(() => {
-          api.exportOperationRecord({ hospitalId: this.hospitalId }).then(res => {
-            if (res.status === 200) {
-              this.$message({ message: '导出成功', type: 'success' });
-              utils.downloadExportedData(res.data, '手术/操作关联数据.xls');
-            }
-          });
+          api
+            .exportOperationRecord({ hospitalId: this.hospitalId })
+            .then(res => {
+              if (res.status === 200) {
+                this.$message({ message: '导出成功', type: 'success' });
+                utils.downloadExportedData(res.data, '手术/操作关联数据.xls');
+              }
+            });
         })
         .catch(() => {
           // this.$message({ message: '导出失败', type: 'waring' });
@@ -432,6 +468,9 @@ export default {
 #upFile {
   display: none !important;
 }
+#upFileMatch {
+  display: none;
+}
 .el-message-box {
   /deep/.cancelBtn {
     background-color: #d7d7d7;

+ 38 - 1
src/components/cdssManage/pacs/Pacs.vue

@@ -1,6 +1,6 @@
 <template>
   <div>
-    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS" style="min-width: 1096px">
+    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS" style="min-width: 1196px">
       <el-form :inline="true" class="demo-form-inline">
         <el-form-item>
           <el-button type="text" class="downTemplate" @click="exportModule">导入模板下载</el-button>
@@ -12,6 +12,14 @@
             accept=".csv, application/vnd.ms-excel, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
           />
           <el-button size="mini" @click="importPage">{{uploadInfo}}</el-button>
+          <input
+            type="file"
+            name="uploadfile "
+            id="upFileMatch"
+            @change="uploadFileMatch($event)"
+            accept=".csv, application/vnd.ms-excel, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
+          />
+          <el-button size="mini" @click="handleMatchData" style="marginLeft: 10px">预匹配</el-button>
           <el-button size="mini" @click="exportData">导出</el-button>
         </el-form-item>
         <el-form-item label="医院检查项目:">
@@ -117,6 +125,32 @@ export default {
     });
   },
   methods: {
+    // 预匹配
+    handleMatchData() {
+      let inp = document.getElementById('upFileMatch');
+      inp.click();
+    },
+    // 导入数据
+    uploadFileMatch(e) {
+      let fileInfo = e.target.files[0];
+      e.preventDefault();
+      let formData = new FormData();
+      formData.append('file', fileInfo);
+      const header = {
+        headers: {
+          'Content-Type': 'multipart/form-data'
+        }
+      };
+      api.precPacsDataMatch(formData, header).then(res => {
+        if (res.status === 200) {
+          setTimeout(() => {
+            utils.downloadExportedData(res.data, '检查关联数据(预匹配).xls');
+          }, 1500);
+        }
+      });
+      let inp = document.getElementById('upFileMatch');
+      inp.value = '';
+    },
     handleSizeChange(val) {
       this.pageSize = val;
       this.currentPage = utils.getCurrentPage(
@@ -427,6 +461,9 @@ export default {
 #upFile {
   display: none !important;
 }
+#upFileMatch {
+  display: none;
+}
 .el-message-box {
   /deep/.cancelBtn {
     background-color: #d7d7d7;