Browse Source

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

XMLWAN 3 years ago
parent
commit
6b533b7289
26 changed files with 4049 additions and 1773 deletions
  1. 23 0
      src/api/his/his.js
  2. 3 0
      src/lang/zh.js
  3. 27 1
      src/router/modules/stock.js
  4. 2 0
      src/xt_pages/data/components/addDrugs.vue
  5. 1 1
      src/xt_pages/dialysis/batch_print/batch_print_order_forty.vue
  6. 1 0
      src/xt_pages/hospitalStation/outpatientChargesManagement.vue
  7. 2 2
      src/xt_pages/outpatientCharges/components/registerDialog.vue
  8. 35 1
      src/xt_pages/outpatientCharges/components/registerDialog9504.vue
  9. 160 49
      src/xt_pages/outpatientCharges/costComparison.vue
  10. 144 85
      src/xt_pages/outpatientCharges/newStatementPrintTwo.vue
  11. 118 3
      src/xt_pages/outpatientCharges/newTreatTemplate/printTwo.vue
  12. 964 723
      src/xt_pages/outpatientCharges/outpatientChargesManagement.vue
  13. 307 266
      src/xt_pages/outpatientCharges/summary.vue
  14. 34 0
      src/xt_pages/outpatientDoctorStation/components/deskPrescription.vue
  15. 15 6
      src/xt_pages/outpatientDoctorStation/components/inquiriesDetail.vue
  16. 99 23
      src/xt_pages/outpatientDoctorStation/doctorDesk.vue
  17. 99 5
      src/xt_pages/outpatientDoctorStation/prescriptionTemplatedetail.vue
  18. 7 10
      src/xt_pages/outpatientDoctorStation/print.vue
  19. 85 8
      src/xt_pages/outpatientDoctorStation/template/printThree.vue
  20. 84 8
      src/xt_pages/outpatientDoctorStation/treatTemplate/printTwo.vue
  21. 671 550
      src/xt_pages/outpatientRegistration/index.vue
  22. 63 32
      src/xt_pages/outpatientRegistration/registrationHistory.vue
  23. 305 0
      src/xt_pages/stock/stockDamaged.vue
  24. 376 0
      src/xt_pages/stock/stockModifyPrice.vue
  25. 119 0
      src/xt_pages/stock/stockModifyPricePrint.vue
  26. 305 0
      src/xt_pages/stock/stockWarning.vue

+ 23 - 0
src/api/his/his.js View File

