Browse Source

Merge remote-tracking branch 'origin/test'

zhouna 4 năm trước cách đây
mục cha
commit
d07582f006

+ 21 - 0
src/api/cdss.js

@@ -379,4 +379,25 @@ export default {
       responseType: 'blob',
     });
   },
+  dataDeptVerify(param) {
+    return axios.post(urls.dataDeptVerify, param);
+  },
+  dataFusionVerify(param) {
+    return axios.post(urls.dataFusionVerify, param);
+  },
+  dataOperationVerify(param) {
+    return axios.post(urls.dataOperationVerify, param);
+  },
+  dataDrugVerify(param) {
+    return axios.post(urls.dataDrugVerify, param);
+  },
+  dataPacsVerify(param) {
+    return axios.post(urls.dataPacsVerify, param);
+  },
+  dataLisVerify(param) {
+    return axios.post(urls.dataLisVerify, param);
+  },
+  dataDiseaseVerify(param) {
+    return axios.post(urls.dataDiseaseVerify, param);
+  },
 };

+ 7 - 0
src/api/config.js

@@ -373,6 +373,7 @@ export default {
     'importDiseaseRecordCDSS': '/api/cdssman/tran/diseaseConfig/importExcel',   //诊断-数据导入
     'exportDiseaseModuleCDSS': '/api/cdssman/tran/diseaseConfig/exportExcelModule',   
     'precDiseaseDataMatch': '/api/cdssman/tran/diseaseConfig/precDataMatch',   
+    'dataDiseaseVerify': '/api/cdssman/tran/diseaseConfig/dataVerify',   
 
     'getLisPageCDSS': '/api/cdssman/tran/lisConfig/getPage',   //检验列表
     'lisIsExistRecordCDSS': '/api/cdssman/tran/lisConfig/isExistRecord',   //检验-映射关系是否已存在
@@ -382,6 +383,7 @@ export default {
     'importLisRecordCDSS': '/api/cdssman/tran/lisConfig/importExcel',   //检验-数据导入
     'exportLisModuleCDSS': '/api/cdssman/tran/lisConfig/exportExcelModule',   
     'precLisDataMatch': '/api/cdssman/tran/lisConfig/precDataMatch',   
+    'dataLisVerify': '/api/cdssman/tran/lisConfig/dataVerify',   
 
     'getpacsPageCDSS': '/api/cdssman/tran/pacsConfig/getPage',   //检查列表
     'pacsIsExistRecordCDSS': '/api/cdssman/tran/pacsConfig/isExistRecord',   //检查-映射关系是否已存在
@@ -391,6 +393,7 @@ export default {
     'importPacsRecordCDSS': '/api/cdssman/tran/pacsConfig/importExcel',   //检查-数据导入
     'exportPacsModuleCDSS': '/api/cdssman/tran/pacsConfig/exportExcelModule', 
     'precPacsDataMatch': '/api/cdssman/tran/pacsConfig/precDataMatch', 
+    'dataPacsVerify': '/api/cdssman/tran/pacsConfig/dataVerify', 
 
     'getDrugPageCDSS': '/api/cdssman/tran/drugConfig/getPage',   //药品列表
     'drugIsExistRecordCDSS': '/api/cdssman/tran/drugConfig/isExistRecord',   //药品-映射关系是否已存在
@@ -400,6 +403,7 @@ export default {
     'importDrugRecordCDSS': '/api/cdssman/tran/drugConfig/importExcel',   //药品-数据导入
     'exportDrugModuleCDSS': '/api/cdssman/tran/drugConfig/exportExcelModule',   
     'precDrugDataMatch': '/api/cdssman/tran/drugConfig/precDataMatch',  
+    'dataDrugVerify': '/api/cdssman/tran/drugConfig/dataVerify',  
 
     'getOperationPageCDSS': '/api/cdssman/tran/operationConfig/getPage',   //手术/操作列表
     'operationIsExistRecordCDSS': '/api/cdssman/tran/operationConfig/isExistRecord',   //手术/操作-映射关系是否已存在
@@ -409,6 +413,7 @@ export default {
     'importOperationRecordCDSS': '/api/cdssman/tran/operationConfig/importExcel',   //手术/操作-数据导入
     'exportOperationModuleCDSS': '/api/cdssman/tran/operationConfig/exportExcelModule', 
     'precOperationDataMatch': '/api/cdssman/tran/operationConfig/precDataMatch', 
+    'dataOperationVerify': '/api/cdssman/tran/operationConfig/dataVerify', 
 
     'getFusionPageCDSS': '/api/cdssman/tran/transfusionConfig/getPage',   //输血列表
     'fusionIsExistRecordCDSS': '/api/cdssman/tran/transfusionConfig/isExistRecord',   //输血-映射关系是否已存在
@@ -418,6 +423,7 @@ export default {
     'importFusionRecordCDSS': '/api/cdssman/tran/transfusionConfig/importExcel',   //输血-数据导入
     'exportFusionModuleCDSS': '/api/cdssman/tran/transfusionConfig/exportExcelModule',  
     'precFusionDataMatch': '/api/cdssman/tran/transfusionConfig/precDataMatch',  
+    'dataFusionVerify': '/api/cdssman/tran/transfusionConfig/dataVerify',  
 
     'getDeptPageCDSS': '/api/cdssman/tran/deptConfig/getPage',   //科室列表
     'deptIsExistRecordCDSS': '/api/cdssman/tran/deptConfig/isExistRecord',   //科室-映射关系是否已存在
@@ -427,6 +433,7 @@ export default {
     'importDeptRecordCDSS': '/api/cdssman/tran/deptConfig/importExcel',   //科室-数据导入
     'exportDeptModuleCDSS': '/api/cdssman/tran/deptConfig/exportExcelModule',   //科室-数据导入模板导出
     'precDeptDataMatch': '/api/cdssman/tran/deptConfig/precDataMatch',   
+    'dataDeptVerify': '/api/cdssman/tran/deptConfig/dataVerify',   
    
     // 'saveHospitalInfoRecordCDSS': '/api/cdssman/tran/hospitalInfo/saveRecord',   //医院信息——修改医院信息
 

+ 2 - 2
src/components/cdssManage/dept/AddDept.vue

@@ -22,13 +22,13 @@
           <el-row>
             <el-col :span="16">
               <el-form-item label="科室名称:" prop="hisName">
-                <el-input v-model="form.hisName" clearable style="minWidth: 240px"></el-input>
+                <el-input v-model.trim="form.hisName" clearable style="minWidth: 240px"></el-input>
               </el-form-item>
               <el-form-item label="科室名称预览:">
                 <span class="previewInfo" style="minWidth: 240px">{{form.hisName}}</span>
               </el-form-item>
               <el-form-item label="科室编码:" prop="hisCode">
-                <el-input v-model="form.hisCode" clearable style="minWidth: 240px"></el-input>
+                <el-input v-model.trim="form.hisCode" clearable style="minWidth: 240px"></el-input>
               </el-form-item>
             </el-col>
           </el-row>

+ 71 - 46
src/components/cdssManage/dept/DeptManage.vue

@@ -1,40 +1,34 @@
 <template>
   <div>
-    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS" style="min-width: 1196px">
+    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS">
       <el-form :inline="true" class="demo-form-inline">
         <el-form-item>
           <el-button type="text" class="downTemplate" @click="exportModule">导入模板下载</el-button>
-          <input
-            type="file"
-            name="uploadfile "
-            id="upFile"
-            @change="uploadFile($event)"
-
-          />
+          <input type="file" name="uploadfile " id="upFile" @change="uploadFile($event)" />
           <el-button size="mini" @click="importPage">{{uploadInfo}}</el-button>
-          <input
-            type="file"
-            name="uploadfile "
-            id="upFileMatch"
-            @change="uploadFileMatch($event)"
-
-          />
-          <el-button size="mini" @click="handleMatchData">预匹配</el-button>
+          <input type="file" name="uploadfile " id="upFileMatch" @change="uploadFileMatch($event)" />
+          <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="医院科室名称:">
-          <el-input size="mini" v-model="filter.hisName" placeholder="请输入" clearable></el-input>
-        </el-form-item>
-        <el-form-item label="标准科室名称:">
-          <el-input size="mini" v-model="filter.uniqueName" placeholder="请输入" clearable></el-input>
-        </el-form-item>
-        <el-form-item class="dododo">
-          <el-button size="mini" @click="filterDatas">检索</el-button>
-          <el-button size="mini" type="warning" @click="addRelation">添加关联</el-button>
-        </el-form-item>
       </el-form>
     </crumbs>
-    <div class="contents">
+    <div class="searchBar">
+      <div class="searchContent">
+        <el-form :inline="true" class="demo-form-inline">
+          <el-form-item label="医院科室名称:">
+            <el-input size="mini" v-model="filter.hisName" placeholder="请输入" clearable></el-input>
+          </el-form-item>
+          <el-form-item label="标准科室名称:">
+            <el-input size="mini" v-model="filter.uniqueName" placeholder="请输入" clearable></el-input>
+          </el-form-item>
+          <el-form-item class="dododo">
+            <el-button size="mini" @click="filterDatas">检索</el-button>
+            <el-button size="mini" type="warning" @click="addRelation">添加关联</el-button>
+          </el-form-item>
+        </el-form>
+      </div>
+    </div>
+    <div class="contentsOther">
       <el-table :data="list" border style="width: 100%">
         <el-table-column :resizable="false" type="index" :index="indexMethod" label="编号" width="80"></el-table-column>
         <el-table-column :resizable="false" prop="gmtModified" label="操作时间" width="180"></el-table-column>
@@ -145,13 +139,36 @@ export default {
           'Content-Type': 'multipart/form-data'
         }
       };
-      api.precDeptDataMatch(formData, header).then(res => {
-        if (res.status === 200) {
-          setTimeout(() => {
-            utils.downloadExportedData(res.data, '科室关联数据(预匹配).xls');
-          }, 1500);
+      const loading = this.$loading({
+        lock: true,
+        text: '预匹配中...',
+        spinner: 'el-icon-loading',
+        background: 'rgba(0, 0, 0, 0.7)'
+      });
+      api.dataDeptVerify(formData, header).then(res => {
+        if (res.data.code === '00020007') {
+          loading.close();
+          this.$alert(`${res.data.msg}`, '提示', {
+            confirmButtonText: '确定',
+            type: 'warning'
+          })
+            .then(() => {})
+            .catch(() => {});
+        } else {
+          api.precDeptDataMatch(formData, header).then(res => {
+            setTimeout(() => {
+              loading.close();
+            }, 800);
+            if (res.status === 200) {
+              utils.downloadExportedData(
+                res.data,
+                '科室关联数据(预匹配).xls'
+              );
+            }
+          });
         }
       });
+
       let inp = document.getElementById('upFileMatch');
       inp.value = '';
     },
@@ -390,14 +407,9 @@ export default {
       };
       this.uploadInfo = '导入中...';
       api.importDeptRecord(formData, header).then(res => {
-        // console.log('导入文件结果', '===================', res);
         if (res.data.code === '00000001') {
           this.$alert(`数据存在异常,导入失败,请修改后再试`, '提示', {
             confirmButtonText: '确定',
-            // cancelButtonText: '取消',
-            // cancelButtonClass: 'cancelSure',
-            // confirmButtonClass: 'sure',
-            // customClass: 'exportConfirm',
             type: 'warning'
           })
             .then(() => {})
@@ -409,11 +421,7 @@ export default {
         } else if (res.data === '' && res.status === 200) {
           this.$alert(`导入成功`, '提示', {
             confirmButtonText: '确定',
-            // cancelButtonText: '取消',
-            // cancelButtonClass: 'cancelSure',
-            // confirmButtonClass: 'sure',
-            // customClass: 'exportConfirm',
-            type: 'warning'
+            type: 'success'
           })
             .then(() => {})
             .catch(() => {});
@@ -424,10 +432,6 @@ export default {
         } else {
           this.$alert(`${res.data.msg}`, '提示', {
             confirmButtonText: '确定',
-            // cancelButtonText: '取消',
-            // cancelButtonClass: 'cancelSure',
-            // confirmButtonClass: 'sure',
-            // customClass: 'exportConfirm',
             type: 'warning'
           })
             .then(() => {})
@@ -503,4 +507,25 @@ export default {
     display: none;
   }
 }
+.searchBar {
+  min-width: 980px;
+  height: 60px;
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  background-color: #dee2ea;
+  z-index: 9999;
+  padding: 40px 20px 0;
+  .searchContent {
+    height: 40px;
+    flex: 1;
+    background-color: #fff;
+    display: flex;
+    justify-content: flex-end;
+    float: right;
+  }
+}
+.contentsOther {
+  padding: 0 20px;
+}
 </style>

+ 1 - 1
src/components/cdssManage/disease/AddDisease.vue

@@ -22,7 +22,7 @@
           <el-row>
             <el-col :span="16">
               <el-form-item label="诊断名称:" prop="hisName">
-                <el-input v-model="form.hisName" clearable style="minWidth: 240px"></el-input>
+                <el-input v-model.trim="form.hisName" clearable style="minWidth: 240px"></el-input>
               </el-form-item>
               <el-form-item label="诊断名称预览:">
                 <span class="previewInfo" style="minWidth: 240px">{{form.hisName}}</span>

+ 70 - 32
src/components/cdssManage/disease/Disease.vue

@@ -1,40 +1,34 @@
 <template>
   <div>
-    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS" style="min-width: 1196px">
+    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS">
       <el-form :inline="true" class="demo-form-inline">
         <el-form-item>
           <el-button type="text" class="downTemplate" @click="exportModule">导入模板下载</el-button>
-          <input
-            type="file"
-            name="uploadfile "
-            id="upFile"
-            @change="uploadFile($event)"
-
-          />
+          <input type="file" name="uploadfile " id="upFile" @change="uploadFile($event)" />
           <el-button size="mini" @click="importPage">{{uploadInfo}}</el-button>
-          <input
-            type="file"
-            name="uploadfile "
-            id="upFileMatch"
-            @change="uploadFileMatch($event)"
-
-          />
+          <input type="file" name="uploadfile " id="upFileMatch" @change="uploadFileMatch($event)" />
           <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="医院诊断名称:">
-          <el-input size="mini" v-model="filter.hisName" placeholder="请输入" clearable></el-input>
-        </el-form-item>
-        <el-form-item label="标准诊断名称:">
-          <el-input size="mini" v-model="filter.uniqueName" placeholder="请输入" clearable></el-input>
-        </el-form-item>
-        <el-form-item class="dododo">
-          <el-button size="mini" @click="filterDatas">检索</el-button>
-          <el-button size="mini" type="warning" @click="addRelation">添加关联</el-button>
-        </el-form-item>
       </el-form>
     </crumbs>
-    <div class="contents">
+    <div class="searchBar">
+      <div class="searchContent">
+        <el-form :inline="true" class="demo-form-inline">
+          <el-form-item label="医院诊断名称:">
+            <el-input size="mini" v-model="filter.hisName" placeholder="请输入" clearable></el-input>
+          </el-form-item>
+          <el-form-item label="标准诊断名称:">
+            <el-input size="mini" v-model="filter.uniqueName" placeholder="请输入" clearable></el-input>
+          </el-form-item>
+          <el-form-item class="dododo">
+            <el-button size="mini" @click="filterDatas">检索</el-button>
+            <el-button size="mini" type="warning" @click="addRelation">添加关联</el-button>
+          </el-form-item>
+        </el-form>
+      </div>
+    </div>
+    <div class="contentsOther">
       <el-table :data="list" border style="width: 100%">
         <el-table-column :resizable="false" type="index" :index="indexMethod" label="编号" width="80"></el-table-column>
         <el-table-column :resizable="false" prop="gmtModified" label="操作时间" width="180"></el-table-column>
@@ -142,13 +136,36 @@ export default {
           'Content-Type': 'multipart/form-data'
         }
       };
-      api.precDiseaseDataMatch(formData, header).then(res => {
-        if (res.status === 200) {
-          setTimeout(() => {
-            utils.downloadExportedData(res.data, '诊断关联数据(预匹配).xls');
-          }, 1500);
+      const loading = this.$loading({
+        lock: true,
+        text: '预匹配中...',
+        spinner: 'el-icon-loading',
+        background: 'rgba(0, 0, 0, 0.7)'
+      });
+      api.dataDiseaseVerify(formData, header).then(res => {
+        if (res.data.code === '00020007') {
+          loading.close();
+          this.$alert(`${res.data.msg}`, '提示', {
+            confirmButtonText: '确定',
+            type: 'warning'
+          })
+            .then(() => {})
+            .catch(() => {});
+        } else {
+          api.precDiseaseDataMatch(formData, header).then(res => {
+            setTimeout(() => {
+              loading.close();
+            }, 800);
+            if (res.status === 200) {
+              utils.downloadExportedData(
+                res.data,
+                '诊断关联数据(预匹配).xls'
+              );
+            }
+          });
         }
       });
+
       let inp = document.getElementById('upFileMatch');
       inp.value = '';
     },
@@ -393,7 +410,7 @@ export default {
             // cancelButtonClass: 'cancelSure',
             // confirmButtonClass: 'sure',
             // customClass: 'exportConfirm',
-            type: 'warning'
+            type: 'success'
           })
             .then(() => {})
             .catch(() => {});
@@ -479,4 +496,25 @@ export default {
     border-bottom: 1px solid #dcdfe6;
   }
 }
+.searchBar {
+  min-width: 980px;
+  height: 60px;
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  background-color: #dee2ea;
+  z-index: 9999;
+  padding: 40px 20px 0;
+  .searchContent {
+    height: 40px;
+    flex: 1;
+    background-color: #fff;
+    display: flex;
+    justify-content: flex-end;
+    float: right;
+  }
+}
+.contentsOther {
+  padding: 0 20px;
+}
 </style>

+ 1 - 1
src/components/cdssManage/drug/AddDrug.vue

@@ -22,7 +22,7 @@
           <el-row>
             <el-col :span="16">
               <el-form-item label="药品名称:" prop="hisName">
-                <el-input v-model="form.hisName" clearable style="minWidth: 240px"></el-input>
+                <el-input v-model.trim="form.hisName" clearable style="minWidth: 240px"></el-input>
               </el-form-item>
               <el-form-item label="药品名称预览:">
                 <span class="previewInfo" style="minWidth: 240px">{{form.hisName}}</span>

+ 70 - 32
src/components/cdssManage/drug/DrugManage.vue

@@ -1,40 +1,34 @@
 <template>
   <div>
-    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS" style="min-width: 1196px">
+    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS">
       <el-form :inline="true" class="demo-form-inline">
         <el-form-item>
           <el-button type="text" class="downTemplate" @click="exportModule">导入模板下载</el-button>
-          <input
-            type="file"
-            name="uploadfile "
-            id="upFile"
-            @change="uploadFile($event)"
-
-          />
+          <input type="file" name="uploadfile " id="upFile" @change="uploadFile($event)" />
           <el-button size="mini" @click="importPage">{{uploadInfo}}</el-button>
-          <input
-            type="file"
-            name="uploadfile "
-            id="upFileMatch"
-            @change="uploadFileMatch($event)"
-
-          />
+          <input type="file" name="uploadfile " id="upFileMatch" @change="uploadFileMatch($event)" />
           <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="医院药品名称:">
-          <el-input size="mini" v-model="filter.hisName" placeholder="请输入" clearable></el-input>
-        </el-form-item>
-        <el-form-item label="标准药品名称:">
-          <el-input size="mini" v-model="filter.uniqueName" placeholder="请输入" clearable></el-input>
-        </el-form-item>
-        <el-form-item class="dododo">
-          <el-button size="mini" @click="filterDatas">检索</el-button>
-          <el-button size="mini" type="warning" @click="addRelation">添加关联</el-button>
-        </el-form-item>
       </el-form>
     </crumbs>
-    <div class="contents">
+    <div class="searchBar">
+      <div class="searchContent">
+        <el-form :inline="true" class="demo-form-inline">
+          <el-form-item label="医院药品名称:">
+            <el-input size="mini" v-model="filter.hisName" placeholder="请输入" clearable></el-input>
+          </el-form-item>
+          <el-form-item label="标准药品名称:">
+            <el-input size="mini" v-model="filter.uniqueName" placeholder="请输入" clearable></el-input>
+          </el-form-item>
+          <el-form-item class="dododo">
+            <el-button size="mini" @click="filterDatas">检索</el-button>
+            <el-button size="mini" type="warning" @click="addRelation">添加关联</el-button>
+          </el-form-item>
+        </el-form>
+      </div>
+    </div>
+    <div class="contentsOther">
       <el-table :data="list" border style="width: 100%">
         <el-table-column :resizable="false" type="index" :index="indexMethod" label="编号" width="80"></el-table-column>
         <el-table-column :resizable="false" prop="gmtModified" label="操作时间" width="180"></el-table-column>
@@ -142,13 +136,36 @@ export default {
           'Content-Type': 'multipart/form-data'
         }
       };
-      api.precDrugDataMatch(formData, header).then(res => {
-        if (res.status === 200) {
-          setTimeout(() => {
-            utils.downloadExportedData(res.data, '药品关联数据(预匹配).xls');
-          }, 1500);
+      const loading = this.$loading({
+        lock: true,
+        text: '预匹配中...',
+        spinner: 'el-icon-loading',
+        background: 'rgba(0, 0, 0, 0.7)'
+      });
+      api.dataDrugVerify(formData, header).then(res => {
+        if (res.data.code === '00020007') {
+          loading.close();
+          this.$alert(`${res.data.msg}`, '提示', {
+            confirmButtonText: '确定',
+            type: 'warning'
+          })
+            .then(() => {})
+            .catch(() => {});
+        } else {
+          api.precDrugDataMatch(formData, header).then(res => {
+            setTimeout(() => {
+              loading.close();
+            }, 800);
+            if (res.status === 200) {
+              utils.downloadExportedData(
+                res.data,
+                '药品关联数据(预匹配).xls'
+              );
+            }
+          });
         }
       });
+
       let inp = document.getElementById('upFileMatch');
       inp.value = '';
     },
@@ -410,7 +427,7 @@ export default {
             // cancelButtonClass: 'cancelSure',
             // confirmButtonClass: 'sure',
             // customClass: 'exportConfirm',
-            type: 'warning'
+            type: 'success'
           })
             .then(() => {})
             .catch(() => {});
@@ -492,4 +509,25 @@ export default {
     border-bottom: 1px solid #dcdfe6;
   }
 }
+.searchBar {
+  min-width: 980px;
+  height: 60px;
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  background-color: #dee2ea;
+  z-index: 9999;
+  padding: 40px 20px 0;
+  .searchContent {
+    height: 40px;
+    flex: 1;
+    background-color: #fff;
+    display: flex;
+    justify-content: flex-end;
+    float: right;
+  }
+}
+.contentsOther {
+  padding: 0 20px;
+}
 </style>

+ 1 - 1
src/components/cdssManage/fusion/AddFusion.vue

@@ -22,7 +22,7 @@
           <el-row>
             <el-col :span="16">
               <el-form-item label="输血类型:" prop="hisName">
-                <el-input v-model="form.hisName" clearable style="minWidth: 240px"></el-input>
+                <el-input v-model.trim="form.hisName" clearable style="minWidth: 240px"></el-input>
               </el-form-item>
               <el-form-item label="输血类型预览:">
                 <span class="previewInfo" style="minWidth: 240px">{{form.hisName}}</span>

+ 70 - 32
src/components/cdssManage/fusion/Fusion.vue

@@ -1,40 +1,34 @@
 <template>
   <div>
-    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS" style="min-width:1196px">
+    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS">
       <el-form :inline="true" class="demo-form-inline">
         <el-form-item>
           <el-button type="text" class="downTemplate" @click="exportModule">导入模板下载</el-button>
-          <input
-            type="file"
-            name="uploadfile "
-            id="upFile"
-            @change="uploadFile($event)"
-
-          />
+          <input type="file" name="uploadfile " id="upFile" @change="uploadFile($event)" />
           <el-button size="mini" @click="importPage">{{uploadInfo}}</el-button>
-          <input
-            type="file"
-            name="uploadfile "
-            id="upFileMatch"
-            @change="uploadFileMatch($event)"
-
-          />
+          <input type="file" name="uploadfile " id="upFileMatch" @change="uploadFileMatch($event)" />
           <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="医院输血类型:">
-          <el-input size="mini" v-model="filter.hisName" placeholder="请输入" clearable></el-input>
-        </el-form-item>
-        <el-form-item label="标准输血术语:">
-          <el-input size="mini" v-model="filter.uniqueName" placeholder="请输入" clearable></el-input>
-        </el-form-item>
-        <el-form-item class="dododo">
-          <el-button size="mini" @click="filterDatas">检索</el-button>
-          <el-button size="mini" type="warning" @click="addRelation">添加关联</el-button>
-        </el-form-item>
       </el-form>
     </crumbs>
-    <div class="contents">
+    <div class="searchBar">
+      <div class="searchContent">
+        <el-form :inline="true" class="demo-form-inline">
+          <el-form-item label="医院输血类型:">
+            <el-input size="mini" v-model="filter.hisName" placeholder="请输入" clearable></el-input>
+          </el-form-item>
+          <el-form-item label="标准输血类型:">
+            <el-input size="mini" v-model="filter.uniqueName" placeholder="请输入" clearable></el-input>
+          </el-form-item>
+          <el-form-item class="dododo">
+            <el-button size="mini" @click="filterDatas">检索</el-button>
+            <el-button size="mini" type="warning" @click="addRelation">添加关联</el-button>
+          </el-form-item>
+        </el-form>
+      </div>
+    </div>
+    <div class="contentsOther">
       <el-table :data="list" border style="width: 100%">
         <el-table-column :resizable="false" type="index" :index="indexMethod" label="编号" width="80"></el-table-column>
         <el-table-column :resizable="false" prop="gmtModified" label="操作时间" width="180"></el-table-column>
@@ -141,13 +135,36 @@ export default {
           'Content-Type': 'multipart/form-data'
         }
       };
-      api.precFusionDataMatch(formData, header).then(res => {
-        if (res.status === 200) {
-          setTimeout(() => {
-            utils.downloadExportedData(res.data, '输血关联数据(预匹配).xls');
-          }, 1500);
+      const loading = this.$loading({
+        lock: true,
+        text: '预匹配中...',
+        spinner: 'el-icon-loading',
+        background: 'rgba(0, 0, 0, 0.7)'
+      });
+      api.dataFusionVerify(formData, header).then(res => {
+        if (res.data.code === '00020007') {
+          loading.close();
+          this.$alert(`${res.data.msg}`, '提示', {
+            confirmButtonText: '确定',
+            type: 'warning'
+          })
+            .then(() => {})
+            .catch(() => {});
+        } else {
+          api.precFusionDataMatch(formData, header).then(res => {
+            setTimeout(() => {
+              loading.close();
+            }, 800);
+            if (res.status === 200) {
+              utils.downloadExportedData(
+                res.data,
+                '输血关联数据(预匹配).xls'
+              );
+            }
+          });
         }
       });
+
       let inp = document.getElementById('upFileMatch');
       inp.value = '';
     },
@@ -406,7 +423,7 @@ export default {
             // cancelButtonClass: 'cancelSure',
             // confirmButtonClass: 'sure',
             // customClass: 'exportConfirm',
-            type: 'warning'
+            type: 'success'
           })
             .then(() => {})
             .catch(() => {});
@@ -488,4 +505,25 @@ export default {
     border-bottom: 1px solid #dcdfe6;
   }
 }
+.searchBar {
+  min-width: 980px;
+  height: 60px;
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  background-color: #dee2ea;
+  z-index: 9999;
+  padding: 40px 20px 0;
+  .searchContent {
+    height: 40px;
+    flex: 1;
+    background-color: #fff;
+    display: flex;
+    justify-content: flex-end;
+    float: right;
+  }
+}
+.contentsOther {
+  padding: 0 20px;
+}
 </style>

+ 2 - 2
src/components/cdssManage/lis/AddLis.vue

@@ -22,7 +22,7 @@
           <el-row>
             <el-col :span="16">
               <el-form-item label="检验套餐:" prop="hisName">
-                <el-input v-model="form.hisName" clearable style="minWidth: 240px"></el-input>
+                <el-input v-model.trim="form.hisName" clearable style="minWidth: 240px"></el-input>
               </el-form-item>
               <el-form-item label="检验套餐预览:" style="marginTop: 24px">
                 <span class="previewInfo1" style="minWidth: 240px">{{form.hisName}}</span>
@@ -32,7 +32,7 @@
           <el-row>
             <el-col :span="16">
               <el-form-item label="检验细项:" prop="hisDetailName">
-                <el-input v-model="form.hisDetailName" clearable style="minWidth: 240px"></el-input>
+                <el-input v-model.trim="form.hisDetailName" clearable style="minWidth: 240px"></el-input>
               </el-form-item>
               <el-form-item label="检验细项预览:">
                 <span class="previewInfo1" style="minWidth: 240px">{{form.hisDetailName}}</span>

+ 73 - 35
src/components/cdssManage/lis/Lis.vue

@@ -1,43 +1,37 @@
 <template>
   <div>
-    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS" style="min-width: 1340px">
+    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS">
       <el-form :inline="true" class="demo-form-inline">
         <el-form-item>
           <el-button type="text" class="downTemplate" @click="exportModule">导入模板下载</el-button>
-          <input
-            type="file"
-            name="uploadfile "
-            id="upFile"
-            @change="uploadFile($event)"
-
-          />
+          <input type="file" name="uploadfile " id="upFile" @change="uploadFile($event)" />
           <el-button size="mini" @click="importPage">{{uploadInfo}}</el-button>
-          <input
-            type="file"
-            name="uploadfile "
-            id="upFileMatch"
-            @change="uploadFileMatch($event)"
-
-          />
+          <input type="file" name="uploadfile " id="upFileMatch" @change="uploadFileMatch($event)" />
           <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="检验套餐:">
-          <el-input size="mini" v-model="filter.hisName" placeholder="请输入" clearable></el-input>
-        </el-form-item>
-        <el-form-item label="检验细项:">
-          <el-input size="mini" v-model="filter.hisDetailName" placeholder="请输入" clearable></el-input>
-        </el-form-item>
-        <el-form-item label="标准检验项:">
-          <el-input size="mini" v-model="filter.uniqueName" placeholder="请输入" clearable></el-input>
-        </el-form-item>
-        <el-form-item class="dododo">
-          <el-button size="mini" @click="filterDatas">检索</el-button>
-          <el-button size="mini" type="warning" @click="addRelation">添加关联</el-button>
-        </el-form-item>
       </el-form>
     </crumbs>
-    <div class="contents">
+    <div class="searchBar">
+      <div class="searchContent">
+        <el-form :inline="true" class="demo-form-inline">
+          <el-form-item label="检验套餐:">
+            <el-input size="mini" v-model="filter.hisName" placeholder="请输入" clearable></el-input>
+          </el-form-item>
+          <el-form-item label="检验细项:">
+            <el-input size="mini" v-model="filter.hisDetailName" placeholder="请输入" clearable></el-input>
+          </el-form-item>
+          <el-form-item label="标准检验项:">
+            <el-input size="mini" v-model="filter.uniqueName" placeholder="请输入" clearable></el-input>
+          </el-form-item>
+          <el-form-item class="dododo">
+            <el-button size="mini" @click="filterDatas">检索</el-button>
+            <el-button size="mini" type="warning" @click="addRelation">添加关联</el-button>
+          </el-form-item>
+        </el-form>
+      </div>
+    </div>
+    <div class="contentsOther">
       <el-table :data="list" border style="width: 100%">
         <el-table-column :resizable="false" type="index" :index="indexMethod" label="编号" width="80"></el-table-column>
         <el-table-column :resizable="false" prop="gmtModified" label="操作时间" width="180"></el-table-column>
@@ -146,13 +140,36 @@ export default {
           'Content-Type': 'multipart/form-data'
         }
       };
-      api.precLisDataMatch(formData, header).then(res => {
-        if (res.status === 200) {
-          setTimeout(() => {
-            utils.downloadExportedData(res.data, '检验关联数据(预匹配).xls');
-          }, 1500);
+      const loading = this.$loading({
+        lock: true,
+        text: '预匹配中...',
+        spinner: 'el-icon-loading',
+        background: 'rgba(0, 0, 0, 0.7)'
+      });
+      api.dataLisVerify(formData, header).then(res => {
+        if (res.data.code === '00020007') {
+          loading.close();
+          this.$alert(`${res.data.msg}`, '提示', {
+            confirmButtonText: '确定',
+            type: 'warning'
+          })
+            .then(() => {})
+            .catch(() => {});
+        } else {
+          api.precLisDataMatch(formData, header).then(res => {
+            setTimeout(() => {
+              loading.close();
+            }, 800);
+            if (res.status === 200) {
+              utils.downloadExportedData(
+                res.data,
+                '检验关联数据(预匹配).xls'
+              );
+            }
+          });
         }
       });
+
       let inp = document.getElementById('upFileMatch');
       inp.value = '';
     },
@@ -413,7 +430,7 @@ export default {
             // cancelButtonClass: 'cancelSure',
             // confirmButtonClass: 'sure',
             // customClass: 'exportConfirm',
-            type: 'warning'
+            type: 'success'
           })
             .then(() => {})
             .catch(() => {});
@@ -495,4 +512,25 @@ export default {
     border-bottom: 1px solid #dcdfe6;
   }
 }
+.searchBar {
+  min-width: 980px;
+  height: 60px;
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  background-color: #dee2ea;
+  z-index: 9999;
+  padding: 40px 20px 0;
+  .searchContent {
+    height: 40px;
+    flex: 1;
+    background-color: #fff;
+    display: flex;
+    justify-content: flex-end;
+    float: right;
+  }
+}
+.contentsOther {
+  padding: 0 20px;
+}
 </style>

+ 1 - 1
src/components/cdssManage/operation/AddOperation.vue

@@ -22,7 +22,7 @@
           <el-row>
             <el-col :span="20">
               <el-form-item label="手术/操作名称:" prop="hisName">
-                <el-input v-model="form.hisName" clearable style="minWidth: 240px"></el-input>
+                <el-input v-model.trim="form.hisName" clearable style="minWidth: 240px"></el-input>
               </el-form-item>
               <el-form-item label="手术/操作名称预览:">
                 <span class="previewInfo" style="minWidth: 240px">{{form.hisName}}</span>

+ 70 - 32
src/components/cdssManage/operation/Operation.vue

@@ -1,40 +1,34 @@
 <template>
   <div>
-    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS" style="min-width: 1280px">
+    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS">
       <el-form :inline="true" class="demo-form-inline">
         <el-form-item>
           <el-button type="text" class="downTemplate" @click="exportModule">导入模板下载</el-button>
-          <input
-            type="file"
-            name="uploadfile "
-            id="upFile"
-            @change="uploadFile($event)"
-
-          />
+          <input type="file" name="uploadfile " id="upFile" @change="uploadFile($event)" />
           <el-button size="mini" @click="importPage">{{uploadInfo}}</el-button>
-          <input
-            type="file"
-            name="uploadfile "
-            id="upFileMatch"
-            @change="uploadFileMatch($event)"
-
-          />
+          <input type="file" name="uploadfile " id="upFileMatch" @change="uploadFileMatch($event)" />
           <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="医院手术/操作名称:">
-          <el-input size="mini" v-model="filter.hisName" placeholder="请输入" clearable></el-input>
-        </el-form-item>
-        <el-form-item label="标准手术/操作名称:">
-          <el-input size="mini" v-model="filter.uniqueName" placeholder="请输入" clearable></el-input>
-        </el-form-item>
-        <el-form-item class="dododo">
-          <el-button size="mini" @click="filterDatas">检索</el-button>
-          <el-button size="mini" type="warning" @click="addRelation">添加关联</el-button>
-        </el-form-item>
       </el-form>
     </crumbs>
-    <div class="contents">
+    <div class="searchBar">
+      <div class="searchContent">
+        <el-form :inline="true" class="demo-form-inline">
+          <el-form-item label="医院手术/操作名称:">
+            <el-input size="mini" v-model="filter.hisName" placeholder="请输入" clearable></el-input>
+          </el-form-item>
+          <el-form-item label="标准手术/操作名称:">
+            <el-input size="mini" v-model="filter.uniqueName" placeholder="请输入" clearable></el-input>
+          </el-form-item>
+          <el-form-item class="dododo">
+            <el-button size="mini" @click="filterDatas">检索</el-button>
+            <el-button size="mini" type="warning" @click="addRelation">添加关联</el-button>
+          </el-form-item>
+        </el-form>
+      </div>
+    </div>
+    <div class="contentsOther">
       <el-table :data="list" border style="width: 100%">
         <el-table-column :resizable="false" type="index" :index="indexMethod" label="编号" width="80"></el-table-column>
         <el-table-column :resizable="false" prop="gmtModified" label="操作时间" width="180"></el-table-column>
@@ -146,13 +140,36 @@ export default {
           'Content-Type': 'multipart/form-data'
         }
       };
-      api.precOperationDataMatch(formData, header).then(res => {
-        if (res.status === 200) {
-          setTimeout(() => {
-            utils.downloadExportedData(res.data, '手术/操作关联数据(预匹配).xls');
-          }, 1500);
+      const loading = this.$loading({
+        lock: true,
+        text: '预匹配中...',
+        spinner: 'el-icon-loading',
+        background: 'rgba(0, 0, 0, 0.7)'
+      });
+      api.dataOperationVerify(formData, header).then(res => {
+        if (res.data.code === '00020007') {
+          loading.close();
+          this.$alert(`${res.data.msg}`, '提示', {
+            confirmButtonText: '确定',
+            type: 'warning'
+          })
+            .then(() => {})
+            .catch(() => {});
+        } else {
+          api.precOperationDataMatch(formData, header).then(res => {
+            setTimeout(() => {
+              loading.close();
+            }, 800);
+            if (res.status === 200) {
+              utils.downloadExportedData(
+                res.data,
+                '手术/操作关联数据(预匹配).xls'
+              );
+            }
+          });
         }
       });
+
       let inp = document.getElementById('upFileMatch');
       inp.value = '';
     },
@@ -414,7 +431,7 @@ export default {
             // cancelButtonClass: 'cancelSure',
             // confirmButtonClass: 'sure',
             // customClass: 'exportConfirm',
-            type: 'warning'
+            type: 'success'
           })
             .then(() => {})
             .catch(() => {});
@@ -496,4 +513,25 @@ export default {
     border-bottom: 1px solid #dcdfe6;
   }
 }
+.searchBar {
+  min-width: 980px;
+  height: 60px;
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  background-color: #dee2ea;
+  z-index: 9999;
+  padding: 40px 20px 0;
+  .searchContent {
+    height: 40px;
+    flex: 1;
+    background-color: #fff;
+    display: flex;
+    justify-content: flex-end;
+    float: right;
+  }
+}
+.contentsOther {
+  padding: 0 20px;
+}
 </style>

+ 1 - 1
src/components/cdssManage/pacs/AddPacs.vue

@@ -22,7 +22,7 @@
           <el-row>
             <el-col :span="16">
               <el-form-item label="检查项目:" prop="hisName">
-                <el-input v-model="form.hisName" clearable style="minWidth: 240px"></el-input>
+                <el-input v-model.trim="form.hisName" clearable style="minWidth: 240px"></el-input>
               </el-form-item>
               <el-form-item label="检查项目预览:">
                 <span class="previewInfo" style="minWidth: 240px">{{form.hisName}}</span>

+ 70 - 32
src/components/cdssManage/pacs/Pacs.vue

@@ -1,40 +1,34 @@
 <template>
   <div>
-    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS" style="min-width: 1196px">
+    <crumbs :title="title + hospitaiName" linkTo="MedicalTermCDSS">
       <el-form :inline="true" class="demo-form-inline">
         <el-form-item>
           <el-button type="text" class="downTemplate" @click="exportModule">导入模板下载</el-button>
-          <input
-            type="file"
-            name="uploadfile "
-            id="upFile"
-            @change="uploadFile($event)"
-
-          />
+          <input type="file" name="uploadfile " id="upFile" @change="uploadFile($event)" />
           <el-button size="mini" @click="importPage">{{uploadInfo}}</el-button>
-          <input
-            type="file"
-            name="uploadfile "
-            id="upFileMatch"
-            @change="uploadFileMatch($event)"
-
-          />
+          <input type="file" name="uploadfile " id="upFileMatch" @change="uploadFileMatch($event)" />
           <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="医院检查项目:">
-          <el-input size="mini" v-model="filter.hisName" placeholder="请输入" clearable></el-input>
-        </el-form-item>
-        <el-form-item label="标准检查项目:">
-          <el-input size="mini" v-model="filter.uniqueName" placeholder="请输入" clearable></el-input>
-        </el-form-item>
-        <el-form-item class="dododo">
-          <el-button size="mini" @click="filterDatas">检索</el-button>
-          <el-button size="mini" type="warning" @click="addRelation">添加关联</el-button>
-        </el-form-item>
       </el-form>
     </crumbs>
-    <div class="contents">
+    <div class="searchBar">
+      <div class="searchContent">
+        <el-form :inline="true" class="demo-form-inline">
+          <el-form-item label="医院检查项目:">
+            <el-input size="mini" v-model="filter.hisName" placeholder="请输入" clearable></el-input>
+          </el-form-item>
+          <el-form-item label="标准检查项目:">
+            <el-input size="mini" v-model="filter.uniqueName" placeholder="请输入" clearable></el-input>
+          </el-form-item>
+          <el-form-item class="dododo">
+            <el-button size="mini" @click="filterDatas">检索</el-button>
+            <el-button size="mini" type="warning" @click="addRelation">添加关联</el-button>
+          </el-form-item>
+        </el-form>
+      </div>
+    </div>
+    <div class="contentsOther">
       <el-table :data="list" border style="width: 100%">
         <el-table-column :resizable="false" type="index" :index="indexMethod" label="编号" width="80"></el-table-column>
         <el-table-column :resizable="false" prop="gmtModified" label="操作时间" width="180"></el-table-column>
@@ -141,13 +135,36 @@ export default {
           'Content-Type': 'multipart/form-data'
         }
       };
-      api.precPacsDataMatch(formData, header).then(res => {
-        if (res.status === 200) {
-          setTimeout(() => {
-            utils.downloadExportedData(res.data, '检查关联数据(预匹配).xls');
-          }, 1500);
+      const loading = this.$loading({
+        lock: true,
+        text: '预匹配中...',
+        spinner: 'el-icon-loading',
+        background: 'rgba(0, 0, 0, 0.7)'
+      });
+      api.dataPacsVerify(formData, header).then(res => {
+        if (res.data.code === '00020007') {
+          loading.close();
+          this.$alert(`${res.data.msg}`, '提示', {
+            confirmButtonText: '确定',
+            type: 'warning'
+          })
+            .then(() => {})
+            .catch(() => {});
+        } else {
+          api.precPacsDataMatch(formData, header).then(res => {
+            setTimeout(() => {
+              loading.close();
+            }, 800);
+            if (res.status === 200) {
+              utils.downloadExportedData(
+                res.data,
+                '检查关联数据(预匹配).xls'
+              );
+            }
+          });
         }
       });
+
       let inp = document.getElementById('upFileMatch');
       inp.value = '';
     },
@@ -407,7 +424,7 @@ export default {
             // cancelButtonClass: 'cancelSure',
             // confirmButtonClass: 'sure',
             // customClass: 'exportConfirm',
-            type: 'warning'
+            type: 'success'
           })
             .then(() => {})
             .catch(() => {});
@@ -489,4 +506,25 @@ export default {
     border-bottom: 1px solid #dcdfe6;
   }
 }
+.searchBar {
+  min-width: 980px;
+  height: 60px;
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  background-color: #dee2ea;
+  z-index: 9999;
+  padding: 40px 20px 0;
+  .searchContent {
+    height: 40px;
+    flex: 1;
+    background-color: #fff;
+    display: flex;
+    justify-content: flex-end;
+    float: right;
+  }
+}
+.contentsOther {
+  padding: 0 20px;
+}
 </style>

+ 11 - 9
src/components/common/Menu.vue

@@ -44,16 +44,18 @@ export default {
   },
   created() {
     // console.log(this.$route,'this.$route');
-    // this.defaultActive = this.$route.fullPath;
-
-    let menupath = localStorage.getItem('menuPath');
     this.defaultActive = this.$route.fullPath;
-    if (this.$route.fullPath != menupath) {
-      this.defaultActive = menupath;
-      this.$router.push({ path: menupath });
-    } else {
-      this.defaultActive = this.$route.fullPath;
-    }
+
+    // let menupath = localStorage.getItem('menuPath');
+    // this.defaultActive = this.$route.fullPath;
+    // console.log(this.defaultActive,'defaultActive');
+    // console.log(menupath,'menupath');
+    // if (this.$route.fullPath != menupath) {
+    //   this.defaultActive = menupath;
+    //   this.$router.push({ path: menupath });
+    // } else {
+    //   this.defaultActive = this.$route.fullPath;
+    // }
   },
   methods: {
     handleSelect(key, keyPath) {