Bläddra i källkod

3月27日临时提交

zz 1 månad sedan
förälder
incheckning
962579e547

+ 12 - 8
src/views/allcase/caseNumber.vue

@@ -45,7 +45,7 @@
         </el-table-column>
         <el-table-column prop="AAC01" label="出院时间"></el-table-column>
         <el-table-column prop="AAA01" label="患者姓名"></el-table-column>
-        <el-table-column prop="ABC01N" label="主要诊断"></el-table-column>
+        <el-table-column prop="ICD10_NAME" label="主要诊断"></el-table-column>
         <el-table-column prop="ICD9_NAME" label="主要手术"></el-table-column>
       </el-table>
       <!-- 分页控制 -->
@@ -53,7 +53,7 @@
     </div>
   </div>
 </template>
-  
+
   <script>
 import Title from '@/components/Title';
 import { mapGetters } from 'vuex';
@@ -88,6 +88,10 @@ export default {
     };
   },
   mounted() {
+    let query = this.$route.query;
+    this.formData.YQ_CODE = query.YQ_CODE;
+    this.formData.KS_CODE = query.KS_CODE;
+    this.formData.BQ_CODE = query.BQ_CODE;
     this.formData.startTime = this.storageGet('start_time');
     this.formData.endTime = this.storageGet('end_time');
     this.funQuery();
@@ -137,13 +141,14 @@ export default {
         AAA28: this.formData.recordNum,
         page: this.paginationData.currentPage, //页码
         limit: this.paginationData.pageSize, //条数
-        AAC11C: this.formData.AAC11C
+        AAC11C: this.formData.AAC11C,
+        YQ_CODE: this.formData.YQ_CODE,
+        KS_CODE: this.formData.KS_CODE,
+        BQ_CODE: this.formData.BQ_CODE
       };
-      this.$axios.post('/qualityList', pramse).then(res => {
-        console.log(res);
-
+      this.$axios.post('CaseHistory/Terminal/blNumberTableList', pramse).then(res => {
         this.paginationData.total = res.data.count;
-        this.tableData = res.data.list;
+        this.tableData = res.data.data;
       });
     },
     reset() {
@@ -301,4 +306,3 @@ export default {
   padding: 0 5px;
 }
 </style>
-  

+ 7 - 0
src/views/allcase/defectNumber.vue

@@ -127,6 +127,10 @@ export default {
     };
   },
   mounted() {
+    let query = this.$route.query;
+    this.formData.YQ_CODE = query.YQ_CODE;//院区
+    this.formData.KS_CODE = query.KS_CODE;//科室
+    this.formData.BQ_CODE = query.BQ_CODE;//病区
     this.error_rule = this.$route.query.rule_id;// 规则ID
     this.sort = this.$route.query.sort;
     this.doctor_name = this.$route.query.doctor_name;
@@ -190,6 +194,9 @@ export default {
         AAA28: this.formData.recordNum, //住院号
         AAC11N: this.formData.AAC11N,  //科室
         rule_type: this.formData.rule_type, //质控类型
+        YQ_CODE: this.formData.YQ_CODE, //质控类型
+        KS_CODE: this.formData.KS_CODE, //质控类型
+        BQ_CODE: this.formData.BQ_CODE, //质控类型
       };
       if (this.error_rule) {
         pramse.error_rule = this.error_rule; // 规则ID

+ 54 - 20
src/views/allcase/index.vue

@@ -70,31 +70,39 @@
           <div style="width: 60%;margin-right: 20px;">
             <div style="display: flex;" class="mb20">
               <div style="display: flex;align-items: center">
-                <div style="margin-right: 10px;">当前维度</div>
-                <el-select  v-model="departmentSearch.rank_type" @change="depRankChange">
+                <el-select  v-model="departmentSearch.rank_type" @change="depRankChange" style="width: 120px;">
                   <el-option v-for="(v,k) in departmentOptions.rankTypeArray" :key="k" :label="v.name" :value="v.type_id"></el-option>
                 </el-select>
+                <div style="margin-left: 10px;font-size: 16px;">共{{departmentSearch.total}}个{{rankName}}</div>
+                <el-pagination
+                  @size-change="handleDepartmentSizeChange"
+                  @current-change="handleDepartmentCurrentChange"
+                  :current-page="departmentSearch.page"
+                  :page-sizes="[10, 20, 30,50,100]"
+                  :page-size="departmentSearch.size"
+                  layout=" prev, pager, next,sizes"
+                  :total="departmentSearch.total"
+                  style="margin-left: 10px;"
+                  >
+                </el-pagination>
               </div>
               <div style="margin-left: auto;">
                 <el-button @click="rankOrder" :icon="departmentSearch.rank_order == 2 ? 'el-icon-bottom':'el-icon-top'">{{rankOrderName}}</el-button>
                 <el-button icon="el-icon-download" @click="departmentRankExport">下载</el-button>
               </div>
             </div>
-            <el-table :data="departmentOptions.tableList" :height="500">
+            <el-table :data="departmentOptions.tableList" >
               <el-table-column v-for="(item,index) in rankTableFiled" :index="index" :prop="item.prop" :label="item.label" align="center" show-overflow-tooltip>
+                <template slot-scope="scope">
+                    <span class="link" @click="blLink('/caseNumber?',scope.row.code)" style="color: #004983;" v-if="item.prop == 'bl_num'">
+                      {{ scope.row.bl_num }}</span>
+                   <span v-else-if="item.prop == 'qx_num'" class="link" @click="blLink('/defectNumber?',scope.row.code)" style="color: red;">{{ scope.row[item.prop] }}</span>
+                   <span v-else>{{ scope.row[item.prop] }}</span>
+                </template>
               </el-table-column>
             </el-table>
-            <el-pagination
-              background
-              @size-change="handleDepartmentSizeChange"
-              @current-change="handleDepartmentCurrentChange"
-              :current-page="departmentSearch.page"
-              :page-size="departmentSearch.size"
-              layout="total, prev, pager, next, jumper"
-              :total="departmentSearch.total">
-            </el-pagination>
           </div>
-          <div id="myChart1" style="width: 40%; height: 600px;margin-top: 10px;"></div>
+          <div id="myChart1" style="width: 40%;margin-top: 10px;" :style="'height:'+rankChartHeight+'px'"></div>
       </div>
     </div>
 
@@ -282,9 +290,9 @@ export default {
         ],
         tableList:[],//列表数据
         rankTypeArray:[//排名类型
-          {'type_id':1,'name':'院区','filed':'出院院区名称'},
-          {'type_id':2,'name':'科室','filed':'出院科室名称'},
-          {'type_id':3,'name':'病区','filed':'出院病区名称'},
+          {'type_id':1,'name':'院区维度','filedName':'出院院区名称','rankTitle':'院区','filed':'YQ_CODE'},
+          {'type_id':2,'name':'科室维度','filedName':'出院科室名称','rankTitle':'科室','filed':'KS_CODE'},
+          {'type_id':3,'name':'病区维度','filedName':'出院病区名称','rankTitle':'病区','filed':'BQ_CODE'},
         ],
         rankOrderArray: [//排序
           {'id':1,'name':'升序'},
@@ -295,7 +303,7 @@ export default {
       departmentMyChart:{//科室排名图表
         tooltip: { trigger: 'axis', axisPointer: { type: 'shadow'}},
         legend: {},
-        grid: { left: '3%', right: '4%', bottom: '3%', containLabel: true },
+        grid: { left: '3%', right: '4%', bottom: '3%', containLabel: true},
         xAxis: { type: 'value', boundaryGap: [0, 0.01] },
         yAxis: { type: 'category', data: [] },
         series: [
@@ -358,17 +366,27 @@ export default {
     },
     //科室排名排序
     rankOrderName(){
+      console.log('123');
       return this.departmentOptions.rankOrderArray.find(item => item.id === this.departmentSearch.rank_order).name
     },
     //计算当前排名的所属维度
     rankName(){
-      return this.departmentOptions.rankTypeArray.find(item => item.type_id === this.departmentSearch.rank_type).name
+      return this.departmentOptions.rankTypeArray.find(item => item.type_id === this.departmentSearch.rank_type).rankTitle;
     },
     //计算科室排名显示的出院科室名称还是出院院区名称
     rankTableFiled(){
-      let filed = this.departmentOptions.rankTypeArray.find(item => item.type_id === this.departmentSearch.rank_type).filed
+      let filed = this.departmentOptions.rankTypeArray.find(item => item.type_id === this.departmentSearch.rank_type).filedName
       this.departmentOptions.tableField[1]['label'] = filed;
       return this.departmentOptions.tableField;
+    },
+    //计算科室排名图表高度
+    rankChartHeight(){
+      //let height = this.departmentOptions.tableList.length * 48 + 100;
+      return this.departmentOptions.tableList.length * 48 + 100;
+    },
+    rankGotFiled(){
+      let xx = this.departmentOptions.rankTypeArray.find(item => item.type_id === this.departmentSearch.rank_type).filed;
+      return this.departmentOptions.rankTypeArray.find(item => item.type_id === this.departmentSearch.rank_type).filed;
     }
 
   },
@@ -471,6 +489,22 @@ export default {
     },
     //region 科室排名===
     //下载
+    blLink(url,value){
+      let rank_type = this.departmentSearch.rank_type;
+      let filed = "";
+      switch (rank_type){
+        case 1:
+          filed = "YQ_CODE";
+          break;
+        case 2:
+          filed = "KS_CODE";
+          break;
+        case 3:
+          filed = "BQ_CODE";
+          break;
+      }
+      this.goto(url+filed+'='+value);
+    },
     departmentRankExport(){
       let params = Object.assign({},this.departmentSearch,this.formData);
       getDepartmentRankExport(params).then(res=>{
@@ -526,7 +560,7 @@ export default {
     },
     //科室排名图表
     getDepartmentMyChart(){
-      // 销毁上一次实例
+      //销毁上一次实例
       echarts.init(document.getElementById('myChart1')).dispose();
       // 构建新实例
       let myChart = echarts.init(document.getElementById('myChart1'));

+ 10 - 2
src/views/recordsRoom/qc/components/CreateControlResultDialog.vue

@@ -130,6 +130,10 @@
     </el-dialog>
     <el-dialog title="添加质控规则" center :visible.sync="addRuleDialog" width="450px">
       <el-form :inline="true" :rules="zkRules" >
+        <el-form-item label="质控类型" prop="zk_type">
+          <el-radio v-model="addRuleForm.zk_type" label="1">首页质控</el-radio>
+          <el-radio v-model="addRuleForm.zk_type" label="2">病历质控</el-radio>
+        </el-form-item>
         <el-form-item label="质控名称" prop="field">
           <el-input v-model="addRuleForm.field" placeholder="请输入规则名称" style="width: 300px;"></el-input>
         </el-form-item>
@@ -142,7 +146,7 @@
             </el-option>
           </el-select>
         </el-form-item>
-        <el-form-item label="缺陷分类" prop="type">
+        <el-form-item label="缺陷分类" prop="type" v-if="addRuleForm.zk_type == 1">
           <el-select v-model="addRuleForm.type" placeholder="缺陷分类" style="width: 300px;">
             <el-option v-for="(item,index) in addRuleOptions.typeArray" :key="index" :label="item.name" :value="item.id">
             </el-option>
@@ -213,6 +217,10 @@ export default {
   data() {
     return {
       //添加质控
+      zkTypeArray: [
+        { label: '首页质控', value: 1, },
+        { label: '病历质控', value: 2, },
+      ],
       addRuleOptions:{
         levelArray:[
           {'id':0,'name':'强制'},
@@ -242,7 +250,7 @@ export default {
       },
       zkInfoArray:[],//
       addRuleDialog:false,
-      addRuleForm:{},
+      addRuleForm:{zk_type:1},
       errorTypeArray:[
         {'id':1,'name':'强制'},
         {'id':2,'name':'建议'},