Browse Source

8月15日

XMLWAN 2 years ago
parent
commit
d450c02452

+ 8 - 0
src/api/dialysis.js View File

@@ -339,3 +339,11 @@ export function getDialysisParameter(params) {
339 339
     params: params
340 340
   })
341 341
 }
342
+
343
+export function getDialysisGoodTotalCount(params) {
344
+  return request({
345
+    url: '/api/patient/getdialysisgoodtotalcount',
346
+    method: 'get',
347
+    params: params
348
+  })
349
+}

+ 10 - 6
src/xt_pages/outpatientCharges/listTemplate/printTwo.vue View File

@@ -63,11 +63,13 @@
63 63
       <div style="width:20%;text-align:center;">医保编码</div>
64 64
       <div style="width:20%;text-align:center;">项目名称</div>
65 65
       <div style="width:10%;text-align:center;">单价</div>
66
-      <div style="width:10%;text-align:center;">数量</div>
66
+      <div style="width:8%;text-align:center;">数量</div>
67 67
       <div style="width:10%;text-align:center;">金额</div>
68 68
       <div style="width:10%;text-align:center;">先行自付金额</div>
69
-      <div style="width:10%;text-align:center;">自费</div>
70
-      <div style="width:10%;text-align:center;">自费比例</div>
69
+      <div style="width:5%;text-align:center;">全自费</div>
70
+      <div style="width:7%;text-align:center;">自费比例</div>
71
+      <div style="width:10%;text-align:center;">超限价自费金额</div>
72
+
71 73
     </div>
72 74
     <div v-for="(newItem,index) in Object.keys(obj)" :key="index">
73 75
         <div v-if="Object.values(obj)[index].length > 0"  style="border-bottom:1px solid #000;padding:10px 0;">
@@ -89,11 +91,13 @@
89 91
                 <div style="width:20%;text-align:center;" v-if="item.project_id > 0">{{item.project.type == 2?item.project.project.project_name:item.project.good_info.good_name}}</div>
90 92
 
91 93
                 <div style="width:10%;text-align:center;">{{item.pric}}</div>
92
-                <div style="width:10%;text-align:center;">{{item.cnt}}</div>
94
+                <div style="width:8%;text-align:center;">{{item.cnt}}</div>
93 95
                 <div style="width:10%;text-align:center;">{{item.det_item_fee_sumamt}}</div>
94 96
                 <div style="width:10%;text-align:center;">{{item.preselfpay_amt}}</div>
95
-                <div style="width:10%;text-align:center;">{{item.fulamt_ownpay_amt}}</div>
96
-                <div style="width:10%;text-align:center;">{{item.selfpay_prop}}</div>
97
+                <div style="width:5%;text-align:center;">{{item.fulamt_ownpay_amt}}</div>
98
+                <div style="width:7%;text-align:center;">{{item.selfpay_prop}}</div>
99
+              <div style="width:10%;text-align:center;">{{item.overlmt_amt}}</div>
100
+
97 101
             </div>
98 102
         </div>
99 103
     </div>

+ 7 - 1
src/xt_pages/outpatientCharges/statementPrint.vue View File

@@ -47,7 +47,12 @@
47 47
           :paramsObj="paramsObj"
48 48
           :balanceAccounts="balanceAccounts"
49 49
       ></printFive>
50
-      <printOne :info="info" v-else></printOne>
50
+      <printOne :info="info" v-if="org_id != 9990 &&
51
+          org_id != 10138 &&
52
+          org_id != 9504 &&
53
+          org_id != 10028 &&
54
+          org_id != 4 &&
55
+          org_id != 10278 && org_id != 10191"></printOne>
51 56
       <!-- 测试医保环境下表格样式放开以下这条 -->
52 57
       <!-- <testVue :info="info" v-else></testVue> -->
53 58
     </div>
@@ -57,6 +62,7 @@
57 62
 <script>
58 63
 import {uParseTime} from "@/utils/tools";
59 64
 import axios from "axios";
65
+import print from "print-js";
60 66
 
61 67
 import BreadCrumb from "@/xt_pages/components/bread-crumb";
62 68
 import printOne from "./statementTemplate/printOne";

