Browse Source

Merge remote-tracking branch 'origin/20230223_pc_vue_new_branch' into 20230223_pc_vue_new_branch

yq1 1 week ago
parent
commit
32ecadeb17

+ 1 - 1
src/store/getters.js View File

32
   selected_date: state => state.xt_user.selected_date,
32
   selected_date: state => state.xt_user.selected_date,
33
   search_mode: state => state.xt_user.search_mode,
33
   search_mode: state => state.xt_user.search_mode,
34
   search_value: state => state.xt_user.search_value,
34
   search_value: state => state.xt_user.search_value,
35
-
36
   xt_role_temps: state => state.xt_role_temps,
35
   xt_role_temps: state => state.xt_role_temps,
37
 
36
 
37
+  insuplc_admdvs: state => state.global_config.insuplc_admdvs,
38
   patient_types: state => state.global_config.patient_types,
38
   patient_types: state => state.global_config.patient_types,
39
   partitions: state => state.global_config.partitions,
39
   partitions: state => state.global_config.partitions,
40
   marital_options: state => state.global_config.marital_options,
40
   marital_options: state => state.global_config.marital_options,

+ 4 - 1
src/store/index.js View File

9
 import xt_permission from './modules/xt_permission'
9
 import xt_permission from './modules/xt_permission'
10
 import xt_role_temps from './modules/role_temps'
10
 import xt_role_temps from './modules/role_temps'
11
 import global_config from './modules/globalConfig'
11
 import global_config from './modules/globalConfig'
12
+import insuplcAdmdvs_config from './modules/in'
13
+
12
 
14
 
13
 import getters from './getters'
15
 import getters from './getters'
14
 import data from './modules/data'
16
 import data from './modules/data'
34
     xt_role_temps,
36
     xt_role_temps,
35
     global_config,
37
     global_config,
36
     temp_params,
38
     temp_params,
37
-    pagedata
39
+    pagedata,
40
+    insuplcAdmdvs_config
38
   },
41
   },
39
   getters
42
   getters
40
 
43
 

File diff suppressed because it is too large
+ 68257 - 0
src/store/modules/globalConfig.js


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

78
       </el-form-item>
78
       </el-form-item>
79
 
79
 
80
 
80
 
81
-      <el-form-item label="参保地:">
81
+      <el-form-item label="参保地:" v-if="this.$store.getters.xt_user.org.id != 10721  && this.$store.getters.xt_user.org.id != 0">
82
         <el-select v-model="form.insuplc_admdvs" placeholder="请选择" style="width:100%;">
82
         <el-select v-model="form.insuplc_admdvs" placeholder="请选择" style="width:100%;">
83
           <el-option
83
           <el-option
84
               v-for="item in InsuplcAdmdvs"
84
               v-for="item in InsuplcAdmdvs"
90
       </el-form-item>
90
       </el-form-item>
91
 
91
 
92
 
92
 
93
+      <el-form-item label="参保地:" v-if="this.$store.getters.xt_user.org.id == 10721 || this.$store.getters.xt_user.org.id == 0">
94
+
95
+        <el-select
96
+          v-model="form.insuplc_admdvs"
97
+          multiple
98
+          filterable
99
+          remote
100
+          reserve-keyword
101
+          placeholder="请选择"
102
+          :remote-method="remoteMethod"
103
+          :loading="loading">
104
+          <el-option
105
+            v-for="item in options"
106
+            :key="item.value"
107
+            :label="item.label+'(' + item.value + ')'"
108
+            :value="item.value">
109
+          </el-option>
110
+        </el-select>
111
+      </el-form-item>
112
+
113
+
93
 
114
 
94
       <el-form-item label="结算类型:">
115
       <el-form-item label="结算类型:">
95
         <el-select v-model="form.settlement_value" placeholder="请选择" style="width:100%;">
116
         <el-select v-model="form.settlement_value" placeholder="请选择" style="width:100%;">
240
           // { value: 16, label: '门诊慢性病' },
261
           // { value: 16, label: '门诊慢性病' },
241
           // { value: 21, label: '普通住院' }
262
           // { value: 21, label: '普通住院' }
242
         ],
263
         ],
264
+        loading:false,
243
         medical_care: [
265
         medical_care: [
244
           { value: 11, label: '普通门诊' },
266
           { value: 11, label: '普通门诊' },
245
           { value: 12, label: '家庭通道' },
267
           { value: 12, label: '家庭通道' },
386
           // sick_type: [{ required: true, message: '大病类别不能为空', trigger: 'change' }],
408
           // sick_type: [{ required: true, message: '大病类别不能为空', trigger: 'change' }],
387
           // diagnosis: [{ required: true, message: '诊断不能为空', trigger: 'change' }]
409
           // diagnosis: [{ required: true, message: '诊断不能为空', trigger: 'change' }]
388
         },
410
         },
411
+        list:[],
412
+        options:[],
389
         visibility: false,
413
         visibility: false,
390
         labelPosition: 'right',
414
         labelPosition: 'right',
391
         isClose: false,
415
         isClose: false,
409
           phone: '',
433
           phone: '',
410
           social_type: '',
434
           social_type: '',
411
           doctor_number:"",
435
           doctor_number:"",
412
-        }
413
 
436
 
437
+        }
414
       }
438
       }
415
     },
439
     },
416
     props: {
440
     props: {
439
       },
463
       },
440
       sick: Array,
464
       sick: Array,
441
       diagnoses: Array
465
       diagnoses: Array
466
+
467
+
442
     },
468
     },
