Browse Source

Merge branch '20201109_pc_vue_new_branch' of http://git.shengws.com/csx/Vue_New into 20201109_pc_vue_new_branch

XMLWAN 3 years ago
parent
commit
be1103b535

+ 68 - 58
src/xt_pages/hospitalStation/invoiceTemplate/printOne.vue View File

@@ -1,118 +1,123 @@
1 1
 <template>
2 2
     <div id='invoice-print'>
3 3
         <div style="display:flex;">
4
-            <div style="position: absolute;top:50px;left:70px;">{{ list.order_number }}</div>
4
+            <div style="position: absolute;top:70px;left:70px;">{{ list.order_number }}</div>
5 5
             <!-- <div>{{ list.id_card_no }}</div> -->
6 6
         </div>
7 7
         <div style="display:flex;justify-content: space-between;">
8 8
             <!-- <div>{{ list.department_name }}</div> -->
9
-            <div  style="position: absolute;top:50px;left:300px">{{ list.number }}</div>
9
+            <div  style="position: absolute;top:70px;left:300px">住院号:{{ list.number }}</div>
10 10
             <div></div>
11
-            <div  style="position: absolute;left:560px;top:50px;">
11
+            <div  style="position: absolute;left:560px;top:70px;">
12 12
                 <span>{{ printDate.slice(0,4) }}</span>
13 13
                 <span>{{ printDate.slice(5,7) }}</span>
14 14
                 <span>{{ printDate.slice(8,11) }}</span>
15 15
             </div>
16 16
         </div>
17 17
         <div style="display:flex;justify-content: space-between;">
18
-            <div style="position: absolute;top:70px;left:120px;"> {{ paramsObj.name }}</div>
18
+            <div style="position: absolute;top:90px;left:120px;"> {{ paramsObj.name }}</div>
19
+            <div style="position: absolute;top:90px;left:240px;">√</div>
19 20
             <!-- <div>{{ list.pay_way }}</div> -->
20
-            <div style="position: absolute;top:70px;left:460px;">{{ paramsObj.setl_time.split(' ')[0] }}</div>
21
-            <div style="position: absolute;top:70px;left:560px;">{{ paramsObj.setl_time.split(' ')[0] }}</div>
21
+            <!-- <div style="position: absolute;top:70px;left:460px;">{{ paramsObj.setl_time.split(' ')[0] }}</div>
22
+            <div style="position: absolute;top:70px;left:560px;">{{ paramsObj.setl_time.split(' ')[0] }}</div> -->
22 23
         </div>
23 24
         <div style="display:flex;justify-content: space-between;">
24 25
             <!-- <div>{{ paramsObj.gend == 1 ? '男' : '女' }}</div> -->
25
-            <div style="position: absolute;top:90px;left:260px;">{{ totalPrice - list.psn_cash_money }}</div>
26
-            <div style="position: absolute;top:90px;left:440px;">{{ list.psn_cash_money }}</div>
27
-            <div style="position: absolute;top:90px;left:580px;">{{ list.pay_way }}</div>
26
+            <div style="position: absolute;top:110px;left:260px;">{{ totalPrice - list.psn_cash_money }}</div>
27
+            <div style="position: absolute;top:110px;left:440px;">{{ list.psn_cash_money }}</div>
28
+            <div style="position: absolute;top:110px;left:580px;">门特</div>
28 29
         </div>
29 30
         <div style="display:flex;justify-content: space-between;">