@@ -482,3 +482,26 @@ export function preSettle(params) {
482 482
 
483 483
 
484 484
 
485
+export function getPrivateExpenses(params) {
486
+  return request({
487
+    url: "/api/privateexpenses/get",
488
+    method: "get",
489
+    params:params,
490
+  });
491
+}
492
+
493
+export function refundNumber(params) {
494
+  return request({
495
+    url: "/api/refundnumber/post",
496
+    method: "post",
497
+    params:params,
498
+  });
499
+}
500
+
501
+
502
+
503
+
504
+
505
+
506
+
507
+

+ 3 - 0
src/lang/zh.js View File

@@ -185,6 +185,9 @@ export default {
185 185
     stockOutDetail: '出库单详情',
186 186
     cancelStockDetail: '退库单详情',
187 187
     stockDetail: '明细查询',
188
+    stockModifyPrice:'耗材调价',
189
+    stockDamaged:'耗材报损',
190
+    stockWarning:'耗材预警',
188 191
 
189 192
     showconfig: '显示配置',
190 193
     user_detail: '使用明细',

+ 27 - 1
src/router/modules/stock.js View File

@@ -42,7 +42,33 @@ export default {
42 42
       name: 'cancelStockOrder',
43 43
       meta: { title: 'cancelStockOrder', noCache: true }
44 44
     },
45
-
45
+    {
46
+      path: '/stock/stockModifyPrice',
47
+      component: () => import('@/xt_pages/stock/stockModifyPrice'),
48
+      name: 'stockModifyPrice',
49
+      meta: { title: 'stockModifyPrice', noCache: true }
50
+    },
51
+    {
52
+      path: '/stock/stockModifyPricePrint',
53
+      component: () => import('@/xt_pages/stock/stockModifyPricePrint'),
54
+      name: 'stockModifyPricePrint',
55
+      hidden: true,
56
+      is_menu: false,
57
+      meta: { title: 'stockModifyPricePrint', noCache: true }
58
+    },
59
+    {
60
+      path: '/stock/stockDamaged',
61
+      component: () => import('@/xt_pages/stock/stockDamaged'),
62
+      name: 'stockDamaged',
63
+      meta: { title: 'stockDamaged', noCache: true }
64
+    },
65
+    {
66
+      path: '/stock/stockWarning',
67
+      component: () => import('@/xt_pages/stock/stockWarning'),
68
+      name: 'stockWarning',
69
+      meta: { title: 'stockWarning', noCache: true }
70
+    },
71
+    
46 72
     // {
47 73
     //   path: "/stock/",
48 74
     //   component: Layout,

+ 2 - 0
src/xt_pages/data/components/addDrugs.vue View File

@@ -963,6 +963,8 @@
963 963
           // this.form.dose = 1
964 964
           this.form.min_number = 1
965 965
           this.dosageShow = true
966
+        }else{
967
+          this.dosageShow = false
966 968
         }
967 969
         // if(val != this.form.max_unit){
968 970
         //   this.dosageShow = false

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

@@ -928,7 +928,7 @@
928 928
                         <table class="table-box">
929 929
                             <tbody>
930 930
                             <tr>
931
-                                <td style="text-align:left;padding-left:5px;">治疗小结:{{  record.summary? record.summary.dialysis_summary : "" }}</td>
931
+                                <td style="text-align:left;padding-left:5px;">治疗小结:{{  record.summer? record.summer.dialysis_summary : "" }}</td>
932 932
                             </tr>
933 933
                             </tbody>
934 934
                         </table>

+ 1 - 0
src/xt_pages/hospitalStation/outpatientChargesManagement.vue View File

@@ -3139,6 +3139,7 @@
3139 3139
         let paramsObj = {
3140 3140
           order_id: this.hisPatientInfo.id,
3141 3141
           patient_id: this.hisPatientInfo.patient_id,
3142
+          record_time:this.record_date,
3142 3143
           name:this.hisPatientInfo.name,
3143 3144
           gend:this.hisPatientInfo.gend,
3144 3145
           setl_time:this.hisPatientInfo.out_hosptial_time

+ 2 - 2
src/xt_pages/outpatientCharges/components/registerDialog.vue View File

@@ -219,7 +219,7 @@
219 219
 
220 220
         form: {
221 221
           id: '',
222
-          settlement_value: '',
222
+          settlement_value: 1,
223 223
           medical_insurance_card: '',
224 224
           name: '',
225 225
           gender: '',
@@ -478,7 +478,7 @@
478 478
         this.visibility = true
479 479
         // this.form = Object.assign({}, this.resetForm)
480 480
         this.form.id = 0
481
-        this.form.settlement_value = ''
481
+        this.form.settlement_value = 1
482 482
         this.form.medical_insurance_card = ''
483 483
         this.form.name = ''
484 484
         this.form.gender = ''

+ 35 - 1
src/xt_pages/outpatientCharges/components/registerDialog9504.vue View File

@@ -173,10 +173,11 @@
173 173
 </template>
174 174
 
175 175
 <script>
176
-  import {uParseTime} from "@/utils/tools";
176
+  import {uParseTime,jsGetAge} from "@/utils/tools";
177 177
   import axios from 'axios'
178 178
   import {PostSearch} from '@/api/patient'
179 179
   import {getDictionaryDataConfig} from '@/utils/data'
180
+
180 181
   export default {
181 182
     name: 'registerDialog9504',
182 183
 
@@ -454,6 +455,23 @@
454 455
                 that.form.phone = patient.phone
455 456
                 that.form.id_card = patient.id_card_no
456 457
                 that.form.medical_insurance_card = response.data.data.health_card_no
458
+
459
+                var thisLen = that.form.id_card.length
460
+                var birth = ''
461
+                if (thisLen == 15) {
462
+                  birth = '19' + that.form.id_card.substr(6, 6)
463
+                } else {
464
+                  birth = that.form.id_card.substr(6, 8)
465
+                }
466
+                var births =
467
+                  birth.substr(0, 4) +
468
+                  '-' +
469
+                  birth.substr(4, 2) +
470
+                  '-' +
471
+                  birth.substr(6, 2)
472
+                that.form.age = jsGetAge(births, '-')
473
+
474
+
457 475
               } else if (that.form.id_card_type == 2) {
458 476
                 this.form.id = patient.id
459 477
                 that.form.name = patient.name
@@ -462,6 +480,21 @@
462 480
                 that.form.birthday = uParseTime(patient.birthday, '{y}-{m}-{d}')
463 481
                 that.form.phone = patient.phone
464 482
                 that.form.id_card = patient.id_card_no
483
+
484
+                var thisLen = that.form.id_card.length
485
+                var birth = ''
486
+                if (thisLen == 15) {
487
+                  birth = '19' + that.form.id_card.substr(6, 6)
488
+                } else {
489
+                  birth = that.form.id_card.substr(6, 8)
490
+                }
491
+                var births =
492
+                  birth.substr(0, 4) +
493
+                  '-' +
494
+                  birth.substr(4, 2) +
495
+                  '-' +
496
+                  birth.substr(6, 2)
497
+                that.form.age = jsGetAge(births, '-')
465 498
               }
466 499
               that.$message({message: '读卡成功', type: 'success'})
467 500
 
@@ -489,6 +522,7 @@
489 522
         this.form.id_card_type = 1
490 523
         this.form.certificates = 1
491 524
         this.form.medical_care = 11
525
+        this.form.settlement_value = 1
492 526
 
493 527
         // if( this.form.social_type == 0){
494 528
         //   this.form.social_type = ""

+ 160 - 49
src/xt_pages/outpatientCharges/costComparison.vue View File

@@ -574,59 +574,170 @@
574 574
             return false
575 575
           } else {
576 576
             this.fromData = response.data.data.list
577
-            var list = []
578
-
579
-            for (let i = 0; i < this.fromData.length; i++) {
580
-              let obj = {
581
-                '序号': i+1,
582
-                '姓名': this.fromData[i].psn_name,
583
-                '单位名称': this.fromData[i].psn_name,
584
-                '个人编号': this.fromData[i].psn_no,
585
-                '门诊号': this.fromData[i].mdtrt_id,
586
-                '挂号日期': this.getTimes(this.fromData[i].settle_accounts_date),
587
-                '挂号科室': "",
588
-                '门诊费用': this.fromData[i].medfee_sumamt,
589
-                '自费': this.fromData[i].psn_cash_pay,
590
-                '起付线I': this.fromData[i].act_pay_dedc,
591
-                '按比例自付II': this.fromData[i].psn_cash_pay,
592
-                '小计I+II': this.fromData[i].act_pay_dedc + this.fromData[i].psn_cash_pay,
593
-                '统筹基金': this.fromData[i].fund_pay_sumamt,
594
-                '公务员补助': this.fromData[i].cvlserv_pay,
595
-                '单位补充保险': this.fromData[i].hifes_pay,
596
-                '煤矿补充保险': "0.00",
597
-                "超封顶线费用": "0.00",
598
-                '大额医疗保险应付': this.fromData[i].hifob_pay,
599
-                '透析补助': "0.00",
600
-                '大额合计':  "0.00",
601
-                '实账支付额': "0.00",
602
-                '诊断': this.GetDiagnosisName(this.fromData[i].diagnosis_id),
603
-                "血透次数":this.fromData[i].DialysisCount,
604
-                "置留管数量":0,
605
-                "备注":"",
606 577
 
578
+            if(this.selection[0].insutype == "310"){
579
+
580
+              var list = []
581
+              for (let i = 0; i < this.fromData.length; i++) {
582
+                // var hifmi_pay = 0.00;
583
+                //
584
+                // if(this.fromData[i].setl_detail.length > 0){
585
+                //   var jsonObj = JSON.parse(this.fromData[i].setl_detail);
586
+                //   for (let i = 0; i < jsonObj.length; i++) {
587
+                //     if (order.fund_pay_type == '310300') {
588
+                //       hifmi_pay = jsonObj[i].fund_payamt
589
+                //     }
590
+                //   }
591
+                // }
592
+
593
+                var hifes_pays = [];
594
+
595
+                if(this.fromData[i].setl_detail.length > 0){
596
+                  var jsonObj = JSON.parse(this.fromData[i].setl_detail);
597
+                  console.log(jsonObj)
598
+                  for (let i = 0; i < jsonObj.length; i++) {
599
+                    if (jsonObj[i].fund_pay_type == '310100') {
600
+                      hifes_pays.push(jsonObj[i].fund_payamt)
601
+                    }
602
+                  }
603
+                }
604
+
605
+                let hifes_pay = 0.00
606
+                if(hifes_pays.length == 2){
607
+                  hifes_pay = hifes_pays[1]
608
+                }
609
+
610
+                let obj = {
611
+                  '序号': i+1,
612
+                  '姓名': this.fromData[i].psn_name,
613
+                  '单位名称': this.fromData[i].psn_name,
614
+                  '个人编号': this.fromData[i].psn_no,
615
+                  '门诊号': this.fromData[i].mdtrt_id,
616
+                  '挂号日期': this.getTimes(this.fromData[i].settle_accounts_date),
617
+                  '挂号科室':  "血透室",
618
+                  '门诊费用': this.fromData[i].medfee_sumamt,
619
+                  '自费': this.fromData[i].psn_cash_pay,
620
+                  '起付线I': this.fromData[i].act_pay_dedc,
621
+                  '按比例自付II': this.fromData[i].psn_cash_pay,
622
+                  '小计I+II': this.fromData[i].act_pay_dedc + this.fromData[i].psn_cash_pay,
623
+                  '统筹基金': this.fromData[i].fund_pay_sumamt,
624
+                  '公务员补助': this.fromData[i].cvlserv_pay,
625
+                  '单位补充保险': hifes_pay,
626
+                  '煤矿补充保险': "0.00",
627
+                  "超封顶线费用": "0.00",
628
+                  '大额医疗保险应付': this.fromData[i].hifob_pay,
629
+                  '透析补助': "0.00",
630
+                  '大额合计':  "0.00",
631
+                  '实账支付额': "0.00",
632
+                  '诊断': this.GetDiagnosisName(this.fromData[i].diagnosis_id),
633
+                  "血透次数":this.fromData[i].DialysisCount,
634
+                  "置留管数量":0,
635
+                  "备注":"",
636
+
637
+                }
638
+                list.push(obj)
639
+              }
640
+              var insutype_name = ''
641
+              if (this.query_insutype == '310') {
642
+                insutype_name = '职工基本医疗保险'
643
+              } else if (this.query_insutype == '390') {
644
+                insutype_name = '城乡居民基本医疗保险'
607 645
               }
608
-              list.push(obj)
609
-            }
610
-            var insutype_name = ''
611
-            if (this.query_insutype == '310') {
612
-              insutype_name = '职工基本医疗保险'
613
-            } else if (this.query_insutype == '390') {
614
-              insutype_name = '城乡居民基本医疗保险'
615
-            }
616 646
 
617
-            import('@/vendor/Export2Excel').then(excel => {
618
-              const tHeader = ['序号', '姓名', '单位名称','个人编号', '门诊号', '挂号日期','挂号科室','门诊费用','自费', '起付线I','按比例自付II','小计I+II','统筹基金','公务员补助','单位补充保险','煤矿补充保险','超封顶线费用','大额医疗保险应付', '透析补助', '大额合计', '实账支付额', '诊断', '血透次数', '置留管数量','备注']
619
-              const filterVal = ['序号', '姓名', '单位名称','个人编号', '门诊号', '挂号日期','挂号科室','门诊费用','自费', '起付线I','按比例自付II','小计I+II','统筹基金','公务员补助','单位补充保险','煤矿补充保险','超封顶线费用','大额医疗保险应付', '透析补助', '大额合计', '实账支付额', '诊断', '血透次数', '置留管数量','备注']
620
-              // const filterVal = [ '姓名', '身份证', '个人编号', '门诊流水号', '挂号日期', '起付线', '统筹基金', '个人支付', '个账支付', '现金支付', '总费用', '冲销标志']
621
-              const merges = ['A1:A2', 'B1:B2', 'C1:E1', 'F1:H1', 'I1:K1', 'L1:N1', 'O1:Q1', 'R1:T1', 'U1:W1', 'X1:Z1', 'AA1:AC1', 'AD1:AF1', 'AG1:AI1', 'AJ1:AL1', 'AM1:AO1', 'AP1:AR1', 'AS1:AU1', 'AV1:AX1', 'AY1:BA1', 'BB1:BD1', 'BE1:BG1', 'BH1:BJ1', 'BK1:BM1']
622
-
623
-              const data = this.formatJson(filterVal, list)
624
-              excel.export_json_to_excel({
625
-                header: tHeader,
626
-                data,
627
-                filename:this.getTimes(this.selection[0].start_time)+ '~' + this.getTimes(this.selection[0].end_time)+ insutype_name + '对账报表'
647
+              import('@/vendor/Export2Excel').then(excel => {
648
+                const tHeader = ['序号', '姓名', '单位名称','个人编号', '门诊号', '挂号日期','挂号科室','门诊费用','自费', '起付线I','按比例自付II','小计I+II','统筹基金','公务员补助','单位补充保险','煤矿补充保险','超封顶线费用','大额医疗保险应付', '透析补助', '大额合计', '实账支付额', '诊断', '血透次数', '置留管数量','备注']
649
+                const filterVal = ['序号', '姓名', '单位名称','个人编号', '门诊号', '挂号日期','挂号科室','门诊费用','自费', '起付线I','按比例自付II','小计I+II','统筹基金','公务员补助','单位补充保险','煤矿补充保险','超封顶线费用','大额医疗保险应付', '透析补助', '大额合计', '实账支付额', '诊断', '血透次数', '置留管数量','备注']
650
+                // const filterVal = [ '姓名', '身份证', '个人编号', '门诊流水号', '挂号日期', '起付线', '统筹基金', '个人支付', '个账支付', '现金支付', '总费用', '冲销标志']
651
+                const merges = ['A1:A2', 'B1:B2', 'C1:E1', 'F1:H1', 'I1:K1', 'L1:N1', 'O1:Q1', 'R1:T1', 'U1:W1', 'X1:Z1', 'AA1:AC1', 'AD1:AF1', 'AG1:AI1', 'AJ1:AL1', 'AM1:AO1', 'AP1:AR1', 'AS1:AU1', 'AV1:AX1', 'AY1:BA1', 'BB1:BD1', 'BE1:BG1', 'BH1:BJ1', 'BK1:BM1']
652
+
653
+                const data = this.formatJson(filterVal, list)
654
+                excel.export_json_to_excel({
655
+                  header: tHeader,
656
+                  data,
657
+                  filename:this.getTimes(this.selection[0].start_time)+ '~' + this.getTimes(this.selection[0].end_time)+ insutype_name + '对账报表'
658
+                })
628 659
               })
629
-            })
660
+
661
+
662
+            }else{
663
+
664
+              var list = []
665
+              for (let i = 0; i < this.fromData.length; i++) {
666
+
667
+                var hifmi_pay = 0.00;
668
+
669
+                if(this.fromData[i].setl_detail.length > 0){
670
+                  var jsonObj = JSON.parse(this.fromData[i].setl_detail);
671
+                  console.log(jsonObj)
672
+                  for (let i = 0; i < jsonObj.length; i++) {
673
+                      if (jsonObj[i].fund_pay_type == '390200') {
674
+                        hifmi_pay = jsonObj[i].fund_payamt
675
+                      }
676
+                  }
677
+                }
678
+
679
+
680
+
681
+
682
+                let obj = {
683
+                  '序号': i+1,
684
+                  '姓名': this.fromData[i].psn_name,
685
+                  '个人编号': this.fromData[i].psn_no,
686
+                  '门诊号': this.fromData[i].mdtrt_id,
687
+                  '挂号日期': this.getTimes(this.fromData[i].settle_accounts_date),
688
+                  '诊断': this.GetDiagnosisName(this.fromData[i].diagnosis_id),
689
+                  '挂号科室': "血透室",
690
+                  '门诊费用': this.fromData[i].medfee_sumamt,
691
+                  '自费': this.fromData[i].psn_cash_pay,
692
+                  '起付线': this.fromData[i].act_pay_dedc,
693
+                  '按比例自付': this.fromData[i].psn_cash_pay,
694
+                  "超封顶线费用": "0.00",
695
+                  "合计": parseFloat(this.fromData[i].act_pay_dedc) + parseFloat(this.fromData[i].psn_cash_pay),
696
+                  '统筹基金': this.fromData[i].fund_pay_sumamt,
697
+                  '大病保险': hifmi_pay,
698
+                  '医疗救助': this.fromData[i].maf_pay,
699
+                  '实账支付额': "0.00",
700
+                  "血透次数":this.fromData[i].DialysisCount,
701
+                  "置留管数量":0,
702
+                  "备注":"",
703
+
704
+                }
705
+
706
+
707
+
708
+
709
+
710
+                list.push(obj)
711
+              }
712
+              var insutype_name = ''
713
+              if (this.query_insutype == '310') {
714
+                insutype_name = '职工基本医疗保险'
715
+              } else if (this.query_insutype == '390') {
716
+                insutype_name = '城乡居民基本医疗保险'
717
+              }
718
+
719
+              import('@/vendor/Export2Excel').then(excel => {
720
+                const tHeader = ['序号', '姓名','个人编号', '门诊号', '挂号日期', '诊断','挂号科室','门诊费用','自费', '起付线','按比例自付','超封顶线费用','合计','统筹基金','大病保险','医疗救助', '实账支付额', '血透次数', '置留管数量','备注']
721
+                const filterVal = ['序号', '姓名','个人编号', '门诊号', '挂号日期','诊断','挂号科室','门诊费用','自费', '起付线','按比例自付','超封顶线费用','合计','统筹基金','大病保险','医疗救助', '实账支付额', '血透次数', '置留管数量','备注']
722
+                // const filterVal = [ '姓名', '身份证', '个人编号', '门诊流水号', '挂号日期', '起付线', '统筹基金', '个人支付', '个账支付', '现金支付', '总费用', '冲销标志']
723
+                const merges = ['A1:A2', 'B1:B2', 'C1:E1', 'F1:H1', 'I1:K1', 'L1:N1', 'O1:Q1', 'R1:T1', 'U1:W1', 'X1:Z1', 'AA1:AC1', 'AD1:AF1', 'AG1:AI1', 'AJ1:AL1', 'AM1:AO1', 'AP1:AR1', 'AS1:AU1', 'AV1:AX1', 'AY1:BA1', 'BB1:BD1', 'BE1:BG1', 'BH1:BJ1', 'BK1:BM1']
724
+
725
+                const data = this.formatJson(filterVal, list)
726
+                excel.export_json_to_excel({
727
+                  header: tHeader,
728
+                  data,
729
+                  filename:this.getTimes(this.selection[0].start_time)+ '~' + this.getTimes(this.selection[0].end_time)+ insutype_name + '对账报表'
730
+                })
731
+              })
732
+
733
+
734
+
735
+
736
+
737
+
738
+            }
739
+
740
+
630 741
           }
631 742
         })
632 743
 

+ 144 - 85
src/xt_pages/outpatientCharges/newStatementPrintTwo.vue View File

@@ -16,7 +16,7 @@
16 16
             <!--<printOne :info="info"></printOne>-->
17 17
 
18 18
             <print-one v-if="org_id != 10138" :info="info"></print-one>
19
-            <print-two v-else  :info="info" :paramsObj="paramsObj"></print-two>
19
+            <print-two v-else :info="info" :paramsObj="paramsObj" :balanceAccounts="balanceAccounts"></print-two>
20 20
         </div>
21 21
     </div>
22 22
 </template>
@@ -28,6 +28,9 @@
28 28
   import { getDialysisRecord } from '@/api/dialysis'
29 29
   import { getDataConfig } from '@/utils/data'
30 30
   import { jsGetAge, uParseTime } from '@/utils/tools'
31
+  import { getPrivateExpenses } from '@/api/his/his'
32
+
33
+
31 34
   import axios from 'axios'
32 35
   import BreadCrumb from '@/xt_pages/components/bread-crumb'
33 36
   import printOne from './newTreatTemplate/printOne'
@@ -60,7 +63,8 @@
60 63
         prescription_id:0,
61 64
         ids:'',
62 65
         info:null,
63
-        org_id:''
66
+        org_id:'',
67
+        balanceAccounts:{}
64 68
       };
65 69
     },
66 70
     methods:{
@@ -79,7 +83,7 @@
79 83
 
80 84
         if(this.org_id == 10138){
81 85
           const style =
82
-          '@media print {#prescription-print{font-size:12px;}.printTitle{font-size: 22px;text-align: center;font-weight: bold;}table td {padding: 10px 5px;}}';
86
+          '@media print {#prescription-print{font-size:12px;}.printTitle{font-size: 22px;text-align: center;font-weight: bold;}table td {padding: 10px 5px;}@media print {html {zoom: 50%;}}}';
83 87
           printJS({
84 88
               printable: "prescription-print",
85 89
               type: "html",
@@ -110,113 +114,167 @@
110 114
 
111 115
       },
112 116
       getInfo(obj) {
113
-        if (this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10028 || this.$store.getters.xt_user.org_id == 10138) {
114
-          var that = this;
115
-          axios.get('http://127.0.0.1:9532/sz/api/settle/query', {
116
-            params: obj
117
-          })
118
-            .then(function (response) {
119
-              if (response.data.state == 0) {
120
-                this.$message.error(response.data.msg);
121
-                return false
122
-              } else {
123
-                if (response.data.data.failed_code == -10) {
124
-                  // that.$message.error(response.data.data.msg)
125
-                  that.$confirm(response.data.data.msg, '医保错误信息', {
126
-                    confirmButtonText: '确 定',
127
-                    type: 'warning'
128
-                  }).then(() => {
129
-
130
-                  }).catch(() => {
131
-                  })
117
+        if (obj.balance_accounts_type == 2){
118
+          let params = {
119
+            his_patient_id: obj.his_patient_id,
120
+            id: obj.order_id,
132 121
 
133
-                } else {
134
-
135
-                  console.log("~~~~");
136
-                  that.info = response.data.data.result;
137
-                  console.log(that.info);
138
-
139
-                  that.info['patient_info']= response.data.data.patient_info
140
-                  that.info['dialysis_no'] = response.data.data.dialysis_no
141
-                  that.info['org_code'] = response.data.data.org_code;
142
-                  that.info['patient_name'] = response.data.data.patient_name;
143
-                  that.info['doctor_code'] = response.data.data.doctor_code;
144
-                  that.info['doctor_name'] = response.data.data.doctor_name;
145
-                  if(response.data.data.health_card_no_two.length == 0){
146
-                    that.info['health_card_no'] = response.data.data.health_card_no
122
+          }
123
+          getPrivateExpenses(params).then(response => {
124
+            if (response.data.state == 0) {
125
+              this.$message.error(response.data.msg)
126
+
127
+              return false
128
+            } else {
129
+              
130
+              this.balanceAccounts = response.data.data
131
+              let arr = []
132
+              let obj = {
133
+                type:1,
134
+                details: [],
135
+                total: 0
136
+              }
137
+              let obj2 = {
138
+                type:2,
139
+                details: [],
140
+                total: 0
141
+              }
142
+              let obj3 = {
143
+                type:3,
144
+                details: [],
145
+                total: 0
146
+              }
147
+              this.balanceAccounts.order_info.map(item => {
148
+                
149
+                if(item.advice_id > 0){
150
+                  obj.details.push(item)
151
+                  obj.total += (item.pric * item.advice.prescribing_number)
152
+                }else{
153
+                  if(item.project.type == 2){
154
+                    obj2.details.push(item)
155
+                    obj2.total += (item.pric * item.project.count)
147 156
                   }else{
148
-                    that.info['health_card_no'] = response.data.data.health_card_no_two
157
+                    obj3.details.push(item)
158
+                    obj3.total += (item.pric * item.project.count)
149 159
                   }
160
+                }
161
+              })
162
+              this.balanceAccounts.new_detail_list = []
163
+              this.balanceAccounts.new_detail_list.push(obj)
164
+              this.balanceAccounts.new_detail_list.push(obj2)
165
+              this.balanceAccounts.new_detail_list.push(obj3)
166
+              console.log(111,this.balanceAccounts)
167
+            }
168
+          })
150 169
 
151
-                  that.info['order_number'] = response.data.data.order_number;
152 170
 
153
-                  that.info['department'] =  response.data.data.department;
154
-                  that.info['yiliao_leibie'] =  response.data.data.yiliao_leibie;
171
+        }else {
155 172
 
156
-                  that.info['before_money'] =  response.data.data.before_money;
157
-                  that.info['after_money'] =   response.data.data.after_money;
173
+          if (this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10028 || this.$store.getters.xt_user.org_id == 10138) {
174
+            var that = this;
175
+            axios.get('http://127.0.0.1:9532/sz/api/settle/query', {
176
+              params: obj
177
+            })
178
+              .then(function(response) {
179
+                if (response.data.state == 0) {
180
+                  this.$message.error(response.data.msg);
181
+                  return false
182
+                } else {
183
+                  if (response.data.data.failed_code == -10) {
184
+                    // that.$message.error(response.data.data.msg)
185
+                    that.$confirm(response.data.data.msg, '医保错误信息', {
186
+                      confirmButtonText: '确 定',
187
+                      type: 'warning'
188
+                    }).then(() => {
189
+
190
+                    }).catch(() => {
191
+                    })
192
+
193
+                  } else {
194
+
195
+                    console.log("~~~~");
196
+                    that.info = response.data.data.result;
197
+                    console.log(that.info);
198
+
199
+                    that.info['patient_info'] = response.data.data.patient_info
200
+                    that.info['dialysis_no'] = response.data.data.dialysis_no
201
+                    that.info['org_code'] = response.data.data.org_code;
202
+                    that.info['patient_name'] = response.data.data.patient_name;
203
+                    that.info['doctor_code'] = response.data.data.doctor_code;
204
+                    that.info['doctor_name'] = response.data.data.doctor_name;
205
+                    if (response.data.data.health_card_no_two.length == 0) {
206
+                      that.info['health_card_no'] = response.data.data.health_card_no
207
+                    } else {
208
+                      that.info['health_card_no'] = response.data.data.health_card_no_two
209
+                    }
158 210
 
159
-                  that.info['org_name'] = that.$store.getters.xt_user.org.org_name;
160
-                  console.log("~~~~" + that.info);
211
+                    that.info['order_number'] = response.data.data.order_number;
161 212
 
162
-                  var name_arr = [];
163
-                  var spec_arr = [];
164
-                  var count_arr = [];
165
-                  var price_arr = [];
166
-                  var total_arr = [];
167
-                  for (let i = 0; i < that.info.transBody.outputlist1.length; i++) {
168
-                    name_arr.push(that.info.transBody.outputlist1[i].ake006);
169
-                    spec_arr.push(that.info.transBody.outputlist1[i].aka074);
170
-                    count_arr.push(that.info.transBody.outputlist1[i].akc226);
171
-                    price_arr.push(that.info.transBody.outputlist1[i].akc225);
172
-                    total_arr.push(that.info.transBody.outputlist1[i].akc264)
173
-                  }
213
+                    that.info['department'] = response.data.data.department;
214
+                    that.info['yiliao_leibie'] = response.data.data.yiliao_leibie;
174 215
 
175
-                  console.log("~~~" + that.info);
216
+                    that.info['before_money'] = response.data.data.before_money;
217
+                    that.info['after_money'] = response.data.data.after_money;
176 218
 
177
-                  that.info['name_arr'] = name_arr;
178
-                  that.info['spec_arr'] = spec_arr;
179
-                  that.info['count_arr'] = count_arr;
180
-                  that.info['price_arr'] = price_arr;
181
-                  that.info['total_arr'] = total_arr;
182
-                  that.info['record_date'] = obj.record_time;
219
+                    that.info['org_name'] = that.$store.getters.xt_user.org.org_name;
220
+                    console.log("~~~~" + that.info);
183 221
 
184
-                  console.log("~~" + that.info)
222
+                    var name_arr = [];
223
+                    var spec_arr = [];
224
+                    var count_arr = [];
225
+                    var price_arr = [];
226
+                    var total_arr = [];
227
+                    for (let i = 0; i < that.info.transBody.outputlist1.length; i++) {
228
+                      name_arr.push(that.info.transBody.outputlist1[i].ake006);
229
+                      spec_arr.push(that.info.transBody.outputlist1[i].aka074);
230
+                      count_arr.push(that.info.transBody.outputlist1[i].akc226);
231
+                      price_arr.push(that.info.transBody.outputlist1[i].akc225);
232
+                      total_arr.push(that.info.transBody.outputlist1[i].akc264)
233
+                    }
185 234
 
235
+                    console.log("~~~" + that.info);
186 236
 
187
-                  let type_arr = []
188
-                  for (let i = 0; i < that.info.transBody.outputlist1.length; i++) {
189
-                    type_arr.push(that.info.transBody.outputlist1[i].aka111)
190
-                  }
237
+                    that.info['name_arr'] = name_arr;
238
+                    that.info['spec_arr'] = spec_arr;
239
+                    that.info['count_arr'] = count_arr;
240
+                    that.info['price_arr'] = price_arr;
241
+                    that.info['total_arr'] = total_arr;
242
+                    that.info['record_date'] = obj.record_time;
191 243
 
244
+                    console.log("~~" + that.info)
192 245
 
193
-                  let  typeArr =  that.unique(type_arr)
246
+                    let type_arr = []
247
+                    for (let i = 0; i < that.info.transBody.outputlist1.length; i++) {
248
+                      type_arr.push(that.info.transBody.outputlist1[i].aka111)
249
+                    }
194 250
 
195
-                  that.info['new_detail_list'] = []
251
+                    let typeArr = that.unique(type_arr)
196 252
 
197
-                  for(let i = 0; i <  typeArr.length; i++){
198
-                    let obj = {
199
-                      aka111:typeArr[i],
200
-                      details:[],
201
-                      total:0
202
-                    }
253
+                    that.info['new_detail_list'] = []
254
+
255
+                    for (let i = 0; i < typeArr.length; i++) {
256
+                      let obj = {
257
+                        aka111: typeArr[i],
258
+                        details: [],
259
+                        total: 0
260
+                      }
203 261
 
204
-                    for(let b = 0; b < that.info.transBody.outputlist1.length;b++){
205
-                        if(typeArr[i] == that.info.transBody.outputlist1[b].aka111){
262
+                      for (let b = 0; b < that.info.transBody.outputlist1.length; b++) {
263
+                        if (typeArr[i] == that.info.transBody.outputlist1[b].aka111) {
206 264
                           obj.details.push(that.info.transBody.outputlist1[b])
207 265
                           obj.total += that.info.transBody.outputlist1[b].akc264
208 266
                         }
267
+                      }
268
+                      that.info.new_detail_list.push(obj)
209 269
                     }
210
-                    that.info.new_detail_list.push(obj)
211
-                  }
212
-
213 270
 
271
+                  }
214 272
                 }
215
-              }
216
-            })
217
-            .catch(function (error) {
273
+              })
274
+              .catch(function(error) {
218 275
 
219
-            });
276
+              });
277
+          }
220 278
         }
221 279
       }, unique(array) {
222 280
 
@@ -240,6 +298,7 @@
240 298
 
241 299
     created() {
242 300
       this.org_id = this.$store.getters.xt_user.org_id
301
+      
243 302
       this.getInfo(this.paramsObj)
244 303
     },
245 304
     watch:{

+ 118 - 3
src/xt_pages/outpatientCharges/newTreatTemplate/printTwo.vue View File

@@ -1,6 +1,6 @@
1 1
 <template>
2 2
     <div>
3
-        <div id='prescription-print' class="prescription-print" style="position: relative;">
3
+        <div v-if="paramsObj.balance_accounts_type != 2" id='prescription-print' class="prescription-print" style="position: relative;">
4 4
             <img style="width:100%;height:80px" src="../../../assets/img/bailinTop.jpg" alt="">
5 5
             <div class="printTitle" style="position: absolute;left: 40%;top: 50px;">门诊收费清单</div>
6 6
             <div style="display:flex;">
@@ -76,12 +76,120 @@
76 76
             </div>
77 77
             <img style="width:100%;" src="../../../assets/img/bailinBottom.jpg" alt="">
78 78
         </div>
79
+        <div v-else id='prescription-print' class="prescription-print" style="position: relative;">
80
+          <img style="width:100%;height:80px" src="../../../assets/img/bailinTop.jpg" alt="">
81
+            <div class="printTitle" style="position: absolute;left: 40%;top: 50px;">门诊收费清单</div>
82
+            <div style="display:flex;">
83
+                <div>单据号:<span style="display:inline-block;width:200px;">{{balanceAccounts.his.number ? balanceAccounts.his.number : ''}}</span></div>
84
+                <div>透析号:<span style="display:inline-block;width:200px;">{{balanceAccounts.patient ? balanceAccounts.patient.dialysis_no : ''}}</span></div>
85
+            </div>
86
+            <div style="display:flex;justify-content: space-between;">
87
+                <div style="display:flex;">
88
+                  <div>姓名:<span style="display:inline-block;width:50px;">{{balanceAccounts.patient ? balanceAccounts.patient.name : ''}}</span></div>
89
+                  <div>性别:<span style="display:inline-block;width:30px;">{{balanceAccounts.patient == '1' ? '男' : '女'}}</span></div>
90
+                  <div>年龄:<span style="display:inline-block;width:50px;">{{balanceAccounts.patient ? balanceAccounts.patient.age : ''}}岁</span></div>
91
+                  <div>费别:<span style="display:inline-block;width:80px;">自费</span>
92
+                  </div>
93
+                  <div>电脑号:<span style="display:inline-block;width:80px;"></span></div>
94
+                  <div>收费日期:<span style="display:inline-block;width:80px;">{{getTime(new Date(),"{y}-{m}-{d}")?getTime(new Date(),"{y}-{m}-{d}"):""}}</span></div>
95
+                </div>
96
+                <div style="float:right">金额单位:元</div>
97
+            </div>
98
+            <div style="min-height: 300px;">
99
+              <table border='1' style="width:100%;" cellspacing="0">
100
+                  <tr>
101
+                      <td width="70">类别</td>
102
+                      <td>项目</td>
103
+                      <td width="80">规格</td>
104
+                      <td width="50">单位</td>
105
+                      <td width="50">数量</td>
106
+                      <td width="60">单价</td>
107
+                      <td width="70">总额</td>
108
+                      <td width="100">小计</td>
109
+                  </tr>
110
+                  <div v-for="(item,i) in balanceAccounts.new_detail_list" :key="i" style="width:100%;display: table-row-group;">
111
+                      <tr v-for="(subItem,index) in item.details" :key="index">
112
+                        <td>
113
+                          <span v-if="item.type == 1">药品费</span>
114
+                          <span v-if="item.type == 2">治疗费</span>
115
+                          <span v-if="item.type == 3">耗材费</span>
116
+                        </td>
117
+                        <td>
118
+                          <span v-if="item.type == 1">{{ subItem.advice.advice_name }}</span>
119
+                          <span v-if="item.type == 2">{{ subItem.project.project.project_name }}</span>
120
+                          <span v-if="item.type == 3">{{ subItem.project.good_info.good_name }}</span>
121
+                        </td>
122
+                        <td>
123
+                          <span v-if="item.type == 1"><span v-if="subItem.advice.drug.min_unit != subItem.advice.drug.dose_unit">{{subItem.advice.drug.dose}}{{subItem.advice.drug.dose_unit}}&nbsp;* &nbsp;</span>{{subItem.advice.drug.min_number}}{{subItem.advice.drug.min_unit}}/{{subItem.advice.drug.max_unit}}</span>
124
+                          <span v-if="item.type == 2"></span>
125
+                          <span v-if="item.type == 3">{{ subItem.project.good_info.specification_name }}</span>
126
+                        </td>
127
+                        <td>
128
+                          <span v-if="item.type == 1">{{ subItem.advice.drug.max_unit }}</span>
129
+                          <span v-if="item.type == 2">{{ subItem.project.unit }}</span>
130
+                          <span v-if="item.type == 3">{{ subItem.project.unit }}</span>
131
+                        </td>
132
+                        <td>
133
+                          <span v-if="item.type == 1">{{ subItem.advice.prescribing_number }}</span>
134
+                          <span v-if="item.type == 2">{{ subItem.project.count }}</span>
135
+                          <span v-if="item.type == 3">{{ subItem.project.count }}</span>
136
+                        </td>
137
+                        <td>
138
+                          <span v-if="item.type == 1">{{ subItem.pric }}</span>
139
+                          <span v-if="item.type == 2">{{ subItem.pric }}</span>
140
+                          <span v-if="item.type == 3">{{ subItem.pric }}</span>
141
+                        </td>
142
+                        <td>
143
+                          <span v-if="item.type == 1">{{ subItem.advice.prescribing_number * subItem.pric }}</span>
144
+                          <span v-if="item.type == 2">{{ subItem.project.count * subItem.pric }}</span>
145
+                          <span v-if="item.type == 3">{{ subItem.project.count * subItem.pric }}</span>
146
+                        </td>
147
+                        <td :rowspan="item.details.length" v-if="index == 0" style="vertical-align: middle;text-align: center;">{{ item.total.toFixed(2) }}</td>
148
+                      </tr>
149
+                  </div>
150
+                  <tr>
151
+                    <td colspan="7">
152
+                      <div style="display:flex;flez-wrap:wrap;">
153
+                        <div style="width:33%;" v-for="(item,index) in balanceAccounts.new_detail_list" :key="index">
154
+                          <span v-if="item.type == 1">药品费: {{ item.total.toFixed(2) }}</span>
155
+                          <span v-if="item.type == 2">治疗费: {{ item.total.toFixed(2) }}</span>
156
+                          <span v-if="item.type == 3">耗材费: {{ item.total.toFixed(2) }}</span>
157
+                        </div>
158
+                      </div>
159
+                    </td>
160
+                    <td>合计: {{balanceAccounts.order.medfee_sumamt?balanceAccounts.order.medfee_sumamt:0}}元</td>
161
+                  </tr>
162
+                  <tr>
163
+                      <td colspan="7">
164
+                          <div style="display:flex;flez-wrap:wrap;">
165
+                              <div style="width:33%;">医疗费总额:{{balanceAccounts.order.medfee_sumamt?balanceAccounts.order.medfee_sumamt:0}}元</div>
166
+                              <div style="width:33%;">基金支付金额:0元</div>
167
+                              <div style="width:33%;">个人账户支付金额:0元</div>
168
+
169
+                          </div>
170
+                          <div style="display:flex;flez-wrap:wrap;">
171
+                              <div style="width:33%;">个人支付金额:{{balanceAccounts.order.medfee_sumamt?balanceAccounts.order.medfee_sumamt:0}}元</div>
172
+                              <div style="width:33%;">个人账户金额:0元</div>
173
+                          </div>
174
+                      </td>
175
+                      <td>合计:{{balanceAccounts.order.medfee_sumamt?balanceAccounts.order.medfee_sumamt:0}}元</td>
176
+                  </tr>
177
+
178
+              </table>
179
+            </div>
180
+            <div style="float:right;margin:10px 0;display:flex;">
181
+                <div>操作人:<span style="width:100px;display:inline-block;">{{balanceAccounts.current_admin.user_name}}</span></div>
182
+                <div>操作日期:<span style="width:100px;display:inline-block;">{{getTime(new Date(),"{y}-{m}-{d}")?getTime(new Date(),"{y}-{m}-{d}"):""}}</span></div>
183
+            </div>
184
+            <img style="width:100%;" src="../../../assets/img/bailinBottom.jpg" alt="">
185
+        </div>
79 186
     </div>
80 187
 
81 188
 </template>
82 189
 <script>
83 190
   import axios from 'axios'
84 191
   import { getChargePrint } from '@/api/project/project'
192
+  import { uParseTime } from '@/utils/tools'
85 193
 
86 194
   export default {
87 195
     data() {
@@ -107,7 +215,8 @@
107 215
     },
108 216
     props: {
109 217
       paramsObj: Object,
110
-      info: Object
218
+      info: Object,
219
+      balanceAccounts:Object
111 220
     },
112 221
     methods: {
113 222
       getName(list) {
@@ -315,7 +424,13 @@
315 424
             console.log('hispatient', histpatient)
316 425
           }
317 426
         })
318
-      }
427
+      },
428
+      getTime(value, temp) {
429
+        if (value != undefined) {
430
+            return uParseTime(value, temp)
431
+        }
432
+        return ''
433
+      },
319 434
     },
320 435
     mounted() {
321 436
       this.org_id = this.$store.getters.xt_user.org_id

File diff suppressed because it is too large
+ 964 - 723
src/xt_pages/outpatientCharges/outpatientChargesManagement.vue


+ 307 - 266
src/xt_pages/outpatientCharges/summary.vue View File

@@ -1,201 +1,201 @@
1 1
 <template>
2
-  <div class="main-contain outpatientChargesManagement">
3
-    <div class="position">
4
-      <bread-crumb :crumbs='crumbs'></bread-crumb>
5
-    </div>
6
-    <div class="app-container">
7
-      <div style="display: flex;justify-content: space-between;margin-bottom:10px;">
8
-        <div>
9
-          <el-input size="small" style="width:150px;" v-model="keywords"
10
-                    class="filter-item"/>
11
-          <el-button size="small" style="margin-left:10px;" class="filter-item" type="primary"
12
-                     @click="searchAction">
13
-            搜索
14
-          </el-button>
15
-          <el-select size="small" v-model="admin_user_id" placeholder="请选择"
16
-                     style="width:150px;margin-left:10px;" @change="changeDoctor">
17
-            <el-option
18
-              label="全部"
19
-              value="0">
20
-            </el-option>
21
-            <el-option
22
-              v-for="item,index in doctors"
23
-              :key="index"
24
-              :label="item.user_name"
25
-              :value="item.admin_user_id">
26
-            </el-option>
27
-          </el-select>
28
-          <el-date-picker size="small" v-model="start_time" prefix-icon="el-icon-date"
29
-                          @change="handleStartTimeChange" :editable="false" :clearable="false"
30
-                          style="width: 196px;margin-right:10px;" type="date" placeholder="选择开始日期"
31
-                          format="yyyy-MM-dd"
32
-                          value-format="yyyy-MM-dd"
33
-                          align="right"></el-date-picker>
34
-
35
-          <el-date-picker size="small" v-model="end_time" prefix-icon="el-icon-date"
36
-                          @change="handleEndTimeChange" :editable="false" :clearable="false"
37
-                          style="width: 196px;margin-right:10px;" type="date" placeholder="选择结束日期"
38
-                          format="yyyy-MM-dd"
39
-                          value-format="yyyy-MM-dd"
40
-                          align="right"></el-date-picker>
41
-          <!--<el-radio v-model="radio" label="1">明细</el-radio>-->
42
-          <!--<el-radio v-model="radio" label="2">汇总</el-radio>-->
2
+    <div class="main-contain outpatientChargesManagement">
3
+        <div class="position">
4
+            <bread-crumb :crumbs='crumbs'></bread-crumb>
43 5
         </div>
44
-        <div>
45
-          <!-- <el-popover
46
-            placement="bottom"
47
-            width="210"
48
-            trigger="click">
49
-            <el-button size="small" ref="button_two" @click="open(1)">打印清单</el-button>
50
-            <el-button size="small" ref="button_six" @click="open(2)">打印汇总</el-button>
51
-            <el-button slot="reference" style="margin:0 10px;" type="primary" size="small">打印</el-button>
52
-
53
-          </el-popover> -->
54
-          <el-button size="small" type="primary" @click="export_detail">报表下载</el-button>
6
+        <div class="app-container">
7
+            <div style="display: flex;justify-content: space-between;margin-bottom:10px;">
8
+                <div>
9
+                    <el-input size="small" style="width:150px;" v-model="keywords"
10
+                              class="filter-item"/>
11
+                    <el-button size="small" style="margin-left:10px;" class="filter-item" type="primary"
12
+                               @click="searchAction">
13
+                        搜索
14
+                    </el-button>
15
+                    <el-select size="small" v-model="admin_user_id" placeholder="请选择"
16
+                               style="width:150px;margin-left:10px;" @change="changeDoctor">
17
+                        <el-option
18
+                                label="全部"
19
+                                value="0">
20
+                        </el-option>
21
+                        <el-option
22
+                                v-for="item,index in doctors"
23
+                                :key="index"
24
+                                :label="item.user_name"
25
+                                :value="item.admin_user_id">
26
+                        </el-option>
27
+                    </el-select>
28
+                    <el-date-picker size="small" v-model="start_time" prefix-icon="el-icon-date"
29
+                                    @change="handleStartTimeChange" :editable="false" :clearable="false"
30
+                                    style="width: 196px;margin-right:10px;" type="date" placeholder="选择开始日期"
31
+                                    format="yyyy-MM-dd"
32
+                                    value-format="yyyy-MM-dd"
33
+                                    align="right"></el-date-picker>
34
+
35
+                    <el-date-picker size="small" v-model="end_time" prefix-icon="el-icon-date"
36
+                                    @change="handleEndTimeChange" :editable="false" :clearable="false"
37
+                                    style="width: 196px;margin-right:10px;" type="date" placeholder="选择结束日期"
38
+                                    format="yyyy-MM-dd"
39
+                                    value-format="yyyy-MM-dd"
40
+                                    align="right"></el-date-picker>
41
+                    <!--<el-radio v-model="radio" label="1">明细</el-radio>-->
42
+                    <!--<el-radio v-model="radio" label="2">汇总</el-radio>-->
43
+                </div>
44
+                <div>
45
+                    <!-- <el-popover
46
+                      placement="bottom"
47
+                      width="210"
48
+                      trigger="click">
49
+                      <el-button size="small" ref="button_two" @click="open(1)">打印清单</el-button>
50
+                      <el-button size="small" ref="button_six" @click="open(2)">打印汇总</el-button>
51
+                      <el-button slot="reference" style="margin:0 10px;" type="primary" size="small">打印</el-button>
52
+
53
+                    </el-popover> -->
54
+                    <el-button size="small" type="primary" @click="export_detail">报表下载</el-button>
55
+                </div>
56
+            </div>
57
+            <el-table :data="tableData" border style="width: 100%;" :row-style="{ color: '#303133' }"
58
+                      :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
59
+                      highlight-current-row>
60
+                <el-table-column
61
+                        prop="date"
62
+                        label="序号"
63
+                        width="60"
64
+                        align="center"
65
+                        type="index"
66
+                >
67
+                </el-table-column>
68
+                <el-table-column align="center" width="100" prop="name" label="就诊号">
69
+                    <template slot-scope="scope">{{ scope.row.mdtrt_id }}</template>
70
+                </el-table-column>
71
+                <el-table-column align="center" width="90" prop="name" label="患者名字">
72
+                    <template slot-scope="scope">{{ scope.row.patient.name }}</template>
73
+                </el-table-column>
74
+                <!--<el-table-column align="center" prop="name" label="患者类型">-->
75
+                <!--<template slot-scope="scope"></template>-->
76
+                <!--</el-table-column>-->
77
+
78
+                <el-table-column align="center" width="90" prop="name" label="应收金额">
79
+                    <template slot-scope="scope">{{scope.row.medfee_sumamt}}</template>
80
+                </el-table-column>
81
+                <el-table-column align="center" width="90" prop="name" label="实收金额">
82
+                    <template slot-scope="scope">{{scope.row.reality_price}}</template>
83
+                </el-table-column>
84
+                <el-table-column align="center" width="90" prop="name" label="科室">
85
+                    <template slot-scope="scope">{{scope.row.department_name}}</template>
86
+                </el-table-column>
87
+                <el-table-column align="center" width="100" prop="name" label="收费日期">
88
+                    <template slot-scope="scope">
89
+                        {{scope.row.setl_time?scope.row.setl_time:getTimes(scope.row.settle_accounts_date)}}
90
+                    </template>
91
+                </el-table-column>
92
+                <el-table-column align="center" width="90" prop="name" label="收费员">
93
+                    <template slot-scope="scope">{{ getName(scope.row.creator) }}</template>
94
+                </el-table-column>
95
+                <el-table-column align="center" width="80" prop="name" label="状态">
96
+                    <template slot-scope="scope">
97
+                        <div v-if="scope.row.order_status == 1">待结算</div>
98
+                        <div v-if="scope.row.order_status == 2">已结算</div>
99
+                        <div v-if="scope.row.order_status == 3">已退费</div>
100
+                    </template>
101
+                </el-table-column>
102
+                <el-table-column align="center" prop="name" label="操作">
103
+                    <template slot-scope="scope">
104
+                        <el-button size="mini" type="primary" @click="toDetail(scope.row)">详情</el-button>
105
+                        <el-button size="mini" type="primary" @click="toPrint(scope.row)"
106
+                                   v-if="(scope.row.order_status == 2 && $store.getters.xt_user.org_id == 10138)  || (scope.row.order_status == 2 && $store.getters.xt_user.org_id == 9504) || (scope.row.order_status == 2 && $store.getters.xt_user.org_id == 9919) ||  ($store.getters.xt_user.org_id == 10106) ||  (scope.row.order_status == 2 && $store.getters.xt_user.org_id == 4) || (scope.row.order_status == 2 && $store.getters.xt_user.org_id == 9990)">
107
+                            结算单
108
+                        </el-button>
109
+                        <el-button size="mini" type="primary" @click="uploadInfo(scope.row)"
110
+                                   v-if="scope.row.order_status == 2&& scope.row.result.id == 0">
111
+                            上传结算清单
112
+                        </el-button>
113
+                        <el-button size="mini" type="primary"
114
+                                   v-if="scope.row.order_status == 2 && $store.getters.xt_user.org_id == 10106"
115
+                                   @click="settlementPrint(scope.row)">结算单
116
+                        </el-button>
117
+                        <el-button size="mini" type="primary" @click="toRefund(scope.row)">
118
+                            退费
119
+                        </el-button>
120
+                        <el-button size="mini" type="primary" @click="invoicePrint(scope.row)">打印发票</el-button>
121
+                    </template>
122
+                </el-table-column>
123
+            </el-table>
124
+            <el-pagination
125
+                    @size-change="handleSizeChange"
126
+                    @current-change="handleCurrentChange"
127
+                    :page-sizes="[10, 50, 100]"
128
+                    :page-size="10"
129
+                    background
130
+                    style="margin-top:20px;float: right"
131
+                    layout="total, sizes, prev, pager, next, jumper"
132
+                    :total="total"
133
+
134
+            >
135
+            </el-pagination>
55 136
         </div>
56
-      </div>
57
-      <el-table :data="tableData" border style="width: 100%;" :row-style="{ color: '#303133' }"
58
-                :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
59
-                highlight-current-row>
60
-        <el-table-column
61
-          prop="date"
62
-          label="序号"
63
-          width="60"
64
-          align="center"
65
-          type="index"
66
-        >
67
-        </el-table-column>
68
-        <el-table-column align="center" width="100" prop="name" label="就诊号">
69
-          <template slot-scope="scope">{{ scope.row.mdtrt_id }}</template>
70
-        </el-table-column>
71
-        <el-table-column align="center" width="90" prop="name" label="患者名字">
72
-          <template slot-scope="scope">{{ scope.row.patient.name }}</template>
73
-        </el-table-column>
74
-        <!--<el-table-column align="center" prop="name" label="患者类型">-->
75
-        <!--<template slot-scope="scope"></template>-->
76
-        <!--</el-table-column>-->
77
-
78
-        <el-table-column align="center" width="90" prop="name" label="应收金额">
79
-          <template slot-scope="scope">{{scope.row.medfee_sumamt}}</template>
80
-        </el-table-column>
81
-        <el-table-column align="center" width="90" prop="name" label="实收金额">
82
-          <template slot-scope="scope">{{scope.row.reality_price}}</template>
83
-        </el-table-column>
84
-        <el-table-column align="center" width="90" prop="name" label="科室">
85
-          <template slot-scope="scope">{{scope.row.department_name}}</template>
86
-        </el-table-column>
87
-        <el-table-column align="center" width="100" prop="name" label="收费日期">
88
-          <template slot-scope="scope">
89
-            {{scope.row.setl_time?scope.row.setl_time:getTimes(scope.row.settle_accounts_date)}}
90
-          </template>
91
-        </el-table-column>
92
-        <el-table-column align="center" width="90" prop="name" label="收费员">
93
-          <template slot-scope="scope">{{ getName(scope.row.creator) }}</template>
94
-        </el-table-column>
95
-        <el-table-column align="center" width="80" prop="name" label="状态">
96
-          <template slot-scope="scope">
97
-            <div v-if="scope.row.order_status == 1">待结算</div>
98
-            <div v-if="scope.row.order_status == 2">已结算</div>
99
-            <div v-if="scope.row.order_status == 3">已退费</div>
100
-          </template>
101
-        </el-table-column>
102
-        <el-table-column align="center" prop="name" label="操作">
103
-          <template slot-scope="scope">
104
-            <el-button size="mini" type="primary" @click="toDetail(scope.row)">详情</el-button>
105
-            <el-button size="mini" type="primary" @click="toPrint(scope.row)"
106
-                       v-if="(scope.row.order_status == 2 && $store.getters.xt_user.org_id == 10138)  || (scope.row.order_status == 2 && $store.getters.xt_user.org_id == 9504) || (scope.row.order_status == 2 && $store.getters.xt_user.org_id == 9919) ||  ($store.getters.xt_user.org_id == 10106) ||  (scope.row.order_status == 2 && $store.getters.xt_user.org_id == 4) || (scope.row.order_status == 2 && $store.getters.xt_user.org_id == 9990)">
107
-              结算单
108
-            </el-button>
109
-            <el-button size="mini" type="primary" @click="uploadInfo(scope.row)"
110
-                       v-if="scope.row.order_status == 2&& scope.row.result.id == 0">
111
-              上传结算清单
112
-            </el-button>
113
-            <el-button size="mini" type="primary"
114
-                       v-if="scope.row.order_status == 2 && $store.getters.xt_user.org_id == 10106"
115
-                       @click="settlementPrint(scope.row)">结算单
116
-            </el-button>
117
-            <el-button size="mini" type="primary" @click="toRefund(scope.row)">
118
-              退费
119
-            </el-button>
120
-            <el-button size="mini" type="primary" @click="invoicePrint(scope.row)">打印发票</el-button>
121
-          </template>
122
-        </el-table-column>
123
-      </el-table>
124
-      <el-pagination
125
-        @size-change="handleSizeChange"
126
-        @current-change="handleCurrentChange"
127
-        :page-sizes="[10, 50, 100]"
128
-        :page-size="10"
129
-        background
130
-        style="margin-top:20px;float: right"
131
-        layout="total, sizes, prev, pager, next, jumper"
132
-        :total="total"
133
-
134
-      >
135
-      </el-pagination>
136
-    </div>
137 137
 
138
-    <el-dialog
139
-      class="centerDialog"
140
-      width="1200px"
141
-      title="打印"
142
-      :visible.sync="statementVisible">
143
-      <!--<statementPrint ref="print" :paramsObj='orderObj'></statementPrint>-->
144
-      <new-statement-print ref="print" :paramsObj='orderObj'></new-statement-print>
145
-    </el-dialog>
146
-    <el-dialog
147
-      class="centerDialog"
148
-      width="900px"
149
-      title="打印"
150
-      :visible.sync="listVisible">
151
-      <listPrint></listPrint>
152
-    </el-dialog>
153
-    <el-dialog
154
-      class="centerDialog"
155
-      width="900px"
156
-      title="打印"
157
-      :visible.sync="allListVisible">
158
-      <allListPrint :paramsObj='paramsObj'></allListPrint>
159
-    </el-dialog>
160
-
161
-    <el-dialog
162
-      class="centerDialog"
163
-      width="1200px"
164
-      title="打印"
165
-      :visible.sync="statementVisible9504">
166
-      <!--<statementPrint ref="print" :paramsObj='orderObj'></statementPrint>-->
167
-      <!--<new-statement-print ref="print" :paramsObj='orderObj9504'></new-statement-print>-->
168
-      <new-statement-print-two ref="print" :paramsObj='orderObj9504'></new-statement-print-two>
169
-    </el-dialog>
170
-
171
-    <el-dialog
172
-      class="centerDialog"
173
-      width="1200px"
174
-      title="打印"
175
-      :visible.sync="invoiceVisible">
176
-      <invoice-print ref="print" :invoiceParams='invoiceParams'></invoice-print>
177
-    </el-dialog>
178
-    <el-dialog
179
-      class="centerDialog"
180
-      width="1200px"
181
-      title="打印"
182
-      :visible.sync="settlementVisible">
183
-      <settlement-print ref="print" :paramsObj='settlementObj'></settlement-print>
184
-    </el-dialog>
185
-
186
-  </div>
138
+        <el-dialog
139
+                class="centerDialog"
140
+                width="1200px"
141
+                title="打印"
142
+                :visible.sync="statementVisible">
143
+            <!--<statementPrint ref="print" :paramsObj='orderObj'></statementPrint>-->
144
+            <new-statement-print ref="print" :paramsObj='orderObj'></new-statement-print>
145
+        </el-dialog>
146
+        <el-dialog
147
+                class="centerDialog"
148
+                width="900px"
149
+                title="打印"
150
+                :visible.sync="listVisible">
151
+            <listPrint></listPrint>
152
+        </el-dialog>
153
+        <el-dialog
154
+                class="centerDialog"
155
+                width="900px"
156
+                title="打印"
157
+                :visible.sync="allListVisible">
158
+            <allListPrint :paramsObj='paramsObj'></allListPrint>
159
+        </el-dialog>
160
+
161
+        <el-dialog
162
+                class="centerDialog"
163
+                width="1200px"
164
+                title="打印"
165
+                :visible.sync="statementVisible9504">
166
+            <!--<statementPrint ref="print" :paramsObj='orderObj'></statementPrint>-->
167
+            <!--<new-statement-print ref="print" :paramsObj='orderObj9504'></new-statement-print>-->
168
+            <new-statement-print-two ref="print" :paramsObj='orderObj9504'></new-statement-print-two>
169
+        </el-dialog>
170
+
171
+        <el-dialog
172
+                class="centerDialog"
173
+                width="1200px"
174
+                title="打印"
175
+                :visible.sync="invoiceVisible">
176
+            <invoice-print ref="print" :invoiceParams='invoiceParams'></invoice-print>
177
+        </el-dialog>
178
+        <el-dialog
179
+                class="centerDialog"
180
+                width="1200px"
181
+                title="打印"
182
+                :visible.sync="settlementVisible">
183
+            <settlement-print ref="print" :paramsObj='settlementObj'></settlement-print>
184
+        </el-dialog>
185
+
186
+    </div>
187 187
 </template>
188 188
 
189 189
 
190 190
 <script>
191 191
   import BreadCrumb from '@/xt_pages/components/bread-crumb'
192
-  import {getDoctorList, getExportConsumeDetailList, getHisOrderList, Refund} from '@/api/his/his'
193
-  import {uParseTime} from '@/utils/tools'
192
+  import { getDoctorList, getExportConsumeDetailList, getHisOrderList, Refund } from '@/api/his/his'
193
+  import { uParseTime } from '@/utils/tools'
194 194
   import NewStatementPrint from './newStatementPrint'
195 195
   import listPrint from './listPrint'
196 196
   import allListPrint from './allListPrint'
197 197
   import NewStatementPrintTwo from './newStatementPrintTwo'
198
-  import {fetchAllAdminUsers} from '@/api/doctor'
198
+  import { fetchAllAdminUsers } from '@/api/doctor'
199 199
   import axios from 'axios'
200 200
   import invoicePrint from './invoicePrint'
201 201
   import settlementPrint from './settlementPrint'
@@ -217,8 +217,8 @@
217 217
         statementVisible9504: false,
218 218
         orderObj9504: {},
219 219
         crumbs: [
220
-          {path: false, name: '门诊收费'},
221
-          {path: false, name: '项目消费明细汇总'}
220
+          { path: false, name: '门诊收费' },
221
+          { path: false, name: '项目消费明细汇总' }
222 222
         ],
223 223
         tableData: [],
224 224
         limit: 10,
@@ -242,15 +242,15 @@
242 242
     },
243 243
     methods: {
244 244
       uploadInfo(row) {
245
-        var that = this;
245
+        var that = this
246 246
         axios.get('http://127.0.0.1:9532/api/settlelist/get', {
247 247
           params: {
248 248
             order_id: row.id,
249 249
             admin_user_id: this.$store.getters.xt_user.user.id
250 250
           }
251
-        }).then(function (response) {
251
+        }).then(function(response) {
252 252
           if (response.data.state == 0) {
253
-            that.$message.error(response.data.msg);
253
+            that.$message.error(response.data.msg)
254 254
             return false
255 255
           } else {
256 256
 
@@ -265,13 +265,12 @@
265 265
               })
266 266
 
267 267
             } else {
268
-              that.$message.success("上传成功");
268
+              that.$message.success('上传成功')
269 269
               row.result.id = response.data.data.result.id
270 270
             }
271 271
 
272
-
273 272
           }
274
-        }).catch(function (error) {
273
+        }).catch(function(error) {
275 274
         })
276 275
       },
277 276
 
@@ -291,8 +290,11 @@
291 290
         }
292 291
 
293 292
       }, toRefund(row) {
293
+
294
+
295
+
294 296
         if (this.$store.getters.xt_user.org_id == 9919 || this.$store.getters.xt_user.org_id == 4 || this.$store.getters.xt_user.org_id == 9538 || this.$store.getters.xt_user.org_id == 9671 || this.$store.getters.xt_user.org_id == 10106 || this.$store.getters.xt_user.org_id == 9990) {
295
-          var that = this;
297
+          var that = this
296 298
           this.$confirm('是否退费', '退费', {
297 299
             confirmButtonText: '确 定',
298 300
             cancelButtonText: '取 消',
@@ -302,14 +304,14 @@
302 304
               'order_id': row.id,
303 305
               'patient_id': row.patient_id,
304 306
               'record_time': that.getTimes(row.settle_accounts_date),
305
-              'admin_user_id': that.$store.getters.xt_user.user.id,
306
-            };
307
+              'admin_user_id': that.$store.getters.xt_user.user.id
308
+            }
307 309
             axios.get('http://127.0.0.1:9532/api/refund/post', {
308 310
               params: params
309 311
             })
310
-              .then(function (response) {
312
+              .then(function(response) {
311 313
                 if (response.data.state == 0) {
312
-                  that.$message.error(response.data.msg);
314
+                  that.$message.error(response.data.msg)
313 315
                   return false
314 316
                 } else {
315 317
                   if (response.data.data.failed_code == -10) {
@@ -322,17 +324,59 @@
322 324
                     }).catch(() => {
323 325
                     })
324 326
                   } else {
325
-                    that.$message({message: '退费成功', type: 'success', duration: 5000});
327
+                    that.$message({ message: '退费成功', type: 'success', duration: 5000 })
326 328
                     that.getHisOrderList()
327 329
 
328 330
                   }
329 331
                 }
330 332
               })
331
-              .catch(function (error) {
333
+              .catch(function(error) {
332 334
               })
333 335
           }).catch(() => {
334 336
           })
335 337
 
338
+        } else if (this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10138) {
339
+
340
+          this.$confirm('是否退费', '退费', {
341
+            confirmButtonText: '确 定',
342
+            cancelButtonText: '取 消',
343
+            type: 'warning'
344
+          }).then(() => {
345
+            let params = {
346
+              'order_id': row.id,
347
+              'patient_id': row.patient_id,
348
+              'record_time': that.getTimes(row.settle_accounts_date),
349
+              'admin_user_id': that.$store.getters.xt_user.user.id
350
+            }
351
+            axios.get('http://127.0.0.1:9532/sz/api/refund/get', {
352
+              params: params
353
+            })
354
+              .then(function(response) {
355
+                if (response.data.state == 0) {
356
+                  that.$message.error(response.data.msg)
357
+                  return false
358
+                } else {
359
+                  if (response.data.data.failed_code == -10) {
360
+                    that.$confirm(response.data.data.msg, '医保错误信息', {
361
+                      confirmButtonText: '确 定',
362
+                      type: 'warning'
363
+                    }).then(() => {
364
+
365
+                    }).catch(() => {
366
+                    })
367
+
368
+                  } else {
369
+                    that.$message({ message: '退费成功', type: 'success', duration: 5000 })
370
+                    that.getHisOrderList()
371
+                  }
372
+                }
373
+              })
374
+              .catch(function(error) {
375
+              })
376
+
377
+          }).catch(() => {
378
+          })
379
+
336 380
         } else {
337 381
           this.$confirm('是否退费', '退费', {
338 382
             confirmButtonText: '确 定',
@@ -344,13 +388,13 @@
344 388
               'patient_id': this.patientInfo.id,
345 389
               'record_time': this.record_date
346 390
 
347
-            };
391
+            }
348 392
             Refund(params).then(response => {
349 393
               if (response.data.state == 0) {
350
-                this.$message.error(response.data.msg);
394
+                this.$message.error(response.data.msg)
351 395
                 return false
352 396
               } else {
353
-                this.$message({message: '退费成功', type: 'success'});
397
+                this.$message({ message: '退费成功', type: 'success' })
354 398
                 this.getHisOrderList()
355 399
               }
356 400
             })
@@ -360,65 +404,64 @@
360 404
       },
361 405
       toPrint(row) {
362 406
         if (this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10028 || this.$store.getters.xt_user.org_id == 10138) {
363
-          this.statementVisible9504 = true;
407
+          this.statementVisible9504 = true
364 408
           let obj = {
365 409
             order_id: row.id,
366 410
             patient_id: row.patient_id,
367 411
             record_time: this.getTimes(row.settle_accounts_date),
368 412
             admin_user_id: this.$store.getters.xt_user.user.id
369
-          };
413
+          }
370 414
           this.orderObj9504 = obj
371 415
         } else {
372
-          this.statementVisible = true;
416
+          this.statementVisible = true
373 417
           let obj = {
374 418
             order_id: row.id,
375
-            settle_type:row.settle_type,
376
-            start_time:row.settle_start_time,
377
-            end_time:row.settle_end_time,
378
-          };
419
+            settle_type: row.settle_type,
420
+            start_time: row.settle_start_time,
421
+            end_time: row.settle_end_time
422
+          }
379 423
           this.orderObj = obj
380 424
         }
381 425
 
382 426
       },
383 427
       settlementPrint(row) {
384
-        this.settlementVisible = true;
428
+        this.settlementVisible = true
385 429
         let obj = {
386 430
           order_id: row.id
387
-        };
431
+        }
388 432
         this.settlementObj = obj
389 433
       },
390 434
       export_detail() {
391 435
         let params = {
392 436
           start_time: this.start_time,
393 437
           end_time: this.end_time,
394
-          p_type: 2,
395
-        };
438
+          p_type: 2
439
+        }
396 440
         getExportConsumeDetailList(params).then(response => {
397 441
           if (response.data.state == 0) {
398
-            this.$message.error(response.data.msg);
442
+            this.$message.error(response.data.msg)
399 443
             return false
400 444
           } else {
401 445
 
402
-            let list = [];
446
+            let list = []
403 447
             for (let i = 0; i < response.data.data.order.length; i++) {
404
-              let order = response.data.data.order[i];
405
-              let number = '';
406
-              let name = '';
407
-              let department = '';
408
-              let doctor_name = '';
409
-              let balance_accounts = '';
410
-              let order_status = '';
411
-              let charge_name = '';
412
-
413
-              let insutypeName = "";
414
-
415
-              let time = "";
448
+              let order = response.data.data.order[i]
449
+              let number = ''
450
+              let name = ''
451
+              let department = ''
452
+              let doctor_name = ''
453
+              let balance_accounts = ''
454
+              let order_status = ''
455
+              let charge_name = ''
456
+
457
+              let insutypeName = ''
458
+
459
+              let time = ''
416 460
               if (order.his_patient != null && order.his_patient.number.length > 0) {
417 461
                 number = order.his_patient.number
418 462
 
419 463
               }
420 464
 
421
-
422 465
               if (order.his_patient != null) {
423 466
                 if (order.his_patient.balance_accounts_type == 1) {
424 467
                   balance_accounts = '自费'
@@ -448,14 +491,12 @@
448 491
               }
449 492
               if (order.insutype == '390') {
450 493
 
451
-                insutypeName = "城乡居民基本医疗保险"
494
+                insutypeName = '城乡居民基本医疗保险'
452 495
               } else if (order.insutype == '310') {
453
-                insutypeName = "职工基本医疗保险"
454
-
496
+                insutypeName = '职工基本医疗保险'
455 497
 
456 498
               }
457 499
 
458
-
459 500
               if (order.order_status == 1) {
460 501
                 order_status = '待结算'
461 502
               }
@@ -474,36 +515,38 @@
474 515
                 time = this.getTimes(order.settle_accounts_date)
475 516
               }
476 517
 
477
-              var hifmi_pay = 0.00;
518
+              var hifmi_pay = 0.00
478 519
 
479
-              if(order.setl_detail.length > 0){
480
-                var jsonObj = JSON.parse(order.setl_detail);
520
+              if (order.setl_detail.length > 0) {
521
+                var jsonObj = JSON.parse(order.setl_detail)
481 522
                 for (let i = 0; i < jsonObj.length; i++) {
482 523
                   if (order.insutype == '310') {
483 524
                     if (jsonObj[i].fund_pay_type == '310300') {
484 525
                       hifmi_pay = jsonObj[i].fund_payamt
485 526
                     }
486 527
 
487
-                  } else if (order.insutype == '390')
528
+                  } else if (order.insutype == '390') {
488 529
                     if (order.fund_pay_type == '390200') {
489 530
                       hifmi_pay = jsonObj[i].fund_payamt
490 531
                     }
532
+                  }
491 533
                 }
492 534
               }
493
-              var hifmi_pay = 0.00;
535
+              var hifmi_pay = 0.00
494 536
 
495
-              if(order.setl_detail.length > 0){
496
-                var jsonObj = JSON.parse(order.setl_detail);
537
+              if (order.setl_detail.length > 0) {
538
+                var jsonObj = JSON.parse(order.setl_detail)
497 539
                 for (let i = 0; i < jsonObj.length; i++) {
498 540
                   if (order.insutype == '310') {
499 541
                     if (jsonObj[i].fund_pay_type == '310300') {
500 542
                       hifmi_pay = jsonObj[i].fund_payamt
501 543
                     }
502 544
                   }
503
-                  if (order.insutype == '390')
545
+                  if (order.insutype == '390') {
504 546
                     if (jsonObj[i].fund_pay_type == '390200') {
505 547
                       hifmi_pay = jsonObj[i].fund_payamt
506 548
                     }
549
+                  }
507 550
                 }
508 551
               }
509 552
 
@@ -535,14 +578,14 @@
535 578
                 '收费时间': order.setl_time,
536 579
                 '收费状态': order_status,
537 580
                 '退费日期': ''
538
-              };
581
+              }
539 582
 
540 583
               list.push(obj)
541 584
             }
542 585
             import('@/vendor/Export2Excel').then(excel => {
543
-              const tHeader = ['就诊号', '患者姓名', '开处时间', '险种类型', '应收金额', '实收金额', '医保统筹金额', '大额基金金额', '大病基金金额', '补充保险基金金额', '医疗救助基金金额', '公务员基金', '个人支付基金', '个人账户支付金额', '科室', '医生姓名', '收费类别', '收费者姓名', '总金额', '现金支付', '账户支付', '支付宝支付', '微信支付', '其他支付', '收费时间', '收费状态', '退费日期'];
544
-              const filterVal = ['就诊号', '患者姓名', '开处时间', '险种类型', '应收金额', '实收金额', '医保统筹金额', '大额基金金额', '大病基金金额', '补充保险基金金额', '医疗救助基金金额', '公务员基金', '个人支付基金', '个人账户支付金额', '科室', '医生姓名', '收费类别', '收费者姓名', '总金额', '现金支付', '账户支付', '支付宝支付', '微信支付', '其他支付', '收费时间', '收费状态', '退费日期'];
545
-              const data = this.formatJson(filterVal, list);
586
+              const tHeader = ['就诊号', '患者姓名', '开处时间', '险种类型', '应收金额', '实收金额', '医保统筹金额', '大额基金金额', '大病基金金额', '补充保险基金金额', '医疗救助基金金额', '公务员基金', '个人支付基金', '个人账户支付金额', '科室', '医生姓名', '收费类别', '收费者姓名', '总金额', '现金支付', '账户支付', '支付宝支付', '微信支付', '其他支付', '收费时间', '收费状态', '退费日期']
587
+              const filterVal = ['就诊号', '患者姓名', '开处时间', '险种类型', '应收金额', '实收金额', '医保统筹金额', '大额基金金额', '大病基金金额', '补充保险基金金额', '医疗救助基金金额', '公务员基金', '个人支付基金', '个人账户支付金额', '科室', '医生姓名', '收费类别', '收费者姓名', '总金额', '现金支付', '账户支付', '支付宝支付', '微信支付', '其他支付', '收费时间', '收费状态', '退费日期']
588
+              const data = this.formatJson(filterVal, list)
546 589
               excel.export_json_to_excel({
547 590
                 header: tHeader,
548 591
                 data,
@@ -557,30 +600,30 @@
557 600
         return jsonData.map(v => filterVal.map(j => v[j]))
558 601
       },
559 602
       changeDoctor() {
560
-        this.page = 1;
561
-        this.keywords = '';
603
+        this.page = 1
604
+        this.keywords = ''
562 605
         this.getHisOrderList()
563 606
       },
564 607
       handleSizeChange(limit) {
565
-        this.limit = limit;
608
+        this.limit = limit
566 609
         this.getHisOrderList()
567 610
 
568 611
       }, handleCurrentChange(page) {
569
-        this.page = page;
612
+        this.page = page
570 613
         this.getHisOrderList()
571 614
 
572 615
       },
573 616
       handleStartTimeChange() {
574
-        this.page = 1;
575
-        this.keywords = '';
617
+        this.page = 1
618
+        this.keywords = ''
576 619
         this.getHisOrderList()
577 620
       }, handleEndTimeChange() {
578
-        this.page = 1;
579
-        this.keywords = '';
621
+        this.page = 1
622
+        this.keywords = ''
580 623
         this.getHisOrderList()
581 624
       },
582 625
       searchAction() {
583
-        this.page = 1;
626
+        this.page = 1
584 627
         this.getHisOrderList()
585 628
 
586 629
       },
@@ -602,14 +645,14 @@
602 645
           start_time: this.start_time,
603 646
           end_time: this.end_time,
604 647
           type: this.admin_user_id,
605
-          p_type: 2,
606
-        };
648
+          p_type: 2
649
+        }
607 650
         getHisOrderList(params).then(response => {
608 651
           if (response.data.state == 0) {
609
-            this.$message.error(response.data.msg);
652
+            this.$message.error(response.data.msg)
610 653
             return false
611 654
           } else {
612
-            this.tableData = response.data.data.order;
655
+            this.tableData = response.data.data.order
613 656
             this.total = response.data.data.total
614 657
           }
615 658
         })
@@ -617,7 +660,7 @@
617 660
       }, getDoctorList() {
618 661
         getDoctorList().then(response => {
619 662
           if (response.data.state == 0) {
620
-            this.$message.error(response.data.msg);
663
+            this.$message.error(response.data.msg)
621 664
             return false
622 665
           } else {
623 666
             this.doctors = response.data.data.doctors
@@ -632,7 +675,7 @@
632 675
         }
633 676
       },
634 677
       invoicePrint(obj) {
635
-        console.log(obj);
678
+        console.log(obj)
636 679
         let paramsObj = {
637 680
           order_id: obj.id,
638 681
           patient_id: obj.patient_id,
@@ -640,18 +683,16 @@
640 683
           age: obj.age,
641 684
           gend: obj.gend,
642 685
           setl_time: obj.setl_time
643
-        };
644
-        this.invoiceParams = paramsObj;
686
+        }
687
+        this.invoiceParams = paramsObj
645 688
         this.invoiceVisible = true
646 689
       }
647 690
     }, created() {
648 691
 
649
-
650
-      this.fetchAllAdminUsers();
651
-      this.getDoctorList();
692
+      this.fetchAllAdminUsers()
693
+      this.getDoctorList()
652 694
       this.getHisOrderList()
653 695
 
654
-
655 696
     }
656 697
   }
657 698
 </script>

+ 34 - 0
src/xt_pages/outpatientDoctorStation/components/deskPrescription.vue View File

@@ -2494,6 +2494,40 @@
2494 2494
 
2495 2495
       comfirm() {
2496 2496
 
2497
+        // if(this.curStatus == 1  && this.rightTab == 2){
2498
+        //   for(let i = 0; i < this.curDrugs.length; i++){
2499
+        //     if(this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10138 || this.$store.getters.xt_user.org_id == 10028){
2500
+        //
2501
+        //       if(this.curPrescriptions.med_type != 13 && this.curDrugs[i].drug.is_special_diseases == 1){
2502
+        //         this.$message.error('该处方不属于特病类型处方,无法开特病类型的药')
2503
+        //         return
2504
+        //       }
2505
+        //
2506
+        //       if(this.curPrescriptions.med_type == 13 && this.curDrugs[i].drug.is_special_diseases != 1){
2507
+        //         this.$message.error('该处方属于特病类型处方,开非特病类型的药')
2508
+        //         return
2509
+        //       }
2510
+        //
2511
+        //
2512
+        //     }else{
2513
+        //
2514
+        //       if(this.curPrescriptions.med_type != 14 && this.curDrugs[i].drug.is_special_diseases == 1){
2515
+        //         this.$message.error('该处方不属于特病类型处方,无法开特病类型的药')
2516
+        //         return
2517
+        //       }
2518
+        //
2519
+        //       if(this.curPrescriptions.med_type == 14 && this.curDrugs[i].drug.is_special_diseases != 1){
2520
+        //         this.$message.error('该处方属于特病类型处方,开非特病类型的药')
2521
+        //         return
2522
+        //       }
2523
+        //
2524
+        //
2525
+        //
2526
+        //     }
2527
+        //
2528
+        //   }
2529
+        // }
2530
+
2497 2531
         // if (this.curPrescriptions.order_status == 2) {
2498 2532
         //   this.$message.error('该处方已经结算,无法继续添加药品或者项目')
2499 2533
         //   this.teamList = []

+ 15 - 6
src/xt_pages/outpatientDoctorStation/components/inquiriesDetail.vue View File

@@ -8,7 +8,12 @@
8 8
     class="detailDialog"
9 9
   >
10 10
     <div style="position: absolute;right:20px;z-index:99">
11
-      <el-button v-if="activeName == 'first'" @click="open(1)" type="primary">打印</el-button>
11
+      <!-- <el-button v-if="activeName == 'first'" @click="open(1)" type="primary">打印</el-button> -->
12
+      <el-popover placement="bottom" width="200" trigger="click">
13
+          <el-button size="small" ref="button_two" @click="open(1)">处方单</el-button>
14
+          <el-button size="small" ref="button_six" @click="open(3)">治疗单</el-button>
15
+          <el-button slot="reference" style="margin:0 10px;" type="primary" size="small">打印</el-button>
16
+      </el-popover>
12 17
       <el-button v-if="activeName == 'second'" @click="open(2)" type="primary">打印</el-button>
13 18
     </div>
14 19
     <el-tabs v-model="activeName">
@@ -110,7 +115,8 @@
110 115
       :visible.sync="innerVisible"
111 116
       append-to-body>
112 117
 
113
-      <print v-if="activeName == 'first'" :paramsObj='paramsObj'></print>
118
+      <print v-if="activeName == 'first' && prescriptionsType == 1" :paramsObj='paramsObj'></print>
119
+      <treatPrint v-if="activeName == 'first' && prescriptionsType == 3" :paramsObj='paramsObj'></treatPrint>
114 120
       <recordPrint v-if="activeName == 'second'" ref="recordPrint" :patientid="patientid"></recordPrint>
115 121
     </el-dialog>
116 122
   </el-dialog>
@@ -128,9 +134,10 @@
128 134
   import moment from 'moment';
129 135
   import print from '../print'
130 136
   import recordPrint from '../recordPrint'
137
+  import treatPrint from '../treatPrint'
131 138
 
132 139
   export default {
133
-    components: { NewPrescriptionTable,print,recordPrint },
140
+    components: { NewPrescriptionTable,print,recordPrint,treatPrint },
134 141
     data() {
135 142
       return {
136 143
         visible: false,
@@ -164,12 +171,14 @@
164 171
         departmentList:[],
165 172
         innerVisible:false,
166 173
         paramsObj:{},
167
-        patientid:''
174
+        patientid:'',
175
+        prescriptionsType:1
168 176
       }
169 177
     },
170 178
     methods: {
171 179
       open(index){
172
-        if(index == 1){
180
+        this.prescriptionsType = index
181
+        if(index == 1 || index == 3){
173 182
            var arr= []
174 183
            for(let i=0;i<this.prescriptions.length;i++){
175 184
               arr.push(this.prescriptions[i].id)
@@ -320,7 +329,7 @@
320 329
                 type: response.data.data.prescription[i].type
321 330
               }
322 331
               this.prescriptions.push(obj)
323
-              console.log(this.prescriptions)
332
+              console.log(22222,this.prescriptions)
324 333
 
325 334
               this.curPrescriptions = this.prescriptions[0]
326 335
             }

+ 99 - 23
src/xt_pages/outpatientDoctorStation/doctorDesk.vue View File

@@ -1383,14 +1383,25 @@
1383 1383
                     addition: tempAddition,
1384 1384
                     order_status: 1,
1385 1385
                     pre_time: preTime,
1386
-                    med_type: "",
1386
+                    med_type:"",
1387
+
1387 1388
                   };
1388
-                  if(this.$store.getters.xt_user.org_id == 10028 || this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10138){
1389
-                    obj.med_type = 13
1389
+                  if(prescription.med_type == 0 || prescription.med_type == ""){
1390
+
1391
+                    obj.med_type = ""
1390 1392
 
1391 1393
                   }else{
1392
-                    obj.med_type = 14
1393 1394
 
1395
+                    obj.med_type = parseInt(prescription.med_type)
1396
+                  }
1397
+                  if(obj.med_type== 0 || obj.med_type == "") {
1398
+                    if (this.$store.getters.xt_user.org_id == 10028 || this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10138) {
1399
+                      obj.med_type = 13
1400
+
1401
+                    } else {
1402
+                      obj.med_type = 14
1403
+
1404
+                    }
1394 1405
                   }
1395 1406
                   this.prescriptions.push(obj)
1396 1407
                 }
@@ -1795,6 +1806,9 @@
1795 1806
                         var preTime = nowTime
1796 1807
 
1797 1808
 
1809
+
1810
+
1811
+
1798 1812
                         let index = i + 1;
1799 1813
                         let obj = {
1800 1814
                           id: 0,
@@ -1804,13 +1818,27 @@
1804 1818
                           addition: tempAddition,
1805 1819
                           order_status: 1,
1806 1820
                           pre_time: preTime,
1807
-                          med_type: "",
1821
+                          med_type:"",
1822
+
1808 1823
                         };
1809
-                        if(this.$store.getters.xt_user.org_id == 10028 || this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10138){
1810
-                          obj.med_type = 13
1824
+                        if(prescription.med_type == 0 || prescription.med_type == ""){
1825
+
1826
+                          obj.med_type = ""
1827
+
1811 1828
                         }else{
1812
-                          obj.med_type = 14
1813 1829
 
1830
+                          obj.med_type =  parseInt(prescription.med_type)
1831
+                        }
1832
+
1833
+
1834
+                        if(obj.med_type== 0 || obj.med_type == "") {
1835
+                          if (this.$store.getters.xt_user.org_id == 10028 || this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10138) {
1836
+                            obj.med_type = 13
1837
+
1838
+                          } else {
1839
+                            obj.med_type = 14
1840
+
1841
+                          }
1814 1842
                         }
1815 1843
                         this.prescriptions.push(obj)
1816 1844
                       }
@@ -2203,7 +2231,6 @@
2203 2231
 
2204 2232
                         var preTime = nowTime
2205 2233
 
2206
-
2207 2234
                         let index = i + 1;
2208 2235
                         let obj = {
2209 2236
                           id: 0,
@@ -2213,13 +2240,27 @@
2213 2240
                           addition: tempAddition,
2214 2241
                           order_status: 1,
2215 2242
                           pre_time: preTime,
2216
-                          med_type: "",
2243
+                          med_type:"",
2244
+
2217 2245
                         };
2218
-                        if(this.$store.getters.xt_user.org_id == 10028 || this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10138){
2219
-                          obj.med_type = 13
2246
+                        if(prescription.med_type == 0 || prescription.med_type == ""){
2247
+
2248
+                          obj.med_type = ""
2249
+
2220 2250
                         }else{
2221
-                          obj.med_type = 14
2222 2251
 
2252
+                          obj.med_type =  parseInt(prescription.med_type)
2253
+                        }
2254
+
2255
+
2256
+                        if(obj.med_type== 0 || obj.med_type == "") {
2257
+                          if (this.$store.getters.xt_user.org_id == 10028 || this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10138) {
2258
+                            obj.med_type = 13
2259
+
2260
+                          } else {
2261
+                            obj.med_type = 14
2262
+
2263
+                          }
2223 2264
                         }
2224 2265
                         this.prescriptions.push(obj)
2225 2266
                       }
@@ -2621,12 +2662,24 @@
2621 2662
                           order_status: 1,
2622 2663
                           pre_time: preTime,
2623 2664
                           med_type:"",
2665
+
2624 2666
                         };
2625
-                        if(this.$store.getters.xt_user.org_id == 10028 || this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10138){
2626
-                          obj.med_type = 13
2667
+                        if(prescription.med_type == 0 || prescription.med_type == ""){
2668
+
2669
+                          obj.med_type = ""
2670
+
2627 2671
                         }else{
2628
-                          obj.med_type = 14
2629 2672
 
2673
+                          obj.med_type = parseInt(prescription.med_type)
2674
+                        }
2675
+                        if(obj.med_type== 0 || obj.med_type == "") {
2676
+                          if (this.$store.getters.xt_user.org_id == 10028 || this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10138) {
2677
+                            obj.med_type = 13
2678
+
2679
+                          } else {
2680
+                            obj.med_type = 14
2681
+
2682
+                          }
2630 2683
                         }
2631 2684
                         this.prescriptions.push(obj)
2632 2685
                       }
@@ -3073,7 +3126,6 @@
3073 3126
 
3074 3127
                       var preTime = nowTime
3075 3128
 
3076
-
3077 3129
                       let index = i + 1;
3078 3130
                       let obj = {
3079 3131
                         id: 0,
@@ -3084,12 +3136,24 @@
3084 3136
                         order_status: 1,
3085 3137
                         pre_time: preTime,
3086 3138
                         med_type:"",
3139
+
3087 3140
                       };
3088
-                      if(this.$store.getters.xt_user.org_id == 10028 || this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10138){
3089
-                        obj.med_type = 13
3141
+                      if(prescription.med_type == 0 || prescription.med_type == ""){
3142
+
3143
+                        obj.med_type = ""
3144
+
3090 3145
                       }else{
3091
-                        obj.med_type = 14
3092 3146
 
3147
+                        obj.med_type = parseInt(prescription.med_type)
3148
+                      }
3149
+                      if(obj.med_type== 0 || obj.med_type == "") {
3150
+                        if (this.$store.getters.xt_user.org_id == 10028 || this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10138) {
3151
+                          obj.med_type = 13
3152
+
3153
+                        } else {
3154
+                          obj.med_type = 14
3155
+
3156
+                        }
3093 3157
                       }
3094 3158
                       this.prescriptions.push(obj)
3095 3159
                     }
@@ -3492,12 +3556,24 @@
3492 3556
                       order_status: 1,
3493 3557
                       pre_time: preTime,
3494 3558
                       med_type:"",
3559
+
3495 3560
                     };
3496
-                    if(this.$store.getters.xt_user.org_id == 10028 || this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10138){
3497
-                      obj.med_type = 13
3561
+                    if(prescription.med_type == 0 || prescription.med_type == ""){
3562
+
3563
+                      obj.med_type = ""
3564
+
3498 3565
                     }else{
3499
-                      obj.med_type = 14
3500 3566
 
3567
+                      obj.med_type =  parseInt(prescription.med_type)
3568
+                    }
3569
+                    if(obj.med_type== 0 || obj.med_type == "") {
3570
+                      if (this.$store.getters.xt_user.org_id == 10028 || this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10138) {
3571
+                        obj.med_type = 13
3572
+
3573
+                      } else {
3574
+                        obj.med_type = 14
3575
+
3576
+                      }
3501 3577
                     }
3502 3578
                     this.prescriptions.push(obj)
3503 3579
                   }

+ 99 - 5
src/xt_pages/outpatientDoctorStation/prescriptionTemplatedetail.vue View File

@@ -37,6 +37,23 @@
37 37
                                     :label="item.name"
38 38
                                     :name="item.name"
39 39
                             >
40
+
41
+                                <el-select style="width:50%;" v-model="item.med_type" placeholder="医疗类型"  v-if="($store.getters.xt_user.org_id == 10028 || $store.getters.xt_user.org_id == 9504 || $store.getters.xt_user.org_id == 10138)" @change="changevalue" >
42
+                                    <el-option
43
+                                            v-for="(item,index) in medical_care"
44
+                                            :key="index"
45
+                                            :label="item.label"
46
+                                            :value="item.value">
47
+                                    </el-option>
48
+                                </el-select>
49
+                                <el-select style="width:50%;" v-model="item.med_type" placeholder="医疗类型"  v-else @change="changevalue" >
50
+                                    <el-option
51
+                                            v-for="(item,index) in register"
52
+                                            :key="index"
53
+                                            :label="item.label"
54
+                                            :value="item.value">
55
+                                    </el-option>
56
+                                </el-select>
40 57
                             </el-tab-pane>
41 58
 
42 59
                             <el-tab-pane name="more" closable><span slot="label"><i
@@ -247,6 +264,29 @@
247 264
     },
248 265
     data() {
249 266
       return {
267
+        medical_care: [
268
+          { value: 11, label: '普通门诊' },
269
+          { value: 12, label: '家庭通道' },
270
+          { value: 13, label: '门诊大病' },
271
+          { value: 14, label: '重疾特药' },
272
+          { value: 15, label: '门诊慢病' },
273
+          { value: 16, label: '门诊特检' },
274
+          { value: 17, label: '健康体检' },
275
+          { value: 18, label: '预防接种' },
276
+          { value: 19, label: '门诊输血' },
277
+          { value: 91, label: '新冠肺炎门诊' }
278
+        ],
279
+
280
+        register: [
281
+          { value: 11, label: '普通门诊' },
282
+          { value: 12, label: '门诊挂号' },
283
+          { value: 13, label: '急诊' },
284
+          { value: 14, label: '门诊特殊病' },
285
+          { value: 15, label: '门诊统筹' },
286
+          { value: 16, label: '门诊慢性病' },
287
+          { value: 21, label: '普通住院' }
288
+
289
+        ],
250 290
         crumbs: [
251 291
           { path: false, name: '门诊医生站' },
252 292
           { path: false, name: '处方模版' },
@@ -353,6 +393,13 @@
353 393
           return
354 394
         }
355 395
 
396
+        for (let i = 0; i < this.prescriptions.length; i++) {
397
+          if (this.prescriptions[i].med_type == 0 || this.prescriptions[i].med_type == '') {
398
+            this.$message.error('处方医疗类型不能为空')
399
+            return
400
+          }
401
+        }
402
+
356 403
         let params = {
357 404
           name: this.tempForm.name,
358 405
           mode_id: this.tempForm.mode_id,
@@ -1216,6 +1263,39 @@
1216 1263
         //   this.$refs.multipleTable.clearSelection()
1217 1264
         //   return
1218 1265
         // }
1266
+        // if(this.curStatus == 1  && this.rightTab == 2){
1267
+        //   for(let i = 0; i < this.curDrugs.length; i++){
1268
+        //     if(this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10138 || this.$store.getters.xt_user.org_id == 10028){
1269
+        //
1270
+        //       if(this.curPrescriptions.med_type != 13 && this.curDrugs[i].drug.is_special_diseases == 1){
1271
+        //         this.$message.error('该处方不属于特病类型处方,无法开特病类型的药')
1272
+        //         return
1273
+        //       }
1274
+        //
1275
+        //       if(this.curPrescriptions.med_type == 13 && this.curDrugs[i].drug.is_special_diseases != 1){
1276
+        //         this.$message.error('该处方属于特病类型处方,开非特病类型的药')
1277
+        //         return
1278
+        //       }
1279
+        //
1280
+        //
1281
+        //     }else{
1282
+        //
1283
+        //       if(this.curPrescriptions.med_type != 14 && this.curDrugs[i].drug.is_special_diseases == 1){
1284
+        //         this.$message.error('该处方不属于特病类型处方,无法开特病类型的药')
1285
+        //         return
1286
+        //       }
1287
+        //
1288
+        //       if(this.curPrescriptions.med_type == 14 && this.curDrugs[i].drug.is_special_diseases != 1){
1289
+        //         this.$message.error('该处方属于特病类型处方,开非特病类型的药')
1290
+        //         return
1291
+        //       }
1292
+        //
1293
+        //
1294
+        //
1295
+        //     }
1296
+        //
1297
+        //   }
1298
+        // }
1219 1299
 
1220 1300
         if (this.curStatus == 1 && this.rightTab == 2) {
1221 1301
           this.$message.error('改处方是药品,无法添加项目')
@@ -1476,9 +1556,20 @@
1476 1556
                   advices: tempAdvice,
1477 1557
                   project: tempProject,
1478 1558
                   addition: tempAddition,
1479
-                  order_status: 1
1559
+                  order_status: 1,
1480 1560
                   // pre_time: preTime
1481 1561
                 }
1562
+
1563
+                if(prescription.med_type == "" || prescription.med_type == 0){
1564
+
1565
+                  obj['med_type'] = ""
1566
+                }else{
1567
+
1568
+                  obj['med_type'] = parseInt(prescription.med_type)
1569
+
1570
+                }
1571
+
1572
+
1482 1573
                 this.prescriptions.push(obj)
1483 1574
               }
1484 1575
               if (this.prescriptions.length > 0) {
@@ -1493,15 +1584,13 @@
1493 1584
                 advices: [],
1494 1585
                 project: [],
1495 1586
                 addition: [],
1496
-                order_status: 0
1587
+                order_status: 0,
1588
+                med_type:'',
1497 1589
               }
1498 1590
               this.prescriptions.push(obj)
1499 1591
               this.curPrescriptions = this.prescriptions[0]
1500 1592
             }
1501 1593
 
1502
-            console.log(this.prescriptions)
1503
-            console.log(this.curPrescriptions)
1504
-
1505 1594
           }
1506 1595
 
1507 1596
         })
@@ -1584,6 +1673,11 @@
1584 1673
           }
1585 1674
         })
