Просмотр исходного кода

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

csx 3 лет назад
Родитель
Сommit
6de3973b43

+ 1 - 1
src/lang/zh.js Просмотреть файл

@@ -229,7 +229,7 @@ export default {
229 229
     outpatientRecord: '住院工作站',
230 230
     advancePayment: '预交金',
231 231
     labelPrinting: '标签打印',
232
-    summary: '项目消费明细汇总',
232
+    summary: '收费列表',
233 233
     outpatientPharmacy: '门诊药房',
234 234
     pharmacyFormula: '药房配发药',
235 235
     prescriptionDrugReturn: '处方退药',

+ 7 - 0
src/xt_pages/outpatientTool/components/detail.vue Просмотреть файл

@@ -54,6 +54,7 @@
54 54
             <el-table :data="tableData" border :row-style="{ color: '#303133' }"
55 55
                       :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
56 56
                       :span-method="merge"
57
+                      v-loading="detail_loading"
57 58
                       highlight-current-row>
58 59
 
59 60
                 <el-table-column align="center" prop="name" label="患者名字">
@@ -104,6 +105,7 @@
104 105
     },
105 106
     data() {
106 107
       return {
108
+        detail_loading:false,
107 109
         tempArr: [],
108 110
         sameRowArr: [],
109 111
         keywords: '',
@@ -151,6 +153,7 @@
151 153
 
152 154
       },
153 155
       getSummaryDetailList() {
156
+        this.detail_loading = true
154 157
         let start_time = this.chargeDate[0]
155 158
         let end_time = this.chargeDate[1]
156 159
         let params = {
@@ -161,9 +164,13 @@
161 164
         }
162 165
         GetSummaryDetail(params).then(response => {
163 166
           if (response.data.state == 0) {
167
+            this.detail_loading = false
168
+
164 169
             this.$message.error(response.data.msg)
165 170
             return false
166 171
           } else {
172
+            this.detail_loading = false
173
+
167 174
             this.tableData = []
168 175
             let tempPatients = []
169 176
             let tempPatientsTwo = []

+ 7 - 0
src/xt_pages/outpatientTool/components/gather.vue Просмотреть файл

@@ -53,6 +53,7 @@
53 53
             </div>
54 54
             <el-table :data="tableData" border :row-style="{ color: '#303133' }"
55 55
                       :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
56
+                      v-loading="gather_loading"
56 57
                       show-summary
57 58
                       max-height="600"
58 59
                       :span-method="merge"
@@ -98,6 +99,7 @@
98 99
     },
99 100
     data() {
100 101
       return {
102
+        gather_loading:false,
101 103
         crumbs: [],
102 104
         tempArr: [],
103 105
         sameRowArr: [],
@@ -148,6 +150,7 @@
148 150
         this.getSummaryDetailList()
149 151
       },
150 152
       getSummaryDetailList() {
153
+        this.gather_loading = true
151 154
         let start_time = this.chargeDate[0]
152 155
         let end_time = this.chargeDate[1]
153 156
         let params = {
@@ -158,9 +161,13 @@
158 161
         }
159 162
         GetSummaryDetail(params).then(response => {
160 163
           if (response.data.state == 0) {
164
+            this.gather_loading = false
165
+
161 166
             this.$message.error(response.data.msg)
162 167
             return false
163 168
           } else {
169
+            this.gather_loading = false
170
+
164 171
             let tempPatients = []
165 172
             let tempPatientsTwo = []
166 173
             this.tableData = []

+ 38 - 120
src/xt_pages/outpatientTool/components/settle.vue Просмотреть файл

@@ -54,6 +54,7 @@
54 54
             <el-table :data="tableData" border :row-style="{ color: '#303133' }"
55 55
                       :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
56 56
                       show-summary
57
+                      v-loading="settle_loading"
57 58
                       max-height="600"
58 59
                       :span-method="merge"
59 60
                       :summary-method="getTotal"
@@ -64,7 +65,7 @@
64 65
                 </el-table-column>
65 66
                 <el-table-column align="center" prop="item_name" label="结算日期">
66 67
                     <template slot-scope="scope">
67
-                        {{scope.row.setl_time?scope.row.setl_time:getTimes(scope.row.settle_accounts_date)}}
68
+                        {{scope.row.setl_time?scope.row.setl_time.split(" ")[0]:getTimes(scope.row.settle_accounts_date)}}
68 69
                     </template>
69 70
                 </el-table-column>
70 71
 
@@ -118,6 +119,7 @@
118 119
     },
119 120
     data() {
120 121
       return {
122
+        settle_loading:false,
121 123
         crumbs: [],
122 124
         tempArr: [],
123 125
         sameRowArr: [],
@@ -179,11 +181,15 @@
179 181
           type: this.item_type,
180 182
           keyword: this.keywords
181 183
         }
184
+        this.settle_loading = true
182 185
         GetSummarySettle(params).then(response => {
183 186
           if (response.data.state == 0) {
187
+            this.settle_loading = false
188
+
184 189
             this.$message.error(response.data.msg)
185 190
             return false
186 191
           } else {
192
+            this.settle_loading = false
187 193
             this.tableData = []
188 194
             let data = response.data.data.patients
189 195
 
@@ -312,10 +318,24 @@
312 318
         let list = []
313 319
         for (let i = 0; i < this.tableData.length; i++) {
314 320
           let order = this.tableData[i]
315
-          let name = ''
321
+          let name = order.other_name
316 322
           let time = ''
317 323
           let balance_accounts = ""
318 324
           let med_type = ""
325
+          let medfee_sumamt = ""
326
+          let fund_pay_sumamt = ""
327
+          let acct_pay = ""
328
+          let psn_cash_pay = ""
329
+          let total = ""
330
+          if(order.setl_time.length == 0){
331
+
332
+            time = this.getTimes(order.settle_accounts_date)
333
+
334
+          }else {
335
+
336
+            time = order.setl_time.split(" ")[0]
337
+
338
+          }
319 339
 
320 340
           if (order.is_medicine_insurance == 0) {
321 341
             balance_accounts = '自费'
@@ -333,136 +353,34 @@
333 353
             med_type = '普通门诊'
334 354
           }
335 355
 
336
-          let number = ''
337
-
338
-          let department = ''
339
-          let doctor_name = ''
340
-          let order_status = ''
341
-          let charge_name = ''
342
-          let insutypeName = ''
343
-
344
-
345
-
346
-
356
+          medfee_sumamt = order.medfee_sumamt
357
+          fund_pay_sumamt = order.fund_pay_sumamt
358
+          acct_pay = order.acct_pay
359
+          psn_cash_pay = order.psn_cash_pay
360
+          total = order.total
347 361
 
348
-          if (order.patient != null && order.patient.name.length > 0) {
349
-            name = order.patient.name
350
-
351
-          }
352
-
353
-          if (order.p_info != null && order.p_info.department != null && order.p_info.department.name.length > 0) {
354
-            department = order.p_info.department.name
355
-
356
-          }
357
-
358
-          if (order.p_info != null && order.p_info.doctor.length > 0) {
359
-            doctor_name = order.p_info.doctor
360
-          }
361
-
362
-          if (order.creator != null) {
363
-            charge_name = this.getName(order.creator)
364
-          }
365
-          if (order.insutype == '390') {
366
-
367
-            insutypeName = '城乡居民基本医疗保险'
368
-          } else if (order.insutype == '310') {
369
-            insutypeName = '职工基本医疗保险'
370
-
371
-          }
372
-
373
-          if (order.order_status == 1) {
374
-            order_status = '待结算'
375
-          }
376
-
377
-          if (order.order_status == 2) {
378
-            order_status = '已结算'
379
-          }
380
-
381
-          if (order.order_status == 3) {
382
-            order_status = '已退费'
383
-          }
384
-
385
-          if (order.settle_type == 2) {
386
-            time = this.getTimes(order.settle_start_time)
387
-          } else {
388
-            time = this.getTimes(order.settle_accounts_date)
389
-          }
390
-
391
-          var hifmi_pay = 0.00
392
-
393
-          if (order.setl_detail.length > 0) {
394
-            var jsonObj = JSON.parse(order.setl_detail)
395
-            for (let i = 0; i < jsonObj.length; i++) {
396
-              if (order.insutype == '310') {
397
-                if (jsonObj[i].fund_pay_type == '310300') {
398
-                  hifmi_pay = jsonObj[i].fund_payamt
399
-                }
400
-
401
-              } else if (order.insutype == '390') {
402
-                if (order.fund_pay_type == '390200') {
403
-                  hifmi_pay = jsonObj[i].fund_payamt
404
-                }
405
-              }
406
-            }
407
-          }
408
-          var hifmi_pay = 0.00
409
-
410
-          if (order.setl_detail.length > 0) {
411
-            var jsonObj = JSON.parse(order.setl_detail)
412
-            for (let i = 0; i < jsonObj.length; i++) {
413
-              if (order.insutype == '310') {
414
-                if (jsonObj[i].fund_pay_type == '310300') {
415
-                  hifmi_pay = jsonObj[i].fund_payamt
416
-                }
417
-              }
418
-              if (order.insutype == '390') {
419
-                if (jsonObj[i].fund_pay_type == '390200') {
420
-                  hifmi_pay = jsonObj[i].fund_payamt
421
-                }
422
-              }
423
-            }
424
-          }
425 362
 
426 363
           let obj = {
427
-            '就诊号': order.mdtrt_id,
428 364
             '患者姓名': name,
429
-            '开处时间': time,
430
-            '险种类型': insutypeName,
431
-            '应收金额': order.medfee_sumamt,
432
-            '实收金额': order.medfee_sumamt,
433
-            '医保统筹金额': order.hifp_pay,
434
-            '大额基金金额': order.hifob_pay,
435
-            '大病基金金额': hifmi_pay,
436
-            '补充保险基金金额': order.hifes_pay,
437
-            '医疗救助基金金额': order.maf_pay,
438
-            '公务员基金': order.cvlserv_pay,
439
-            '个人支付基金': order.psn_cash_pay,
440
-            '个人账户支付金额': order.acct_pay,
441
-            '科室': department,
442
-            '医生姓名': doctor_name,
443
-            '收费类别': balance_accounts,
444
-            '收费者姓名': charge_name,
445
-            '总金额': order.medfee_sumamt,
446
-            '现金支付': '',
447
-            '账户支付': '',
448
-            '支付宝支付': '',
449
-            '微信支付': '',
450
-            '其他支付': '',
451
-            '收费时间': order.setl_time,
452
-            '收费状态': order_status,
453
-            '退费日期': ''
365
+            '结算日期': time,
366
+            '结算类型': balance_accounts,
367
+            '处方类型': med_type,
368
+            '医疗费总额': medfee_sumamt,
369
+            '基金支付金额': fund_pay_sumamt,
370
+            '个人账户支付金额': acct_pay,
371
+            '个人支付基金': psn_cash_pay,
372
+            '费用总额':total,
454 373
           }
455
-
456 374
           list.push(obj)
457 375
         }
458 376
         import('@/vendor/Export2Excel').then(excel => {
459
-          const tHeader = ['就诊号', '患者姓名', '开处时间', '险种类型', '应收金额', '实收金额', '医保统筹金额', '大额基金金额', '大病基金金额', '补充保险基金金额', '医疗救助基金金额', '公务员基金', '个人支付基金', '个人账户支付金额', '科室', '医生姓名', '收费类别', '收费者姓名', '总金额', '现金支付', '账户支付', '支付宝支付', '微信支付', '其他支付', '收费时间', '收费状态', '退费日期']
460
-          const filterVal = ['就诊号', '患者姓名', '开处时间', '险种类型', '应收金额', '实收金额', '医保统筹金额', '大额基金金额', '大病基金金额', '补充保险基金金额', '医疗救助基金金额', '公务员基金', '个人支付基金', '个人账户支付金额', '科室', '医生姓名', '收费类别', '收费者姓名', '总金额', '现金支付', '账户支付', '支付宝支付', '微信支付', '其他支付', '收费时间', '收费状态', '退费日期']
377
+          const tHeader = [ '患者姓名', '结算日期', '结算类型', '处方类型', '医疗费总额', '基金支付金额', '个人账户支付金额', '个人支付基金', '费用总额']
378
+          const filterVal = [ '患者姓名', '结算日期', '结算类型', '处方类型', '医疗费总额', '基金支付金额', '个人账户支付金额', '个人支付基金', '费用总额']
461 379
           const data = this.formatJson(filterVal, list)
462 380
           excel.export_json_to_excel({
463 381
             header: tHeader,
464 382
             data,
465
-            filename: '消费明细'
383
+            filename: '结算明细'
466 384
           })
467 385
         })
468 386