30
-            <div style="position: absolute;top:140px;left:40px">西药</div>
31
-            <div style="position: absolute;top:140px;left:110px">{{ list.westernMedicineCostTotal }}</div>
32
-            <div style="position: absolute;top:140px;left:180px">检查费</div>
33
-            <div style="position: absolute;top:140px;left:260px">{{ list.checkCostTotal }}</div>
34
-            <div style="position: absolute;top:140px;left:340px">治疗费</div>
35
-            <div style="position: absolute;top:140px;left:420px">{{ list.treatCostTotal }}</div>
36
-            <div style="position: absolute;top:140px;left:500px">床位费</div>
37
-            <div style="position: absolute;top:140px;left:580px">{{ list.bedCostTotal }}</div>
31
+            <div style="position: absolute;top:160px;left:40px">西药</div>
32
+            <div style="position: absolute;top:160px;left:110px">{{ list.westernMedicineCostTotal }}</div>
33
+            <div style="position: absolute;top:160px;left:180px">检查费</div>
34
+            <div style="position: absolute;top:160px;left:260px">{{ list.checkCostTotal }}</div>
35
+            <div style="position: absolute;top:160px;left:340px">治疗费</div>
36
+            <div style="position: absolute;top:160px;left:420px">{{ list.treatCostTotal }}</div>
37
+            <div style="position: absolute;top:160px;left:500px">床位费</div>
38
+            <div style="position: absolute;top:160px;left:580px">{{ list.bedCostTotal }}</div>
38 39
         </div>
39 40
         <div style="display:flex;justify-content: space-between;">
40
-            <div style="position: absolute;top:170px;left:40px">中成药</div>
41
-            <div style="position: absolute;top:170px;left:110px">{{ list.chineseTraditionalMedicineCostTotal }}</div>
42
-            <div style="position: absolute;top:170px;left:180px">化验费</div>
43
-            <div style="position: absolute;top:170px;left:260px">{{ list.laboratoryCostTotal }}</div>
44
-            <div style="position: absolute;top:170px;left:340px">手术费</div>
45
-            <div style="position: absolute;top:170px;left:420px">{{ list.operationCostTotal }}</div>
46
-            <div style="position: absolute;top:170px;left:500px">其他费</div>
47
-            <div style="position: absolute;top:170px;left:580px">{{ list.otherCostTotal }}</div>
41
+            <div style="position: absolute;top:190px;left:40px">中成药</div>
42
+            <div style="position: absolute;top:190px;left:110px">{{ list.chineseTraditionalMedicineCostTotal }}</div>
43
+            <div style="position: absolute;top:190px;left:180px">化验费</div>
44
+            <div style="position: absolute;top:190px;left:260px">{{ list.laboratoryCostTotal }}</div>
45
+            <div style="position: absolute;top:190px;left:340px">手术费</div>
46
+            <div style="position: absolute;top:190px;left:420px">{{ list.operationCostTotal }}</div>
47
+            <div style="position: absolute;top:190px;left:500px">其他费</div>
48
+            <div style="position: absolute;top:190px;left:580px">{{ list.otherCostTotal }}</div>
48 49
         </div>
49 50
         <div style="display:flex;justify-content: space-between;">
50
-            <div style="position: absolute;top:190px;left:40px"></div>
51
-            <div style="position: absolute;top:190px;left:110px"></div>
52
-            <div style="position: absolute;top:190px;left:180px"></div>
53
-            <div style="position: absolute;top:190px;left:260px"></div>
54
-            <div style="position: absolute;top:190px;left:340px">材料费</div>
55
-            <div style="position: absolute;top:190px;left:420px">{{ list.materialCostTotal }}</div>
56
-            <div style="position: absolute;top:190px;left:500px"></div>
57
-            <div style="position: absolute;top:190px;left:580px"></div>
51
+            <div style="position: absolute;top:210px;left:40px"></div>
52
+            <div style="position: absolute;top:210px;left:110px"></div>
53
+            <div style="position: absolute;top:210px;left:180px"></div>
54
+            <div style="position: absolute;top:210px;left:260px"></div>
55
+            <div style="position: absolute;top:210px;left:340px">材料费</div>
56
+            <div style="position: absolute;top:210px;left:420px">{{ list.materialCostTotal }}</div>
57
+            <div style="position: absolute;top:210px;left:500px"></div>
58
+            <div style="position: absolute;top:210px;left:580px"></div>
58 59
         </div>