1586 1675
       },
1676
+      changevalue(val){
1677
+
1678
+        this.$forceUpdate()
1679
+
1680
+      },
1587 1681
       selectTeam(row) {
1588 1682
         console.log('row', row)
1589 1683
         var arr = []

+ 7 - 10
src/xt_pages/outpatientDoctorStation/print.vue View File

@@ -11,7 +11,7 @@
11 11
           >打印</el-button
12 12
         >
13 13
       </template>
14
-            
14
+
15 15
     <div class='dialysisPage' style="padding-top:40px;">
16 16
       <div v-if="org_id != 10138">
17 17
         <printOne v-if="org_id != 10088" v-bind:childResponse="childResponse" :advicePrint="advicePrint" :ids="ids" :patient="patient" :hisPatient="hisPatient" :doctorPorject="doctorPorject" :patient_id="patient_id" :record_date="record_date" :prescription_id="prescription_id"></printOne>
@@ -74,9 +74,8 @@ export default {
74 74
     printThisPage() {
75 75
       var ptime = Math.round(new Date().getTime() / 1000);
76 76
       this.print_time = uParseTime(ptime, "{y}-{m}-{d} {h}:{i}");
77
-      
77
+
78 78
       if(this.org_id == 10138){
79
-        
80 79
         const style =
81 80
         '@media print {#prescription-print{font-size:14px;}.prescription-print:last-child {page-break-after: auto;}.printTitle{font-size: 22px;text-align: center;font-weight: bold;margin-bottom: 10px;}.infoTitle{display: flex;margin-top:10px;}.infoTitle div{width: 200px;}.infoMain{display: flex;flex-wrap: wrap;margin-top:10px;}.infoMain div{width: 50%;line-height: 24px;}.prescriptionBox{min-height:350px;}.Rp{font-size: 18px;font-weight: bold;}.drugsBox{padding-left: 40px;margin-bottom: 10px;}.drugsBox div{line-height: 20px;}.drugsOne{line-height: 24px;}.drugsOne span{margin-right: 20px;}.doctorBox{display: flex;justify-content: space-between;padding:0 10px;line-height: 24px;border-bottom: 2px solid #000;}.actionBar{display: flex;justify-content: space-between; line-height: 24px;padding:0 10px;}.actionBar p{width:150px;}.under_line{display: inline-block;border-bottom: 1px solid #000;flex: 1;}}';
82 81
         printJS({
@@ -95,7 +94,6 @@ export default {
95 94
           scanStyles: false
96 95
         });
97 96
       }
98
-      
99 97
 
100 98
       // if (this.org_template_info.template_id == 1) {
101 99
       //   printJS({
@@ -110,10 +108,10 @@ export default {
110 108
       getAllDoctorList().then(response=>{
111 109
         if(response.data.state == 1){
112 110
                var doctor =  response.data.data.doctor
113
-               
111
+
114 112
                this.doctorList = doctor
115 113
              }
116
-         })   
114
+         })
117 115
      },
118 116
     getAllHisPatientList(){
119 117
          const params = {
@@ -124,7 +122,6 @@ export default {
124 122
             this.patientTableData = response.data.data.list
125 123
             this.patientTableDataTwo = response.data.data.list
126 124
 
127
-            console.log('222', this.patientTableData)
128 125
             let cal_one = 0
129 126
             let cal_two = 0
130 127
             for (let i = 0; i < response.data.data.list.length; i++) {
@@ -139,7 +136,7 @@ export default {
139 136
             // console.log(this.patientTableData[0])
140 137
             // this.choosePatient(this.patientTableData[0])
141 138
             this.cal_one = cal_one
142
-            this.cal_two = cal_two   
139
+            this.cal_two = cal_two
143 140
          }
144 141
       })
145 142
     },
@@ -174,7 +171,7 @@ export default {
174 171
     searchAction(){
175 172
 
176 173
     }
177
-    
174
+
178 175
   },
179 176
 
180 177
   created() {
@@ -377,7 +374,7 @@ export default {
377 374
   .dialysisPage::-webkit-scrollbar {
378 375
     height: 15px;
379 376
   }
380
-  
377
+
381 378
   .el-date-editor{
382 379
     .el-input__inner{
383 380
       padding-right:0px;

+ 85 - 8
src/xt_pages/outpatientDoctorStation/template/printThree.vue View File

@@ -2,13 +2,13 @@
2 2
 <div>
3 3
   <div id='prescriptionPrint'>
4 4
     <div v-for="(item,index) in advicePrint" :key="index">
5
-      <div id='prescription-print'  v-for='(i,pageIndex) in item.pageArr.length' :key="pageIndex" class="prescription-print" style="page-break-after: always;">
5
+      <div id='prescription-print' v-if="item.project.length == 0"  v-for='(i,pageIndex) in item.pageArr.length' :key="pageIndex" class="prescription-print" style="page-break-after: always;">
6 6
           <img src="../../../assets/img/bailinTop.jpg" style="width:100%" alt="">
7 7
           <div class="printTitle">处方笺</div>
8 8
           <div style="display:flex;">
9
-            <div style="width:33%;display:flex;">费别:<span class="under_line"></span></div>
10
-            <div style="width:33%;display:flex;">电脑号:<span class="under_line"></span></div>
11
-            <div style="width:33%;display:flex;">处方编号:<span class="under_line"></span></div>
9
+            <div style="width:33%;display:flex;">费别:<span class="under_line">{{ faber ? getName(faber.transBody.outputlist1) : '' }}</span></div>
10
+            <div style="width:33%;display:flex;">电脑号:<span class="under_line">{{ faber ? faber.transBody.aac999 : ''  }}</span></div>
11
+            <div style="width:33%;display:flex;">处方编号:<span class="under_line">{{ item.prescription_number.substring(item.prescription_number.length-6) }}</span></div>
12 12
           </div>
13 13
 
14 14
 
@@ -42,13 +42,13 @@
42 42
                 <div class="drugsOne">{{it.item_name?it.item_name:""}}:&nbsp;{{it.price}}元/{{it.count}}次</div>
43 43
                </div>
44 44
                
45
-              <div class="drugsBox" v-for="(it,index) in item.project" :key="index">
45
+              <!-- <div class="drugsBox" v-for="(it,index) in item.project" :key="index">
46 46
                   <div class="drugsOne"><span style="font-weight:bold;">{{ index+1 + '.' }}</span>{{ it.type == 2 ? it.project.project_name : it.good_info.good_name }}&nbsp;&nbsp;{{it.single_dose}}{{it.single_dose_unit}}&nbsp;×&nbsp; {{it.count}}{{unit}}</div>
47 47
                   <div style="margin-left:100px;"><span>用法:{{it.single_dose}}{{it.single_dose_unit}}</span>&nbsp;&nbsp;<span>{{it.delivery_way}}</span>&nbsp;&nbsp;<span>{{it.advice_desc}}</span></div>
48 48
               </div>
49 49
               <div class="drugsBox" v-for="(it,i) in item.additionalcharge" :key="i">
50 50
                 <div class="drugsOne">{{it.project_id?it.project_id:""}}:&nbsp;{{it.price}}元/{{it.count}}次</div>
51
-               </div>
51
+               </div> -->
52 52
                <div style="text-align:center;" >(以下空白)</div>
53 53
 
54 54
           </div>
@@ -111,7 +111,8 @@ export default {
111 111
         projectList:[],
112 112
         orgname:"",
113 113
         diagnoses:[],
114
-        pageArr:[]
114
+        pageArr:[],
115
+        faber:{}
115 116
       }
116 117
     },
117 118
    methods:{
@@ -165,6 +166,9 @@ export default {
165 166
             var projectlist =  response.data.data.projectlist
166 167
             console.log("所有项目列表",projectlist)
167 168
             this.projectList = projectlist
169
+            let outputlist1Name = JSON.parse(response.data.data.his.patient_info);
170
+            this.faber = outputlist1Name
171
+
168 172
             this.getPage()
169 173
           }
170 174
        })
@@ -284,7 +288,80 @@ export default {
284 288
           }
285 289
         })
286 290
         // console.log('this.pageArr',this.pageArr)
287
-      }
291
+      },
292
+      getName(list) {
293
+        console.log('list',list)
294
+        let new_list = []
295
+        for (let i = 0; i < list.length; i++) {
296
+          if (list[i].aac031 == '1') {
297
+            new_list.push(list[i])
298
+          }
299
+        }
300
+
301
+        switch (new_list[0].bcc334) {
302
+          case "A31001":
303
+            return "深圳医保1档"
304
+            break
305
+          case "A31002":
306
+            return "深圳医保2档"
307
+
308
+            break
309
+          case "A31003":
310
+            return "深圳医保3档"
311
+
312
+            break
313
+          case "A31004":
314
+            return "二档(少儿)"
315
+
316
+            break
317
+          case "A31005":
318
+            return "学生二档"
319
+
320
+            break
321
+          case "A31006":
322
+            return "大学生二档"
323
+
324
+            break
325
+          case "A32001":
326
+            return "在职公务员"
327
+            break
328
+          case "A32002":
329
+            return "在职驻深公务员"
330
+
331
+            break
332
+          case "A39301":
333
+            return "家属统筹医疗"
334
+
335
+            break
336
+          case "A41001":
337
+            return "工伤在职"
338
+
339
+            break
340
+          case "A51001":
341
+            return "生育在职"
342
+
343
+            break
344
+          case "A52001":
345
+            return "生育医疗一档"
346
+
347
+            break
348
+          case "A52002":
349
+            return "生育医疗一档"
350
+
351
+            break
352
+          case "C31001":
353
+            return "一档医疗退休"
354
+
355
+            break
356
+          case "C31002":
357
+            return "二档医疗退休"
358
+            break
359
+
360
+        }
361
+
362
+
363
+
364
+      },
288 365
 
289 366
    },
