Bladeren bron

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

XMLWAN 3 jaren geleden
bovenliggende
commit
9ebe9e1444

+ 4 - 2
src/xt_pages/dialysis/details/dialog/computer_dialog.vue Bestand weergeven

@@ -53,7 +53,7 @@
53 53
         </el-form-item>
54 54
 
55 55
      
56
-        <el-form-item label="引血(ml/min)" v-if="template_id == 6">
56
+        <el-form-item label="引血(ml/min)" v-if="template_id == 6 && org_id != 10223">
57 57
           <el-input type="number" v-model="form.blood_drawing" style="width:200px;"></el-input>
58 58
         </el-form-item>
59 59
 
@@ -122,7 +122,8 @@
122 122
           { id: 3, name: '晚上' }
123 123
         ], // 该排班的区里的床位
124 124
         isPremission: false,
125
-        adminRoles:[{id:0,name:"请选择"}]
125
+        adminRoles:[{id:0,name:"请选择"}],
126
+        org_id:0
126 127
       }
127 128
     },
128 129
     props: {
@@ -150,6 +151,7 @@
150 151
     created() {
151 152
 
152 153
       this.template_id = this.$store.getters.xt_user.template_info.template_id
154
+      this.org_id = this.$store.getters.xt_user.template_info.org_id
153 155
       this.patient_id = this.$route.query.patient_id
154 156
       this.schedule_date = this.$route.query.date
155 157
       this.form.nurse_id = this.dialysis_order.id == 0 ? this.$store.getters.xt_user.user.id : this.dialysis_order.start_nurse

Diff onderdrukt omdat het te groot bestand
+ 1597 - 1454
src/xt_pages/dialysis/template/DialysisPrintOrderForty.vue


Diff onderdrukt omdat het te groot bestand
+ 860 - 706
src/xt_pages/dialysis/template/DialysisPrintOrderFortyOne.vue


Diff onderdrukt omdat het te groot bestand
+ 615 - 516
src/xt_pages/dialysis/template/DialysisPrintOrderFortyThree.vue


Diff onderdrukt omdat het te groot bestand
+ 603 - 529
src/xt_pages/dialysis/template/DialysisPrintOrderFortyTwo.vue


+ 55 - 5
src/xt_pages/dialysis/template/DialysisPrintOrderSix.vue Bestand weergeven

@@ -504,7 +504,7 @@
504 504
                       </div>
505 505
                     </div>
506 506
                   </div>
507
-                  <div class="row" style="padding: 2px 0;line-height:23px;display:flex;">
507
+                  <div class="row" style="padding: 2px 0;line-height:23px;display:flex;" v-if="org_id != 10223">
508 508
                     <div class="inline_block" style="flex:1; display:inline-block;">
509 509
                       备注:
510 510
                       <div class="under_line" style="width: 860px;line-height: 25px;text-align: left;margin-left: 2px;display: inline-block;white-space: normal;">
@@ -966,7 +966,7 @@
966 966
                       kg
967 967
                     </div>
968 968
 
969
-                    <div class="inline_block" style="flex:1;">
969
+                    <div class="inline_block" style="flex:1;" v-if="org_id != 10223">
970 970
                       透析中入量:
971 971
                       <div class="under_line" style="width: 70px;text-align: center">
972 972
                         {{ afterdialysis.dialysis_intakes ? afterdialysis.dialysis_intakes : "/" }}
@@ -982,6 +982,56 @@
982 982
                       ml
983 983
                     </div>
984 984
                   </div>
985
+                  <div class="row" style="padding: 2px 0;line-height:23px;display:flex;" v-if="org_id == 10223">
986
+                    <div class="inline_block" style="flex:1;">
987
+                      动脉管道:
988
+                      <div class="under_line" style="width: 100px;text-align: center">
989
+                        <span v-if="afterdialysis.arterial_tube == 0">/</span>
990
+                        <span v-if="afterdialysis.arterial_tube == 1">动脉管道0</span>
991
+                        <span v-if="afterdialysis.arterial_tube == 2">动脉管道+</span>
992
+                        <span v-if="afterdialysis.arterial_tube == 3">动脉管道++</span>
993
+                        <span v-if="afterdialysis.arterial_tube == 4">动脉管道+++</span>
994
+                      </div>
995
+                    </div>
996
+                    <div class="inline_block" style="flex:1;">
997
+                      静脉管道:
998
+                      <div class="under_line" style="width: 100px;text-align: center">
999
+                        <span v-if="afterdialysis.intravenous_tube == 0">/</span>
1000
+                        <span v-if="afterdialysis.intravenous_tube == 1">静脉管道0</span>
1001
+                        <span v-if="afterdialysis.intravenous_tube == 2">静脉管道+</span>
1002
+                        <span v-if="afterdialysis.intravenous_tube == 3">静脉管道++</span>
1003
+                        <span v-if="afterdialysis.intravenous_tube == 4">静脉管道+++</span>
1004
+                      </div>
1005
+                    </div>
1006
+                    <div class="inline_block" style="flex:1;">
1007
+                      并发症:
1008
+                      <div class="under_line" style="width: 170px;text-align: center">
1009
+                        {{ afterdialysis.complication ? afterdialysis.complication : "/" }}
1010
+                      </div>
1011
+                    </div>
1012
+                  </div>
1013
+                  <div class="row" style="padding: 2px 0;line-height:23px;display:flex;" v-if="org_id == 10223">
1014
+                    <div class="inline_block" style="flex:1;">
1015
+                      穿刺处血肿:
1016
+                      <div class="under_line" style="width: 50px;text-align: center">
1017
+                        <span v-if="afterdialysis.puncture_point_haematoma == 0">/</span>
1018
+                        <span v-if="afterdialysis.puncture_point_haematoma == 1">有</span>
1019
+                        <span v-if="afterdialysis.puncture_point_haematoma == 2">无</span>
1020
+                      </div>
1021
+                    </div>
1022
+                    <div class="inline_block" style="flex:1;">
1023
+                      中心静脉封管(肝素-A端):
1024
+                      <div class="under_line" style="width: 70px;text-align: center">
1025
+                        {{ afterdialysis.cvc_a ? afterdialysis.cvc_a : "/" }}
1026
+                      </div>
1027
+                    </div>
1028
+                    <div class="inline_block" style="flex:1;">
1029
+                      中心静脉封管(肝素-V端):
1030
+                      <div class="under_line" style="width: 70px;text-align: center">
1031
+                        {{ afterdialysis.cvc_v ? afterdialysis.cvc_v : "/" }}
1032
+                      </div>
1033
+                    </div>
1034
+                  </div>
985 1035
 
986 1036
                   <div class="row" style="padding: 2px 0;line-height:23px;display:flex;">
987 1037
                     <div class="inline_block" style="flex:1; display:inline-block;">
@@ -991,7 +1041,7 @@
991 1041
                       </div>
992 1042
                     </div>
993 1043
                   </div>
994
-                  <div class="row" style="padding: 2px 0;line-height:23px;display:flex;">
1044
+                  <div class="row" style="padding: 2px 0;line-height:23px;display:flex;" v-if="org_id != 10223">
995 1045
                     <div class="inline_block" style="flex:1; display:inline-block;">
996 1046
                       备注:
997 1047
                       <div class="under_line" style="width: 860px;line-height: 25px;text-align: left;margin-left: 2px;display: inline-block;white-space: normal;">
@@ -1223,7 +1273,7 @@ export default {
1223 1273
         this.$message.error('透前脉搏未填')
1224 1274
       }else if(this.predialysis.breathing_rate == ""){
1225 1275
         this.$message.error('透前呼吸频率未填')
1226
-      }else if((this.predialysis.systolic_blood_pressure == 0 || this.predialysis.diastolic_blood_pressure == 0) && this.org_id == 9987){
1276
+      }else if(this.predialysis.systolic_blood_pressure == 0 || this.predialysis.diastolic_blood_pressure == 0){
1227 1277
         this.$message.error('透前血压未填完整')
1228 1278
       }else if(this.predialysis.puncture_way == ''){
1229 1279
         this.$message.error('穿刺方式未填')
@@ -1281,7 +1331,7 @@ export default {
1281 1331
         this.$message.error('透后脉搏未填')
1282 1332
       }else if(this.afterdialysis.breathing_rate == 0){
1283 1333
         this.$message.error('透后呼吸频率未填')
1284
-      }else if((this.afterdialysis.systolic_blood_pressure == 0 || this.afterdialysis.diastolic_blood_pressure == 0) && this.org_id == 9987){
1334
+      }else if(this.afterdialysis.systolic_blood_pressure == 0 || this.afterdialysis.diastolic_blood_pressure == 0){
1285 1335
         this.$message.error('透后血压未填完整')
1286 1336
       }else if(this.afterdialysis.actual_treatment_hour == 0 && this.afterdialysis.actual_treatment_minute == 0){
1287 1337
         this.$message.error('实际治疗时间未填')

+ 1 - 1
src/xt_pages/dialysis/template/DialysisPrintOrderTen.vue Bestand weergeven

@@ -1240,7 +1240,7 @@ export default {
1240 1240
         this.$message.error('透后脉搏未填')
1241 1241
       }else if(this.afterdialysis.breathing_rate == 0){
1242 1242
         this.$message.error('透后呼吸频率未填')
1243
-      }else if((this.afterdialysis.systolic_blood_pressure == 0 || this.afterdialysis.diastolic_blood_pressure == 0) && this.org_id == 9987){
1243
+      }else if(this.afterdialysis.systolic_blood_pressure == 0 || this.afterdialysis.diastolic_blood_pressure == 0){
1244 1244
         this.$message.error('透后血压未填完整')
1245 1245
       }else if(this.afterdialysis.actual_treatment_hour == 0 && this.afterdialysis.actual_treatment_minute == 0){
1246 1246
         this.$message.error('实际治疗时间未填')

+ 1 - 1
src/xt_pages/dialysis/template/DialysisPrintOrderTwenty.vue Bestand weergeven

@@ -1182,7 +1182,7 @@ export default {
1182 1182
         this.$message.error('并发症未填')
1183 1183
       }else if(this.summary.dialysis_summary == ""){
1184 1184
         this.$message.error('透析小结未填')
1185
-      }else if(this.afterdialysis.patient_gose == ""){
1185
+      }else if(this.afterdialysis.patient_gose == 0){
1186 1186
         this.$message.error('患者去向未填')
1187 1187
       }else if(this.dialysisOrder.start_nurse == 0){
1188 1188
         this.$message.error('当班责任护士未填')

+ 86 - 10
src/xt_pages/hospitalStation/outpatientChargesManagement.vue Bestand weergeven

@@ -92,7 +92,16 @@
92 92
                     <div>
93 93
 
94 94
                         <el-button v-loading="loadingtwo"
95
-                                   v-if="(this.hisPatientInfo.balance_accounts_type != 2 && this.hisPatientInfo.id > 0 && this.hisPatientInfo.in_hospital_status == 1 && this.hisPatientInfo.out_hospital_status == 0 && this.order.id == 0)"
95
+                                   v-if="(this.activeName == 'first' && this.hisPatientInfo.balance_accounts_type != 2 && this.hisPatientInfo.id > 0 && this.hisPatientInfo.in_hospital_status == 1 && this.hisPatientInfo.out_hospital_status == 0 && this.order.id == 0)"
96
+                                   size="small"
97
+                                   @click="open(30)"
98
+                                   type="primary">上传费用明细
99
+                        </el-button>
100
+
101
+
102
+
103
+                        <el-button v-loading="loadingtwo"
104
+                                   v-if="(this.activeName != 'first' &&this.hisPatientInfo.balance_accounts_type != 2 && this.hisPatientInfo.id > 0 && this.hisPatientInfo.in_hospital_status == 1 && this.hisPatientInfo.out_hospital_status == 0 && this.order.id == 0)"
96 105
                                    size="small"
97 106
                                    @click="open(8)"
98 107
                                    type="primary">上传费用明细
@@ -100,14 +109,14 @@
100 109
 
101 110
                         <!--<el-button size="small" @click="open(1)" type="primary">打印</el-button>-->
102 111
                         <el-button v-loading="loadingone" size="small"
103
-                                   v-if="(this.hisPatientInfo.balance_accounts_type != 2 && this.hisPatientInfo.id > 0 && this.hisPatientInfo.in_hospital_status == 1 && this.hisPatientInfo.out_hospital_status == 0 && this.order.order_status == 1)"
112
+                                   v-if="(this.activeName != 'first' &&this.hisPatientInfo.balance_accounts_type != 2 && this.hisPatientInfo.id > 0 && this.hisPatientInfo.in_hospital_status == 1 && this.hisPatientInfo.out_hospital_status == 0 && this.order.order_status == 1)"
104 113
 
105 114
                                    @click="open(2)"
106 115
                                    type="primary">出院
107 116
                         </el-button>
108 117
 
109 118
                         <el-button v-loading="loadingone" size="small"
110
-                                   v-if="(this.hisPatientInfo.balance_accounts_type == 2  && this.hisPatientInfo.id > 0 && this.hisPatientInfo.in_hospital_status == 1 && this.hisPatientInfo.out_hospital_status == 0)"
119
+                                   v-if="(this.activeName != 'first' &&this.hisPatientInfo.balance_accounts_type == 2  && this.hisPatientInfo.id > 0 && this.hisPatientInfo.in_hospital_status == 1 && this.hisPatientInfo.out_hospital_status == 0)"
111 120
 
112 121
                                    @click="open(2)"
113 122
                                    type="primary">出院
@@ -115,42 +124,49 @@
115 124
 
116 125
 
117 126
                         <el-button v-loading="loadingtwo"
118
-                                   v-if="(this.hisPatientInfo.balance_accounts_type != 2 &&  this.hisPatientInfo.id > 0 && this.hisPatientInfo.in_hospital_status == 1 && this.hisPatientInfo.out_hospital_status == 1 && this.order.order_status == 1)||   (this.hisPatientInfo.id > 0 && this.hisPatientInfo.in_hospital_status == 1 && this.hisPatientInfo.out_hospital_status == 1 && this.order.order_status == 3)"
127
+                                   v-if="(this.activeName != 'first' &&this.hisPatientInfo.balance_accounts_type != 2 &&  this.hisPatientInfo.id > 0 && this.hisPatientInfo.in_hospital_status == 1 && this.hisPatientInfo.out_hospital_status == 1 && this.order.order_status == 1)||   (this.hisPatientInfo.id > 0 && this.hisPatientInfo.in_hospital_status == 1 && this.hisPatientInfo.out_hospital_status == 1 && this.order.order_status == 3)"
119 128
                                    size="small"
120 129
                                    @click="open(3)"
121 130
                                    type="primary">收费
122 131
                         </el-button>
123 132
 
124 133
                         <el-button v-loading="loadingtwo"
125
-                                   v-if="(this.hisPatientInfo.balance_accounts_type == 2 && this.hisPatientInfo.id > 0 && this.hisPatientInfo.in_hospital_status == 1 && this.hisPatientInfo.out_hospital_status == 1  && this.order.order_status != 2)"
134
+                                   v-if="(this.activeName != 'first' &&this.hisPatientInfo.balance_accounts_type == 2 && this.hisPatientInfo.id > 0 && this.hisPatientInfo.in_hospital_status == 1 && this.hisPatientInfo.out_hospital_status == 1  && this.order.order_status != 2)"
126 135
                                    size="small"
127 136
                                    @click="open(3)"
128 137
                                    type="primary">收费
129 138
                         </el-button>
130 139
 
131 140
                         <el-button size="small" @click="open(4)" type="primary"
132
-                                   v-if="this.hisPatientInfo.id > 0 && this.order.id > 0 &&  this.order.order_status == 2">
141
+                                   v-if="this.activeName != 'first' &&this.hisPatientInfo.id > 0 && this.order.id > 0 &&  this.order.order_status == 2">
133 142
                             退费
134 143
                         </el-button>
135
-                        <el-button v-if="this.order.order_status == 2" size="small" @click="open(5)" type="primary"
144
+                        <el-button v-if="this.activeName != 'first' &&this.order.order_status == 2" size="small" @click="open(5)" type="primary"
136 145
                         >结算单
137 146
                         </el-button>
138 147
 
139 148
                         <el-button
140
-                                v-if="(this.hisPatientInfo.balance_accounts_type != 2  && this.hisPatientInfo.id > 0 && this.hisPatientInfo.in_hospital_status == 1 && this.hisPatientInfo.out_hospital_status == 0)"
149
+                                v-if="(this.activeName == 'first' && this.hisPatientInfo.balance_accounts_type != 2  && this.hisPatientInfo.id > 0 && this.hisPatientInfo.in_hospital_status == 1 && this.hisPatientInfo.out_hospital_status == 0)"
150
+
151
+                                size="small" @click="open(9)" type="primary"
152
+                        >撤销明细
153
+                        </el-button>
154
+
155
+                        <el-button
156
+                                v-if="(this.activeName != 'first' && this.hisPatientInfo.balance_accounts_type != 2  && this.hisPatientInfo.id > 0 && this.hisPatientInfo.in_hospital_status == 1 && this.hisPatientInfo.out_hospital_status == 0)"
141 157
 
142 158
                                 size="small" @click="open(9)" type="primary"
143 159
                         >撤销明细
144 160
                         </el-button>
145 161
 
146 162
                         <el-button
147
-                                v-if="(this.hisPatientInfo.id > 0 && this.hisPatientInfo.in_hospital_status == 1 && this.hisPatientInfo.out_hospital_status == 1)"
163
+                                v-if="(this.activeName != 'first' &&this.hisPatientInfo.id > 0 && this.hisPatientInfo.in_hospital_status == 1 && this.hisPatientInfo.out_hospital_status == 1)"
148 164
                                 size="small" @click="open(6)" type="primary"
149 165
                         >撤销出院
150 166
                         </el-button>
151 167
 
152 168
                         <el-button
153
-                                v-if="(this.hisPatientInfo.id > 0 && this.hisPatientInfo.in_hospital_status == 1 && this.hisPatientInfo.out_hospital_status == 0)"
169
+                                v-if="(this.activeName != 'first' &&this.hisPatientInfo.id > 0 && this.hisPatientInfo.in_hospital_status == 1 && this.hisPatientInfo.out_hospital_status == 0)"
154 170
                                 size="small" @click="open(7)" type="primary"
155 171
                         >撤销入院
156 172
                         </el-button>
@@ -1989,13 +2005,27 @@
1989 2005
 
1990 2006
             })
1991 2007
         } else if (index == 9) {
2008
+          let settle_accounts_type = ""
2009
+          if(this.activeName == 'first'){
2010
+
2011
+            settle_accounts_type = 1
2012
+          }else{
2013
+
2014
+            settle_accounts_type = 2
2015
+
2016
+          }
1992 2017
           var that = this
1993 2018
           this.$confirm('是否撤销明细', '撤销明细', {
1994 2019
             confirmButtonText: '确 定',
1995 2020
             cancelButtonText: '取 消',
1996 2021
             type: 'warning'
1997 2022
           }).then(() => {
2023
+
1998 2024
             let params = {
2025
+              'settle_accounts_type':settle_accounts_type,
2026
+              'patient_id':this.patientInfo.id,
2027
+              'his_patient_id':this.hisPatientInfo.id,
2028
+              'record_time': this.record_time,
1999 2029
               'order_id': this.order.id,
2000 2030
               'admin_user_id': this.$store.getters.xt_user.user.id
2001 2031
             }
@@ -2030,6 +2060,52 @@
2030 2060
 
2031 2061
           }).catch(() => {
2032 2062
           })
2063
+        } else if(index == 30){
2064
+          var that = this
2065
+          let params = {
2066
+            'in_hospital_id': that.hisPatientInfo.id,
2067
+            'id': that.patientInfo.id,
2068
+            'admin_user_id': that.$store.getters.xt_user.user.id,
2069
+            'record_time': that.record_date
2070
+
2071
+          }
2072
+          if (this.activeName == 'first') {
2073
+            params['settle_accounts_type'] = 1
2074
+
2075
+          } else {
2076
+            params['start_time'] = that.other_start_time
2077
+            params['end_time'] = that.other_end_time
2078
+            params['settle_accounts_type'] = 2
2079
+
2080
+          }
2081
+          axios.get('http://127.0.0.1:9532/zh/api/uploadinfo/get', {
2082
+            params: params
2083
+          })
2084
+            .then(function(response) {
2085
+              if (response.data.state == 0) {
2086
+                that.$message.error(response.data.msg)
2087
+                return false
2088
+              } else {
2089
+                if (response.data.data.failed_code == -10) {
2090
+                  // that.$message.error(response.data.data.msg)
2091
+                  that.$confirm(response.data.data.msg, '医保错误信息', {
2092
+                    confirmButtonText: '确 定',
2093
+                    type: 'warning'
2094
+                  }).then(() => {
2095
+
2096
+                  }).catch(() => {
2097
+                  })
2098
+                } else {
2099
+                  that.$message.success('上传明细成功')
2100
+                  that.changeRadioAndPatient(1)
2101
+                }
2102
+
2103
+              }
2104
+            })
2105
+            .catch(function(error) {
2106
+
2107
+            })
2108
+
2033 2109
         }
2034 2110
       },
2035 2111
 

+ 47 - 43
src/xt_pages/outpatientCharges/summary.vue Bestand weergeven

@@ -7,8 +7,8 @@
7 7
             <div style="display: flex;justify-content: space-between;margin-bottom:10px;">
8 8
                 <div>
9 9
                     <!--<el-button size="small" style="margin-left:10px;" class="filter-item" type="primary"-->
10
-                               <!--@click="Action">-->
11
-                        <!--导出-->
10
+                    <!--@click="Action">-->
11
+                    <!--导出-->
12 12
                     <!--</el-button>-->
13 13
                     <el-input size="small" style="width:150px;" v-model="keywords" @input="searchAction"
14 14
                               @keyup.enter.native='searchAction'
@@ -434,7 +434,7 @@
434 434
           settle_type: row.settle_type,
435 435
           start_time: row.settle_start_time,
436 436
           end_time: row.settle_end_time,
437
-          balance_accounts_type:row.his_patient.balance_accounts_type
437
+          balance_accounts_type: row.his_patient.balance_accounts_type
438 438
         }
439 439
         this.orderObj = obj
440 440
 
@@ -478,11 +478,11 @@
478 478
               }