59 60
         <div>
60 61
             <span>
61
-            <span  style="position: absolute;top:240px;left:180px">
62
+            <span  style="position: absolute;top:260px;left:180px">
62 63
                 <span v-if="zhongwen.indexOf('万') > -1 && zhongwen.indexOf('拾') > -1 && zhongwen.indexOf('拾') == 1">
63 64
                     {{ zhongwen.substring(0,1) }}
64 65
                 </span>
65 66
                 <span v-else>零</span>
66 67
             </span>
67
-            <span  style="position: absolute;top:240px;left:220px">
68
+            <span  style="position: absolute;top:260px;left:220px">
68 69
                 <span v-if="zhongwen.indexOf('万') > -1">
69 70
                     {{ zhongwen.substring(zhongwen.indexOf('万') - 1,zhongwen.indexOf('万')) }}
70 71
                 </span>
71 72
                 <span v-else>零</span>
72 73
             </span>
73
-            <span  style="position: absolute;top:240px;left:260px">
74
+            <span  style="position: absolute;top:260px;left:260px">
74 75
                 <span v-if="zhongwen.indexOf('仟') > -1">
75 76
                     {{ zhongwen.substring(zhongwen.indexOf('仟') - 1,zhongwen.indexOf('仟')) }}
76 77
                 </span>
77 78
                 <span v-else>零</span>
78 79
             </span>
79
-            <span  style="position: absolute;top:240px;left:300px">
80
+            <span  style="position: absolute;top:260px;left:300px">
80 81
                 <span v-if="zhongwen.indexOf('佰') > -1">
81 82
                     {{ zhongwen.substring(zhongwen.indexOf('佰') - 1,zhongwen.indexOf('佰')) }}
82 83
                 </span>
83 84
                 <span v-else>零</span>
84 85
             </span>
85
-            <span style="position: absolute;top:240px;left:340px">
86
+            <span style="position: absolute;top:260px;left:340px">
86 87
                 <span v-if="zhongwen.indexOf('拾') > -1">
87 88
                     {{ zhongwen.substring(zhongwen.indexOf('拾') - 1,zhongwen.indexOf('拾')) }}
88 89
                 </span>
89 90
                 <span v-else>零</span>
90 91
             </span>
91
-            <span  style="position: absolute;top:240px;left:380px">
92
+            <span  style="position: absolute;top:260px;left:380px">
92 93
                 <span v-if="zhongwen.indexOf('元') > -1 && zhongwen.substring(zhongwen.indexOf('元') - 1,zhongwen.indexOf('元')) != '拾'">
93 94
                     {{ zhongwen.substring(zhongwen.indexOf('元') - 1,zhongwen.indexOf('元')) }}
94 95
                 </span>
95 96
                 <span v-else>零</span>
96 97
             </span>
97
-            <span  style="position: absolute;top:240px;left:420px">
98
+            <span  style="position: absolute;top:260px;left:420px">
98 99
                 <span v-if="zhongwen.indexOf('角') > -1">
99 100
                     {{ zhongwen.substring(zhongwen.indexOf('角') - 1,zhongwen.indexOf('角')) }}
100 101
                 </span>
101 102
                 <span v-else>零</span>
102 103
             </span>
103
-            <span  style="position: absolute;top:240px;left:460px">
104
+            <span  style="position: absolute;top:260px;left:460px">
104 105
                 <span v-if="zhongwen.indexOf('分') > -1">
105 106
                     {{ zhongwen.substring(zhongwen.indexOf('分') - 1,zhongwen.indexOf('分')) }}
106 107
                 </span>
107 108
                 <span v-else>零</span>
108 109
             </span>
109 110
             </span>
110
-            <span style="position: absolute;top:240px;left:540px">{{ totalPrice }}</span>
111
+            <span style="position: absolute;top:260px;left:540px">{{ totalPrice }}</span>
111 112
         </div>