290 367
    created(){

+ 84 - 8
src/xt_pages/outpatientDoctorStation/treatTemplate/printTwo.vue View File

@@ -1,13 +1,13 @@
1 1
 <template>
2 2
    <div id='prescriptionPrint'>
3
-    <div id='prescription-print' class="prescription-print" v-for="(item,index) in advicePrint" :key="index">
3
+    <div id='prescription-print' v-if="item.advices.length == 0" class="prescription-print" v-for="(item,index) in advicePrint" :key="index">
4 4
 
5 5
         <img src="../../../assets/img/bailinTop.jpg" style="width:100%" alt="">
6 6
         <div class="printTitle">治疗单</div>
7 7
         <div style="display:flex;">
8
-            <div style="width:33%;display:flex;">费别:<span class="under_line"></span></div>
9
-            <div style="width:33%;display:flex;">电脑号:<span class="under_line"></span></div>
10
-            <div style="width:33%;display:flex;">处方编号:<span class="under_line"></span></div>
8
+            <div style="width:33%;display:flex;">费别:<span class="under_line">{{ faber ? getName(faber.transBody.outputlist1) : '' }}</span></div>
9
+            <div style="width:33%;display:flex;">电脑号:<span class="under_line">{{ faber ? faber.transBody.aac999 : ''  }}</span></div>
10
+            <div style="width:33%;display:flex;">处方编号:<span class="under_line">{{ item.prescription_number.substring(item.prescription_number.length-6) }}</span></div>
11 11
         </div>
12 12
 
13 13
 
@@ -70,10 +70,9 @@
70 70
         </div> -->
71 71
         <div class="prescriptionBox">
72 72
               <div class="Rp">Rp:</div>
73
-              <div class="drugsBox" v-for="(it,index) in item.advices" :key="index">
74
-                  <!-- <div class="drugsOne"><span style="font-weight:bold;">{{ index+1 + '.' }}</span>{{it.advice_name?it.advice_name:""}}&nbsp;&nbsp;{{it.single_dose}}{{it.single_dose_unit}}&nbsp;×&nbsp; {{it.prescribing_number}}{{it.prescribing_number_unit}}</div> -->
73
+              <!-- <div class="drugsBox" v-for="(it,index) in item.advices" :key="index">
75 74
                   <div class="drugsOne"><span style="font-weight:bold;">{{ index+1 + '.' }}</span>{{it.advice_name?it.advice_name:""}}&nbsp;&nbsp;<span v-if="it.drug.min_unit != it.drug.dose_unit">{{it.drug.dose}}{{it.drug.dose_unit}}&nbsp;* &nbsp;</span>{{it.drug.min_number}}{{it.drug.min_unit}}/{{it.drug.max_unit}}&nbsp;×&nbsp; {{it.prescribing_number}}{{it.prescribing_number_unit}}</div>
76
-              </div>
75
+              </div> -->
77 76
               <div class="drugsBox" v-for="(it,index) in item.project" :key="index">
78 77
                   <div class="drugsOne"><span style="font-weight:bold;">{{ index+1 + '.' }}</span>{{ it.type == 2 ? it.project.project_name : it.good_info.good_name }}&nbsp;&nbsp;{{it.single_dose}}{{it.single_dose_unit}}&nbsp;×&nbsp; {{it.count}}{{unit}}</div>
79 78
               </div>
@@ -232,6 +231,7 @@ export default {
232 231
          hisPatient:{},
233 232
          diagnoses:[],
234 233
          department:[],
234
+         faber:{}
235 235
       }
236 236
     },
