Bläddra i källkod

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

陈少旭 1 år sedan
förälder
incheckning
5fb412cb6e

+ 10 - 2
src/api/schedule.js Visa fil

@@ -306,11 +306,19 @@ export function CreateScheduleTwo(id, schedule,id_two) {
306 306
 
307 307
 
308 308
 export function ChangeScheduleTen(id,schedule){
309
-  
310
-  console.log('schedule', schedule)
309
+
311 310
   return request({
312 311
     url: '/api/schedule/changeschedule?id=' + id+"&bed_id="+schedule.bed_id+"&mode_id="+schedule.mode_id+"&schedule_type="+schedule.schedule_type,
313 312
     method: 'Put',
314 313
     data: schedule
315 314
   })
316 315
 }
316
+
317
+export function getNumberList(id,params){
318
+  
319
+  return request({
320
+    url:"/api/schedule/getordernumber?id="+id,
321
+    method:"Get",
322
+    params:params
323
+  })
324
+}

+ 3 - 3
src/xt_pages/device/objectRegistration.vue Visa fil

@@ -676,7 +676,7 @@
676 676
                    var objectDisinfect =  response.data.data.objectDisinfect
677 677
                    this.$message.success("保存成功!")
678 678
                    this.dialogFormVisible = false
679
-                   this.getObjectTableDisInfectList()
679
+                   this.getlist()
680 680
                  }
681 681
               })
682 682
             }
@@ -847,11 +847,11 @@
847 847
 
848 848
        handleSizeChange(val) {
849 849
         this.limit = val;
850
-        this.getObjectTableDisInfectList()
850
+        this.getlist()
851 851
       },
852 852
       handleCurrentChange(val) {
853 853
         this.page = val;
854
-        this.getObjectTableDisInfectList()
854
+        this.getlist()
855 855
       },
856 856
 
857 857
       saveObjectRegistration(formName){

+ 23 - 21
src/xt_pages/dialysis/details/dialog/treatmentSummaryDialog.vue Visa fil

@@ -476,32 +476,34 @@ export default {
476 476
             modify_other_url: "/api/dialysis/treatmentsummary?mode=3",
477 477
             module: 9,
478 478
           },
479
-        })
480
-        .then((res) => {
479
+        }).then((res) => {
481 480
           if (res.data.state == 0) {
482 481
             this.hasPermission = false;
483 482
           } else if (res.data.state == 1) {
484
-            if (this.record.id != "" && this.record.creater != 0) {
485
-              // 有数据
486
-              if (this.record.creater == this.$store.getters.user.admin.id) {
487
-                // 创建人是自己
488
-                if (res.data.data.is_has_modify == false) {
489
-                  this.hasPermission = false;
490
-                  this.showTxt = "你没有修改治疗小结权限";
483
+            if(this.org_id!=10340){
484
+                if (this.record.id != "" && this.record.creater != 0) {
485
+                // 有数据
486
+                if (this.record.creater == this.$store.getters.user.admin.id) {
487
+                  // 创建人是自己
488
+                  if (res.data.data.is_has_modify == false) {
489
+                    this.hasPermission = false;
490
+                    this.showTxt = "你没有修改治疗小结权限";
491
+                  }
492
+                } else {
493
+                  // 创建人不是自己
494
+                  if (res.data.data.is_has_modify_other == false) {
495
+                    this.hasPermission = false;
496
+                    this.showTxt = "你没有修改他人治疗小结权限";
497
+                  }
491 498
                 }
492
-              } else {
493
-                // 创建人不是自己
494
-                if (res.data.data.is_has_modify_other == false) {
499
+              } else if (this.record.id == "" || this.record.creater == 0) {
500
+                if (res.data.data.is_has_create == false) {
495 501
                   this.hasPermission = false;
496
-                  this.showTxt = "你没有修改他人治疗小结权限";
502
+                  this.showTxt = "你没有新增治疗小结权限";
497 503
                 }
498 504
               }
499
-            } else if (this.record.id == "" || this.record.creater == 0) {
500
-              if (res.data.data.is_has_create == false) {
501
-                this.hasPermission = false;
502
-                this.showTxt = "你没有新增治疗小结权限";
503
-              }
504 505
             }
506
+           
505 507
           }
506 508
         });
507 509
     },
@@ -587,9 +589,9 @@ export default {
587 589
 
588 590
        if(this.org_id ==10090){
589 591
           var str = " 患者今日来我科行血液透析治疗,血管通路选择:"+this.predialysis_evaluation.blood_access_part_id+ " "+this.QueryOperaById(this.predialysis_evaluation.blood_access_part_opera_id) +",透析模式:"+this.getModeId(this.prescription.mode_id)+
590
-        ",透前检查:"+this.predialysis_evaluation.internal_fistula +this.predialysis_evaluation.catheter + str_one +" "+ ",透析器:"+this.prescription.dialyzer_perfusion_apparatus + ",抗凝剂:"+this.GetAnticoagulant(this.prescription.anticoagulant) +",总量:"+this.prescription.anticoagulant_zongliang+"iu"+
591
-        ",透前体重:"+this.predialysis_evaluation.weight_before+"kg"+",间期体重增长:"+total +"kg"+",目标脱水量:"+this.prescription.target_ultrafiltration +"ml" +",血流量:"+this.prescription.blood_flow_volume+"ml/min" + ",透析开始时间:"+this.getTime(this.dialysis_order.start_time) +","+"透析结束时间:"+this.getTime(this.dialysis_order.end_time) +
592
-        ",实际治疗时长:"+ this.assessment_after_dislysis.actual_treatment_hour +"时"+this.assessment_after_dislysis.actual_treatment_minute+"分" +",实际超滤量:"+this.assessment_after_dislysis.actual_ultrafiltration+"ml"+",透后体重:"+this.assessment_after_dislysis.weight_after+"kg"+",透析过程顺利,安全下机" + " "
592
+        ",透前检查:"+this.predialysis_evaluation.internal_fistula +this.predialysis_evaluation.catheter + str_one +" "+ ",透析器:"+this.prescription.dialyzer_perfusion_apparatus +
593
+        ",透前体重:"+this.predialysis_evaluation.weight_before+"kg"+",间期体重增长:"+total +"kg"+",目标脱水量:"+this.prescription.target_ultrafiltration +"L" +",血流量:"+this.prescription.blood_flow_volume+"ml/min" + ",透析开始时间:"+this.getTime(this.dialysis_order.start_time) +","+"透析结束时间:"+this.getTime(this.dialysis_order.end_time) +
594
+        ",实际治疗时长:"+ this.assessment_after_dislysis.actual_treatment_hour +"时"+this.assessment_after_dislysis.actual_treatment_minute+"分" +",实际超滤量:"+this.assessment_after_dislysis.actual_ultrafiltration+"L"+",透后体重:"+this.assessment_after_dislysis.weight_after+"kg"+",透析过程顺利,安全下机" + " "
593 595
         +",今日使用药品:"+doc_str +",患者下机后测血压,"+"收缩压:"+this.assessment_after_dislysis.systolic_blood_pressure+"mmHg"+",舒张压:"+this.assessment_after_dislysis.diastolic_blood_pressure+"mmHg"+",脉搏:"+this.assessment_after_dislysis.pulse_frequency +"次/分"
594 596
 
595 597
         console.log("str000000000000000000222o2o2",str)

+ 182 - 57
src/xt_pages/dialysis/template/DialysisPrintOrdersixtySeven.vue Visa fil

@@ -45,13 +45,24 @@
45 45
                   }}</td>
46 46
               </tr>
47 47
               <tr>
48
-                <td>病床床号:</td>
49
-                <td>治疗时间:</td>
50
-                <td>干体重:{{ predialysis.dry_weight ? predialysis.dry_weight : "/" }}</td>
48
+                <td>病床床号:
49
+                  <span>
50
+                  {{
51
+                    dialysisOrder &&
52
+                    dialysisOrder.DeviceNumber &&
53
+                    dialysisOrder.DeviceNumber.number.length > 0
54
+                      ? dialysisOrder.DeviceNumber.number
55
+                      : patientInfo.DialysisSchedule.device_number.number
56
+                    }}
57
+                  </span>
58
+                </td>
59
+                <td>治疗时间:
60
+                  {{afterdialysis.actual_treatment_hour }}<span v-if="afterdialysis.actual_treatment_hour>0">时</span>
61
+                  <span v-if="afterdialysis.actual_treatment_minute>0">{{afterdialysis.actual_treatment_minute>0}}</span> {{afterdialysis.actual_treatment_minute }}<span v-if="afterdialysis.actual_treatment_minute>0">分</span>
62
+                </td>
63
+                <td>干体重:{{ predialysis.dry_weight ? predialysis.dry_weight : "/" }}kg</td>
51 64
                 <td>上次透后体重:
52
-                  {{predialysis.weight_after_last_transparency
53
-                      ? predialysis.weight_after_last_transparency
54
-                      : "未称重"}}
65
+                  {{lastafterdialysis.weight_after?lastafterdialysis.weight_after:"未称重"}}
55 66
                 </td>
56 67
               </tr>
57 68
               <tr>
@@ -60,23 +71,34 @@
60 71
                     predialysis.weight_before ? predialysis.weight_before : "/"
61 72
                   }}kg
62 73
                 </td>
63
-                <td>透析总次数:</td>
64
-                <td colspan="2">患者评估:</td>
74
+                <td>透析总次数:{{ patientInfo.total_dialysis + patientInfo.user_sys_before_count }}</td>
75
+                <td colspan="2">患者评估:
76
+                  {{ receiverTreatmentAccess.sick_condition ? receiverTreatmentAccess.sick_condition : "/" }}
77
+                </td>
65 78
               </tr>
66 79
               <tr>
67 80
                 <td colspan="4">
68
-                  <span style="width: 14%;">血管通路:</span>
69
-                  <span style="width: 14%;">部位:</span>
70
-                  <span style="width: 14%;">通路评估:</span>
71
-                  <span style="width: 14%;">震颤:</span>
72
-                  <span style="width: 14%;">外观:</span>
81
+                  <span style="width: 14%;">血管通路:
82
+                    {{ predialysis.blood_access_part_opera_name }}
83
+                  </span>
84
+                  <span style="width: 14%;">部位:
85
+                    {{ predialysis.blood_access_part_id }}
86
+                 </span>
87
+                  <span style="width: 14%;">通路评估:
88
+                     <span v-if="predialysis.internal_fistula.indexOf('震颤-存在') >-1">震颤-存在</span>
89
+                     <span v-if="predialysis.internal_fistula.indexOf('震颤-减弱') >-1">震颤-减弱</span>
90
+                     <span v-if="predialysis.internal_fistula.indexOf('震颤-无') >-1">震颤-无</span>
91
+
92
+                  </span>
93
+                  <!-- <span style="width: 14%;">震颤:</span> -->
94
+                  <!-- <span style="width: 14%;">外观:</span> -->
73 95
                   <span style="width: 14%;">置换方式:
74 96
                     {{
75 97
                       getDisplaceLiquiPart(prescription.displace_liqui_part)
76 98
                     }}
77 99
                   </span>
78 100
                   <span style="width: 14%;">置换总量:
79
-                    {{ prescription.displace_liqui_value ? prescription.displace_liqui_value : "/" }}
101
+                    {{ prescription.displace_liqui_value ? prescription.displace_liqui_value : "" }}
80 102
                   </span>
81 103
                 </td>
82 104
               </tr>
@@ -84,28 +106,31 @@
84 106
                 <td colspan="4">
85 107
                   <div>
86 108
                     透前生命体征:
87
-                    T <span>
109
+                    T <span>
88 110
                         {{predialysis.temperature
89 111
                         ? predialysis.temperature : "/"
90
-                          }}
112
+                          }}
91 113
                       </span>&nbsp;