+ 4 - 4
src/xt_pages/outpatientCharges/statementTemplate/printThree.vue View File

@@ -82,9 +82,9 @@
82 82
 
83 83
                             </td>
84 84
                             <td>
85
-                                <span v-if="item.type == 1">{{ subItem.pric }}</span>
86
-                                <span v-if="item.type == 2">{{ subItem.pric }}</span>
87
-                                <span v-if="item.type == 3">{{ subItem.pric }}</span>
85
+                                <span v-if="item.type == 1">{{ subItem.pric.toFixed(2) }}</span>
86
+                                <span v-if="item.type == 2">{{ subItem.pric.toFixed(2) }}</span>
87
+                                <span v-if="item.type == 3">{{ subItem.pric.toFixed(2) }}</span>
88 88
                                 <span v-if="item.type == 4">{{subItem.Total}}</span>
89 89
 
90 90
 
@@ -236,7 +236,7 @@
236 236
                             <td>
237 237
                                 <span v-if="item.type == 1">{{ (subItem.advice.prescribing_number * subItem.pric).toFixed(2) }}</span>
238 238
                                 <span v-if="item.type == 2">{{ (subItem.project.count * subItem.pric).toFixed(2) }}</span>
239
-                                <span v-if="item.type == 3">{{ subItem.Total }}</span>
239
+                                <span v-if="item.type == 3">{{ (subItem.project.count * subItem.pric).toFixed(2) }}</span>
240 240
 <!--                                <span v-if="item.type == 4">{{subItem.Total}}</span>-->
241 241
 
242 242
                             </td>

+ 67 - 4
src/xt_pages/user/dialysisRecord.vue View File

@@ -7,6 +7,8 @@
7 7
     ></patient-sidebar>
8 8
     <div class="patient-app-container app-container">
9 9
       <div style="clearfix">
10
+      
11
+      
10 12
         <el-button
11 13
           style="float:right;"
12 14
           size="small"
@@ -15,6 +17,15 @@
15 17
           icon="el-icon-printer"
16 18
           >打印</el-button
17 19
         >
20
+        <span>&nbsp;&nbsp;&nbsp;&nbsp;</span>
21
+        <el-button
22
+          style="float:right;margin-right:20px"
23
+          size="small"
24
+          @click="exportList"
25
+          type="primary"
26
+          >导出</el-button
27
+        >
28
+        
18 29
         <el-form ref="form" :model="queryParams" label-width="80px">
19 30
           <!-- <el-form-item label="患者时间 : " >
20 31
               <el-select v-model="form.date"   >
@@ -332,7 +343,7 @@
332 343
               <th>透前血压(mmhg)</th>
333 344
               <th>透后血压(mmhg)</th>
334 345
               <th>目标超滤量(L)</th>
335
-              <th>血管通路</th>
346
+              <!-- <th>血管通路</th> -->
336 347
               <th>抗凝剂种类 首剂/维持/总量</th>
337 348
               <th>透析器型号</th>
338 349
               <th>治疗护士</th>
@@ -363,7 +374,7 @@
363 374
                 <td>
364 375
                   {{ item.prescription.target_ultrafiltration }}
365 376
                 </td>
366
-                <td>{{ setVascularAccess(item.prescription) }}</td>
377
+                <!-- <td>{{ setVascularAccess(item.prescription) }}</td> -->
367 378
                 <td>{{ setAnticoagulantsConfit(item.prescription) }}</td>
368 379
                 <td>{{ item.prescription.dialyzer_perfusion_apparatus }}</td>
369 380
                 <td>{{ getNurseName(item.start_nurse) }}</td>
@@ -422,7 +433,7 @@ export default {
422 433
   },
