Browse Source

提交代码

陈少旭 1 year ago
parent
commit
968f502276
2 changed files with 330 additions and 277 deletions
  1. 11 0
      src/api/his/his_zuobiao.js
  2. 319 277
      src/xt_pages/outpatientCharges/chargeDetailManagement.vue

+ 11 - 0
src/api/his/his_zuobiao.js View File

@@ -27,6 +27,17 @@ export function getZuoBiaoPatientMonthInfo(params) {
27 27
 }
28 28
 
29 29
 
30
+export function getUploadZuoBiaoPatientInfo(params) {
31
+  return request({
32
+    url: "/api/uploadzuobiaodetail/info",
33
+    method: "get",
34
+    params:params
35
+  });
36
+}
37
+
38
+
39
+
40
+
30 41
 
31 42
 
32 43
 

+ 319 - 277
src/xt_pages/outpatientCharges/chargeDetailManagement.vue View File

@@ -31,7 +31,7 @@
31 31
 
32 32
           </el-radio-group>
33 33
         </div>
34
-        <div class="mainCell" style="margin-bottom:10px;">
34
+        <div class="mainCell" style="margin-bottom:10px;" v-if="this.radio == 1">
35 35
           <el-input size="small" v-model.trim="search_input"
36 36
                     class="filter-item"/>
37 37
           <el-button size="small" style="margin-left:10px;" class="filter-item" type="primary"
@@ -39,8 +39,17 @@
39 39
             搜索
40 40
           </el-button>
41 41
         </div>
42
+
43
+        <div class="mainCell" style="margin-bottom:10px;" v-if="this.radio == 2">
44
+          <el-input size="small" v-model.trim="search_input_two"
45
+                    class="filter-item"/>
46
+          <el-button size="small" style="margin-left:10px;" class="filter-item" type="primary"
47
+                     @click="searchActiontwo">
48
+            搜索
49
+          </el-button>
50
+        </div>
42 51
         <div>
43
-          <el-table :data="patientTableData" :height="tableHeight" border
52
+          <el-table v-if="this.radio == 1" :data="patientTableData" :height="tableHeight" border
44 53
                     style="width: 100%;"
45 54
                     :row-style="{ color: '#303133' }"
46 55
                     :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
@@ -49,12 +58,21 @@
49 58
             <el-table-column align="center" prop="name" label="姓名" wdith='89'>
50 59
               <template slot-scope="scope">{{ scope.$index + 1 }}.{{ scope.row.name }}</template>
51 60
             </el-table-column>
52
-            <el-table-column align="center" prop="name" label="就诊号" width="110">
53
-              <template slot-scope="scope">{{ scope.row ? scope.row.number : '' }}
54
-              </template>
61
+          </el-table>
62
+
63
+
64
+          <el-table v-if="this.radio == 2" :data="upload_list" :height="tableHeight" border
65
+                    style="width: 100%;"
66
+                    :row-style="{ color: '#303133' }"
67
+                    :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
68
+                    highlight-current-row ref="tab"
69
+                    @current-change="handleCurrentChangetwo">
70
+            <el-table-column align="center" prop="name" label="姓名" wdith='89'>
71
+              <template slot-scope="scope">{{ scope.$index + 1 }}.{{ scope.row.his_patient.name }}</template>
55 72
             </el-table-column>
56 73
           </el-table>
57 74
 
75
+
58 76
         </div>
59 77
       </div>
60 78
 
@@ -66,7 +84,7 @@
66 84
             <el-button
67 85
               size="small"
68 86
               @click="open(1)"
69
-              type="primary">上传费用明细
87
+              type="primary">上传明细
70 88
             </el-button>
71 89
           </div>
72 90
 
@@ -74,7 +92,7 @@
74 92
             <el-button
75 93
               size="small"
76 94
               @click="open(2)"
77
-              type="primary">撤销费用明细
95
+              type="primary">撤销明细
78 96
             </el-button>
79 97
           </div>
80 98
 
@@ -82,42 +100,42 @@
82 100
 
83 101
         <div class="mainCenter" v-loading="loading">
84 102
           <el-tabs class="settlementTabs" v-model="activeName" @tab-click="handleClick">
