Explorar el Código

12月5 打印单

yq1 hace 4 meses
padre
commit
8d9c4b9885

+ 6 - 2
src/xt_pages/outpatientCharges/statementPrint.vue Ver fichero

@@ -69,7 +69,9 @@
69 69
       <!-- 顺有好 -->
70 70
       <printSixtheen :info="info" v-if="org_id == 10697"></printSixtheen>
71 71
       <!-- 杏康 -->
72
-      <printSeventheen  :info="info" v-if=" org_id == 10721 || org_id == 0"></printSeventheen>
72
+      <printSeventheen  :info="info" v-if=" org_id == 10721"></printSeventheen>
73
+      <!-- 乐安祥康 -->
74
+      <printeighteen :info="info" v-if=" org_id == 10726 || org_id == 0"></printeighteen>
73 75
       <printOne :info="info" v-if=" org_id != 9990 &&
74 76
             org_id != 10138 && org_id != 9504 && org_id != 10028 &&
75 77
             org_id != 10610 && org_id !=10537 && org_id !=10697 &&
@@ -110,6 +112,7 @@ import printfourteen from './statementTemplate/printfourteen'
110 112
 import printfivetheen from './statementTemplate/printfivetheen'
111 113
 import printSixtheen from './statementTemplate/printSixtheen'
112 114
 import printSeventheen from './statementTemplate/printSeventheen'