113
+        <div style="position: absolute;top:300px;left:340px">银联:0</div>
114
+        <div style="position: absolute;top:300px;left:400px">现金:{{ list.psn_cash_money }}</div>
115
+        <div style="position: absolute;top:300px;left:480px">记账:0</div>
116
+        <div style="position: absolute;top:300px;left:540px">社保卡:0</div>
112 117
         <div>
113
-            <div style="position: absolute;top:320px;left:70px">{{ org_name }}</div>
114
-            <div v-if="org_id == 9990" style="position: absolute;top:320px;left:300px">钱玉玲</div>
115
-            <div v-if="org_id == 9990" style="position: absolute;top:320px;left:420px">陈国杰</div>
118
+            <div style="position: absolute;top:340px;left:120px">{{ org_name }}</div>
119
+            <div v-if="org_id == 9990" style="position: absolute;top:340px;left:300px">钱玉玲</div>
120
+            <div v-if="org_id == 9990" style="position: absolute;top:340px;left:420px">陈国杰</div>
116 121
         </div>
117 122
     </div>
118 123
 </template>
@@ -135,28 +140,33 @@ export default {
135 140
         }
136 141
     },
137 142
     created(){
138
-        console.log('paramsObj',this.paramsObj);
143
+        console.log('paramsObj',this.paramsObj)
139 144
         let params = {
140 145
             order_id: this.paramsObj.order_id,
141 146
             patient_id: this.paramsObj.patient_id,
142
-        };
143
-        this.getInvoice(params);
144
-        var data = new Date();
145
-        var month =data.getMonth() < 9 ? "0" + (data.getMonth() + 1) : data.getMonth() + 1;
146
-        var date = data.getDate() <= 9 ? "0" + data.getDate() : data.getDate();
147
-        this.printDate = data.getFullYear() + "-" + month + "-" + date;
147
+        }
148
+        this.getInvoice(params)
149
+        // var data = new Date();
150
+        // var month =data.getMonth() < 9 ? "0" + (data.getMonth() + 1) : data.getMonth() + 1;
151
+        // var date = data.getDate() <= 9 ? "0" + data.getDate() : data.getDate();
152
+        // this.printDate = data.getFullYear() + "-" + month + "-" + date;
148 153
         // this.smalltoBIG(982732.21)
149
-        this.org_id = this.$store.getters.xt_user.org_id;
154
+        this.org_id = this.$store.getters.xt_user.org_id
150 155
         this.org_name = this.$store.getters.xt_user.org.org_name
151 156
     },