85
-<!--            <el-tab-pane label="日结" name="first">-->
86
-<!--              <div style="display:flex;height:100%;">-->
87
-<!--                <div class="centerLeft">-->
88
-<!--                  <div class="tabsBox">-->
89
-<!--                    &lt;!&ndash;<el-button type="text" class="addTab" @click="addCharges" icon="el-icon-circle-plus">附加收费</el-button>&ndash;&gt;-->
90
-<!--                    <el-tabs class="preTabs" v-model="editableTabsValue" type="border-card"-->
91
-<!--                             @tab-click="tabclickEvent">-->
92
-<!--                      <el-tab-pane-->
93
-<!--                        v-for="(item, index) in prescriptions"-->
94
-<!--                        :key="index"-->
95
-<!--                        :label="item.name"-->
96
-<!--                        :name="item.name"-->
97
-<!--                      >-->
98
-<!--                      </el-tab-pane>-->
99
-
100
-<!--                      <charge-prescription-table ref="prescription_tables"-->
101
-<!--                                                 :manufacturers="manufacturers"-->
102
-<!--                                                 :prescription="curPrescriptions"></charge-prescription-table>-->
103
-<!--                    </el-tabs>-->
104
-
105
-<!--                  </div>-->
106
-<!--                  <div class="costBox">-->
107
-<!--                    <span>当前处方总费用:<span style="color:red;">{{ total }}元</span></span>-->
108
-<!--                    <span v-if="this.radio == 2&&this.hisPatientInfo.balance_accounts_type != 2">处方总价:<span style="color:red;">{{-->
109
-<!--                        all_total + '元' + ' = 全自费总金额:' + fulamt_ownpay_amt + '元+' + '超限价总金额:' + overlmt_amt + '元+' + '先行自付金额:' + preselfpay_amt + '元+' + '符合正常范围总金额:' + inscp_scp_amt + '元'-->
110
-<!--                      }}</span></span>-->
111
-<!--                    <span v-if="this.radio == 2&&this.hisPatientInfo.balance_accounts_type == 2">处方总价:<span style="color:red;">{{-->
112
-<!--                        all_total + '元' + ' = 全自费总金额:' + all_total + '元+' + '超限价总金额:' + overlmt_amt + '元+' + '先行自付金额:' + preselfpay_amt + '元+' + '符合正常范围总金额:' + inscp_scp_amt + '元'-->
113
-<!--                      }}</span></span>-->
114
-<!--                    <span v-if="this.radio == 1">处方总价:<span style="color:red;">{{ all_total }}元</span></span>-->
115
-
116
-<!--                  </div>-->
117
-<!--                </div>-->
118
-
119
-<!--              </div>-->
120
-<!--            </el-tab-pane>-->
103
+            <!--            <el-tab-pane label="日结" name="first">-->
104
+            <!--              <div style="display:flex;height:100%;">-->
105
+            <!--                <div class="centerLeft">-->
106
+            <!--                  <div class="tabsBox">-->
107
+            <!--                    &lt;!&ndash;<el-button type="text" class="addTab" @click="addCharges" icon="el-icon-circle-plus">附加收费</el-button>&ndash;&gt;-->
108
+            <!--                    <el-tabs class="preTabs" v-model="editableTabsValue" type="border-card"-->
109
+            <!--                             @tab-click="tabclickEvent">-->
110
+            <!--                      <el-tab-pane-->
111
+            <!--                        v-for="(item, index) in prescriptions"-->
112
+            <!--                        :key="index"-->
113
+            <!--                        :label="item.name"-->
114
+            <!--                        :name="item.name"-->
115
+            <!--                      >-->
116
+            <!--                      </el-tab-pane>-->
117
+
118
+            <!--                      <charge-prescription-table ref="prescription_tables"-->
119
+            <!--                                                 :manufacturers="manufacturers"-->
120
+            <!--                                                 :prescription="curPrescriptions"></charge-prescription-table>-->
121
+            <!--                    </el-tabs>-->
122
+
123
+            <!--                  </div>-->
124
+            <!--                  <div class="costBox">-->
125
+            <!--                    <span>当前处方总费用:<span style="color:red;">{{ total }}元</span></span>-->
126
+            <!--                    <span v-if="this.radio == 2&&this.hisPatientInfo.balance_accounts_type != 2">处方总价:<span style="color:red;">{{-->
127
+            <!--                        all_total + '元' + ' = 全自费总金额:' + fulamt_ownpay_amt + '元+' + '超限价总金额:' + overlmt_amt + '元+' + '先行自付金额:' + preselfpay_amt + '元+' + '符合正常范围总金额:' + inscp_scp_amt + '元'-->
128
+            <!--                      }}</span></span>-->
129
+            <!--                    <span v-if="this.radio == 2&&this.hisPatientInfo.balance_accounts_type == 2">处方总价:<span style="color:red;">{{-->
130
+            <!--                        all_total + '元' + ' = 全自费总金额:' + all_total + '元+' + '超限价总金额:' + overlmt_amt + '元+' + '先行自付金额:' + preselfpay_amt + '元+' + '符合正常范围总金额:' + inscp_scp_amt + '元'-->
131
+            <!--                      }}</span></span>-->
132
+            <!--                    <span v-if="this.radio == 1">处方总价:<span style="color:red;">{{ all_total }}元</span></span>-->
133
+
134
+            <!--                  </div>-->
135
+            <!--                </div>-->
136
+
137
+            <!--              </div>-->
138
+            <!--            </el-tab-pane>-->
121 139
             <el-tab-pane label="月结" name="first">