92
-                    P <span>
114
+                    P <span>
93 115
                         {{
94 116
                           predialysis.pulse_frequency
95 117
                             ? predialysis.pulse_frequency
96 118
                             : "/"
119
+
97 120
                         }}
121
+                         次/分
98 122
                       </span>&nbsp;
99
-                    R <span>
123
+                    R <span>
100 124
                         {{
101 125
                           predialysis.breathing_rate
102 126
                             ? predialysis.breathing_rate
103 127
                             : "/"
104 128
                         }}
129
+                         次/分
105 130
                       </span>&nbsp;
106
-                    BP <span>
107
-                        {{predialysis.systolic_blood_pressure ? predialysis.systolic_blood_pressure : "/"}} /
108
-                        {{ predialysis.diastolic_blood_pressure ? predialysis.diastolic_blood_pressure : '/' }}
131
+                    BP <span>
132
+                        {{predialysis.systolic_blood_pressure ? predialysis.systolic_blood_pressure : "/"}} mmHg/
133
+                        {{ predialysis.diastolic_blood_pressure ? predialysis.diastolic_blood_pressure : '/' }} mmHg
109 134
                       </span>&nbsp;
110 135
                   </div>
111 136
                 </td>
@@ -119,33 +144,85 @@
119 144
               style="border-collapse: collapse;text-align: left;width: 100%;
120 145
             ">
121 146
               <tr>
122
-                <td>治疗模式:</td>
147
+                <td>治疗模式:
148
+                  <span v-if="prescription.mode_id == 1">HD</span>
149
+                  <span v-if="prescription.mode_id == 2">HDF</span>
150
+                  <span v-if="prescription.mode_id == 3">HD+HP</span>
151
+                  <span v-if="prescription.mode_id == 4">HP</span>
152
+                  <span v-if="prescription.mode_id == 5">HF</span>
153
+                  <span v-if="prescription.mode_id == 6">SCUF</span>
154
+                  <span v-if="prescription.mode_id == 7">IUF</span>
155
+                  <span v-if="prescription.mode_id == 8">HFHD</span>
156
+                  <span v-if="prescription.mode_id == 9"> HFHD+HP</span>
157
+                  <span v-if="prescription.mode_id == 10">PHF</span>
158
+                  <span v-if="prescription.mode_id == 11">HFR</span>
159
+                  <span v-if="prescription.mode_id == 12">HDF+HP</span>
160
+                  <span v-if="prescription.mode_id == 13">CRRT</span>
161
+                  <span v-if="prescription.mode_id == 14">腹水回输</span>
162
+                  <span v-if="prescription.mode_id == 15">HD前置换</span>
163
+                  <span v-if="prescription.mode_id == 16">HD后置换</span>
164
+                  <span v-if="prescription.mode_id == 17">HDF前置换</span>
165
+                  <span v-if="prescription.mode_id == 18">HDF后置换</span>
166
+                  <span v-if="prescription.mode_id == 19"> IUF+HD</span>
167
+                  <span v-if="prescription.mode_id == 22"> 血浆胆红素吸附+HDF</span>
168
+                  <span v-if="prescription.mode_id == 23"> 血浆胆红素吸附</span>
169
+                  <span v-if="prescription.mode_id == 24">I-HDF</span>
170
+                  <span v-if="prescription.mode_id == 25"> HD高通</span>
171
+                  <span v-if="prescription.mode_id == 29"> PE</span>
172
+                  <span v-if="prescription.mode_id == 30">血浆胆红素吸附+HP</span>
173
+                </td>
123 174
                 <td>
124 175
                   透析时长:
125 176
                   {{ prescription.dialysis_duration_hour ? prescription.dialysis_duration_hour : "0" }} h
126 177
                   {{ prescription.dialysis_duration_minute ? prescription.dialysis_duration_minute : "0" }} min
127 178
                 </td>
128
-                <td>预超:</td>
179
+                <td>预超:{{prescription.target_ultrafiltration }}L</td>
129 180
                 <td>血流量:{{ prescription.blood_flow_volume ? prescription.blood_flow_volume : "/" }}</td>
130 181
               </tr>
131 182
               <tr>
132
-                <td colspan="4">抗凝剂:</td>
183
+                <td colspan="4">抗凝剂:
184
+                  {{prescription.anticoagulant_name?prescription.anticoagulant_name : "/"}}
185
+                </td>
133 186
               </tr>
134 187
               <tr>
135
-                <td colspan="2">透析机:</td>
136
-                <td colspan="2">透析器:
188
+                <td colspan="2">透析机:
189
+                  {{predialysis.machine_type ? predialysis.machine_type : ""}}
190
+                </td>
191
+                <td colspan="2">透析器/灌流器:
137 192
                   {{ prescription.dialysis_dialyszers ? prescription.dialysis_dialyszers : "/" }}
193
+
194
+                  {{ prescription.dialysis_irrigation ? prescription.dialysis_irrigation : "/" }}
138 195
                 </td>
139 196
               </tr>
140 197
               <tr>
141 198
                 <td colspan="4">
142
-                  <span style="width: 14%;">透析液:</span>
199
+                  <span style="width: 14%;">透析液:
200
+                   流量: {{prescription.dialysate_flow?prescription.dialysate_flow:"" }} ml/min
201
+                   温度: {{ prescription.dialysate_temperature }} ℃
202
+                   钾:{{ prescription.kalium }} mmol/L
203
+                   钠:{{ prescription.sodium }} mmol/L
204
+                   钙:{{ prescription.calcium }} mmol/L
205
+                   碳酸氢盐: {{ prescription.bicarbonate }} mmol/L
206
+                  </span>
143 207
                 </td>
144 208
               </tr>
145 209
               <tr>
146 210
                 <td colspan="2"></td>
147 211
                 <td colspan="2">
148 212
                   处方医生:
213
+                  <span
214
+                    style="height: 30px; display: inline-block"
215
+                      v-if="setAdminUserES(doctor_advices[0].advice_doctor) == ''"
216
+                      >
217
+                     {{ getAdminUser(doctor_advices[0].advice_doctor) }}
218
+                  </span>
219
+                  <img
220
+                    style="height: 40px"
221
+                    :src="setAdminUserES(doctor_advices[0].advice_doctor)"
222
+                    alt=""
223
+                    srcset=""
224
+                    v-else
225
+                  />
149 226
                 </td>
150 227
               </tr>
151 228
             </table>
@@ -175,20 +252,37 @@
175 252
                 <th width="50">超滤率<br>ml/h</th>
176 253
                 <th width="50">电导率<br>ms/cm</th>
177 254
               </tr>
178
-              <tr>
179
-                <td></td>
180
-                <td></td>
181
-                <td></td>
182
-                <td></td>
183
-                <td></td>
184
-                <td></td>
185
-                <td></td>
186
-                <td></td>
187
-                <td></td>
188
-                <td></td>
189
-                <td></td>
190
-                <td></td>
191
-                <td></td>
255
+              <tr v-for="(monitor, monindex) in monitors" :key="monindex">
256
+                <td>{{ getTime(monitor.operate_time, "{h}:{i}") }}</td>
257
+                <td>{{monitor.systolic_blood_pressure? monitor.systolic_blood_pressure + "/": ""}}
258
+                {{monitor.diastolic_blood_pressure? monitor.diastolic_blood_pressure: ""}}</td>
259
+                <td>{{monitor.breathing_rate ? monitor.breathing_rate : ""}}</td>
260
+                <td>{{ monitor.pulse_frequency? monitor.pulse_frequency: ""}}</td>
261
+                <td>{{monitor.blood_flow_volume? monitor.blood_flow_volume: ""}}</td>
262
+                <td>{{monitor.venous_pressure? monitor.venous_pressure: ""}}</td>
263
+                <td>{{monitor.dialysate_temperature? monitor.dialysate_temperature: ""}}</td>
264
+                <td>{{monitor.replacement_rate? monitor.replacement_rate: ""}}</td>
265
+                <td>{{monitor.ultrafiltration_volume? monitor.ultrafiltration_volume: ""}}</td>
266
+                <td>{{monitor.ultrafiltration_rate? monitor.ultrafiltration_rate: ""}}</td>
267
+                <td>{{monitor.conductivity? monitor.conductivity: ""}}</td>
268
+                <td>{{monitor.dispose? monitor.dispose: ""}}
269
+                  {{monitor.result? monitor.result: ""}}
270
+                </td>
271
+                <td>
272
+                  <span
273
+                    style="height: 30px; display: inline-block"
274
+                      v-if="setAdminUserES(monitor.creater) == ''"
275
+                      >
276
+                     {{ getAdminUser(monitor.creater) }}
277
+                  </span>
278
+                  <img
279
+                    style="height: 40px"
280
+                    :src="setAdminUserES(monitor.creater)"
281
+                    alt=""
282
+                    srcset=""
283
+                    v-else
284
+                  />
285
+                </td>
192 286
               </tr>
193 287
             </table>
194 288
           </div>
@@ -297,7 +391,9 @@
297 391
                       : "/"
298 392
                   }}
299 393
                 </td>
300
-                <td>实超:</td>
394
+                <td>实超:
395
+                  {{ afterdialysis.actual_ultrafiltration }}ml
396
+                </td>
301 397
                 <td>实际治疗时长:
302 398
                   {{
303 399
                     afterdialysis.actual_treatment_hour
@@ -310,25 +406,42 @@
310 406
                   }}分钟
311 407
                 </td>
312 408
                 <td>下机时间:
313
-                  <!-- {{ getTime(Order.end_time, "{y}-{m}-{d} {h}:{i}") ? getTime(Order.end_time, "{y}-{m}-{d} {h}:{i}") : "0" }} -->
409
+                  {{ getTime(dialysisOrder.end_time, "{y}-{m}-{d} {h}:{i}") ? getTime(dialysisOrder.end_time, "{y}-{m}-{d} {h}:{i}") : "0" }}
314 410
                 </td>
315 411
               </tr>
316 412
               <tr>
317 413
                 <td colspan="4">
318 414
                   <div>
319 415
                     透后生命体征:
320
-                    T <span>36.5 ℃</span>&nbsp;
321
-                    P <span>36.5 ℃</span>&nbsp;
322
-                    R <span>36.5 ℃</span>&nbsp;
323
-                    BP <span>36.5 ℃</span>&nbsp;
416
+                    T: <span>
417
+                      {{ afterdialysis.temperature }}  ℃
418
+                    </span>&nbsp;
419
+                    P: <span>
420
+                     {{ afterdialysis.pulse_frequency }} 次/分
421
+                    </span>&nbsp;
422
+                    R: <span>
423
+                      {{ afterdialysis.breathing_rate }} 次/分
424
+                    </span>&nbsp;
425
+                    BP: <span>
426
+                      {{ afterdialysis.systolic_blood_pressure }} mmHg / {{ afterdialysis.diastolic_blood_pressure }}mmHg
427
+                    </span>&nbsp;
324 428
                   </div>
325 429
                 </td>
326 430
               </tr>
327 431
               <tr>
328 432
                 <td colspan="4">