479 479
 
480 480
               if (order.his_patient != null) {
481
-                if (order.his_patient.balance_accounts_type == 1) {
481
+                if (order.his_patient.balance_accounts_type == 2) {
482 482
                   balance_accounts = '自费'
483 483
                 }
484 484
 
485
-                if (order.his_patient.balance_accounts_type == 2) {
485
+                if (order.his_patient.balance_accounts_type == 1) {
486 486
                   balance_accounts = '医保'
487 487
                 }
488 488
               }
@@ -532,34 +532,41 @@
532 532
 
533 533
               var hifmi_pay = 0.00
534 534
 
535
-              if (order.setl_detail.length > 0) {
535
+              console.log(order.setl_detail)
536
+              if (order.setl_detail && order.setl_detail.length > 0) {
536 537
                 var jsonObj = JSON.parse(order.setl_detail)
537
-                for (let i = 0; i < jsonObj.length; i++) {
538
-                  if (order.insutype == '310') {
539
-                    if (jsonObj[i].fund_pay_type == '310300') {
540
-                      hifmi_pay = jsonObj[i].fund_payamt
541
-                    }
542
-
543
-                  } else if (order.insutype == '390') {
544
-                    if (order.fund_pay_type == '390200') {
545
-                      hifmi_pay = jsonObj[i].fund_payamt
538
+                console.log(jsonObj)
539
+                if (jsonObj != null) {
540
+
541
+                  for (let i = 0; i < jsonObj.length; i++) {
542
+                    if (order.insutype == '310') {
543
+                      if (jsonObj[i].fund_pay_type == '310300') {
544
+                        hifmi_pay = jsonObj[i].fund_payamt
545
+                      }
546
+                    } else if (order.insutype == '390') {
547
+                      if (order.fund_pay_type == '390200') {
548
+                        hifmi_pay = jsonObj[i].fund_payamt
549
+                      }
546 550
                     }
547 551
                   }
548 552
                 }
549 553
               }
550 554
               var hifmi_pay = 0.00
551 555
 
552
-              if (order.setl_detail.length > 0) {
556
+              console.log(order.setl_detail)
557
+              if (order.setl_detail && order.setl_detail.length > 0) {
553 558
                 var jsonObj = JSON.parse(order.setl_detail)
554
-                for (let i = 0; i < jsonObj.length; i++) {
555
-                  if (order.insutype == '310') {
556
-                    if (jsonObj[i].fund_pay_type == '310300') {
557
-                      hifmi_pay = jsonObj[i].fund_payamt
559
+                if (jsonObj != null) {
560
+                  for (let i = 0; i < jsonObj.length; i++) {
561
+                    if (order.insutype == '310') {
562
+                      if (jsonObj[i].fund_pay_type == '310300') {
563
+                        hifmi_pay = jsonObj[i].fund_payamt
564
+                      }
558 565
                     }
559
-                  }
560
-                  if (order.insutype == '390') {
561
-                    if (jsonObj[i].fund_pay_type == '390200') {
562
-                      hifmi_pay = jsonObj[i].fund_payamt
566
+                    if (order.insutype == '390') {
567
+                      if (jsonObj[i].fund_pay_type == '390200') {
568
+                        hifmi_pay = jsonObj[i].fund_payamt
569
+                      }
563 570
                     }
564 571
                   }
565 572
                 }
@@ -636,7 +643,7 @@
636 643
         this.page = 1
637 644
         this.keywords = ''
638 645
         this.getHisOrderList()
639
-      },Action(){
646
+      }, Action() {
640 647
         getAllOrders().then(response => {
641 648
           if (response.data.state == 0) {
642 649
             this.$message.error(response.data.msg)
@@ -646,42 +653,40 @@
646 653
             let list = []
647 654
             for (let i = 0; i < response.data.data.order.length; i++) {
648 655
 
649
-
650 656
               var hifmi_pay = 0.00
651 657
               for (let b = 0; b < order.order_info.length; b++) {
652
-                let item_name = ""
653
-                let item_code = ""
654
-                let price = ""
655
-                let unit = ""
656
-                let spec = ""
657
-                let time = ""
658
-                let name = ""
659
-                let selfpay_prop = ""
660
-                if(order.order_info[b].advice.id == 0 && order.order_info[b].project.id > 0){
658
+                let item_name = ''
659
+                let item_code = ''
660
+                let price = ''
661
+                let unit = ''
662
+                let spec = ''
663
+                let time = ''
664
+                let name = ''
665
+                let selfpay_prop = ''
666
+                if (order.order_info[b].advice.id == 0 && order.order_info[b].project.id > 0) {
661 667
                   item_name = order.order_info[b].project.project.project_name
662
-                  item_code =  order.order_info[b].project.project.medical_code
668
+                  item_code = order.order_info[b].project.project.medical_code
663 669
                   price = order.order_info[b].pric
664 670
                   unit = order.order_info[b].project.project.unit
665
-                }else if(order.order_info[b].advice.id > 0 && order.order_info[b].project.id == 0){
671
+                } else if (order.order_info[b].advice.id > 0 && order.order_info[b].project.id == 0) {
666 672
                   item_name = order.order_info[b].advice.advice_name
667
-                  item_code =  order.order_info[b].advice.drug.medical_insurance_number
673
+                  item_code = order.order_info[b].advice.drug.medical_insurance_number
668 674
                   price = order.order_info[b].pric
669 675
                   unit = order.order_info[b].advice.prescribing_number_unit
670 676
 
671
-
672 677
                 }
673 678
                 selfpay_prop = order.order_info[b].selfpay_prop
674 679
 
675 680
                 let obj = {
676 681
                   '项目名称': item_name,
677
-                  '项目编码': "",
682
+                  '项目编码': '',
678 683
                   '医保编码': item_code,
679 684
                   '零售价': price,
680 685
                   '单位': unit,
681
-                  '规格': "",
686
+                  '规格': '',
682 687
                   '收费时间': time,
683 688
                   '报销比例': selfpay_prop,
684
-                  '患者名称': name,
689
+                  '患者名称': name
685 690
                 }
686 691
 
687 692
                 list.push(obj)
@@ -701,7 +706,6 @@
701 706
           }
702 707
         })
703 708
 
704
-
705 709
       },
706 710
       searchAction() {
707 711
         this.page = 1

+ 132 - 132
src/xt_pages/outpatientTool/components/detail.vue Bestand weergeven

@@ -3,95 +3,95 @@
3 3
         <div class="position">
4 4
             <bread-crumb :crumbs='crumbs'></bread-crumb>
5 5
         </div> -->
6
-        <div>
7
-            <div style="display: flex;justify-content: space-between;margin-bottom:10px;">
8
-                <div>
9
-                    <!--<el-button size="small" style="margin-left:10px;" class="filter-item" type="primary"-->
10
-                    <!--@click="Action">-->
11
-                    <!--导出-->
12
-                    <!--</el-button>-->
13
-                    <el-input size="small" style="width:150px;" v-model="keywords" @input="searchAction"
14
-                              @keyup.enter.native='searchAction'
15
-                              placeholder="请输入患者姓名"
16
-                              class="filter-item"/>
17
-                    <el-select size="small" v-model="item_type" placeholder="请选择"
18
-                               style="width:150px;margin-left:10px;" @change="changeItem">
19
-                        <el-option
20
-                                label="全部"
21
-                                value="0">
22
-                        </el-option>
23
-                        <el-option
24
-                                v-for="item,index in items"
25
-                                :key="index"
26
-                                :label="item.name"
27
-                                :value="item.id">
28
-                        </el-option>
29
-                    </el-select>
30
-                    <el-date-picker
31
-                            v-model="chargeDate"
32
-                            type="daterange"
33
-                            value-format="yyyy-MM-dd"
34
-                            range-separator="至"
35
-                            start-placeholder="开始日期"
36
-                            @change="changeDate"
37
-                            end-placeholder="结束日期">
38
-                    </el-date-picker>
39
-                    <!--<el-radio v-model="radio" label="1">明细</el-radio>-->
40
-                    <!--<el-radio v-model="radio" label="2">汇总</el-radio>-->
41
-                </div>
42
-                <div>
43
-                    <!-- <el-popover
44
-                      placement="bottom"
45
-                      width="210"
46
-                      trigger="click">
47
-                      <el-button size="small" ref="button_two" @click="open(1)">打印清单</el-button>
48
-                      <el-button size="small" ref="button_six" @click="open(2)">打印汇总</el-button>
49
-                      <el-button slot="reference" style="margin:0 10px;" type="primary" size="small">打印</el-button>
50
-
51
-                    </el-popover> -->
52
-                    <el-button size="small" type="primary" @click="export_detail">报表下载</el-button>
53
-                </div>
6
+    <div>
7
+        <div style="display: flex;justify-content: space-between;margin-bottom:10px;">
8
+            <div>
9
+                <!--<el-button size="small" style="margin-left:10px;" class="filter-item" type="primary"-->
10
+                <!--@click="Action">-->
11
+                <!--导出-->
12
+                <!--</el-button>-->
13
+                <el-input size="small" style="width:150px;" v-model="keywords" @input="searchAction"
14
+                          @keyup.enter.native='searchAction'
15
+                          placeholder="请输入患者姓名"
16
+                          class="filter-item"/>
17
+                <el-select size="small" v-model="item_type" placeholder="请选择"
18
+                           style="width:150px;margin-left:10px;" @change="changeItem">
19
+                    <el-option
20
+                            label="全部"
21
+                            value="0">
22
+                    </el-option>
23
+                    <el-option
24
+                            v-for="item,index in items"
25
+                            :key="index"
26
+                            :label="item.name"
27
+                            :value="item.id">
28
+                    </el-option>
29
+                </el-select>
30
+                <el-date-picker
31
+                        v-model="chargeDate"
32
+                        type="daterange"
33
+                        value-format="yyyy-MM-dd"
34
+                        range-separator="至"
35
+                        start-placeholder="开始日期"
36
+                        @change="changeDate"
37
+                        end-placeholder="结束日期">
38
+                </el-date-picker>
39
+                <!--<el-radio v-model="radio" label="1">明细</el-radio>-->
40
+                <!--<el-radio v-model="radio" label="2">汇总</el-radio>-->
41
+            </div>
42
+            <div>
43
+                <!-- <el-popover
44
+                  placement="bottom"
45
+                  width="210"
46
+                  trigger="click">
47
+                  <el-button size="small" ref="button_two" @click="open(1)">打印清单</el-button>
48
+                  <el-button size="small" ref="button_six" @click="open(2)">打印汇总</el-button>
49
+                  <el-button slot="reference" style="margin:0 10px;" type="primary" size="small">打印</el-button>
50
+
51
+                </el-popover> -->
52
+                <el-button size="small" type="primary" @click="export_detail">报表下载</el-button>
54 53
             </div>
55
-            <el-table :data="tableData" border :row-style="{ color: '#303133' }" ref="table"
56
-                      :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
57
-                      :span-method="merge"
58
-                      show-summary
59
-                      :summary-method="getTotal"
60
-                      max-height="600"
61
-
62
-                      v-loading="detail_loading"
63
-                      highlight-current-row>
64
-
65
-                <el-table-column align="center" prop="name" label="患者名字">
66
-                    <template slot-scope="scope">{{ scope.row.name }}</template>
67
-                </el-table-column>
68
-                <!--<el-table-column align="center" prop="name" label="患者类型">-->
69
-                <!--<template slot-scope="scope"></template>-->
70
-                <!--</el-table-column>-->
71
-
72
-                <el-table-column align="center" prop="name" label="项目名称">
73
-                    <template slot-scope="scope">{{scope.row.item_name}}</template>
74
-                </el-table-column>
75
-                <el-table-column align="center" prop="name" label="数量">
76
-                    <template slot-scope="scope">{{scope.row.count}}</template>
77
-                </el-table-column>
78
-                <el-table-column align="center" prop="name" label="单价">
79
-                    <template slot-scope="scope">{{scope.row.price.toFixed(2)}}</template>
80
-                </el-table-column>
81
-                <el-table-column align="center" prop="name" label="费用">
82
-                    <template slot-scope="scope">
83
-                        <div>{{(scope.row.price.toFixed(2)*scope.row.count).toFixed(2)}}</div>
84
-                    </template>
85
-                </el-table-column>
86
-
87
-                <el-table-column align="center" prop="total" label="费用总额">
88
-                    <template slot-scope="scope">
89
-                        <div>{{scope.row.total.toFixed(2)}}</div>
90
-                    </template>
91
-                </el-table-column>
92
-
93
-            </el-table>
94 54
         </div>
55
+        <el-table :data="tableData" border :row-style="{ color: '#303133' }" ref="table"
56
+                  :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
57
+                  :span-method="merge"
58
+                  show-summary
59
+                  :summary-method="getTotal"
60
+                  max-height="600"
61
+
62
+                  v-loading="detail_loading"
63
+                  highlight-current-row>
64
+
65
+            <el-table-column align="center" prop="name" label="患者名字">
66
+                <template slot-scope="scope">{{ scope.row.name }}</template>
67
+            </el-table-column>
68
+            <!--<el-table-column align="center" prop="name" label="患者类型">-->
69
+            <!--<template slot-scope="scope"></template>-->
70
+            <!--</el-table-column>-->
71
+
72
+            <el-table-column align="center" prop="name" label="项目名称">
73
+                <template slot-scope="scope">{{scope.row.item_name}}</template>
74
+            </el-table-column>
75
+            <el-table-column align="center" prop="name" label="数量">
76
+                <template slot-scope="scope">{{scope.row.count}}</template>
77
+            </el-table-column>
78
+            <el-table-column align="center" prop="name" label="单价">
79
+                <template slot-scope="scope">{{scope.row.price.toFixed(2)}}</template>
80
+            </el-table-column>
81
+            <el-table-column align="center" prop="name" label="费用">
82
+                <template slot-scope="scope">
83
+                    <div>{{(scope.row.price.toFixed(2)*scope.row.count).toFixed(2)}}</div>
84
+                </template>
85
+            </el-table-column>
86
+
87
+            <el-table-column align="center" prop="total" label="费用总额">
88
+                <template slot-scope="scope">
89
+                    <div>{{scope.row.total.toFixed(2)}}</div>
90
+                </template>
91
+            </el-table-column>
92
+
93
+        </el-table>
94
+    </div>
95 95
 
96 96
     <!-- </div> -->
97 97
 </template>
@@ -110,9 +110,9 @@
110 110
     },
111 111
     data() {
112 112
       return {
113
-        detail_loading:false,
113
+        detail_loading: false,
114 114
         tempArr: [],
115
-        pos:0,
115
+        pos: 0,
116 116
 
117 117
         sameRowArr: [],
118 118
         keywords: '',
@@ -122,7 +122,7 @@
122 122
         items: [
123 123
           { id: 1, name: '药品' },
124 124
           { id: 2, name: '项目' },
125
-          { id: 3, name: '耗材' },
125
+          { id: 3, name: '耗材' }
126 126
 
127 127
         ]
128 128
 
@@ -217,14 +217,13 @@
217 217
                     // newObj['item_name'] = orders[b].order_info[c].advice.advice_name
218 218
                     newObj['item_id'] = orders[b].order_info[c].advice.drug_id
219 219
 
220
-                    if(orders[b].order_info[c].advice.drug.min_unit != orders[b].order_info[c].advice.drug.dose_unit) {
221
-                      newObj['item_name'] = orders[b].order_info[c].advice.advice_name + "( " + orders[b].order_info[c].advice.drug.dose + orders[b].order_info[c].advice.drug.dose_unit + "*" + orders[b].order_info[c].advice.drug.min_number + orders[b].order_info[c].advice.drug.min_unit + "/" + orders[b].order_info[c].advice.drug.max_unit + " )"
222
-                    }else{
220
+                    if (orders[b].order_info[c].advice.drug.min_unit != orders[b].order_info[c].advice.drug.dose_unit) {
221
+                      newObj['item_name'] = orders[b].order_info[c].advice.advice_name + '( ' + orders[b].order_info[c].advice.drug.dose + orders[b].order_info[c].advice.drug.dose_unit + '*' + orders[b].order_info[c].advice.drug.min_number + orders[b].order_info[c].advice.drug.min_unit + '/' + orders[b].order_info[c].advice.drug.max_unit + ' )'
222
+                    } else {
223 223
 
224
-                      newObj['item_name'] = ""
224
+                      newObj['item_name'] = ''
225 225
                     }
226 226
 
227
-
228 227
                   }
229 228
                   if (orders[b].order_info[c].advice_id == 0 && orders[b].order_info[c].project_id > 0) {
230 229
                     newObj['type'] = 2
@@ -233,10 +232,8 @@
233 232
                     if (orders[b].order_info[c].project.type == 2) {
234 233
                       newObj['item_name'] = orders[b].order_info[c].project.project.project_name
235 234
 
236
-
237 235
                     } else if (orders[b].order_info[c].project.type == 3) {
238
-                      newObj['item_name'] = orders[b].order_info[c].project.good_info.good_name + "( "+ orders[b].order_info[c].project.good_info.specification_name+" )"
239
-
236
+                      newObj['item_name'] = orders[b].order_info[c].project.good_info.good_name + '( ' + orders[b].order_info[c].project.good_info.specification_name + ' )'
240 237
 
241 238
                     }
242 239
                   }
@@ -246,7 +243,6 @@
246 243
               tempPatientsTwo.push(obj)
247 244
             }
248 245
 
249
-
250 246
             for (let d = 0; d < tempPatientsTwo.length; d++) {
251 247
               tempPatientsTwo[d]['new_order_info'] = []
252 248
               let project = []
@@ -269,6 +265,9 @@
269 265
                     count = count + tempPatientsTwo[d].order_info[a].count
270 266
                   }
271 267
                 }
268
+
269
+
270
+
272 271
                 obj['price'] = project[i].price
273 272
                 obj['type'] = project[i].type
274 273
                 obj['item_name'] = project[i].item_name
@@ -287,6 +286,7 @@
287 286
                     count = count + tempPatientsTwo[d].order_info[a].count
288 287
                   }
289 288
                 }
289
+
290 290
                 obj['price'] = advice[i].price
291 291
                 obj['type'] = advice[i].type
292 292
                 obj['item_name'] = advice[i].item_name
@@ -303,46 +303,47 @@
303 303
               let total = 0
304 304
               for (let b = 0; b < tempPatientsTwo[i].new_order_info.length; b++) {
305 305
                 let new_name = tempPatientsTwo[i].new_order_info[b].item_name
306
-                new_name=new_name.replace("( ","");
307
-                new_name=new_name.replace(" )","");
306
+                new_name = new_name.replace('( ', '')
307
+                new_name = new_name.replace(' )', '')
308 308
                 if (new_name.length != 0) {
309 309
                   total = parseFloat(total) + parseFloat((parseFloat(tempPatientsTwo[i].new_order_info[b].count.toString()) * parseFloat(tempPatientsTwo[i].new_order_info[b].price.toString().toString())).toFixed(2))
310 310
                 }
311 311
               }
312 312
               tempPatientsTwo[i]['total'] = total
313 313
             }
314
-            console.log('tempPatientsTwo',tempPatientsTwo)
314
+            console.log('tempPatientsTwo', tempPatientsTwo)
315 315
             for (let i = 0; i < tempPatientsTwo.length; i++) {
316 316
               // console.log(111,tempPatientsTwo[i].total)
317
-              if(tempPatientsTwo[i].new_order_info.length > 0){
317
+              if (tempPatientsTwo[i].new_order_info.length > 0) {
318 318
 
319
+                for (let b = 0; b < tempPatientsTwo[i].new_order_info.length; b++) {
320
+                  let new_name = tempPatientsTwo[i].new_order_info[b].item_name
321
+                  console.log('2 ' + new_name)
319 322
 
320
-              for (let b = 0; b < tempPatientsTwo[i].new_order_info.length; b++) {
321
-                let new_name = tempPatientsTwo[i].new_order_info[b].item_name
322
-                new_name=new_name.replace("( ","");
323
-                new_name=new_name.replace(" )","");
323
+                  new_name = new_name.replace('( ', '')
324
+                  new_name = new_name.replace(' )', '')
324 325
 
325
-                if (new_name.length != 0) {
326
-                  let obj = {
327
-                    name: tempPatientsTwo[i].name,
328
-                    patient_id: tempPatientsTwo[i].patient_id,
329
-                    price: tempPatientsTwo[i].new_order_info[b].price,
330
-                    type: tempPatientsTwo[i].new_order_info[b].type,
331
-                    item_name: tempPatientsTwo[i].new_order_info[b].item_name,
332
-                    item_id: tempPatientsTwo[i].new_order_info[b].item_id,
333
-                    count: tempPatientsTwo[i].new_order_info[b].count,
326
+                  if (new_name.length != 0) {
327
+                    let obj = {
328
+                      name: tempPatientsTwo[i].name,
329
+                      patient_id: tempPatientsTwo[i].patient_id,
330
+                      price: tempPatientsTwo[i].new_order_info[b].price,
331
+                      type: tempPatientsTwo[i].new_order_info[b].type,
332
+                      item_name: tempPatientsTwo[i].new_order_info[b].item_name,
333
+                      item_id: tempPatientsTwo[i].new_order_info[b].item_id,
334
+                      count: tempPatientsTwo[i].new_order_info[b].count
334 335
 
336
+                    }
337
+
338
+                    // if(b == 0){
339
+                    obj['total'] = tempPatientsTwo[i].total
340
+                    // }else{
341
+                    //   obj['total'] = 0
342
+                    // }
343
+                    this.tableData.push(obj)
335 344
                   }
336 345
 
337
-                  // if(b == 0){
338
-                    obj['total'] =  tempPatientsTwo[i].total
339
-                  // }else{
340
-                  //   obj['total'] = 0
341
-                  // }
342
-                  this.tableData.push(obj)
343 346
                 }
344
-
345
-              }
346 347
               }
347 348
             }
348 349
             this.handleSpanTempArr()
@@ -487,29 +488,28 @@
487 488
           let item_name = order.item_name
488 489
           let count = order.count
489 490
           let price = order.price.toFixed(2)
490
-          let pay_sumamt = (order.price.toFixed(2)*order.count).toFixed(2)
491
+          let pay_sumamt = (order.price.toFixed(2) * order.count).toFixed(2)
491 492
           let total = order.total.toFixed(2)
492 493
 
493
-
494 494
           let obj = {
495 495
             '患者姓名': name,
496 496
             '项目名称': item_name,
497 497
             '数量': count,
498 498
             '单价': price,
499 499
             '费用': pay_sumamt,
500
-            '费用总额':total,
500
+            '费用总额': total
501 501
           }
502 502
           list.push(obj)
503 503
         }
504 504
         import('@/vendor/Export2Excel').then(excel => {
505
-          const tHeader = [ '患者姓名', '项目名称', '数量', '单价', '费用', '费用总额']
506
-          const filterVal = [ '患者姓名', '项目名称', '数量', '单价', '费用', '费用总额']
505
+          const tHeader = ['患者姓名', '项目名称', '数量', '单价', '费用', '费用总额']
506
+          const filterVal = ['患者姓名', '项目名称', '数量', '单价', '费用', '费用总额']
507 507
           const data = this.formatJson(filterVal, list)
508 508
           excel.export_json_to_excel1({
509 509
             header: tHeader,
510 510
             data,
511 511
             filename: '明细',
512
-            ref:this.$refs['table'].$el
512
+            ref: this.$refs['table'].$el
513 513
           })
514 514
         })
515 515
 
@@ -537,7 +537,7 @@
537 537
             // sums[index] = sums[index].toFixed(2)
538 538
             let num = 0
539 539
             data.map(item => {
540
-              num += item.price.toFixed(2)*item.count
540
+              num += item.price.toFixed(2) * item.count
541 541
             })
542 542
             sums[index] = num.toFixed(2)
543 543
           } else {
@@ -546,7 +546,7 @@
546 546
         })
547 547
 
548 548
         return sums
549
-      },
549
+      }
550 550
     },
551 551
     created() {
552 552
       this.getSummaryDetailList()