115
+import printeighteen from './statementTemplate/printeighteen'
113 116
 export default {
114 117
   name: 'dialysisPrintOrder',
115 118
   components: {
@@ -130,7 +133,8 @@ export default {
130 133
     printfourteen,
131 134
     printfivetheen,
132 135
     printSixtheen,
133
-    printSeventheen
136
+    printSeventheen,
137
+    printeighteen
134 138
   },
135 139
   props: {
136 140
     paramsObj: Object

+ 382 - 0
src/xt_pages/outpatientCharges/statementTemplate/printeighteen.vue Ver fichero

@@ -0,0 +1,382 @@
1
+<template>
2
+  <div  id="statement-print" class="statement-print"
3
+       style="position: relative;">
4
+    <div class="print-content">
5
+      <div class="print-title">
6
+        <h1 style="text-align: center;">江西省抚州市医疗保险医疗费用结算单</h1>
7
+      </div>
8
+
9
+      <div class="print-tab" style="margin: 0px auto; text-align: center;font-size: 16px;">
10
+        <table class="statementTable" border="1">
11
+          <tr>
12
+            <td width="100">机构编码</td>
13
+            <td width="150">{{info.fixmedins_code}}</td>
14
+            <td width="120">医保结算级别</td>
15
+            <td width="150" colspan="2">
16
+              <span  v-if="info.hosp_lv == '1'">三级特等</span>
17
+              <span  v-else-if="info.hosp_lv == '2'">三级甲等</span>
18
+              <span v-else-if="info.hosp_lv == '3'">三级乙等</span>
19
+              <span v-else-if="info.hosp_lv == '4'">三级丙等</span>
20
+              <span v-else-if="info.hosp_lv == '5'">二级甲等</span>
21
+              <span v-else-if="info.hosp_lv == '6'">二级乙等</span>
22
+              <span v-else-if="info.hosp_lv == '7'">二级丙等</span>
23
+              <span  v-else-if="info.hosp_lv == '8'">一级甲等</span>
24
+              <span v-else-if="info.hosp_lv == '9'">一级乙等</span>
25
+              <span v-else-if="info.hosp_lv == '10'">一级丙等</span>
26
+              <span  v-else-if="info.hosp_lv == '11'">无等级</span>
27
+              <span  v-else></span>
28
+            </td>
29
+            <td width="100">机构名称</td>
30
+            <td colspan="4">{{info.fixmedins_name}}</td>
31
+          </tr>
32
+          <tr>
33
+            <td width="100">姓名</td>
34
+            <td width="150">{{info.psn_name}}</td>
35
+            <td width="120">性别</td>
36
+            <td width="50" v-if="info.gend == '1'">男</td>
37
+            <td width="50" v-if="info.gend == '2'">女</td>
38
+            <td width="100">出生日期</td>
39
+            <td width="100">{{getBirth(info.certno)}}</td>
40
+            <td width="100">人员类别</td>
41
+            <td  width="150" v-if="info.psn_type == '11'">在职</td>
42
+            <td  width="150" v-else-if="info.psn_type == '1101'">职工在职</td>
43
+            <td  width="150" v-else-if="info.psn_type == '1102'">公务员在职</td>
44
+            <td  width="150" v-else-if="info.psn_type == '1103'">灵活就业人员在职</td>
45
+            <td  width="150" v-else-if="info.psn_type == '1160'">地方其他扩展人员</td>
46
+
47
+            <td  width="150" v-else-if="info.psn_type == '12'">退休人员</td>
48
+            <td  width="150" v-else-if="info.psn_type == '1201'">职工退休</td>
49
+            <td  width="150" v-else-if="info.psn_type == '1202'">公务员退休</td>
50
+            <td  width="150" v-else-if="info.psn_type == '1203'">灵活就业人员退休</td>
51
+            <td  width="150" v-else-if="info.psn_type == '1260'">地方其他扩展人员</td>
52
+
53
+            <td  width="150" v-else-if="info.psn_type == '13'">离休</td>
54
+            <td  width="150" v-else-if="info.psn_type == '1300'">离休人员</td>
55
+            <td  width="150" v-else-if="info.psn_type == '1360'">地方其他扩展人员</td>
56
+
57
+            <td  width="150" v-else-if="info.psn_type == '14'">居民(未成年)</td>
58
+            <td  width="150" v-else-if="info.psn_type == '1401'">新生儿</td>
59
+            <td  width="150" v-else-if="info.psn_type == '1402'">学龄前儿童</td>
60
+            <td  width="150" v-else-if="info.psn_type == '1403'">中小学生</td>
61
+            <td  width="150" v-else-if="info.psn_type == '1404'">大学生</td>
62
+            <td  width="150" v-else-if="info.psn_type == '1405'">未成年(未入学)</td>
63
+
64
+            <td  width="150" v-else-if="info.psn_type == '15'">居民(成年)</td>
65
+            <td  width="150" v-else-if="info.psn_type == '1501'">普通居民(成年)</td>
66
+            <td  width="150" v-else-if="info.psn_type == '1560'">地方其他扩展身份</td>
67
+
68
+            <td  width="150" v-else-if="info.psn_type == '16'">居民(老年)</td>
69
+            <td width="150" v-else></td>
70
+            <td width="120">公务员标志</td>
71
+            <td width="80">否</td>
72
+            
73
+          </tr>
74
+          <tr>
75
+            <td>单位名称</td>
76
+            <td colspan="4">{{info.emp_name}}</td>
77
+            <td width="100">联系电话</td>
78
+            <td width="100">{{info.patient.phone}}</td>
79
+            <td width="150">人员身份类别</td>
80
+            <td colspan="2"></td>
81
+          </tr>
82
+          <tr>
83
+            <td width="100">结算ID</td>
84
+            <td width="150"></td>
85
+            <td width="120">住院号</td>
86
+            <td width="150" colspan="2">{{info.number}}</td>
87
+            <td width="100">医疗类别</td>
88
+            <td width="150">
89
+              <span v-if="info.med_type == '11'">普通门诊</span>
90
+              <span v-if="info.med_type == '12'">门诊挂号</span>
91
+              <span v-if="info.med_type == '13'">急诊</span>
92
+              <span v-if="info.med_type == '14'">门诊特殊病</span>
93
+              <span v-if="info.med_type == '15'">门诊统筹</span>
94
+              <span v-if="info.med_type == '16'">门诊慢性病</span>
95
+              <span v-if="info.med_type == '21'">普通住院</span>
96
+            </td>
97
+            <td width="150">住院天数</td>
98
+            <td colspan="2">{{getDay(info.begndate,info.enddate)}}</td>
99
+          </tr>
100
+          <tr>
101
+            <td>身份证号</td>
102
+            <td colspan="4">{{info.certno}}</td>
103
+            <td width="100">险种</td>
104
+            <td width="100">
105
+              <span v-if="info.insutype == '310'">职工基本医疗保险</span>
106
+              <span v-if="info.insutype == '320'">公务员医疗补助</span>
107
+              <span v-if="info.insutype == '330'">大额医疗费用补助</span>
108
+              <span v-if="info.insutype == '340'">离休人员医疗保障</span>
109
+              <span v-if="info.insutype == '390'">城乡居民基本医疗保险</span>
110
+              <span v-if="info.insutype == '392'">城乡居民大病医疗保险</span>
111
+              <span v-if="info.insutype == '510'">生育保险</span>
112
+            </td>
113
+            <td width="150">参保医保区划</td>
114
+            <td colspan="2"></td>
115
+          </tr>
116
+          <tr>
117
+            <td width="100">科别</td>
118
+            <td width="150">门诊</td>
119
+            <td width="120">床号</td>
120
+            <td width="150" colspan="2"></td>
121
+            <td width="100">入院日期</td>
122
+            <td width="150">{{info.begndate ? info.begndate.split(' ')[0] : ''}}</td>
123
+            <td width="150">出院日期</td>
124
+            <td colspan="2">{{info.enddate ? info.enddate.split(' ')[0] : ''}}</td>
125
+          </tr>
126
+          <tr>
127
+            <td width="100">入院主要诊断</td>
128
+            <td colspan="2">{{info.dise_name}}</td>
129
+            <td width="150" colspan="2">出院主要诊断</td>
130
+            <td colspan="2">{{info.dise_name}}</td>
131
+            <td width="150">结算时间</td>
132
+            <td colspan="2">{{info.setl_time ? info.setl_time.split(' ')[0] : ''}}</td>
133
+          </tr>
134
+          <tr>
135
+            <td width="100">项目名称</td>
136
+            <td width="200" colspan="2">金额</td>
137
+            <td width="200" colspan="2">符合政策范围</td>
138
+            <td width="250" colspan="2">先行自付 </td>
139
+            <td width="150">全自费</td>
140
+            <td colspan="2">超限价</td> 
141
+          </tr>
142
+          <tr v-if="info.treat_cost_total > 0">
143
+            <td width="100">治疗费</td>
144
+            <td width="200" colspan="2">{{info.treat_cost_total}}</td>
145
+            <td width="200" colspan="2">{{info.treatInscpTotal}}</td>
146
+            <td width="250" colspan="2">{{info.treat_cost_part_self_total}}</td>
147
+            <td width="150">{{info.treatSelfTotal}}</td>
148
+            <td colspan="2">{{info.treat_cost_self_total}}</td>
149
+          </tr>
150
+          <tr>
151
+            <td width="100">护理费</td>
152
+            <td width="200" colspan="2"></td>
153
+            <td width="200" colspan="2"></td>
154
+            <td width="250" colspan="2"></td>
155
+            <td width="150"></td>
156
+            <td colspan="2"></td>
157
+          </tr>
158
+          <tr v-if="info.material_cost_total > 0">
159
+            <td width="100">卫生材料费</td>
160
+            <td width="200" colspan="2">{{info.material_cost_total}}</td>
161
+            <td width="200" colspan="2">{{info.materialInscpTotal}}</td>
162
+            <td width="250" colspan="2">{{info.material_cost_part_self_total}}</td>
163
+            <td width="150">{{info.materialSelfTotal}}</td>
164
+            <td colspan="2">{{info.material_cost_self_total}}</td>
165
+          </tr>
166
+          <tr v-if="info.western_medicine_cost_total > 0">
167
+            <td width="100">西药费</td>
168
+            <td width="200" colspan="2">{{info.western_medicine_cost_total}}</td>
169
+            <td width="200" colspan="2">{{info.westernMedicineInscpTotal}}</td>
170
+            <td width="250" colspan="2">{{info.western_medicine_cost_part_self_total}}</td>
171
+            <td width="150">{{info.westernMedicineSelfTotal}}</td>
172
+            <td colspan="2">{{info.western_medicine_cost_self_total}}</td>
173
+          </tr>
174
+          <tr>
175
+            <td width="100">金额合计</td>
176
+            <td width="200" colspan="2">
177
+              {{(parseFloat(info.treat_cost_total) + parseFloat(info.material_cost_total) + 
178
+                  parseFloat(info.western_medicine_cost_total) ).toFixed(2) 
179
+              }}
180
+            </td>
181
+            <td width="200" colspan="2">
182
+              {{(parseFloat(info.treatInscpTotal) + parseFloat(info.materialInscpTotal) + 
183
+                  parseFloat(info.westernMedicineInscpTotal) ).toFixed(2) 
184
+              }}
185
+            </td>
186
+            <td width="250" colspan="2">
187
+              {{(parseFloat(info.treat_cost_part_self_total) + parseFloat(info.material_cost_part_self_total) + 
188
+                  parseFloat(info.western_medicine_cost_part_self_total) ).toFixed(2) 
189
+              }}
190
+            </td>
191
+            <td width="150">
192
+              {{(parseFloat(info.treatSelfTotal) + parseFloat(info.materialSelfTotal) + 
193
+                  parseFloat(info.westernMedicineSelfTotal) ).toFixed(2) 
194
+              }}
195
+            </td>
196
+            <td colspan="2">
197
+              {{(parseFloat(info.treat_cost_self_total) + parseFloat(info.material_cost_self_total) + 
198
+                  parseFloat(info.western_medicine_cost_self_total) ).toFixed(2) 
199
+              }}
200
+            </td>
201
+          </tr>
202
+          <tr>
203
+            <td colspan="3">起付线</td>
204
+            <td colspan="2">
205
+              {{info.new_order.act_pay_dedc}}
206
+            </td>
207
+            <td colspan="2">基本统筹基金支付</td>
208
+            <td colspan="3">{{info.hifp_pay}}</td>
209
+          </tr>
210
+          <tr>
211
+            <td colspan="3">大病基金支付</td>
212
+            <td colspan="2">
213
+              {{info.hifmi_pay}}
214
+            </td>
215
+            <td colspan="2">医疗救助基金支付</td>
216
+            <td colspan="3">{{info.maf_pay}}</td>
217
+          </tr>
218
+          <tr>
219
+            <td colspan="3">重大病疾病补充保险支付</td>
220
+            <td colspan="2">
221
+              {{info.new_order.hifmi_pay}}
222
+            </td>
223
+            <td colspan="2">公务员补助支付</td>
224
+            <td colspan="3">
225
+              {{info.new_order.cvlserv_pay }}
226
+            </td>
227
+          </tr>
228
+          <tr>
229
+            <td colspan="3">其他基金支付</td>
230
+            <td colspan="2">{{info.oth_pay}}</td>
231
+            <td colspan="2">个人帐户支付</td>
232
+            <td colspan="3">{{info.acct_pay?info.acct_pay.toFixed(2):0}}</td>
233
+          </tr>
234
+          <tr>
235
+            <td colspan="3">医院垫付金额</td>
236
+            <td colspan="2">
237
+              {{info.new_order.hosp_part_amt ? info.new_order.hosp_part_amt :'0'}}
238
+            </td>
239
+            <td colspan="2">个人现金支付</td>
240
+            <td colspan="3">
241
+              {{info.new_order.psn_cash_pay}}
242
+            </td>
243
+          </tr>
244
+          <tr>
245
+            <td colspan="10" style="text-align: left;">
246
+              本次就医:总费用:{{info.medfee_sumamt}}元&nbsp; 基金支付:{{info.fund_pay_sumamt}}元 &nbsp;个人帐户:{{info.acct_pay?info.acct_pay.toFixed(2):0}}元 &nbsp;
247
+              共济帐户:0元 &nbsp;个人现金:{{info.new_order.psn_cash_pay}}元 &nbsp; 账户余额:0元
248
+            </td>
249
+          </tr>
250
+          <tr>
251
+            <td colspan="5" style="border-right: 0;text-align: left;">
252
+              <span>备注:其他基金支付包含军转、财政、慈善、商保等支付来源</span>
253
+            </td>
254
+            <td colspan="5" style="border-left: 0;text-align: left;">
255
+              <span>打印时间:{{getNowTime()}}</span>
256
+            </td>
257
+          </tr>
258
+          <tr>
259
+            <td colspan="5" style="border-right: 0;text-align: left;">
260
+              <span>经办人签名:</span>
261
+            </td>
262
+            <td colspan="5" style="border-left: 0;text-align: left;">
263
+              <span>领款人签名:</span>
264
+            </td>
265
+          </tr>
266
+        </table>
267
+      </div>
268
+    </div>
269
+
270
+  </div>
271
+</template>
272
+<script>
273
+import { getChargePrint } from '@/api/project/project'
274
+import { uParseTime } from '@/utils/tools'
275
+
276
+export default {
277
+data() {
278
+  return {
279
+    list: {},
280
+    prescription: [],
281
+    patient: {},
282
+    orgname: '',
283
+
284
+    result: {},
285
+    org_code: '',
286
+    patient_name: '',
287
+    doctor_code: '',
288
+    doctor_name: '',
289
+
290
+    name_arr: [],
291
+    spec_arr: [],
292
+    count_arr: [],
293
+    price_arr: [],
294
+    total_arr: []
295
+
296
+  }
297
+},
298
+props: {
299
+  paramsObj: Object,
300
+  info: {
301
+    type: Object,
302
+    default: function() {
303
+      return {}
304
+    }
305
+  },
306
+  balanceAccounts: Object
307
+},
308
+methods: {
309
+  getBirth(idNo){
310
+    var year = idNo.substring(6, 10);
311
+    var month = idNo.substring(10, 12);
312
+    var day = idNo.substring(12, 14);
313
+    return  year + '-' + month + '-' + day;
314
+  },
315
+  getDay(dateString1,dateString2){
316
+    var  startDate = Date.parse(dateString1);
317
+    var  endDate = Date.parse(dateString2);
318
+    if (startDate>endDate){
319
+      return 0;
320
+    }
321
+    if (startDate==endDate){
322
+      return 1;
323
+    }
324
+    var days=(endDate - startDate)/(1*24*60*60*1000);
325
+    return  days;
326
+  },
327
+  getTime(value, temp) {
328
+    if (value != undefined) {
329
+      return uParseTime(value, temp)
330
+    }
331
+    return ''
332
+  },
333
+  getNowTime: function () {
334
+    let dateTime;
335
+    let yy = new Date().getFullYear();
336
+    let mm = new Date().getMonth() + 1;
337
+    let dd = new Date().getDate();
338
+    let hh = new Date().getHours();
339
+    let mf = new Date().getMinutes() < 10 ? '0' + new Date().getMinutes()
340
+      :
341
+      new Date().getMinutes();
342
+    let ss = new Date().getSeconds() < 10 ? '0' + new Date().getSeconds()
343
+      :
344
+      new Date().getSeconds();
345
+    dateTime = yy + '-' + mm + '-' + dd + ' ' + hh + ':' + mf + ':' + ss;
346
+    return dateTime
347
+  },
348
+},
349
+mounted() {
350
+
351
+
352
+},
353
+watch: {
354
+  paramsObj: {//深度监听,可监听到对象、数组的变化
355
+    handler(val, oldVal) {
356
+
357
+
358
+    },
359
+    deep: true
360
+  }
361
+}
362
+}
363
+</script>
364
+
365
+
366
+<style lang="scss" scoped>
367
+.prescription-print {
368
+-webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 60px rgba(0, 0, 0, 0.06) inset;
369
+-moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset;
370
+box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset;
371
+margin-bottom: 20px;
372
+padding: 20px 10px;
373
+}
374
+.statementTable {
375
+  width: 100%;
376
+  text-align: center;
377
+  border-collapse: collapse;
378
+  line-height: 40px;
379
+  font-size: 14px;
380
+  border-color: #000;
381
+}
382
+</style>