329
-                  <span style="width: 14%;">通路评估:</span>
330
-                  <span style="width: 14%;">震颤:</span>
331
-                  <span style="width: 14%;">外观:</span>
433
+                  <span style="width: 14%;">通路评估:
434
+                    {{
435
+                      afterdialysis.internal_fistula
436
+                        ? afterdialysis.internal_fistula
437
+                        : ""
438
+                     }}
439
+
440
+                     {{
441
+                        afterdialysis.catheter ? afterdialysis.catheter : ""
442
+                    }}
443
+                  </span>
444
+
332 445
                 </td>
333 446
               </tr>
334 447
             </table>
@@ -336,7 +449,9 @@
336 449
 
337 450
           <div class="infoTitle">治疗小结</div>
338 451
           <div style="height: 80px;margin: 10px 0px;text-align: left;">
339
-            <span>治疗小结:</span>
452
+            <span>治疗小结:
453
+            {{summary.dialysis_summary?summary.dialysis_summary:'/'}}
454
+            </span>
340 455
           </div>
341 456
           <div style="text-align: left;width: 100%;">
342 457
             <table>
@@ -373,18 +488,28 @@
373 488
                       srcset=""
374 489
                       v-else
375 490
                     />
376
-                    
491
+
377 492
                   </span>
378 493
                 </td>
379
-                <td width="10%">核对护士:</td>
494
+                <td width="18%">核对护士:
495
+
496
+                 <span v-if="setAdminUserES(dialysisOrder==null?0:dialysisOrder.finish_nurse) == ''">{{getAdminUser(dialysisOrder==null?0:dialysisOrder.finish_nurse)}}</span>
497
+                <img style="height:20px;" :src="setAdminUserES(dialysisOrder==null?0:dialysisOrder.finish_nurse)" alt="" srcset="" v-else>
498
+                </td>
380 499
                 <td width="10%"></td>
381
-                <td width="10%">下机护士:</td>
500
+                <td width="15%">下机护士:
501
+                 <span v-if="setAdminUserES(dialysisOrder==null?0:dialysisOrder.finish_nurse) == ''">{{getAdminUser(dialysisOrder==null?0:dialysisOrder.finish_nurse)}}</span>
502
+                                      <img style="height:20px;" :src="setAdminUserES(dialysisOrder==null?0:dialysisOrder.finish_nurse)" alt="" srcset="" v-else>
503
+                </td>
382 504
                 <td width="10%"></td>
383
-                <td width="10%">医生:</td>
505
+                <td width="10%">医生:
506
+                 <span v-if="setAdminUserES(prescription.creater) == ''">{{getAdminUser(prescription.creater)}}</span>
507
+                                      <img style="height:20px;" :src="setAdminUserES(prescription.creater)" alt="" srcset="" v-else>
508
+                </td>
384 509
                 <td width="10%"></td>
385 510
               </tr>
386 511
             </table>
387
-          
512
+
388 513
           </div>
389 514
         </div>
390 515
       </div>
@@ -1407,7 +1532,7 @@ export default {
1407 1532
   .table tr td{
1408 1533
     padding: 5px;
1409 1534
   }
1410
-  
1535
+
1411 1536
 
1412 1537
 }
1413 1538
 </style>

+ 5 - 5
src/xt_pages/outpatientCharges/invoicePrint.vue Visa fil

@@ -10,7 +10,7 @@
10 10
         type="primary"
11 11
       >打印</el-button>
12 12
     </template>
13
-    <div class="app-container" style="padding-top:40px;" v-if="org_id != 10217 && org_id != 0 && org_id != 10485">
13
+    <div class="app-container" style="padding-top:40px;" v-if="org_id != 10217 && org_id != 0 && org_id != 10485 && org_id != 10375"><!---->
14 14
         <div class='dialysisPage'>
15 15
           <div v-if="org_id != 10106 && org_id != 10215 && org_id != 4 && org_id != 10188 && org_id != 10217 && org_id != 0 && org_id != 10387&& org_id != 10210 && org_id != 10387" >
16 16
             <printOne v-if="org_id != 10088 " :paramsObj="invoiceParams"></printOne>
@@ -19,7 +19,7 @@
19 19
           <printTwo v-if="org_id == 10106" :paramsObj="invoiceParams"></printTwo>
20 20
           <printFour v-if="org_id == 10215 || org_id == 4 " :paramsObj="invoiceParams"></printFour>
21 21
           <printFive v-if="org_id == 10188 " :paramsObj="invoiceParams"></printFive>
22
-          <printSix v-if="org_id == 10217  || org_id == 0" :paramsObj="invoiceParams"></printSix>
22
+          <!-- <printSix v-if="org_id == 10217  " :paramsObj="invoiceParams"></printSix> -->
23 23
 <!--          <printEight v-if="org_id == 10387 || org_id == 0" :paramsObj="invoiceParams"></printEight>-->
24 24
           <print-eight v-if="org_id == 10387" :paramsObj="invoiceParams"></print-eight>
25 25
           <PrintNight v-if="org_id == 10210" :paramsObj="invoiceParams"></PrintNight>
@@ -33,12 +33,12 @@
33 33
       </div>
34 34
     </div>
35 35
 
36
-    <div class="app-container" style="" v-if="org_id == 10217">
36
+    <div class="app-container" style="" v-if="org_id == 10217 || org_id == 0">
37 37
       <div class='dialysisPage'>
38
-        <printSix v-if="org_id == 10217  " :paramsObj="invoiceParams"></printSix>
38
+        <printSix :paramsObj="invoiceParams"></printSix>
39 39
       </div>
40 40
     </div>
41
-    <div class="app-container" style="padding-top:40px;" v-if="org_id == 10375 ||org_id == 0">
41
+    <div class="app-container" style="padding-top:40px;" v-if="org_id == 10375 ">
42 42
       <div class='dialysisPage'>
43 43
         <print-ten :paramsObj="invoiceParams"></print-ten>
44 44
       </div>

+ 33 - 273
src/xt_pages/outpatientCharges/invoiceTemplate/printSix.vue Visa fil

@@ -1,255 +1,14 @@
1
-<template>
2
-  <div id='invoice-print'>
3
-    <div v-for='(i,index) in pageArr.length' :key="index" >
4
-      <div :style="{position: 'absolute',top:(30 + (index * 415))  + 'px',left:200+ 'px',}">盐城大丰悦达金骆驼血液透析中心</div>
5
-      <div :style="{position: 'absolute',top:(70 + (index * 415))  + 'px',left:150+ 'px',}">{{ list.order_number }}</div>
6
-      <div style="display:flex;justify-content: space-between;">
7
-        <div :style="{position: 'absolute',top:(100 + (index * 415))  + 'px',left:100+ 'px',}">{{ paramsObj.name }}</div>
8
-      </div>
9
-      <div :style="{position: 'absolute',top:(190 + (index * 415))  + 'px',left:120+ 'px',}">
10
-        <div v-if="list.westernMedicineCostTotal">西药 {{ list.westernMedicineCostTotal }}</div>
11
-        <div v-if="list.treatCostTotal">治疗费 {{ list.treatCostTotal }}</div>
12
-        <div v-if="list.bedCostTotal">床位费 {{ list.bedCostTotal }}</div>
13
-        <div v-if="list.chineseTraditionalMedicineCostTotal">中成药 {{ list.chineseTraditionalMedicineCostTotal }}</div>
14
-        <div v-if="list.laboratoryCostTotal">化验费 {{ list.laboratoryCostTotal }}</div>
15
-        <div v-if="list.operationCostTotal">手术费 {{ list.operationCostTotal }}</div>
16
-        <div v-if="list.otherCostTotal">其他费 {{ list.otherCostTotal }}</div>
17
-        <div v-if="list.materialCostTotal">材料费 {{ list.materialCostTotal }}</div>
18
-      </div>
19
-      <div :style="{position: 'absolute',top:(190 + (index * 420))  + 'px',left:300+ 'px'}">
20
-        <div v-for="item in list.order_info.slice(index * 10,(index * 10) + pageArr[index])">
21
-                    <span style="display:inline-block;width:300px;">
22
-                        <span v-if="item.advice.id == 0">
23
-                            <span v-if="item.project.type == 2"> {{ item.project.project.project_name }}</span>
24
-                            <span v-if="item.project.type == 3">{{ item.project.good_info.good_name }}</span>
25
-                        </span>
26
-                        <span v-else>{{ item.advice.advice_name }}</span>
27
-                    </span>
28
-          <span style="display:inline-block;width:50px;">
29
-                        <span v-if="item.advice.id == 0">
30
-                            <span v-if="item.project.type == 2">{{ item.project.count }}{{ item.project.unit }}</span>
31
-                            <span v-if="item.project.type == 3">{{ item.project.count }}{{ item.project.unit }}</span>
32
-                        </span>
33
-                        <span v-else>{{ item.advice.prescribing_number }}{{ item.advice.prescribing_number_unit }}</span>
34
-                    </span>
35
-          <span>
36
-                        <span v-if="item.advice.id == 0">
37
-                            <span v-if="item.project.type == 2">{{ (item.project.count * item.pric).toFixed(2) }}</span>
38
-                            <span v-if="item.project.type == 3">{{ (item.project.count * item.pric).toFixed(2) }}</span>
39
-                        </span>
40
-                        <span v-else>{{ (item.advice.prescribing_number * item.pric).toFixed(2) }}</span>
41
-                    </span>
42
-        </div>
43
-      </div>
44
-      <div :style="{position: 'absolute',top:(350 + (index * 415))  + 'px',left:130+ 'px'}">{{ zhongwen }}</div>
45
-      <div :style="{position: 'absolute',top:(350 + (index * 415))  + 'px',left:480+ 'px'}">{{ list.medfee_sumamt }}</div>
46
-      <div v-if="index == pageArr.length - 1" :style="{position: 'absolute',top:(370 + (index * 415))  + 'px',left:110+ 'px',width:100 + '%',fontSize:12+'px'}">
47
-        <div style="display:flex;">
48
-          <div style="width:140px">医疗总费用:{{ list.order.medfee_sumamt }}</div>
49
-          <div style="width:140px">基金支付总额:{{ list.order.fund_pay_sumamt }}</div>
50
-          <div style="width:140px">统筹支出:{{ list.order.hifp_pay }}</div>
51
-          <div style="width:140px">大病支出:{{list.order.hifmi_pay}}</div>
52
-          <div style="width:140px">个人账户支付:{{ list.order.acct_pay }}</div>
53
-          <div style="width:140px">现金支出:{{ list.order.psn_cash_pay }}</div>
54
-          <div style="width:220px">医疗救助基金支出:{{ list.order.maf_pay }}</div>
55
-
56
-        </div>
57
-        <div style="display:flex;">
58
-          <div style="width:140px">本次账户:0</div>
59
-          <div style="width:140px">上次账户:0</div>
60
-          <div style="width:140px">账户余额:{{ list.order.balc }}</div>
61
-          <div style="width:140px">其他支出:{{ list.order.oth_pay }}</div>
62
-          <div style="width:140px">大病补充保险支出:0</div>
63
-          <div style="width:140px">民政支出:0</div>
64
-          <div style="width:280px">企业补充医疗保险基金支出:{{ list.order.hifes_pay }}</div>
65
-        </div>
66
-
67
-      </div>
68
-      <div v-if="index != pageArr.length - 1">
69
-        <div :style="{position: 'absolute',top:(400 + (index * 415))  + 'px',left:140+ 'px'}">盐城大丰悦达金骆驼血液透析中心</div>
70
-        <div :style="{position: 'absolute',top:(400 + (index * 415))  + 'px',left:410+ 'px'}">{{ paramsObj.chargeName }}</div>
71
-        <div :style="{position: 'absolute',top:(400 + (index * 415))  + 'px',left:550+ 'px'}">
72
-          <span>{{  paramsObj.setl_time ? paramsObj.setl_time.split(' ')[0].slice(0,4) : getTime(list.date, '{y}-{m}-{d}').slice(0,4) }}</span>
73
-        </div>
74
-        <div :style="{position: 'absolute',top:(400 + (index * 415))  + 'px',left:610+ 'px'}">
75
-          <span>{{ paramsObj.setl_time ? parseInt(paramsObj.setl_time.split(' ')[0].slice(5,7)) : getTime(list.date, '{y}-{m}-{d}').slice(5,7) }}</span>
76
-        </div>
77
-        <div :style="{position: 'absolute',top:(400 + (index * 415))  + 'px',left:650+ 'px'}">
78
-          <span>{{ paramsObj.setl_time ? parseInt(paramsObj.setl_time.split(' ')[0].slice(8,11)) : getTime(list.date, '{y}-{m}-{d}').slice(8,11) }}</span>
79
-        </div>
80
-      </div>
81
-
82
-      <div v-if="index == pageArr.length - 1">
83
-        <div :style="{position: 'absolute',top:(400 + (index * 415))  + 'px',left:140+ 'px'}">盐城大丰悦达金骆驼血液透析中心</div>
84
-        <div :style="{position: 'absolute',top:(400 + (index * 415))  + 'px',left:410+ 'px'}">{{ paramsObj.chargeName }}</div>
85
-        <div :style="{position: 'absolute',top:(400 + (index * 415))  + 'px',left:550+ 'px'}">
86
-          <span>{{  paramsObj.setl_time ? paramsObj.setl_time.split(' ')[0].slice(0,4) : getTime(list.date, '{y}-{m}-{d}').slice(0,4) }}</span>
87
-        </div>
88
-        <div :style="{position: 'absolute',top:(400 + (index * 415))  + 'px',left:610+ 'px'}">
89
-          <span>{{ paramsObj.setl_time ? parseInt(paramsObj.setl_time.split(' ')[0].slice(5,7)) : getTime(list.date, '{y}-{m}-{d}').slice(5,7) }}</span>
90
-        </div>
91
-        <div :style="{position: 'absolute',top:(400 + (index * 415))  + 'px',left:650+ 'px'}">
92
-          <span>{{ paramsObj.setl_time ? parseInt(paramsObj.setl_time.split(' ')[0].slice(8,11)) : getTime(list.date, '{y}-{m}-{d}').slice(8,11) }}</span>
93
-        </div>
94
-      </div>
95
-
96
-    </div>
97
-  </div>
98
-</template>
99
-
100 1
 
