Browse Source

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

XMLWAN 2 years ago
parent
commit
e597ed52fd

+ 527 - 0
src/xt_pages/hospitalStation/listTemplate/printTwo10265.vue View File

@@ -0,0 +1,527 @@
1
+ <template>
2
+  <div id="list-print" class="list-print">
3
+    <div v-for="(i, index) in pageArr.length" :key="index">
4
+      <div class="listTitle">{{$store.getters.xt_user.org.org_name}}费用清单</div>
5
+      <!-- <div class="listTitle" :style="{position: 'absolute',top:(20 + (index * 160))  + 'px',left:200+ 'px',}">赤峰市肿瘤医院病人费用明细清单</div> -->
6
+      <div class="listInfo">
7
+        <div>病人ID:</div>
8
+        <div>住院号:{{ patient.dialysis_no }}</div>
9
+        <div>次数:</div>
10
+        <div>姓名:{{ patient.name }}</div>
11
+        <div>性别:{{ patient.gender == 1 ? "男" : "女" }}</div>
12
+      </div>
13
+
14
+      <div class="listInfo">
15
+        <div>入院科室:</div>
16
+        <div>出院科室:</div>
17
+        <div>入院日期:</div>
18
+        <div>出院日期:</div>
19
+        <div>住院天数:</div>
20
+      </div>
21
+
22
+      <div
23
+        class="listInfo"
24
+        style="padding-bottom: 10px; border-bottom: 1px solid"
25
+      >
26
+        <div>出院诊断:</div>
27
+        <div>床位号:</div>
28
+        <div>费别:</div>
29
+      </div>
30
+
31
+      <table
32
+        class="listTable"
33
+        border="1"
34
+        frame="hsides"
35
+        rules="none"
36
+        cellspacing="0"
37
+      >
38
+        <tr style="border: 1px solid">
39
+          <td style="width: 19%">账单名称:床位费</td>
40
+          <td style="width: 31%">费用名称</td>
41
+          <td style="width: 14%">规格</td>
42
+          <td style="width: 10%">类别</td>
43
+          <td style="width: 10%">单价(元)</td>
44
+          <td style="width: 6%">数量</td>
45
+          <td style="width: 10%">金额(元)</td>
46
+        </tr>
47
+        <tr v-for="item in list">
48
+          <td style="width: 19%"></td>
49
+          <td style="width: 31%"></td>
50
+          <td style="width: 14%">{{ item.spec }}</td>
51
+          <td style="width: 10%">{{ item.med_chrgitm_type }}</td>
52
+          <td style="width: 10%">{{ item.price.toFixed(2) }}</td>
53
+          <td style="width: 6%">{{ item.count }}{{ item.unit }}</td>
54
+          <td style="width: 10%">{{ (item.price * item.count).toFixed(2) }}</td>
55
+        </tr>
56
+        <tr>
57
+          <td style="width: 19%">甲类:</td>
58
+          <td style="width: 31%">乙类药品:</td>
59
+          <td style="width: 14%">非药品:</td>
60
+          <td style="width: 10%">丙类:</td>
61
+          <td style="width: 10%">其他:</td>
62
+          <td></td>
63
+          <td style="width: 6%">小计:</td>
64
+        </tr>
65
+
66
+
67
+        <tr style="border: 1px solid">
68
+          <td style="width: 19%">账单名称:护理费</td>
69
+          <td style="width: 31%">费用名称</td>
70
+          <td style="width: 14%">规格</td>
71
+          <td style="width: 10%">类别</td>
72
+          <td style="width: 10%">单价(元)</td>
73
+          <td style="width: 6%">数量</td>
74
+          <td style="width: 10%">金额(元)</td>
75
+        </tr>
76
+
77
+        <tr v-for="item in list.slice(index * 13, index * 13 + pageArr[index])">
78
+          <td style="width: 19%"></td>
79
+          <td style="width: 31%"></td>
80
+          <td style="width: 14%">{{ item.spec }}</td>
81
+          <td style="width: 10%">{{ item.med_chrgitm_type }}</td>
82
+          <td style="width: 10%">{{ item.price.toFixed(2) }}</td>
83
+          <td style="width: 6%">{{ item.count }}{{ item.unit }}</td>
84
+          <td style="width: 10%">{{ (item.price * item.count).toFixed(2) }}</td>
85
+        </tr>
86
+        <tr>
87
+          <td style="width: 19%">甲类:</td>
88
+          <td style="width: 31%">乙类药品:</td>
89
+          <td style="width: 14%">非药品:</td>
90
+          <td style="width: 10%">丙类:</td>
91
+          <td style="width: 10%">其他:</td>
92
+          <td></td>
93
+          <td style="width: 6%">小计:</td>
94
+        </tr>
95
+
96
+        <tr style="border: 1px solid">
97
+          <td style="width: 19%">账单名称:化验费</td>
98
+          <td style="width: 31%">费用名称</td>
99
+          <td style="width: 14%">规格</td>
100
+          <td style="width: 10%">类别</td>
101
+          <td style="width: 10%">单价(元)</td>
102
+          <td style="width: 6%">数量</td>
103
+          <td style="width: 10%">金额(元)</td>
104
+        </tr>
105
+
106
+        <tr v-for="item in list.slice(index * 13, index * 13 + pageArr[index])">
107
+          <td style="width: 19%"></td>
108
+          <td style="width: 31%"></td>
109
+          <td style="width: 14%">{{ item.spec }}</td>
110
+          <td style="width: 10%">{{ item.med_chrgitm_type }}</td>
111
+          <td style="width: 10%">{{ item.price.toFixed(2) }}</td>
112
+          <td style="width: 6%">{{ item.count }}{{ item.unit }}</td>
113
+          <td style="width: 10%">{{ (item.price * item.count).toFixed(2) }}</td>
114
+        </tr>
115
+        <tr>
116
+          <td style="width: 19%">甲类:</td>
117
+          <td style="width: 31%">乙类药品:</td>
118
+          <td style="width: 14%">非药品:</td>
119
+          <td style="width: 10%">丙类:</td>
120
+          <td style="width: 10%">其他:</td>
121
+          <td></td>
122
+          <td style="width: 6%">小计:</td>
123
+        </tr>
124
+
125
+        <tr style="border: 1px solid;page-break-after:always">
126
+          <td style="width: 19%">账单名称:检查费</td>
127
+          <td style="width: 31%">费用名称</td>
128
+          <td style="width: 14%">规格</td>
129
+          <td style="width: 10%">类别</td>
130
+          <td style="width: 10%">单价(元)</td>
131
+          <td style="width: 6%">数量</td>
132
+          <td style="width: 10%">金额(元)</td>
133
+        </tr>
134
+
135
+
136
+        <tr v-for="item in list.slice(index * 13, index * 13 + pageArr[index])">
137
+          <td style="width: 19%"></td>
138
+          <td style="width: 31%"></td>
139
+          <td style="width: 14%">{{ item.spec }}</td>
140
+          <td style="width: 10%">{{ item.med_chrgitm_type }}</td>
141
+          <td style="width: 10%">{{ item.price.toFixed(2) }}</td>
142
+          <td style="width: 6%">{{ item.count }}{{ item.unit }}</td>
143
+          <td style="width: 10%">{{ (item.price * item.count).toFixed(2) }}</td>
144
+        </tr>
145
+        <tr>
146
+          <td style="width: 19%">甲类:</td>
147
+          <td style="width: 31%">乙类药品:</td>
148
+          <td style="width: 14%">非药品:</td>
149
+          <td style="width: 10%">丙类:</td>
150
+          <td style="width: 10%">其他:</td>
151
+          <td></td>
152
+          <td style="width: 6%">小计:</td>
153
+        </tr>
154
+
155
+        <tr style="border: 1px solid">
156
+          <td style="width: 19%">账单名称:麻醉费</td>
157
+          <td style="width: 31%">费用名称</td>
158
+          <td style="width: 14%">规格</td>
159
+          <td style="width: 10%">类别</td>
160
+          <td style="width: 10%">单价(元)</td>
161
+          <td style="width: 6%">数量</td>
162
+          <td style="width: 10%">金额(元)</td>
163
+        </tr>
164
+
165
+        <tr v-for="item in list.slice(index * 13, index * 13 + pageArr[index])">
166
+          <td style="width: 19%"></td>
167
+          <td style="width: 31%"></td>
168
+          <td style="width: 14%">{{ item.spec }}</td>
169
+          <td style="width: 10%">{{ item.med_chrgitm_type }}</td>
170
+          <td style="width: 10%">{{ item.price.toFixed(2) }}</td>
171
+          <td style="width: 6%">{{ item.count }}{{ item.unit }}</td>
172
+          <td style="width: 10%">{{ (item.price * item.count).toFixed(2) }}</td>
173
+        </tr>
174
+        <tr>
175
+          <td style="width: 19%">甲类:</td>
176
+          <td style="width: 31%">乙类药品:</td>
177
+          <td style="width: 14%">非药品:</td>
178
+          <td style="width: 10%">丙类:</td>
179
+          <td style="width: 10%">其他:</td>
180
+          <td></td>
181
+          <td style="width: 6%">小计:</td>
182
+        </tr>
183
+
184
+
185
+
186
+        <tr style="border: 1px solid">
187
+          <td style="width: 19%">账单名称:其他费</td>
188
+          <td style="width: 31%">费用名称</td>
189
+          <td style="width: 14%">规格</td>
190
+          <td style="width: 10%">类别</td>
191
+          <td style="width: 10%">单价(元)</td>
192
+          <td style="width: 6%">数量</td>
193
+          <td style="width: 10%">金额(元)</td>
194
+        </tr>
195
+
196
+        <tr v-for="item in list.slice(index * 13, index * 13 + pageArr[index])">
197
+          <td style="width: 19%"></td>
198
+          <td style="width: 31%"></td>
199
+          <td style="width: 14%">{{ item.spec }}</td>
200
+          <td style="width: 10%">{{ item.med_chrgitm_type }}</td>
201
+          <td style="width: 10%">{{ item.price.toFixed(2) }}</td>
202
+          <td style="width: 6%">{{ item.count }}{{ item.unit }}</td>
203
+          <td style="width: 10%">{{ (item.price * item.count).toFixed(2) }}</td>
204
+        </tr>
205
+        <tr>
206
+          <td style="width: 19%">甲类:</td>
207
+          <td style="width: 31%">乙类药品:</td>
208
+          <td style="width: 14%">非药品:</td>
209
+          <td style="width: 10%">丙类:</td>
210
+          <td style="width: 10%">其他:</td>
211
+          <td></td>
212
+          <td style="width: 6%">小计:</td>
213
+        </tr>
214
+
215
+        <tr style="border: 1px solid">
216
+          <td style="width: 19%">账单名称:取暖费</td>
217
+          <td style="width: 31%">费用名称</td>
218
+          <td style="width: 14%">规格</td>
219
+          <td style="width: 10%">类别</td>
220
+          <td style="width: 10%">单价(元)</td>
221
+          <td style="width: 6%">数量</td>
222
+          <td style="width: 10%">金额(元)</td>
223
+        </tr>
224
+
225
+        <tr v-for="item in list.slice(index * 13, index * 13 + pageArr[index])">
226
+          <td style="width: 19%"></td>
227
+          <td style="width: 31%"></td>
228
+          <td style="width: 14%">{{ item.spec }}</td>
229
+          <td style="width: 10%">{{ item.med_chrgitm_type }}</td>
230
+          <td style="width: 10%">{{ item.price.toFixed(2) }}</td>
231
+          <td style="width: 6%">{{ item.count }}{{ item.unit }}</td>
232
+          <td style="width: 10%">{{ (item.price * item.count).toFixed(2) }}</td>
233
+        </tr>
234
+        <tr style="page-break-after:always">
235
+          <td style="width: 19%">甲类:</td>
236
+          <td style="width: 31%">乙类药品:</td>
237
+          <td style="width: 14%">非药品:</td>
238
+          <td style="width: 10%">丙类:</td>
239
+          <td style="width: 10%">其他:</td>
240
+          <td></td>
241
+          <td style="width: 6%">小计:</td>
242
+        </tr>
243
+
244
+
245
+        <tr style="border: 1px solid">
246
+          <td style="width: 19%">账单名称:手术费</td>
247
+          <td style="width: 31%">费用名称</td>
248
+          <td style="width: 14%">规格</td>
249
+          <td style="width: 10%">类别</td>
250
+          <td style="width: 10%">单价(元)</td>
251
+          <td style="width: 6%">数量</td>
252
+          <td style="width: 10%">金额(元)</td>
253
+        </tr>
254
+
255
+        <tr v-for="item in list.slice(index * 13, index * 13 + pageArr[index])">
256
+          <td style="width: 19%"></td>
257
+          <td style="width: 31%"></td>
258
+          <td style="width: 14%">{{ item.spec }}</td>
259
+          <td style="width: 10%">{{ item.med_chrgitm_type }}</td>
260
+          <td style="width: 10%">{{ item.price.toFixed(2) }}</td>
261
+          <td style="width: 6%">{{ item.count }}{{ item.unit }}</td>
262
+          <td style="width: 10%">{{ (item.price * item.count).toFixed(2) }}</td>
263
+        </tr>
264
+        <tr>
265
+          <td style="width: 19%">甲类:</td>
266
+          <td style="width: 31%">乙类药品:</td>
267
+          <td style="width: 14%">非药品:</td>
268
+          <td style="width: 10%">丙类:</td>
269
+          <td style="width: 10%">其他:</td>
270
+          <td></td>
271
+          <td style="width: 6%">小计:</td>
272
+        </tr>
273
+
274
+
275
+        <tr style="border: 1px solid">
276
+          <td style="width: 19%">账单名称:西药费</td>
277
+          <td style="width: 31%">费用名称</td>
278
+          <td style="width: 14%">规格</td>
279
+          <td style="width: 10%">类别</td>
280
+          <td style="width: 10%">单价(元)</td>
281
+          <td style="width: 6%">数量</td>
282
+          <td style="width: 10%">金额(元)</td>
283
+        </tr>
284
+
285
+        <tr v-for="item in list.slice(index * 13, index * 13 + pageArr[index])">
286
+          <td style="width: 19%"></td>
287
+          <td style="width: 31%"></td>
288
+          <td style="width: 14%">{{ item.spec }}</td>
289
+          <td style="width: 10%">{{ item.med_chrgitm_type }}</td>
290
+          <td style="width: 10%">{{ item.price.toFixed(2) }}</td>
291
+          <td style="width: 6%">{{ item.count }}{{ item.unit }}</td>
292
+          <td style="width: 10%">{{ (item.price * item.count).toFixed(2) }}</td>
293
+        </tr>
294
+        <tr>
295
+          <td style="width: 19%">甲类:</td>
296
+          <td style="width: 31%">乙类药品:</td>
297
+          <td style="width: 14%">非药品:</td>
298
+          <td style="width: 10%">丙类:</td>
299
+          <td style="width: 10%">其他:</td>
300
+          <td></td>
301
+          <td style="width: 6%">小计:</td>
302
+        </tr>
303
+
304
+
305
+        <tr style="border: 1px solid">
306
+          <td style="width: 19%">账单名称:治疗费</td>
307
+          <td style="width: 31%">费用名称</td>
308
+          <td style="width: 14%">规格</td>
309
+          <td style="width: 10%">类别</td>
310
+          <td style="width: 10%">单价(元)</td>
311
+          <td style="width: 6%">数量</td>
312
+          <td style="width: 10%">金额(元)</td>
313
+        </tr>
314
+
315
+        <tr v-for="item in list.slice(index * 13, index * 13 + pageArr[index])">
316
+          <td style="width: 19%"></td>
317
+          <td style="width: 31%"></td>
318
+          <td style="width: 14%">{{ item.spec }}</td>
319
+          <td style="width: 10%">{{ item.med_chrgitm_type }}</td>
320
+          <td style="width: 10%">{{ item.price.toFixed(2) }}</td>
321
+          <td style="width: 6%">{{ item.count }}{{ item.unit }}</td>
322
+          <td style="width: 10%">{{ (item.price * item.count).toFixed(2) }}</td>
323
+        </tr>
324
+        <tr>
325
+          <td style="width: 19%">甲类:</td>
326
+          <td style="width: 31%">乙类药品:</td>
327
+          <td style="width: 14%">非药品:</td>
328
+          <td style="width: 10%">丙类:</td>
329
+          <td style="width: 10%">其他:</td>
330
+          <td></td>
331
+          <td style="width: 6%">小计:</td>
332
+        </tr>
333
+
334
+        <tr style="border: 1px solid">
335
+          <td style="width: 19%">账单名称:中成药费</td>
336
+          <td style="width: 31%">费用名称</td>
337
+          <td style="width: 14%">规格</td>
338
+          <td style="width: 10%">类别</td>
339
+          <td style="width: 10%">单价(元)</td>
340
+          <td style="width: 6%">数量</td>
341
+          <td style="width: 10%">金额(元)</td>
342
+        </tr>
343
+
344
+        <tr v-for="item in list.slice(index * 13, index * 13 + pageArr[index])">
345
+          <td style="width: 19%"></td>
346
+          <td style="width: 31%"></td>
347
+          <td style="width: 14%">{{ item.spec }}</td>
348
+          <td style="width: 10%">{{ item.med_chrgitm_type }}</td>
349
+          <td style="width: 10%">{{ item.price.toFixed(2) }}</td>
350
+          <td style="width: 6%">{{ item.count }}{{ item.unit }}</td>
351
+          <td style="width: 10%">{{ (item.price * item.count).toFixed(2) }}</td>
352
+        </tr>
353
+        <tr>
354
+          <td style="width: 19%">甲类:</td>
355
+          <td style="width: 31%">乙类药品:</td>
356
+          <td style="width: 14%">非药品:</td>
357
+          <td style="width: 10%">丙类:</td>
358
+          <td style="width: 10%">其他:</td>
359
+          <td></td>
360
+          <td style="width: 6%">小计:</td>
361
+        </tr>
362
+        <tr>
363
+          <td></td>
364
+          <td></td>
365
+          <td></td>
366
+          <td></td>
367
+          <td></td>
368
+          <td></td>
369
+          <td>
370
+            总费用:
371
+          </td>
372
+        </tr>
373
+
374
+        <tr>
375
+          <td>报销类别费用合计</td>
376
+          <td>甲类:</td>
377
+          <td>乙类药品:</td>
378
+          <td>丙类:</td>
379
+          <td>非药品:</td>
380
+          <td></td>
381
+          <td>其他:</td>
382
+
383
+        </tr>
384
+
385
+
386
+      </table>
387
+      <div class="tableBottom">
388
+        <!-- <div class="tableBottomOne">制表人:{{ admin.user_name }}</div> -->
389
+        <div class="tableBottomOne">制表日期:{{ getNowTime() }}</div>
390
+        <!-- <div class="tableBottomOne">总费用:{{ order.medfee_sumamt }}元</div> -->
391
+      </div>
392
+    </div>
393
+  </div>
394
+</template>
395
+
396
+<script>
397
+import { uParseTime } from "@/utils/tools";
398
+
399
+export default {
400
+  props: {
401
+    list: {
402
+      type: Array,
403
+      default: function () {
404
+        return [];
405
+      },
406
+    },
407
+    patient: {
408
+      type: Object,
409
+      default: function () {
410
+        return {};
411
+      },
412
+    },
413
+    order: {
414
+      type: Object,
415
+      default: function () {
416
+        return {};
417
+      },
418
+    },
419
+    admin: {
420
+      type: Object,
421
+      default: function () {
422
+        return {};
423
+      },
424
+    },
425
+  },
426
+  data() {
427
+    return {
428
+      page: 1,
429
+      pageArr: [],
430
+    };
431
+  },
432
+  // mounted(){
433
+  //     this.getPage()
434
+  // },
435
+  methods: {
436
+    getNowTime: function () {
437
+      let dateTime;
438
+      let yy = new Date().getFullYear();
439
+      let mm = new Date().getMonth() + 1;
440
+      let dd = new Date().getDate();
441
+      let hh = new Date().getHours();
442
+      let mf =
443
+        new Date().getMinutes() < 10
444
+          ? "0" + new Date().getMinutes()
445
+          : new Date().getMinutes();
446
+      let ss =
447
+        new Date().getSeconds() < 10
448
+          ? "0" + new Date().getSeconds()
449
+          : new Date().getSeconds();
450
+      dateTime = yy + "-" + mm + "-" + dd + " " + hh + ":" + mf + ":" + ss;
451
+      return dateTime;
452
+    },
453
+    getTimes(time) {
454
+      return uParseTime(time, "{y}-{m}-{d}");
455
+    },
456
+    getPage() {
457
+      if (this.list.length <= 13) {
458
+        this.page = 1;
459
+        this.pageArr.push(this.list.length);
460
+      } else if (this.list.length > 13) {
461
+        this.page = parseInt(this.list.length / 13);
462
+        let num = this.list.length % 13;
463
+        for (var i = 0; i < this.page; i++) {
464
+          this.pageArr.push(13);
465
+        }
466
+        if (num != 0) {
467
+          this.pageArr.push(num);
468
+        }
469
+      }
470
+
471
+      console.log(this.pageArr,'this.pageArr')
472
+    },
473
+  },
474
+  watch: {
475
+    list: {
476
+      handler(newVal) {
477
+        this.getPage();
478
+      },
479
+      deep: true,
480
+    },
481
+  },
482
+};
483
+</script>
484
+
485
+<style lang="scss" scoped>
486
+.list-print {
487
+  -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27),
488
+    0 0 60px rgba(0, 0, 0, 0.06) inset;
489
+  -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27),
490
+    0 0 40px rgba(0, 0, 0, 0.06) inset;
491
+  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset;
492
+  margin-bottom: 20px;
493
+  padding: 20px 10px;
494
+}
495
+.listTitle {
496
+  font-size: 24px;
497
+  text-align: center;
498
+  font-weight: bold;
499
+  margin-bottom: 10px;
500
+}
501
+.listInfo {
502
+  display: flex;
503
+  font-size: 16px;
504
+  justify-content: space-between;
505
+  margin: 10px 0;
506
+}
507
+.listTable {
508
+  width: 100%;
509
+  text-align: center;
510
+  border-collapse: collapse;
511
+  line-height: 40px;
512
+  font-size: 14px;
513
+  border-color: #000;
514
+  text-align: left;
515
+}
516
+.listTable tr td {
517
+  padding: 0 5px;
518
+}
519
+.tableBottom {
520
+  font-size: 16px;
521
+  display: flex;
522
+  margin-top: 20px;
523
+}
524
+.tableBottomOne {
525
+  margin-right: 40px;
526
+}
527
+</style>