443
     methods: {
469
     methods: {
470
+      remoteMethod(query) {
471
+        if (query !== '') {
472
+          this.loading = true;
473
+          setTimeout(() => {
474
+            this.loading = false;
475
+            this.options = this.list.filter(item => {
476
+              return item.label.toLowerCase()
477
+                .indexOf(query.toLowerCase()) > -1 || item.value.toLowerCase()
478
+                .indexOf(query.toLowerCase()) > -1;
479
+            });
480
+          }, 200);
481
+        } else {
482
+          this.options = [];
483
+        }
484
+      },
444
       checkID(){
485
       checkID(){
445
         this.$alert(this.form.psn_desc, '身份类型', {
486
         this.$alert(this.form.psn_desc, '身份类型', {
446
           confirmButtonText: '确定',
487
           confirmButtonText: '确定',
643
                   }).catch(() => {
684
                   }).catch(() => {
644
                   })
685
                   })
645
                 } else {
686
                 } else {
646
-
647
                   for(let i =0; i < response.data.data.info.output.insuinfo.length; i++){
687
                   for(let i =0; i < response.data.data.info.output.insuinfo.length; i++){
648
                     that.InsuplcAdmdvs.push({
688
                     that.InsuplcAdmdvs.push({
649
                       value:response.data.data.info.output.insuinfo[i].insuplc_admdvs,
689
                       value:response.data.data.info.output.insuinfo[i].insuplc_admdvs,
650
                       label:response.data.data.info.output.insuinfo[i].insuplc_admdvs,
690
                       label:response.data.data.info.output.insuinfo[i].insuplc_admdvs,
651
                     })
691
                     })
652
-
653
                   }
692
                   }
654
-
655
-
656
                   that.form.social_type = parseInt(response.data.data.insutype)
693
                   that.form.social_type = parseInt(response.data.data.insutype)
657
                 }
694
                 }
658
               }
695
               }
839
         return getDictionaryDataConfig(module, filed_name)
876
         return getDictionaryDataConfig(module, filed_name)
840
       },
877
       },
841
       show: function(doctors,departments) {
878
       show: function(doctors,departments) {
879
+      console.log(this.$store.getters.insuplc_admdvs)
880
+       this.options =  this.$store.getters.insuplc_admdvs
881
+        console.log(this.options)
882
+        this.list =  this.$store.getters.insuplc_admdvs
883
+        console.log(this.list)
884
+
842
         this.visibility = true
885
         this.visibility = true
843
         // this.form = Object.assign({}, this.resetForm)
886
         // this.form = Object.assign({}, this.resetForm)
844
         this.form.id = 0
887
         this.form.id = 0
905
 
948
 
906
       },
949
       },
907
 
950
 