122 140
               <div style="display:flex;height:100%;">
123 141
                 <div class="centerLeft">
@@ -135,7 +153,14 @@
135 153
 
136 154
                       <div class="RP">
137 155
                         Rp
156
+                        <div v-if="radio == 2">
157
+                          <span>处方日期:{{ getTimes(zuobiao_info.start_time) }}~{{ getTimes(zuobiao_info.end_time) }}</span>
158
+                        </div>
159
+                        <div v-if="radio == 2">
160
+                          <span>医嘱单id:{{ zuobiao_info.cbm01 }}</span>
161
+                        </div>
138 162
                         <el-date-picker
163
+                          v-if="radio == 1"
139 164
                           v-model="other_start_time"
140 165
                           prefix-icon="el-icon-date"
141 166
                           @change="changeTime"
@@ -147,8 +172,9 @@
147 172
                           format="yyyy-MM-dd"
148 173
                           value-format="yyyy-MM-dd">
149 174
                         </el-date-picker>
150
-                        <span class>-</span>
175
+                        <span v-if="radio == 1" class>-</span>
151 176
                         <el-date-picker
177
+                          v-if="radio == 1"
152 178
                           v-model="other_end_time"
153 179
                           prefix-icon="el-icon-date"
154 180
                           @change="changeEndTime"
@@ -161,7 +187,7 @@
161 187
                           value-format="yyyy-MM-dd">
162 188
                         </el-date-picker>
163 189
                         <el-select v-model="month_is_upload" @change="changeMonthData"
164
-                                   placeholder="请选择">
190
+                                   placeholder="请选择" v-if="radio == 1">
165 191
                           <el-option
166 192
                             v-for="item in upload_options"
167 193
                             :key="item.value"
@@ -174,8 +200,11 @@
174 200
                       <!--<prescription-table :preTableData='preTableData'></prescription-table>-->
175 201
                       <!--<month-prescription-table ref="prescription_tables"-->
176 202
                       <!--:activeType="activeType"  :prescription="curMonthPrescriptions"></month-prescription-table>-->
177
-                      <charge-month-prescription-table
178
-                        :prescription="curMonthPrescriptions"></charge-month-prescription-table>
203
+                      <charge-month-prescription-table v-if="this.radio == 1"
204
+                                                       :prescription="curMonthPrescriptions"></charge-month-prescription-table>
205
+
206
+                      <settle-prescription-table v-if="this.radio == 2"
207
+                                                 :prescription="curMonthPrescriptions"></settle-prescription-table>
179 208
 
180 209
                     </el-tabs>
181 210
 
@@ -202,18 +231,20 @@
202 231
 
203 232
 <script>
204 233
 import axios from 'axios'
205
-import BreadCrumb from '@/xt_pages/components/bread-crumb'
206
-import { getZuoBiaoPatientList, getZuoBiaoPatientInfo } from '@/api/his/his_zuobiao'
234
+import { getUploadZuoBiaoPatientInfo, getZuoBiaoPatientInfo, getZuoBiaoPatientList } from '@/api/his/his_zuobiao'
207 235
 import { uParseTime } from '@/utils/tools'
208 236
 
209 237
 import MonthPrescriptionTable from './componenttwo/ChargePrescriptionTable'
210 238
 import ChargeMonthPrescriptionTable from './componenttwo/chargeMonthPrescriptionTable'
211 239
 import { getZuoBiaoPatientMonthInfo } from '../../api/his/his_zuobiao'
240
+import SettlePrescriptionTable from '../hospitalStation/components/settlePrescriptionTable.vue'
241
+
212 242
 const moment = require('moment')