152 157
     methods:{
153 158
         getInvoice(params){
154 159
             getInvoice(params).then((res) => {
155
-                console.log('res',res);
156
-                this.list = res.data.data;
160
+                console.log('res',res)
161
+                this.list = res.data.data
157 162
                 this.totalPrice = this.list.westernMedicineCostTotal + this.list.checkCostTotal + this.list.treatCostTotal + this.list.bedCostTotal + this.list.chineseTraditionalMedicineCostTotal +
158
-                                    this.list.laboratoryCostTotal + this.list.operationCostTotal + this.list.otherCostTotal + this.list.materialCostTotal;
163
+                                    this.list.laboratoryCostTotal + this.list.operationCostTotal + this.list.otherCostTotal + this.list.materialCostTotal
159 164
                 this.smalltoBIG(this.totalPrice)
165
+                // var data = new Date(res.data.data.date * 1000);
166
+                var data = new Date(this.paramsObj.setl_time);
167
+                var month =data.getMonth() < 9 ? "0" + (data.getMonth() + 1) : data.getMonth() + 1;
168
+                var date = data.getDate() <= 9 ? "0" + data.getDate() : data.getDate();
169
+                this.printDate = data.getFullYear() + "-" + month + "-" + date;
160 170
             })
161 171
         },
162 172
         smalltoBIG(n) {
@@ -186,7 +196,7 @@ export default {
186 196
             }
187 197
 
188 198
             var unit = "仟佰拾亿仟佰拾万仟佰拾元角分", str = "";
189
-            n += "00";
199
+            n += "00";  
190 200
 
191 201
             var indexpoint = n.indexOf('.');  // 如果是小数,截取小数点前面的位数
192 202
 
@@ -211,7 +221,7 @@ export default {
211 221
                 let params = {
212 222
                     order_id: val.order_id,
213 223
                     patient_id: val.patient_id,
214
-                };
224
+                }
215 225
                 this.getInvoice(params)
216 226
 
217 227
             },

+ 30 - 3
src/xt_pages/hospitalStation/outpatientChargesManagement.vue View File

@@ -108,8 +108,12 @@
108 108
                         size="small" @click="open(7)" type="primary"
109 109
                       >撤销入院
110 110
                       </el-button>
111
+                      <el-button
112
+                        size="small" @click="invoicePrint" type="primary"
113
+                      >发票打印
114
+                      </el-button>
111 115
                     </div>
112
-
116
+                    
113 117
 
114 118
 
115 119
                 </div>
@@ -329,6 +333,13 @@
329 333
             <new-statement-print-two :params-obj="newOrderObj"></new-statement-print-two>
330 334
             <!--<newStatementPrint ref="print" :paramsObj='newOrderObj'></newStatementPrint>-->
331 335
         </el-dialog>
336
+        <el-dialog
337
+                class="centerDialog"
338
+                width="1200px"
339
+                title="打印"
340
+                :visible.sync="invoiceVisible">
341
+            <invoice-print ref="print" :invoiceParams='invoiceParams'></invoice-print>
342
+        </el-dialog>
332 343
     </div>
333 344
 
334 345
 </template>
@@ -364,6 +375,7 @@
364 375
   import NewStatementPrintTwo from './newStatementPrintTwo'
365 376
   import RegisterDialog9504 from './components/registerDialog9504'
366 377
   import ChargePrescriptionTable from "./components/ChargePrescriptionTable";
378
+  import invoicePrint from './invoicePrint'
367 379
 
368 380
   const moment = require('moment');
369 381
   export default {
@@ -381,7 +393,8 @@
381 393
       medicalInsuranceRefund,
382 394
       additionalCharges,
383 395
       treatPrint,
384
-      statementPrint
396
+      statementPrint,
397
+      invoicePrint
385 398
 
386 399
     },
387 400
     data() {
@@ -467,7 +480,9 @@
467 480
         sick: [],
468 481
         diagnoses: [],
469 482
 
470
-        department: []
483
+        department: [],
484
+        invoiceVisible:false,
485
+        invoiceParams:{},
471 486
 
472 487
       }
473 488
     },
@@ -2797,6 +2812,18 @@
2797 2812
 
2798 2813
         }
2799 2814
 
2815
+      },
2816
+      invoicePrint(obj){
2817
+        console.log(this.hisPatientInfo)
2818
+        let paramsObj = {
2819
+          order_id: this.hisPatientInfo.id,
2820
+          patient_id: this.hisPatientInfo.patient_id,
2821
+          name:this.hisPatientInfo.name,
2822
+          gend:this.hisPatientInfo.gend,
2823
+          setl_time:this.hisPatientInfo.out_hosptial_time
2824
+        }
2825
+        this.invoiceParams = paramsObj
2826
+        this.invoiceVisible = true
2800 2827
       }
2801 2828
     },
2802 2829
     mounted() {

+ 1 - 1
src/xt_pages/outpatientCharges/summary.vue View File

@@ -511,7 +511,7 @@
511 511
       invoicePrint(obj){
512 512
         console.log(obj)
513 513
         let paramsObj = {
514
-          order_id: obj.order_info.order_id,
514
+          order_id: obj.id,
515 515
           patient_id: obj.patient_id,
516 516
           name:obj.patient.name,
517 517
           age:obj.age,