951
+
952
+      showTwo: function(doctors,departments,info,patient_info,insutype) {
953
+        console.log(this.$store.getters.insuplc_admdvs)
954
+        this.options =  this.$store.getters.insuplc_admdvs
955
+        console.log(this.options)
956
+        this.list =  this.$store.getters.insuplc_admdvs
957
+        console.log(this.list)
958
+
959
+        this.visibility = true
960
+        // this.form = Object.assign({}, this.resetForm)
961
+        this.form.id = 0
962
+        this.form.settlement_value = 1
963
+        this.form.medical_insurance_card = ''
964
+        this.form.name = ''
965
+        this.form.gender = ''
966
+        this.form.mdtrt_type=''
967
+        this.form.medical_care = ''
968
+        this.form.birthda = ''
969
+        this.form.age = ''
970
+        this.form.id_card = ''
971
+        this.form.register = ''
972
+
973
+        this.form.doctor = ''
974
+        this.form.department = ''
975
+        this.form.registration_fee = ''
976
+        this.form.medical_expenses = ''
977
+        this.form.cost = ''
978
+        this.form.phone = ''
979
+        this.form.social_type = ''
980
+        this.form.insuplc_admdvs =''
981
+
982
+        this.form.p_type = 14
983
+        this.form.sick_type = this.sick[0].id
984
+        this.form.diagnosis = this.diagnoses[0].id
985
+        this.form.id_card_type = 2
986
+        this.form.certificates = 1
987
+        if (this.$store.getters.xt_user.org_id == 10188  || this.$store.getters.xt_user.org_id == 10217 || this.$store.getters.xt_user.org_id == 10191){
988
+          this.form.id_card_type = 1
989
+        }
990
+        if (departments.length > 0) {
991
+          this.form.department = departments[0].id
992
+        }
993
+        console.log("11231231231223233432423dddd312")
994
+        if (doctors.length > 0) {
995
+          if(this.$store.getters.xt_user.org_id == 10318 || this.$store.getters.xt_user.org_id == 0){
996
+            console.log("~~~~~~~")
997
+            this.form.doctor = 3127
998
+
999
+          }else{
1000
+            this.form.doctor = doctors[0].admin_user_id
1001
+          }
1002
+        }else{
1003
+          this.form.doctor = 3127
1004
+        }
1005
+
1006
+        this.form.social_type = insutype
1007
+        var temp_insuplc_admdvs = ""
1008
+        for(let i =0; i < info.output.insuinfo.length; i++){
1009
+          //险种一致,且参保没过期
1010
+          if(insutype == info.output.insuinfo[i].insutype && info.output.insuinfo[i].psn_insu_stas == 1)
1011
+          temp_insuplc_admdvs = info.output.insuinfo[i].insuplc_admdvs
1012
+        }
1013
+        this.form.insuplc_admdvs = temp_insuplc_admdvs
1014
+        this.form.id = patient_info.id
1015
+        this.form.name = patient_info.name
1016
+        this.form.gender = patient_info.gender
1017
+        this.form.birthday = uParseTime(patient_info.birthday, '{y}-{m}-{d}')
1018
+        this.form.phone = patient_info.phone
1019
+        this.form.id_card = patient_info.id_card_no
1020
+        var thisLen = this.form.id_card.length
1021
+        var birth = ''
1022
+        if (thisLen == 15) {
1023
+          birth = '19' + this.form.id_card.substr(6, 6)
1024
+        } else {
1025
+          birth = this.form.id_card.substr(6, 8)
1026
+        }
1027
+        var births =
1028
+          birth.substr(0, 4) +
1029
+          '-' +
1030
+          birth.substr(4, 2) +
1031
+          '-' +
1032
+          birth.substr(6, 2)
1033
+        this.form.age = jsGetAge(births, '-')
1034
+      },
1035
+
1036
+
908
       hide: function () {
1037
       hide: function () {
909
         this.visibility = false
1038
         this.visibility = false
910
         this.$refs['formValue'].resetFields()
1039
         this.$refs['formValue'].resetFields()

+ 119 - 26
src/xt_pages/outpatientCharges/outpatientChargesManagement.vue View File

35
           </el-radio-group>
35
           </el-radio-group>
36
         </div>
36
         </div>
37
 
37
 
38
+
38
         <div class="mainCell" v-if="this.org_id == 10191">
39
         <div class="mainCell" v-if="this.org_id == 10191">
39
           <el-radio-group v-model="sch_type" @change="changeScheduleType">
40
           <el-radio-group v-model="sch_type" @change="changeScheduleType">
40
             <el-radio :label="1">上午</el-radio>
41
             <el-radio :label="1">上午</el-radio>
215
                               type="primary"
216
                               type="primary"
216
                             >修改医疗类型
217
                             >修改医疗类型
217
                             </el-button>
218
                             </el-button>
219
+
220
+                              <el-select style="margin-right:5px;width:300px;"
221
+                                         v-model="item.diagnoses" multiple placeholder="诊断">
222
+                                <el-option
223
+                                  v-for="(item,index) in diagnoses"
224
+                                  :key="index"
225
+                                  :label="item.class_name"
226
+                                  :value="item.id">
227
+                                </el-option>
228
+                              </el-select>
229
+
218
                             <div style="margin-bottom:10px;float: right">
230
                             <div style="margin-bottom:10px;float: right">
219
                               <div>
231
                               <div>
220
-
221
                                 <el-button
232
                                 <el-button
222
                                   v-if="(hisPatientInfo.balance_accounts_type != 2 && hisPatientInfo.id > 0  && org_id != 10340)"
233
                                   v-if="(hisPatientInfo.balance_accounts_type != 2 && hisPatientInfo.id > 0  && org_id != 10340)"
223
                                   size="small"
234
                                   size="small"
224
-                                  @click="open(50,items.med_type,items.prescriptions[0].order,items.prescriptions)"
235
+                                  @click="open(50,items.med_type,items.prescriptions[0].order,items.prescriptions,item.diagnoses)"
225
                                   type="primary"
236
                                   type="primary"
226
                                 >读电子凭证
237
                                 >读电子凭证
227
                                 </el-button>
238
                                 </el-button>
230
                                 <el-button
241
                                 <el-button
231
                                   v-if="(hisPatientInfo.balance_accounts_type != 2 && hisPatientInfo.id > 0  && org_id != 10340)"
242
                                   v-if="(hisPatientInfo.balance_accounts_type != 2 && hisPatientInfo.id > 0  && org_id != 10340)"
232
                                   size="small"
243
                                   size="small"
233
-                                  @click="open(55,items.med_type,items.prescriptions[0].order,items.prescriptions)"
244
+                                  @click="open(55,items.med_type,items.prescriptions[0].order,items.prescriptions,item.diagnoses)"
234
                                   type="primary"
245
                                   type="primary"
235
                                 >人脸识别
246
                                 >人脸识别
236
                                 </el-button>
247
                                 </el-button>
245
                                 <el-button
256
                                 <el-button
246
                                   v-if="(hisPatientInfo.id_card_type != 3  && hisPatientInfo.balance_accounts_type != 2 && hisPatientInfo.id > 0 &&  items.prescriptions[0].order.id == 0 && org_id != 10340)"
257
                                   v-if="(hisPatientInfo.id_card_type != 3  && hisPatientInfo.balance_accounts_type != 2 && hisPatientInfo.id > 0 &&  items.prescriptions[0].order.id == 0 && org_id != 10340)"
247
                                   size="small"
258
                                   size="small"
248
-                                  @click="open(8,items.med_type,items.prescriptions[0].order,items.prescriptions)"
259
+                                  @click="open(8,items.med_type,items.prescriptions[0].order,items.prescriptions,item.diagnoses)"
249
                                   type="primary"
260
                                   type="primary"
250
                                 >预结算
261
                                 >预结算
251
                                 </el-button>
262
                                 </el-button>
252
                                 <el-button
263
                                 <el-button
253
                                   v-if="items.curPrescriptions.order.order_status == 1 && hisPatientInfo.balance_accounts_type != 2 && org_id != 10340"
264
                                   v-if="items.curPrescriptions.order.order_status == 1 && hisPatientInfo.balance_accounts_type != 2 && org_id != 10340"
254
                                   size="small"
265
                                   size="small"
255
-                                  @click="open(11,items.med_type,items.prescriptions[0].order,items.prescriptions)"
266
+                                  @click="open(11,items.med_type,items.prescriptions[0].order,items.prescriptions,item.diagnoses)"
256
                                   type="primary"
267
                                   type="primary"
257
                                 >撤销明细
268
                                 >撤销明细
258
                                 </el-button>
269
                                 </el-button>
259
                                 <el-button v-loading="loadingtwo"
270
                                 <el-button v-loading="loadingtwo"
260
                                            v-if="((hisPatientInfo.id > 0 && items.curPrescriptions.order.id == 0) || items.curPrescriptions.order.order_status == 1 ||  items.curPrescriptions.order.order_status == 3) && org_id != 10340"
271
                                            v-if="((hisPatientInfo.id > 0 && items.curPrescriptions.order.id == 0) || items.curPrescriptions.order.order_status == 1 ||  items.curPrescriptions.order.order_status == 3) && org_id != 10340"
261
                                            size="small"
272
                                            size="small"
262
-                                           @click="open(4,items.med_type,items.curPrescriptions.order,items.prescriptions)"
273
+                                           @click="open(4,items.med_type,items.curPrescriptions.order,items.prescriptions,item.diagnoses)"
263
                                            type="primary">收费
274
                                            type="primary">收费
264
                                 </el-button>
275
                                 </el-button>
265
                               </div>
276
                               </div>
344
                     <el-form :model="form" :rules="rules" ref="formValue" label-width="100px">
355
                     <el-form :model="form" :rules="rules" ref="formValue" label-width="100px">
345
 
356
 
346
                       <el-form-item label="大病类别:" prop="sick_type" >
357
                       <el-form-item label="大病类别:" prop="sick_type" >
347
-                        <el-select style="margin-right:5px;width:100px;"
358
+                        <el-select style="margin-right:5px;width:200px;"
348
                                    v-model="form.sick_type" placeholder="">
359
                                    v-model="form.sick_type" placeholder="">
349
                           <el-option
360
                           <el-option
350
                             v-for="(item,index) in sick"
361
                             v-for="(item,index) in sick"
356
                         </el-select>
367
                         </el-select>
357
                       </el-form-item>
368
                       </el-form-item>
358
 
369
 
359
-                      <el-form-item label="诊断:" prop="diagnosis" >
370
+                      <el-form-item label="诊断:" prop="diagnosis"  v-if="org_id != 10721 && org_id != 0">
360
                         <el-select style="margin-right:5px;width:100px;"
371
                         <el-select style="margin-right:5px;width:100px;"
361
                                    v-model="form.diagnosis" multiple placeholder="">
372
                                    v-model="form.diagnosis" multiple placeholder="">
362
                           <el-option
373
                           <el-option
489
                               <el-button
500
                               <el-button
490
                                 v-if="(hisPatientInfo.balance_accounts_type != 2 && hisPatientInfo.id > 0 &&  items.curMonthPrescriptions.order.id == 0)"
501
                                 v-if="(hisPatientInfo.balance_accounts_type != 2 && hisPatientInfo.id > 0 &&  items.curMonthPrescriptions.order.id == 0)"
491
                                 size="small"
502
                                 size="small"
492
-                                @click="open(8,items.med_type,items.curMonthPrescriptions.order,items.month_prescriptions)"
503
+                                @click="open(8,items.med_type,items.curMonthPrescriptions.order,items.month_prescriptions,items.diagnoses)"
493
                                 type="primary"
504
                                 type="primary"
494
                               >预结算
505
                               >预结算
495
                               </el-button>
506
                               </el-button>
496
                               <el-button
507
                               <el-button
497
                                 v-if="items.curMonthPrescriptions.order.order_status == 1"
508
                                 v-if="items.curMonthPrescriptions.order.order_status == 1"
498
                                 size="small"
509
                                 size="small"
499
-                                @click="open(11,items.med_type,items.curMonthPrescriptions.order,items.month_prescriptions)"
510
+                                @click="open(11,items.med_type,items.curMonthPrescriptions.order,items.month_prescriptions,items.diagnoses)"
500
                                 type="primary"
511
                                 type="primary"
501
                               >撤销明细
512
                               >撤销明细
502
                               </el-button>
513
                               </el-button>
577
 
588
 
578
 
589
 
579
                       <el-form-item label="大病类别:" prop="sick_type" >
590
                       <el-form-item label="大病类别:" prop="sick_type" >
580
-                        <el-select style="margin-right:5px;width:100px;"
591
+                        <el-select style="margin-right:5px;width:200px;"
581
                                    v-model="form.sick_type" placeholder="">
592
                                    v-model="form.sick_type" placeholder="">
582
                           <el-option
593
                           <el-option
583
                             v-for="(item,index) in sick"
594
                             v-for="(item,index) in sick"
588
                         </el-select>
599
                         </el-select>
589
                       </el-form-item>
600
                       </el-form-item>
590
 
601
 
591
-                      <el-form-item label="诊断:" prop="diagnosis" >
602
+                      <el-form-item label="诊断:" prop="diagnosis"  v-if="org_id != 10721 && org_id != 0">
592
                         <el-select style="margin-right:5px;width:100px;"
603
                         <el-select style="margin-right:5px;width:100px;"
593
                                    v-model="form.diagnosis" multiple placeholder="">
604
                                    v-model="form.diagnosis" multiple placeholder="">
594
                           <el-option
605
                           <el-option
810
                     <el-form :model="form" :rules="rules" ref="formValue" label-width="100px">
821
                     <el-form :model="form" :rules="rules" ref="formValue" label-width="100px">
811
 
822
 
812
                       <el-form-item label="大病类别:" prop="sick_type" >
823
                       <el-form-item label="大病类别:" prop="sick_type" >
813
-                        <el-select style="margin-right:5px;width:100px;"
824
+                        <el-select style="margin-right:5px;width:200px;"
814
                                    v-model="form.sick_type" placeholder="">
825
                                    v-model="form.sick_type" placeholder="">
815
                           <el-option
826
                           <el-option
816
                             v-for="(item,index) in sick"
827
                             v-for="(item,index) in sick"
821
                         </el-select>
832
                         </el-select>
822
                       </el-form-item>
833
                       </el-form-item>
823
 
834
 
824
-                      <el-form-item label="诊断:" prop="diagnosis" >
835
+                      <el-form-item label="诊断:" prop="diagnosis"  v-if="org_id != 10721 && org_id != 0">
825
                         <el-select style="margin-right:5px;width:100px;"
836
                         <el-select style="margin-right:5px;width:100px;"
826
                                    v-model="form.diagnosis" multiple placeholder="">
837
                                    v-model="form.diagnosis" multiple placeholder="">
827
                           <el-option
838
                           <el-option
922
         </el-option>
933
         </el-option>
923
       </el-select>
934
       </el-select>
924
 
935
 
925
-      <el-select v-if="this.$store.getters.xt_user.org_id != 10721 &&this.$store.getters.xt_user.org_id != 10726 && this.$store.getters.xt_user.org_id != 10188 && this.$store.getters.xt_user.org_id != 10217 && this.$store.getters.xt_user.org_id != 0"
936
+      <el-select v-if="this.$store.getters.xt_user.org_id != 10721 &&this.$store.getters.xt_user.org_id != 10726 && this.$store.getters.xt_user.org_id != 10188 && this.$store.getters.xt_user.org_id != 10217"
926
                  style="width:50%;" v-model="temp_med_type"
937
                  style="width:50%;" v-model="temp_med_type"
927
                  placeholder="医疗类型" @change="changevalue">
938
                  placeholder="医疗类型" @change="changevalue">
928
         <el-option
939
         <el-option
2787
             prescription.order.order_status = prescription.order.order_status.toString()
2798
             prescription.order.order_status = prescription.order.order_status.toString()
2788
             prescription.order.order_status = parseInt(prescription.order.order_status)
2799
             prescription.order.order_status = parseInt(prescription.order.order_status)
2789
 
2800
 
2801
+
2802
+
2803
+            let diass = []
2804
+            for(let i = 0; i < prescription.diagnose.split(",").length;i++){
2805
+              diass.push(parseInt(prescription.diagnose.split(",")[i]))
2806
+            }
2790
             const obj = {
2807
             const obj = {
2791
               id: prescription.id,
2808
               id: prescription.id,
2792
               name: this.getPName(prescription.med_type, index),
2809
               name: this.getPName(prescription.med_type, index),
2796
               order_status: prescription.order_status,
2813
               order_status: prescription.order_status,
2797
               type: prescription.type,
2814
               type: prescription.type,
2798
               med_type: prescription.med_type,
2815
               med_type: prescription.med_type,
2799
-              order: prescription.order
2816
+              order: prescription.order,
2817
+              diagnoses:diass,
2800
             }
2818
             }
2801
             // inner_prescription.push(obj)
2819
             // inner_prescription.push(obj)
2802
             big_prescriptions[c].prescriptions.push(obj)
2820
             big_prescriptions[c].prescriptions.push(obj)
3375
           break
3393
           break
3376
       }
3394
       }