+ 2 - 1
src/xt_pages/outpatientCharges/allListPrint.vue View File

@@ -260,7 +260,8 @@
260 260
             return goodUnit[i].name
261 261
           }
262 262
         }
263
-      },unique(array) {
263
+      },
264
+      unique(array) {
264 265
         // res用来存储结果
265 266
         var res = []
266 267
         for (var i = 0, arrayLen = array.length; i < arrayLen; i++) {

+ 268 - 49
src/xt_pages/outpatientCharges/listPrint.vue View File

@@ -14,11 +14,11 @@
14 14
     </template>
15 15
 
16 16
     <div class='dialysisPage' style="padding-top:40px;">
17
-      <printOne v-if="org_id != 10106 && org_id != 10215 && org_id != 0" :list="list" :patient="patient" :order="order" :admin="admin"></printOne>
17
+      <printOne v-if="org_id != 10106 && org_id != 10215  && org_id != 10265" :list="list" :patient="patient" :order="order" :admin="admin"></printOne>
18 18
       <printTwo v-if="org_id == 10106 && this.paramsObj.balance_accounts_type != 2" :info="info" :order_infos="order_infos" :p_admin="p_admin" :charge_admin="charge_admin"></printTwo>
19 19
       <print-three v-if="org_id == 10106 && this.paramsObj.balance_accounts_type == 2" :info="info" :order_infos="order_infos" :p_admin="p_admin" :charge_admin="charge_admin"></print-three>
20
-      <list-print-two v-if="org_id == 10215 || org_id == 0" :list="list" :patient="patient" :order="order" :admin="admin"></list-print-two>
21
-<!--      <list-print-two></list-print-two>-->
20
+      <list-print-two v-if="org_id == 10215" :list="list" :patient="patient" :order="order" :admin="admin"></list-print-two>
21
+      <print-two10265  v-if="org_id == 10265" :list="list" :patient="patient" :order="order" :admin="admin" :hospital_record="hospital_record"></print-two10265>
22 22
     </div>
23 23
   </div>
24 24
 </template>
@@ -34,10 +34,12 @@
34 34
   import axios from 'axios'
35 35
   import PrintThree from './listTemplate/printThree'
36 36
   import ListPrintTwo from './listTemplate/listPrintTwo'
37
+  import PrintTwo10265 from "./listTemplate/printTwo10265";
37 38
 
38 39
   export default {
39 40
     name: 'listPrint',
40 41
     components: {
42
+      PrintTwo10265,
41 43
       ListPrintTwo,
42 44
       PrintThree,
43 45
       printOne,
@@ -56,7 +58,8 @@
56 58
         info:null,
57 59
         p_admin:{},
58 60
         charge_admin:{},
59
-        org_id:''
61
+        org_id:'',
62
+        hospital_record:null
60 63
       }
61 64
     },
62 65
     created() {
@@ -90,69 +93,255 @@
90 93
             this.$message.error(response.data.msg)
91 94
             return false
92 95
           } else {
93
-            this.order = response.data.data.order
94
-            this.patient = response.data.data.patient
95
-            console.log(this.patient)
96
-            this.admin = response.data.data.admin_info
97
-
98
-
99
-            for (let i = 0; i < response.data.data.order_info.length; i++) {
100
-              var infos = response.data.data.order_info[i]
101
-              let obj = {
102
-                med_chrgitm_type: this.getType(infos.med_chrgitm_type),
103
-                price: infos.pric.toFixed(4),
104
-                count: infos.cnt
96
+            if(this.org_id == 10265  ){
97
+              this.order = response.data.data.order
98
+              this.patient = response.data.data.patient
99
+              this.admin = response.data.data.admin_info
100
+              this.hospital_record = response.data.data.hospital_record
101
+
102
+
103
+              //获取所有项目类型进行去重
104
+              let med_chrgitm_types = []
105
+              for (let i = 0; i < response.data.data.order_info.length; i++) {
106
+                med_chrgitm_types.push(response.data.data.order_info[i].med_chrgitm_type)
105 107
               }
106
-              console.log(infos)
107
-              if (infos.advice && infos.advice.id == 0 && infos.project && infos.project.id > 0) {
108
-                obj['p_time'] = this.getTimes(infos.project.prescription.ctime)
109
-                obj['feedetl_sn'] = infos.feedetl_sn
108
+              const obj = {}
109
+              med_chrgitm_types = med_chrgitm_types.reduce((cur, next) => {
110
+                obj[next] ? '' : obj[next] = true && cur.push(next)
111
+                return cur
112
+              }, []) // 设置cur默认类型为数组,并且初始值为空的数组
113
+              let tempOrderInfo = []
114
+              for (let i = 0; i < med_chrgitm_types.length; i++) {
115
+                let obj = {
116
+                  details: [],
117
+                  med_chrgitm_name:this.getType(med_chrgitm_types[i]),
118
+                  jiaTotal:0,
119
+                  total:0,
120
+                  yiTotal:0,
121
+                  noMedicineTotal:0,
122
+                  bingTotal:0,
123
+                  otherTotal:0,
124
+                }
110 125
 
111
-                if(infos.project.type == 2){
112
-                  obj['name'] = infos.project.project.project_name
113
-                  obj['spec'] = ''
114
-                  obj['unit'] =  infos.project.project.unit
115
-                  obj['is_total']= 0
126
+                let tempDetails = []
127
+                for (let b = 0; b < response.data.data.order_info.length; b++) {
128
+                  if (med_chrgitm_types[i] == response.data.data.order_info[b].med_chrgitm_type) {
129
+                    tempDetails.push(response.data.data.order_info[b])
130
+                  }
131
+                }
132
+                obj.total = this.getTotal(tempDetails)
133
+                obj.jiaTotal = this.getJiaTotal(tempDetails)
134
+                obj.yiTotal = this.getYiTotal(tempDetails)
135
+                obj.noMedicineTotal = this.getNoMedicineTotal(tempDetails)
136
+                obj.bingTotal = this.getBingTotal(tempDetails)
137
+                obj.otherTotal = this.getOtherTotal(tempDetails)
138
+
139
+                obj.details = this.setNewData(tempDetails)
140
+                this.list.push(obj)
141
+              }
142
+              console.log(this.list)
143
+            }else{
144
+              this.order = response.data.data.order
145
+              this.patient = response.data.data.patient
146
+              console.log(this.patient)
147
+              this.admin = response.data.data.admin_info
148
+              for (let i = 0; i < response.data.data.order_info.length; i++) {
149
+                var infos = response.data.data.order_info[i]
150
+                let obj = {
151
+                  med_chrgitm_type: this.getType(infos.med_chrgitm_type),
152
+                  price: infos.pric.toFixed(4),
153
+                  count: infos.cnt
154
+                }
155
+                if (infos.advice && infos.advice.id == 0 && infos.project && infos.project.id > 0) {
156
+                  obj['p_time'] = this.getTimes(infos.project.prescription.ctime)
157
+                  obj['feedetl_sn'] = infos.feedetl_sn
116 158
 
159
+                  if(infos.project.type == 2){
160
+                    obj['name'] = infos.project.project.project_name
161
+                    obj['spec'] = ''
162
+                    obj['unit'] =  infos.project.project.unit
163
+                    obj['is_total']= 0
117 164
 
118
-                }else if (infos.project.type == 3){
119
-                  obj['name'] = infos.project.good_info.good_name
120
-                  obj['spec'] = ""
121
-                  obj['unit'] = infos.project.good_info.packing_unit
122
-                  obj['is_total']= 0
165
+
166
+                  }else if (infos.project.type == 3){
167
+                    obj['name'] = infos.project.good_info.good_name
168
+                    obj['spec'] = ""
169
+                    obj['unit'] = infos.project.good_info.packing_unit
170
+                    obj['is_total']= 0
171
+
172
+                  }
123 173
 
124 174
                 }
175
+                if (infos.advice && infos.advice.id > 0 && infos.project && infos.project.id == 0) {
176
+                  obj['p_time'] = this.getTimes(infos.advice.prescription.ctime)
177
+                  obj['name'] = infos.advice.drug.drug_name
178
+                  obj['unit'] = infos.advice.drug.min_unit
179
+                  obj['feedetl_sn'] =  infos.feedetl_sn
180
+                  obj['spec'] =  infos.advice.drug.dose +  infos.advice.drug.dose_unit+"*" + infos.advice.drug.min_number +  infos.advice.drug.min_unit+"/"+infos.advice.drug.max_unit
181
+                  obj['is_total']= 0
125 182
 
183
+                  // v-if="scope.row.min_unit != scope.row.dose_unit">{{ scope.row.dose }}{{ scope.row.dose_unit }}&nbsp;* &nbsp;</span>{{ scope.row.min_number }}{{ scope.row.min_unit }}/{{ scope.row.max_unit }}
184
+
185
+
186
+                }
187
+                this.list.push(obj)
188
+                this.list.sort(function(a, b) {
189
+                  return b.p_time < a.p_time ? 1 : -1
190
+                })
126 191
               }
127 192
 
128
-              if (infos.advice && infos.advice.id > 0 && infos.project && infos.project.id == 0) {
129
-                obj['p_time'] = this.getTimes(infos.advice.prescription.ctime)
130
-                obj['name'] = infos.advice.drug.drug_name
131
-                obj['unit'] = infos.advice.drug.min_unit
132
-                obj['feedetl_sn'] =  infos.feedetl_sn
133
-                obj['spec'] =  infos.advice.drug.dose +  infos.advice.drug.dose_unit+"*" + infos.advice.drug.min_number +  infos.advice.drug.min_unit+"/"+infos.advice.drug.max_unit
134
-                obj['is_total']= 0
193
+              let newObj = {}
194
+              newObj['name'] = "合计"
195
+              newObj['price']= this.order.medfee_sumamt
196
+              newObj['is_total']= 1
197
+              this.list.push(newObj)
135 198
 
136
-                // v-if="scope.row.min_unit != scope.row.dose_unit">{{ scope.row.dose }}{{ scope.row.dose_unit }}&nbsp;* &nbsp;</span>{{ scope.row.min_number }}{{ scope.row.min_unit }}/{{ scope.row.max_unit }}
199
+            }
200
+          }
201
+        })
202
+      },getJiaTotal(items){
203
+        console.log(items)
204
+        let total = 0
205
+        for(let i = 0; i < items.length; i++){
206
+          if(items[i].chrgitm_lv == "01") {
207
+            total = parseFloat(total) + (parseFloat(items[i].cnt) * parseFloat(items[i].pric))
137 208
 
209
+          }
210
+        }
211
+        return total.toFixed(2)
212
+      },getYiTotal(items){
213
+        let total = 0
214
+        for(let i = 0; i < items.length; i++){
215
+          if(items[i].chrgitm_lv == "02") {
216
+            total = parseFloat(total) + (parseFloat(items[i].cnt) * parseFloat(items[i].pric))
217
+
218
+            // total = Number(total) + Number((parseFloat(items[i].count) * parseFloat(items[i].price)).toFixed(2))
219
+          }
220
+        }
221
+        return total.toFixed(2)
222
+      },getNoMedicineTotal(items){
223
+        let total = 0
224
+        for(let i = 0; i < items.length; i++){
225
+          total = parseFloat(total) + (parseFloat(items[i].cnt) * parseFloat(items[i].pric))
226
+        }
227
+        return total.toFixed(2)
138 228
 
139
-              }
140
-              this.list.push(obj)
141
-              this.list.sort(function(a, b) {
142
-                return b.p_time < a.p_time ? 1 : -1
143
-              })
229
+      },getBingTotal(items){
144 230
 
231
+        let total = 0
232
+        for(let i = 0; i < items.length; i++){
233
+          if(items[i].chrgitm_lv == "03") {
234
+            total = parseFloat(total) + (parseFloat(items[i].cnt) * parseFloat(items[i].pric))
145 235
 
236
+            // total = Number(total) + Number((parseFloat(items[i].count) * parseFloat(items[i].price)).toFixed(2))
237
+          }
238
+        }
239
+        return total.toFixed(2)
240
+      },getOtherTotal(items){
241
+
242
+        // let total = 0
243
+        // for(let i = 0; i < items.length; i++){
244
+        //   total = Number(total) + Number((parseFloat(items[i].count) * parseFloat(items[i].price)).toFixed(2))
245
+        // }
246
+        // return total.toFixed(2)
247
+      },getTotal:function(items){
248
+        let total = 0
249
+        for(let i = 0; i < items.length; i++){
250
+          total = Number(total) + Number(parseFloat(items[i].cnt) * parseFloat(items[i].pric))
251
+        }
252
+        return total.toFixed(2)
253
+      },setNewData(details) {
254
+        let drug_ids = []
255
+        let project_ids = []
256
+
257
+        for (let i = 0; i < details.length; i++) {
258
+          if (details[i].advice && details[i].advice.id > 0 && details[i].advice.prescription && details[i].advice.prescription.type == 1) { //药品
259
+            let obj = {
260
+              id: details[i].advice.drug_id,
261
+              price: details[i].advice.price
146 262
             }
263
+            drug_ids.push(obj)
264
+          } else if (details[i].project && details[i].project.id > 0 && details[i].project.prescription && details[i].project.prescription.type == 2) { //项目
265
+            let obj = {
266
+              id: details[i].project.project_id,
267
+              price: details[i].project.price
147 268
 
269
+            }
270
+            project_ids.push(obj)
148 271
 
149
-            let newObj = {}
150
-            newObj['name'] = "合计"
151
-            newObj['price']= this.order.medfee_sumamt
152
-            newObj['is_total']= 1
153
-            this.list.push(newObj)
154 272
           }
155
-        })
273
+
274
+        }
275
+        //
276
+        // console.log('old ids')
277
+        // console.log(drug_ids)
278
+        // console.log(project_ids)
279
+        // console.log('old ids')
280
+
281
+        let new_drug_ids = this.unique(drug_ids)
282
+        let new_project_ids = this.unique(project_ids)
283
+        let list = []
284
+
285
+        // console.log('ids')
286
+        // console.log(new_drug_ids)
287
+        // console.log(new_project_ids)
288
+        // console.log('ids')
289
+
290
+        if (new_drug_ids.length > 0 && new_project_ids.length == 0) {
291
+          for (let i = 0; i < new_drug_ids.length; i++) {
292
+            let obj = {}
293
+            let count = 0
294
+            for (let a = 0; a < details.length; a++) {
295
+              if (new_drug_ids[i].id == details[a].advice.drug_id && new_drug_ids[i].price == details[a].advice.price) {
296
+                obj['name'] = details[a].advice.advice_name
297
+                // obj['spec'] = details[a].advice.drug.drug_spec
298
+                obj['spec'] =   details[a].advice.drug.dose +   details[a].advice.drug.dose_unit+"*" +  details[a].advice.drug.min_number +   details[a].advice.drug.min_unit+"/"+ details[a].advice.drug.max_unit
299
+                obj['unit'] = details[a].advice.drug.min_unit
300
+                obj['medicine_insurance_kind'] = this.getMedicineInsuranceType(details[a].chrgitm_lv)
301
+                obj['med_chrgitm_type'] = this.getType(details[a].med_chrgitm_type)
302
+                obj['price'] = parseFloat(details[a].pric)
303
+                obj['is_total'] = 2
304
+                count = count + details[a].cnt
305
+              }
306
+            }
307
+            obj['count'] = count
308
+            list.push(obj)
309
+          }
310
+        }
311
+
312
+        if (new_drug_ids.length == 0 && new_project_ids.length > 0) {
313
+          for (let i = 0; i < new_project_ids.length; i++) {
314
+            let obj = {}
315
+            let count = 0
316
+            for (let a = 0; a < details.length; a++) {
317
+              if (new_project_ids[i].id == details[a].project.project_id && new_project_ids[i].price == details[a].project.price) {
318
+                if( details[a].project.type == 2){
319
+                  obj['name'] = details[a].project.project.project_name
320
+                  obj['spec'] = ''
321
+                  obj['unit'] = details[a].project.project.unit
322
+
323
+
324
+                }else if(details[a].project.type == 3){
325
+                  obj['name'] = details[a].project.good_info.good_name
326
+                  obj['spec'] = ''
327
+                  obj['unit'] = details[a].project.good_info.packing_unit
328
+
329
+                }
330
+                obj['medicine_insurance_kind'] = this.getMedicineInsuranceType(details[a].chrgitm_lv)
331
+                obj['med_chrgitm_type'] = this.getType(details[a].med_chrgitm_type)
332
+                obj['price'] = parseFloat(details[a].pric)
333
+                obj['is_total'] = 2
334
+
335
+                count = count + details[a].cnt
336
+              }
337
+            }
338
+            obj['count'] = count
339
+            list.push(obj)
340
+          }
341
+        }
342
+
343
+        return list
344
+
156 345
       },
157 346
       getType(med_chrgitm_type) {
158 347
         switch (med_chrgitm_type) {
@@ -214,6 +403,36 @@
214 403
         }
215 404
 
216 405
       },
406
+      getMedicineInsuranceType(type) {
407
+        switch (type) {
408
+          case "01":
409
+            return '甲类'
410
+            break
411
+          case "02":
412
+            return '乙类'
413
+
414
+            break
415
+          case "03":
416
+            return '自费'
417
+            break
418
+
419
+        }
420
+      }, unique(array) {
421
+        // res用来存储结果
422
+        var res = []
423
+        for (var i = 0, arrayLen = array.length; i < arrayLen; i++) {
424
+          for (var j = 0, resLen = res.length; j < resLen; j++) {
425
+            if (array[i].id === res[j].id && array[i].price === res[j].price) {
426
+              break
427
+            }
428
+          }
429
+          // 如果array[i]是唯一的,那么执行完循环,j等于resLen
430
+          if (j === resLen) {
431
+            res.push(array[i])
432
+          }
433
+        }
434
+        return res
435
+      },
217 436
       printThisPage() {
218 437
         if(this.org_id != 10106){
219 438
           if(this.org_id == 10215 || this.org_id == 0){

+ 2 - 2
src/xt_pages/outpatientCharges/listTemplate/printOne.vue View File

@@ -9,7 +9,7 @@
9 9
             <div>性别:{{patient.gender == 1 ? '男': '女'}}</div>
10 10
             <div>年龄:{{patient.age}}  岁</div>
11 11
             <div v-if="order.settle_type == 1">收费日期:{{getTimes(order.settle_accounts_date)}}</div>
12
-          <div v-if="order.settle_type == 2">收费日期:{{getTimes(order.settle_start_time)}} 至 {{getTimes(order.settle_end_time)}}</div>
12
+            <div v-if="order.settle_type == 2">收费日期:{{getTimes(order.settle_start_time)}} 至 {{getTimes(order.settle_end_time)}}</div>
13 13
 
14 14
 
15 15
         </div>
@@ -28,7 +28,7 @@
28 28
                 <td style="width:10%">{{item.med_chrgitm_type}}</td>
29 29
                 <td style="width:31%">{{item.name}}</td>
30 30
                 <td style="width:14%">{{item.spec}}</td>
31
-                <td style="width:10%">{{(item.price).toFixed(2)}}</td>
31
+                <td style="width:10%">{{item.price}}</td>
32 32
                 <td style="width:6%">{{item.count}}{{item.unit}}</td>
33 33
                 <td style="width:10%">{{(item.price * item.count).toFixed(2)}}</td>
34 34
             </tr>

+ 277 - 0
src/xt_pages/outpatientCharges/listTemplate/printTwo10265.vue View File

@@ -0,0 +1,277 @@
1
+ <template>
2
+  <div id="list-print" class="list-print">
3
+    <div v-for="(i, index) in pageArr.length" :key="index">
4
+      <div class="listTitle">{{$store.getters.xt_user.org.org_name}}费用清单</div>
5
+      <!-- <div class="listTitle" :style="{position: 'absolute',top:(20 + (index * 160))  + 'px',left:200+ 'px',}">赤峰市肿瘤医院病人费用明细清单</div> -->
6
+      <div class="listInfo">
7
+        <div>病人ID:{{order.psn_no}}</div>
8
+        <div>住院号:{{ order.mdtrt_id }}</div>
9
+<!--        <div>次数:</div>-->
10
+        <div>姓名:{{ order.psn_name }}</div>
11
+        <div>性别:{{ patient.gender == 1 ? "男" : "女" }}</div>
12
+      </div>
13
+
14
+      <div class="listInfo">
15
+        <div>入院科室:血透</div>
16
+        <div>出院科室:血透</div>
17
+        <div>入院日期:{{hospital_record.in_hosptial_time}}</div>
18
+        <div>出院日期:{{hospital_record.out_hosptial_time}}</div>
19
+        <div>住院天数:{{getDay(hospital_record.in_hosptial_time.split(' ')[0] ,hospital_record.out_hosptial_time.split(' ')[0])}}</div>
20
+      </div>
21
+
22
+      <div
23
+        class="listInfo"
24
+        style="padding-bottom: 10px; border-bottom: 1px solid"
25
+      >
26
+        <div>出院诊断:尿毒症</div>
27
+        <div>床位号:</div>
28
+        <div>费别:医保</div>
29
+      </div>
30
+
31
+      <table
32
+        class="listTable"
33
+        border="1"
34
+        frame="hsides"
35
+        rules="none"
36
+        v-for="item in list"
37
+        cellspacing="0"
38
+      >
39
+        <tr style="border: 1px solid" >
40
+          <td style="width: 19%">账单名称:{{item.med_chrgitm_name}}</td>
41
+          <td style="width: 31%">费用名称</td>
42
+          <td style="width: 14%">规格</td>
43
+          <td style="width: 10%">类别</td>
44
+          <td style="width: 10%">单价(元)</td>
45
+          <td style="width: 6%">数量</td>
46
+          <td style="width: 10%">金额(元)</td>
47
+        </tr>
48
+        <tr v-for="subItem in item.details">
49
+          <td style="width: 20%">{{subItem.name}}</td>
50
+          <td style="width: 30%"></td>
51
+          <td style="width: 14%">{{ subItem.spec }}</td>
52
+          <td style="width: 10%">{{ subItem.medicine_insurance_kind }}</td>
53
+          <td style="width: 10%">{{ subItem.price.toFixed(2) }}</td>
54
+          <td style="width: 6%">{{ subItem.count }}{{ subItem.unit }}</td>
55
+          <td style="width: 10%">{{ (subItem.price * subItem.count).toFixed(2) }}</td>
56
+        </tr>
57
+
58
+        <tr>
59
+          <td style="width: 20%">甲类:{{item.jiaTotal}}</td>
60
+          <td style="width: 20%">乙类药品:{{item.yiTotal}}</td>
61
+          <td style="width: 5%">非药品:{{0}}</td>
62
+          <td style="width: 5%">丙类:{{item.bingTotal}}</td>
63
+          <td style="width: 5%">其他:{{0}}</td>
64
+          <td></td>
65
+          <td style="width: 30%">小计:{{item.total}}</td>
66
+        </tr>
67
+      </table>
68
+      <table
69
+          class="listTable"
70
+          border="1"
71
+          frame="below"
72
+          rules="none"
73
+          cellspacing="0"
74
+      >
75
+        <tr>
76
+          <td></td>
77
+          <td></td>
78
+          <td></td>
79
+          <td></td>
80
+          <td></td>
81
+          <td></td>
82
+          <td>总费用:{{order.medfee_sumamt}}</td>
83
+        </tr>
84
+
85
+        <tr>
86
+          <td>报销类别费用合计</td>
87
+          <td>甲类:{{getJaiTotal()}}</td>
88
+          <td>乙类药品:{{getYiTotal()}}</td>
89
+          <td>丙类:{{getBingTotal()}}</td>
90
+          <td>非药品:0.00</td>
91
+          <td></td>
92
+          <td>其他:0.00</td>
93
+        </tr>
94
+      </table>
95
+      <div class="tableBottom">
96
+        <!-- <div class="tableBottomOne">制表人:{{ admin.user_name }}</div> -->
97
+        <div class="tableBottomOne">制表日期:{{ getNowTime() }}</div>
98
+        <!-- <div class="tableBottomOne">总费用:{{ order.medfee_sumamt }}元</div> -->
99
+      </div>
100
+    </div>
101
+  </div>
102
+</template>
103
+
104
+<script>
105
+import { uParseTime } from "@/utils/tools";
106
+
107
+export default {
108
+  props: {
109
+    list: {
110
+      type: Array,
111
+      default: function () {
112
+        return [];
113
+      },
114
+    },
115
+    patient: {
116
+      type: Object,
117
+      default: function () {
118
+        return {};
119
+      },
120
+    },hospital_record:{
121
+      type: Object,
122
+      default: function () {
123
+        return {};
124
+      },
125
+
126
+    },
127
+    order: {
128
+      type: Object,
129
+      default: function () {
130
+        return {};
131
+      },
132
+    },
133
+    admin: {
134
+      type: Object,
135
+      default: function () {
136
+        return {};
137
+      },
138
+    },
139
+  },
140
+  data() {
141
+    return {
142
+      page: 1,
143
+      pageArr: [],
144
+    };
145
+  },
146
+  // mounted(){
147
+  //     this.getPage()
148
+  // },
149
+  methods: {
150
+    getDay(dateString1,dateString2){
151
+      var  startDate = Date.parse(dateString1);
152
+      var  endDate = Date.parse(dateString2);
153
+      if (startDate>endDate){
154
+        return 0;
155
+      }
156
+      if (startDate==endDate){
157
+        return 1;
158
+      }
159
+      var days=(endDate - startDate)/(1*24*60*60*1000);
160
+      return  days;
161
+
162
+    },
163
+    getJaiTotal(){
164
+      var total = 0
165
+      for(let i =0; this.list.length; i++){
166
+        total = total + this.list[i].jiaTotal
167
+
168
+      }
169
+      return total
170
+    }, getYiTotal(){
171
+      var total = 0
172
+      for(let i =0; this.list.length; i++){
173
+        total = total + this.list[i].yiTotal
174
+
175
+      }
176
+      return total
177
+    }, getBingTotal(){
178
+      var total = 0
179
+      for(let i =0; this.list.length; i++){
180
+        total = total + this.list[i].bingTotal
181
+
182
+      }
183
+      return total
184
+    },
185
+
186
+    getNowTime: function () {
187
+      let dateTime;
188
+      let yy = new Date().getFullYear();
189
+      let mm = new Date().getMonth() + 1;
190
+      let dd = new Date().getDate();
191
+      let hh = new Date().getHours();
192
+      let mf =
193
+        new Date().getMinutes() < 10
194
+          ? "0" + new Date().getMinutes()
195
+          : new Date().getMinutes();
196
+      let ss =
197
+        new Date().getSeconds() < 10
198
+          ? "0" + new Date().getSeconds()
199
+          : new Date().getSeconds();
200
+      dateTime = yy + "-" + mm + "-" + dd + " " + hh + ":" + mf + ":" + ss;
201
+      return dateTime;
202
+    },
203
+    getTimes(time) {
204
+      return uParseTime(time, "{y}-{m}-{d}");
205
+    },
206
+    getPage() {
207
+      if (this.list.length <= 13) {
208
+        this.page = 1;
209
+        this.pageArr.push(this.list.length);
210
+      } else if (this.list.length > 13) {
211
+        this.page = parseInt(this.list.length / 13);
212
+        let num = this.list.length % 13;
213
+        for (var i = 0; i < this.page; i++) {
214
+          this.pageArr.push(13);
215
+        }
216
+        if (num != 0) {
217
+          this.pageArr.push(num);
218
+        }
219
+      }
220
+
221
+      console.log(this.pageArr,'this.pageArr')
222
+    },
223
+  },
224
+  watch: {
225
+    list: {
226
+      handler(newVal) {
227
+        this.getPage();
228
+      },
229
+      deep: true,
230
+    },
231
+  },
232
+};
233
+</script>
234
+
235
+<style lang="scss" scoped>
236
+.list-print {
237
+  -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27),
238
+    0 0 60px rgba(0, 0, 0, 0.06) inset;
239
+  -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27),
240
+    0 0 40px rgba(0, 0, 0, 0.06) inset;
241
+  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset;
242
+  margin-bottom: 20px;
243
+  padding: 20px 10px;
244
+}
245
+.listTitle {
246
+  font-size: 24px;
247
+  text-align: center;
248
+  font-weight: bold;
249
+  margin-bottom: 10px;
250
+}
251
+.listInfo {
252
+  display: flex;
253
+  font-size: 16px;
254
+  justify-content: space-between;
255
+  margin: 10px 0;
256
+}
257
+.listTable {
258
+  width: 100%;
259
+  text-align: center;
260
+  border-collapse: collapse;
261
+  line-height: 40px;
262
+  font-size: 14px;
263
+  border-color: #000;
264
+  text-align: left;
265
+}
266
+.listTable tr td {
267
+  padding: 0 5px;
268
+}
269
+.tableBottom {
270
+  font-size: 16px;
271
+  display: flex;
272
+  margin-top: 20px;
273
+}
274
+.tableBottomOne {
275
+  margin-right: 40px;
276
+}
277
+</style>