Browse Source

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

28169 1 month ago
parent
commit
a5de7625d6

+ 12 - 0
src/router/modules/dialysis.js View File

@@ -1199,6 +1199,18 @@ export default {
1199 1199
         noCache: true
1200 1200
       }
1201 1201
     },
1202
+    {//84
1203
+      path: '/dialysis/print/batch/eightyfour',
1204
+      component: () =>
1205
+        import('@/xt_pages/dialysis/batch_print/batch_print_order_eightyfour'),
1206
+      hidden: true,
1207
+      is_menu: false,
1208
+      name: 'batch_print_order_eightyfour',
1209
+      meta: {
1210
+        title: '批量打印',
1211
+        noCache: true
1212
+      }
1213
+    },
1202 1214
     {
1203 1215
       path: '/dialysis/flow',
1204 1216
       component: () => import('@/xt_pages/dialysis/dialysisFlow'),

+ 18 - 2
src/xt_pages/Pharmacy/drugCode.vue View File

@@ -8,7 +8,7 @@
8 8
           v-model="start_time"
9 9
           prefix-icon="el-icon-date"
10 10
           :editable="false"
11
-          style="width: 196px;"
11
+          style="width: 150px;"
12 12
           type="date"
13 13
           placeholder="选择日期时间"
14 14
           align="right"
@@ -23,7 +23,7 @@
23 23
           v-model="end_time"
24 24
           prefix-icon="el-icon-date"
25 25
           :editable="false"
26
-          style="width: 196px;margin-right:10px;"
26
+          style="width: 150px;margin-right:10px;"
27 27
           type="date"
28 28
           placeholder="选择日期时间"
29 29
           align="right"
@@ -33,6 +33,15 @@
33 33
       </div>
34 34
 
35 35
 
36
+      <div style="width:150px;">
37
+        <el-input  style="width: 150px"
38
+                   v-model="keywords" @input="searchAction"
39
+                   @keyup.enter.native="searchAction"
40
+                   class="filter-item" placeholder="请输入患者姓名"
41
+        />
42
+      </div>
43
+
44
+
36 45
       <div>
37 46
         <div>上传状态:
38 47
           <el-select size="small" v-model="is_sale" placeholder="请选择" style="width:100px;" @change="changeStock">
@@ -205,6 +214,7 @@ export default {
205 214
       page: 1,
206 215
       limit: 10,
207 216
       value: 0,
217
+      keywords:"",
208 218
       is_sale: "0",
209 219
       items: [
210 220
         {id: "0", name: '全部'},
@@ -232,6 +242,11 @@ export default {
232 242
     }
233 243
   },
234 244
   methods: {
245
+    searchAction() {
246
+      this.page = 1
247
+
248
+      this.getlist()
249
+    },
235 250
     toUpload(row) {
236 251
       if (row.drug_code.length == 0) {
237 252
         this.$message.error("追溯码不能为空");
@@ -595,6 +610,7 @@ export default {
595 610
         limit: this.limit,
596 611
         is_sale: this.is_sale,
597 612
         is_settle:this.is_settle,
613
+        keywords:this.keywords,
598 614
 
599 615
       }
600 616
       getHisDrugCodeQueryList(params).then(response => {

File diff suppressed because it is too large
+ 1527 - 0
src/xt_pages/dialysis/batch_print/batch_print_order_eightyfour.vue


+ 11 - 1
src/xt_pages/dialysis/batch_print/batch_print_order_eightythree.vue View File

@@ -253,7 +253,17 @@
253 253
                         :isChecked="QueryPartById(record.assessment_before_dislysis.blood_access_part_opera_id).indexOf('无绦纶套') != -1 ? true : false"
254 254
                         showValue="临时(颈、股)静脉导管"></label-box>&nbsp;
255 255
                       <label-box :isChecked="QueryPartById(record.assessment_before_dislysis.blood_access_part_opera_id).indexOf('人造血管') != -1 ? true : false"
256
-                        showValue="人造血管"></label-box>
256
+                        showValue="人造血管"></label-box>&nbsp;
257
+                      其他:
258
+                      <div style="display: inline-block;" 
259
+                        v-if="QueryPartById(record.assessment_before_dislysis.blood_access_part_opera_id).indexOf('内瘘') == -1 &&
260
+                        QueryPartById(record.assessment_before_dislysis.blood_access_part_opera_id).indexOf('无绦纶套') == -1 &&
261
+                        QueryPartById(record.assessment_before_dislysis.blood_access_part_opera_id).indexOf('带隧道带绦纶套') == -1 &&
262
+                        QueryPartById(record.assessment_before_dislysis.blood_access_part_opera_id).indexOf('人造血管') == -1"
263
+                      >
264
+                        {{ QueryPartById(record.assessment_before_dislysis.blood_access_part_opera_id) }}
265
+                      </div>
266
+
257 267
                     </div>&nbsp;&nbsp;
258 268
                     <div style="display: inline-block;line-height: 30px;">
259 269
                       穿刺者:

+ 11 - 0
src/xt_pages/dialysis/bloodPresssWatch.vue View File

@@ -569,6 +569,15 @@
569 569
             >批量打印</el-button
570 570
           >
571 571
         </template>
572
+        <template v-if="this.template_id == 84">
573
+          <el-button
574
+            size="small"
575
+            icon="el-icon-printer"
576
+            :disabled="selecting_schs.length == 0"
577
+            @click="batchPrintAction"
578
+            type="primary"
579
+          >批量打印</el-button>
580
+        </template>
572 581
       </div>
573 582
     </div>
574 583
     <div class="app-container">
@@ -2801,6 +2810,8 @@ export default {
2801 2810
         this.$router.push({ path: "/dialysis/print/batch/eightyTwo" });
2802 2811
       } else if (this.template_id == 83) {
2803 2812
         this.$router.push({ path: "/dialysis/print/batch/eightythree" });
2813
+      } else if (this.template_id == 84) {
2814
+        this.$router.push({ path: "/dialysis/print/batch/eightyfour" });
2804 2815
       }
2805 2816
     },
2806 2817
     batchPrintActionOne: function() {

+ 14 - 7
src/xt_pages/dialysis/details/index.vue View File

@@ -467,10 +467,13 @@
467 467
 
468 468
                 </div>
469 469
                 <div class="printCell" style="display:flex;">
470
-                  <span style="display: block;width: 45%;">目标脱水量:{{ main_collection.prescription.target_ultrafiltration }}
470
+                  <span style="display: block;width: 45%;" v-if="org_id !=10757">目标脱水量:{{ main_collection.prescription.target_ultrafiltration }}
471 471
                     <span v-if="$store.getters.xt_user.org.id == 10278 || $store.getters.xt_user.org.id == 10138 || $store.getters.xt_user.org.id == 10460">ml</span>
472 472
                     <span v-else>L</span>
473 473
                   </span>
474
+                  <div style="width: 45%;" v-if="org_id ==10757 ">
475
+                    处方脱水量:{{main_collection.prescription.prescription_water}} L
476
+                  </div>
474 477
                   <span style="display: block;width: 50%;" v-if="org_id!=10598">
475 478
                     总量:{{main_collection.dialysissolution.anticoagulant_zongliang}}
476 479
                   <span v-if="main_collection.dialysissolution.anticoagulant == 1">
@@ -545,6 +548,15 @@
545 548
                   </span>
546 549
                   </span>
547 550
                 </div>
551
+                <div class="printCell" style="display:flex;">
552
+                  <div style="" v-if="org_id ==10598">透析器:
553
+                   <span>{{main_collection.prescription.dialysis_dialyszers }}&nbsp;&nbsp; {{main_collection.prescription.dialysis_irrigation}}&nbsp;&nbsp; {{main_collection.prescription.dialysis_strainer}}</span>
554
+                  </div>
555
+                  <div style="" v-if="org_id ==10757 || org_id ==0">
556
+                    血压:{{ main_collection.assessmentbefor.systolic_blood_pressure }}/
557
+                    {{ main_collection.assessmentbefor.diastolic_blood_pressure }} mmHg
558
+                  </div>
559
+                </div>
548 560
                 <div class="printCell" style="display:flex;"  v-if="org_id==10598">
549 561
                   <span style="display: block;width: 45%;">处方脱水量:{{main_collection.prescription.prescription_water}}
550 562
                     <span v-if="$store.getters.xt_user.org.id == 10278 || $store.getters.xt_user.org.id == 10460">ml</span>
@@ -562,7 +574,7 @@
562 574
                     {{ getDisplaceLiquiPart(main_collection.prescription.displace_liqui_part) }}
563 575
                   </div>
564 576
                 </div>
565
-                <div class="printCell" style="display:flex;" v-if="org_id ==10635 || org_id == 0">
577
+                <div class="printCell" style="display:flex;" v-if="org_id ==10635">
566 578
                   <div style="width: 45%;">
567 579
                     处方脱水量:{{main_collection.prescription.prescription_water}} L
568 580
                   </div>
@@ -570,12 +582,7 @@
570 582
                     血流量:{{main_collection.prescription.blood_flow_volume}} ml/min
571 583
                   </div>
572 584
                 </div>
573
-                <div class="printCell" style="display:flex;" v-if="org_id ==10598 || org_id == 0">
574
-                  <div style="">透析器:
575
-                   <span>{{main_collection.prescription.dialysis_dialyszers }}&nbsp;&nbsp; {{main_collection.prescription.dialysis_irrigation}}&nbsp;&nbsp; {{main_collection.prescription.dialysis_strainer}}</span>
576
-                  </div>
577 585
 
578
-                </div>
579 586
               </div>
580 587
             </div>
581 588
 

+ 63 - 177
src/xt_pages/dialysis/template/DialysisPrintOrdereightyfour.vue View File

@@ -8,15 +8,6 @@
8 8
         <div style="width: 99%;text-align: right;">
9 9
           治疗日期: <span>{{ year }}</span>年<span>{{ months }}</span>月<span>{{ day }}</span>日
10 10
         </div>
11
-        <!-- <table border="1" class="table-box" style="border-collapse: collapse;text-align: center;width: 99%;font-size: 16px;">
12
-          <tbody>
13
-            <tr>
14
-              <td width="80" style="line-height:30px;">
15
-                治疗日期: <span>{{ year }}</span>年<span>{{ months }}</span>月<span>{{ day }}</span>日
16
-              </td>
17
-            </tr>
18
-          </tbody>
19
-        </table> -->
20 11
         <table border="1" class="table-box" style="border-collapse: collapse;width: 99%;font-size: 16px;">
21 12
           <tbody>
22 13
             <tr>
@@ -31,45 +22,32 @@
31 22
                   <div style="flex: 1;">
32 23
                     年 龄:{{ getAge(patientInfo) }}岁
33 24
                   </div>
34
-                  <!-- <div style="flex: 1;">
35
-                    透析号:{{ patientInfo.dialysis_no ? patientInfo.dialysis_no : "/" }}
36
-                  </div> -->
37 25
                   <div style="flex: 1;">
38 26
                     透析机号:
39 27
                     <span v-if="dialysisOrder!=null">{{ dialysisOrder && dialysisOrder.DeviceNumber && dialysisOrder.DeviceNumber.number.length > 0 ? dialysisOrder.DeviceNumber.number : patientInfo.DialysisSchedule.device_number.number }}</span> 
40 28
                   </div>
41
-                  <div style="flex: 1;">
42
-                    透析次数:  {{ patientInfo.total_dialysis + patientInfo.user_sys_before_count ?
43
-                                patientInfo.total_dialysis + patientInfo.user_sys_before_count : "/" }}
44
-                  </div>
45 29
                 </div>
46 30
               </td>
47 31
             </tr>
48
-
49 32
             <tr>
50 33
               <td colspan="3">
51 34
                 <div style="line-height:30px;">
52 35
                   上机前病情:
53
-                    <!-- <div style="display: flex;"> -->
54
-                      <div style="display: inline-block;">
55
-                        T:<span style="display: inline-block;width: 30px;">{{predialysis.temperature}}</span>℃
56
-                      </div>
57
-                      <div style="display: inline-block;">p:
58
-                        <span style="display: inline-block;width: 30px;text-align: center;">{{predialysis.pulse_frequency}}</span>次/分
59
-                      </div>
60
-                      <div style="display: inline-block;">R:
61
-                        <span style="display: inline-block;width: 30px;">{{ predialysis.breathing_rate }}</span>次/分
62
-                      </div>
63
-                      <div style="display: inline-block;">BP:
64
-                        <span style="display: inline-block;width: 80px;">{{ predialysis.systolic_blood_pressure }}/
65
-                        {{ predialysis.diastolic_blood_pressure }}</span>mmHg
66
-                      </div>
67
-                    <!-- </div> -->
68
-                  <!-- <span v-if="predialysis.symptom_before_dialysis_other==''"> -->
36
+                    <div style="display: inline-block;">
37
+                      T:<span style="display: inline-block;width: 30px;">{{predialysis.temperature}}</span>℃
38
+                    </div>
39
+                    <div style="display: inline-block;">p:
40
+                      <span style="display: inline-block;width: 30px;text-align: center;">{{predialysis.pulse_frequency}}</span>次/分
41
+                    </div>
42
+                    <div style="display: inline-block;">R:
43
+                      <span style="display: inline-block;width: 30px;">{{ predialysis.breathing_rate }}</span>次/分
44
+                    </div>
45
+                    <div style="display: inline-block;">BP:
46
+                      <span style="display: inline-block;width: 80px;">{{ predialysis.systolic_blood_pressure }}/
47
+                      {{ predialysis.diastolic_blood_pressure }}</span>mmHg
48
+                    </div>
69 49
                     <label-box :isChecked="predialysis.symptom_before_dialysis_other==''?true :false" showValue="无特殊"></label-box>&nbsp;
70 50
                     <label-box :isChecked="predialysis.symptom_before_dialysis_other!=''?true :false" showValue="症状:"></label-box>
71
-                  <!-- </span> -->
72
-                  <!-- <span>{{predialysis.symptom_before_dialysis}}</span> -->
73 51
                   <span>{{predialysis.symptom_before_dialysis_other}}</span>
74 52
                 </div>
75 53
               </td>
@@ -85,34 +63,22 @@
85 63
                   <label-box :isChecked="prescription.mode=='HDF'&& prescription.displace_liqui_part == 2?true :false" showValue="后稀释,"></label-box>&nbsp;
86 64
                   <span>置换量: {{ prescription.displace_liqui_value ? prescription.displace_liqui_value : "/" }} ml</span>
87 65
                   )&nbsp;&nbsp;
88
-                  <label-box :isChecked="prescription.mode=='HD+HP'?true :false" showValue="HD+HP"></label-box>
66
+                  <label-box :isChecked="prescription.mode=='HD+HP'?true :false" showValue="HD+HP"></label-box>&nbsp;&nbsp;
89 67
                   透析(滤)器:
90
-                  {{ prescription.dialysis_dialyszers ? prescription.dialysis_dialyszers : "" }}
91
-                  {{ prescription.dialysis_irrigation ? prescription.dialysis_irrigation :'' }}
92
-                  {{ prescription.dialysis_strainer ? prescription.dialysis_strainer : "" }}
93
-                      <!-- <label-box :isChecked="prescription.mode!='HDF' && prescription.mode!='HD' && prescription.mode!='HD+HP' && prescription.mode!=''?true :false" showValue="其他:"></label-box>
94
-                  <span v-if="prescription.mode!='HDF' && prescription.mode!='HD' && prescription.mode!='HD+HP'">{{ prescription.mode }}</span> -->
68
+                  {{prescription.dialyzer_perfusion_apparatus ? prescription.dialyzer_perfusion_apparatus :''}}
95 69
                 </div>
96 70
               </td>
97
-              <!-- <td style="line-height:30px;">
98
-                治疗时间:
99
-                {{ afterdialysis.actual_treatment_hour ? afterdialysis.actual_treatment_hour : "0" }}小时
100
-                {{ afterdialysis.actual_treatment_minute ? afterdialysis.actual_treatment_minute : 0 }}分
101
-              </td> -->
102 71
             </tr>
103 72
 
104 73
             <tr>
105 74
               <td colspan="3">
106 75
                 <div style="display: flex;line-height:30px;">
107 76
                   <span>治疗抗凝:</span>
108
-                  <span v-if="prescription.anticoagulant !='普通肝素' && prescription.anticoagulant!='无肝素' && prescription.anticoagulant!='枸橼酸'">
109
-                    {{ prescription.anticoagulant }} &nbsp;&nbsp;
77
+                  <span v-if="prescription.anticoagulant !=2 && prescription.anticoagulant!=1 && prescription.anticoagulant!=5">
78
+                    {{ getanticoagul(prescription.anticoagulant) }} &nbsp;&nbsp;
110 79
                     {{prescription.anticoagulant_zongliang ? prescription.anticoagulant_zongliang : "0"}}
111 80
                   </span>U&nbsp;&nbsp;
112
-                  <!-- <span v-if="prescription.anticoagulant !='普通肝素' && prescription.anticoagulant!='无肝素' && prescription.anticoagulant!='枸橼酸'">
113
-
114
-                  </span>U &nbsp;&nbsp; -->
115
-                  <label-box :isChecked="prescription.anticoagulant=='普通肝素'?true :false" showValue="普通肝素:"></label-box>&nbsp;&nbsp;
81
+                  <label-box :isChecked="prescription.anticoagulant==2 ?true :false" showValue="普通肝素:"></label-box>&nbsp;&nbsp;
116 82
                   <div style="display: inline-block;">
117 83
                     首剂:
118 84
                     <span v-if="prescription.anticoagulant=='普通肝素'">
@@ -128,8 +94,8 @@
128 94
                     </span>mg
129 95
                   </div>
130 96
                   &nbsp;&nbsp;
131
-                  <label-box :isChecked="prescription.anticoagulant=='无肝素'?true :false" showValue="无肝素"></label-box>&nbsp;&nbsp;
132
-                  <label-box :isChecked="prescription.anticoagulant=='枸橼酸'?true :false" showValue="枸橼酸"></label-box>
97
+                  <label-box :isChecked="prescription.anticoagulant==1 ?true :false" showValue="无肝素"></label-box>&nbsp;&nbsp;
98
+                  <label-box :isChecked="prescription.anticoagulant==5 ?true :false" showValue="枸橼酸"></label-box>
133 99
                 </div>
134 100
               </td>
135 101
             </tr>
@@ -156,111 +122,64 @@
156 122
               </td>
157 123
             </tr>
158 124
 
159
-            <!-- <tr>
125
+            <tr>
160 126
               <td colspan="3">
161
-                <div style="display: flex;flex-wrap: wrap;">
162
-                  
163
-                  
127
+                <div style="display: flex;">
128
+                  <div style="flex: 2;">
129
+                    <span>
130
+                      透析液钙浓度:
131
+                    </span>
132
+                    <label-box :isChecked="prescription.calcium=='1.25'?true :false" showValue="1.25mmo1/L"></label-box>&nbsp;&nbsp;
133
+                    <label-box :isChecked="prescription.calcium=='1.5'?true :false" showValue="1.5mmo1/L"></label-box>&nbsp;&nbsp;
134
+                    <label-box :isChecked="prescription.calcium=='1.75'?true :false" showValue="1.75mmo1/L"></label-box>&nbsp;&nbsp;
135
+                  </div>
164 136
                   <div style="flex: 1;">
165
-                    本次透析体重下降量:
166
-                    {{  afterdialysis.weight_after == 0 || predialysis.weight_before == 0? '0.00'
167
-                      : (predialysis.weight_before - afterdialysis.weight_after).toFixed(2) }}kg
137
+                    医师签名:杨能华/
138
+                    <span style="display: inline-block;width: 50%;" v-if="setAdminUserES(prescription.creater) == ''">
139
+                      {{ getAdminUser(prescription.creater)}}
140
+                    </span>
141
+                    <span style="display: inline-block;width: 50%;" v-else>
142
+                      <img style="height:30px;" :src="setAdminUserES(prescription.creater)" alt srcset />
143
+                    </span>
168 144
                   </div>
169 145
                 </div>
170
-              </td>
171
-            </tr> -->
172
-
173
-            <tr>
174
-              <td colspan="2">
175
-                <span>
176
-                  透析液钙浓度:
177
-                </span>
178
-                <label-box :isChecked="prescription.calcium=='1.25'?true :false" showValue="1.25mmo1/L"></label-box>&nbsp;&nbsp;
179
-                <label-box :isChecked="prescription.calcium=='1.5'?true :false" showValue="1.5mmo1/L"></label-box>&nbsp;&nbsp;
180 146
                 
181 147
               </td>
182
-              <td style="border-left: none;">
183
-                医师签名:
184
-                <span class="under-line" style="display: inline-block;width: 50%;" v-if="setAdminUserES(prescription.creater) == ''">
185
-                  {{ getAdminUser(prescription.creater)}}
186
-                </span>
187
-                <span class="under-line" style="display: inline-block;width: 50%;" v-else>
188
-                  <img style="height:30px;" :src="setAdminUserES(prescription.creater)" alt srcset />
189
-                </span>
190
-              </td>
148
+              
191 149
             </tr>
192
-
193
-            <!-- <tr>
194
-              <td colspan="3">
195
-                <div>
196
-                  <span>透析液流量: {{ prescription.dialysate_flow ? prescription.dialysate_flow : "" }} </span>ml/h &nbsp;&nbsp;
197
-                  <span>血流量:{{ prescription.blood_flow_volume ? prescription.blood_flow_volume : "" }} </span>ml/min &nbsp;&nbsp;
198
-                </div>
199
-              </td>
200
-            </tr> -->
201
-
202 150
           </tbody>
203 151
         </table>
204 152
         <table border="1" class="table-box" style="border-collapse: collapse;width: 99%;font-size: 16px;">
205
-          <!-- <tr>
206
-            <td style="width: 20%; line-height: 30px;">透析机:
207
-              {{predialysis.machine_type ? predialysis.machine_type : " "}}
208
-            </td>
209
-            <td style="width: 30%;line-height: 30px;">
210
-              透析(滤)器:
211
-              {{ prescription.dialysis_dialyszers ? prescription.dialysis_dialyszers : "" }}
212
-              {{ prescription.dialysis_irrigation ? prescription.dialysis_irrigation :'' }}
213
-              {{ prescription.dialysis_strainer ? prescription.dialysis_strainer : "" }}
214
-             
215
-            </td>
216
-            <td style="">
217
-              透析液:钾:
218
-              <span style="">2.0</span>mmol/L&nbsp;
219
-              钙:
220
-              <span style="">1.5</span>mmol/L&nbsp;
221
-              碳酸氢盐:
222
-              <span >32</span>mmol/L&nbsp;
223
-              钠:
224
-              <span>138</span>mmol/L
225
-               
226
-            </td>
227
-          </tr> -->
228
-
229 153
           <tr>
230 154
             <td colspan="3">
231 155
               <div style="display: inline-block;line-height: 30px;">
232 156
                 血管通路:
233
-
234
-                {{ predialysis.blood_access_part_id ? predialysis.blood_access_part_id :'/' }}
235
-                {{ predialysis.blood_access_part_opera_name ? predialysis.blood_access_part_opera_name :'/' }}
236
-              </div>&nbsp;&nbsp;
237
-              <!-- <div style="display: inline-block;line-height: 30px;">
238
-                穿刺者:
239
-                <span v-if="setAdminUserES(dialysisOrder == null ? 0 : dialysisOrder.puncture_nurse) == ''">
240
-                  {{ getAdminUser(dialysisOrder == null ? 0 : dialysisOrder.puncture_nurse) }}
157
+                <span v-if="predialysis.blood_access_part_opera_name !=''">
158
+                  <label-box :isChecked="predialysis.blood_access_part_opera_name.indexOf('内瘘')!=-1 ?true :false" showValue="内瘘"></label-box>&nbsp;
159
+                  <label-box :isChecked="predialysis.blood_access_part_opera_name.indexOf('带隧道带绦纶套')!=-1?true :false" showValue="长期静脉导管"></label-box>&nbsp;
160
+                  <label-box :isChecked="predialysis.blood_access_part_opera_name.indexOf('无绦纶套')!=-1?true :false" showValue="临时(颈、股)静脉导管"></label-box>&nbsp;
161
+                  <label-box :isChecked="predialysis.blood_access_part_opera_name.indexOf('内瘘')==-1 &&
162
+                              predialysis.blood_access_part_opera_name.indexOf('带隧道带绦纶套')==-1 &&
163
+                              predialysis.blood_access_part_opera_name.indexOf('无绦纶套')==-1 ?true :false" showValue="其它">
164
+                  </label-box>
241 165
                 </span>
242
-                <img class="es-img" style="height:30px;" :src="setAdminUserES(dialysisOrder == null ? 0 : dialysisOrder.puncture_nurse)" alt="" srcset="" v-else />
243
-              </div> -->
166
+              </div>&nbsp;&nbsp;
244 167
             </td>
245 168
           </tr>
246 169
           <tr>
247 170
             <td colspan="3">
248 171
               <div style="display: flex;">
249 172
                 <div style="flex: 1;line-height: 30px;">
250
-                  穿刺点情况:
251
-                  <!-- <label-box :isChecked="predialysis.point_puncture==''?true :false" showValue="1.25mmo1/L"></label-box>&nbsp; -->
252
-                  <span>正常、</span>&nbsp;<span>出血、</span>&nbsp;<span>血肿、</span>&nbsp;
253
-                  <span>感染、</span>&nbsp;<span>皮疹(湿疹)、</span>
173
+                  穿刺点情况:{{ predialysis.point_puncture ? predialysis.point_puncture : "/" }}
254 174
                 </div>&nbsp;&nbsp;
255 175
                 <div style="display: 1;line-height: 30px;">
256
-                  穿刺护士:
176
+                  穿刺护士:杨能华/
257 177
                   <span style="display: inline-block;width: 100px;" v-if="setAdminUserES(dialysisOrder == null ? 0 : dialysisOrder.puncture_nurse) == ''">
258 178
                     {{ getAdminUser(dialysisOrder == null ? 0 : dialysisOrder.puncture_nurse) }}
259 179
                   </span>
260 180
                   <img class="es-img" style="height:30px;" :src="setAdminUserES(dialysisOrder == null ? 0 : dialysisOrder.puncture_nurse)" alt="" srcset="" v-else />
261 181
                 </div>
262 182
               </div>
263
-              
264 183
             </td>
265 184
           </tr>
266 185
         </table>
@@ -268,7 +187,7 @@
268 187
         <table border="1" class="table-box" style="border-collapse: collapse;text-align: center;width: 99%;font-size: 16px;">
269 188
           <tbody>
270 189
             <tr>
271
-              <td colspan="12" style="padding: 5px;">治疗过程记录</td>
190
+              <td colspan="16" style="padding: 5px;">治疗过程记录</td>
272 191
             </tr>
273 192
             <tr>
274 193
               <td rowspan="2">时间</td>
@@ -280,7 +199,6 @@
280 199
             <tr>
281 200
               <td width="6%">电导<br/>ms/cm</td>
282 201
               <td width="6%">TMP<br/>mmHg</td>
283
-              <!-- <td>动脉压<br/>mmHg</td> -->
284 202
               <td width="6%">静脉压</td>
285 203
               <td width="6%">血流量</td>
286 204
               <td width="6%">脱水量</td>
@@ -295,11 +213,7 @@
295 213
             <tr v-for="(monitor, monindex) in monitors" :key="monindex">
296 214
               <td style="height: 30px;">{{ getTime(monitor.operate_time, "{h}:{i}") }}</td>
297 215
               <td>{{ monitor.conductivity ? monitor.conductivity : "" }}</td>
298
-              <td>{{
299
-                monitor.transmembrane_pressure ? monitor.transmembrane_pressure : ""
300
-                }}
301
-              </td>
302
-              
216
+              <td>{{ monitor.transmembrane_pressure ? monitor.transmembrane_pressure : ""}}</td>
303 217
               <td>{{ monitor.venous_pressure ? monitor.venous_pressure : "" }}</td>
304 218
               <td>{{ monitor.blood_flow_volume ? monitor.blood_flow_volume : "" }}</td>
305 219
               <td>{{ monitor.ultrafiltration_volume ? monitor.ultrafiltration_volume : ""}}</td>
@@ -348,9 +262,6 @@
348 262
                 <td style="width:10%;height:25px">
349 263
                   <p style="height:30px;line-height:30px">执行护士</p>
350 264
                 </td>
351
-                <!-- <td style="width:10%;height:25px">
352
-                  <p style="height:30px;line-height:30px">核对</p>
353
-                </td> -->
354 265
               </tr>
355 266
 
356 267
               <tr v-for="(advice, advice_index) in tableAdvice" :key="advice_index">
@@ -381,19 +292,6 @@
381 292
                   <span v-if="setAdminUserES(advice.execution_staff) == ''">{{ getAdminUser(advice.execution_staff) }}</span>
382 293
                   <img style="height:40px;" :src="setAdminUserES(advice.execution_staff)" alt="" srcset="" v-else />
383 294
                 </td>
384
-                
385
-                <!-- <td v-if="advice_index === 0">透前体重:</td>
386
-                <td v-if="advice_index === 0">{{ predialysis.weight_before }}kg</td>
387
-                <td v-if="advice_index === 1">体重增加量:</td>
388
-                <td v-if="advice_index === 1">{{ (predialysis.weight_before - assessmentafter.weight_after).toFixed(1) }}kg</td>
389
-                <td v-if="advice_index === 2">干体重(DW):</td>
390
-                <td v-if="advice_index === 2">{{ predialysis.dry_weight }}kg</td> -->
391
-                <!-- <td v-if="advice_index === 3">透后体重:</td>
392
-                <td v-if="advice_index === 3">{{ afterdialysis.weight_after }}kg</td>
393
-                <td v-if="advice_index === 4">本次透析体重下降量:</td>
394
-                <td v-if="advice_index === 4">
395
-                  {{  afterdialysis.weight_after == 0 || predialysis.weight_before == 0? '0.00'
396
-                      : (predialysis.weight_before - afterdialysis.weight_after).toFixed(2) }}kg</td> -->
397 295
               </tr>
398 296
               <tr>
399 297
                 <td colspan="6">
@@ -960,12 +858,6 @@ export default {
960 858
           this.doctorForm.url = doctorname.url;
961 859
           var prescription = response.data.data.dialysisPrescription;
962 860
           console.log("透析处方", prescription);
963
-          if (prescription.anticoagulant == 6) {
964
-            prescription.anticoagulant = "低分子肝素钙";
965
-          }
966
-          if (prescription.anticoagulant == 7) {
967
-            prescription.anticoagulant = "低分子肝素钠";
968
-          }
969 861
           if (prescription.blood_access === 1) {
970 862
             prescription.blood_access = "正常";
971 863
           }
@@ -1002,21 +894,6 @@ export default {
1002 894
           if (prescription.replacement_way === 4) {
1003 895
             prescription.replacement_way = "混合置换";
1004 896
           }
1005
-          if (prescription.anticoagulant === 1) {
1006
-            prescription.anticoagulant = "无肝素";
1007
-          }
1008
-          if (prescription.anticoagulant === 2) {
1009
-            prescription.anticoagulant = "普通肝素";
1010
-          }
1011
-          if (prescription.anticoagulant === 3) {
1012
-            prescription.anticoagulant = "低分子肝素";
1013
-          }
1014
-          if (prescription.anticoagulant === 4) {
1015
-            prescription.anticoagulant = "阿加曲班";
1016
-          }
1017
-          if (prescription.anticoagulant === 5) {
1018
-            prescription.anticoagulant = "枸橼酸钠";
1019
-          }
1020 897
           this.prescription = prescription;
1021 898
           var receiverTreatmentAccess =
1022 899
             response.data.data.receiverTreatmentAccess;
@@ -1295,9 +1172,10 @@ export default {
1295 1172
             }
1296 1173
           }
1297 1174
 
1298
-          console.log("血透监测 != -1",projects)
1299
-          var doctorAdevieInfo = response.data.data.doctorAdevieInfo
1300
-          var tableAdvice = newDocArr.concat(doctorAdevieInfo);
1175
+          console.log("血透监测 != -1",response.data.data)
1176
+          // var doctorAdevieInfo = response.data.data.doctorAdevieInfo
1177
+          // var tableAdvice = newDocArr.concat(doctorAdevieInfo);
1178
+          var tableAdvice = newDocArr
1301 1179
           console.log("医嘱红红火火恍恍惚惚哈哈哈哈哈哈哈哈哈哈哈哈哈哈",tableAdvice)
1302 1180
           if(projectarr.length>0){
1303 1181
             for(let i in projectarr){
@@ -1495,6 +1373,14 @@ export default {
1495 1373
       }else{
1496 1374
         this.$message.success('核对完成')
1497 1375
       }
1376
+    },
1377
+    getanticoagul(val){
1378
+     const antion = this.anticoagulantsConfit
1379
+      for(let i in antion){
1380
+        if(val == antion[i].id){
1381
+          return antion[i].name
1382
+        }
1383
+      }
1498 1384
     }
1499 1385
   },
1500 1386
   watch: {

+ 10 - 1
src/xt_pages/dialysis/template/DialysisPrintOrdereightythree.vue View File

@@ -243,7 +243,16 @@
243 243
                 <label-box :isChecked="predialysis.blood_access_part_opera_name.indexOf('无绦纶套') != -1 ? true : false"
244 244
                   showValue="临时(颈、股)静脉导管"></label-box>&nbsp;
245 245
                 <label-box :isChecked="predialysis.blood_access_part_opera_name.indexOf('人造血管') != -1 ? true : false"
246
-                  showValue="人造血管"></label-box>
246
+                  showValue="人造血管"></label-box>&nbsp;
247
+                其他:
248
+                <div style="display: inline-block;" 
249
+                  v-if="predialysis.blood_access_part_opera_name.indexOf('内瘘') == -1 &&
250
+                  predialysis.blood_access_part_opera_name.indexOf('无绦纶套') == -1 &&
251
+                  predialysis.blood_access_part_opera_name.indexOf('带隧道带绦纶套') == -1 &&
252
+                  predialysis.blood_access_part_opera_name.indexOf('人造血管') == -1"
253
+                >
254
+                  {{ predialysis.blood_access_part_opera_name }}
255
+                </div>
247 256
               </div>&nbsp;&nbsp;
248 257
               <div style="display: inline-block;line-height: 30px;">
249 258
                 穿刺者:

+ 11 - 4
src/xt_pages/drugSourceCode/drugCodeQuery.vue View File

@@ -84,6 +84,8 @@
84 84
           </template>
85 85
         </el-table-column>
86 86
 
87
+
88
+
87 89
         <el-table-column align="center" prop="name" label="发药状态">
88 90
           <template slot-scope="scope">
89 91
             <div v-if="scope.row.is_medicine == 1">已发药</div>
@@ -91,12 +93,19 @@
91 93
           </template>
92 94
         </el-table-column>
93 95
 
96
+
97
+        <el-table-column align="center" prop="name" label="结算状态">
98
+          <template slot-scope="scope">
99
+            <div v-if="scope.row.pre.order_status == 2">已结算</div>
100
+            <div v-if="scope.row.pre.order_status != 2">未结算</div>
101
+          </template>
102
+        </el-table-column>
103
+
94 104
         <el-table-column align="center" prop="name" label="操作" width="200">
95 105
           <template slot-scope="scope">
96 106
             <div>
97 107
              <el-button v-if="scope.row.is_upload == 1" type="primary" @click="revokeDrugCode(scope.row)">撤销</el-button>
98 108
             <el-button type="primary" v-if="scope.row.is_upload == 0" @click="toUpload(scope.row)">上传</el-button>
99
-<!--            <el-button v-if="faShow == true" type="primary" @click="toFaYao(scope.row)">发药</el-button>-->
100 109
             </div>
101 110
           </template>
102 111
         </el-table-column>
@@ -115,8 +124,6 @@
115 124
 
116 125
 
117 126
 
118
-
119
-
120 127
       <el-dialog
121 128
         title="药品追溯码"
122 129
         :visible.sync="dialogVisibleOne"
@@ -453,7 +460,7 @@
453 460
           } else {
454 461
 
455 462
             //有打开则调用接口
456
-            axios.get('http://127.0.0.1:9532/api/delete_xs_bg_three',{params:params}).then(function(response) {
463
+            axios.get('http://127.0.0.1:9532/api/changedrug/five',{params:params}).then(function(response) {
457 464
               if (response.data.state == 0) {
458 465
                 that.$message.error(response.data.data.msg);
459 466
                 return false

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

@@ -65,7 +65,7 @@
65 65
       <!-- 广水原生堂 -->
66 66
       <printfourteen :info="info" v-if="(org_id == 10088 ) && this.paramsObj.balance_accounts_type == 1"></printfourteen>
67 67
       <!-- 盱眙恒硕 -->
68
-      <printfivetheen :info="info" v-if="org_id == 10633"></printfivetheen>
68
+      <printfivetheen :info="info" v-if="org_id == 10633 || org_id == 0"></printfivetheen>
69 69
       <!-- 顺有好 -->
70 70
       <printSixtheen :info="info" v-if="org_id == 10697"></printSixtheen>
71 71
       <!-- 杏康 -->
@@ -76,13 +76,9 @@
76 76
             org_id != 10610 && org_id !=10537 && org_id !=10697 &&
77 77
             org_id != 10278 && org_id != 10387 && org_id != 10191 &&
78 78
             org_id != 10210 &&org_id != 10485 &&org_id != 10480 &&
79
-            org_id != 10510 &&org_id != 10088 && org_id != 10721 &&org_id != 10633 &&org_id != 10731 && org_id != 10726 && this.paramsObj.balance_accounts_type == 1">
79
+            org_id != 10510 &&org_id != 10088 && org_id != 10721 &&org_id != 0 &&org_id != 10633 &&org_id != 10731 && org_id != 10726 && this.paramsObj.balance_accounts_type == 1">
80 80
       </printOne>
81
-      <privateChargePrint :info="info" v-if="org_id != 9990 &&
82
-            org_id != 10138 && org_id != 9504 &&  org_id != 10028 && org_id !=10697 &&
83
-            org_id != 10278 && org_id != 10610 && org_id !=10537 && org_id != 10387 &&
84
-            org_id != 10191 &&org_id != 10210 &&org_id != 10485  &&org_id != 10480 &&
85
-            org_id != 10510 &&org_id != 10633 && org_id != 10721 && org_id != 10726  && this.paramsObj.balance_accounts_type == 2">
81
+      <privateChargePrint :info="info" v-if="this.paramsObj.balance_accounts_type == 2">
86 82
       </privateChargePrint>
87 83
     </div>
88 84
   </div>
@@ -2203,6 +2199,387 @@ export default {
2203 2199
 
2204 2200
 
2205 2201
 
2202
+          } else if(this.org_id == 10633 || this.org_id == 0){
2203
+            let params = {
2204
+              order_id: obj.order_id,
2205
+              admin_user_id: this.$store.getters.xt_user.user.id
2206
+            }
2207
+            getPrivateExpensesOrder(params).then((response) => {
2208
+              if (response.data.state == 0) {
2209
+                // this.$message.error(response.data.msg)
2210
+
2211
+                return false
2212
+              } else {
2213
+                var that = this
2214
+                that.info = response.data.data.info
2215
+                that.p_admin = response.data.data.printor_admin
2216
+                that.charge_admin = response.data.data.charge_admin
2217
+                that.info['new_order'] = response.data.data.info
2218
+                that.info['p_admin'] = that.p_admin
2219
+                that.info['charge_admin'] = that.charge_admin
2220
+                that.info['order_number'] = response.data.data.order_number
2221
+                that.info['patient'] = response.data.data.patient
2222
+                that.info['date'] = response.data.data.date
2223
+                that.info['number'] = response.data.data.number
2224
+                that.info['order_infos'] = response.data.data.order_infos
2225
+                that.info['diagnosis'] = response.data.data.diagnosis
2226
+                that.info['fixmedins_name'] = response.data.data.org_name
2227
+                that.info['fixmedins_code'] = response.data.data.org_code
2228
+                // that.info["doctor_code"] = response.data.data.doctor_code;
2229
+                // that.info["department"] = response.data.data.department;
2230
+                // that.info["health_card_no"] = response.data.data.health_card_no;
2231
+
2232
+                that.info['bed_cost_total'] = response.data.data.bedCostTotal
2233
+                that.info['bed_cost_self_total'] =
2234
+                  response.data.data.bedCostSelfTotal
2235
+                that.info['bed_cost_part_self_total'] =
2236
+                  response.data.data.bedCostPartSelfTotal
2237
+
2238
+                that.info['operation_cost_total'] =
2239
+                  response.data.data.operationCostTotal
2240
+                that.info['operation_cost_self_total'] =
2241
+                  response.data.data.operationCostSelfTotal
2242
+                that.info['operation_cost_part_self_total'] =
2243
+                  response.data.data.operationCostPartSelfTotal
2244
+
2245
+                that.info['other_cost_total'] = response.data.data.otherCostTotal
2246
+                that.info['other_cost_self_total'] =
2247
+                  response.data.data.otherCostSelfTotal
2248
+                that.info['other_cost_part_self_total'] =
2249
+                  response.data.data.otherCostPartSelfTotal
2250
+
2251
+                that.info['material_cost_total'] =
2252
+                  response.data.data.materialCostTotal
2253
+                that.info['material_cost_self_total'] =
2254
+                  response.data.data.materialCostSelfTotal
2255
+                that.info['material_cost_part_self_total'] =
2256
+                  response.data.data.materialCostPartSelfTotal
2257
+
2258
+                that.info['western_medicine_cost_total'] =
2259
+                  response.data.data.westernMedicineCostTotal
2260
+                that.info['western_medicine_cost_self_total'] =
2261
+                  response.data.data.westernMedicineCostSelfTotal
2262
+                that.info['western_medicine_cost_part_self_total'] =
2263
+                  response.data.data.westernMedicineCostPartSelfTotal
2264
+
2265
+                that.info['chinese_traditional_medicine_cost_total'] =
2266
+                  response.data.data.chineseTraditionalMedicineCostTotal
2267
+                that.info['chinese_traditional_medicine_cost_self_total'] =
2268
+                  response.data.data.chineseTraditionalMedicineCostSelfTotal
2269
+                that.info['chinese_traditional_medicine_cost_part_self_total'] =
2270
+                  response.data.data.chineseTraditionalMedicineCostPartSelfTotal
2271
+
2272
+                that.info['check_cost_total'] = response.data.data.checkCostTotal
2273
+                that.info['check_cost_self_total'] =
2274
+                  response.data.data.checkCostSelfTotal
2275
+                that.info['check_cost_part_self_total'] =
2276
+                  response.data.data.checkCostPartSelfTotal
2277
+
2278
+                that.info['laboratory_cost_total'] =
2279
+                  response.data.data.laboratoryCostTotal
2280
+                that.info['laboratory_cost_self_total'] =
2281
+                  response.data.data.laboratoryCostSelfTotal
2282
+                that.info['laboratory_cost_part_self_total'] =
2283
+                  response.data.data.laboratoryCostPartSelfTotal
2284
+
2285
+                that.info['treat_cost_total'] = response.data.data.treatCostTotal
2286
+                that.info['treat_cost_self_total'] =
2287
+                  response.data.data.treatCostSelfTotal
2288
+                that.info['treat_cost_part_self_total'] =
2289
+                  response.data.data.treatCostPartSelfTotal
2290
+
2291
+
2292
+                that.info['bedInscpTotal'] =
2293
+                  response.data.data.bedInscpTotal
2294
+                that.info['bedSelfTotal'] =
2295
+                  response.data.data.bedSelfTotal
2296
+
2297
+                that.info['operationInscpTotal'] =
2298
+                  response.data.data.operationInscpTotal
2299
+                that.info['operationSelfTotal'] =
2300
+                  response.data.data.operationSelfTotal
2301
+
2302
+                that.info['checkInscpTotal'] =
2303
+                  response.data.data.checkInscpTotal
2304
+                that.info['checkSelfTotal'] =
2305
+                  response.data.data.checkSelfTotal
2306
+
2307
+                that.info['treatInscpTotal'] =
2308
+                  response.data.data.treatInscpTotal
2309
+                that.info['treatSelfTotal'] =
2310
+                  response.data.data.treatSelfTotal
2311
+
2312
+                that.info['laboratoryInscpTotal'] =
2313
+                  response.data.data.laboratoryInscpTotal
2314
+                that.info['laboratorySelfTotal'] =
2315
+                  response.data.data.laboratorySelfTotal
2316
+
2317
+                that.info['westernMedicineInscpTotal'] =
2318
+                  response.data.data.westernMedicineInscpTotal
2319
+                that.info['westernMedicineSelfTotal'] =
2320
+                  response.data.data.westernMedicineSelfTotal
2321
+
2322
+                that.info['materialInscpTotal'] =
2323
+                  response.data.data.materialInscpTotal
2324
+                that.info['materialSelfTotal'] =
2325
+                  response.data.data.materialSelfTotal
2326
+
2327
+                that.info['chineseTraditionalInscpTotal'] =
2328
+                  response.data.data.chineseTraditionalInscpTotal
2329
+                that.info['chineseTraditionalSelfTotal'] =
2330
+                  response.data.data.chineseTraditionalSelfTotal
2331
+
2332
+
2333
+
2334
+                that.info['date'] = response.data.data.date
2335
+                that.info['number'] = response.data.data.number
2336
+                that.info['order_infos'] = response.data.data.order_infos
2337
+                that.info['diagnosis'] = response.data.data.diagnosis
2338
+                that.info['his'] = response.data.data.his
2339
+                that.info['dia_config'] = response.data.data.dia_config
2340
+
2341
+                const jsonArr = JSON.parse(response.data.data.his.idetinfo);
2342
+                that.info['psn_idet_type'] = jsonArr[0].psn_idet_type
2343
+
2344
+
2345
+                const jsons = JSON.parse(response.data.data.his.iinfo);
2346
+                that.info['emp_name'] = jsons[0].emp_name
2347
+
2348
+
2349
+
2350
+
2351
+
2352
+                for (let i = 0; i < response.data.data.order_infos.length; i++) {
2353
+                  if (response.data.data.order_infos[i].advice_id > 0 && response.data.data.order_infos[i].project_id == 0) {
2354
+                    response.data.data.order_infos[i].med_chrgitm_type = '09'
2355
+                  }
2356
+                  if (response.data.data.order_infos[i].advice_id == 0 && response.data.data.order_infos[i].project_id > 0) {
2357
+                    if (response.data.data.order_infos[i].project.type == 2) { //项目
2358
+                      if (response.data.data.order_infos[i].project.project.cost_classify == 2) {
2359
+                        response.data.data.order_infos[i].med_chrgitm_type = '05'
2360
+                      } else if (response.data.data.order_infos[i].project.project.cost_classify == 3) {
2361
+                        response.data.data.order_infos[i].med_chrgitm_type = '04'
2362
+                      } else {
2363
+                        response.data.data.order_infos[i].med_chrgitm_type = '14'
2364
+                      }
2365
+                    } else if (response.data.data.order_infos[i].project.type == 3) { //耗材
2366
+                      response.data.data.order_infos[i].med_chrgitm_type = '08'
2367
+                    }
2368
+                  }
2369
+                }
2370
+                console.log(response.data.data.order_infos)
2371
+                console.log(that.info)
2372
+
2373
+                let list = []
2374
+                for (let i = 0; i < response.data.data.order_infos.length; i++) {
2375
+                  let order = response.data.data.order_infos[i]
2376
+                  let obj = {
2377
+                    name: '',
2378
+                    spec: '',
2379
+                    cnt: '',
2380
+                    det_item_fee_sumamt: '',
2381
+                    price:'',
2382
+                  }
2383
+
2384
+                  if (order.advice_id > 0 && order.project_id == 0) {
2385
+                    obj.name = order.advice.advice_name
2386
+                    let spec = order.advice.drug.dose + order.advice.drug.dose_unit + '*' + order.advice.drug.min_number + order.advice.drug.min_unit + '/' + order.advice.drug.max_unit
2387
+                    obj.spec = spec
2388
+                    obj.cnt = order.cnt
2389
+                    obj.det_item_fee_sumamt = order.det_item_fee_sumamt
2390
+                    obj.price = order.pric
2391
+                    list.push(obj)
2392
+
2393
+                  } else if (order.advice_id == 0 && order.project_id > 0) {
2394
+                    if (order.project.type == 2) {
2395
+                      obj.name = order.project.project.project_name
2396
+                      obj.spec = ''
2397
+                      obj.cnt = order.cnt
2398
+                      obj.det_item_fee_sumamt = order.det_item_fee_sumamt
2399
+                      obj.price = order.pric
2400
+                    } else {
2401
+                      obj.name = order.project.good_info.good_name
2402
+                      obj.spec = order.project.good_info.specification_name
2403
+                      obj.cnt = order.cnt
2404
+                      obj.det_item_fee_sumamt = order.det_item_fee_sumamt
2405
+                      obj.price = order.pric
2406
+                    }
2407
+                    list.push(obj)
2408
+                  }
2409
+
2410
+                }
2411
+                that.info['Z_list'] = list
2412
+                console.log(" that.info")
2413
+                console.log(that.info.Z_list)
2414
+                console.log(" that.info")
2415
+
2416
+
2417
+                //获取所有项目类型进行去重
2418
+                let med_chrgitm_types = []
2419
+                for (let i = 0; i < response.data.data.order_infos.length; i++) {
2420
+                  med_chrgitm_types.push(response.data.data.order_infos[i].med_chrgitm_type)
2421
+                }
2422
+                const obj10 = {}
2423
+                med_chrgitm_types = med_chrgitm_types.reduce((cur, next) => {
2424
+                  obj10[next] ? '' : obj10[next] = true && cur.push(next)
2425
+                  return cur
2426
+                }, []) // 设置cur默认类型为数组,并且初始值为空的数组
2427
+                let tempOrderInfo = []
2428
+                for (let i = 0; i < med_chrgitm_types.length; i++) {
2429
+
2430
+                  let obj9 = {
2431
+                    details: [],
2432
+                    med_chrgitm_name: that.getType(med_chrgitm_types[i]),
2433
+                    total:0,
2434
+                  }
2435
+
2436
+                  // if(med_chrgitm_types[i] == '09'){
2437
+                  //   obj.sort = 99
2438
+                  // } else if(med_chrgitm_types[i] == '05'){
2439
+                  //   obj.sort = 98
2440
+                  // } else if(med_chrgitm_types[i] == '08'){
2441
+                  //   obj.sort = 97
2442
+                  // }else if(med_chrgitm_types[i] == '03'){
2443
+                  //   obj.sort = 96
2444
+                  // }
2445
+
2446
+                  let tempDetails = []
2447
+                  for (let b = 0; b < response.data.data.order_infos.length; b++) {
2448
+                    if (med_chrgitm_types[i] == response.data.data.order_infos[b].med_chrgitm_type) {
2449
+                      tempDetails.push(response.data.data.order_infos[b])
2450
+                    }
2451
+                  }
2452
+                  console.log(med_chrgitm_types[i])
2453
+                  console.log(tempDetails)
2454
+                  obj9.total = that.getTotal(tempDetails)
2455
+                  obj9.details = that.set10265NewData(tempDetails)
2456
+                  list.push(obj9)
2457
+                }
2458
+                that.info['new_list'] = list
2459
+                // list.sort((a,b) => a.sort < b.sort ? 1 : a.sort > b.sort ? -1 : 0)
2460
+
2461
+                let obj = {
2462
+                  type: 1,
2463
+                  details: [],
2464
+                  total: 0
2465
+                }
2466
+                let obj2 = {
2467
+                  type: 2,
2468
+                  details: [],
2469
+                  total: 0
2470
+                }
2471
+                let obj3 = {
2472
+                  type: 3,
2473
+                  details: [],
2474
+                  total: 0
2475
+                }
2476
+
2477
+                let obj4 = {
2478
+                  type: 4,
2479
+                  details: [],
2480
+                  total: 0
2481
+                }
2482
+                let num = 0
2483
+                that.info.order_infos.map((item) => {
2484
+                  if (item.advice_id > 0) {
2485
+                    obj.details.push(item)
2486
+                    obj.total += item.pric * item.advice.prescribing_number
2487
+                    num++
2488
+                  } else {
2489
+                    if (item.project.type == 2) {
2490
+                      obj2.details.push(item)
2491
+                      obj2.total += item.pric * item.project.count
2492
+                      num++
2493
+                    } else {
2494
+                      obj3.details.push(item)
2495
+                      obj3.total += item.pric * item.project.count
2496
+                      num++
2497
+                    }
2498
+                  }
2499
+                })
2500
+
2501
+                // this.info.order_infos.map(item => {
2502
+                //   obj4.total = item.Total
2503
+                //   obj4.details.push(item)
2504
+                //   num++
2505
+                //
2506
+                // })
2507
+                var funds = []
2508
+                for(let i = 0; i <  response.data.data.funds.length; i++){
2509
+                  var objs = {}
2510
+                  objs["number"] = i + 1
2511
+                  objs["fund_pay"] = response.data.data.funds[i].fund_payamt
2512
+                  objs["limit_pay"] = response.data.data.funds[i].inscp_scp_amt
2513
+                  objs["insp_pay"] = response.data.data.funds[i].inscp_scp_amt
2514
+                  for(let b = 0; b < that.fundsArray.length; b++){
2515
+                    if(response.data.data.funds[i].fund_pay_type ==  that.fundsArray[b].code){
2516
+                      objs["name"] =that.fundsArray[b].name
2517
+                    }
2518
+                  }
2519
+                  funds.push(objs)
2520
+                }
2521
+                that.info['funds'] = funds
2522
+                console.log(that.info)
2523
+
2524
+                that.info.new_detail_list = []
2525
+                that.info.new_detail_list.push(obj)
2526
+                that.info.new_detail_list.push(obj2)
2527
+                that.info.new_detail_list.push(obj3)
2528
+                // that.info.new_detail_list.push(obj4)
2529
+
2530
+                that.num = num
2531
+
2532
+                if (that.paramsObj.settle_type != 1) {
2533
+                  that.info.begndate = that.getTimes(that.paramsObj.start_time)
2534
+                  that.info.enddate = that.getTimes(that.paramsObj.end_time)
2535
+                }
2536
+
2537
+                that.info.order_infos.map((item) => {
2538
+
2539
+                })
2540
+
2541
+
2542
+                that.info["jia_drug"] = 0
2543
+                that.info["yi_drug"] = 0
2544
+                that.info["zifei_drug"] = 0
2545
+
2546
+
2547
+                that.info["jia_yiliao"] = 0
2548
+                that.info["yi_yiliao"] = 0
2549
+                that.info["zifei_yiliao"] = 0
2550
+
2551
+                for(let a = 0; a < response.data.data.order_infos.length; a++){
2552
+                  if(response.data.data.order_infos[a].chrgitm_lv == "01" && response.data.data.order_infos[a].med_chrgitm_type == "09"){
2553
+                    that.info["jia_drug"] = that.info["jia_drug"] + response.data.data.order_infos[a].det_item_fee_sumamt
2554
+                  }
2555
+                  if(response.data.data.order_infos[a].chrgitm_lv == "02" && response.data.data.order_infos[a].med_chrgitm_type == "09"){
2556
+                    that.info["yi_drug"] = that.info["yi_drug"] + response.data.data.order_infos[a].det_item_fee_sumamt
2557
+                  }
2558
+                  if(response.data.data.order_infos[a].chrgitm_lv != "01" && response.data.data.order_infos[a].chrgitm_lv != "02" && response.data.data.order_infos[a].med_chrgitm_type == "09"){
2559
+                    that.info["zifei_drug"] = that.info["zifei_drug"] + response.data.data.order_infos[a].det_item_fee_sumamt
2560
+                  }
2561
+                }
2562
+
2563
+                for(let a = 0; a < response.data.data.order_infos.length; a++){
2564
+                  if(response.data.data.order_infos[a].chrgitm_lv == "01" && response.data.data.order_infos[a].med_chrgitm_type != "09"){
2565
+                    that.info["jia_yiliao"] = that.info["jia_yiliao"] + response.data.data.order_infos[a].det_item_fee_sumamt
2566
+                  }
2567
+                  if(response.data.data.order_infos[a].chrgitm_lv == "02" && response.data.data.order_infos[a].med_chrgitm_type != "09"){
2568
+                    that.info["yi_yiliao"] = that.info["yi_yiliao"] + response.data.data.order_infos[a].det_item_fee_sumamt
2569
+                  }
2570
+                  if(response.data.data.order_infos[a].chrgitm_lv != "01" && response.data.data.order_infos[a].chrgitm_lv != "02" && response.data.data.order_infos[a].med_chrgitm_type != "09"){
2571
+                    that.info["zifei_yiliao"] = that.info["zifei_yiliao"] + response.data.data.order_infos[a].det_item_fee_sumamt
2572
+                  }
2573
+                }
2574
+
2575
+              }
2576
+            })
2577
+
2578
+
2579
+
2580
+
2581
+
2582
+
2206 2583
           }else {
2207 2584
             var that = this
2208 2585
             axios

+ 33 - 33
src/xt_pages/outpatientCharges/statementTemplate/printfivetheen.vue View File

@@ -3,7 +3,7 @@
3 3
     <div class="statementTitle">淮安市国家医保结算单</div>
4 4
     <div style="display: flex;">
5 5
       <div style="margin: 10px 0;flex: 1;">定点医疗机构:{{info.fixmedins_name}}</div>
6
-      <div style="margin: 10px 0;flex: 1;">统筹区号:</div>
6
+      <div style="margin: 10px 0;flex: 1;">统筹区号:320830</div>
7 7
       <div style="margin: 10px 0;flex: 1;">NO:</div>
8 8
     </div>
9 9
     <table class="statementTable" border="1" style="text-align: center;width: 100%;">
@@ -13,9 +13,9 @@
13 13
         <td width="5%">性别:</td>
14 14
         <td width="6%">{{ info.gend == '1' ? '男':'女' }}</td>
15 15
         <td width="14%">医保就诊号:</td>
16
-        <td width="13%">{{ }}</td>
16
+        <td width="13%">{{info.mdtrt_id}}</td>
17 17
         <td width="12%">住院次数:</td>
18
-        <td width="15%">{{ }}</td>
18
+        <td width="15%"></td>
19 19
       </tr>
20 20
       <tr>
21 21
         <td width="12">人员类别:</td>
@@ -54,7 +54,7 @@
54 54
           <span v-else></span>
55 55
         </td>
56 56
         <td width="8">状态:</td>
57
-        <td width="8">{{ }}</td>
57
+        <td width="8">出院</td>
58 58
         <td width="14">住院号:</td>
59 59
         <td width="12">{{info.number}}</td>
60 60
         <td width="12">结算日期:</td>
@@ -64,33 +64,33 @@
64 64
         <td >身份证号</td>
65 65
         <td colspan="3">{{info.certno}}</td>
66 66
         <td width="8">医保编号</td>
67
-        <td colspan="3">{{  }}</td>
67
+        <td colspan="3">{{info.psn_no}}</td>
68 68
       </tr>
69 69
       <tr>
70 70
         <td >单位名称</td>
71 71
         <td colspan="4">{{info.patient.home_address}}</td>
72 72
         <td width="8">人员身份类别</td>
73
-        <td colspan="2">{{  }}</td>
73
+        <td colspan="2"></td>
74 74
       </tr>
75 75
       <tr>
76
-        <td >院日期</td>
77
-        <td colspan="3">{{ }}</td>
76
+        <td >院日期</td>
77
+        <td colspan="3">{{info.setl_time.split(' ')[0]}}</td>
78 78
         <td width="8">出院诊断</td>
79
-        <td colspan="3">{{  }}</td>
79
+        <td colspan="3">慢性肾脏病5期(N18.500)</td>
80 80
       </tr>
81 81
       <tr>
82 82
         <td>医疗费总额</td>
83 83
         <td colspan="3">{{info.medfee_sumamt}}</td>
84 84
         <td>全自费金额</td>
85
-        <td></td>
85
+        <td>{{info.fulamt_ownpay_amt}}</td>
86 86
         <td>超限价自费费用</td>
87
-        <td></td>
87
+        <td>{{info.overlmt_self_pay}}</td>
88 88
       </tr>
89 89
       <tr>
90 90
         <td>先行自付金额</td>
91 91
         <td colspan="3">{{info.preselfpay_amt}}</td>
92 92
         <td>符合政策范围金额</td>
93
-        <td>{{info.insp_pay}}</td>
93
+        <td>{{info.inscp_scp_amt}}</td>
94 94
         <td>实际支付起付线</td>
95 95
         <td>{{info.act_pay_dedc}}</td>
96 96
       </tr>
@@ -100,7 +100,7 @@
100 100
         <td>公务员医疗补助资金支出</td>
101 101
         <td>{{info.cvlserv_pay}}</td>
102 102
         <td>扶贫保险支出</td>
103
-        <td></td>
103
+        <td>0</td>
104 104
       </tr>
105 105
       <tr>
106 106
         <td>企业补充医疗保险基金支出</td>
@@ -110,35 +110,35 @@
110 110
           {{info.hifmi_pay}}
111 111
         </td>
112 112
         <td>职工大额医疗费用补助基金支出</td>
113
-        <td></td>
113
+        <td>{{info.hifob_pay}}</td>
114 114
       </tr>
115 115
       <tr>
116 116
         <td>医疗救助基金支出</td>
117 117
         <td colspan="3">{{info.maf_pay}}</td>
118 118
         <td>医院负担金额</td>
119
-        <td></td>
119
+        <td>{{info.hosp_part_amt}}</td>
120 120
         <td>基金支付总额</td>
121 121
         <td>{{info.fund_pay_sumamt}}</td>
122 122
       </tr>
123 123
       <tr>
124 124
         <td>甲类药品</td>
125
-        <td colspan="3"></td>
125
+        <td colspan="3">{{info.jia_drug.toFixed(2)}}</td>
126 126
         <td>乙类药品</td>
127
-        <td></td>
127
+        <td>{{info.yi_drug.toFixed(2)}}</td>
128 128
         <td>自费药品</td>
129
-        <td></td>
129
+        <td>{{info.zifei_drug.toFixed(2)}}</td>
130 130
       </tr>
131 131
       <tr>
132 132
         <td>甲类医疗</td>
133
-        <td colspan="3"></td>
133
+        <td colspan="3">{{info.jia_yiliao.toFixed(2)}}</td>
134 134
         <td>乙类医疗</td>
135
-        <td></td>
135
+        <td>{{info.yi_yiliao.toFixed(2)}}</td>
136 136
         <td>自费医疗</td>
137
-        <td></td>
137
+        <td>{{info.zifei_yiliao.toFixed(2)}}</td>
138 138
       </tr>
139 139
       <tr>
140 140
         <td>个人负担总金额</td>
141
-        <td colspan="3"></td>
141
+        <td colspan="3">{{info.psn_part_amt}}</td>
142 142
         <td>个人账户支出</td>
143 143
         <td>{{info.acct_pay}}</td>
144 144
         <td>个人现金支出</td>
@@ -148,27 +148,27 @@
148 148
       </tr>
149 149
       <tr>
150 150
         <td>补偿合计</td>
151
-        <td colspan="5">{{ numberToChinese(100) }}</td>
152
-        <td colspan="2"></td>
151
+        <td colspan="5">{{ numberToChinese(info.fund_pay_sumamt) }}</td>
152
+        <td colspan="2">{{info.fund_pay_sumamt}}</td>
153 153
       </tr>
154 154
       <tr>
155 155
         <td>自理合计</td>
156
-        <td colspan="5"></td>
157
-        <td colspan="2"></td>
156
+        <td colspan="5">{{numberToChinese(info.psn_cash_pay)}}</td>
157
+        <td colspan="2">{{info.psn_cash_pay}}</td>
158 158
       </tr>
159 159
     </table>
160 160
     <table border="1" style="text-align: center;width: 100%;border-collapse: collapse;border-top: none;padding: 5px 0;">
161 161
       <tr>
162 162
         <td width="10%">政策范围内住院费用</td>
163
-        <td width="10%">{{ }}</td>
163
+        <td width="10%">{{info.medfee_sumamt}}</td>
164 164
         <td width="10%">政策范围内个人自付费用</td>
165
-        <td width="10%">{{  }}</td>
165
+        <td width="10%">{{info.psn_cash_pay}}</td>
166 166
         <td width="10%">政策范围内个人自付费用占比</td>
167
-        <td width="10%">{{ }}</td>
167
+        <td width="10%">{{((info.psn_cash_pay/info.medfee_sumamt) * 100).toFixed(2) + "%" }}</td>
168 168
         <td width="10%">10%缺口资金</td>
169
-        <td width="10%">{{ }}</td>
169
+        <td width="10%"></td>
170 170
         <td width="10%">实付金额</td>
171
-        <td width="10%">{{ }}</td>
171
+        <td width="10%">{{info.psn_cash_pay}}</td>
172 172
       </tr>
173 173
     </table>
174 174
     <!-- <div style="margin: 10px 0;">医疗机构名称:
@@ -188,7 +188,7 @@
188 188
         <span v-if="info.insutype == '510'">生育保险</span>
189 189
       </div>
190 190
     </div>
191
-  
191
+
192 192
     <table class="statementTable" border="1" style="text-align: left;">
193 193
       <tr>
194 194
         <td>患者姓名:{{info.patient.name}}</td>
@@ -293,7 +293,7 @@
293 293
       <div style="flex: 1;">结算人:{{  }} </div>
294 294
       <div style="flex: 1;">打印日期:{{getNowTime()}}</div>
295 295
       <div style="flex: 1;">参保人签字:</div>
296
-    </div> 
296
+    </div>
297 297
   </div>
298 298
 </template>
299 299
 <script>

+ 3 - 1
src/xt_pages/outpatientCharges/statementTemplate/privateChargePrint.vue View File

@@ -9,7 +9,9 @@
9 9
     <div class="statementTitle" v-if="this.$store.getters.xt_user.org_id == 10694">江西省社会医疗保险医疗费用结算单</div>
10 10
     <div class="statementTitle" v-if="this.$store.getters.xt_user.org_id == 10489">湖北省社会医疗保险医疗费用结算单</div>
11 11
     <div class="statementTitle" v-if="this.$store.getters.xt_user.org_id == 10731">医疗费用结算单</div>
12
-    <div class="statementTitle" v-if="this.$store.getters.xt_user.org_id == 10635 || this.$store.getters.xt_user.org_id == 0">江西省社会医疗保险医疗费用结算单</div>
12
+    <div class="statementTitle" v-if="this.$store.getters.xt_user.org_id == 10635 ">江西省社会医疗保险医疗费用结算单</div>
13
+    <div class="statementTitle" v-if="this.$store.getters.xt_user.org_id == 10387 || this.$store.getters.xt_user.org_id == 0">湖南省社会医疗保险医疗费用结算单</div>
14
+
13 15
 
14 16
     <div class="statementTitle" v-if="this.$store.getters.xt_user.org_id != 10489 && this.$store.getters.xt_user.org_id != 10515 &&
15 17
                   this.$store.getters.xt_user.org_id != 10375 && this.$store.getters.xt_user.org_id != 10188 &&

+ 45 - 2
src/xt_pages/outpatientCharges/summary.vue View File

@@ -63,6 +63,11 @@
63 63
             size="small" type="primary" @click="batch_print_settlte">批量打印结算单
64 64
           </el-button>
65 65
           <el-button size="small" type="primary" @click="list_click">批量打印费用清单</el-button>
66
+
67
+          <el-button
68
+            v-if="$store.getters.xt_user.org_id == 10644"
69
+            size="small" type="primary" @click="batch_print_settle_10644">批量打印结算单
70
+          </el-button>
66 71
           <el-button size="small" type="primary" @click="export_detail"
67 72
           >报表下载
68 73
           </el-button>
@@ -72,7 +77,7 @@
72 77
           <el-button v-if="$store.getters.xt_user.org_id == 10318" size="small"
73 78
                      type="primary" @click="export_detail_ten_two">报表下载3
74 79
           </el-button>
75
-          
80
+
76 81
         </div>
77 82
       </div>
78 83
 
@@ -501,6 +506,22 @@
501 506
       ></settlement-print>
502 507
     </el-dialog>
503 508
 
509
+    <el-dialog
510
+      class="centerDialog"
511
+      width="1200px"
512
+      title="打印"
513
+      :visible.sync="batchStatementVisible_two"
514
+    >
515
+<!--      <hospital-batch-statement-print-->
516
+<!--        ref="hospital_batch_print" :paramsObj="batchParams"-->
517
+<!--      >-->
518
+<!--      </hospital-batch-statement-print>-->
519
+      <hospital-batch-statement-print
520
+        ref="hospital_batch_print" :paramsObj="batchParams"
521
+      >
522
+      </hospital-batch-statement-print>
523
+    </el-dialog>
524
+
504 525
     <el-dialog
505 526
       class="centerDialog"
506 527
       width="1200px"
@@ -667,11 +688,13 @@ import StatementListPrint from './statementListPrint'
667 688
 import { getDialysisRecordInitData } from '@/api/dialysis_record'
668 689
 import BatchStatementPrint from './batchStatementPrint'
669 690
 import { exportMdtrtCertType } from '../../api/his/his_tools'
691
+import HospitalBatchStatementPrint from "../hospitalStation/hospitalBatchStatementPrint.vue";
670 692
 
671 693
 const moment = require('moment')
672 694
 export default {
673 695
   name: 'OutpatientChargesSummary',
674 696
   components: {
697
+    HospitalBatchStatementPrint,
675 698
     BatchStatementPrint,
676 699
     StatementListPrint,
677 700
     NewStatementPrintTwo,
@@ -684,6 +707,7 @@ export default {
684 707
   },
685 708
   data() {
686 709
     return {
710
+      batchParams:{},
687 711
       staff:"",
688 712
       admins:[],
689 713
       orderObj: {},
@@ -700,6 +724,7 @@ export default {
700 724
       statementListVisible: false,
701 725
       statementVisible: false,
702 726
       batchStatementVisible: false,
727
+      batchStatementVisible_two:false,
703 728
       statementVisible9504: false,
704 729
       orderObj9504: {},
705 730
       crumbs: [
@@ -3328,6 +3353,23 @@ export default {
3328 3353
         }
3329 3354
       }
3330 3355
       return res
3356
+    },batch_print_settle_10644(){
3357
+      if (this.selecting_schs.length === 0) {
3358
+        this.$message.error('请至少选择一条需要打印的内容')
3359
+        return false
3360
+      } else {
3361
+        var sch_ids = []
3362
+        for (let index = 0; index < this.selecting_schs.length; index++) {
3363
+          sch_ids.push(this.selecting_schs[index].id)
3364
+        }
3365
+        this.batchStatementVisible_two = true;
3366
+        let params = {
3367
+          order_ids: sch_ids.join(","),
3368
+          admin_user_id: this.$store.getters.xt_user.user.id,
3369
+        };
3370
+        this.batchParams = params
3371
+
3372
+      }
3331 3373
     },
3332 3374
     batch_print_settlte() {
3333 3375
       if (this.selecting_schs.length === 0) {
@@ -3468,6 +3510,7 @@ export default {
3468 3510
             // console.log(order.setl_detail)
3469 3511
             // if (order.setl_detail && order.setl_detail.length > 0) {
3470 3512
             //   var jsonObj = JSON.parse(order.setl_detail)
3513
+            //   var jsonObj = JSON.parse(order.setl_detail)
3471 3514
             //   if (jsonObj != null) {
3472 3515
             //     for (let i = 0; i < jsonObj.length; i++) {
3473 3516
             //       if (order.insutype == '310') {
@@ -4215,7 +4258,7 @@ export default {
4215 4258
       this.$router.push({path:'/listTemplate/batch_listPrint',query:{list_id:list_id}})
4216 4259
       // list_batch(list_id).then(res =>{
4217 4260
       //   console.log('res',res);
4218
-        
4261
+
4219 4262
       // })
4220 4263
     }
4221 4264
   },

+ 610 - 0
src/xt_pages/outpatientTool/components/personSettle.vue View File

@@ -0,0 +1,610 @@
1
+<template>
2
+  <div>
3
+    <div style="display: flex;justify-content: space-between;margin-bottom:10px;">
4
+      <div>
5
+
6
+        <el-input size="small" style="width:150px;" v-model="keywords" @input="searchAction"
7
+                  @keyup.enter.native='searchAction'
8
+                  placeholder="请输入患者姓名"
9
+
10
+                  class="filter-item"/>
11
+        <el-select size="small" v-model="item_type" placeholder="请选择"
12
+                   style="width:150px;margin-left:10px;" @change="changeItem">
13
+          <el-option
14
+            label="全部"
15
+            value="0">
16
+          </el-option>
17
+          <el-option
18
+            v-for="item,index in items"
19
+            :key="index"
20
+            :label="item.name"
21
+            :value="item.id">
22
+          </el-option>
23
+        </el-select>
24
+        <el-date-picker
25
+          v-model="chargeDate"
26
+          type="daterange"
27
+          value-format="yyyy-MM-dd"
28
+          range-separator="至"
29
+          start-placeholder="开始日期"
30
+          @change="changeDate"
31
+          end-placeholder="结束日期">
32
+        </el-date-picker>
33
+        <!--<el-radio v-model="radio" label="1">明细</el-radio>-->
34
+        <!--<el-radio v-model="radio" label="2">汇总</el-radio>-->
35
+      </div>
36
+      <div>
37
+        <!-- <el-popover
38
+          placement="bottom"
39
+          width="210"
40
+          trigger="click">
41
+          <el-button size="small" ref="button_two" @click="open(1)">打印清单</el-button>
42
+          <el-button size="small" ref="button_six" @click="open(2)">打印汇总</el-button>
43
+          <el-button slot="reference" style="margin:0 10px;" type="primary" size="small">打印</el-button>
44
+
45
+        </el-popover> -->
46
+        <el-button size="small" type="primary" @click="export_detail">报表下载</el-button>
47
+      </div>
48
+    </div>
49
+    <el-table :data="tableData" border :row-style="{ color: '#303133' }"
50
+              :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
51
+
52
+              v-loading="settle_loading"
53
+              max-height="600"
54
+              :summary-method="getTotal"
55
+              highlight-current-row>
56
+
57
+      <el-table-column align="center" label="患者名字" fixed>
58
+        <template slot-scope="scope">{{ scope.row.name }}</template>
59
+      </el-table-column>
60
+      <el-table-column align="center" prop="item_name" label="身份证">
61
+        <template slot-scope="scope">
62
+          {{scope.row.id_card_no}}
63
+        </template>
64
+      </el-table-column>
65
+
66
+
67
+      <el-table-column align="center"  label="透析次数">
68
+        <template slot-scope="scope">
69
+          {{scope.row.dis.length}}
70
+
71
+        </template>
72
+      </el-table-column>
73
+
74
+      <el-table-column align="center"  label="结算次数">
75
+        <template slot-scope="scope">
76
+          {{scope.row.orders.length}}
77
+        </template>
78
+      </el-table-column>
79
+
80
+      <el-table-column align="center" prop="medfee_sumamt" label="医疗费总额">
81
+        <template slot-scope="scope">{{GetMedfeeSumam(scope.row)}}</template>
82
+      </el-table-column>
83
+      <el-table-column align="center" prop="fund_pay_sumamt" label="基金支付金额">
84
+        <template slot-scope="scope">{{GetFundPaySumamt(scope.row)}}</template>
85
+      </el-table-column>
86
+      <el-table-column align="center" prop="acct_pay" label="个人账户支付金额">
87
+        <template slot-scope="scope">{{GetAcctPay(scope.row)}}</template>
88
+      </el-table-column>
89
+      <el-table-column align="center" prop="psn_cash_pay" label="个人支付金额">
90
+        <template slot-scope="scope">{{GetPsnCashPay(scope.row)}}</template>
91
+      </el-table-column>
92
+      <el-table-column align="center" prop="hifp_pay" label="基金统筹金额">
93
+        <template slot-scope="scope">{{GetHifpPay(scope.row)}}</template>
94
+      </el-table-column>
95
+
96
+      <el-table-column align="center" prop="hifob_pay" label="大额基金支付">
97
+        <template slot-scope="scope">{{GetHiFobPay(scope.row)}}</template>
98
+      </el-table-column>
99
+      <el-table-column align="center" prop="preselfpay_amt" label="先行自付金额">
100
+        <template slot-scope="scope">{{GetPreselfpaAmt(scope.row)}}</template>
101
+      </el-table-column>
102
+      <el-table-column align="center" prop="overlmt_self_pay" label="超限价金额">
103
+        <template slot-scope="scope">{{GetOverlmtSelfPay(scope.row)}}</template>
104
+      </el-table-column>
105
+      <el-table-column align="center" prop="fulamt_ownpay_amt" label="全自费金额">
106
+        <template slot-scope="scope">{{GetFulamtOwnpayAmt(scope.row)}}</template>
107
+      </el-table-column>
108
+      <el-table-column align="center" prop="inscp_scp_amt" label="符合政策范围金额">
109
+        <template slot-scope="scope">{{GetInscpScpAmt(scope.row)}}</template>
110
+      </el-table-column>
111
+
112
+      <el-table-column align="center" prop="maf_pay" label="医疗救助基金">
113
+        <template slot-scope="scope">{{GetMafPay(scope.row)}}</template>
114
+      </el-table-column>
115
+      <el-table-column align="center" prop="hifes_pay" label="企业补充医疗保险基金支出">
116
+        <template slot-scope="scope">{{GetHifesPay(scope.row)}}</template>
117
+      </el-table-column>
118
+      <el-table-column align="center" prop="hifmi_pay" label="居民大病保险资金支出">
119
+        <template slot-scope="scope">{{GetHifmiPay(scope.row)}}</template>
120
+      </el-table-column>
121
+      <el-table-column align="center" prop="oth_pay" label="其他支付">
122
+        <template slot-scope="scope">{{GetOthPay(scope.row)}}</template>
123
+      </el-table-column>
124
+      <el-table-column align="center" prop="cvlserv_pay" label="公务员医疗补助资金支出">
125
+        <template slot-scope="scope">{{GetCvlservPay(scope.row)}}</template>
126
+      </el-table-column>
127
+
128
+
129
+    </el-table>
130
+
131
+  </div>
132
+</template>
133
+
134
+
135
+<script>
136
+import BreadCrumb from '@/xt_pages/components/bread-crumb'
137
+import { GetSummarySettle,changeOrderDesc } from '@/api/his/his'
138
+import { uParseTime } from '@/utils/tools'
139
+// import NewStatementPrint from './newStatementPrint'
140
+const moment = require('moment')
141
+export default {
142
+  components: {
143
+    BreadCrumb
144
+
145
+  },
146
+  data() {
147
+    return {
148
+      settle_loading:false,
149
+      crumbs: [],
150
+      tempArr: [],
151
+      sameRowArr: [],
152
+      modeOptions:this.$store.getters.treatment_mode,
153
+      tableData: [],
154
+      config:{},
155
+      sick:{},
156
+      chargeDate: [moment(new Date()).add('year', 0).format('YYYY-MM-DD'), moment(new Date()).add('year', 0).format('YYYY-MM-DD')],
157
+      item_type: '0',
158
+      items: [
159
+        { id: 2, name: '自费' },
160
+        { id: 5, name: '城乡居民基本医疗保险' },
161
+        { id: 6, name: '职工基本医疗保险' }
162
+      ]
163
+
164
+    }
165
+  },
166
+  methods: {
167
+    GetMedfeeSumam(row){
168
+      let medfee = 0
169
+      for(let i = 0; i < row.orders.length; i++){
170
+        medfee = medfee + row.orders[i].medfee_sumamt
171
+      }
172
+      return medfee.toFixed(2)
173
+
174
+    }, GetFundPaySumamt(row){
175
+      let medfee = 0
176
+      for(let i = 0; i < row.orders.length; i++){
177
+        medfee = medfee + row.orders[i].fund_pay_sumamt
178
+      }
179
+      return medfee.toFixed(2)
180
+
181
+    },GetAcctPay(row){
182
+      let medfee = 0
183
+      for(let i = 0; i < row.orders.length; i++){
184
+        medfee = medfee + row.orders[i].acct_pay
185
+      }
186
+      return medfee.toFixed(2)
187
+
188
+    },GetPsnCashPay(row){
189
+      let medfee = 0
190
+      for(let i = 0; i < row.orders.length; i++){
191
+        medfee = medfee + row.orders[i].psn_cash_pay
192
+      }
193
+      return medfee.toFixed(2)
194
+
195
+    },GetHifpPay(row){
196
+      let medfee = 0
197
+      for(let i = 0; i < row.orders.length; i++){
198
+        medfee = medfee + row.orders[i].hifp_pay
199
+      }
200
+      return medfee.toFixed(2)
201
+
202
+    },GetHiFobPay(row){
203
+      let medfee = 0
204
+      for(let i = 0; i < row.orders.length; i++){
205
+        medfee = medfee + row.orders[i].hifob_pay
206
+      }
207
+      return medfee.toFixed(2)
208
+
209
+    },GetPreselfpaAmt(row){
210
+      let medfee = 0
211
+      for(let i = 0; i < row.orders.length; i++){
212
+        medfee = medfee + row.orders[i].preselfpay_amt
213
+      }
214
+      return medfee.toFixed(2)
215
+
216
+    },GetOverlmtSelfPay(row){
217
+      let medfee = 0
218
+      for(let i = 0; i < row.orders.length; i++){
219
+        medfee = medfee + row.orders[i].overlmt_self_pay
220
+      }
221
+      return medfee.toFixed(2)
222
+    },GetFulamtOwnpayAmt(row){
223
+      let medfee = 0
224
+      for(let i = 0; i < row.orders.length; i++){
225
+        medfee = medfee + row.orders[i].fulamt_ownpay_amt
226
+      }
227
+      return medfee.toFixed(2)
228
+
229
+    },GetMafPay(row){
230
+      let medfee = 0
231
+      for(let i = 0; i < row.orders.length; i++){
232
+        medfee = medfee + row.orders[i].maf_pay
233
+      }
234
+      return medfee.toFixed(2)
235
+
236
+    },GetHifesPay(row){
237
+      let medfee = 0
238
+      for(let i = 0; i < row.orders.length; i++){
239
+        medfee = medfee + row.orders[i].hifes_pay
240
+      }
241
+      return medfee.toFixed(2)
242
+
243
+    },GetHifmiPay(row){
244
+
245
+      let medfee = 0
246
+      for(let i = 0; i < row.orders.length; i++){
247
+        medfee = medfee + row.orders[i].hifmi_pay
248
+      }
249
+      return medfee.toFixed(2)
250
+    },GetInscpScpAmt(row){
251
+
252
+      let medfee = 0
253
+      for(let i = 0; i < row.orders.length; i++){
254
+        medfee = medfee + row.orders[i].inscp_scp_amt
255
+      }
256
+      return medfee.toFixed(2)
257
+
258
+    },GetOthPay(row){
259
+      let medfee = 0
260
+      for(let i = 0; i < row.orders.length; i++){
261
+        medfee = medfee + row.orders[i].oth_pay
262
+      }
263
+      return medfee.toFixed(2)
264
+
265
+    },GetCvlservPay(row){
266
+      let medfee = 0
267
+      for(let i = 0; i < row.orders.length; i++){
268
+        medfee = medfee + row.orders[i].cvlserv_pay
269
+      }
270
+      return medfee.toFixed(2)
271
+    },
272
+    change(id,desc,type){
273
+      let params = {
274
+        id: id,
275
+        desc: desc,
276
+        change_type: type
277
+      }
278
+      changeOrderDesc(params).then(response => {
279
+        if (response.data.state == 0) {
280
+          this.$message.error(response.data.msg)
281
+        } else {
282
+          this.$message.success(response.data.data.msg)
283
+        }
284
+      })
285
+    },
286
+    getTimes(time) {
287
+      return uParseTime(time, '{y}-{m}-{d}')
288
+    },
289
+    objectSpanMethod({ row, column, rowIndex, columnIndex }) {
290
+      if (columnIndex === 0) {
291
+        if (rowIndex % 2 === 0) {
292
+          return {
293
+            rowspan: 2,
294
+            colspan: 1
295
+          }
296
+        } else {
297
+          return {
298
+            rowspan: 0,
299
+            colspan: 0
300
+          }
301
+        }
302
+      }
303
+    },
304
+    unique(arr) {
305
+      const res = new Map()
306
+      return arr.filter((arr) => !res.has(arr.id) && res.set(arr.id, 1))
307
+    },getSickName(sick_id){
308
+      let name = ""
309
+      for(let i = 0;i < this.sick.length;i++){
310
+        if(sick_id == this.sick[i].id){
311
+          name = this.sick[i].class_name + "(" + this.sick[i].content_code +")"
312
+        }
313
+      }
314
+      return name
315
+    },getTypeName(row){
316
+      let name = ""
317
+      if(row.insutype == '390'){
318
+        // let a =  config.mdtrtarea_admvs.slice(0, 4); //就医地前4位编码
319
+        let a =  this.config.mdtrtarea_admvs.slice(0, 3); //就医地前3位编码
320
+
321
+
322
+        // let aa=  row.his.insuplc_admdvs.slice(0, 4); //参保地前4位编码
323
+        let b=  row.his.insuplc_admdvs.slice(0, 3); //参保地前3位编码
324
+        if(a == b){
325
+          name = "本地城乡"
326
+        }else{
327
+          name = "异地城乡"
328
+        }
329
+
330
+      }else if(row.insutype == '310'){
331
+        // let c =  config.mdtrtarea_admvs.slice(0, 4); //就医地前4位编码
332
+        let a = this.config.mdtrtarea_admvs.slice(0, 3); //就医地前3位编码
333
+
334
+
335
+        // let d=  row.his.insuplc_admdvs.slice(0, 4); //参保地前4位编码
336
+        let b=  row.his.insuplc_admdvs.slice(0, 3); //参保地前3位编码
337
+        if(a == b){
338
+
339
+          name = "本地职工"
340
+        }else{
341
+          name = "异地职工"
342
+        }
343
+
344
+      }else{
345
+        name = "其他"
346
+
347
+      }
348
+      return name
349
+    },getName(id){
350
+      var name = ""
351
+      var options =  this.$store.getters.insuplc_admdvs
352
+      for(let i = 0; i < options.length; i++){
353
+        if(id == options[i].value){
354
+          name = options[i].label
355
+        }
356
+      }
357
+      return name
358
+    },
359
+    changeDate() {
360
+      this.getSummarySettleList()
361
+    },
362
+    changeItem() {
363
+      this.getSummarySettleList()
364
+
365
+    },
366
+    searchAction() {
367
+      this.item_type = '0'
368
+      this.getSummarySettleList()
369
+
370
+    },
371
+    getSummarySettleList() {
372
+      let start_time = this.chargeDate[0]
373
+      let end_time = this.chargeDate[1]
374
+      let params = {
375
+        start_time: start_time,
376
+        end_time: end_time,
377
+        type: this.item_type,
378
+        keyword: this.keywords,
379
+        s_type:2,
380
+      }
381
+      this.settle_loading = true
382
+      GetSummarySettle(params).then(response => {
383
+        if (response.data.state == 0) {
384
+          this.settle_loading = false
385
+
386
+          this.$message.error(response.data.msg)
387
+          return false
388
+        } else {
389
+          this.settle_loading = false
390
+          this.tableData = []
391
+          this.config = response.data.data.config
392
+          this.sick = response.data.data.sick
393
+          let data = response.data.data.patients
394
+          this.tableData = data
395
+          console.log( this.tableData)
396
+
397
+        }
398
+      })
399
+    }, uniqueProjectAndAdvice(array) {
400
+      // res用来存储结果
401
+      var res = []
402
+      for (var i = 0, arrayLen = array.length; i < arrayLen; i++) {
403
+        for (var j = 0, resLen = res.length; j < resLen; j++) {
404
+          if (array[i].item_id === res[j].item_id && array[i].price === res[j].price) {
405
+            break
406
+          }
407
+        }
408
+        // 如果array[i]是唯一的,那么执行完循环,j等于resLen
409
+        if (j === resLen) {
410
+          res.push(array[i])
411
+        }
412
+      }
413
+      return res
414
+    }, sort(arr) {
415
+      for (var i = 0; i < arr.length - 1; i++) {
416
+        for (var j = 0; j < arr.length - i - 1; j++) {
417
+          if (arr[j].patient_id > arr[j + 1].patient_id) {// 相邻元素两两对比
418
+            var hand = arr[j]
419
+            arr[j] = arr[j + 1]
420
+            arr[j + 1] = hand
421
+
422
+          }
423
+        }
424
+      }
425
+      return arr
426
+    }, handleSpanTempArr() {
427
+      this.tempArr = []
428
+
429
+      for (let i = 0; i < this.tableData.length; i++) {
430
+        if (i === 0) {
431
+          this.tempArr.push(1)
432
+          this.pos = 0
433
+        } else {
434
+          // 判断当前元素与上一个元素是否相同
435
+          if (this.tableData[i].patient_id === this.tableData[i - 1].patient_id) {
436
+            this.tempArr[this.pos] += 1
437
+            this.tempArr.push(0)
438
+          } else {
439
+            this.tempArr.push(1)
440
+            this.pos = i
441
+          }
442
+        }
443
+      }
444
+
445
+      let sameRowArr = [], sIdx = 0
446
+      this.tableData.forEach((item, index) => {
447
+        item.index = index
448
+        if (index === 0) {
449
+          sameRowArr.push([index])
450
+        } else {
451
+          if (item.patient_id === this.tableData[index - 1].patient_id) {
452
+            sameRowArr[sIdx].push(index)
453
+          } else {
454
+            sIdx = sIdx + 1
455
+            sameRowArr.push([index])
456
+          }
457
+        }
458
+      })
459
+      this.sameRowArr = sameRowArr
460
+    }, merge({ row, column, rowIndex, columnIndex }) {
461
+      if (columnIndex === 0 || columnIndex === 1) {
462
+        const _row = this.tempArr[rowIndex]
463
+        const _col = _row > 0 ? 1 : 0
464
+        return {
465
+          rowspan: _row,
466
+          colspan: _col
467
+        }
468
+      }
469
+    },
470
+    getTotal(param) {
471
+      const { columns, data } = param
472
+      const sums = []
473
+      columns.forEach((column, index) => {
474
+        if (index === 0) {
475
+          sums[index] = '合计'
476
+          return
477
+        }
478
+        const values = data.map(item => Number(item[column.property]))
479
+        if (column.property === 'total' || column.property === 'medfee_sumamt'  || column.property === 'fund_pay_sumamt'  ||
480
+          column.property === 'acct_pay'  || column.property === 'maf_pay'  || column.property === 'psn_cash_pay'  ||
481
+          column.property === 'hifp_pay'  || column.property === 'hifob_pay' ||  column.property === 'hifes_pay' ||
482
+          column.property === 'hifmi_pay' || column.property === 'oth_pay' || column.property === 'cvlserv_pay' ||
483
+          column.property === 'wechat_pay' || column.property === 'ali_pay' || column.property === 'band_card_pay' ||
484
+          column.property === 'jifen_pay' || column.property === 'cash_pay' || column.property ==='card_desc'
485
+        ) {
486
+          sums[index] = values.reduce((prev, curr) => {
487
+            const value = Number(curr)
488
+            if (!isNaN(value)) {
489
+              return prev + curr
490
+            } else {
491
+              return prev
492
+            }
493
+          }, 0)
494
+          sums[index] = sums[index].toFixed(2)
495
+        } else {
496
+          sums[index] = ''
497
+        }
498
+      })
499
+
500
+      return sums
501
+    },
502
+    export_detail() {
503
+
504
+      let list = []
505
+      // for (let i = 0; i < this.tableData.length; i++) {
506
+      //   let order = this.tableData[i]
507
+      //   let name = order.other_name
508
+      //   let id_card_no = order.id_card_no
509
+      //
510
+      //   let time = ''
511
+      //   let balance_accounts = ""
512
+      //   let med_type = ""
513
+      //   let medfee_sumamt = ""
514
+      //   let fund_pay_sumamt = ""
515
+      //   let acct_pay = ""
516
+      //   let psn_cash_pay = ""
517
+      //   let hifes_pay = ""
518
+      //   let hifmi_pay = ""
519
+      //   let hifp_pay = ""
520
+      //   let hifob_pay = ""
521
+      //   let maf_pay = ""
522
+      //   let time2 = ""
523
+      //   time2 = this.getTimes(order.settle_accounts_date)
524
+      //
525
+      //   let total = ""
526
+      //
527
+      //   if(order.setl_time.length == 0){
528
+      //
529
+      //     time = this.getTimes(order.settle_accounts_date)
530
+      //
531
+      //   }else {
532
+      //
533
+      //     time = order.setl_time.split(" ")[0]
534
+      //
535
+      //   }
536
+      //
537
+      //   if (order.is_medicine_insurance == 0) {
538
+      //     balance_accounts = '自费'
539
+      //   }
540
+      //
541
+      //   if (order.is_medicine_insurance == 1) {
542
+      //     balance_accounts = '医保'
543
+      //   }
544
+      //
545
+      //   if (order.med_type == '14') {
546
+      //     med_type = '门诊特殊病'
547
+      //   }
548
+      //
549
+      //   if (order.med_type == '11') {
550
+      //     med_type = '普通门诊'
551
+      //   }
552
+      //
553
+      //   medfee_sumamt = order.medfee_sumamt
554
+      //   fund_pay_sumamt = order.fund_pay_sumamt
555
+      //
556
+      //   acct_pay = order.acct_pay
557
+      //
558
+      //   psn_cash_pay = order.psn_cash_pay
559
+      //   hifes_pay = order.hifes_pay
560
+      //   hifmi_pay = order.hifmi_pay
561
+      //   hifp_pay = order.hifp_pay
562
+      //   hifob_pay = order.hifob_pay
563
+      //   maf_pay = order.maf_pay
564
+      //   total = order.total
565
+      //
566
+      //
567
+      //   let obj = {
568
+      //     '患者姓名': name,
569
+      //     '身份证': id_card_no,
570
+      //     '治疗日期': time2,
571
+      //     '结算日期': time,
572
+      //     '结算类型': balance_accounts,
573
+      //     '处方类型': med_type,
574
+      //     '医疗费总额': medfee_sumamt,
575
+      //     '基金支付金额': fund_pay_sumamt,
576
+      //     '基金统筹金额': hifp_pay,
577
+      //     '大额基金支付':hifob_pay,
578
+      //     '医疗救助基金':maf_pay,
579
+      //     '个人账户支付金额': acct_pay,
580
+      //     '个人支付基金': psn_cash_pay,
581
+      //     '企业补充医疗保险基金支出': hifes_pay,
582
+      //     '居民大病保险资金支出': hifmi_pay,
583
+      //     '费用总额':total,
584
+      //
585
+      //   }
586
+      //   list.push(obj)
587
+      // }
588
+      import('@/vendor/Export2Excel').then(excel => {
589
+        const tHeader = [ '患者姓名','身份证', '治疗日期','结算日期', '结算类型', '处方类型', '医疗费总额', '基金支付金额', '个人账户支付金额', '个人支付基金','企业补充医疗保险基金支出','居民大病保险资金支出', '费用总额']
590
+        const filterVal = [ '患者姓名','身份证', '治疗日期','结算日期', '结算类型', '处方类型', '医疗费总额', '基金支付金额', '个人账户支付金额', '个人支付基金','企业补充医疗保险基金支出','居民大病保险资金支出',  '费用总额']
591
+        const data = this.formatJson(filterVal, list)
592
+        excel.export_json_to_excel1({
593
+          header: tHeader,
594
+          data,
595
+          filename: '结算明细',
596
+          ref:this.$refs['report-table'].$el
597
+        })
598
+      })
599
+
600
+    }, formatJson(filterVal, jsonData) {
601
+      return jsonData.map(v => filterVal.map(j => v[j]))
602
+    }
603
+  },
604
+  created() {
605
+    this.getSummarySettleList()
606
+
607
+
608
+  }
609
+}
610
+</script>

+ 11 - 7
src/xt_pages/outpatientTool/components/print9919.vue View File

@@ -2,7 +2,7 @@
2 2
   <div id="statement-print" class="statement-print">
3 3
     <div class="statementTitle" v-if="this.$store.getters.xt_user.org.id != 10480 && this.$store.getters.xt_user.org.id != 10387">广东省社会医疗保险医疗费用结算单</div>
4 4
     <div class="statementTitle" v-if="this.$store.getters.xt_user.org.id == 10387">湖南省社会医疗保险医疗费用结算单</div>
5
-    <div class="statementTitle" v-else>安徽省社会医疗保险医疗费用结算单</div>
5
+    <div class="statementTitle" v-if="this.$store.getters.xt_user.org.id == 10480">安徽省社会医疗保险医疗费用结算单</div>
6 6
     <table class="statementTable" border="1" style="border-collapse: collapse;">
7 7
       <tr>
8 8
         <td width="80">机构名称</td>
@@ -121,14 +121,18 @@
121 121
         <td colspan="2" v-if="info.insutype == '392'">城乡居民大病医疗保险</td>
122 122
         <td colspan="2" v-if="info.insutype == '510'">生育保险</td>
123 123
 
124
-        <td v-if="this.$store.getters.xt_user.org_id != 10188 && this.$store.getters.xt_user.org_id != 10217">入院第一诊断</td>
124
+        <td v-if="this.$store.getters.xt_user.org_id != 10188 && this.$store.getters.xt_user.org_id != 10217 && this.$store.getters.xt_user.org_id != 10387">入院第一诊断</td>
125 125
         <td v-else>病种名称</td>
126
-        <td v-if="this.$store.getters.xt_user.org_id != 10188 && this.$store.getters.xt_user.org_id != 10217" colspan="3">{{info.dise_name}}</td>
127
-        <td v-else colspan="3">{{'慢性肾功能衰竭'}}</td>
128
-        <td v-if="this.$store.getters.xt_user.org_id != 10188 && this.$store.getters.xt_user.org_id != 10217">出院第一诊断</td>
126
+        <td v-if="this.$store.getters.xt_user.org_id != 10188 && this.$store.getters.xt_user.org_id != 10217 && this.$store.getters.xt_user.org_id != 10387" colspan="3">{{info.dise_name}}</td>
127
+        <td v-else-if="this.$store.getters.xt_user.org_id == 10188 || this.$store.getters.xt_user.org_id == 10217" colspan="3">{{'慢性肾功能衰竭'}}</td>
128
+        <td v-else-if="this.$store.getters.xt_user.org_id == 10387" colspan="3">{{'慢性肾功能衰竭'}}</td>
129
+
130
+        <td v-if="this.$store.getters.xt_user.org_id != 10188 && this.$store.getters.xt_user.org_id != 10217 && this.$store.getters.xt_user.org_id != 10387">出院第一诊断</td>
129 131
         <td v-else>病种编码</td>
130
-        <td v-if="this.$store.getters.xt_user.org_id != 10188 && this.$store.getters.xt_user.org_id != 10217" colspan="6">{{info.dise_name}}</td>
131
-        <td v-else colspan="6">{{'M07800'}}</td>
132
+        <td v-if="this.$store.getters.xt_user.org_id != 10188 && this.$store.getters.xt_user.org_id != 10217 && this.$store.getters.xt_user.org_id != 10387" colspan="6">{{info.dise_name}}</td>
133
+        <td v-else-if="this.$store.getters.xt_user.org_id == 10188 || this.$store.getters.xt_user.org_id == 10217" colspan="6">{{'M07800'}}</td>
134
+        <td v-else-if="this.$store.getters.xt_user.org_id == 10387" colspan="6">{{'M07801'}}</td>
135
+
132 136
       </tr>
133 137
       <tr>
134 138
         <td>业务类别</td>

+ 306 - 280
src/xt_pages/outpatientTool/components/settle.vue View File

@@ -46,16 +46,16 @@
46 46
                 <el-button slot="reference" style="margin:0 10px;" type="primary" size="small">打印</el-button>
47 47
 
48 48
               </el-popover> -->
49
-              <el-button size="small" type="primary" @click="export_detail">报表下载</el-button>
49
+              <el-button size="small" type="primary" @click="dialogVisible = true">报表下载</el-button>
50 50
           </div>
51 51
       </div>
52 52
       <el-table :data="tableData" border :row-style="{ color: '#303133' }"
53 53
                 :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
54
-                show-summary
54
+
55 55
                 v-loading="settle_loading"
56 56
                 max-height="600"
57 57
                 :span-method="merge"
58
-                :summary-method="getTotal"
58
+
59 59
                 highlight-current-row>
60 60
 
61 61
           <el-table-column align="center" prop="name" label="患者名字" fixed>
@@ -121,7 +121,16 @@
121 121
                   <div v-if="scope.row.med_type == '992102'">单病种(992102)</div>
122 122
               </template>
123 123
           </el-table-column>
124
-          <el-table-column align="center" prop="medfee_sumamt" label="医疗费总额">
124
+
125
+
126
+<!--        <el-table-column align="center" prop="item_name" label="透析模式">-->
127
+<!--          <template slot-scope="scope">-->
128
+<!--            <div v-if="scope.row.sch.id == 0">未排版</div>-->
129
+<!--            <div v-if="scope.row.sch.id > 0">{{modeOptions[scope.row.sch.mode_id].name}}</div>-->
130
+<!--          </template>-->
131
+<!--        </el-table-column>-->
132
+
133
+        <el-table-column align="center" prop="medfee_sumamt" label="医疗费总额">
125 134
               <template slot-scope="scope">{{scope.row.medfee_sumamt.toFixed(2)}}</template>
126 135
           </el-table-column>
127 136
           <el-table-column align="center" prop="fund_pay_sumamt" label="基金支付金额">
@@ -257,193 +266,36 @@
257 266
 
258 267
       </el-table>
259 268
 
260
-    <el-table ref="report-table" :data="tableData" v-show="false" border :row-style="{ color: '#303133' }"
261
-              :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
262
-              show-summary
263
-              v-loading="settle_loading"
264
-              max-height="600"
265
-              :span-method="merge"
266
-              :summary-method="getTotal"
267
-              highlight-current-row>
268
-
269
-      <el-table-column align="center" prop="name" label="患者名字">
270
-        <template slot-scope="scope">{{ scope.row.other_name }}</template>
271
-      </el-table-column>
272
-      <el-table-column align="center" prop="item_name" label="身份证">
273
-        <template slot-scope="scope">
274
-          {{scope.row.id_card_no}}
275
-        </template>
276
-      </el-table-column>
277
-      <el-table-column align="center" prop="item_name" label="就诊号">
278
-        <template slot-scope="scope">
279
-          {{scope.row.mdtrt_id}}
280
-        </template>
281
-      </el-table-column>
282
-      <el-table-column align="center" prop="item_name" label="治疗日期">
283
-        <template slot-scope="scope">
284
-          {{getTimes(scope.row.settle_accounts_date)}}
285
-        </template>
286
-      </el-table-column>
287
-
288
-      <el-table-column align="center" prop="item_name" label="结算日期">
289
-        <template slot-scope="scope">
290
-          {{scope.row.setl_time?scope.row.setl_time.split(" ")[0]:getTimes(scope.row.settle_accounts_date)}}
291
-        </template>
292
-      </el-table-column>
293
-      <el-table-column align="center" prop="item_name" label="病种名称">
294
-        <template slot-scope="scope">
295
-          {{getSickName(scope.row.his.sick_type)}}
296
-        </template>
297
-      </el-table-column>
298
-
299
-      <el-table-column align="center" prop="item_name" label="参保地">
300
-        <template slot-scope="scope">
301
-          {{getName(scope.row.his.insuplc_admdvs) + '(' + scope.row.his.insuplc_admdvs +')'}}
302
-        </template>
303
-      </el-table-column>
304
-
305
-      <el-table-column align="center" prop="item_name" label="结算类型">
306
-        <template slot-scope="scope">
307
-          <div v-if="scope.row.is_medicine_insurance == 0">自费</div>
308
-          <div v-if="scope.row.is_medicine_insurance == 1 ">{{getTypeName(scope.row)}}</div>
309
-
310
-        </template>
311
-      </el-table-column>
312
-      <el-table-column align="center" prop="item_name" label="处方类型">
313
-        <template slot-scope="scope">
314
-          <div v-if="scope.row.med_type == '14'">门诊特殊病</div>
315
-          <div v-if="scope.row.med_type == '11'">普通门诊</div>
316
-          <div v-if="scope.row.med_type == '1112'">普通门诊</div>
317
-          <div v-if="scope.row.med_type == '140104'">门诊特殊病(140104)</div>
318
-          <div v-if="scope.row.med_type == '140201'">门诊特病(140201)</div>
319
-          <div v-if="scope.row.med_type == '992102'">单病种(992102)</div>
320
-        </template>
321
-      </el-table-column>
322
-      <el-table-column align="center" prop="medfee_sumamt" label="医疗费总额">
323
-        <template slot-scope="scope">{{scope.row.medfee_sumamt.toFixed(2)}}</template>
324
-      </el-table-column>
325
-      <el-table-column align="center" prop="fund_pay_sumamt" label="基金支付金额">
326
-        <template slot-scope="scope">{{scope.row.fund_pay_sumamt.toFixed(2)}}</template>
327
-      </el-table-column>
328
-      <el-table-column align="center" prop="acct_pay" label="个人账户支付金额">
329
-        <template slot-scope="scope">{{scope.row.acct_pay.toFixed(2)}}</template>
330
-      </el-table-column>
331
-      <el-table-column align="center" prop="psn_cash_pay" label="个人支付金额">
332
-        <template slot-scope="scope">{{scope.row.psn_cash_pay.toFixed(2)}}</template>
333
-      </el-table-column>
334
-      <el-table-column align="center" prop="hifp_pay" label="基金统筹金额">
335
-        <template slot-scope="scope">{{scope.row.hifp_pay.toFixed(2)}}</template>
336
-      </el-table-column>
337
-
338
-      <el-table-column align="center" prop="hifob_pay" label="大额基金支付">
339
-        <template slot-scope="scope">{{scope.row.hifob_pay.toFixed(2)}}</template>
340
-      </el-table-column>
341
-      <el-table-column align="center" prop="preselfpay_amt" label="先行自付金额">
342
-        <template slot-scope="scope">{{scope.row.preselfpay_amt.toFixed(2)}}</template>
343
-      </el-table-column>
344
-
345
-      <el-table-column align="center" prop="overlmt_self_pay" label="超限价金额">
346
-        <template slot-scope="scope">{{scope.row.overlmt_self_pay.toFixed(2)}}</template>
347
-      </el-table-column>
348
-
349
-      <el-table-column align="center" prop="fulamt_ownpay_amt" label="全自费金额">
350
-        <template slot-scope="scope">{{scope.row.fulamt_ownpay_amt.toFixed(2)}}</template>
351
-      </el-table-column>
352
-
353
-      <el-table-column align="center" prop="inscp_scp_amt" label="符合政策范围金额">
354
-        <template slot-scope="scope">{{scope.row.inscp_scp_amt.toFixed(2)}}</template>
355
-      </el-table-column>
356
-
357
-      <el-table-column align="center" prop="maf_pay" label="医疗救助基金">
358
-        <template slot-scope="scope">{{scope.row.maf_pay.toFixed(2)}}</template>
359
-      </el-table-column>
360
-
361
-      <el-table-column align="center" prop="hifes_pay" label="企业补充医疗保险基金支出">
362
-        <template slot-scope="scope">{{scope.row.hifes_pay.toFixed(2)}}</template>
363
-      </el-table-column>
364
-
365
-
366
-      <el-table-column align="center" prop="hifmi_pay" label="居民大病保险资金支出">
367
-        <template slot-scope="scope">{{scope.row.hifmi_pay.toFixed(2)}}</template>
368
-      </el-table-column>
369
-
370
-      <el-table-column align="center" prop="oth_pay" label="其他支付">
371
-        <template slot-scope="scope">{{scope.row.oth_pay.toFixed(2)}}</template>
372
-      </el-table-column>
373
-
374
-      <el-table-column align="center" prop="cvlserv_pay" label="公务员医疗补助资金支出">
375
-        <template slot-scope="scope">{{scope.row.cvlserv_pay.toFixed(2)}}</template>
376
-      </el-table-column>
377
-
378
-
379
-
380
-      <el-table-column align="center" prop="wechat_pay" label="发票号码">
381
-        <template slot-scope="scope">{{scope.row.fa_piao_number}}</template>
382
-      </el-table-column>
383
-
384
-      <el-table-column align="center" prop="wechat_pay" label="发票编号">
385
-        <template slot-scope="scope">{{scope.row.fa_piao_code}}</template>
386
-      </el-table-column>
387
-
388
-
389
-      <el-table-column align="center" prop="wechat_pay" label="微信支付">
390
-        <template slot-scope="scope">{{scope.row.wechat_pay}}</template>
391
-
392
-<!--        <template slot-scope="scope" style="width: 100px">-->
393
-<!--          <el-input v-model="scope.row.wechat_pay" oninput="value=value.replace(/[^0-9.]/g,'')"></el-input>-->
394
-<!--        </template>-->
395
-      </el-table-column>
396
-
397
-      <el-table-column align="center" prop="ali_pay" label="支付宝支付">
398
-                  <template slot-scope="scope">{{scope.row.ali_pay}}</template>
399
-<!--        <template slot-scope="scope" style="width: 100px">-->
400
-<!--          <el-input  v-model="scope.row.ali_pay" oninput="value=value.replace(/[^0-9.]/g,'')"></el-input>-->
401
-<!--        </template>-->
402
-      </el-table-column>
403
-
404
-      <el-table-column align="center" prop="band_card_pay" label="银行卡支付">
405
-                  <template slot-scope="scope">{{scope.row.band_card_pay}}</template>
406
-<!--        <template slot-scope="scope" style="width: 100px">-->
407
-<!--          <el-input v-model="scope.row.band_card_pay" oninput="value=value.replace(/[^0-9.]/g,'')"></el-input>-->
408
-<!--        </template>-->
409
-      </el-table-column>
410
-
411
-      <el-table-column align="center" prop="jifen_pay" label="积分支付">
412
-                  <template slot-scope="scope">{{scope.row.jifen_pay}}</template>
413
-<!--        <template slot-scope="scope" style="width: 100px">-->
414
-<!--          <el-input v-model="scope.row.jifen_pay" oninput="value=value.replace(/[^0-9.]/g,'')"></el-input>-->
415
-<!--        </template>-->
416
-      </el-table-column>
417
-
418
-      <el-table-column align="center" prop="cash_pay" label="现金支付">
419
-                  <template slot-scope="scope">{{scope.row.cash_pay}}</template>
420
-<!--        <template slot-scope="scope" style="width: 100px">-->
421
-<!--          <el-input v-model="scope.row.cash_pay" oninput="value=value.replace(/[^0-9.]/g,'')"></el-input>-->
422
-<!--        </template>-->
423
-      </el-table-column>
424
-
425
-
426
-      <el-table-column align="center" prop="card_desc" label="储值卡说明">
427
-        <template slot-scope="scope">{{scope.row.card_desc}}</template>
428
-        <!--        <template slot-scope="scope" style="width: 100px">-->
429
-        <!--          <el-input v-model="scope.row.oth_desc"></el-input>-->
430
-        <!--        </template>-->
431
-      </el-table-column>
432
-
433
-      <el-table-column align="center" prop="item_name" label="其他说明">
434
-                  <template slot-scope="scope">{{scope.row.oth_desc}}</template>
435
-<!--        <template slot-scope="scope" style="width: 100px">-->
436
-<!--          <el-input v-model="scope.row.oth_desc"></el-input>-->
437
-<!--        </template>-->
438
-      </el-table-column>
439
-
440
-      <el-table-column align="center" prop="total" label="费用总额">
441
-        <template slot-scope="scope">
442
-          <div>{{scope.row.total.toFixed(2)}}</div>
443
-        </template>
444
-      </el-table-column>
445 269
 
446
-    </el-table>
270
+    <el-dialog
271
+      title="提示"
272
+      :visible.sync="dialogVisible"
273
+      width="30%"
274
+    >
275
+      <span>选择下载时间段</span>
276
+
277
+      <el-date-picker
278
+        v-model="chargeDate"
279
+        type="daterange"
280
+        value-format="yyyy-MM-dd"
281
+        range-separator="至"
282
+        start-placeholder="开始日期"
283
+        end-placeholder="结束日期">
284
+      </el-date-picker>
285
+
286
+      <span slot="footer" class="dialog-footer">
287
+                <el-button @click="dialogVisible = false">取 消</el-button>
288
+                <el-button type="primary" @click="export_detail">确 定</el-button>
289
+             </span>
290
+    </el-dialog>
291
+
292
+    <el-pagination
293
+      @size-change="handleSizeChangeOne"
294
+      @current-change="handleCurrentChangeOne"
295
+      background
296
+      style="margin-top:20px;float: right"
297
+      :total="total"
298
+    ></el-pagination>
447 299
 
448 300
   </div>
449 301
 </template>
@@ -462,13 +314,20 @@ import { uParseTime } from '@/utils/tools'
462 314
     },
463 315
     data() {
464 316
       return {
317
+        total:0,
318
+        limit:10,
319
+        page:1,
465 320
         settle_loading:false,
466 321
         crumbs: [],
467 322
         tempArr: [],
468 323
         sameRowArr: [],
324
+        dialogVisible:false,
325
+        modeOptions:this.$store.getters.treatment_mode,
469 326
         tableData: [],
327
+        tableData_three: [],
470 328
         config:{},
471 329
         sick:{},
330
+        chargeDate_two:[moment(new Date()).add('year', 0).format('YYYY-MM-DD'), moment(new Date()).add('year', 0).format('YYYY-MM-DD')],
472 331
         chargeDate: [moment(new Date()).add('year', 0).format('YYYY-MM-DD'), moment(new Date()).add('year', 0).format('YYYY-MM-DD')],
473 332
         item_type: '0',
474 333
         items: [
@@ -485,6 +344,18 @@ import { uParseTime } from '@/utils/tools'
485 344
       }
486 345
     },
487 346
     methods: {
347
+      handleSizeChangeOne(val) {
348
+        this.limit = val
349
+        this.GetRemindPatientList();
350
+      },
351
+      handleCurrentChangeOne(val) {
352
+        this.page = val;
353
+        this.GetRemindPatientList();
354
+      },
355
+      getMode(id){
356
+
357
+
358
+      },
488 359
       change(id,desc,type){
489 360
         let params = {
490 361
           id: id,
@@ -591,7 +462,10 @@ import { uParseTime } from '@/utils/tools'
591 462
           start_time: start_time,
592 463
           end_time: end_time,
593 464
           type: this.item_type,
594
-          keyword: this.keywords
465
+          keyword: this.keywords,
466
+          limit:this.limit,
467
+          page:this.page,
468
+          s_type: 1,
595 469
         }
596 470
         this.settle_loading = true
597 471
         GetSummarySettle(params).then(response => {
@@ -603,9 +477,9 @@ import { uParseTime } from '@/utils/tools'
603 477
           } else {
604 478
             this.settle_loading = false
605 479
             this.tableData = []
480
+            this.total = response.data.data.total
606 481
             this.config = response.data.data.config
607 482
             this.sick = response.data.data.sick
608
-
609 483
             let data = response.data.data.patients
610 484
 
611 485
             for (let i = 0; i < data.length; i++) {
@@ -747,100 +621,252 @@ import { uParseTime } from '@/utils/tools'
747 621
         return sums
748 622
       },
749 623
       export_detail() {
624
+        // this.getSummarySettleList()
625
+        let start_time = this.chargeDate[0]
626
+        let end_time = this.chargeDate[1]
627
+        let params = {
628
+          start_time: start_time,
629
+          end_time: end_time,
630
+          type: this.item_type,
631
+          keyword: this.keywords,
632
+          s_type:2,
633
+        }
634
+
635
+        GetSummarySettle(params).then(response => {
636
+          if (response.data.state == 0) {
637
+
638
+
639
+            this.$message.error(response.data.msg)
640
+            return false
641
+          } else {
642
+            this.settle_loading = false
643
+            this.tableData_three = []
644
+            this.config = response.data.data.config
645
+            this.sick = response.data.data.sick
646
+
647
+            let data = response.data.data.patients
648
+
649
+            for (let i = 0; i < data.length; i++) {
650
+              let total = 0
651
+              for (let b = 0; b < data[i].orders.length; b++) {
652
+                let order = data[i].orders[b]
653
+                order['other_name'] = data[i].name
654
+                order['id'] = order.id
655
+                order['id_card_no'] = data[i].id_card_no
656
+                order['mdtrt_id'] =order.mdtrt_id
657
+                total = parseFloat((parseFloat(total.toString()) + parseFloat(data[i].orders[b].medfee_sumamt.toString())).toFixed(2).toString())
658
+              }
659
+              data[i]['total'] = total
660
+            }
661
+
662
+            for (let i = 0; i < data.length; i++) {
663
+              for (let b = 0; b < data[i].orders.length; b++) {
664
+                let order = data[i].orders[b]
665
+
666
+                if(b == 0){
667
+                  order['total'] = data[i].total
668
+
669
+                }else{
670
+                  order['total'] = 0
671
+
672
+                }
673
+                this.tableData_three.push(order)
674
+              }
675
+            }
676
+          }
677
+        })
678
+
679
+
680
+
750 681
 
751 682
         let list = []
752
-        // for (let i = 0; i < this.tableData.length; i++) {
753
-        //   let order = this.tableData[i]
754
-        //   let name = order.other_name
755
-        //   let id_card_no = order.id_card_no
756
-        //
757
-        //   let time = ''
758
-        //   let balance_accounts = ""
759
-        //   let med_type = ""
760
-        //   let medfee_sumamt = ""
761
-        //   let fund_pay_sumamt = ""
762
-        //   let acct_pay = ""
763
-        //   let psn_cash_pay = ""
764
-        //   let hifes_pay = ""
765
-        //   let hifmi_pay = ""
766
-        //   let hifp_pay = ""
767
-        //   let hifob_pay = ""
768
-        //   let maf_pay = ""
769
-        //   let time2 = ""
770
-        //   time2 = this.getTimes(order.settle_accounts_date)
771
-        //
772
-        //   let total = ""
773
-        //
774
-        //   if(order.setl_time.length == 0){
775
-        //
776
-        //     time = this.getTimes(order.settle_accounts_date)
777
-        //
778
-        //   }else {
779
-        //
780
-        //     time = order.setl_time.split(" ")[0]
781
-        //
782
-        //   }
783
-        //
784
-        //   if (order.is_medicine_insurance == 0) {
785
-        //     balance_accounts = '自费'
786
-        //   }
787
-        //
788
-        //   if (order.is_medicine_insurance == 1) {
789
-        //     balance_accounts = '医保'
790
-        //   }
791
-        //
792
-        //   if (order.med_type == '14') {
793
-        //     med_type = '门诊特殊病'
794
-        //   }
795
-        //
796
-        //   if (order.med_type == '11') {
797
-        //     med_type = '普通门诊'
798
-        //   }
799
-        //
800
-        //   medfee_sumamt = order.medfee_sumamt
801
-        //   fund_pay_sumamt = order.fund_pay_sumamt
802
-        //
803
-        //   acct_pay = order.acct_pay
804
-        //
805
-        //   psn_cash_pay = order.psn_cash_pay
806
-        //   hifes_pay = order.hifes_pay
807
-        //   hifmi_pay = order.hifmi_pay
808
-        //   hifp_pay = order.hifp_pay
809
-        //   hifob_pay = order.hifob_pay
810
-        //   maf_pay = order.maf_pay
811
-        //   total = order.total
812
-        //
813
-        //
814
-        //   let obj = {
815
-        //     '患者姓名': name,
816
-        //     '身份证': id_card_no,
817
-        //     '治疗日期': time2,
818
-        //     '结算日期': time,
819
-        //     '结算类型': balance_accounts,
820
-        //     '处方类型': med_type,
821
-        //     '医疗费总额': medfee_sumamt,
822
-        //     '基金支付金额': fund_pay_sumamt,
823
-        //     '基金统筹金额': hifp_pay,
824
-        //     '大额基金支付':hifob_pay,
825
-        //     '医疗救助基金':maf_pay,
826
-        //     '个人账户支付金额': acct_pay,
827
-        //     '个人支付基金': psn_cash_pay,
828
-        //     '企业补充医疗保险基金支出': hifes_pay,
829
-        //     '居民大病保险资金支出': hifmi_pay,
830
-        //     '费用总额':total,
831
-        //
832
-        //   }
833
-        //   list.push(obj)
834
-        // }
683
+        for (let i = 0; i < this.tableData_three.length; i++) {
684
+          let order = this.tableData_three[i]
685
+          let name = order.other_name
686
+          let id_card_no = order.id_card_no
687
+          let m_id = order.mdtrt_id
688
+          let setl_date = order.setl_time.split(" ")[0]
689
+          let setl_time = order.setl_time
690
+          let sick_name =this.getSickName(order.his.sick_type)
691
+          let cbd = this.getName(order.his.insuplc_admdvs) + "(" + order.his.insuplc_admdvs + ")"
692
+          let settle_type = ""
693
+          if(order.is_medicine_insurance == 0){
694
+             settle_type = "自费"
695
+          }else{
696
+            settle_type = this.getTypeName(order)
697
+          }
698
+
699
+          let med_name = ""
700
+          switch (order.med_type){
701
+            case "14":
702
+              med_name = "门诊特殊病"
703
+              break
704
+            case "11":
705
+              med_name = "普通门诊"
706
+
707
+              break
708
+            case "1112":
709
+              med_name = "普通门诊"
710
+
711
+              break
712
+            case "140104":
713
+              med_name = "城乡门诊特殊病(140104)"
714
+
715
+              break
716
+            case "140201":
717
+              med_name = "门诊特病(140201)"
718
+
719
+              break
720
+            case "992102":
721
+              med_name = "单病种(992102)"
722
+              break
723
+          }
724
+
725
+          let mode_name = ""
726
+          if(order.sch.id == 0){
727
+            mode_name = "未排班"
728
+          }else{
729
+            mode_name = this.modeOptions[order.sch.mode_id].name
730
+          }
731
+
732
+
733
+
734
+          let balance_accounts = ""
735
+          let med_type = ""
736
+          let medfee_sumamt = ""
737
+          let fund_pay_sumamt = ""
738
+          let acct_pay = ""
739
+          let psn_cash_pay = ""
740
+          let hifes_pay = ""
741
+          let hifmi_pay = ""
742
+          let hifp_pay = ""
743
+          let hifob_pay = ""
744
+          let maf_pay = ""
745
+          let time2 = ""
746
+          time2 = this.getTimes(order.settle_accounts_date)
747
+
748
+
749
+          medfee_sumamt = order.medfee_sumamt
750
+          fund_pay_sumamt = order.fund_pay_sumamt
751
+          acct_pay = order.acct_pay
752
+          psn_cash_pay = order.psn_cash_pay
753
+          hifp_pay = order.hifp_pay
754
+          hifob_pay = order.hifob_pay
755
+
756
+          let preselfpay_amt;
757
+          preselfpay_amt = order.preselfpay_amt
758
+
759
+
760
+          let overlmt_self_pay;
761
+          overlmt_self_pay = order.overlmt_self_pay
762
+
763
+          let fulamt_ownpay_amt;
764
+          fulamt_ownpay_amt = order.fulamt_ownpay_amt
765
+
766
+
767
+          let inscp_scp_amt;
768
+          inscp_scp_amt = order.inscp_scp_amt
769
+
770
+
771
+
772
+          maf_pay = order.maf_pay
773
+
774
+
775
+          hifes_pay = order.hifes_pay
776
+          hifmi_pay = order.hifmi_pay
777
+
778
+
779
+          let oth_pay;
780
+          oth_pay = order.oth_pay
781
+
782
+
783
+          let cvlserv_pay;
784
+          cvlserv_pay = order.cvlserv_pay
785
+
786
+
787
+
788
+          let fa_piao_code;
789
+          fa_piao_code = order.fa_piao_code
790
+
791
+
792
+          let fa_piao_number;
793
+          fa_piao_number = order.fa_piao_number
794
+
795
+          let ali_pay;
796
+          ali_pay = order.ali_pay
797
+
798
+
799
+          let band_card_pay;
800
+          band_card_pay = order.band_card_pay
801
+
802
+
803
+          let jifen_pay;
804
+          jifen_pay = order.jifen_pay
805
+
806
+          let wechat_pay;
807
+          wechat_pay = order.wechat_pay
808
+
809
+
810
+          let cash_pay;
811
+          cash_pay = order.cash_pay
812
+
813
+
814
+          let card_desc;
815
+          card_desc = order.card_desc
816
+
817
+
818
+          let oth_desc;
819
+          oth_desc = order.oth_desc
820
+
821
+
822
+          let obj = {
823
+            '患者姓名': name,
824
+            '身份证': id_card_no,
825
+            "就诊号": m_id,
826
+            '治疗日期': time2,
827
+            "结算日期": setl_date,
828
+            '结算时间': setl_time,
829
+            "病种名称":sick_name,
830
+            "参保地":cbd,
831
+            '结算类型': settle_type,
832
+            '处方类型':  med_name,
833
+            // "透析模式": mode_name,
834
+            '医疗费总额': medfee_sumamt,
835
+            '基金支付金额': fund_pay_sumamt,
836
+            '个人账户支付金额': acct_pay,
837
+            '个人支付金额': psn_cash_pay,
838
+            '基金统筹金额': hifp_pay,
839
+            '大额基金支付':hifob_pay,
840
+            '先行自付金额': preselfpay_amt,
841
+            '超限价金额': overlmt_self_pay,
842
+            '全自费金额': fulamt_ownpay_amt,
843
+            '符合政策范围金额': inscp_scp_amt,
844
+            '医疗救助基金':maf_pay,
845
+            '企业补充医疗保险基金支出': hifes_pay,
846
+            '居民大病保险资金支出': hifmi_pay,
847
+            '其他支付': oth_pay,
848
+            '公务员医疗补助资金支出': cvlserv_pay,
849
+            '发票号码': fa_piao_number,
850
+            '发票编号': fa_piao_code,
851
+            '微信支付': wechat_pay,
852
+            '支付宝支付': ali_pay,
853
+            '银行卡支付': band_card_pay,
854
+            '积分支付': jifen_pay,
855
+            '现金支付': cash_pay,
856
+            '储值卡说明': card_desc,
857
+            '其他说明': oth_desc,
858
+          }
859
+          list.push(obj)
860
+        }
835 861
         import('@/vendor/Export2Excel').then(excel => {
836
-          const tHeader = [ '患者姓名','身份证', '治疗日期','结算日期', '结算类型', '处方类型', '医疗费总额', '基金支付金额', '个人账户支付金额', '个人支付基金','企业补充医疗保险基金支出','居民大病保险资金支出', '费用总额']
837
-          const filterVal = [ '患者姓名','身份证', '治疗日期','结算日期', '结算类型', '处方类型', '医疗费总额', '基金支付金额', '个人账户支付金额', '个人支付基金','企业补充医疗保险基金支出','居民大病保险资金支出',  '费用总额']
862
+          const tHeader = [ '患者姓名','身份证',"就诊号", '治疗日期','结算日期',"结算时间",  "病种名称", "参保地",'结算类型', '处方类型', '医疗费总额', '基金支付金额', '个人账户支付金额', '个人支付基金',"基金统筹金额","大额基金支付", "先行自付金额","超限价金额","全自费金额","符合政策范围金额","医疗救助基金",'企业补充医疗保险基金支出','居民大病保险资金支出',"其他支付", "公务员医疗补助资金支出","发票号码","发票编号","微信支付", "支付宝支付","银行卡支付","积分支付","现金支付","储值卡说明",'其他说明']
863
+          const filterVal = [ '患者姓名','身份证',"就诊号", '治疗日期','结算日期', "结算时间", "病种名称","参保地",'结算类型', '处方类型', '医疗费总额', '基金支付金额', '个人账户支付金额', '个人支付基金',"基金统筹金额","大额基金支付","先行自付金额","超限价金额","全自费金额","符合政策范围金额","医疗救助基金",'企业补充医疗保险基金支出','居民大病保险资金支出',"其他支付", "公务员医疗补助资金支出","发票号码", "发票编号","微信支付","支付宝支付","银行卡支付","积分支付","现金支付","储值卡说明",'其他说明']
864
+
838 865
           const data = this.formatJson(filterVal, list)
839
-          excel.export_json_to_excel1({
866
+          excel.export_json_to_excel({
840 867
             header: tHeader,
841 868
             data,
842
-            filename: '结算明细',
843
-            ref:this.$refs['report-table'].$el
869
+            filename: '结算明细'
844 870
           })
845 871
         })
846 872
 

+ 5 - 0
src/xt_pages/outpatientTool/summary.vue View File

@@ -10,12 +10,15 @@
10 10
                     <el-tab-pane label="明细" name="明细"></el-tab-pane>
11 11
                     <el-tab-pane label="汇总" name="汇总"></el-tab-pane>
12 12
                     <el-tab-pane label="结算" name="结算"></el-tab-pane>
13
+                  <el-tab-pane label="个人汇总结算" name="个人汇总结算"></el-tab-pane>
14
+
13 15
                   <el-tab-pane label="全部汇总" name="全部汇总"></el-tab-pane>
14 16
 
15 17
                 </el-tabs>
16 18
                 <detail v-if="titleType == '明细'"></detail>
17 19
                 <gather v-if="titleType == '汇总'"></gather>
18 20
                 <settle v-if="titleType == '结算'"></settle>
21
+              <person-settle v-if="titleType == '个人汇总结算'"></person-settle>
19 22
 <!--              <allgather v-if="titleType == '全部汇总'"></allgather>-->
20 23
               <allgather v-if="titleType == '全部汇总'"></allgather>
21 24
 
@@ -34,12 +37,14 @@
34 37
   import Gather from './components/gather'
35 38
   import Detail from './components/detail'
36 39
   import Allgather from './components/allgather.vue'
40
+  import PersonSettle from "./components/personSettle.vue";
37 41
 
38 42
 
39 43
   const moment = require('moment')
40 44
 
41 45
   export default {
42 46
     components: {
47
+      PersonSettle,
43 48
       Allgather,
44 49
       Gather,
45 50
       Settle,