3377
     },
3395
     },
3378
-    open(index, med_type, order, prescriptions) {
3396
+    open(index, med_type, order, prescriptions,diagnosis) {
3379
 
3397
 
3380
       this.other_prescriptions = prescriptions
3398
       this.other_prescriptions = prescriptions
3381
 
3399
 
3521
         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 || this.$store.getters.xt_user.org_id == 10088 || this.$store.getters.xt_user.org_id == 10278) {
3539
         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 || this.$store.getters.xt_user.org_id == 10088 || this.$store.getters.xt_user.org_id == 10278) {
3522
           this.$refs.register9504.show()
3540
           this.$refs.register9504.show()
3523
         } else {
3541
         } else {
3524
-          this.$refs.register.show(this.doctors, this.department)
3525
-        }
3526
 
3542
 
3543
+          if(this.$store.getters.xt_user.org_id == 10721000){
3544
+            var  that= this
3545
+            axios.get('http://127.0.0.1:9532/test/net',{}).then(function(response) {
3546
+              if (response.data.state == 0) {
3547
+                // that.$message.error(response.data.data.msg);
3548
+                that.$confirm("请检查医保程序是否有打开", "提示", {
3549
+                  confirmButtonText: "确 定",
3550
+                  cancelButtonText: "取 消",
3551
+                  type: "warning",
3552
+                }).then(() => {
3553
+                  var that = this
3554
+                  let params={
3555
+                    id_card_no: this.patientInfo.id_card_no,
3556
+                    admin_user_id:this.$store.getters.xt_user.user.id,
3557
+                  }
3558
+                  axios.get('http://127.0.0.1:9532/zh/api/patient/info', {
3559
+                    params: params,
3560
+                    headers: {
3561
+                      'Permission': 5
3562
+                    }
3563
+                  })
3564
+                    .then(function(response) {
3565
+                      if (response.data.state == 0) {
3566
+                        that.$message.error(response.data.msg)
3567
+                        that.loadingone = false
3568
+                        return false
3569
+                      } else {
3570
+                        that.loadingone = false
3571
+                        if (response.data.data.failed_code == -10) {
3572
+                          // that.$message.error(response.data.data.msg)
3573
+                            this.$refs.register.showTwo(this.doctors, this.department,"")
3574
+                        } else {
3575
+                          this.$refs.register.showTwo(this.doctors, this.department,response.data.data.info)
3576
+                        }
3577
+                      }
3578
+                    })
3579
+                    .catch(function(error) {
3580
+                    })
3581
+                })
3582
+                  .catch(() => {});
3583
+                return false
3584
+              } else {
3585
+
3586
+              }
3587
+            }).catch(function(error) {
3588
+              that.$confirm("数据异常,请检查医保程序是否有打开", "提示", {
3589
+                confirmButtonText: "确 定",
3590
+                cancelButtonText: "取 消",
3591
+                type: "warning",
3592
+              }).then(() => {
3593
+              })
3594
+                .catch(() => {});
3595
+            })
3596
+
3597
+          }else{
3598
+            this.$refs.register.show(this.doctors, this.department)
3599
+          }
3600
+        }
3527
       } else if (index == 8) {
3601
       } else if (index == 8) {
3602
+        console.log(diagnosis)
3603
+
3528
         var that = this
3604
         var that = this
3529
-        if (this.form.diagnosis.length == 0) {
3530
-          that.$message.error('诊断不能为空,请选择诊断内容')
3531
-          return
3605
+        if(this.org_id == 10721 || this.org_id == 0){
3606
+          if (diagnosis.length == 0) {
3607
+            that.$message.error('当前操作的处方诊断不能为空,请选择诊断内容')
3608
+            return
3609
+          }
3610
+        }else{
3611
+          if (this.form.diagnosis.length == 0) {
3612
+            that.$message.error('诊断不能为空,请选择诊断内容')
3613
+            return
3614
+          }
3532
         }
3615
         }
3533
 
3616
 
3534
-        if (this.form.sick_type.length || this.form.sick_type == 0) {
3535
 
3617
 
3618
+        if (this.form.sick_type.length || this.form.sick_type == 0) {
3536
           that.$message.error('疾病类型不能为空,请选择疾病类型')
3619
           that.$message.error('疾病类型不能为空,请选择疾病类型')
3537
           return
3620
           return
3538
         }
3621
         }
3565
         var new_time  = time_arr[0] + " " + hh+":"+mf+":"+ss
3648
         var new_time  = time_arr[0] + " " + hh+":"+mf+":"+ss
3566
         form['begin_time'] = new_time
3649
         form['begin_time'] = new_time
3567
         form['p_type'] = med_type
3650
         form['p_type'] = med_type
3568
-        form['diagnosis'] = this.form.diagnosis.join(',')
3651
+
3652
+        if(this.org_id == 10721 || this.org_id == 0){
3653
+          form['diagnosis'] = diagnosis.join(',')
3654
+        }else{
3655
+          form['diagnosis'] = this.form.diagnosis.join(',')
3656
+        }
3569
         form['sick_type'] = this.form.sick_type
3657
         form['sick_type'] = this.form.sick_type
3570
         form['admin_user_id'] = this.$store.getters.xt_user.user.id
3658
         form['admin_user_id'] = this.$store.getters.xt_user.user.id
3571
         form['org_id'] = this.$store.getters.xt_user.org_id
3659
         form['org_id'] = this.$store.getters.xt_user.org_id
3799
           }).catch(() => {
3887
           }).catch(() => {
3800
           })