101
-<script>
102
-import { getInvoice } from '@/api/project/project'
103
-import { uParseTime } from '@/utils/tools'
104
-export default {
105
-  props:{
106
-    paramsObj:Object
107
-  },
108
-  data(){
109
-    return{
110
-      list:{},
111
-      printDate:'',
112
-      zhongwen:'',
113
-      totalPrice:0.0,
114
-      org_id:'',
115
-      org_name:'',
116
-      page:1,
117
-      pageArr:[],
118
-    }
119
-  },
120
-  created(){
121
-    console.log('paramsObj',this.paramsObj)
122
-    let params = {
123
-      order_id: this.paramsObj.order_id,
124
-      patient_id: this.paramsObj.patient_id,
125
-    }
126
-    this.getInvoice(params)
127
-    // var data = new Date();
128
-    // var month =data.getMonth() < 9 ? "0" + (data.getMonth() + 1) : data.getMonth() + 1;
129
-    // var date = data.getDate() <= 9 ? "0" + data.getDate() : data.getDate();
130
-    // this.printDate = data.getFullYear() + "-" + month + "-" + date;
131
-    // this.smalltoBIG(982732.21)
132
-    this.org_id = this.$store.getters.xt_user.org_id
133
-    this.org_name = this.$store.getters.xt_user.org.org_name
134
-  },
135
-  methods:{
136
-    getInvoice(params){
137
-      getInvoice(params).then((res) => {
138
-        // console.log('res',res)
139
-        this.list = res.data.data
140
-        // console.log(this.list,'表单内容打印记得注释')
141
-        this.totalPrice = this.list.westernMedicineCostTotal + this.list.checkCostTotal + this.list.treatCostTotal + this.list.bedCostTotal + this.list.chineseTraditionalMedicineCostTotal +
142
-          this.list.laboratoryCostTotal + this.list.operationCostTotal + this.list.otherCostTotal + this.list.materialCostTotal
143
-        this.smalltoBIG(this.list.medfee_sumamt)
144
-        var data = new Date(res.data.data.date * 1000);
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;
148
-        this.pageArr = []
149
-        this.getPage()
150
-        this.pageArr.push(9)
151
-        console.log('pageArr',this.pageArr.length)
152
-      })
153
-    },
154
-    smalltoBIG(n) {
155
-      // let fraction = ['角', '分'];
156
-      // let digit = ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖'];
157
-      // let unit = [['元.', '万,', '亿,'], ["元",'拾', '佰', '仟']];
158
-      // let head = price < 0 ? '欠' : '';
159
-      // price = Math.abs(price);
160
-      // let upper = '';
161
-      // for (let i = 0; i < fraction.length; i++) {
162
-      // upper += (digit[Math.floor(price * 10 * Math.pow(10, i)) % 10] + fraction[i]).replace(/零./, '');
163
-      // }
164
-      // upper = upper || '整';
165
-      // price = Math.floor(price);
166
-      // for (let i = 0; i < unit[0].length && price > 0; i++) {
167
-      // let p = '';
168
-      // for (let j = 0; j < unit[1].length && price > 0; j++) {
169
-      //     p = digit[price % 10] + unit[1][j] + p;
170
-      //     price = Math.floor(price / 10);
171
-      // }
172
-      // upper = p.replace(/(零.)*零$/, '').replace(/^$/, '零') + unit[0][i] + upper;
173
-      // }
174
-      // this.zhongwen = head + upper.replace(/(零.)*零圆/, '圆').replace(/(零.)+/g, '零').replace(/^整$/, '零圆整')
175
-      // console.log('6666',head + upper.replace(/(零.)*零圆/, '圆').replace(/(零.)+/g, '零').replace(/^整$/, '零圆整'))
176
-      if (!/^(0|[1-9]\d*)(\.\d+)?$/.test(n)){
177
-        return "数据非法";  //判断数据是否大于0
178
-      }
179
-
180
-      var unit = "仟佰拾亿仟佰拾万仟佰拾元角分", str = "";
181
-      n += "00";
182
-
183
-      var indexpoint = n.indexOf('.');  // 如果是小数,截取小数点前面的位数
184
-
185
-      if (indexpoint >= 0){
186
-
187
-        n = n.substring(0, indexpoint) + n.substr(indexpoint+1, 2);   // 若为小数,截取需要使用的unit单位
188
-      }
189
-
190
-      unit = unit.substr(unit.length - n.length);  // 若为整数,截取需要使用的unit单位
191
-      for (var i=0; i < n.length; i++){
192
-        str += "零壹贰叁肆伍陆柒捌玖".charAt(n.charAt(i)) + unit.charAt(i);  //遍历转化为大写的数字
193
-      }
194
-      console.log("str",str)
195
-      if(str == '零元零角零分'){
196
-        this.zhongwen = '零'
197
-      }else{
198
-        this.zhongwen =  str.replace(/零(仟|佰|拾|角)/g, "零").replace(/(零)+/g, "零").replace(/零(万|亿|元)/g, "$1").replace(/(亿)万|壹(拾)/g, "$1$2").replace(/^元零?|零分/g, "").replace(/元$/g, "元整");
199
-      }
200
-
201
-      console.log(this.zhongwen)
202
-    },
203
-    getTime(value, temp) {
204
-      if (value == 0) {
205
-        return ''
206
-      }
207
-      if (value != undefined) {
208
-        return uParseTime(value, temp)
209
-      }
210
-      return ''
211
-    },
212
-    getPage(){
213
-      if(this.list.order_info.length <= 9){
214
-        this.page = 1
215
-        this.pageArr.push(this.list.order_info.length)
216
-      }else if(this.list.order_info.length > 9){
217
-        this.page = parseInt(this.list.order_info.length / 9)
218
-        let num = this.list.order_info.length % 9
219
-        for (var i=0;i<this.page;i++){
220
-          this.pageArr.push(9)
221
-        }
222
-        if(num != 0){
223
-          this.pageArr.push(num)
224
-        }
225
-      }
226
-    }
227
-
228
-  },
229
-  watch:{
230
-    paramsObj:{//深度监听,可监听到对象、数组的变化
231
-      handler(val, oldVal){
232
-        let params = {
233
-          order_id: val.order_id,
234
-          patient_id: val.patient_id,
235
-        }
236
-        this.getInvoice(params)
237
-
238
-      },
239
-      deep:true
240
-    }
241
-  }
242
-}
243
-</script>
244 2
 <template>
3
+  
245 4
   <div id='invoice-print'>
246
-    <div v-for='(i,index) in pageArr.length' :key="index" >
247
-      <div :style="{position: 'absolute',top:(30 + (index * 415))  + 'px',left:200+ 'px',}">盐城大丰悦达金骆驼血液透析中心</div>
248
-      <div :style="{position: 'absolute',top:(70 + (index * 415))  + 'px',left:150+ 'px',}">{{ list.order_number }}</div>
5
+    <div v-for='(i,index) in pageArr.length' :key="index" style="position: relative;">
6
+      <div :style="{position: 'absolute',top:(38 + (index * 380))  + 'px',left:152+ 'px',}">盐城大丰悦达金骆驼血液透析中心</div>
7
+      <div :style="{position: 'absolute',top:(76 + (index * 380))  + 'px',left:117+ 'px',}">{{ list.order_number }}</div>
249 8
       <div style="display:flex;justify-content: space-between;">
250
-        <div :style="{position: 'absolute',top:(100 + (index * 415))  + 'px',left:100+ 'px',}">{{ paramsObj.name }}</div>
9
+        <div :style="{position: 'absolute',top:(95 + (index * 380))  + 'px',left:92+ 'px',}">{{ paramsObj.name }}</div>
251 10
       </div>
252
-      <div :style="{position: 'absolute',top:(190 + (index * 415))  + 'px',left:120+ 'px',}">
11
+      <div :style="{position: 'absolute',top:(140 + (index * 380))  + 'px',left:76+ 'px',}">
253 12
         <div v-if="list.westernMedicineCostTotal">西药 {{ list.westernMedicineCostTotal }}</div>
254 13
         <div v-if="list.treatCostTotal">治疗费 {{ list.treatCostTotal }}</div>
255 14
         <div v-if="list.bedCostTotal">床位费 {{ list.bedCostTotal }}</div>