213 243
 export default {
214 244
   components: {
245
+    SettlePrescriptionTable,
215 246
     ChargeMonthPrescriptionTable,
216
-    MonthPrescriptionTable,
247
+    MonthPrescriptionTable
217 248
   },
218 249
   data() {
219 250
     return {
@@ -228,14 +259,14 @@ export default {
228 259
 
229 260
       ],
230 261
       upload_options: [
231
-        { value: 0, label: '全部' },
262
+        // { value: 0, label: '全部' },
232 263
         { value: 2, label: '已上传' },
233 264
         { value: 1, label: '未上传' }
234 265
 
235 266
       ],
236 267
       loading: false,
237 268
       dise_loading: false,
238
-      month_is_upload: 0,
269
+      month_is_upload: 1,
239 270
       sick_history: '',
240 271
       p_type: '',
241 272
       sick_type: '',
@@ -251,6 +282,7 @@ export default {
251 282
       other_end_time: moment(new Date()).add('year', 0).format('YYYY-MM-DD'),
252 283
       curMonthPrescriptions: null,
253 284
       curSettlePrescriptions: null,
285
+      zuobiao_info: {},
254 286
 
255 287
       month_total: 0,
256 288
       crumbs: [
@@ -286,9 +318,8 @@ export default {
286 318
       tabIndex: 1,
287 319
       hisPatientInfo: {},
288 320
       loadingtwo: false,
289
-      patientTableData: [{
290
-
291
-      }],
321
+      upload_list: [],
322
+      patientTableData: [{}],
292 323
       patientInfo: { id: 0 },
293 324
       doctor: {},
294 325
       total: 0,
@@ -296,10 +327,12 @@ export default {
296 327
       radio: 1,
297 328
       radioStatus: 1,
298 329
       search_input: '',
330
+      search_input_two: '',
299 331
       start_time: moment().locale('zh-cn').format('YYYY-MM-DD'),
300 332
       patient_id: 0,
301 333
       prescription_id: 0,
302 334
       all_table_data: [],
335
+      all_upload_list: [],
303 336
       manufacturers: [],
304 337
       hisPatientDatas: [],
305 338
       order: {},
@@ -453,6 +486,21 @@ export default {
453 486
       }
454 487
 
455 488
     },
489
+    searchActiontwo() {
490
+      if (this.search_input_two.length == 0) {
491
+        this.upload_list = this.all_upload_list
492
+
493
+      } else {
494
+        let arr2 = []
495
+        for (let i = 0; i < this.all_upload_list.length; i++) {
496
+          if (this.all_upload_list[i].his_patient.name.indexOf(this.search_input_two) != -1) {
497
+            arr2 = arr2.concat(this.all_upload_list[i])
498
+          }
499
+        }
500
+        this.upload_list = arr2
501
+      }
502
+    },
503
+
456 504
     tabclickEventTwo(val) {
457 505
       for (let i = 0; i < this.month_prescriptions.length; i++) {
458 506
         if (this.month_prescriptions[i].name == val.name) {
@@ -598,241 +646,81 @@ export default {
598 646
     },
599 647
     open(index) {
600 648
       if (index == 2) {
601
-        let settle_accounts_type = ''
602
-        if (this.activeName == 'first') {
603
-          settle_accounts_type = 1
604
-          var that = this
605
-          this.$confirm('是否撤销明细', '撤销明细', {
606
-            confirmButtonText: '确 定',
607
-            cancelButtonText: '取 消',
608
-            type: 'warning'
609
-          }).then(() => {
610
-            if (that.hisPatientInfo.balance_accounts_type != 2){
611
-              let params = {
612
-                'settle_accounts_type': settle_accounts_type,
613
-                'patient_id': that.hisPatientInfo.id,
614
-                'record_time': that.record_date,
615
-                'admin_user_id': that.$store.getters.xt_user.user.id
616
-              }
617
-              axios.get('http://127.0.0.1:9532/zh/api/refunddetail', {
618
-                params: params
619
-              })
620
-                .then(function(response) {
621
-                  if (response.data.state == 0) {
622
-                    that.$message.error(response.data.msg)
623
-                    that.loadingtwo = false
624
-                    return false
625
-                  } else {
626
-                    if (response.data.data.failed_code == -10) {
627
-                      // that.$message.error(response.data.data.msg)
628
-                      that.$confirm(response.data.data.msg, '医保错误信息', {
629
-                        confirmButtonText: '确 定',
630
-                        type: 'warning'
631
-                      }).then(() => {
632
-
633
-                      }).catch(() => {
634
-                      })
635
-                    } else {
636
-                      that.$message.success('撤销明细成功')
637
-                      that.radio = 1
638
-                      that.getPatientList()
639
-                    }
649
+        var that = this
650
+        let obj3 = {
651
+          id: this.zuobiao_info.id,
652
+          admin_user_id: this.$store.getters.xt_user.user.id
653
+        }
654
+        axios.get('http://127.0.0.1:9532' + '/nmg/coordinate/settleAccount/cancel', {
655
+          params: obj3
656
+        })
657
+          .then(function(response) {
658
+            if (response.data.state == 0) {
659
+              that.$message.error(response.data.msg)
660
+              that.loadingtwo = false
661
+              return false
662
+            } else {
663
+              if (response.data.data.failed_code == -10) {
664
+                that.$confirm(response.data.data.msg, '医保错误信息', {
665
+                  confirmButtonText: '确 定',
666
+                  type: 'warning'
667
+                }).then(() => {
640 668
 
641
-                  }
642
-                })
643
-                .catch(function(error) {
669
+                }).catch(() => {
644 670
                 })
645 671
 
646
-
647
-            }else{
648
-              let params = {
649
-                'settle_accounts_type': settle_accounts_type,
650
-                'patient_id': that.hisPatientInfo.id,
651
-                'his_patient_id': that.hisPatientInfo.id,
652
-                'record_time': that.record_date,
653
-                'admin_user_id': that.$store.getters.xt_user.user.id
672
+              } else {
673
+                that.radio = 1
674
+                that.$message({ message: '撤销成功', type: 'success', duration: 5000 })
654 675
               }
655
-              refundDetail(params).then(response => {
656
-                if (response.data.state == 0) {
657
-                  this.loading = false
658
-                  this.$message.error(response.data.msg)
659
-                  return false
660
-                } else {
661
-                  that.$message.success('撤销明细成功')
662
-                  that.radio = 1
663
-                  that.getPatientList()
664
-                }
665
-              })
666 676
 
667 677
             }
668
-          }).catch(() => {
669 678
           })
670
-        } else {
671
-
672
-          if (this.hisPatientInfo.balance_accounts_type != 2) {
673
-            settle_accounts_type = 2
674
-            var that = this
675
-            this.$confirm('该操作会撤销此次入院后所有处方明细,是否继续操作?', '撤销明细', {
676
-              confirmButtonText: '确 定',
677
-              cancelButtonText: '取 消',
678
-              type: 'warning'
679
-            }).then(() => {
680
-
681
-              let params = {
682
-                'settle_accounts_type': settle_accounts_type,
683
-                'patient_id': that.hisPatientInfo.id,
684
-                'his_patient_id': that.hisPatientInfo.id,
685
-                'record_time': that.record_date,
686
-                'order_id': that.order.id,
687
-                'admin_user_id': that.$store.getters.xt_user.user.id
688
-              }
689
-              axios.get('http://127.0.0.1:9532/zh/api/refunddetail', {
690
-                params: params
691
-              })
692
-                .then(function(response) {
693
-                  if (response.data.state == 0) {
694
-                    that.$message.error(response.data.msg)
695
-                    that.loadingtwo = false
696
-                    return false
697
-                  } else {
698
-                    if (response.data.data.failed_code == -10) {
699
-                      // that.$message.error(response.data.data.msg)
700
-                      that.$confirm(response.data.data.msg, '医保错误信息', {
701
-                        confirmButtonText: '确 定',
702
-                        type: 'warning'
703
-                      }).then(() => {
704
-
705
-                      }).catch(() => {
706
-                      })
707
-                    } else {
708
-                      that.$message.success('撤销明细成功')
709
-                      that.radio = 1
710
-                      that.getPatientList()
711
-                    }
712
-
713
-                  }
714
-                })
715
-                .catch(function(error) {
716
-                })
717
-
718
-            }).catch(() => {
719
-            })
720
-
721
-          }else{
722
-            settle_accounts_type = 2
723
-            var that = this
724
-            this.$confirm('该操作会撤销此次入院后所有处方明细,是否继续操作?', '撤销明细', {
725
-              confirmButtonText: '确 定',
726
-              cancelButtonText: '取 消',
727
-              type: 'warning'
728
-            }).then(() => {
729
-              let params = {
730
-                'settle_accounts_type': settle_accounts_type,
731
-                'patient_id': that.hisPatientInfo.id,
732
-                'his_patient_id': that.hisPatientInfo.id,
733
-                'record_time': that.record_date,
734
-                'admin_user_id': that.$store.getters.xt_user.user.id
735
-              }
736
-              refundDetail(params).then(response => {
737
-                if (response.data.state == 0) {
738
-                  this.loading = false
739
-                  this.$message.error(response.data.msg)
740
-                  return false
741
-                } else {
742
-                  that.$message.success('撤销明细成功')
743
-                  that.radio = 1
744
-                  that.getPatientList()
745
-                }
746
-              })
747
-
748
-
749
-
750
-            }).catch(() => {
751
-            })
752
-
753
-
754
-          }
755
-
756
-
757
-
758
-        }
679
+          .catch(function(error) {
759 680
 
681
+          })
760 682
       } else if (index == 1) {
683
+        if (this.hisPatientInfo.id == 0) {
684
+          this.$message.error("请选择需要记账的患者")
685
+          return
686
+        }
761 687
         var that = this
762
-        let params = {
763
-          'in_hospital_id': that.hisPatientInfo.id,
764
-          'id': that.hisPatientInfo.id,
765
-          'admin_user_id': that.$store.getters.xt_user.user.id,
766
-          'record_time': that.record_date
767
-
688
+        let obj = {
689
+          patient_id: this.hisPatientInfo.id,
690
+          diagnosis_time: this.record_date,
691
+          record_date: this.record_date,
692
+          admin_user_id: this.$store.getters.xt_user.user.id,
693
+          org_id: this.$store.getters.xt_user.org_id
768 694
         }
769
-        if (this.activeName == 'first') {
770
-          params['settle_accounts_type'] = 1
695
+        obj['start_time'] = this.other_start_time
696
+        obj['end_time'] = this.other_end_time
697
+        obj['settle_accounts_type'] = 2
698
+        axios.get("http://127.0.0.1:9532" + '/nmg/coordinate/settleAccount', {
699
+          params: obj
700
+        })
701
+          .then(function(response) {
702
+            if (response.data.state == 0) {
703
+              that.$message.error(response.data.msg)
704
+              that.loadingtwo = false
705
+              return false
706
+            } else {
707
+              if (response.data.data.failed_code == -10) {
708
+                that.$confirm(response.data.data.msg, '医保错误信息', {
709
+                  confirmButtonText: '确 定',
710
+                  type: 'warning'
711
+                }).then(() => {
771 712
 
772
-        } else {
773
-          params['start_time'] = that.other_start_time
774
-          params['end_time'] = that.other_end_time
775
-          params['settle_accounts_type'] = 2
713
+                }).catch(() => {
714
+                })
776 715
 
777
-        }
778
-        if (this.hisPatientInfo.balance_accounts_type != 2) {
779
-          axios.get('http://127.0.0.1:9532/zh/api/uploadinfo/get', {
780
-            params: params
781
-          })
782
-            .then(function(response) {
783
-              if (response.data.state == 0) {
784
-                that.$message.error(response.data.msg)
785
-                return false
786 716
               } else {
787
-                if (response.data.data.failed_code == -10) {
788
-                  // that.$message.error(response.data.data.msg)
789
-                  that.$confirm(response.data.data.msg, '医保错误信息', {
790
-                    confirmButtonText: '确 定',
791
-                    type: 'warning'
792
-                  }).then(() => {
793
-
794
-                  }).catch(() => {
795
-                  })
796
-                } else {
797
-                  that.$message.success('上传明细成功')
798
-                  that.radio = 2
799
-                  that.changePatientInfo()
800
-                }
801
-
717
+                that.radio = 2
718
+                that.$message({ message: '上传成功', type: 'success', duration: 5000 })
802 719
               }
803
-            })
804
-            .catch(function(error) {
805
-            })
806
-        } else if (this.hisPatientInfo.balance_accounts_type == 2) {
807
-          var that = this
808
-          let params = {
809
-            'in_hospital_id': that.hisPatientInfo.id,
810
-            'id': that.hisPatientInfo.id,
811
-            'admin_user_id': that.$store.getters.xt_user.user.id,
812
-            'record_time': that.record_date
813
-
814
-          }
815
-          if (this.activeName == 'first') {
816
-            params['settle_accounts_type'] = 1
817
-
818
-          } else {
819
-            params['start_time'] = that.other_start_time
820
-            params['end_time'] = that.other_end_time
821
-            params['settle_accounts_type'] = 2
822
-
823
-          }
824
-          upLoadChargeInfo(params).then(response => {
825
-            if (response.data.state == 0) {
826
-              this.loading = false
827
-              this.$message.error(response.data.msg)
828
-              return false
829
-            } else {
830
-              that.$message.success('上传明细成功')
831
-              that.radio = 2
832
-              that.changePatientInfo()
833 720
             }
834 721
           })
835
-        }
722
+          .catch(function(error) {
723
+          })
836 724
       }
837 725
     }, changePatientInfo() {
838 726
       let params = {
@@ -870,8 +758,11 @@ export default {
870 758
             case 2:
871 759
               this.all_table_data = response.data.data.list_two
872 760
               this.patientTableData = response.data.data.list_two
873
-              this.$refs.tab.setCurrentRow(this.patientTableData[0])
874
-              this.getPatientInformation(this.patientTableData[0].id)
761
+              this.upload_list = response.data.data.upload_list
762
+              this.all_upload_list = response.data.data.upload_list
763
+              this.$refs.tab.setCurrentRow(this.upload_list[0])
764
+              console.log(this.upload_list[0].id)
765
+              this.getPatientInformationtwo(this.upload_list[0].id)
875 766
               break
876 767
 
877 768
           }
@@ -928,8 +819,12 @@ export default {
928 819
             case 2:
929 820
               this.all_table_data = response.data.data.list_two
930 821
               this.patientTableData = response.data.data.list_two
931
-              this.$refs.tab.setCurrentRow(this.patientTableData[0])
932
-              this.getPatientInformation(this.patientTableData[0].id)
822
+              this.upload_list = response.data.data.upload_list
823
+              this.all_upload_list = response.data.data.upload_list
824
+
825
+              this.$refs.tab.setCurrentRow(this.upload_list[0])
826
+              console.log(this.upload_list[0].id)
827
+              this.getPatientInformationtwo(this.upload_list[0].id)
933 828
               break
934 829
           }
935 830
         }
@@ -1100,7 +995,154 @@ export default {
1100 995
     handleCurrentChange(val) {
1101 996
       this.getPatientInformation(val.id)
1102 997
     },
998
+    handleCurrentChangetwo(val) {
999
+      this.getPatientInformationtwo(val.id)
1000
+    },
1103 1001
     //获取患者的基本信息
1002
+    getPatientInformationtwo(id) {
1003
+      console.log(id)
1004
+      let params = {
1005
+        'id': id
1006
+      }
1007
+      this.loading = true
1008
+      getUploadZuoBiaoPatientInfo(params).then(response => {
1009
+        if (response.data.state == 0) {
1010
+          this.loading = false
1011
+          this.$message.error(response.data.msg)
1012
+          return false
1013
+        } else {
1014
+          this.prescriptions = []
1015
+          this.month_prescriptions = []
1016
+          this.curPrescriptions = {}
1017
+          this.curMonthPrescriptions = {}
1018
+          this.zuobiao_info = {}
1019
+          this.loading = false
1020
+          this.hisPatientInfo = response.data.data.patient
1021
+          this.zuobiao_info = response.data.data.zuobiao_info
1022
+          this.setMonthPrescription(response.data.data.month_prescriptions)
1023
+          for (let i = 0; i < response.data.data.prescription.length; i++) {
1024
+            var prescription = response.data.data.prescription[i]
1025
+            let tempAdvice = []
1026
+            let tempProject = []
1027
+            let tempAddition = []
1028
+            for (let b = 0; b < prescription.advices.length; b++) {
1029
+              let spec = prescription.advices[b].drug.dose + prescription.advices[b].drug.dose_unit + '*' + prescription.advices[b].drug.min_number + prescription.advices[b].drug.min_unit + '/' + prescription.advices[b].drug.max_unit
1030
+
1031
+              let obj = {
1032
+                advice_id: prescription.advices[b].id,
1033
+                drug_name: prescription.advices[b].advice_name,
1034
+                single_dose: prescription.advices[b].single_dose,
1035
+                delivery_way: prescription.advices[b].delivery_way,
1036
+                execution_frequency: prescription.advices[b].execution_frequency,
1037
+                retail_price: prescription.advices[b].price.toString(),
1038
+                remark: prescription.advices[b].remark,
1039
+                day: prescription.advices[b].day,
1040
+                prescribing_number: prescription.advices[b].prescribing_number.toString(),
1041
+                single_dose_unit: prescription.advices[b].single_dose_unit,
1042
+                prescribing_number_unit: prescription.advices[b].prescribing_number_unit,
1043
+                medical_insurance_number: prescription.advices[b].med_list_codg,
1044
+
1045
+                spec: spec,
1046
+                code: prescription.advices[b].drug.medical_insurance_number,
1047
+                det_item_fee_sumamt: prescription.advices[b].order_info.det_item_fee_sumamt,
1048
+                name_id: prescription.advices[b].drug.manufacturer,
1049
+                fulamt_ownpay_amt: prescription.advices[b].order_info.fulamt_ownpay_amt,
1050
+                overlmt_amt: prescription.advices[b].order_info.overlmt_amt,
1051
+                preselfpay_amt: prescription.advices[b].order_info.preselfpay_amt,
1052
+                inscp_scp_amt: prescription.advices[b].order_info.inscp_scp_amt,
1053
+                execution_state: prescription.advices[b].execution_state
1054
+
1055
+              }
1056
+              tempAdvice.push(obj)
1057
+            }
1058
+
1059
+            for (let b = 0; b < prescription.project.length; b++) {
1060
+              let obj = {
1061
+                id: prescription.project[b].id,
1062
+                project_id: prescription.project[b].project.id,
1063
+                // project_name: prescription.project[b].project.project_name,
1064
+                // statistical_classification: prescription.project[b].project.statistical_classification,
1065
+                single_dose: prescription.project[b].single_dose,
1066
+                delivery_way: prescription.project[b].delivery_way,
1067
+                execution_frequency: prescription.project[b].execution_frequency,
1068
+                number_days: prescription.project[b].day,
1069
+                total: prescription.project[b].count.toString(),
1070
+                price: prescription.project[b].price,
1071
+                remark: prescription.project[b].remark,
1072
+                // medical_code: prescription.project[b].project.medical_code,
1073
+                unit: prescription.project[b].unit,
1074
+                type: prescription.project[b].type,
1075
+                det_item_fee_sumamt: prescription.project[b].order_info.det_item_fee_sumamt,
1076
+                fulamt_ownpay_amt: prescription.project[b].order_info.fulamt_ownpay_amt,
1077
+                overlmt_amt: prescription.project[b].order_info.overlmt_amt,
1078
+                preselfpay_amt: prescription.project[b].order_info.preselfpay_amt,
1079
+                inscp_scp_amt: prescription.project[b].order_info.inscp_scp_amt,
1080
+                execution_state: prescription.project[b].execution_state
1081
+
1082
+              }
1083
+
1084
+              if (prescription.project[b].type == 2) {
1085
+                obj['statistical_classification'] = prescription.project[b].team.project_team
1086
+                obj['medical_code'] = prescription.project[b].project.medical_code
1087
+                obj['project_name'] = prescription.project[b].project.project_name
1088
+                obj['spec'] = ''
1089
+                obj['name_id'] = 0
1090
+
1091
+              } else if (prescription.project[b].type == 3) {
1092
+                obj['statistical_classification'] = prescription.project[b].team.project_team
1093
+                obj['medical_code'] = prescription.project[b].good_info.medical_insurance_number
1094
+                obj['project_name'] = prescription.project[b].good_info.good_name
1095
+                obj['spec'] = prescription.project[b].good_info.specification_name
1096
+                obj['name_id'] = prescription.project[b].good_info.manufacturer
1097
+
1098
+              }
1099
+
1100
+              tempProject.push(obj)
1101
+            }
1102
+
1103
+            let index = i + 1
1104
+            let obj = {
1105
+              id: prescription.id,
1106
+              name: '处方' + index,
1107
+              advices: tempAdvice,
1108
+              project: tempProject,
1109
+              addition: tempAddition,
1110
+              order_status: prescription.order_status,
1111
+              type: prescription.type
1112
+            }
1113
+            this.prescriptions.push(obj)
1114
+
1115
+            for (let i = 0; i < this.prescriptions.length; i++) {
1116
+              if (this.prescriptions[i].order_status != 4) {
1117
+                this.isShowUpload = 2
1118
+              }
1119
+
1120
+            }
1121
+
1122
+          }
1123
+          if (this.prescriptions.length > 0) {
1124
+            this.curPrescriptions = this.prescriptions[0]
1125
+          } else {
1126
+            this.curPrescriptions = {}
1127
+          }
1128
+          if (this.month_prescriptions.length > 0) {
1129
+            this.curMonthPrescriptions = this.month_prescriptions[0]
1130
+          } else {
1131
+            this.curMonthPrescriptions = {}
1132
+          }
1133
+          this.total = 0
1134
+          this.total = this.getTotalOne()
1135
+          this.month_total = this.getMonthTotalOne()
1136
+          this.all_total = this.getTotal()
1137
+          this.all_month_total = this.getTotalTwo()
1138
+          this.fulamt_ownpay_amt = this.getFulamtOwnpayAmtTotal()
1139
+          this.overlmt_amt = this.getOverlmtAmtTotal()
1140
+          this.preselfpay_amt = this.getPreselfpayAmtTotal()
1141
+          this.inscp_scp_amt = this.getInscpScpAmtTotal()
1142
+
1143
+        }
1144
+      })
1145
+    },
1104 1146
     getPatientInformation(id) {
1105 1147
       let params = {
1106 1148
         'id': id,