gaohaiyong 9 months ago
parent
commit
9b712b8fab

+ 44 - 89
src/views/recordsRoom/qc/caseAppeal.vue

@@ -9,7 +9,7 @@
       >
         <el-table-column type="index" label="序号" width="80" />
         <el-table-column
-          prop="AAA01"
+          prop="status"
           label="申诉状态"
           width="100"
           show-overflow-tooltip
@@ -21,7 +21,7 @@
           show-overflow-tooltip
         />
         <el-table-column
-          prop="AAA28"
+          prop="levels"
           label="整改级别"
           width="80"
           show-overflow-tooltip
@@ -51,26 +51,26 @@
           show-overflow-tooltip
         />
         <el-table-column
-          prop="case_docter"
+          prop="appeal_docter"
           label="申诉医师"
           width="100"
           show-overflow-tooltip
         />
         <el-table-column
-          prop="case_docter"
+          prop="AAB01_START"
           label="申诉时间"
           width="100"
           show-overflow-tooltip
         />
         
         <el-table-column
-          prop="JSR"
+          prop="case_docter"
           label="质控医师"
           width="140"
           show-overflow-tooltip
         />
         <el-table-column
-          prop="AAB01"
+          prop="examine_start_time"
           label="审核时间"
           width="140"
           show-overflow-tooltip
@@ -85,35 +85,13 @@
       @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/SearchBox2.vue'