@@ -259,7 +18,7 @@ export default {
259 18
         <div v-if="list.otherCostTotal">其他费 {{ list.otherCostTotal }}</div>
260 19
         <div v-if="list.materialCostTotal">材料费 {{ list.materialCostTotal }}</div>
261 20
       </div>
262
-      <div :style="{position: 'absolute',top:(190 + (index * 420))  + 'px',left:300+ 'px'}">
21
+      <div :style="{position: 'absolute',top:(140 + (index * 380))  + 'px',left:247+ 'px'}">
263 22
         <div v-for="item in list.order_info.slice(index * 10,(index * 10) + pageArr[index])">
264 23
                     <span style="display:inline-block;width:300px;">
265 24
                         <span v-if="item.advice.id == 0">
@@ -269,24 +28,24 @@ export default {
269 28
                         <span v-else>{{ item.advice.advice_name }}</span>
270 29
                     </span>
271 30
           <span style="display:inline-block;width:50px;">
272
-                        <span v-if="item.advice.id == 0">
273
-                            <span v-if="item.project.type == 2">{{ item.project.count }}{{ item.project.unit }}</span>
274
-                            <span v-if="item.project.type == 3">{{ item.project.count }}{{ item.project.unit }}</span>
275
-                        </span>
276
-                        <span v-else>{{ item.advice.prescribing_number }}{{ item.advice.prescribing_number_unit }}</span>
277
-                    </span>
31
+              <span v-if="item.advice.id == 0">
32
+                  <span v-if="item.project.type == 2">{{ item.project.count }}{{ item.project.unit }}</span>
33
+                  <span v-if="item.project.type == 3">{{ item.project.count }}{{ item.project.unit }}</span>
34
+              </span>
35
+              <span v-else>{{ item.advice.prescribing_number }}{{ item.advice.prescribing_number_unit }}</span>
36
+          </span>
278 37
           <span>
279
-                        <span v-if="item.advice.id == 0">
280
-                            <span v-if="item.project.type == 2">{{ (item.project.count * item.pric).toFixed(2) }}</span>
281
-                            <span v-if="item.project.type == 3">{{ (item.project.count * item.pric).toFixed(2) }}</span>
282
-                        </span>
283
-                        <span v-else>{{ (item.advice.prescribing_number * item.pric).toFixed(2) }}</span>
284
-                    </span>
38
+              <span v-if="item.advice.id == 0">
39
+                  <span v-if="item.project.type == 2">{{ (item.project.count * item.pric).toFixed(2) }}</span>
40
+                  <span v-if="item.project.type == 3">{{ (item.project.count * item.pric).toFixed(2) }}</span>
41
+              </span>
42
+              <span v-else>{{ (item.advice.prescribing_number * item.pric).toFixed(2) }}</span>
43
+          </span>
285 44
         </div>
286 45
       </div>
287
-      <div :style="{position: 'absolute',top:(350 + (index * 415))  + 'px',left:130+ 'px'}">{{ zhongwen }}</div>
288
-      <div :style="{position: 'absolute',top:(350 + (index * 415))  + 'px',left:480+ 'px'}">{{ list.medfee_sumamt }}</div>
289
-      <div v-if="index == pageArr.length - 1" :style="{position: 'absolute',top:(370 + (index * 415))  + 'px',left:110+ 'px',width:100 + '%',fontSize:12+'px'}">
46
+      <div :style="{position: 'absolute',top:(285 + (index * 380))  + 'px',left:121+ 'px'}">{{ zhongwen }}</div>
47
+      <div :style="{position: 'absolute',top:(285 + (index * 380))  + 'px',left:391+ 'px'}">{{ list.medfee_sumamt }}</div>
48
+      <div v-if="index == pageArr.length - 1" :style="{position: 'absolute',top:(304 + (index * 380))  + 'px',left:125+ 'px',width:100 + '%',fontSize:12+'px'}">
290 49
         <div style="display:flex;">
291 50
           <div style="width:140px">医疗总费用:{{ list.order.medfee_sumamt }}</div>
292 51
           <div style="width:140px">基金支付总额:{{ list.order.fund_pay_sumamt }}</div>
@@ -309,35 +68,36 @@ export default {
309 68
 
310 69
       </div>
311 70
       <div v-if="index != pageArr.length - 1">
312
-        <div :style="{position: 'absolute',top:(400 + (index * 415))  + 'px',left:140+ 'px'}">盐城大丰悦达金骆驼血液透析中心</div>
313
-        <div :style="{position: 'absolute',top:(400 + (index * 415))  + 'px',left:410+ 'px'}">{{ paramsObj.chargeName }}</div>
314
-        <div :style="{position: 'absolute',top:(400 + (index * 415))  + 'px',left:550+ 'px'}">
71
+        <div :style="{position: 'absolute',top:(361 + (index * 380))  + 'px',left:140+ 'px'}">盐城大丰悦达金骆驼血液透析中心</div>
72
+        <div :style="{position: 'absolute',top:(361 + (index * 380))  + 'px',left:374+ 'px'}">{{ paramsObj.chargeName }}</div>
73
+        <div :style="{position: 'absolute',top:(361 + (index * 380))  + 'px',left:435+ 'px'}">
315 74
           <span>{{  paramsObj.setl_time ? paramsObj.setl_time.split(' ')[0].slice(0,4) : getTime(list.date, '{y}-{m}-{d}').slice(0,4) }}</span>
316 75
         </div>
317
-        <div :style="{position: 'absolute',top:(400 + (index * 415))  + 'px',left:610+ 'px'}">
76
+        <div :style="{position: 'absolute',top:(361 + (index * 380))  + 'px',left:479+ 'px'}">
318 77
           <span>{{ paramsObj.setl_time ? parseInt(paramsObj.setl_time.split(' ')[0].slice(5,7)) : getTime(list.date, '{y}-{m}-{d}').slice(5,7) }}</span>
319 78
         </div>
320
-        <div :style="{position: 'absolute',top:(400 + (index * 415))  + 'px',left:650+ 'px'}">
79
+        <div :style="{position: 'absolute',top:(361 + (index * 380))  + 'px',left:500+ 'px'}">
321 80
           <span>{{ paramsObj.setl_time ? parseInt(paramsObj.setl_time.split(' ')[0].slice(8,11)) : getTime(list.date, '{y}-{m}-{d}').slice(8,11) }}</span>
322 81
         </div>
323 82
       </div>
324 83
 
325 84
       <div v-if="index == pageArr.length - 1">
326
-        <div :style="{position: 'absolute',top:(400 + (index * 415))  + 'px',left:140+ 'px'}">盐城大丰悦达金骆驼血液透析中心</div>
327
-        <div :style="{position: 'absolute',top:(400 + (index * 415))  + 'px',left:410+ 'px'}">{{ paramsObj.chargeName }}</div>
328
-        <div :style="{position: 'absolute',top:(400 + (index * 415))  + 'px',left:550+ 'px'}">
85
+        <div :style="{position: 'absolute',top:(361 + (index * 380))  + 'px',left:140+ 'px'}">盐城大丰悦达金骆驼血液透析中心</div>
86
+        <div :style="{position: 'absolute',top:(361 + (index * 380))  + 'px',left:374+ 'px'}">{{ paramsObj.chargeName }}</div>
87
+        <div :style="{position: 'absolute',top:(361 + (index * 380))  + 'px',left:435+ 'px'}">
329 88
           <span>{{  paramsObj.setl_time ? paramsObj.setl_time.split(' ')[0].slice(0,4) : getTime(list.date, '{y}-{m}-{d}').slice(0,4) }}</span>
330 89
         </div>
331
-        <div :style="{position: 'absolute',top:(400 + (index * 415))  + 'px',left:610+ 'px'}">
90
+        <div :style="{position: 'absolute',top:(361 + (index * 380))  + 'px',left:479+ 'px'}">
332 91
           <span>{{ paramsObj.setl_time ? parseInt(paramsObj.setl_time.split(' ')[0].slice(5,7)) : getTime(list.date, '{y}-{m}-{d}').slice(5,7) }}</span>
333 92
         </div>
334
-        <div :style="{position: 'absolute',top:(400 + (index * 415))  + 'px',left:650+ 'px'}">
93
+        <div :style="{position: 'absolute',top:(361 + (index * 380))  + 'px',left:500+ 'px'}">
335 94
           <span>{{ paramsObj.setl_time ? parseInt(paramsObj.setl_time.split(' ')[0].slice(8,11)) : getTime(list.date, '{y}-{m}-{d}').slice(8,11) }}</span>
336 95
         </div>
337 96
       </div>
338 97
 
339 98
     </div>
340 99
   </div>
100
+  
341 101
 </template>
342 102
 
343 103
 

+ 2 - 3
src/xt_pages/outpatientDoctorStation/recordPrint.vue Visa fil

@@ -17,7 +17,6 @@
17 17
           org_id != 10217 && org_id != 10188 &&org_id != 10318&&
18 18
           org_id != 9675 &&
19 19
           org_id != 9671 &&
20
-          org_id != 0 &&
21 20
           org_id != 10164 && org_id != 10341 && 
22 21
           org_id != 10342 && org_id != 10138 &&
23 22
           org_id != 10278
@@ -48,7 +47,7 @@
48 47
       ></printTwo>
49 48
       
50 49
       <printThree
51
-        v-if="org_id == 10318 || org_id == 0 "
50
+        v-if="org_id == 10318"
52 51
         ref="printThree"
53 52
         v-bind:childResponse="childResponse"
54 53
         :patient="patient"
@@ -59,7 +58,7 @@
59 58
       <!-- || org_id == 0-->
60 59
       </printThree>
61 60
       <printFour
62
-        v-if="org_id == 10138 || org_id == 10278 || org_id == 10341 || org_id == 10342 || org_id == 0"
61
+        v-if="org_id == 10138 || org_id == 10278 || org_id == 10341 || org_id == 10342"
63 62
         ref="printFour"
64 63
         v-bind:childResponse="childResponse"
65 64
         :patient="patient"

+ 1 - 1
src/xt_pages/outpatientDoctorStation/recordTemplate/printOne.vue Visa fil

@@ -32,7 +32,7 @@
32 32
         </div>
33 33
         <div class="otherInfo">
34 34
             <div>药物过敏史:</div>
35
-            <div style="flex:1;">{{patient.past_history?patient.past_history:''}}</div>
35
+            <div style="flex:1;">{{history.allergic_history?history.allergic_history:''}}</div>
36 36
         </div>
37 37
         <div class="otherInfo">
38 38
             <div>病历编号:</div>

+ 17 - 9
src/xt_pages/outpatientDoctorStation/template/prinSeven.vue Visa fil

@@ -287,7 +287,7 @@
287 287
             <p>
288 288
               金额:{{
289 289
                 getTotalOne(item.id).toFixed(2)
290
-                  ? getTotalOne(item.id).toFixed(2)
290
+                  ? getTotalOne(item.id).toFixed(2) 
291 291
                   : 0
292 292
               }}元
293 293
             </p>
@@ -511,8 +511,10 @@ export default{
511 511
       return name;
512 512
     },
513 513
     getTotalOne(id) {
514
+      console.log('999999999',id);
514 515
       var total = 0;
515 516
       var addtotal = 0;
517
+      var zimuyao = 0;
516 518
       for (let i = 0; i < this.prescriptions.length; i++) {
517 519
         if (id == this.prescriptions[i].id) {
518 520
           if (this.prescriptions[i].project != null) {
@@ -520,7 +522,7 @@ export default{
520 522
               total =
521 523
                 total +
522 524
                 this.prescriptions[i].project[a].price *
523
-                  this.prescriptions[i].project[a].count;
525
+                  this.prescriptions[i].project[a].count ;
524 526
             }
525 527
           }
526 528
 
@@ -533,7 +535,7 @@ export default{
533 535
               addtotal =
534 536
                 addtotal +
535 537
                 this.prescriptions[i].additionalcharge[a].price *
536
-                  this.prescriptions[i].additionalcharge[a].count;
538
+                  this.prescriptions[i].additionalcharge[a].count ;
537 539
             }
538 540
           }
539 541
           addtotal = Math.floor(addtotal * 100) / 100;
@@ -546,11 +548,17 @@ export default{
546 548
             for (let a = 0; a < this.prescriptions[i].advices.length; a++) {
547 549
               total =
548 550
                 total +
549
-                this.prescriptions[i].advices[a].price *
550
-                  this.prescriptions[i].advices[a].prescribing_number;
551
+                (this.prescriptions[i].advices[a].price *
552
+                  this.prescriptions[i].advices[a].prescribing_number) ;
553
+            }
554
+          }
555
+          if(this.prescriptions[i].arr[0] != null){
556
+            for(let b=0;b<this.prescriptions[i].arr[0].length;b++){
557
+              zimuyao = zimuyao +
558
+              this.prescriptions[i].arr[b][0].price *
559
+              this.prescriptions[i].arr[b][0].prescribing_number
551 560
             }
552 561
           }
553
-
554 562
           if (this.prescriptions[i].additionalcharge != null) {
555 563
             for (
556 564
               let a = 0;
@@ -559,15 +567,15 @@ export default{
559 567
             ) {
560 568
               addtotal =
561 569
                 addtotal +
562
-                this.prescriptions[i].additionalcharge[a].price *
563
-                  this.prescriptions[i].additionalcharge[a].count;
570
+                (this.prescriptions[i].additionalcharge[a].price *
571
+                  this.prescriptions[i].additionalcharge[a].count );
564 572
             }
565 573
           }
566 574
           addtotal = Math.floor(addtotal * 100) / 100;
567 575
         }
568 576
       }
569 577
 
570
-      return total + addtotal;
578
+      return total + addtotal + zimuyao ;
571 579
     },
572 580
 
573 581
     getProjectName(id) {

+ 6 - 3
src/xt_pages/outpatientDoctorStation/treatPrint.vue Visa fil

@@ -16,8 +16,9 @@
16 16
         <!-- 此下条为本地开发下页面 -->
17 17
         <!-- <printTwo v-if="org_id == 4" v-bind:childResponse="childResponse" :advicePrint="advicePrint" :ids="ids" :patient="patient" :hisPatient="hisPatient" :patient_id="patient_id" :record_date="record_date" :prescription_id="prescription_id"></printTwo> -->
18 18
         <!-- org_id != 10138 && org_id != 10278 && org_id !=4&& org_id !=0 -->
19
-        <printOne v-if="org_id != 10138 && org_id != 10278 && org_id !=4" v-bind:childResponse="childResponse" :advicePrint="advicePrint" :ids="ids" :patient="patient" :hisPatient="hisPatient" :patient_id="patient_id" :record_date="record_date" :prescription_id="prescription_id"></printOne>
20
-        <printTwo v-else v-bind:childResponse="childResponse" :advicePrint="advicePrint" :ids="ids" :patient="patient" :hisPatient="hisPatient" :patient_id="patient_id" :record_date="record_date" :prescription_id="prescription_id" :newHisPatient="newHisPatient"></printTwo>
19
+        <printOne v-if="org_id != 10138 && org_id != 10278 && org_id !=4 && org_id != 10375 " v-bind:childResponse="childResponse" :advicePrint="advicePrint" :ids="ids" :patient="patient" :hisPatient="hisPatient" :patient_id="patient_id" :record_date="record_date" :prescription_id="prescription_id"></printOne>
20
+        <printThree v-if=" org_id == 10375" v-bind:childResponse="childResponse" :advicePrint="advicePrint" :ids="ids" :patient="patient" :hisPatient="hisPatient" :patient_id="patient_id" :record_date="record_date" :prescription_id="prescription_id"></printThree>
21
+        <printTwo v-if="org_id == 10138 || org_id == 10278 || org_id ==4" v-bind:childResponse="childResponse" :advicePrint="advicePrint" :ids="ids" :patient="patient" :hisPatient="hisPatient" :patient_id="patient_id" :record_date="record_date" :prescription_id="prescription_id" :newHisPatient="newHisPatient"></printTwo>
21 22
       </div>
22 23
   </div>
23 24
 </template>
@@ -34,13 +35,15 @@ import BreadCrumb from "@/xt_pages/components/bread-crumb";
34 35
 import print from "print-js";
35 36
 import printOne from "./treatTemplate/printOne"
36 37
 import printTwo from "./treatTemplate/printTwo"
38
+import printThree from "./treatTemplate/printThree.vue"
37 39
 import { getAllDoctorList,getAllHisPatientList,getPrescriptionPrint } from "@/api/project/project"
38 40
 export default {
39 41
   name: "dialysisPrintOrder",
40 42
   components: {
41 43
     BreadCrumb,
42 44
     printOne,
43
-    printTwo
45
+    printTwo,
46
+    printThree
44 47
   },
45 48
   props:{
46 49
     paramsObj:Object,

+ 3 - 2
src/xt_pages/outpatientDoctorStation/treatTemplate/printOne.vue Visa fil

@@ -2,7 +2,7 @@
2 2
     <div id='prescriptionPrint'>
3 3
         <div id='prescription-print' class="prescription-print" v-for="(item,index) in advicePrint" :key="index">
4 4
 
5
-            <div style="display:flex;justify-content: space-between;font-weight:bold;align-items:center;">
5
+            <div style="display:flex;justify-content: space-between;font-weight:bold;align-items:center;" >
6 6
                 <div style="width:200px;display:flex;justify-content: space-between;font-weight:bold;">
7 7
                     <span>费别</span>
8 8
                     <span>自费</span>
@@ -10,7 +10,8 @@
10 10
                     <span>保险</span>
11 11
                     <span>其他</span>
12 12
                 </div>
13
-                <div>就诊日期:{{getTime(item.ctime,'{y}-{m}-{d}')}}</div>
13
+                <div v-if="org_id == 10460">就诊日期:{{getTime(item.pre_time,'{y}-{m}-{d}')}}</div>
14
+                <div v-else>就诊日期:{{getTime(item.ctime,'{y}-{m}-{d}')}}</div>
14 15
             </div>
15 16
 
16 17
             <div class="printTitle">{{orgname}}</div>

+ 531 - 0
src/xt_pages/outpatientDoctorStation/treatTemplate/printThree.vue Visa fil

@@ -0,0 +1,531 @@
1
+<template>
2
+  <div id='prescriptionPrint'>
3
+      <div id='prescription-print' class="prescription-print" v-for="(item,index) in advicePrint" :key="index">
4
+
5
+          <div class="printTitle">{{orgname}}</div>
6
+          <div class="printTitle">处方、治疗单</div>
7
+          <div style="display:flex;justify-content: space-between;font-weight:bold;align-items:center;" >
8
+              <div style="width:200px;display:flex;justify-content: space-between;font-weight:bold;">
9
+                  <span>费别</span>
10
+                  <span>自费</span>
11
+                  <span>公费</span>
12
+                  <span>保险</span>
13
+                  <span>其他</span>
14
+              </div>
15
+              <div >就诊日期:{{getTime(item.ctime,'{y}-{m}-{d}')}}</div>
16
+          </div>
17
+<!-- class="infoTitle" -->
18
+          <div style="display: flex; margin-top: 10px; line-height: 24px;padding: 0 10px;">
19
+              <div style="width: 300px;">门诊编号:</div>
20
+              <!-- <div style="width: 300px;">电脑号:</div> -->
21
+          </div>
22
+
23
+          <div class="infoMain">
24
+              <div style="margin-bottom: 10px;width:25%">姓名:{{item.patient.name}}</div>
25
+              <div style="margin-bottom: 10px;width:25%">性别:
26
+                  <span v-if="item.patient.gender == 1">男</span>
27
+                  <span v-if="item.patient.gender == 2">女</span>
28
+              </div>
29
+              <div style="margin-bottom: 10px;width:25%">年龄:
30
+                  <span>{{getAge(item.patient)?getAge(item.patient):""}}岁</span>
31
+              </div>
32
+              <div style="margin-bottom: 10px;width:25%">参保类型:{{hisPatient.social_type?hisPatient.social_type:''}}
33
+              </div>
34
+              <div style="margin-bottom: 10px;width:50%;">联系电话:{{item.patient.phone}}</div>
35
+              <div style="width:50%;">地址:{{ item.patient.home_address }}
36
+                <!-- {{item.patient.unit_address}} -->
37
+              </div>
38
+              <div style="width:100%;">诊断:{{getDiagnosis(item.info.diagnosis)}}</div>
39
+          </div>
40
+
41
+          <div class="prescriptionBox" style="min-height: 425px;">
42
+              <table style="width:100%;text-align:center;line-height:25px;">
43
+                  <tr>
44
+                      <td>序号</td>
45
+                      <td>项目名称</td>
46
+                      <td>数量</td>
47
+                      <td>单位</td>
48
+                      <td>单价</td>
49
+                      <td>部位</td>
50
+                      <td>备注</td>
51
+                      <td>天数</td>
52
+                  </tr>
53
+                  <tr v-for="(it,index) in item.project" :key="index">
54
+                      <td>{{index+1}}</td>
55
+                      <td>{{it.type == 2 ? it.project.project_name : it.good_info.good_name}}</td>
56
+                      <td>{{it.count}}</td>
57
+                      <td>{{getUnit(it.unit)}}</td>
58
+                      <td>{{it.price.toFixed(2)}}</td>
59
+                      <td></td>
60
+                      <td>{{it.remark}}</td>
61
+                      <td>{{it.day}}</td>
62
+
63
+                  </tr>
64
+
65
+                  <tr v-for="(it,index) in item.advices" :key="index">
66
+                      <td>{{index+1}}</td>
67
+                      <td>{{it.advice_name?it.advice_name:''}}</td>
68
+                      <td>{{it.single_dose?it.single_dose:''}}</td>
69
+                      <td>{{it.single_dose_unit?it.single_dose_unit:''}}</td>
70
+                      <td>{{it.price.toFixed(2)}}</td>
71
+                      <td></td>
72
+                      <td>{{it.remark}}</td>
73
+                      <td>{{it.day}}</td>
74
+
75
+                  </tr>
76
+              </table>
77
+          </div>
78
+
79
+          <div style="display: flex; margin-top: 10px; line-height: 24px;padding: 0 10px;">
80
+              <div style="width: 300px;">开单医生:{{item.doctor?item.doctor:''}}</div>
81
+              <div style="width: 300px;">签章:</div>
82
+              <div style="width: 300px;">费用:{{getTotalOne(item.id).toFixed(2)?getTotalOne(item.id).toFixed(2):''}}元</div>
83
+          </div>
84
+
85
+          <table style="width:100%;text-align:center;line-height:25px;border-collapse: collapse;" border="1">
86
+              <tr>
87
+                  <td style="width:16%;">治疗时间</td>
88
+                  <td style="width:16%;"></td>
89
+                  <td style="width:16%;"></td>
90
+                  <td style="width:16%;"></td>
91
+                  <td style="width:16%;"></td>
92
+                  <td style="width:16%;"></td>
93
+              </tr>
94
+              <tr>
95
+                  <td style="width:16%;">医生签字</td>
96
+                  <td style="width:16%;"></td>
97
+                  <td style="width:16%;"></td>
98
+                  <td style="width:16%;"></td>
99
+                  <td style="width:16%;"></td>
100
+                  <td style="width:16%;"></td>
101
+              </tr>
102
+              <!-- <tr>
103
+                  <td style="width:16px;">患者签字</td>
104
+                  <td style="width:16px;"></td>
105
+                  <td style="width:16px;"></td>
106
+                  <td style="width:16px;"></td>
107
+                  <td style="width:16px;"></td>
108
+                  <td style="width:16px;"></td>
109
+              </tr> -->
110
+          </table>
111
+      </div>
112
+
113
+
114
+      <!-- <div id='prescriptionPrint'>
115
+
116
+          <div v-for="(item,index) in advicePrint" :key="index">
117
+              <div id='prescription-print' class="prescription-print" style="page-break-after: always;">
118
+                  <div style="display:flex;justify-content: space-between;font-weight:bold;">
119
+                      <div style="width:200px;display:flex;justify-content: space-between;font-weight:bold;">
120
+                          <span>费别</span>
121
+                          <span>自费</span>
122
+                          <span>公费</span>
123
+                          <span>保险</span>
124
+                          <span>其他</span>
125
+                      </div>
126
+                      <div>就诊日期:{{getTime(item.ctime)}}</div>
127
+                  </div>
128
+
129
+                  <div class="printTitle">血液透析中心</div>
130
+
131
+                  <div class="printTitle">处方、治疗单</div>
132
+
133
+                  <div class="infoTitle">
134
+                      <div>门诊编号:</div>
135
+                      <div>电脑号:</div>
136
+                  </div>
137
+
138
+                  <div class="infoMain">
139
+                      <div style="margin-bottom: 10px;width:25%">姓名:{{item.patient.name}}</div>
140
+                      <div style="margin-bottom: 10px;width:25%">性别:
141
+                          <span v-if="item.patient.gender == 1">男</span>
142
+                          <span v-if="item.patient.gender == 2">女</span>
143
+                      </div>
144
+                      <div style="margin-bottom: 10px;width:25%">年龄:
145
+                          <span>{{item.patient.age}}</span>
146
+                      </div>
147
+                      <div style="margin-bottom: 10px;width:25%">参保类型:</div>
148
+                      <div style="margin-bottom: 10px;width:50%;">联系电话:{{item.patient.phone}}</div>
149
+                      <div style="width:50%;">地址:{{item.patient.unit_address}}</div>
150
+                      <div style="width:100%;">诊断:{{item.patient.diagnose}}</div>
151
+                  </div>
152
+
153
+                  <div class="prescriptionBox">
154
+                      <table style="width:100%;text-align:center;line-height:25px;">
155
+                          <tr>
156
+                              <td>序号</td>
157
+                              <td>项目名称</td>
158
+                              <td>数量</td>
159
+                              <td>单位</td>
160
+                              <td>单价</td>
161
+                              <td>部位</td>
162
+                              <td>备注</td>
163
+                              <td>天数</td>
164
+                          </tr>
165
+                          <tr v-for="(it,index) in item.project" :key="index">
166
+                              <td>{{index+1}}</td>
167
+                              <td>{{getProjectName(it.project_id)}}</td>
168
+                              <td>{{it.single_dose}}</td>
169
+                              <td>{{getUnit(it.unit)}}</td>
170
+                              <td>{{it.price}}</td>
171
+                              <td></td>
172
+                              <td>{{it.remark}}</td>
173
+                              <td>{{it.day}}</td>
174
+
175
+                          </tr>
176
+                      </table>
177
+                  </div>
178
+                  <div class="infoTitle">
179
+                      <div>开单医生:{{getDoctor(item.doctor)?getDoctor(item.doctor):""}}</div>
180
+                      <div>签章:</div>
181
+                  </div>
182
+                  <div class="actionBar">
183
+                      <div>执行医生:{{getDoctor(item.doctor)?getDoctor(item.doctor):""}}</div>
184
+                      <div>费用:</div>
185
+                  </div>
186
+                  <table style="width:100%;text-align:center;line-height:25px;border-collapse: collapse;" border="1">
187
+                      <tr>
188
+                          <td style="width:16%;">治疗时间</td>
189
+                          <td style="width:16%;"></td>
190
+                          <td style="width:16%;"></td>
191
+                          <td style="width:16%;"></td>
192
+                          <td style="width:16%;"></td>
193
+                          <td style="width:16%;"></td>
194
+                      </tr>
195
+                      <tr>
196
+                          <td style="width:16%;">医生签字</td>
197
+                          <td style="width:16%;"></td>
198
+                          <td style="width:16%;"></td>
199
+                          <td style="width:16%;"></td>
200
+                          <td style="width:16%;"></td>
201
+                          <td style="width:16%;"></td>
202
+                      </tr>
203
+                      <tr>
204
+                          <td style="width:16px;">患者签字</td>
205
+                          <td style="width:16px;"></td>
206
+                          <td style="width:16px;"></td>
207
+                          <td style="width:16px;"></td>
208
+                          <td style="width:16px;"></td>
209
+                          <td style="width:16px;"></td>
210
+                      </tr>
211
+                  </table>
212
+              </div>
213
+
214
+          </div>
215
+
216
+      </div> -->
217
+  </div>
218
+</template>
219
+<script>
220
+import { jsGetAge, uParseTime } from '@/utils/tools'
221
+import { getAllDoctorList, getPrescriptionPrint } from '@/api/project/project'
222
+import { getInitData } from '@/api/his/his'
223
+
224
+export default {
225
+  props: {
226
+    patient_id: Number,
227
+    record_date: String,
228
+    prescription_id: Number,
229
+    ids: String
230
+  },
231
+  data() {
232
+    return {
233
+      doctorList: [],
234
+      advicePrint: {},
235
+      patient: {},
236
+      tableData: [],
237
+      prescriptionInfo: [],
238
+      projectList: [],
239
+      prescriptions: [],
240
+      settlement:
241
+        [
242
+          { value: 1, label: '医保' },
243
+          { value: 2, label: '自费' },
244
+          { value: 3, label: '公费' },
245
+          { value: 4, label: '农保' },
246
+          { value: 5, label: '会员' },
247
+          { value: 6, label: '职工' },
248
+          { value: 7, label: '合同' },
249
+          { value: 8, label: '医保自费' }
250
+
251
+        ],
252
+      hisPatient: {},
253
+      diagnoses: []
254
+    }
255
+  },
256
+  methods: {
257
+    getAge(patient){
258
+      var thisLen = patient.id_card_no.length
259
+      var birth = ''
260
+      if (thisLen == 15) {
261
+        birth = '19' + patient.id_card_no.substr(6, 6)
262
+      } else {
263
+        birth = patient.id_card_no.substr(6, 8)
264
+      }
265
+      var births =
266
+        birth.substr(0, 4) +
267
+        '-' +
268
+        birth.substr(4, 2) +
269
+        '-' +
270
+        birth.substr(6, 2)
271
+      return jsGetAge(births, '-')
272
+
273
+    },
274
+    printThisPage() {
275
+      var ptime = Math.round(new Date().getTime() / 1000)
276
+      this.print_time = uParseTime(ptime, '{y}-{m}-{d} {h}:{i}')
277
+
278
+      const style =
279
+        '@media print {.printTitle{font-size: 22px;text-align: center;font-weight: bold;}.infoTitle{display: flex;margin-top:10px;line-height: 1px;padding:0 10px;}.infoTitle p{width: 200px;}.otherInfo{display: flex;margin-top:10px;padding:0 10px;}.otherInfo span{display:inline-block;}.recordTitle{display: flex;margin-top:10px;line-height: 24px;padding:0 10px;border-bottom: 2px solid #000;}.recordTitle p{width: 200px;}}'
280
+      printJS({
281
+        printable: 'prescription-print',
282
+        type: 'html',
283
+        style: style,
284
+        scanStyles: false
285
+      })
286
+    },
287
+    getAllDoctorList() {
288
+      getAllDoctorList().then(response => {
289
+        if (response.data.state == 1) {
290
+          var doctor = response.data.data.doctor
291
+
292
+          this.doctorList = doctor
293
+        }
294
+      })
295
+    },
296
+
297
+    getDoctor(id) {
298
+      var name = ''
299
+      for (let i = 0; i < this.doctorList.length; i++) {
300
+        if (id == this.doctorList[i].admin_user_id) {
301
+          name = this.doctorList[i].user_name
302
+        }
303
+      }
304
+      return name
305
+    },
306
+    getTime(value, temp) {
307
+      if (value != undefined) {
308
+        return uParseTime(value, temp)
309
+      }
310
+      return ''
311
+    },
312
+    getPrescriptionPrint() {
313
+      var params = {
314
+        patient_id: this.patient_id,
315
+        record_date: this.record_date,
316
+        prescription_id: this.prescription_id,
317
+        ids: this.ids,
318
+        p_type:2,
319
+      }
320
+      console.log('999999', params)
321
+      getPrescriptionPrint(params).then(response => {
322
+        if (response.data.state == 1) {
323
+          var advicePrint = response.data.data.advicePrint
324
+          console.log('adviceprint', advicePrint)
325
+          this.advicePrint = advicePrint
326
+          this.prescriptions = advicePrint
327
+          var projectlist = response.data.data.projectlist
328
+          console.log('所有项目列表', projectlist)
329
+          this.projectList = projectlist
330
+          this.hisPatient = response.data.data.hisPatient
331
+          this.advicePrint.map((item) => {
332
+            console.log(item.project.length);
333
+            if (item.project.length > 0) {
334
+              for (var i = item.project.length - 1; i >= 0; i--) {
335
+                if (item.project[i].type == 2) {
336
+                  if (item.project[i].project.cost_classify == 3) {
337
+                    console.log("!1111111")
338
+                    item.project.splice(i, 1);
339
+                  }
340
+                }
341
+              }
342
+            }
343
+          });
344
+
345
+        }
346
+      })
347
+    },
348
+    getProjectName(id) {
349
+      var project_name = ''
350
+      for (let i = 0; i < this.projectList.length; i++) {
351
+        if (id == this.projectList[i].id) {
352
+          project_name = this.projectList[i].project_name
353
+        }
354
+      }
355
+      return project_name
356
+    },
357
+    getUnit(id) {
358
+      var unit = ''
359
+      for (let i = 0; i < this.projectList.length; i++) {
360
+        if (id == this.projectList[i].id) {
361
+          unit = this.projectList[i].unit
362
+        }
363
+      }
364
+      return unit
365
+    },
366
+
367
+    getTotalOne(id) {
368
+
369
+      var total = 0
370
+      var addtotal = 0
371
+      for (let i = 0; i < this.prescriptions.length; i++) {
372
+        if (id == this.prescriptions[i].id) {
373
+          if (this.prescriptions[i].project != null) {
374
+            for (let a = 0; a < this.prescriptions[i].project.length; a++) {
375
+              total = total + this.prescriptions[i].project[a].price * this.prescriptions[i].project[a].count
376
+            }
377
+          }
378
+
379
+          if (this.prescriptions[i].additionalcharge != null) {
380
+            for (let a = 0; a < this.prescriptions[i].additionalcharge.length; a++) {
381
+              addtotal = addtotal + this.prescriptions[i].additionalcharge[a].price * this.prescriptions[i].additionalcharge[a].count
382
+            }
383
+          }
384
+          addtotal = Math.floor(addtotal * 100) / 100
385
+        }
386
+
387
+      }
388
+
389
+      for (let i = 0; i < this.prescriptions.length; i++) {
390
+        if (id == this.prescriptions[i].id) {
391
+          if (this.prescriptions[i].advices != null) {
392
+            for (let a = 0; a < this.prescriptions[i].advices.length; a++) {
393
+              total = total + this.prescriptions[i].advices[a].price * this.prescriptions[i].advices[a].prescribing_number
394
+            }
395
+          }
396
+
397
+          if (this.prescriptions[i].additionalcharge != null) {
398
+            for (let a = 0; a < this.prescriptions[i].additionalcharge.length; a++) {
399
+              addtotal = addtotal + this.prescriptions[i].additionalcharge[a].price * this.prescriptions[i].additionalcharge[a].count
400
+            }
401
+          }
402
+          addtotal = Math.floor(addtotal * 100) / 100
403
+        }
404
+      }
405
+
406
+      return total + addtotal
407
+    },
408
+    getInitData() {
409
+      getInitData().then(response => {
410
+        if (response.data.state == 1) {
411
+          this.diagnoses = response.data.data.diagnose
412
+          console.log('争端', this.diagnoses)
413
+        }
414
+      })
415
+    },
416
+    getDiagnosis(id) {
417
+      let arr = id.split(",");
418
+      var name = "";
419
+      for (let i = 0; i < this.diagnoses.length; i++) {
420
+        if (arr.indexOf(String(this.diagnoses[i].id)) > -1) {
421
+          name += this.diagnoses[i].class_name + " ";
422
+        }
423
+      }
424
+      return name
425
+    }
426
+  },
427
+  created() {
428
+    this.getInitData()
429
+    this.getAllDoctorList()
430
+    this.getPrescriptionPrint()
431
+    var xtuser = this.$store.getters.xt_user
432
+    this.orgname = xtuser.org.org_name
433
+
434
+  },
435
+  watch: {
436
+    patient_id: function(val) {
437
+      console.log('101000010101010', this.patient_id, this.record_date, this.prescription_id)
438
+      //    this.getPrescriptionPrint()
439
+    },
440
+    ids: function(val) {
441
+      this.ids = val
442
+      console.log('this.idsids', this.ids)
443
+      this.getPrescriptionPrint()
444
+    }
445
+  }
446
+}
447
+</script>
448
+
449
+
450
+<style lang="scss" scoped>
451
+  .prescription-print {
452
+      -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 60px rgba(0, 0, 0, 0.06) inset;
453
+      -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset;
454
+      box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset;
455
+      margin-bottom: 20px;
456
+      padding: 20px 10px;
457
+  }
458
+
459
+  .prescription-print {
460
+      font-size: 14px;
461
+  }
462
+
463
+  .printTitle {
464
+      font-size: 18px;
465
+      text-align: center;
466
+      font-weight: bold;
467
+      margin-top: 10px;
468
+  }
469
+
470
+  .infoTitle {
471
+      display: flex;
472
+      // border-bottom: 2px solid #000;
473
+      margin-top: 10px;
474
+      line-height: 24px;
475
+      padding: 0 10px;
476
+  }
477
+
478
+  .infoTitle div {
479
+      width: 300px;
480
+  }
481
+
482
+  .infoMain {
483
+      display: flex;
484
+      flex-wrap: wrap;
485
+      border-bottom: 2px solid #000;
486
+      padding: 0 10px;
487
+  }
488
+
489
+  .infoMain div {
490
+      width: 50%;
491
+      line-height: 24px;
492
+  }
493
+
494
+  .prescriptionBox {
495
+      padding: 0 10px;
496
+      
497
+  }
498
+
499
+  .Rp {
500
+      font-size: 22px;
501
+      font-weight: bold;
502
+  }
503
+
504
+  .drugsBox {
505
+      padding-left: 40px;
506
+      margin-bottom: 10px;
507
+  }
508
+
509
+  .drugsBox p {
510
+      line-height: 30px;
511
+  }
512
+
513
+  .drugsOne {
514
+      line-height: 24px;
515
+  }
516
+
517
+  .drugsOne span {
518
+      margin-right: 20px;
519
+  }
520
+
521
+  .actionBar {
522
+      display: flex;
523
+      justify-content: space-between;
524
+      line-height: 24px;
525
+      padding: 0 10px;
526
+  }
527
+
528
+  .actionBar div {
529
+      width: 150px;
530
+  }
531
+</style>

+ 46 - 3
src/xt_pages/user/components/PatientForm.vue Visa fil

@@ -393,7 +393,8 @@
393 393
                   </el-radio-group>
394 394
                 </el-form-item>
395 395
               </el-col>
396
-
396
+           
397
+              <el-row>
397 398
               <el-col :span="8" :style="isEdit ? 'width:360px' : ''">
398 399
                 <el-form-item
399 400
                   label="患者去向 : "
@@ -409,10 +410,29 @@
409 410
                   </el-radio-group>
410 411
                 </el-form-item>
411 412
               </el-col>
413
+            </el-row>
412 414
 
415
+            <!-- <el-row>
413 416
               <el-col :span="8" :style="isEdit ? 'width:360px' : ''">
414 417
                 <el-form-item
415
-                  label="患者去向时间 : "
418
+                  label="流转地址: "
419
+                >
420
+                <el-select v-model="value" placeholder="请选择">
421
+                    <el-option
422
+                      v-for="item in options"
423
+                      :key="item.value"
424
+                      :label="item.label"
425
+                      :value="item.value">
426
+                    </el-option>
427
+                 </el-select>
428
+                </el-form-item>
429
+              </el-col>
430
+            </el-row>
431
+  -->
432
+              <el-row>
433
+                <el-col :span="8" :style="isEdit ? 'width:360px' : ''">
434
+                <el-form-item
435
+                  label="开始时间 : "
416 436
                 >
417 437
                 <el-date-picker
418 438
                   size="small"
@@ -430,6 +450,28 @@
430 450
                 </el-form-item>
431 451
               </el-col>
432 452
 
453
+              <!-- <el-col :span="8" :style="isEdit ? 'width:360px' : ''">
454
+                <el-form-item
455
+                  label="结束时间 : "
456
+                >
457
+                <el-date-picker
458
+                  size="small"
459
+                  v-model="form.patient_end_time"
460
+                  prefix-icon="el-icon-date"
461
+                  :editable="false"
462
+                  style="width: 150px;"
463
+                  type="date"
464
+                  placeholder="选择日期时间"
465
+                  align="right"
466
+                  format="yyyy-MM-dd"
467
+                  value-format="yyyy-MM-dd"
468
+                  @change="startTimeChange"
469
+                 ></el-date-picker>
470
+                </el-form-item>
471
+              </el-col> -->
472
+              </el-row>
473
+             
474
+
433 475
               <el-col :span="8" style="margin-bottom: 20px;" :style="isEdit ? 'width:360px' : ''">
434 476
                 <el-form-item
435 477
                   label="备注 : "
@@ -1099,6 +1141,7 @@ const defaultForm = {
1099 1141
   doctor:"",
1100 1142
   patient_source:0,
1101 1143
   patient_start_time:"",
1144
+  patient_end_time:"",
1102 1145
   formItem: [
1103 1146
     {
1104 1147
       id: 0,
@@ -1349,7 +1392,7 @@ export default {
1349 1392
         {value:1,label:"门诊"},
1350 1393
         {value:2,label:"住院"},
1351 1394
         {value:3,label:"请假"},
1352
-        {value:4,label:"备注"}
1395
+        {value:4,label:"流转"}
1353 1396
       ],
1354 1397
       lapsetoOptions: [
1355 1398
         { value: 1, label: "留治" },

+ 32 - 19
src/xt_pages/workforce/components/editTableData.vue Visa fil

@@ -1413,28 +1413,28 @@
1413 1413
               >
1414 1414
               </el-option>
1415 1415
             </el-select>
1416
-          </el-form-item> -->
1416
+          </el-form-item>
1417 1417
         
1418
-          <!-- <el-form-item>
1418
+          <el-form-item>
1419 1419
             <span>透析分区:</span>
1420 1420
             <el-select
1421 1421
             filterable 
1422 1422
               v-model="changeSchedule.partition_id"
1423 1423
               placeholder="请选择"
1424 1424
               style="width: 100%"
1425
-              @change="changePartition"
1425
+              @change="changePartitionOne"
1426 1426
               >
1427 1427
               <el-option
1428
-                  v-for="(item, index) in zone_names"
1428
+                  v-for="(item, index) in zones"
1429 1429
                   :key="index"
1430
-                  :label="item"
1431
-                  :value="item"
1430
+                  :label="item.name"
1431
+                  :value="item.id"
1432 1432
               >
1433 1433
               </el-option>
1434 1434
               </el-select>
1435
-          </el-form-item> -->
1435
+          </el-form-item>
1436 1436
 
1437
-          <!-- <el-form-item>
1437
+          <el-form-item>
1438 1438
             <span>透析床位:</span>
1439 1439
             <el-select
1440 1440
                filterable 
@@ -1765,6 +1765,7 @@ import {
1765 1765
   ExchangeSch,
1766 1766
   getPatientSmartSch,
1767 1767
   BatchSmartSch,
1768
+
1768 1769
 } from "@/api/schedule_template/sch_template";
1769 1770
 import {
1770 1771
   CancelScheduleTwo,
@@ -1778,7 +1779,8 @@ import {
1778 1779
   getUrgentScheduleInitData,
1779 1780
   getWeekPanelsOne,
1780 1781
   getAllZones,
1781
-  ChangeScheduleTen
1782
+  ChangeScheduleTen,
1783
+  getNumberList
1782 1784
 } from "@/api/schedule";
1783 1785
 import ScheduleItem from "./ScheduleItem";
1784 1786
 
@@ -5017,13 +5019,13 @@ export default {
5017 5019
         console.log("WOOWOWOWOWOW",this.zones)
5018 5020
         console.log("numberowowow",this.numberList)
5019 5021
         this.changeSchedule.mode_id = row[column.property].mode_id
5020
-        var zone_names = ""
5021
-        for(let i=0;i<this.zones.length;i++){
5022
-          if(row.zone_id == this.zones[i].id){
5023
-           zone_names = this.zones[i].name
5024
-          }
5025
-        }
5026
-        this.changeSchedule.partition_id = zone_names
5022
+        // var zone_names = ""
5023
+        // for(let i=0;i<this.zones.length;i++){
5024
+        //   if(row.zone_id == this.zones[i].id){
5025
+        //    zone_names = this.zones[i].name
5026
+        //   }
5027
+        // }
5028
+        this.changeSchedule.partition_id = row.zone_id
5027 5029
         this.changeSchedule.schedule_type = week[1];
5028 5030
         this.changeSchedule.bed_id = row.jihao_id;
5029 5031
         console.log("床位id",this.changeSchedule.bed_id)
@@ -5108,8 +5110,8 @@ export default {
5108 5110
                   }
5109 5111
                 }
5110 5112
               });
5111
-              this.msDialogVisible = false;
5112
-              this.getAllZones()
5113
+              // this.msDialogVisible = false;
5114
+              // this.getAllZones()
5113 5115
              
5114 5116
             }
5115 5117
             this.changing_mode = false;
@@ -5177,6 +5179,17 @@ export default {
5177 5179
       this.current_devices = this.zone_device_map[value];
5178 5180
       this.device_id = this.current_devices[0].id;
5179 5181
     },
5182
+    changePartitionOne(val){
5183
+      console.log("valwoowow",val)
5184
+
5185
+      getNumberList(val).then(response=>{
5186
+         if(response.data.state==1){
5187
+           var number = response.data.data.number
5188
+           this.numberList = []
5189
+           this.numberList = number
5190
+         }
5191
+      })
5192
+    },
5180 5193
     // 选择下拉框方法
5181 5194
     changeScheduleType(schedule_type) {
5182 5195
       const params = {
@@ -5782,7 +5795,7 @@ export default {
5782 5795
 
5783 5796
           this.strArr = strArr;
5784 5797
           var device_number =  response.data.data.devicenumber
5785
-
5798
+          this.numberList = []
5786 5799
           this.numberList = device_number
5787 5800
           console.log("所有床位",device_number)
5788 5801
           this.getWeekPanels();