423 434
   methods: {
424 435
     getTime(record){
425
-      console.log("recode2332232332232332",record)
436
+     
426 437
       if(record != null&&record.id > 0) {
427 438
         let actual_treatment_hour = 0
428 439
         let actual_treatment_minute = 0
@@ -431,6 +442,16 @@ export default {
431 442
         return (actual_treatment_hour + actual_treatment_minute).toFixed(2)
432 443
       }
433 444
     },
445
+    getTimeOne(val){
446
+      if(val < 0){
447
+       return ""
448
+      }
449
+     if(val == ""){
450
+       return ""
451
+      }else {
452
+       return uParseTime(val, '{y}-{m}-{d}')
453
+      }
454
+    },
434 455
     changeSearch() {
435 456
       this.getPatientDialysisRecords();
436 457
     },
@@ -616,7 +637,49 @@ export default {
616 637
         path: "/dialysis/details",
617 638
         query: { patient_id: val.patient_id, date: val.dialysis_date }
618 639
       });
619
-    }
640
+    },
641
+    exportList(){
642
+      import('@/vendor/Export2Excel').then(excel => {
643
+         console.log("导出世界",this.recordData)
644
+         if(this.recordData!=null && this.recordData.length > 0){
645
+          for(let i=0;i<this.recordData.length;i++){
646
+            this.recordData[i].dialysis_date_one = this.getTimeOne(this.recordData[i].dialysis_date)
647
+            this.recordData[i].bed_class = this.scheduleType(this.recordData[i].schedule_type)
648
+            this.recordData[i].mode_name = this.modeName(this.recordData[i].prescription.mode_id)
649
+            this.recordData[i].vascularAccess_name = this.setVascularAccess(this.recordData[i].prescription)
650
+            this.recordData[i].AnticoagulantsConfit = this.setAnticoagulantsConfit(this.recordData[i].prescription)
651
+            this.recordData[i].nurse_name = this.recordData[i].role.user_name
652
+            this.recordData[i].doc_name = this.recordData[i].prescription.role.user_name
653
+            this.recordData[i].bed_number = this.recordData[i].partition_name + "-" + this.recordData[i].device_number
654
+            this.recordData[i].dialysis_duration = this.recordData[i].prescription.dialysis_duration
655
+            this.recordData[i].dry_weight = this.recordData[i].predialysis_evaluation.dry_weight
656
+            this.recordData[i].weight_before = this.recordData[i].predialysis_evaluation.weight_before
657
+            this.recordData[i].weight_after = this.recordData[i].assessment_after_dislysis.weight_after
658
+            this.recordData[i].befor_pressure = this.recordData[i].predialysis_evaluation.systolic_blood_pressure + "/" + this.recordData[i].predialysis_evaluation.diastolic_blood_pressure
659
+            this.recordData[i].after_pressure = this.recordData[i].assessment_after_dislysis.systolic_blood_pressure +"/"+this.recordData[i].assessment_after_dislysis.diastolic_blood_pressure
660
+            this.recordData[i].target_ultrafiltration = this.recordData[i].prescription.target_ultrafiltration
661
+
662
+            this.recordData[i].dialyzer_perfusion_apparatus = this.recordData[i].prescription.dialyzer_perfusion_apparatus
663
+            if(this.recordData[i].dialyzer_perfusion_apparatus == ""){
664
+              this.recordData[i].dialyzer_perfusion_apparatus = this.recordData[i].prescription.dialysis_dialyszers + "/" + this.recordData[i].prescription.dialysis_irrigation
665
+            }
666
+          }
667
+         }
668
+         
669
+         const tHeader = ['透析日期','班次', '分区机号', '透析模式','透析时长','干体重','透前体重','透后体重','透前血压','透后血压','目标超滤量','抗凝剂 首剂/维持/总量','透析器型号','治疗护士','治疗医生']
670
+         const filterVal = ['dialysis_date_one','bed_class', 'bed_number', 'mode_name','dialysis_duration','dry_weight','weight_before','weight_after','befor_pressure','after_pressure','target_ultrafiltration','AnticoagulantsConfit','dialyzer_perfusion_apparatus','nurse_name','doc_name']
671
+        
672
+         const data = this.formatJson(filterVal, this.recordData)
673
+         excel.export_json_to_excel({
674
+           header: tHeader,
675
+           data,
676
+           filename: '透析记录'
677
+         })
678
+        })
679
+      },
680
+      formatJson(filterVal, jsonData) {
681
+        return jsonData.map(v => filterVal.map(j => v[j]));
682
+      },
620 683
   },
621 684
   created() {
622 685
     const id = this.$route.params && this.$route.params.id;