陈少旭 1 viikko sitten
vanhempi
commit
46fec51bbe

+ 1 - 1
src/store/getters.js Näytä tiedosto

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

+ 4 - 1
src/store/index.js Näytä tiedosto

@@ -9,6 +9,8 @@ import xt_user from './modules/xt_user'
9 9
 import xt_permission from './modules/xt_permission'
10 10
 import xt_role_temps from './modules/role_temps'
11 11
 import global_config from './modules/globalConfig'
12
+import insuplcAdmdvs_config from './modules/in'
13
+
12 14
 
13 15
 import getters from './getters'
14 16
 import data from './modules/data'
@@ -34,7 +36,8 @@ const store = new Vuex.Store({
34 36
     xt_role_temps,
35 37
     global_config,
36 38
     temp_params,
37
-    pagedata
39
+    pagedata,
40
+    insuplcAdmdvs_config
38 41
   },
39 42
   getters
40 43
 

+ 135 - 6
src/xt_pages/outpatientCharges/components/registerDialog.vue Näytä tiedosto

@@ -78,7 +78,7 @@
78 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 82
         <el-select v-model="form.insuplc_admdvs" placeholder="请选择" style="width:100%;">
83 83
           <el-option
84 84
               v-for="item in InsuplcAdmdvs"
@@ -90,6 +90,27 @@
90 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 115
       <el-form-item label="结算类型:">
95 116
         <el-select v-model="form.settlement_value" placeholder="请选择" style="width:100%;">
@@ -240,6 +261,7 @@
240 261
           // { value: 16, label: '门诊慢性病' },
241 262
           // { value: 21, label: '普通住院' }
242 263
         ],
264
+        loading:false,
243 265
         medical_care: [
244 266
           { value: 11, label: '普通门诊' },
245 267
           { value: 12, label: '家庭通道' },
@@ -386,6 +408,8 @@
386 408
           // sick_type: [{ required: true, message: '大病类别不能为空', trigger: 'change' }],
387 409
           // diagnosis: [{ required: true, message: '诊断不能为空', trigger: 'change' }]
388 410
         },
411
+        list:[],
412
+        options:[],
389 413
         visibility: false,
390 414
         labelPosition: 'right',
391 415
         isClose: false,
@@ -409,8 +433,8 @@
409 433
           phone: '',
410 434
           social_type: '',
411 435
           doctor_number:"",
412
-        }
413 436
 
437
+        }
414 438
       }
415 439
     },
416 440
     props: {
@@ -439,8 +463,25 @@
439 463
       },
440 464
       sick: Array,
441 465
       diagnoses: Array
466
+
467
+
442 468
     },
443 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 485
       checkID(){
445 486
         this.$alert(this.form.psn_desc, '身份类型', {
446 487
           confirmButtonText: '确定',
@@ -643,16 +684,12 @@
643 684
                   }).catch(() => {
644 685
                   })
645 686
                 } else {
646
-
647 687
                   for(let i =0; i < response.data.data.info.output.insuinfo.length; i++){
648 688
                     that.InsuplcAdmdvs.push({
649 689
                       value:response.data.data.info.output.insuinfo[i].insuplc_admdvs,
650 690
                       label:response.data.data.info.output.insuinfo[i].insuplc_admdvs,
651 691
                     })
652
-
653 692
                   }
654
-
655
-
656 693
                   that.form.social_type = parseInt(response.data.data.insutype)
657 694
                 }
658 695
               }
@@ -839,6 +876,12 @@
839 876
         return getDictionaryDataConfig(module, filed_name)
840 877
       },
841 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 885
         this.visibility = true
843 886
         // this.form = Object.assign({}, this.resetForm)
844 887
         this.form.id = 0
