Browse Source

审核申诉

xizhong 9 months ago
parent
commit
0e4c35f8ed
2 changed files with 273 additions and 0 deletions
  1. 17 0
      src/api/admin.js
  2. 256 0
      src/views/recordsRoom/qc/caseAppeal.vue

+ 17 - 0
src/api/admin.js

@@ -201,3 +201,20 @@ export function setCaseRuleshizhong(data) {
     data
   })
 }
+
+// 获取申述列表
+export function getCaseAppealList(data) {
+  return request({
+    url: '/admin/getCaseAppeal',
+    method: 'get',
+    data
+  })
+}
+//  申诉审核
+export function getCaseExamineAppeal(data) {
+  return request({
+    url: '/admin/examineAppeal',
+    method: 'get',
+    data
+  })
+}

+ 256 - 0
src/views/recordsRoom/qc/caseAppeal.vue

@@ -0,0 +1,256 @@
+<template>
+  <div>
+    <SearchBoxVue :data="searchData" @search="handleSearch" @reset="handleReset" />
+    <div class="app-container">
+      <el-table
+        v-loading="loading"
+        :data="data"
+        style="width: 100%"
+      >
+        <el-table-column type="index" label="序号" width="80" />
+        <el-table-column
+          prop="AAA01"
+          label="姓名"
+          width="100"
+          show-overflow-tooltip
+        />
+        <el-table-column
+          prop="AAA28"
+          label="住院号"
+          width="80"
+          show-overflow-tooltip
+        />
+        <el-table-column
+          prop="AAB01_start_time"
+          label="入院时间"
+          width="100"
+          show-overflow-tooltip
+        />
+        <el-table-column
+          prop="AAB01_end_time"
+          label="入院时间"
+          width="100"
+          show-overflow-tooltip
+        />
+        <el-table-column
+          prop="appeal_docter"
+          label="申诉医生"
+          width="100"
+          show-overflow-tooltip
+        />
+        <el-table-column
+          prop="case_docter"
+          label="质控医生"
+          width="100"
+          show-overflow-tooltip
+        />
+        <el-table-column
+          prop="case_docter"
+          label="质控医生"
+          width="100"
+          show-overflow-tooltip
+        />
+        <el-table-column
+          prop="defect_content"
+          label="缺陷描述"
+          width="100"
+          show-overflow-tooltip
+        />
+        
+
+      
+        <el-table-column
+          prop="JSR"
+          label="接收人"
+          width="140"
+          show-overflow-tooltip
+        />
+        <el-table-column
+          prop="AAB01"
+          label="入院时间"
+          width="140"
+          show-overflow-tooltip
+        />
+        <template slot-scope="scope">
+          <el-button type="text" @click="clickItem(scope)">审核</el-button>
+        </template>
+      </el-table>
+    </div>
+    <pagination
+      :auto-scroll="false"
+      :total="paginationData.total"
+      :page="paginationData.page"
+      :limit="paginationData.limit"
+      @pagination="handlePagination"
+    />
+
+    <div class="dialog-box">
+      <el-dialog title="审核结果" :visible.sync="dialogVisible" :close-on-click-modal="false" width="340px">
+        <el-form ref="form" :model="alertForm">
+          <el-form-item label="驳回原因:">
+            <el-input v-model="alertForm.name" type="textarea" placeholder="请输入驳回原因" />
+          </el-form-item>
+          <el-form-item label="审核科室:">
+            <el-input v-model="alertForm.realname" placeholder="审核科室" />
+          </el-form-item>
+          <el-form-item label="审核医师:">
+            <el-input v-model="alertForm.realname" placeholder="审核医师" />
+          </el-form-item>
+          <el-form-item label="手机号">
+            <el-input v-model="alertForm.phone" placeholder="手机号" />
+          </el-form-item>
+        </el-form>
+
+        <span slot="footer" class="dialog-footer">
+          <el-button type="primary" @click="editSubmit">确 定</el-button>
+          <el-button @click="dialogVisible=false">取 消</el-button>
+        </span>
+      </el-dialog>
+    </div>
+  </div>
+</template>
+
+<script>
+// import SearchBoxVue from './components/SearchBox.vue'
+import { getCaseAppealList,getCaseExamineAppeal } from '@/api/admin'
+
+export default {
+  components: {
+    // SearchBoxVue,
+  },
+  data() {
+    return {
+      loading: false,
+      searchData: {
+        BLZT: '',
+        level: '',
+        ZKYS: '',
+        BLDJ: '',
+        AAA28: '',
+        AAA01: '',
+        AAC11N: '',
+        AAB01_START: '',
+        AAB01_END: '',
+        AAC01_START: '',
+        AAC01_END: ''
+      },
+      tableData: [],
+      paginationData: {
+        total: 0,
+        page: 1,
+        limit: 10
+      },
+      dialogVisible: false,
+      alertForm: {}
+    }
+  },
+  created() {
+    this.getList()
+  },
+  methods: {
+    editSubmit(){
+
+    },
+    getList() {
+      const {
+        BLZT,
+        level,
+        ZKYS,
+        BLDJ,
+        AAA28,
+        AAA01,
+        AAC11N,
+        AAB01_START,
+        AAB01_END,
+        AAC01_START,
+        AAC01_END
+      } = this.searchData
+      const { page, limit } = this.paginationData
+      const params = {
+        BLZT,
+        level,
+        ZKYS,
+        BLDJ,
+        AAA28,
+        AAA01,
+        AAC11N,
+        AAB01_START,
+        AAB01_END,
+        AAC01_START,
+        AAC01_END,
+        page,
+        page_size: limit
+      }
+      params.AAB01_START = AAB01_START ? AAB01_START / 1000 : ''
+      params.AAB01_END = AAB01_END ? AAB01_END / 1000 : ''
+      params.AAC01_START = AAC01_START ? AAC01_START / 1000 : ''
+      params.AAC01_END = AAC01_END ? AAC01_END / 1000 : ''
+      this.loading = true
+      getCaseAppealList(params).then(res => {
+        const { p } = res
+        this.paginationData.total = p.count
+        this.tableData = p.list
+      }).catch(error => {
+        console.log(error)
+      }).finally(() => {
+        this.loading = false
+      })
+    },
+    handlePagination(param) {
+      this.paginationData.page = param.page
+      this.paginationData.limit = param.limit
+      this.getList()
+    },
+    handleSearch() {
+      this.paginationData.page = 1
+      this.getList()
+    },
+    handleReset() {
+      this.searchData = {
+        BLZT: '',
+        level: '',
+        ZKYS: '',
+        BLDJ: '',
+        AAA28: '',
+        AAA01: '',
+        AAC11N: '',
+        AAB01_START: '',
+        AAB01_END: '',
+        AAC01_START: '',
+        AAC01_END: ''
+      }
+      this.handleSearch()
+    }
+  }
+}
+</script>
+
+<style lang="scss" scoped>
+// ==================
+.dialog-box {
+  ::v-deep .el-dialog__header{
+    padding: 10px 20px;
+    background: rgb(27,100,169);
+    color: #fff !important;
+    .el-dialog__title{
+      color: #fff;
+    }
+    .el-dialog__headerbtn{
+      top: 14px;
+    }
+  }
+  ::v-deep .el-dialog__body{
+    .el-form-item {
+      background: #fff;
+    }
+    .el-input{
+      width: 100%;
+      input{
+        height: 35px;
+        border: 1px solid #C0C4CC;
+        border-radius: 6px;
+      }
+    }
+  }
+}
+</style>