3888
           })
3801
         } else {
3889
         } else {
3802
-          if (this.$store.getters.xt_user.org_id == 10215 && this.order.id > 0) {
3890
+          if (this.order.id > 0) {
3803
             this.$message.error('该就诊号尚未撤销明细或者退费无法进行退号操作')
3891
             this.$message.error('该就诊号尚未撤销明细或者退费无法进行退号操作')
3804
             return
3892
             return
3805
           }
3893
           }
6057
                   prescription.order.order_status = prescription.order.order_status.toString()
6145
                   prescription.order.order_status = prescription.order.order_status.toString()
6058
                   prescription.order.order_status = parseInt(prescription.order.order_status)
6146
                   prescription.order.order_status = parseInt(prescription.order.order_status)
6059
 
6147
 
6148
+                  let diass = []
6149
+                  for(let i = 0; i < prescription.diagnose.split(",").length;i++){
6150
+                    diass.push(parseInt(prescription.diagnose.split(",")[i]))
6151
+                  }
6060
                   const obj = {
6152
                   const obj = {
6061
                     id: prescription.id,
6153
                     id: prescription.id,
6062
                     name: this.getPName(prescription.med_type, index),
6154
                     name: this.getPName(prescription.med_type, index),
6066
                     order_status: prescription.order_status,
6158
                     order_status: prescription.order_status,
6067
                     type: prescription.type,
6159
                     type: prescription.type,
6068
                     med_type: prescription.med_type,
6160
                     med_type: prescription.med_type,
6069
-                    order: prescription.order
6161
+                    order: prescription.order,
6162
+                    diagnoses:diass,
6070
                   }
6163
                   }
6071
                   // inner_prescription.push(obj)
6164
                   // inner_prescription.push(obj)
6072
                   big_prescriptions[c].prescriptions.push(obj)
6165
                   big_prescriptions[c].prescriptions.push(obj)

+ 6 - 1
src/xt_pages/outpatientCharges/summary.vue View File

3539
               患者性别: gender,
3539
               患者性别: gender,
3540
               患者年龄: age,
3540
               患者年龄: age,
3541
               开处时间: time,
3541
               开处时间: time,
3542
+              险种类型: insutypeName,
3543
+              参保所属医保区划: order.his_patient.insuplc_admdvs,
3542
               参保号: order.his_patient.id_card_no,
3544
               参保号: order.his_patient.id_card_no,
3543
               应收金额: order.medfee_sumamt,
3545
               应收金额: order.medfee_sumamt,
3544
               实收金额: order.medfee_sumamt,
3546
               实收金额: order.medfee_sumamt,
3566
           }
