Pārlūkot izejas kodu

专家质控:入院时间和出院时间排序功能

liyanyan 2 nedēļas atpakaļ
vecāks
revīzija
471de89208

+ 17 - 1
src/views/recordsRoom/qc/components/expertQualityControl/SearchBox.vue

@@ -199,7 +199,9 @@ export default {
         surgicalPlanning: '',
         AEM01C: '',
         const1: '',
-        const2: ''
+        const2: '',
+        order_by_sort: '',
+        order_by_field: ''
       },
       searchOptions: {
         ksArray: [],//科室options
@@ -371,10 +373,24 @@ export default {
     this.getSearchOptions()
   },
   methods: {
+    handleSortChange(column) {
+      const { prop, order } = column;
+      if (order === 'descending') {
+          this.formData.order_by_sort = 'desc';
+      } else if (order === 'ascending') {
+          this.formData.order_by_sort = 'asc';
+      } else {
+          this.formData.order_by_sort = 'desc';
+      }
+      this.formData.order_by_field = prop
+      this.$emit('search')
+    },
     onSubmit() {
       this.$emit('search')
     },
     onReset() {
+      this.formData.order_by_sort = ''
+      this.formData.order_by_field = ''
       this.$refs.filterListFormRef.resetFields();
       this.$emit('reset')
     },

+ 8 - 3
src/views/recordsRoom/qc/components/expertQualityControl/TableBox.vue

@@ -4,6 +4,8 @@
     :data="data"
     style="width: 100%"
     height="452px"
+    @sort-change="handleSortChange"
+    ref="filterTableRef"
   >
     <!-- <el-table-column type="selection" width="40"></el-table-column> -->
     <el-table-column type="index" label="序号" width="50" />
@@ -13,8 +15,8 @@
       </template>
     </el-table-column>
     <el-table-column prop="BRXM" label="患者姓名" width="90" />
-    <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>
 </template>
 
@@ -41,7 +43,7 @@ export default {
       selectedArray: []
     }
   },
-  emits: ['onClickRow'],
+  emits: ['onClickRow', 'sortChange'],
   methods: {
     moment,
     toPage(row) {
@@ -50,6 +52,9 @@ export default {
 
     handleSelectionChange(val) {
       this.selectedArray = val;
+    },
+    handleSortChange(column) {
+      this.$emit('sortChange', column)
     }
   },
 };

+ 6 - 1
src/views/recordsRoom/qc/expertQualityControl.vue

@@ -8,7 +8,7 @@
             </el-row>
             <div class="content">
                 <el-card class="tableCard">
-                    <TableBoxVue :loading="loading" :data="tableData" ref="tableRef" @onClickRow="getDetailData()"/>
+                    <TableBoxVue :loading="loading" :data="tableData" ref="tableRef" @onClickRow="getDetailData()" @sortChange="handleSortChange"/>
                 </el-card>
                 <el-card class="detailCard" v-loading="detailLoading">
                     <div slot="header" class="detailCardHeader">
@@ -67,6 +67,10 @@ export default {
         this.getList()
     },
     methods: {
+         // table 字段排序
+        handleSortChange(column) {
+            this.$refs.SearchBoxRef.handleSortChange(column)
+        },
         getList() {
             this.loading = true
             getCaseAppealList({
@@ -96,6 +100,7 @@ export default {
             this.getList()
         },
         handleReset() {
+            this.$refs.tableRef.$refs.filterTableRef.clearSort();
             this.handleSearch()
         },
         getDetailData() {