-import { getCaseAppealList,getCaseExamineAppeal } from '@/api/admin'
+import { getCaseAppealList } from '@/api/admin'
 
 export default {
   components: {
@@ -140,52 +118,54 @@ export default {
         total: 0,
         page: 1,
         limit: 10
-      },
-      dialogVisible: false,
-      alertForm: {}
+      }
     }
   },
   created() {
     this.getList()
   },
   methods: {
-    editSubmit(){
-
+    toPage(row) {
+      const { ZYH } = row
+      localStorage.setItem('getData', ZYH)
+      this.$router.push({ path: '/recordsRoom/qc/caseViews' })
     },
     getList() {
       const {
-        BLZT,
-        level,
-        ZKYS,
-        BLDJ,
-        AAA28,
-        AAA01,
-        AAC11N,
         AAB01_START,
         AAB01_END,
-        AAC01_START,
-        AAC01_END
+        levels,
+        AAB01_start_time,
+        AAB01_end_time,
+        appeal_document,
+        appeal_docter,
+        examine_start_time,
+        examine_end_time,
+        case_docter,
+        defect_content,
       } = this.searchData
       const { page, limit } = this.paginationData
       const params = {
-        BLZT,
-        level,
-        ZKYS,
-        BLDJ,
-        AAA28,
-        AAA01,
-        AAC11N,
         AAB01_START,
         AAB01_END,
-        AAC01_START,
-        AAC01_END,
+        levels,
+        AAB01_start_time,
+        AAB01_end_time,
+        appeal_document,
+        appeal_docter,
+        examine_start_time,
+        examine_end_time,
+        case_docter,
+        defect_content,
         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 : ''
+      params.AAB01_start_time = AAB01_start_time ? AAB01_start_time / 1000 : ''
+      params.AAB01_end_time = AAB01_end_time ? AAB01_end_time / 1000 : ''
+      params.examine_start_time = examine_start_time ? examine_start_time / 1000 : ''
+      params.examine_end_time = examine_end_time ? examine_end_time / 1000 : ''
       this.loading = true
       getCaseAppealList(params).then(res => {
         const { p } = res
@@ -208,17 +188,17 @@ export default {
     },
     handleReset() {
       this.searchData = {
-        BLZT: '',
-        level: '',
-        ZKYS: '',
-        BLDJ: '',
-        AAA28: '',
-        AAA01: '',
-        AAC11N: '',
         AAB01_START: '',
         AAB01_END: '',
-        AAC01_START: '',
-        AAC01_END: ''
+        levels: '',
+        AAB01_start_time: '',
+        AAB01_end_time: '',
+        appeal_document: '',
+        appeal_docter: '',
+        examine_start_time: '',
+        examine_end_time: '',
+        case_docter: '',
+        defect_content: ''
       }
       this.handleSearch()
     }
@@ -228,30 +208,5 @@ export default {
 
 <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>

+ 84 - 2
src/views/recordsRoom/qc/caseViews.vue

@@ -109,7 +109,7 @@
       <!-- status 不存在 意味着不脱敏、医院自助查询 -->
       <template v-if="!$route.query.status">
         <!-- 住院病案质控 -->
-        <CaseQualityBox :data="results" :width="340" :height="820" />
+        <CaseQualityBox :data="results" :clickAppealBtn="clickAppealBtn" :width="340" :height="820" />
       </template>
       <!-- 添加质控结果 -->
       <CreateControlResultDialogVue v-if="dialogData.bSwitch" :data="dialogData" @refresh="handelRefreshResults" />
@@ -122,6 +122,31 @@
         <li @click="onCreate">添加</li>
       </ul>
     </div>
+
+    <!-- 审核申诉弹窗 -->
+    <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.describe" type="textarea" placeholder="请输入驳回原因" />
+          </el-form-item>
+          <el-form-item label="审核科室:">
+            <el-input v-model="alertForm.case_document" placeholder="审核科室" />
+          </el-form-item>
+          <el-form-item label="审核医师:">
+            <el-input v-model="alertForm.case_docter" placeholder="审核医师" />
+          </el-form-item>
+          <el-form-item label="手机号">
+            <el-input v-model="alertForm.case_docter_mobile" 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>
@@ -147,6 +172,7 @@ import CaseQualityBox from './components/CaseQualityBox2.vue'
 import DeathText from './components/DeathText.vue'
 import CreateControlResultDialogVue from './components/CreateControlResultDialog.vue'
 import { getBlMenuList, getCaseQuality, getCasePlatform, getAllCase, getLong, getTemporary, getPacsData, getBcData, getHomeData, getSurgeryData, getBlInfo } from '@/api/qc'
+import { getCaseExamineAppeal } from '@/api/admin'
 
 export default {
   components: {
@@ -230,7 +256,11 @@ export default {
       },
       top: 0,
       left: 0,
-      gridCustomizeVisible: false
+      gridCustomizeVisible: false,
+
+      dialogVisible: false,
+      alertForm: {},
+      appealInfo: {}
     }
   },
   computed: {
@@ -296,6 +326,32 @@ export default {
   },
 
   methods: {
+    editSubmit(){
+      let that = this;
+      let params = {
+        id: that.appealInfo.id,
+        status: that.appealInfo.status,
+        describe: that.alertForm.describe,
+        case_document: that.alertForm.case_document,
+        case_docter: that.alertForm.case_docter,
+        case_docter_mobile: that.alertForm.case_docter_mobile,
+      }
+      getCaseExamineAppeal(params).then(res => {
+        const { c } = res
+        if(c == 0){
+          that.$message('提交成功');
+          that.dialogVisible = false;
+        }else{
+          that.$message('提交失败');
+        }
+
+      })
+    },
+    clickAppealBtn(e) {
+      let that = this;
+      that.appealInfo = e.params;
+      that.dialogVisible = true;
+    },
     // 刷新质控结果
     handelRefreshResults() {
       this.getCaseQualityResults()
@@ -621,6 +677,32 @@ export default {
 .is-active {
   color: #409eff;
 }
+.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>
 <style>
 /*  ================================== 文本形式样式 ↓ ======================== */

+ 246 - 98
src/views/recordsRoom/qc/components/CaseQualityBox2.vue

@@ -1,80 +1,65 @@
 <template>
-  <div ref="box" class="box" :style="{width: width ? width + 'px' : '100%'}" :class="{'nocopy': $route.meta.nocopy}">
+  <div>
 
-    <div class="score-box" :class="scoreLevel == '甲'? 'scoreLevel_1' : ( scoreLevel == '乙'?'scoreLevel_2': (scoreLevel == '丙'?'scoreLevel_3':'' ) ) ">
-      <div>病案评分<span class="score-f">{{ data.score  }}分</span></div>
-      <!-- <h2 class="score-dj">{{ scoreLevel }}</h2> -->
-    </div>
+    <div ref="box" class="box22" :style="{width: width ? width + 'px' : '100%'}" :class="{'nocopy': $route.meta.nocopy}">
 
-    <div class="card-box">
-      <el-row :gutter="20" style="margin-bottom: 16px;">
-        <el-col :span="12">
-          <div class="title">病历问题:<span class="error">{{ data.total }}</span></div>
-        </el-col>
-      </el-row>
-      <el-row :gutter="20">
-        <el-col :span="12" v-for="(item, index) of data.summary" :key="index">
-          <div class="title2" @click="onScroll(index)">{{ item.category }}:<span style="float: right;">({{ item.nums }})</span></div>
-        </el-col>
-      </el-row>
-    </div>   
-    <el-scrollbar ref="scrollRef" class="scrollBox" :style="{'height': scrollHeight}">
-      <el-table
-        :data="tableData"
-        default-expand-all
-        :show-header="false"
-        style="width: 100%">
-        <el-table-column type="expand">
-          <template slot-scope="props">
-            <el-card v-for="(item, index) of props.row.children" :key="index" class="box-card" shadow="hover">
-              <el-image
-                class="typeImg"
-                v-if="item.is_ai"
-                :src="require('../../../../assets/images/jiqiren.png')"
-                fit="contain">
-              </el-image>
-              <el-image
-                v-else
-                class="typeImg"
-                :src="require('../../../../assets/images/kefu.png')"
-                fit="contain">
-              </el-image>
-              <el-row>
-                <el-col :span="24">
-                  <el-descriptions title="" :column="1" direction="vertical">
-                    <el-descriptions-item label="质控项目">
-                      <el-tag class="category">{{ item.error_field }}</el-tag>
-                      <el-tag type="danger" class="koufen">-{{ item.score }}分</el-tag>
-                    </el-descriptions-item>
-                    <el-descriptions-item label="错误描述">{{ item.notice }}</el-descriptions-item>
-                    <el-descriptions-item label="质控依据">
-                      <div v-for="(yItem, yIndex) of item.basis" :key="yIndex" style="margin-bottom: 10px;">
-                        <div v-if="item.rule_id !== 6">
-                          <span class="span-index">{{ yIndex+1 }}</span>
-                          <span v-for="(cItem, cIndex) of yItem" :key="cIndex">{{ cItem }}</span>
-                        </div>
-                        <div v-else>
-                          <span class="span-index">1</span>
-                          <span>{{ yItem[0] }}</span>
-                        </div>
-                      </div>
-                    </el-descriptions-item>
-                </el-descriptions>
-                </el-col>
-              </el-row>
-            </el-card>
-          </template>
-        </el-table-column>
-        <el-table-column
-          label=""
-          prop="">
-          <template slot-scope="scope">
-            <div :class="`category${scope.$index}`">{{ scope.row.category }}</div>
-          </template>
-        </el-table-column>
-      </el-table>
-    </el-scrollbar>
+      <div class="score-box" :class="scoreLevel == '甲'? 'scoreLevel_1' : ( scoreLevel == '乙'?'scoreLevel_2': (scoreLevel == '丙'?'scoreLevel_3':'' ) ) ">
+        <div>病案评分<span class="score-f">{{ data.score  }}分</span></div>
+        <!-- <h2 class="score-dj">{{ scoreLevel }}</h2> -->
+      </div>
+      <el-scrollbar ref="scrollRef" class="scrollBox" :style="`height: ${scrollHeight};padding-bottom:60px;`">
+        <template v-for="(item, index) in tableData">
+          <div class="list-box box-card" :key="index" v-if="is_show">
+            <div class="list-score-tips-box">
+              <div class="list-left-score" :class=" item.level == 1 ? 'hover-1' : 'hover-2' ">
+                <div> {{ item.level == 1? '必改':'建议' }} </div>
+                <div>-{{ item.score }}</div>
+              </div>
+              <div class="list-right-tips">
+                <div><span class="font-size12 title-color">字段:</span><span class="font-size12">{{ item.category }}</span></div>
+                <div class="notice-box"><span class="font-size12 title-color">提示:</span><span class="font-size12">{{ item.notice }}</span></div>
+              </div>
+            </div>
+            <div class="list-basis-box">
+              <div class="list-basis-title" @click="clickListItem(index)">
+                <span>质控依据</span>
+                <span> >> </span>
+                <el-image class="typeImg" v-if="item.is_ai" :src="require('../../../assets/images/jiqiren.png')" fit="contain">
+                </el-image>
+                <el-image v-else class="typeImg" :src="require('../../../assets/images/kefu.png')" fit="contain">
+                </el-image>
+              </div>
+              <div class="list-basis-text" :class="item.show?'show':''">
+                <div v-for="(yItem, yIndex) of item.basis" :key="yIndex" style="margin-bottom: 10px;">
+                  <div>
+                    <span class="span-index">{{ yIndex+1 }}</span>
+                    <span>
+                      <span v-for="(cItem, cIndex) of yItem" :key="cIndex">{{ cItem }}</span>
+                    </span>
+                  </div>
+                </div>
+                <div class="list-basis-bottom-box">
+                  <div class="list-basis-bottom-tips">
+                    <el-tooltip class="appeal-status-box" effect="dark" :content="item.reject_content" placement="top">
+                      <el-button type="primary" class="appeal-status-1" v-if="item.appeal_status == 1">通过</el-button>
+                      <el-button type="danger" class="appeal-status-2"  v-if="item.appeal_status == 2">驳回</el-button>
+                    </el-tooltip>
+                  </div>
+                  <div class="list-basis-bottom-btn">
+                    <el-button type="primary" @click="clickAppeal( item,1 )">通过</el-button>
+                    <el-button @click="clickAppeal( item,2 )">驳回</el-button>
+                  </div>
+                </div>
+              </div>
+              
+            </div>
+            
+          </div>
+        </template>
+      </el-scrollbar>
+    </div>
   </div>
+
 </template>
 
 <script>
@@ -107,19 +92,13 @@
         }
       }
     },
+    data(){
+      return {
+        tableData: [],
+        is_show: true
+      }
+    },
     computed: {
-      tableData() {
-        let arr = []
-        const keys = Object.keys(this.data.data)
-        for(let i=0; i<keys.length; i++) {
-          let obj = {
-            category: keys[i],
-            children: this.data.data[keys[i]]
-          }
-          arr.push(obj)
-        }
-        return arr
-      },
       scoreLevel() {
         /**
          * 甲>90分
@@ -143,14 +122,51 @@
         // } else {
         //   return `calc(100vh - 314px)`
         // }
-        return `calc(100vh - 320px)`
+        return `100%`
       }
     },
+    created(){
+      this.getTableData();
+    },
     methods: {
+      getTableData(){
+        let data = this.data.data;
+        for(let i=0; i<data.length; i++) {
+          data[i].show = true;
+        }
+        this.tableData = data;
+        console.log(this.tableData)
+      },
       onScroll(index) {
         const el = this.$el.querySelector(`.category${index}`);
         const node = el.parentNode.parentNode.parentNode
         this.$refs["scrollRef"].wrap.scrollTop = node.offsetTop;
+      },
+      hightRight(hightKeyWord, bllb, zyh) {
+        this.$emit('hightRight',hightKeyWord,bllb,zyh)
+      },
+      clickListItem(idx){
+        let tableData = this.tableData;
+        tableData[idx].show = !tableData[idx].show;
+        this.is_show = false;
+        this.$nextTick( () =>{
+          this.tableData = tableData; 
+          this.is_show = true;
+        })
+        console.log(tableData)
+
+      },
+      // 点击通过、驳回按钮
+      clickAppeal(i,type){
+        let that = this;
+        let item = i;
+        let params = {
+          id: item.id, // 质控错误结果的数据ID
+          status: type,
+          case_document: item.appeal_document, //申诉科室名称
+          case_docter: item.appeal_docter,  // 申诉医生名称
+        }
+        that.$emit('clickAppealBtn',params);
       }
     }
   }
@@ -165,10 +181,11 @@
 }
 
 
-.box {
+.box22 {
   padding: 16px;
   background: #FFFFFF;
   border-radius: 5px;
+  height: 100vh;
   .score-box{
     width: 100%;
     margin-bottom: 16px;
@@ -191,42 +208,55 @@
   }
   .score-box.scoreLevel_1{
     background: rgb(11, 133, 63);
-    background-image: url('../../../../assets/images/icon-jia.png');
+    background-image: url('../../../assets/images/icon-jia.png');
     background-repeat: no-repeat;
     background-size: 60px 52px;
     background-position:80% 50%;
   }
   .score-box.scoreLevel_2{
     background: rgb(152, 112, 20);
-    background-image: url('../../../../assets/images/icon-yi.png');
+    background-image: url('../../../assets/images/icon-yi.png');
     background-repeat: no-repeat;
     background-size: 60px 52px;
     background-position:80% 50%;
   }
   .score-box.scoreLevel_3{
     background: rgb(199, 54, 13);
-    background-image: url('../../../../assets/images/icon-bing.png');
+    background-image: url('../../../assets/images/icon-bing.png');
     background-repeat: no-repeat;
     background-size: 60px 52px;
     background-position:80% 50%;
   }
   .card-box {
     // height: 175px;
-    background: #FFFFFF;
-    border: 1px solid #E2E2E2;
-    padding: 16px 20px;
+    // background: #FFFFFF;
+    // border: 1px solid #E2E2E2;
+    background: #f1f5fe;
+    padding: 10px;
     box-sizing: border-box;
     margin-bottom: 14px;
+    display: flex;
+    align-items: center;
+    justify-content: space-between;
     .title {
-      font-size: 15px;
+      font-size: 12px;
       font-family: PingFang-SC-Bold, PingFang-SC;
-      font-weight: bold;
+      // font-weight: bold;
       color: #333333;
       line-height: 22px;
       // span {
       //   margin-left: 7px;
       // }
     }
+    .card-icon-btn{
+      width: auto;
+      padding: 4px 8px;
+      border-radius: 4px;
+      background: rgb(254, 240, 240);
+      color: rgb(245, 128, 140);
+      border: 1px solid rgb(245, 128, 140);
+      font-size: 10px;
+    }
     .title2 {
       font-size: 14px;
       font-family: PingFang-SC-Bold, PingFang-SC;
@@ -299,9 +329,9 @@
   }
 }
 .span-index{
-  width: 24px;
-  height: 24px;
-  line-height: 24px;
+  width: 20px;
+  height: 20px;
+  line-height: 20px;
   text-align: center;
   display: inline-block;
   border-radius: 50%;
@@ -309,9 +339,127 @@
   color: #fff;
   margin-right: 10px;
   margin-bottom: 4px;
+  font-size: 12px;
 }
 
 ::v-deep .el-table .el-table__row td {
   color: #fff;
 }
+::v-deep .el-tag{
+  height: auto;
+  line-height: 22px;
+}
+// =================   2024-07-27 新样式  ↓  ===============
+.font-size12{
+  font-size: 12px;
+}
+.list-box{
+  width: 100%;
+  padding: 10px 0;
+  .title-color{
+    color: rgba(27,100,176,1);
+    font-weight: bold;
+  }
+  .list-score-tips-box{
+    width: 100%;
+    display: flex;
+    .list-left-score{
+      width: 70px;
+      text-align: center;
+      font-size: 20px;
+      font-weight: 700;
+      position: relative;
+      display: flex;
+      flex-direction: column;
+      align-items: center;
+      justify-content: center;
+      padding: 10px 0;
+      &.hover-1{
+        background: rgb(254, 240, 240);
+        color: rgb(238, 14, 14);
+        border-right: 3px solid rgb(238, 14, 14);
+      }
+      &.hover-2{
+        background: rgb(236, 245, 255);
+        color: rgb(52, 140, 235);
+        border-right: 3px solid rgb(52, 140, 235);
+      }
+      &>div{
+        font-size: 20px;
+      }
+    }
+    .list-right-tips{
+      flex: 1;
+      font-size: 12px;
+      padding-left: 10px;
+      .notice-box{
+        margin-top: 8px;
+      }
+    }
+  }
+  .list-basis-box{
+    .list-basis-title{
+      padding: 10px 0 10px 10px;
+      position: relative;
+      &>span{
+        font-size: 12px;
+        color: rgba(27,100,176,1);
+        font-weight: bold;
+      }
+      .typeImg {
+        width: 34px;
+        height: 34px;
+        position: absolute;
+        top: 0;
+        right: 12px;
+        z-index: 999;
+      }
+      
+    }
+    .list-basis-text{
+      height: 0;
+      overflow: hidden;
+      position: relative;
+      &.show{
+        height: auto;
+        padding: 10px 0 10px 10px;
+      }
+      
+    }
+    .list-basis-bottom-box{
+      margin-top: 14px;
+      width: 100%;
+      display: flex;
+      align-items: center;
+      justify-content: space-between;
+      .list-basis-bottom-tips{
+        flex: 1;
+        &::v-deep .el-button{
+          padding: 0;
+          font-size: 12px;
+          width: 40px;
+          height: 40px;
+          border-radius: 50%;
+          &>span{
+            font-size: 12px;
+          }
+        }
+      }
+      .list-basis-bottom-btn{
+        width: auto;
+        &::v-deep .el-button{
+          padding: 6px 14px;
+        }
+        &::v-deep .el-button--primary,&::v-deep .el-button--primary:focus,&::v-deep .el-button--primary:hover{
+          background: #185DA6;
+          border-color: #185DA6;
+        }
+      }
+    }
+
+    
+
+  }
+}
+
 </style>

+ 144 - 102
src/views/recordsRoom/qc/components/SearchBox2.vue

@@ -1,73 +1,108 @@
 <template>
   <div class="app-container">
     <el-form :inline="true" :model="data" class="demo-form-inline">
-      <el-form-item label="">
-        <el-select v-model="data.level" filterable clearable placeholder="整改级别">
-          <el-option v-for="item of levels" :key="item.id" :label="item.name" :value="item.id" />
-        </el-select>
-      </el-form-item>
-      <el-form-item label="">
-        <el-input v-model="data.ZKYS" placeholder="质控医师" />
-      </el-form-item>
-      <el-form-item label="">
-        <el-select v-model="data.BLZT" filterable clearable placeholder="病历状态">
-          <el-option v-for="item of BLZTs" :key="item.id" :label="item.name" :value="item.id" />
-        </el-select>
-      </el-form-item>
-      <el-form-item label="">
-        <el-select v-model="data.BLDJ" filterable clearable placeholder="病历等级">
-          <el-option v-for="item of BLDJs" :key="item.id" :label="item.name" :value="item.id" />
-        </el-select>
-      </el-form-item>
-      <el-form-item label="">
-        <el-input v-model="data.AAA28" placeholder="住院号码" />
-      </el-form-item>
-      <el-form-item label="">
-        <el-input v-model="data.AAA01" placeholder="姓名" />
-      </el-form-item>
-      <el-form-item label="">
-        <el-select v-model="data.AAC11N" filterable clearable placeholder="出院科室">
-          <el-option v-for="item of deportments" :key="item.id" :label="item.name" :value="item.name" />
-        </el-select>
-      </el-form-item>
-      <el-form-item label="">
-        <el-date-picker
-          v-model="data.AAB01_START"
-          type="date"
-          :picker-options="pickerOptions1"
-          placeholder="入院开始日期"
-        />
-      </el-form-item>
-      <el-form-item label="">
-        <el-date-picker
-          v-model="data.AAB01_END"
-          type="date"
-          :picker-options="pickerOptions2"
-          placeholder="入院结束日期"
-        />
-      </el-form-item>
-      <el-form-item label="">
-        <el-date-picker
-          v-model="data.AAC01_START"
-          type="date"
-          :picker-options="pickerOptions1"
-          placeholder="出院开始日期"
-        />
-      </el-form-item>
-      <el-form-item label="">
-        <el-date-picker
-          v-model="data.AAC01_END"
-          type="date"
-          :picker-options="pickerOptions2"
-          placeholder="出院结束日期"
-        />
-      </el-form-item>
-      <el-form-item>
-        <el-button type="primary" @click="onSubmit">查询</el-button>
-      </el-form-item>
-      <el-form-item>
-        <el-button @click="onReset">重置</el-button>
-      </el-form-item>
+      <el-row>
+        <el-col :span="12">
+          <el-form-item label="申诉时间:">
+            <el-date-picker
+              v-model="data.AAB01_START"
+              type="date"
+              :picker-options="pickerOptions1"
+              placeholder="申诉开始日期"
+            />
+          </el-form-item>
+          <el-form-item label="">
+            <el-date-picker
+              v-model="data.AAB01_END"
+              type="date"
+              :picker-options="pickerOptions2"
+              placeholder="申诉结束日期"
+            />
+          </el-form-item>
+        </el-col>
+        <el-col :span="6">
+          <el-form-item label="整改级别:">
+            <el-select v-model="data.levels" filterable clearable placeholder="全部">
+              <el-option v-for="item of levels" :key="item.id" :label="item.name" :value="item.id" />
+            </el-select>
+          </el-form-item>
+        </el-col>
+        <el-col :span="6">
+          <el-form-item label="住院号码:">
+            <el-input v-model="data.AAA28" placeholder="请输入住院号码" />
+          </el-form-item>
+        </el-col>
+        <el-col :span="12">
+          <el-form-item label="入院时间:">
+            <el-date-picker
+              v-model="data.AAB01_start_time"
+              type="date"
+              :picker-options="pickerOptions1"
+              placeholder="入院开始日期"
+            />
+          </el-form-item>
+          <el-form-item label="">
+            <el-date-picker
+              v-model="data.AAB01_end_time"
+              type="date"
+              :picker-options="pickerOptions2"
+              placeholder="入院结束日期"
+            />
+          </el-form-item>
+        </el-col>
+        <el-col :span="6">
+          <el-form-item label="申诉科室:">
+            <el-select v-model="data.appeal_document" filterable clearable placeholder="申诉科室">
+              <el-option v-for="item of deportments" :key="item.id" :label="item.name" :value="item.name" />
+            </el-select>
+          </el-form-item>
+        </el-col>
+        <el-col :span="6">
+          <el-form-item label="申诉医师:">
+            <el-input v-model="data.appeal_docter" placeholder="申诉医师" />
+          </el-form-item>
+        </el-col>
+
+        <el-col :span="12">
+          <el-form-item label="审核时间:">
+            <el-date-picker
+              v-model="data.examine_start_time"
+              type="date"
+              :picker-options="pickerOptions1"
+              placeholder="审核开始日期"
+            />
+          </el-form-item>
+          <el-form-item label="">
+            <el-date-picker
+              v-model="data.examine_end_time"
+              type="date"
+              :picker-options="pickerOptions2"
+              placeholder="审核结束日期"
+            />
+          </el-form-item>
+        </el-col>
+        <el-col :span="6">
+          <el-form-item label="质控医师:">
+            <el-input v-model="data.case_docter" placeholder="质控医师" />
+          </el-form-item>
+        </el-col>
+        <el-col :span="6">
+          <el-form-item label="缺陷描述:">
+            <el-input v-model="data.defect_content" placeholder="请输入缺陷描述" />
+          </el-form-item>
+        </el-col>
+        <el-col :span="24">
+          <div style="width: 100%;display: flex;justify-content: end;">
+            <el-form-item>
+              <el-button type="primary" @click="onSubmit">查询</el-button>
+            </el-form-item>
+            <el-form-item>
+              <el-button @click="onReset">重置</el-button>
+            </el-form-item>
+          </div>
+        </el-col>
+
+      </el-row>
     </el-form>
   </div>
 </template>
@@ -80,17 +115,17 @@ export default {
       type: Object,
       default() {
         return {
-          BLZT: '',
-          level: '',
-          ZKYS: '',
-          BLDJ: '',
-          AAA28: '',
-          AAA01: '',
-          AAC11N: '',
           AAB01_START: '',
           AAB01_END: '',
-          AAC01_START: '',
-          AAC01_END: ''
+          levels: '',
+          AAB01_start_time: '',
+          AAB01_end_time: '',
+          appeal_document: '',
+          appeal_docter: '',
+          examine_start_time: '',
+          examine_end_time: '',
+          case_docter: '',
+          defect_content: ''
         }
       }
     }
@@ -119,37 +154,13 @@ export default {
       levels: [
         {
           id: 1,
-          name: '强制'
+          name: '必改'
         },
         {
           id: 2,
           name: '建议'
         }
       ],
-      BLDJs: [
-        {
-          id: 1,
-          name: '甲'
-        },
-        {
-          id: 2,
-          name: '乙'
-        },
-        {
-          id: 3,
-          name: '丙'
-        }
-      ],
-      BLZTs: [
-        {
-          id: 0,
-          name: '未改'
-        },
-        {
-          id: 2,
-          name: '已改'
-        }
-      ]
     }
   },
   created() {
@@ -182,5 +193,36 @@ export default {
 </script>
 
 <style lang="scss" scoped>
-
+  .app-container{
+    .placeholder{
+      width: 10px;
+    }
+    ::v-deep .el-form{
+      display: flex;
+      flex-wrap: wrap;
+      justify-content: space-around;
+    }
+    ::v-deep .el-form-item{
+      margin-bottom: 8px;
+      margin-right: 4px;
+      display: flex;
+      align-items: center;
+    }
+    ::v-deep .el-input__inner{
+      height: 35px;
+      line-height: 35px;
+    }
+    ::v-deep .el-button{
+      padding: 10px 20px;
+    }
+    ::v-deep .el-input__icon{
+      line-height: 35px;
+    }
+    ::v-deep .el-form-item__content{
+      flex: 1;
+      .el-input{
+        width: auto;
+      }
+    }
+  }
 </style>