@@ -905,6 +948,92 @@
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 1037
       hide: function () {
909 1038
         this.visibility = false
910 1039
         this.$refs['formValue'].resetFields()

+ 119 - 26
src/xt_pages/outpatientCharges/outpatientChargesManagement.vue Näytä tiedosto

@@ -35,6 +35,7 @@
35 35
           </el-radio-group>
36 36
         </div>
37 37
 
38
+
38 39
         <div class="mainCell" v-if="this.org_id == 10191">
39 40
           <el-radio-group v-model="sch_type" @change="changeScheduleType">
40 41
             <el-radio :label="1">上午</el-radio>
@@ -215,13 +216,23 @@
215 216
                               type="primary"
216 217
                             >修改医疗类型
217 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 230
                             <div style="margin-bottom:10px;float: right">
219 231
                               <div>
220
-
221 232
                                 <el-button
222 233
                                   v-if="(hisPatientInfo.balance_accounts_type != 2 && hisPatientInfo.id > 0  && org_id != 10340)"
223 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 236
                                   type="primary"
226 237
                                 >读电子凭证
227 238
                                 </el-button>
@@ -230,7 +241,7 @@
230 241
                                 <el-button
231 242
                                   v-if="(hisPatientInfo.balance_accounts_type != 2 && hisPatientInfo.id > 0  && org_id != 10340)"
232 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 245
                                   type="primary"
235 246
                                 >人脸识别
236 247
                                 </el-button>
@@ -245,21 +256,21 @@
245 256
                                 <el-button
246 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 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 260
                                   type="primary"
250 261
                                 >预结算
251 262
                                 </el-button>
252 263
                                 <el-button
253 264
                                   v-if="items.curPrescriptions.order.order_status == 1 && hisPatientInfo.balance_accounts_type != 2 && org_id != 10340"
254 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 267
                                   type="primary"
257 268
                                 >撤销明细
258 269
                                 </el-button>
259 270
                                 <el-button v-loading="loadingtwo"
260 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 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 274
                                            type="primary">收费
264 275
                                 </el-button>
265 276
                               </div>
@@ -344,7 +355,7 @@
344 355
                     <el-form :model="form" :rules="rules" ref="formValue" label-width="100px">
345 356
 
346 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 359
                                    v-model="form.sick_type" placeholder="">
349 360
                           <el-option
350 361
                             v-for="(item,index) in sick"
@@ -356,7 +367,7 @@
356 367
                         </el-select>
357 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 371
                         <el-select style="margin-right:5px;width:100px;"
361 372
                                    v-model="form.diagnosis" multiple placeholder="">
362 373
                           <el-option
@@ -489,14 +500,14 @@
489 500
                               <el-button
490 501
                                 v-if="(hisPatientInfo.balance_accounts_type != 2 && hisPatientInfo.id > 0 &&  items.curMonthPrescriptions.order.id == 0)"
491 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 504
                                 type="primary"
494 505
                               >预结算
495 506
                               </el-button>
496 507
                               <el-button
497 508
                                 v-if="items.curMonthPrescriptions.order.order_status == 1"
498 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 511
                                 type="primary"
501 512
                               >撤销明细
502 513
                               </el-button>
@@ -577,7 +588,7 @@
577 588
 
578 589
 
579 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 592
                                    v-model="form.sick_type" placeholder="">
582 593
                           <el-option
583 594
                             v-for="(item,index) in sick"
@@ -588,7 +599,7 @@
588 599
                         </el-select>
589 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 603
                         <el-select style="margin-right:5px;width:100px;"
593 604
                                    v-model="form.diagnosis" multiple placeholder="">
594 605
                           <el-option
@@ -810,7 +821,7 @@
810 821
                     <el-form :model="form" :rules="rules" ref="formValue" label-width="100px">
811 822
 
812 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 825
                                    v-model="form.sick_type" placeholder="">
815 826
                           <el-option
816 827
                             v-for="(item,index) in sick"
@@ -821,7 +832,7 @@
821 832
                         </el-select>
822 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 836
                         <el-select style="margin-right:5px;width:100px;"
826 837
                                    v-model="form.diagnosis" multiple placeholder="">
827 838
                           <el-option
@@ -922,7 +933,7 @@
922 933
         </el-option>
923 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 937
                  style="width:50%;" v-model="temp_med_type"
927 938
                  placeholder="医疗类型" @change="changevalue">
928 939
         <el-option
@@ -2787,6 +2798,12 @@ export default {
2787 2798
             prescription.order.order_status = prescription.order.order_status.toString()
2788 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 2807
             const obj = {
2791 2808
               id: prescription.id,
2792 2809
               name: this.getPName(prescription.med_type, index),
@@ -2796,7 +2813,8 @@ export default {
2796 2813
               order_status: prescription.order_status,
2797 2814
               type: prescription.type,
2798 2815
               med_type: prescription.med_type,
2799
-              order: prescription.order
2816
+              order: prescription.order,
2817
+              diagnoses:diass,
2800 2818
             }
2801 2819
             // inner_prescription.push(obj)
2802 2820
             big_prescriptions[c].prescriptions.push(obj)
@@ -3375,7 +3393,7 @@ export default {
3375 3393
           break
3376 3394
       }
3377 3395
     },
3378
-    open(index, med_type, order, prescriptions) {
3396
+    open(index, med_type, order, prescriptions,diagnosis) {
3379 3397
 
3380 3398
       this.other_prescriptions = prescriptions
3381 3399
 
@@ -3521,18 +3539,83 @@ export default {
3521 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 3540
           this.$refs.register9504.show()
3523 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 3601
       } else if (index == 8) {
3602
+        console.log(diagnosis)
3603
+
3528 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 3619
           that.$message.error('疾病类型不能为空,请选择疾病类型')
3537 3620
           return
3538 3621
         }
@@ -3565,7 +3648,12 @@ export default {
3565 3648
         var new_time  = time_arr[0] + " " + hh+":"+mf+":"+ss
3566 3649
         form['begin_time'] = new_time
3567 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 3657
         form['sick_type'] = this.form.sick_type
3570 3658
         form['admin_user_id'] = this.$store.getters.xt_user.user.id
3571 3659
         form['org_id'] = this.$store.getters.xt_user.org_id
@@ -3799,7 +3887,7 @@ export default {
3799 3887
           }).catch(() => {
3800 3888
           })
3801 3889
         } else {
3802
-          if (this.$store.getters.xt_user.org_id == 10215 && this.order.id > 0) {
3890
+          if (this.order.id > 0) {
3803 3891
             this.$message.error('该就诊号尚未撤销明细或者退费无法进行退号操作')
3804 3892
             return
3805 3893
           }
@@ -6057,6 +6145,10 @@ export default {
6057 6145
                   prescription.order.order_status = prescription.order.order_status.toString()
6058 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 6152
                   const obj = {
6061 6153
                     id: prescription.id,
6062 6154
                     name: this.getPName(prescription.med_type, index),
@@ -6066,7 +6158,8 @@ export default {
6066 6158
                     order_status: prescription.order_status,
6067 6159
                     type: prescription.type,
6068 6160
                     med_type: prescription.med_type,
6069
-                    order: prescription.order
6161
+                    order: prescription.order,
6162
+                    diagnoses:diass,
6070 6163
                   }
6071 6164
                   // inner_prescription.push(obj)
6072 6165
                   big_prescriptions[c].prescriptions.push(obj)

+ 53 - 19
src/xt_pages/outpatientDoctorStation/components/deskPrescription.vue Näytä tiedosto

@@ -62,7 +62,7 @@
62 62
 
63 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 67
             <el-select style="width:100%;" v-model="diagnose" placeholder="" multiple filterable>
68 68
               <el-option
@@ -176,7 +176,7 @@
176 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 180
                            @change="changevalue">
181 181
                   <el-option
182 182
                     v-for="(item,index) in register10721"
@@ -186,16 +186,16 @@
186 186
                   </el-option>
187 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 199
                            @change="changevalue">
200 200
                   <el-option
201 201
                     v-for="(item,index) in register10726"
@@ -2197,7 +2197,14 @@ export default {
2197 2197
 
2198 2198
     },
2199 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 2210
       if (this.org_id == 10206 && this.zuobiao_drug.length == 0) {
@@ -2495,6 +2502,12 @@ export default {
2495 2502
         }
2496 2503
       }
2497 2504
 
2505
+
2506
+
2507
+
2508
+
2509
+
2510
+
2498 2511
     },
2499 2512
     setMonthData(info, admin_info, doctors, department, hisPatientInfo, month_data, last_info) {
2500 2513
       // this.start_time = moment(new Date()).subtract(30, 'days').format('YYYY-MM-DD')
@@ -2657,9 +2670,24 @@ export default {
2657 2670
       // }
2658 2671
       if (!isLoading) {
2659 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 2686
           for (let i = 0; i < this.prescriptions.length; i++) {
2687
+            let index = i + 1
2661 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 2691
               return
2664 2692
             }
2665 2693
           }
@@ -2683,10 +2711,13 @@ export default {
2683 2711
             this.$message.error('疾病类型不能为空')
2684 2712
             return
2685 2713
           }
2686
-          if (this.diagnose.length <= 0) {
2714
+          if (this.diagnose.length <= 0 && this.org_id != 10721) {
2687 2715
             this.$message.error('诊断不能为空')
2688 2716
             return
2689 2717
           }
2718
+
2719
+
2720
+
2690 2721
           for (let i = 0; i < this.prescriptions.length; i++) {
2691 2722
             for (let b = 0; b < this.prescriptions[i].advices.length; b++) {
2692 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,6 +3198,12 @@ export default {
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 3207
               createHisPrescription(data, params).then(response => {
3171 3208
                 if (response.data.state == 1) {
3172 3209
                   this.$emit('change', this.patientInfo.id)
@@ -3398,14 +3435,11 @@ export default {
3398 3435
 
3399 3436
       }
3400 3437
 
3401
-      if (this.org_id != 10206 && this.org_id != 0) {
3438
+      if (this.org_id != 10206) {
3402 3439
         obj.med_type = 14
3403
-        if (this.org_id == 10721){
3440
+        if (this.org_id == 10721 || this.org_id == 0){
3404 3441
           obj.med_type = 992102
3405 3442
         }
3406
-        if (obj.med_type == 992102){
3407
-          obj.diagnose = 2465
3408
-        }
3409 3443
        } else {
3410 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 Näytä tiedosto

@@ -83,6 +83,12 @@
83 83
               </template>
84 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 92
         <el-table-column align="center" prop="item_name" label="参保地">
87 93
           <template slot-scope="scope">
88 94
             {{scope.row.clr_optins}}