3568
           }
3567
           if(this.org_id != 10697 && this.org_id != 0){
3569
           if(this.org_id != 10697 && this.org_id != 0){
3568
             import('@/vendor/Export2Excel').then((excel) => {
3570
             import('@/vendor/Export2Excel').then((excel) => {
3569
-              console.log('1111111南昌');
3570
               const tHeader = [
3571
               const tHeader = [
3571
               '就诊号',
3572
               '就诊号',
3572
               '患者姓名',
3573
               '患者姓名',
3651
               "患者性别",
3652
               "患者性别",
3652
               "患者年龄",
3653
               "患者年龄",
3653
               '开处时间',
3654
               '开处时间',
3655
+                '险种类型',
3656
+                '参保所属医保区划',
3654
               '参保号',
3657
               '参保号',
3655
               '应收金额',
3658
               '应收金额',
3656
               '实收金额',
3659
               '实收金额',
3679
                 "患者性别",
3682
                 "患者性别",
3680
                 "患者年龄",
3683
                 "患者年龄",
3681
                 '开处时间',
3684
                 '开处时间',
3685
+                '险种类型',
3686
+                '参保所属医保区划',
3682
                 '参保号',
3687
                 '参保号',
3683
                 '应收金额',
3688
                 '应收金额',
3684
                 '实收金额',
3689
                 '实收金额',

+ 53 - 19
src/xt_pages/outpatientDoctorStation/components/deskPrescription.vue View File

62
 
62
 
63
           </el-form-item>
63
           </el-form-item>
64
 
64
 
65
-          <el-form-item label="诊断:" prop="name" label-position="right" style="width:66.6%;">
65
+          <el-form-item label="诊断:" prop="name" label-position="right" style="width:66.6%;" v-if="org_id != 10721 && org_id != 0">
66
 
66
 
67
             <el-select style="width:100%;" v-model="diagnose" placeholder="" multiple filterable>
67
             <el-select style="width:100%;" v-model="diagnose" placeholder="" multiple filterable>
68
               <el-option
68
               <el-option
176
                 </el-select>
176
                 </el-select>
177
 
177
 
178
 
178
 
179
-                <el-select v-if="org_id == 10721 || org_id == 0" style="width:50%;" v-model="item.med_type" placeholder="医疗类型"
179
+                <el-select v-if="org_id == 10721 || org_id == 0" style="width:30%;" v-model="item.med_type" placeholder="医疗类型"
180
                            @change="changevalue">
180
                            @change="changevalue">
181
                   <el-option
181
                   <el-option
182
                     v-for="(item,index) in register10721"
182
                     v-for="(item,index) in register10721"
186
                   </el-option>
186
                   </el-option>
187
                 </el-select>
187
                 </el-select>
188
 
188
 
189
-<!--                <el-select v-if="org_id == 10721 || org_id == 0" style="width:100%;" v-model="item.diagnose" placeholder="" multiple filterable  placeholder="诊断">-->
190
-<!--                  <el-option-->
191
-<!--                    v-for="(item,index) in diagnoses"-->
192
-<!--                    :key="index"-->
193
-<!--                    :label="item.class_name"-->
194
-<!--                    :value="item.id">-->
195
-<!--                  </el-option>-->
196
-<!--                </el-select>-->
189
+                <el-select v-if="org_id == 10721 || org_id == 0" style="width:30%;" v-model="item.diagnose"  multiple filterable  placeholder="诊断">
190
+                  <el-option
191
+                    v-for="(item,index) in diagnoses"
192
+                    :key="index"
193
+                    :label="item.class_name"
194
+                    :value="item.id">
195
+                  </el-option>
196
+                </el-select>
197
 
197
 
198
-                <el-select v-if="org_id == 10726" style="width:50%;" v-model="item.med_type" placeholder="医疗类型"
198
+                <el-select v-if="org_id == 10726" style="width:30%;" v-model="item.med_type" placeholder="医疗类型"
199
                            @change="changevalue">
199
                            @change="changevalue">
200
                   <el-option
200
                   <el-option
201
                     v-for="(item,index) in register10726"
201
                     v-for="(item,index) in register10726"
2197
 
2197
 
2198
     },
2198
     },
2199
     setData(data, info, admin_info, doctors, department, hisPatientInfo, month_data, last_info, sick, diagnoses, patient_diagnose) {
2199
     setData(data, info, admin_info, doctors, department, hisPatientInfo, month_data, last_info, sick, diagnoses, patient_diagnose) {
2200
-      console.log('诊断23333333333333', this.diagnose)
2200
+
2201
+      for(let i = 0; i < data.length;i++){
2202
+        let aaa = data[i].diagnose
2203
+        let uniqueArr = [...new Set(aaa)];
2204
+        data[i].diagnose = uniqueArr
2205
+      }
2206
+
2207
+
2201
 
2208
 
2202
       //针对普爱医院获取药品和耗材相关库存数据
2209
       //针对普爱医院获取药品和耗材相关库存数据
2203
       if (this.org_id == 10206 && this.zuobiao_drug.length == 0) {
2210
       if (this.org_id == 10206 && this.zuobiao_drug.length == 0) {
2495
         }
2502
         }
2496
       }
2503
       }
2497
 
2504
 
2505
+
2506
+
2507
+
2508
+
2509
+
2510
+
2498
     },
2511
     },
2499
     setMonthData(info, admin_info, doctors, department, hisPatientInfo, month_data, last_info) {
2512
     setMonthData(info, admin_info, doctors, department, hisPatientInfo, month_data, last_info) {
2500
       // this.start_time = moment(new Date()).subtract(30, 'days').format('YYYY-MM-DD')
2513
       // this.start_time = moment(new Date()).subtract(30, 'days').format('YYYY-MM-DD')
2657
       // }
2670
       // }
2658
       if (!isLoading) {
2671
       if (!isLoading) {
2659
         if (this.dayorMonth == 'day') {
2672
         if (this.dayorMonth == 'day') {
2673
+          if(this.org_id == 10721) {
2674
+            for (let i = 0; i < this.prescriptions.length; i++) {
2675
+              let index = i + 1
2676
+              // for (let b = 0; b < this.prescriptions[i].length; b++) {
2677
+              if (this.prescriptions[i].diagnose.length == 0) {
2678
+                this.$message.error('处方' + index + "诊断不能为空")
2679
+                return
2680
+                // }
2681
+              }
2682
+            }
2683
+          }
2684
+
2685
+
2660
           for (let i = 0; i < this.prescriptions.length; i++) {
2686
           for (let i = 0; i < this.prescriptions.length; i++) {
2687
+            let index = i + 1
2661
             if (this.prescriptions[i].advices.length == 0 && this.prescriptions[i].project.length == 0) {
2688
             if (this.prescriptions[i].advices.length == 0 && this.prescriptions[i].project.length == 0) {
2662
-              this.$message.error('请先开处方')
2689
+
2690
+              this.$message.error('处方' + index + '内容不能为空,请先开处方')
2663
               return
2691
               return
2664
             }
2692
             }
2665
           }
2693
           }
2683
             this.$message.error('疾病类型不能为空')
2711
             this.$message.error('疾病类型不能为空')
2684
             return
2712
             return
2685
           }
2713
           }
2686
-          if (this.diagnose.length <= 0) {
2714
+          if (this.diagnose.length <= 0 && this.org_id != 10721) {
2687
             this.$message.error('诊断不能为空')
2715
             this.$message.error('诊断不能为空')
2688
             return
2716
             return
2689
           }
2717
           }
2718
+
2719
+
2720
+
2690
           for (let i = 0; i < this.prescriptions.length; i++) {
2721
           for (let i = 0; i < this.prescriptions.length; i++) {
2691
             for (let b = 0; b < this.prescriptions[i].advices.length; b++) {
2722
             for (let b = 0; b < this.prescriptions[i].advices.length; b++) {
2692
               if (this.prescriptions[i].advices[b].prescribing_number == 0 || this.prescriptions[i].advices[b].prescribing_number == ''  || Number.isNaN(this.prescriptions[i].advices[b].prescribing_number)) {
2723
               if (this.prescriptions[i].advices[b].prescribing_number == 0 || this.prescriptions[i].advices[b].prescribing_number == ''  || Number.isNaN(this.prescriptions[i].advices[b].prescribing_number)) {
3167
 
3198
 
3168
                 }
3199
                 }
3169
               }
3200
               }
3201
+
3202
+
3203
+
3204
+              for(let i = 0; i < data.prescriptions.length; i++){
3205
+                data.prescriptions[i]["diagnoses"] = data.prescriptions[i].diagnose.join(",")
3206
+              }
3170
               createHisPrescription(data, params).then(response => {
3207
               createHisPrescription(data, params).then(response => {
3171
                 if (response.data.state == 1) {
3208
                 if (response.data.state == 1) {
3172
                   this.$emit('change', this.patientInfo.id)
3209
                   this.$emit('change', this.patientInfo.id)
3398
 
3435
 
3399
       }
3436
       }
3400
 
3437
 
3401
-      if (this.org_id != 10206 && this.org_id != 0) {
3438
+      if (this.org_id != 10206) {
3402
         obj.med_type = 14
3439
         obj.med_type = 14
3403
-        if (this.org_id == 10721){
3440
+        if (this.org_id == 10721 || this.org_id == 0){
3404
           obj.med_type = 992102
3441
           obj.med_type = 992102
3405
         }
3442
         }
3406
-        if (obj.med_type == 992102){
3407
-          obj.diagnose = 2465
3408
-        }
3409
        } else {
3443
        } else {
3410
         obj.med_type = 12
3444
         obj.med_type = 12
3411
       }
3445
       }

File diff suppressed because it is too large
+ 509 - 420
src/xt_pages/outpatientDoctorStation/doctorDesk.vue


+ 6 - 0
src/xt_pages/outpatientTool/components/settle.vue View File

83
               </template>
83
               </template>
84
           </el-table-column>
84
           </el-table-column>
85
 
85
 
86
+        <el-table-column align="center" prop="item_name" label="结算时间">
87
+          <template slot-scope="scope">
88
+            {{scope.row.setl_time?scope.row.setl_time:getTimes(scope.row.settle_accounts_date)}}
89
+          </template>
90
+        </el-table-column>
91
+
86
         <el-table-column align="center" prop="item_name" label="参保地">
92
         <el-table-column align="center" prop="item_name" label="参保地">
87
           <template slot-scope="scope">
93
           <template slot-scope="scope">
88
             {{scope.row.clr_optins}}
94
             {{scope.row.clr_optins}}