237 237
    methods:{
@@ -301,6 +301,9 @@ export default {
301 301
             this.projectList = projectlist
302 302
             this.hisPatient = response.data.data.hisPatient
303 303
 
304
+            let outputlist1Name = JSON.parse(response.data.data.his.patient_info);
305
+            this.faber = outputlist1Name
306
+
304 307
           }
305 308
        })
306 309
      },
@@ -381,7 +384,80 @@ export default {
381 384
           }
382 385
         }
383 386
         return name
384
-     }
387
+     },
388
+     getName(list) {
389
+        console.log('list',list)
390
+        let new_list = []
391
+        for (let i = 0; i < list.length; i++) {
392
+          if (list[i].aac031 == '1') {
393
+            new_list.push(list[i])
394
+          }
395
+        }
396
+
397
+        switch (new_list[0].bcc334) {
398
+          case "A31001":
399
+            return "深圳医保1档"
400
+            break
401
+          case "A31002":
402
+            return "深圳医保2档"
403
+
404
+            break
405
+          case "A31003":
406
+            return "深圳医保3档"
407
+
408
+            break
409
+          case "A31004":
410
+            return "二档(少儿)"
411
+
412
+            break
413
+          case "A31005":
414
+            return "学生二档"
415
+
416
+            break
417
+          case "A31006":
418
+            return "大学生二档"
419
+
420
+            break
421
+          case "A32001":
422
+            return "在职公务员"
423
+            break
424
+          case "A32002":
425
+            return "在职驻深公务员"
426
+
427
+            break
428
+          case "A39301":
429
+            return "家属统筹医疗"
430
+
431
+            break
432
+          case "A41001":
433
+            return "工伤在职"
434
+
435
+            break
436
+          case "A51001":
437
+            return "生育在职"
438
+
439
+            break
440
+          case "A52001":
441
+            return "生育医疗一档"
442
+
443
+            break
444
+          case "A52002":
445
+            return "生育医疗一档"
446
+
447
+            break
448
+          case "C31001":
449
+            return "一档医疗退休"
450
+
451
+            break
452
+          case "C31002":
453
+            return "二档医疗退休"
454
+            break
455
+
456
+        }
457
+
458
+
459
+
460
+      },
385 461
    },
