yuwandanmian 1 年之前
父节点
当前提交
9a546c9ef9

+ 8 - 2
src/views/data/frontHome/components/SearchBox2.vue

@@ -19,7 +19,7 @@
       </el-form-item>
       <el-form-item label="出院科室">
         <el-select v-model="data.dep_id" filterable clearable placeholder="请选择">
-          <el-option v-for="item of selectData.level" :key="item" :label="item" :value="item" />
+          <el-option v-for="(item, index) in departmentList" :label="item.name" :value="item.id" :key="index"></el-option>
         </el-select>
       </el-form-item>
       <el-form-item label="出院时间">
@@ -176,7 +176,8 @@ export default {
           }
         }
       },
-      selectData:  {}
+      selectData:  {},
+      departmentList: []
     }
   },
   created() {
@@ -184,6 +185,11 @@ export default {
     this.showCodes = JSON.parse(JSON.stringify(this.codes))
   },
   methods: {
+    getDepList() {
+      this.$axios.post('/omr_zk/department_list').then(res => {
+        this.departmentList = res.data;
+      });
+    },
     handleCheckAllChange(val) {
       this.showCodes = val ? this.defaultCodes : []
       this.isIndeterminate = false

+ 10 - 0
src/views/data/frontHome/components/TableBox2.vue

@@ -31,6 +31,9 @@
         label="住院号码"
         width="160"
         align="center">
+        <template slot-scope="scope">
+          <span class="link" @click="toPage(scope.row.MED_REC_ID)"></span>
+        </template>
       </el-table-column>
       <el-table-column
         v-if="codes.includes('AAA01')"
@@ -135,6 +138,13 @@ export default {
         return []
       }
     }
+  },
+  methods: {
+    toPage(val) {
+      this.storageSet('getData', val);
+      const toPath = '/caseViews'
+      this.$router.push({ path: toPath });
+    },
   }
 }
 </script>

+ 2 - 2
src/views/data/query/index.vue

@@ -101,7 +101,7 @@
         <el-form ref="form" :model="formData1" label-width="100px">
           <el-form-item v-for="(item, index) in formData1.seniorList" :key="index">
             <!-- 下拉框开始 -->
-            <el-select v-if="index != 0" v-model="item.select_type" :class="index != 0 ? 'marginLeft' : ''" class="width100" filterable placeholder="" :disabled="item.lock">
+            <el-select v-model="item.select_type" :class="index != 0 ? 'marginLeft' : ''" class="width100" filterable placeholder="" :disabled="item.lock">
               <!-- fieldList -->
               <el-option label="且" :value="0" />
               <el-option label="或者" :value="1" />
@@ -122,7 +122,7 @@
               </el-select>
             </span>
             <span v-else>
-              <el-input class="width150" v-model="item.value" placeholder=""></el-input>
+              <el-input class="width150" v-model="item.value" placeholder="请输入"></el-input>
             </span>
             <!-- 中间选择输入框结束 -->
 

+ 14 - 1
src/views/search/components/ProfessionSearch.vue

@@ -326,7 +326,7 @@ export default {
       position: relative;
       .more-btn {
         position: absolute;
-        right: -100px;
+        right: -70px;
       }
     }
   }
@@ -349,4 +349,17 @@ export default {
     top: 0;
   }
 }
+::v-deep .el-cascader {
+  width: 240px;
+  .el-input {
+    .el-input__inner {
+      height: 40px !important;
+    }
+  }
+  .el-cascader__tags {
+    .el-tag {
+      max-width: 70%;
+    }
+  }
+}
 </style>

+ 31 - 6
src/views/search/index.vue

@@ -186,7 +186,7 @@
         </div>
       </div>
       <div v-if="onClass == '0'" class="conter" style="border: none">
-        <el-table ref="multipleTable" :data="tableData" tooltip-effect="dark" style="width: 100%" @selection-change="handleSelectionChange">
+        <el-table ref="multipleTable" :data="tableData" tooltip-effect="dark" style="width: 100%" @selection-change="handleSelectionChange" @sort-change="handleSortChange">
           <el-table-column type="index" :index="indexAdd" label="序号" width="70px" />
           <el-table-column prop="AAA28" label="住院号码">
             <template slot-scope="scope">
@@ -201,8 +201,8 @@
           </el-table-column>
           <el-table-column prop="AAA04" label="年龄" />
           <el-table-column prop="AAC11N" label="出院科室" />
-          <el-table-column prop="AAB01" label="入院时间" />
-          <el-table-column prop="AAC01" label="出院时间" />
+          <el-table-column prop="AAB01" label="入院时间" sortable />
+          <el-table-column prop="AAC01" label="出院时间" sortable />
         </el-table>
         <!-- 分页控制 -->
       </div>
@@ -492,7 +492,9 @@ export default {
       departmentList: [],
       lock: false,
       searchNum: 0,
-      professionSearchData: {}
+      professionSearchData: {},
+      // 排序
+      sort: []
     };
   },
   mounted() {
@@ -516,6 +518,27 @@ export default {
   },
   created() {},
   methods: {
+    // table 字段排序
+    handleSortChange(column) {
+      const { prop, order } = column;
+      let str = '';
+      if (order === 'descending') {
+        str = 'desc';
+      } else if (order === 'ascending') {
+        str = 'asc';
+      } else {
+        str = null;
+      }
+      this.$set(this.sort, 0, {field: prop, sort: str})
+      this.tableData = [];
+      
+      if (this.choice == 2) {
+        this.handleProfessionSearch(this.professionSearchData)
+      } else {
+        this.funQuery(this.searchNum);
+      }
+    },
+    // 普通下载
     normalDownload(name) {
       const params = {
         keyword: this.formData0.input,
@@ -542,6 +565,7 @@ export default {
         }
       });
     },
+    // 高级搜索下载
     highDownload(name) {
       const pramse = {};
       pramse.field = this.formData1.seniorList;
@@ -583,6 +607,7 @@ export default {
         }
       });
     },
+    // 结果中查询
     onLockResult() {
       this.lock = true;
       this.formData1.seniorList.map(item => {
@@ -638,7 +663,6 @@ export default {
       this.multipleSelection = val;
     },
     SizeChangeEvent(val) {
-      console.log(this.choice, 'this.choice', val)
       this.paginationData.pageSize = val;
       const num = this.lock ? 1 : 0;
       if (this.choice == 2) {
@@ -693,6 +717,7 @@ export default {
       const pramse = {
         limit: this.paginationData.pageSize,
         page: this.paginationData.currentPage, // 是当前页数 默认是0 。普通检索的参数是
+        sort: this.sort
       };
       let queryUrl = 'normalSearch';
       if (this.choice == '0') {
@@ -779,7 +804,7 @@ export default {
     handleProfessionSearch(params) {
       this.professionSearchData = params
       const { pageSize, currentPage } = this.paginationData
-      this.$axios3.post('/bl/serach', {...params, page_size: pageSize, page: currentPage }).then(res => {
+      this.$axios3.post('/bl/serach', {...params, page_size: pageSize, page: currentPage, sort: this.sort }).then(res => {
         this.tableData = res.data.list || [];
         this.tableDataDetails = res.data.detail || [];
         this.paginationData.total = res.data.total;