386 462
    created(){
387 463
       this.getInitData()

File diff suppressed because it is too large
+ 671 - 550
src/xt_pages/outpatientRegistration/index.vue


+ 63 - 32
src/xt_pages/outpatientRegistration/registrationHistory.vue View File

@@ -457,6 +457,10 @@
457 457
   const moment = require('moment')
458 458
   import BreadCrumb from '@/xt_pages/components/bread-crumb'
459 459
   import { changePatient, getHisPatient, getHisPatientHistory } from '@/api/project/project'
460
+
461
+  import { refundNumber} from '@/api/his/his'
462
+
463
+
460 464
   import { uParseTime } from '@/utils/tools'
461 465
   import { getDictionaryDataConfig } from '@/utils/data'
462 466
   import axios from 'axios'
@@ -715,45 +719,72 @@
715 719
         }
716 720
         return ''
717 721
       }, toReturnSZPatient(val) {
718
-        var that = this
719
-        this.$confirm('是否退号', '退号', {
720
-          confirmButtonText: '确 定',
721
-          cancelButtonText: '取 消',
722
-          type: 'warning'
723
-        }).then(() => {
724
-          axios.get('http://127.0.0.1:9532/sz/api/refundnumber/get', {
725
-            params: {
726
-              order_id: 0,
727
-              record_time: this.getTime(val.record_date, '{y}-{m}-{d}'),
728
-              admin_user_id: this.$store.getters.xt_user.user.id,
729
-              patient_id: val.patient_id
730
-            }
731
-          })
732
-            .then(function(response) {
722
+        if(val.balance_accounts_type == 2){
723
+          this.$confirm('是否退费', '退费', {
724
+            confirmButtonText: '确 定',
725
+            cancelButtonText: '取 消',
726
+            type: 'warning'
727
+          }).then(() => {
728
+            let params = {
729
+              'id': val.id,
730
+            };
731
+            refundNumber(params).then(response => {
733 732
               if (response.data.state == 0) {
734
-                that.$message.error(response.data.msg)
733
+                this.$message.error(response.data.msg);
734
+                this.loadingtwo = false;
735 735
                 return false
736 736
               } else {
737
-                if (response.data.data.failed_code == -10) {
738
-                  that.$confirm(response.data.data.msg, '医保错误信息', {
739
-                    confirmButtonText: '确 定',
740
-                    type: 'warning'
741
-                  }).then(() => {
742
-
743
-                  }).catch(() => {
744
-                  })
745
-                  // that.$message.error(response.data.data.msg)
737
+                this.getlist()
738
+                this.$message({ message: '退号成功', type: 'success' });
746 739
 
747
-                } else {
748
-                  that.getlist()
749
-                  that.$message({ message: '退号成功', type: 'success' })
750
-                }
751 740
               }
752 741
             })
753
-            .catch(function(error) {
742
+
743
+          }).catch(() => {
744
+
745
+          })
746
+
747
+        }else{
748
+          var that = this
749
+          this.$confirm('是否退号', '退号', {
750
+            confirmButtonText: '确 定',
751
+            cancelButtonText: '取 消',
752
+            type: 'warning'
753
+          }).then(() => {
754
+            axios.get('http://127.0.0.1:9532/sz/api/refundnumber/get', {
755
+              params: {
756
+                order_id: 0,
757
+                record_time: this.getTime(val.record_date, '{y}-{m}-{d}'),
758
+                admin_user_id: this.$store.getters.xt_user.user.id,
759
+                patient_id: val.patient_id
760
+              }
754 761
             })
755
-        }).catch(() => {
756
-        })
762
+              .then(function(response) {
763
+                if (response.data.state == 0) {
764
+                  that.$message.error(response.data.msg)
765
+                  return false
766
+                } else {
767
+                  if (response.data.data.failed_code == -10) {
768
+                    that.$confirm(response.data.data.msg, '医保错误信息', {
769
+                      confirmButtonText: '确 定',
770
+                      type: 'warning'
771
+                    }).then(() => {
772
+
773
+                    }).catch(() => {
774
+                    })
775
+                    // that.$message.error(response.data.data.msg)
776
+
777
+                  } else {
778
+                    that.getlist()
779
+                    that.$message({ message: '退号成功', type: 'success' })
780
+                  }
781
+                }
782
+              })
783
+              .catch(function(error) {
784
+              })
785
+          }).catch(() => {
786
+          })
787
+        }
757 788
       },
758 789
       toReturnPatient(row) {
759 790
         var that = this

+ 305 - 0
src/xt_pages/stock/stockDamaged.vue View File

@@ -0,0 +1,305 @@
1
+<template>
2
+  <div class="main-contain">
3
+    <div class="position">
4
+      <bread-crumb :crumbs="crumbs"></bread-crumb>
5
+    </div>
6
+    <div class="app-container">
7
+        <div style="display: flex;align-items: center;justify-content: space-between;margin-bottom:10px;">
8
+            <div>
9
+                <el-input
10
+                size="small"
11
+                style="width: 200px;"
12
+                class="filter-item"
13
+                v-model.trim="searchKey"
14
+                placeholder=""
15
+                />
16
+                <el-button
17
+                size="small"
18
+                class="filter-item"
19
+                type="primary"
20
+                icon="el-icon-search"
21
+                @click="search"
22
+                >搜索</el-button
23
+                >
24
+                <el-date-picker
25
+                size="small"
26
+                v-model="value1"
27
+                type="date"
28
+                style="margin-left:5px;width:140px;"
29
+                placeholder="选择日期">
30
+                </el-date-picker>
31
+                <el-date-picker
32
+                size="small"
33
+                v-model="value2"
34
+                type="date"
35
+                style="margin-left:5px;width:140px;"
36
+                placeholder="选择日期">
37
+                </el-date-picker>
38
+            </div>
39
+            <div>
40
+                <el-button size="small" type="primary" @click="dialogVisible = true">新增</el-button>
41
+                <el-button size="small" type="primary">核对</el-button>
42
+                <el-button size="small" type="primary" @click="print">打印</el-button>
43
+                <el-button size="small" type="primary">导出</el-button>
44
+            </div>
45
+        </div>
46
+        <el-table :data="tableData" border :header-cell-style="{ backgroundColor: 'rgb(245, 247, 250)' }">
47
+            <el-table-column
48
+            prop="date"
49
+            label="报损编码">
50
+            </el-table-column>
51
+            <el-table-column
52
+            prop="date"
53
+            label="报损日期">
54
+            </el-table-column>
55
+            <el-table-column
56
+            prop="name"
57
+            label="操作人">
58
+            </el-table-column>
59
+            <el-table-column
60
+            prop="name"
61
+            label="审核日期">
62
+            </el-table-column>
63
+            <el-table-column
64
+            prop="name"
65
+            label="核对人">
66
+            </el-table-column>
67
+            <el-table-column
68
+            prop="name"
69
+            label="状态">
70
+            </el-table-column>
71
+            <el-table-column
72
+            label="操作">
73
+                <template slot-scope="scope">
74
+                    <el-button type="text" size="small">删除</el-button>
75
+                    <el-button type="text" size="small">编辑</el-button>
76
+                </template>
77
+            </el-table-column>
78
+        </el-table>
79
+        <el-pagination
80
+            @size-change="handleSizeChange"
81
+            @current-change="handleCurrentChange"
82
+            :page-sizes="[5, 10, 50, 100]"
83
+            :page-size="5"
84
+            background
85
+            style="margin-top:20px;text-align: right"
86
+            layout="total, sizes, prev, pager, next, jumper"
87
+            :total="total"
88
+        >
89
+        </el-pagination>
90
+    </div>
91
+    <el-dialog
92
+        title="库房调价"
93
+        :visible.sync="dialogVisible"
94
+        width="1200px"
95
+        :before-close="handleClose">
96
+        <el-form :model="form" class="modifyDialog" label-width="120px">
97
+            <el-form-item label="耗材ID">
98
+                <el-input v-model="form.name"></el-input>
99
+            </el-form-item>
100
+            <el-form-item label="药品名称">
101
+                <el-input v-model="form.name"></el-input>
102
+            </el-form-item>
103
+            <el-form-item label="规格">
104
+                <el-input v-model="form.name"></el-input>
105
+            </el-form-item>
106
+            <el-form-item label="单位">
107
+                <el-input v-model="form.name"></el-input>
108
+            </el-form-item>
109
+            <el-form-item label="进货价">
110
+                <el-input v-model="form.name"></el-input>
111
+            </el-form-item>
112
+            <el-form-item label="零售价">
113
+                <el-input v-model="form.name"></el-input>
114
+            </el-form-item>
115
+            <el-form-item label="报损数量">
116
+                <el-input v-model="form.name"></el-input>
117
+            </el-form-item>
118
+            <el-form-item label="库存">
119
+                <el-input v-model="form.name"></el-input>
120
+            </el-form-item>
121
+            <el-form-item label="产地">
122
+                <el-input v-model="form.name"></el-input>
123
+            </el-form-item>
124
+            <el-form-item label="批准文号">
125
+                <el-input v-model="form.name"></el-input>
126
+            </el-form-item>
127
+            <el-form-item label="生产厂商">
128
+                <el-input v-model="form.name"></el-input>
129
+            </el-form-item>
130
+            <el-form-item label="备注">
131
+                <div style="display:flex;">
132
+                    <el-input v-model="form.name"></el-input>
133
+                    <el-button style="margin-left:5px;" type="primary">添加</el-button>
134
+                </div>
135
+            </el-form-item>
136
+        </el-form>
137
+        <el-table :data="tableData" border :header-cell-style="{ backgroundColor: 'rgb(245, 247, 250)' }">
138
+            <el-table-column
139
+            prop="date"
140
+            label="耗材ID"
141
+            width="100">
142
+            </el-table-column>
143
+            <el-table-column
144
+            prop="date"
145
+            label="耗材名称"
146
+            width="100">
147
+            </el-table-column>
148
+            <el-table-column
149
+            prop="name"
150
+            label="规格"
151
+            width="100">
152
+            </el-table-column>
153
+            <el-table-column
154
+            prop="name"
155
+            label="单位"
156
+            width="100">
157
+            </el-table-column>
158
+            <el-table-column
159
+            prop="name"
160
+            label="调价数量"
161
+            width="100">
162
+            </el-table-column>
163
+            <el-table-column
164
+            prop="name"
165
+            label="原进货价"
166
+            width="100">
167
+            </el-table-column>
168
+            <el-table-column
169
+            prop="name"
170
+            label="原零售价"
171
+            width="100">
172
+            </el-table-column>
173
+            <el-table-column
174
+            prop="name"
175
+            label="新零售价"
176
+            width="100">
177
+            </el-table-column>
178
+            <el-table-column
179
+            prop="name"
180
+            label="生产厂商"
181
+            width="100">
182
+            </el-table-column>
183
+            <el-table-column
184
+            prop="name"
185
+            label="产地"
186
+            width="100">
187
+            </el-table-column>
188
+            <el-table-column
189
+            prop="name"
190
+            label="批准文号"
191
+            width="100">
192
+            </el-table-column>
193
+            <el-table-column
194
+            prop="name"
195
+            label="备注"
196
+            width="100">
197
+            </el-table-column>
198
+            <el-table-column
199
+            fixed="right"
200
+            width="100"
201
+            label="操作">
202
+                <template slot-scope="scope">
203
+                    <el-button type="text" size="small">删除</el-button>
204
+                    <el-button type="text" size="small">编辑</el-button>
205
+                </template>
206
+            </el-table-column>
207
+        </el-table>
208
+        <span slot="footer" class="dialog-footer">
209
+            <el-button @click="dialogVisible = false">取 消</el-button>
210
+            <el-button type="primary" @click="dialogVisible = false">确 定</el-button>
211
+        </span>
212
+    </el-dialog>
213
+  
214
+  </div>
215
+</template>
216
+
217
+<script>
218
+import BreadCrumb from "../components/bread-crumb";
219
+
220
+export default {
221
+    name: "stockModifyPrice",
222
+    components:{
223
+        BreadCrumb
224
+    },
225
+    data() {
226
+        return{
227
+            crumbs: [
228
+                { path: false, name: "库存管理" },
229
+                { path: false, name: "耗材管理" },
230
+                { path: false, name: "耗材报损" }
231
+            ],
232
+            searchKey:'',
233
+            value1:'',
234
+            value2:'',
235
+            tableData: [{
236
+                date: '2016-05-02',
237
+                name: '王小虎',
238
+                address: '上海市普陀区金沙江路 1518 弄'
239
+                }, {
240
+                date: '2016-05-04',
241
+                name: '王小虎',
242
+                address: '上海市普陀区金沙江路 1517 弄'
243
+                }, {
244
+                date: '2016-05-01',
245
+                name: '王小虎',
246
+                address: '上海市普陀区金沙江路 1519 弄'
247
+                }, {
248
+                date: '2016-05-03',
249
+                name: '王小虎',
250
+                address: '上海市普陀区金沙江路 1516 弄'
251
+            }],
252
+            dialogVisible:false,
253
+            form: {
254
+                name: '',
255
+            },
256
+            total: 0,
257
+        }
258
+    },
259
+    methods:{
260
+        search(){
261
+
262
+        },
263
+        print(){
264
+            this.$router.push({path:'/stock/stockModifyPricePrint'})
265
+            
266
+        },
267
+        handleSizeChange(){},
268
+        handleCurrentChange(){}
269
+
270
+    },
271
+    created(){
272
+    },
273
+    mounted() {
274
+    },
275
+};
276
+</script>
277
+
278
+<style rel="stylesheet/scss" lang="scss">
279
+.app-container {
280
+  // margin: 20px;
281
+  font-size: 15px;
282
+}
283
+.modifyDialog{
284
+    display: flex;
285
+    flex-wrap: wrap;
286
+    margin-bottom: 10px;
287
+    .el-form-item{
288
+        width: 33%;
289
+    }
290
+}
291
+.el-table td,
292
+.el-table th.is-leaf,
293
+.el-table--border,
294
+.el-table--group {
295
+  border-color: #d0d3da;
296
+}
297
+.el-table--border::after,
298
+.el-table--group::after,
299
+.el-table::before {
300
+  background-color: #d0d3da;
301
+}
302
+::-webkit-scrollbar{
303
+    height: 20px !important;
304
+}
305
+</style>

+ 376 - 0
src/xt_pages/stock/stockModifyPrice.vue View File

@@ -0,0 +1,376 @@
1
+<template>
2
+  <div class="main-contain">
3
+    <div class="position">
4
+      <bread-crumb :crumbs="crumbs"></bread-crumb>
5
+    </div>
6
+    <div class="app-container">
7
+      <div style="display: flex;align-items: center;justify-content: space-between;">
8
+        <div>
9
+            <el-input
10
+            size="small"
11
+            style="width: 200px;"
12
+            class="filter-item"
13
+            v-model.trim="searchKey"
14
+            placeholder=""
15
+            />
16
+            <el-button
17
+            size="small"
18
+            class="filter-item"
19
+            type="primary"
20
+            icon="el-icon-search"
21
+            @click="search"
22
+            >搜索</el-button
23
+            >
24
+            <el-date-picker
25
+            size="small"
26
+            v-model="value1"
27
+            type="date"
28
+            style="margin-left:5px;width:140px;"
29
+            placeholder="选择日期">
30
+            </el-date-picker>
31
+            <el-date-picker
32
+            size="small"
33
+            v-model="value2"
34
+            type="date"
35
+            style="margin-left:5px;width:140px;"
36
+            placeholder="选择日期">
37
+            </el-date-picker>
38
+        </div>
39
+        <div>
40
+            <el-button size="small" type="primary" @click="dialogVisible = true">新增</el-button>
41
+            <el-button size="small" type="primary">核对</el-button>
42
+            <el-button size="small" type="primary" @click="print">打印</el-button>
43
+            <el-button size="small" type="primary">导出</el-button>
44
+        </div>
45
+      </div>
46
+      <div style="display: flex;justify-content: space-between;margin-top:10px">
47
+            <div style="width:541px;margin-right:10px;">
48
+                <el-table :data="tableData" border :height="tableHeight" :header-cell-style="{ backgroundColor: 'rgb(245, 247, 250)' }">
49
+                    <el-table-column
50
+                    prop="date"
51
+                    label="单据编码"
52
+                    width="100">
53
+                    </el-table-column>
54
+                    <el-table-column
55
+                    prop="date"
56
+                    label="调价日期"
57
+                    width="100">
58
+                    </el-table-column>
59
+                    <el-table-column
60
+                    prop="name"
61
+                    label="操作人"
62
+                    width="80">
63
+                    </el-table-column>
64
+                    <el-table-column
65
+                    prop="name"
66
+                    label="状态"
67
+                    width="80">
68
+                    </el-table-column>
69
+                    <el-table-column
70
+                    prop="name"
71
+                    label="核对人"
72
+                    width="80">
73
+                    </el-table-column>
74
+                    <el-table-column
75
+                    width="100"
76
+                    label="操作">
77
+                        <template slot-scope="scope">
78
+                            <el-button type="text" size="small">删除</el-button>
79
+                            <el-button type="text" size="small">编辑</el-button>
80
+                        </template>
81
+                    </el-table-column>
82
+                </el-table>
83
+            </div>
84
+            <!-- <div style="flex:1;"> -->
85
+                <el-table :data="tableData" border :height="tableHeight" :header-cell-style="{ backgroundColor: 'rgb(245, 247, 250)' }">
86
+                    <el-table-column
87
+                    fixed="left"
88
+                    prop="date"
89
+                    label="药品ID"
90
+                    width="80">
91
+                    </el-table-column>
92
+                    <el-table-column
93
+                    prop="date"
94
+                    label="药品名称"
95
+                    width="100">
96
+                    </el-table-column>
97
+                    <el-table-column
98
+                    prop="name"
99
+                    label="规格"
100
+                    width="100">
101
+                    </el-table-column>
102
+                    <el-table-column
103
+                    prop="name"
104
+                    label="生产厂家"
105
+                    width="100">
106
+                    </el-table-column>
107
+                    <el-table-column
108
+                    prop="name"
109
+                    label="批准文书"
110
+                    width="100">
111
+                    </el-table-column>
112
+                    <el-table-column
113
+                    prop="name"
114
+                    label="供应商"
115
+                    width="100">
116
+                    </el-table-column>
117
+                    <el-table-column
118
+                    prop="name"
119
+                    label="数量"
120
+                    width="100">
121
+                    </el-table-column>
122
+                    <el-table-column
123
+                    prop="name"
124
+                    label="原零价"
125
+                    width="100">
126
+                    </el-table-column>
127
+                    <el-table-column
128
+                    prop="name"
129
+                    label="现零价"
130
+                    width="100">
131
+                    </el-table-column>
132
+                    <el-table-column
133
+                    prop="name"
134
+                    label="进货价"
135
+                    width="100">
136
+                    </el-table-column>
137
+                    <el-table-column
138
+                    prop="name"
139
+                    label="零售总价"
140
+                    width="100">
141
+                    </el-table-column>
142
+                    <el-table-column
143
+                    prop="name"
144
+                    label="批号"
145
+                    width="100">
146
+                    </el-table-column>
147
+                    <el-table-column
148
+                    prop="name"
149
+                    label="生产日期"
150
+                    width="100">
151
+                    </el-table-column>
152
+                    <el-table-column
153
+                    prop="name"
154
+                    label="有效日期"
155
+                    width="100">
156
+                    </el-table-column>
157
+                </el-table>
158
+            <!-- </div> -->
159
+        </div>
160
+    </div>
161
+    <el-dialog
162
+        title="库房调价"
163
+        :visible.sync="dialogVisible"
164
+        width="1200px"
165
+        :before-close="handleClose">
166
+        <el-form :model="form" class="modifyDialog" label-width="120px">
167
+            <el-form-item label="药品名称">
168
+                <el-input v-model="form.name"></el-input>
169
+            </el-form-item>
170
+            <el-form-item label="原价格">
171
+                <el-input v-model="form.name"></el-input>
172
+            </el-form-item>
173
+            <el-form-item label="现价格">
174
+                <el-input v-model="form.name"></el-input>
175
+            </el-form-item>
176
+            <el-form-item label="调价数量">
177
+                <el-input v-model="form.name"></el-input>
178
+            </el-form-item>
179
+            <el-form-item label="备注" style="width:66%;">
180
+                <div style="display:flex;">
181
+                    <el-input v-model="form.name"></el-input>
182
+                    <el-button style="margin-left:5px;" type="primary">添加</el-button>
183
+                </div>
184
+            </el-form-item>
185
+        </el-form>
186
+        <el-table :data="tableData" border :header-cell-style="{ backgroundColor: 'rgb(245, 247, 250)' }">
187
+            <el-table-column
188
+            prop="date"
189
+            label="单据编号"
190
+            width="100">
191
+            </el-table-column>
192
+            <el-table-column
193
+            prop="date"
194
+            label="药品名称"
195
+            width="100">
196
+            </el-table-column>
197
+            <el-table-column
198
+            prop="name"
199
+            label="规格"
200
+            width="100">
201
+            </el-table-column>
202
+            <el-table-column
203
+            prop="name"
204
+            label="单位"
205
+            width="100">
206
+            </el-table-column>
207
+            <el-table-column
208
+            prop="name"
209
+            label="调价数量"
210
+            width="100">
211
+            </el-table-column>
212
+            <el-table-column
213
+            prop="name"
214
+            label="原进货价"
215
+            width="100">
216
+            </el-table-column>
217
+            <el-table-column
218
+            prop="name"
219
+            label="原零售价"
220
+            width="100">
221
+            </el-table-column>
222
+            <el-table-column
223
+            prop="name"
224
+            label="新零售价"
225
+            width="100">
226
+            </el-table-column>
227
+            <el-table-column
228
+            prop="name"
229
+            label="生产厂商"
230
+            width="100">
231
+            </el-table-column>
232
+            <el-table-column
233
+            prop="name"
234
+            label="批准文号"
235
+            width="100">
236
+            </el-table-column>
237
+            <el-table-column
238
+            prop="name"
239
+            label="供应商"
240
+            width="100">
241
+            </el-table-column>
242
+            <el-table-column
243
+            prop="name"
244
+            label="备注"
245
+            width="100">
246
+            </el-table-column>
247
+            <el-table-column
248
+            fixed="right"
249
+            width="100"
250
+            label="操作">
251
+                <template slot-scope="scope">
252
+                    <el-button type="text" size="small">删除</el-button>
253
+                    <el-button type="text" size="small">编辑</el-button>
254
+                </template>
255
+            </el-table-column>
256
+        </el-table>
257
+        <span slot="footer" class="dialog-footer">
258
+            <el-button @click="dialogVisible = false">取 消</el-button>
259
+            <el-button type="primary" @click="dialogVisible = false">确 定</el-button>
260
+        </span>
261
+    </el-dialog>
262
+  
263
+  </div>
264
+</template>
265
+
266
+<script>
267
+import BreadCrumb from "../components/bread-crumb";
268
+
269
+export default {
270
+    name: "stockModifyPrice",
271
+    components:{
272
+        BreadCrumb
273
+    },
274
+    data() {
275
+        return{
276
+            crumbs: [
277
+                { path: false, name: "库存管理" },
278
+                { path: false, name: "耗材管理" },
279
+                { path: false, name: "耗材调价" }
280
+            ],
281
+            tableHeight: '',
282
+            fullHeight: document.documentElement.clientHeight,
283
+            searchKey:'',
284
+            value1:'',
285
+            value2:'',
286
+            tableData: [{
287
+                date: '2016-05-02',
288
+                name: '王小虎',
289
+                address: '上海市普陀区金沙江路 1518 弄'
290
+                }, {
291
+                date: '2016-05-04',
292
+                name: '王小虎',
293
+                address: '上海市普陀区金沙江路 1517 弄'
294
+                }, {
295
+                date: '2016-05-01',
296
+                name: '王小虎',
297
+                address: '上海市普陀区金沙江路 1519 弄'
298
+                }, {
299
+                date: '2016-05-03',
300
+                name: '王小虎',
301
+                address: '上海市普陀区金沙江路 1516 弄'
302
+            }],
303
+            dialogVisible:false,
304
+            form: {
305
+                name: '',
306
+            },
307
+        }
308
+    },
309
+    methods:{
310
+        search(){
311
+
312
+        },
313
+        print(){
314
+            this.$router.push({path:'/stock/stockModifyPricePrint'})
315
+            
316
+        }
317
+    },
318
+    created(){
319
+        let tableHeight = document.body.clientHeight - 200;
320
+        this.tableHeight = tableHeight
321
+    },
322
+    mounted() {
323
+      const that = this;
324
+      window.onresize = () => {
325
+        return (() => {
326
+          window.fullHeight = document.documentElement.clientHeight;
327
+          that.fullHeight = window.fullHeight
328
+        })()
329
+      }
330
+    },
331
+    watch: {
332
+      fullHeight(val) {
333
+        if (!this.timer) {
334
+          this.fullHeight = val
335
+          let tableHeight = val - 200
336
+          this.tableHeight = tableHeight
337
+          this.timer = true
338
+          let that = this
339
+          setTimeout(function() {
340
+            that.timer = false
341
+          }, 400)
342
+        }
343
+      }
344
+
345
+    }
346
+};
347
+</script>
348
+
349
+<style rel="stylesheet/scss" lang="scss">
350
+.app-container {
351
+  // margin: 20px;
352
+  font-size: 15px;
353
+}
354
+.modifyDialog{
355
+    display: flex;
356
+    flex-wrap: wrap;
357
+    margin-bottom: 10px;
358
+    .el-form-item{
359
+        width: 33%;
360
+    }
361
+}
362
+.el-table td,
363
+.el-table th.is-leaf,
364
+.el-table--border,
365
+.el-table--group {
366
+  border-color: #d0d3da;
367
+}
368
+.el-table--border::after,
369
+.el-table--group::after,
370
+.el-table::before {
371
+  background-color: #d0d3da;
372
+}
373
+::-webkit-scrollbar{
374
+    height: 20px !important;
375
+}
376
+</style>

+ 119 - 0
src/xt_pages/stock/stockModifyPricePrint.vue View File

@@ -0,0 +1,119 @@
1
+<template>
2
+    <div class="main-contain">
3
+        <div class="position">
4
+        <bread-crumb :crumbs="crumbs"></bread-crumb>
5
+        <el-row style="float:right;">
6
+            <el-col :span="24">
7
+            <el-button size="small" icon="el-icon-printer" type="primary" @click="printAction">打印</el-button>
8
+            </el-col>
9
+        </el-row>
10
+        </div>
11
+        <div class="app-container" style="background-color: white;">
12
+            <div id="print_content">
13
+                <div class="printTitle">耗材调价登记单</div>
14
+                <div class="flex">
15
+                    <div>药库类别:</div>
16
+                    <div>调价日期:</div>
17
+                </div>
18
+                <div class="flex">
19
+                    <div>单据编号:</div>
20
+                    <div>打印日期:</div>
21
+                </div>
22
+                <div class="tableTitle">
23
+                    <div style="width:8%">货号</div>
24
+                    <div style="width:8%">药品名称</div>
25
+                    <div style="width:8%">规格</div>
26
+                    <div style="width:8%">单位</div>
27
+                    <div style="width:8%">批次</div>
28
+                    <div style="width:8%">调价数量</div>
29
+                    <div style="width:8%">原进货价</div>
30
+                    <div style="width:8%">新进货价</div>
31
+                    <div style="width:8%">进货差价</div>
32
+                    <div style="width:8%">原零售价</div>
33
+                    <div style="width:8%">新零售价</div>
34
+                    <div style="width:8%">零售差价</div>
35
+                </div>
36
+                <div class="tableTr" v-for="item in 3">
37
+                    <div style="width:8%">上三</div>
38
+                    <div style="width:8%">上三名称</div>
39
+                    <div style="width:8%">上三</div>
40
+                    <div style="width:8%">上三</div>
41
+                    <div style="width:8%">上三</div>
42
+                    <div style="width:8%">上三数量</div>
43
+                    <div style="width:8%">上三货价</div>
44
+                    <div style="width:8%">上三货价</div>
45
+                    <div style="width:8%">上三差价</div>
46
+                    <div style="width:8%">上三售价</div>
47
+                    <div style="width:8%">上三售价</div>
48
+                    <div style="width:8%">上三差价</div>
49
+                </div>
50
+                <div class="tableBottom">
51
+                    <div style="width:8%">合计:</div>
52
+                    <div style="width:8%"></div>
53
+                    <div style="width:8%"></div>
54
+                    <div style="width:8%"></div>
55
+                    <div style="width:8%"></div>
56
+                    <div style="width:8%"></div>
57
+                    <div style="width:8%"></div>
58
+                    <div style="width:8%"></div>
59
+                    <div style="width:8%">上三差价</div>
60
+                    <div style="width:8%"></div>
61
+                    <div style="width:8%"></div>
62
+                    <div style="width:8%">上三差价</div>
63
+                </div>
64
+                <div style="display:flex;margin-top:1px;float:right;margin-top:10px;">
65
+                    <div style="width:80px;">审批:</div><div style="width:100px;"></div>
66
+                    <div style="width:100px;">药材主任:</div><div style="width:60px;"></div>
67
+                    <div style="width:50px;">会计:</div><div style="width:100px;"></div>
68
+                    <div style="width:50px;">审核:</div><div style="width:100px;"></div>
69
+                    <div style="width:70px;">制单人:</div><div style="width:100px;"></div>
70
+                </div>
71
+            </div>
72
+        </div>
73
+    </div>
74
+</template>
75
+
76
+<script>
77
+import BreadCrumb from '@/xt_pages/components/bread-crumb'
78
+const moment = require('moment');
79
+import { uParseTime } from '@/utils/tools'
80
+export default {
81
+    components:{
82
+        BreadCrumb
83
+    },
84
+    data(){
85
+        return{
86
+          crumbs: [
87
+            { path: false, name: '库存管理' },
88
+            { path: false, name: '耗材管理' },
89
+            { path: false, name: '耗材调价打印' },
90
+          ],
91
+        }
92
+    },
93
+    methods:{
94
+        printAction: function() {
95
+            const style = '@media print { .printTitle{font-size: 22px;text-align: center;}.flex{display: flex;justify-content: space-between;}.tableTitle{display: flex;border-top:1px solid #000;border-bottom: 1px solid #000;padding: 10px 0;}.tableTr{display: flex;border-bottom: 1px dashed #000;padding: 10px 0;}.tableBottom{display: flex;border-bottom: 1px solid #000;padding: 10px 0;} }';
96
+            printJS({
97
+            printable: 'print_content',
98
+            type: 'html',
99
+            documentTitle: '  ',
100
+            style: style,
101
+            scanStyles: false
102
+            })
103
+        },
104
+
105
+
106
+    },
107
+    created(){
108
+    }
109
+}
110
+</script>
111
+
112
+
113
+<style rel="stylesheet/scss" lang="scss" scoped>
114
+.printTitle{font-size: 22px;text-align: center;}
115
+.flex{display: flex;justify-content: space-between;}
116
+.tableTitle{display: flex;border-top:1px solid #000;border-bottom: 1px solid #000;padding: 10px 0;}
117
+.tableTr{display: flex;border-bottom: 1px dashed #000;padding: 10px 0;}
118
+.tableBottom{display: flex;border-bottom: 1px solid #000;padding: 10px 0;}
119
+</style>

+ 305 - 0
src/xt_pages/stock/stockWarning.vue View File

@@ -0,0 +1,305 @@
1
+<template>
2
+  <div class="main-contain">
3
+    <div class="position">
4
+      <bread-crumb :crumbs="crumbs"></bread-crumb>
5
+    </div>
6
+    <div class="app-container">
7
+        <div style="display: flex;align-items: center;justify-content: space-between;margin-bottom:10px;">
8
+            <div>
9
+                <el-input
10
+                size="small"
11
+                style="width: 200px;"
12
+                class="filter-item"
13
+                v-model.trim="searchKey"
14
+                placeholder=""
15
+                />
16
+                <el-button
17
+                size="small"
18
+                class="filter-item"
19
+                type="primary"
20
+                icon="el-icon-search"
21
+                @click="search"
22
+                >搜索</el-button
23
+                >
24
+                <el-date-picker
25
+                size="small"
26
+                v-model="value1"
27
+                type="date"
28
+                style="margin-left:5px;width:140px;"
29
+                placeholder="选择日期">
30
+                </el-date-picker>
31
+                <el-date-picker
32
+                size="small"
33
+                v-model="value2"
34
+                type="date"
35
+                style="margin-left:5px;width:140px;"
36
+                placeholder="选择日期">
37
+                </el-date-picker>
38
+            </div>
39
+            <div>
40
+                <el-button size="small" type="primary" @click="dialogVisible = true">新增</el-button>
41
+                <el-button size="small" type="primary">核对</el-button>
42
+                <el-button size="small" type="primary" @click="print">打印</el-button>
43
+                <el-button size="small" type="primary">导出</el-button>
44
+            </div>
45
+        </div>
46
+        <el-table :data="tableData" border :header-cell-style="{ backgroundColor: 'rgb(245, 247, 250)' }">
47
+            <el-table-column
48
+            prop="date"
49
+            label="报损编码">
50
+            </el-table-column>
51
+            <el-table-column
52
+            prop="date"
53
+            label="报损日期">
54
+            </el-table-column>
55
+            <el-table-column
56
+            prop="name"
57
+            label="操作人">
58
+            </el-table-column>
59
+            <el-table-column
60
+            prop="name"
61
+            label="审核日期">
62
+            </el-table-column>
63
+            <el-table-column
64
+            prop="name"
65
+            label="核对人">
66
+            </el-table-column>
67
+            <el-table-column
68
+            prop="name"
69
+            label="状态">
70
+            </el-table-column>
71
+            <el-table-column
72
+            label="操作">
73
+                <template slot-scope="scope">
74
+                    <el-button type="text" size="small">删除</el-button>
75
+                    <el-button type="text" size="small">编辑</el-button>
76
+                </template>
77
+            </el-table-column>
78
+        </el-table>
79
+        <el-pagination
80
+            @size-change="handleSizeChange"
81
+            @current-change="handleCurrentChange"
82
+            :page-sizes="[5, 10, 50, 100]"
83
+            :page-size="5"
84
+            background
85
+            style="margin-top:20px;text-align: right"
86
+            layout="total, sizes, prev, pager, next, jumper"
87
+            :total="total"
88
+        >
89
+        </el-pagination>
90
+    </div>
91
+    <el-dialog
92
+        title="库房调价"
93
+        :visible.sync="dialogVisible"
94
+        width="1200px"
95
+        :before-close="handleClose">
96
+        <el-form :model="form" class="modifyDialog" label-width="120px">
97
+            <el-form-item label="耗材ID">
98
+                <el-input v-model="form.name"></el-input>
99
+            </el-form-item>
100
+            <el-form-item label="药品名称">
101
+                <el-input v-model="form.name"></el-input>
102
+            </el-form-item>
103
+            <el-form-item label="规格">
104
+                <el-input v-model="form.name"></el-input>
105
+            </el-form-item>
106
+            <el-form-item label="单位">
107
+                <el-input v-model="form.name"></el-input>
108
+            </el-form-item>
109
+            <el-form-item label="进货价">
110
+                <el-input v-model="form.name"></el-input>
111
+            </el-form-item>
112
+            <el-form-item label="零售价">
113
+                <el-input v-model="form.name"></el-input>
114
+            </el-form-item>
115
+            <el-form-item label="报损数量">
116
+                <el-input v-model="form.name"></el-input>
117
+            </el-form-item>
118
+            <el-form-item label="库存">
119
+                <el-input v-model="form.name"></el-input>
120
+            </el-form-item>
121
+            <el-form-item label="产地">
122
+                <el-input v-model="form.name"></el-input>
123
+            </el-form-item>
124
+            <el-form-item label="批准文号">
125
+                <el-input v-model="form.name"></el-input>
126
+            </el-form-item>
127
+            <el-form-item label="生产厂商">
128
+                <el-input v-model="form.name"></el-input>
129
+            </el-form-item>
130
+            <el-form-item label="备注">
131
+                <div style="display:flex;">
132
+                    <el-input v-model="form.name"></el-input>
133
+                    <el-button style="margin-left:5px;" type="primary">添加</el-button>
134
+                </div>
135
+            </el-form-item>
136
+        </el-form>
137
+        <el-table :data="tableData" border :header-cell-style="{ backgroundColor: 'rgb(245, 247, 250)' }">
138
+            <el-table-column
139
+            prop="date"
140
+            label="耗材ID"
141
+            width="100">
142
+            </el-table-column>
143
+            <el-table-column
144
+            prop="date"
145
+            label="耗材名称"
146
+            width="100">
147
+            </el-table-column>
148
+            <el-table-column
149
+            prop="name"
150
+            label="规格"
151
+            width="100">
152
+            </el-table-column>
153
+            <el-table-column
154
+            prop="name"
155
+            label="单位"
156
+            width="100">
157
+            </el-table-column>
158
+            <el-table-column
159
+            prop="name"
160
+            label="调价数量"
161
+            width="100">
162
+            </el-table-column>
163
+            <el-table-column
164
+            prop="name"
165
+            label="原进货价"
166
+            width="100">
167
+            </el-table-column>
168
+            <el-table-column
169
+            prop="name"
170
+            label="原零售价"
171
+            width="100">
172
+            </el-table-column>
173
+            <el-table-column
174
+            prop="name"
175
+            label="新零售价"
176
+            width="100">
177
+            </el-table-column>
178
+            <el-table-column
179
+            prop="name"
180
+            label="生产厂商"
181
+            width="100">
182
+            </el-table-column>
183
+            <el-table-column
184
+            prop="name"
185
+            label="产地"
186
+            width="100">
187
+            </el-table-column>
188
+            <el-table-column
189
+            prop="name"
190
+            label="批准文号"
191
+            width="100">
192
+            </el-table-column>
193
+            <el-table-column
194
+            prop="name"
195
+            label="备注"
196
+            width="100">
197
+            </el-table-column>
198
+            <el-table-column
199
+            fixed="right"
200
+            width="100"
201
+            label="操作">
202
+                <template slot-scope="scope">
203
+                    <el-button type="text" size="small">删除</el-button>
204
+                    <el-button type="text" size="small">编辑</el-button>
205
+                </template>
206
+            </el-table-column>
207
+        </el-table>
208
+        <span slot="footer" class="dialog-footer">
209
+            <el-button @click="dialogVisible = false">取 消</el-button>
210
+            <el-button type="primary" @click="dialogVisible = false">确 定</el-button>
211
+        </span>
212
+    </el-dialog>
213
+  
214
+  </div>
215
+</template>
216
+
217
+<script>
218
+import BreadCrumb from "../components/bread-crumb";
219
+
220
+export default {
221
+    name: "stockModifyPrice",
222
+    components:{
223
+        BreadCrumb
224
+    },
225
+    data() {
226
+        return{
227
+            crumbs: [
228
+                { path: false, name: "库存管理" },
229
+                { path: false, name: "耗材管理" },
230
+                { path: false, name: "耗材报损" }
231
+            ],
232
+            searchKey:'',
233
+            value1:'',
234
+            value2:'',
235
+            tableData: [{
236
+                date: '2016-05-02',
237
+                name: '王小虎',
238
+                address: '上海市普陀区金沙江路 1518 弄'
239
+                }, {
240
+                date: '2016-05-04',
241
+                name: '王小虎',
242
+                address: '上海市普陀区金沙江路 1517 弄'
243
+                }, {
244
+                date: '2016-05-01',
245
+                name: '王小虎',
246
+                address: '上海市普陀区金沙江路 1519 弄'
247
+                }, {
248
+                date: '2016-05-03',
249
+                name: '王小虎',
250
+                address: '上海市普陀区金沙江路 1516 弄'
251
+            }],
252
+            dialogVisible:false,
253
+            form: {
254
+                name: '',
255
+            },
256
+            total: 0,
257
+        }
258
+    },
259
+    methods:{
260
+        search(){
261
+
262
+        },
263
+        print(){
264
+            this.$router.push({path:'/stock/stockModifyPricePrint'})
265
+            
266
+        },
267
+        handleSizeChange(){},
268
+        handleCurrentChange(){}
269
+
270
+    },
271
+    created(){
272
+    },
273
+    mounted() {
274
+    },
275
+};
276
+</script>
277
+
278
+<style rel="stylesheet/scss" lang="scss">
279
+.app-container {
280
+  // margin: 20px;
281
+  font-size: 15px;
282
+}
283
+.modifyDialog{
284
+    display: flex;
285
+    flex-wrap: wrap;
286
+    margin-bottom: 10px;
287
+    .el-form-item{
288
+        width: 33%;
289
+    }
290
+}
291
+.el-table td,
292
+.el-table th.is-leaf,
293
+.el-table--border,
294
+.el-table--group {
295
+  border-color: #d0d3da;
296
+}
297
+.el-table--border::after,
298
+.el-table--group::after,
299
+.el-table::before {
300
+  background-color: #d0d3da;
301
+}
302
+::-webkit-scrollbar{
303
+    height: 20px !important;
304
+}
305
+</style>