Parcourir la source

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

XMLWAN il y a 4 ans
Parent
révision
b84ef0714f

+ 1 - 0
src/lang/zh.js Voir le fichier

@@ -204,6 +204,7 @@ export default {
204 204
     scrm: 'SCRM',
205 205
     shop: '分销商城',
206 206
 
207
+    costComparison:'医保费用对照',
207 208
     incomeStatistics:'收入统计',
208 209
     outpatientRegistration:'门诊挂号',
209 210
     outpatientRegistrationIndex:'门诊挂号',

+ 6 - 0
src/router/modules/outpatientCharges.js Voir le fichier

@@ -48,6 +48,12 @@ export default {
48 48
         name: 'incomeStatistics',
49 49
         meta: { title: 'incomeStatistics', noCache: true }
50 50
     },
51
+    {
52
+        path: '/outpatientCharges/costComparison',
53
+        component: () => import('@/xt_pages/outpatientCharges/costComparison'),
54
+        name: 'costComparison',
55
+        meta: { title: 'costComparison', noCache: true }
56
+    },
51 57
     {
52 58
         path: '/outpatientCharges/summaryDetail',
53 59
         component: () => import('@/xt_pages/outpatientCharges/summaryDetail'),

+ 2 - 0
src/store/getters.js Voir le fichier

@@ -28,6 +28,8 @@ const getters = {
28 28
   patient_state_selected: state => state.xt_user.patient_state_selected,
29 29
   treat_state_selected: state => state.xt_user.treat_state_selected,
30 30
   selected_date: state => state.xt_user.selected_date,
31
+  search_mode: state => state.xt_user.search_mode,
32
+  search_value: state => state.xt_user.search_value,
31 33
 
32 34
   xt_role_temps: state => state.xt_role_temps,
33 35
 

+ 18 - 1
src/store/modules/xt_user.js Voir le fichier

@@ -53,10 +53,21 @@ const xt_user = {
53 53
 
54 54
     // 示例: ['', '',]
55 55
     urlfors: [],
56
-    fileds: []
56
+    fileds: [],
57
+
58
+    //监测的搜索状态
59
+    search_mode: 1,
60
+    //监测的搜索值
61
+    search_value:''
57 62
   },
58 63
 
59 64
   mutations: {
65
+    SET_SEARCH_VALUE:(state, search_value) => {
66
+      state.search_value = search_value
67
+    },
68
+    SET_SEARCH_MODE:(state, search_mode) => {
69
+      state.search_mode = search_mode
70
+    },
60 71
     SET_SCHEDULE_TYPE_SELECTED: (state, schedule_type_selected) => {
61 72
       state.schedule_type_selected = schedule_type_selected
62 73
     },
@@ -180,6 +191,12 @@ const xt_user = {
180 191
   },
181 192
 
182 193
   actions: {
194
+    SetSearchValue({ commit }, search_value) {
195
+      commit('SET_SEARCH_VALUE', search_value)
196
+    },
197
+    SetSearchMode({ commit }, search_mode) {
198
+      commit('SET_SEARCH_MODE', search_mode)
199
+    },
183 200
     SetScheduleTypeSelected({ commit }, schedule_type_selected) {
184 201
       commit('SET_SCHEDULE_TYPE_SELECTED', schedule_type_selected)
185 202
     },

+ 21 - 8
src/xt_pages/dialysis/PatientBox.vue Voir le fichier

@@ -30,13 +30,13 @@
30 30
             >
31 31
           </div>
32 32
           <div style="margin-top:5px;text-align:left;height:24px;">
33
-              <span class="tip1" v-if="schedule.prescription == null || schedule.prescription.creater == 0" @click.stop="open(schedule)">
34
-                开处方
35
-              </span>
36
-              <span class="tip2" v-if="schedule.treatment_summary == null || schedule.treatment_summary.dialysis_summary == ''" @click.stop="open1(schedule)">
37
-                开小结
38
-              </span>
39
-            </div>
33
+            <span class="tip1" v-if="schedule.prescription == null || schedule.prescription.creater == 0" @click.stop="open(schedule)">
34
+              开处方
35
+            </span>
36
+            <span class="tip2" v-if="schedule.treatment_summary == null || schedule.treatment_summary.dialysis_summary == ''" @click.stop="open1(schedule)">
37
+              开小结
38
+            </span>
39
+          </div>
40 40
         </div>
41 41
         </div>
42 42
         <div>
@@ -48,6 +48,11 @@
48 48
           <div style="margin-top:13px;font-size:12px;color:#34495e;margin-right: 5px;" v-if="schedule.assessment_before_dislysis && patientStateVal == 1">签到时间:{{ getTime(schedule.assessment_before_dislysis.created_time) }}</div>
49 49
         </div>
50 50
       </div>
51
+      <div class="dislysisInfo">
52
+        <p>体重(前/后kg):{{ schedule.assessment_before_dislysis ? schedule.assessment_before_dislysis.weight_before : '' }}/{{ schedule.assessment_after_dislysis ? schedule.assessment_after_dislysis.weight_after : '' }}</p>
53
+        <p>目标超滤量:{{ schedule.prescription ? schedule.prescription.target_ultrafiltration : '' }}</p>
54
+        <p>透析器/灌流器:{{ schedule.prescription ? schedule.prescription.dialyzer_perfusion_apparatus : '' }}</p>
55
+      </div>
51 56
       <div class="function" :class="functionColor(schedule)" :id="modeColor(schedule.mode_id)">
52 57
         <ul>
53 58
           <li>
@@ -670,7 +675,7 @@ export default {
670 675
     // @include align-items-center;
671 676
     @include text-align;
672 677
     @include justify-content-between;
673
-    border-bottom: 1px #e5e5e5 solid;
678
+    // border-bottom: 1px #e5e5e5 solid;
674 679
     padding: 0 0 10px 20px;
675 680
     .tx {
676 681
       @include display-flex;
@@ -776,6 +781,14 @@ export default {
776 781
       }
777 782
     }
778 783
   }
784
+  .dislysisInfo{
785
+    color: rgb(123, 138, 151);
786
+    border-bottom: 1px solid rgb(229, 229, 229);
787
+    padding-left: 80px;
788
+    >p{
789
+      margin-bottom: 5px;
790
+    }
791
+  }
779 792
 }
780 793
 .red {
781 794
   border: 1px #ff7979 solid;

+ 47 - 16
src/xt_pages/dialysis/bloodPresssWatch.vue Voir le fichier

@@ -500,23 +500,52 @@ export default {
500 500
     };
501 501
   },
502 502
   created() {
503
-    var date = new Date();
504
-    this.time = date;
505
-    var year = date.getFullYear();
506
-    var month = date.getMonth() + 1;
507
-    var day = date.getDate();
508
-    if (month < 10) {
509
-      month = "0" + month;
510
-    }
511
-    if (day < 10) {
512
-      day = "0" + day;
503
+    var search_mode = this.$store.getters.search_mode
504
+    var search_value = this.$store.getters.search_value
505
+    console.log('search_mode',search_mode)
506
+    if(search_mode == 2){
507
+      this.search_mode = search_mode
508
+      if(search_value != ''){
509
+        this.patient_search_keyword = search_value
510
+        this.listQuery.keywords = search_value
511
+        this.getSchedualPatientList();
512
+        var date = new Date();
513
+        this.time = date;
514
+        var year = date.getFullYear();
515
+        var month = date.getMonth() + 1;
516
+        var day = date.getDate();
517
+        if (month < 10) {
518
+          month = "0" + month;
519
+        }
520
+        if (day < 10) {
521
+          day = "0" + day;
522
+        }
523
+        var nowDate = year + "-" + month + "-" + day;
524
+        var date = new Date(nowDate + " 00:00:00");
525
+        this.listQuery.schedul_time = date.getTime();
526
+        this.getAllZone();
527
+        this.getTemplateInfo();
528
+      }
529
+    }else {
530
+      var date = new Date();
531
+      this.time = date;
532
+      var year = date.getFullYear();
533
+      var month = date.getMonth() + 1;
534
+      var day = date.getDate();
535
+      if (month < 10) {
536
+        month = "0" + month;
537
+      }
538
+      if (day < 10) {
539
+        day = "0" + day;
540
+      }
541
+      var nowDate = year + "-" + month + "-" + day;
542
+      var date = new Date(nowDate + " 00:00:00");
543
+      this.listQuery.schedul_time = date.getTime();
544
+      this.getAllZone();
545
+      this.getSchedualPatientList();
546
+      this.getTemplateInfo();
513 547
     }
514
-    var nowDate = year + "-" + month + "-" + day;
515
-    var date = new Date(nowDate + " 00:00:00");
516
-    this.listQuery.schedul_time = date.getTime();
517
-    this.getAllZone();
518
-    this.getSchedualPatientList();
519
-    this.getTemplateInfo();
548
+    
520 549
     // this.template_id = this.$store.getters.xt_user.template_info.template_id;
521 550
   },
522 551
   methods: {
@@ -673,9 +702,11 @@ export default {
673 702
       } else {
674 703
         this.search_mode = 1;
675 704
       }
705
+      this.$store.dispatch('SetSearchMode', this.search_mode)
676 706
     },
677 707
     searchPatientAction: function() {
678 708
       this.listQuery.keywords = this.patient_search_keyword;
709
+      this.$store.dispatch('SetSearchValue', this.patient_search_keyword)
679 710
       console.log(this.patient_search_keyword);
680 711
       if (this.patient_search_keyword.length == 0) {
681 712
         return;

+ 6 - 6
src/xt_pages/dialysis/details/dialog/dialysisPrescriptionDialog.vue Voir le fichier

@@ -175,14 +175,14 @@
175 175
 
176 176
           <el-col :span="8" v-if="anticoagulant.shouji != -1 && isShows('首剂')">
177 177
 
178
-            <el-form-item v-if='this.$store.getters.xt_user.template_info.template_id != 21 && this.$store.getters.xt_user.template_info.template_id != 23' :label="'首剂(' + anticoagulant.shouji_unit + ') : '">
178
+            <el-form-item v-if='this.$store.getters.xt_user.template_info.template_id != 21 && this.$store.getters.xt_user.template_info.template_id != 23 && this.$store.getters.xt_user.template_info.org_id != 9987' :label="'首剂(' + anticoagulant.shouji_unit + ') : '">
179 179
               <el-input type="number" v-if="dialysisPrescription.anticoagulant != 1"
180 180
                         v-model="dialysisPrescription.anticoagulant_shouji"></el-input>
181 181
               <el-input type="number" disabled v-if="dialysisPrescription.anticoagulant == 1"
182 182
                         v-model="dialysisPrescription.no_anticoagulant_shouji"></el-input>
183 183
             </el-form-item>
184 184
 
185
-            <el-form-item v-if='this.$store.getters.xt_user.template_info.template_id == 21 || this.$store.getters.xt_user.template_info.template_id == 23' :label="'首剂(mg) : '">
185
+            <el-form-item v-if='this.$store.getters.xt_user.template_info.template_id == 21 || this.$store.getters.xt_user.template_info.template_id == 23 || this.$store.getters.xt_user.template_info.org_id == 9987' :label="'首剂(mg) : '">
186 186
               <el-input type="number" v-if="dialysisPrescription.anticoagulant != 1"
187 187
                         v-model="dialysisPrescription.anticoagulant_shouji"></el-input>
188 188
               <el-input type="number" disabled v-if="dialysisPrescription.anticoagulant == 1"
@@ -192,13 +192,13 @@
192 192
 
193 193
 
194 194
           <el-col :span="8" v-if="anticoagulant.weichi != -1 && isShows('维持')">
195
-            <el-form-item :label="'维持(' + anticoagulant.weichi_unit + ') : '" v-if="anticoagulant.weichi != -1 && this.$store.getters.xt_user.template_info.template_id != 21 && this.$store.getters.xt_user.template_info.template_id != 23">
195
+            <el-form-item :label="'维持(' + anticoagulant.weichi_unit + ') : '" v-if="anticoagulant.weichi != -1 && this.$store.getters.xt_user.template_info.template_id != 21 && this.$store.getters.xt_user.template_info.template_id != 23 && this.$store.getters.xt_user.template_info.org_id != 9987">
196 196
               <el-input type="number" v-if="dialysisPrescription.anticoagulant != 1"
197 197
                         v-model="dialysisPrescription.anticoagulant_weichi"></el-input>
198 198
               <el-input type="number" disabled v-if="dialysisPrescription.anticoagulant == 1"
199 199
                         v-model="dialysisPrescription.no_anticoagulant_weichi"></el-input>
200 200
             </el-form-item>
201
-            <el-form-item :label="'维持(mg/h) : '" v-if="anticoagulant.weichi != -1 && this.$store.getters.xt_user.template_info.template_id == 21 || this.$store.getters.xt_user.template_info.template_id == 23">
201
+            <el-form-item :label="'维持(mg/h) : '" v-if="anticoagulant.weichi != -1 && this.$store.getters.xt_user.template_info.template_id == 21 || this.$store.getters.xt_user.template_info.template_id == 23 || this.$store.getters.xt_user.template_info.org_id == 9987">
202 202
               <el-input type="number" v-if="dialysisPrescription.anticoagulant != 1"
203 203
                         v-model="dialysisPrescription.anticoagulant_weichi"></el-input>
204 204
               <el-input type="number" disabled v-if="dialysisPrescription.anticoagulant == 1"
@@ -207,13 +207,13 @@
207 207
           </el-col>
208 208
 
209 209
           <el-col :span="8" v-if="anticoagulant.zongliang != -1 && isShows('总量')">
210
-            <el-form-item v-if='this.$store.getters.xt_user.template_info.template_id != 21 && this.$store.getters.xt_user.template_info.template_id != 23' :label="'总量(' + anticoagulant.zongliang_unit + ') : '">
210
+            <el-form-item v-if='this.$store.getters.xt_user.template_info.template_id != 21 && this.$store.getters.xt_user.template_info.template_id != 23 && this.$store.getters.xt_user.template_info.org_id != 9987' :label="'总量(' + anticoagulant.zongliang_unit + ') : '">
211 211
               <el-input type="number" v-if="dialysisPrescription.anticoagulant != 1"
212 212
                         v-model="dialysisPrescription.anticoagulant_zongliang"></el-input>
213 213
               <el-input type="number" disabled v-if="dialysisPrescription.anticoagulant == 1"
214 214
                         v-model="dialysisPrescription.no_anticoagulant_zongliang"></el-input>
215 215
             </el-form-item>
216
-            <el-form-item v-if='this.$store.getters.xt_user.template_info.template_id == 21 || this.$store.getters.xt_user.template_info.template_id == 23' :label="'总量(mg) : '">
216
+            <el-form-item v-if='this.$store.getters.xt_user.template_info.template_id == 21 || this.$store.getters.xt_user.template_info.template_id == 23 || this.$store.getters.xt_user.template_info.org_id == 9987' :label="'总量(mg) : '">
217 217
               <el-input type="number" v-if="dialysisPrescription.anticoagulant != 1"
218 218
                         v-model="dialysisPrescription.anticoagulant_zongliang"></el-input>
219 219
               <el-input type="number" disabled v-if="dialysisPrescription.anticoagulant == 1"

+ 26 - 9
src/xt_pages/dialysis/dialysisPrintOrder.vue Voir le fichier

@@ -344,7 +344,7 @@
344 344
           >打印</el-button
345 345
         >
346 346
       </template>
347
-       <template v-if="org_template_info.template_id == 25">
347
+      <template v-if="org_template_info.template_id == 25">
348 348
         <el-button
349 349
           :loading="loading"
350 350
           size="small"
@@ -437,6 +437,16 @@
437 437
           >打印</el-button
438 438
         >
439 439
       </template>
440
+      <template v-if="org_template_info.template_id == 32">
441
+        <el-button
442
+          :loading="loading"
443
+          size="small"
444
+          icon="el-icon-printer"
445
+          @click="printThisPage"
446
+          type="primary"
447
+          >打印</el-button
448
+        >
449
+      </template>
440 450
     </div>
441 451
     <div class="app-container" style="min-height:0;">
442 452
       <!--<div class="order-print-btn"-->
@@ -672,6 +682,11 @@
672 682
             v-if="org_template_info.template_id == 31"
673 683
           >
674 684
           </DialysisPrintOrderThirtyOne>
685
+          <DialysisPrintOrderThirtyTwo
686
+            v-bind:childResponse="childResponse"
687
+            v-if="org_template_info.template_id == 32"
688
+          >
689
+          </DialysisPrintOrderThirtyTwo>
675 690
         </div>
676 691
       </el-container>
677 692
     </div>
@@ -722,9 +737,11 @@ import DialysisPrintOrderTwentyEight from "./template/DialysisPrintOrderTwentyEi
722 737
 import DialysisPrintOrderTwentyNine from "./template/DialysisPrintOrderTwentyNine";
723 738
 import DialysisPrintOrderThirty from "./template/DialysisPrintOrderThirty";
724 739
 import DialysisPrintOrderThirtyOne from "./template/DialysisPrintOrderThirtyOne";
740
+import DialysisPrintOrderThirtyTwo from "./template/DialysisPrintOrderThirtyTwo";
725 741
 export default {
726 742
   name: "dialysisPrintOrder",
727 743
   components: {
744
+    DialysisPrintOrderThirtyTwo,
728 745
     DialysisPrintOrderThirtyOne,
729 746
     DialysisPrintOrderThirty,
730 747
     DialysisPrintOrderTwentyNine,
@@ -1091,13 +1108,6 @@ export default {
1091 1108
           style: style,
1092 1109
           scanStyles: false
1093 1110
         });
1094
-      }else if (this.org_template_info.template_id == 25) {
1095
-        printJS({
1096
-          printable: "dialysis-print-box",
1097
-          type: "html",
1098
-          style: style5,
1099
-          scanStyles: false
1100
-        });
1101 1111
       } else if (this.org_template_info.template_id == 26) {
1102 1112
         printJS({
1103 1113
           printable: "dialysis-print-box",
@@ -1140,7 +1150,14 @@ export default {
1140 1150
           style: style3,
1141 1151
           scanStyles: false
1142 1152
         });
1143
-      } 
1153
+      } else if (this.org_template_info.template_id == 32) {
1154
+        printJS({
1155
+          printable: "dialysis-print-box",
1156
+          type: "html",
1157
+          style: style5,
1158
+          scanStyles: false
1159
+        });
1160
+      }
1144 1161
     },
1145 1162
     printThisOnePage() {
1146 1163
       var ptime = Math.round(new Date().getTime() / 1000);

Fichier diff supprimé car celui-ci est trop grand
+ 1871 - 0
src/xt_pages/dialysis/template/DialysisPrintOrderThirtyTwo.vue


+ 189 - 6
src/xt_pages/dialysis/template/DialysisPrintOrderTwentyFour.vue Voir le fichier

@@ -420,7 +420,7 @@
420 420
                     <td width="35">℃</td>
421 421
                     <td width='60'>24h尿量</td>
422 422
                     <td width='50'>
423
-                        <div class="under-line">&nbsp;{{ predialysis.urine_volume ? predialysis.urine_volume : '' }}</div>
423
+                        <div class="under-line">&nbsp;{{ predialysis.urine_volume ? predialysis.urine_volume : 0 }}</div>
424 424
                     </td>
425 425
                     <td width='10'>ml</td>
426 426
                     <td width='40'>水肿</td>
@@ -558,7 +558,7 @@
558 558
                 <table class="table-box">
559 559
                     <tbody>
560 560
                         <tr>
561
-                            <td width='100'>透析频率(次/周)</td>
561
+                            <td width='110'>透析频率(次/周)</td>
562 562
                             <td width='50'>
563 563
                                 <div class="under-line">
564 564
                                     &nbsp;{{ predialysis.dialysis_count ? predialysis.dialysis_count : "" }}
@@ -690,7 +690,7 @@
690 690
                     <td width='20'>mmol/L</td>
691 691
                     <td width="20">钾</td>
692 692
 
693
-                    <td width="150">
693
+                    <td width="160">
694 694
                       (
695 695
                         <label-box :isChecked="prescription.dialysate_formulation_name.indexOf('常规') > -1 ? true : false" showValue="2.0"></label-box>
696 696
                         <label-box :isChecked="false" showValue="3.0mmol/L"></label-box>
@@ -850,10 +850,10 @@
850 850
         </tr>
851 851
       </table>
852 852
 
853
-      <table class="print-table" border="1">
853
+      <table class="print-table" border="1" v-if="monitors.length <= 8">
854 854
         <tbody>
855 855
           <tr>
856
-            <td :rowspan="jilurow+4" width="30px" class="title-box">
856
+            <td :rowspan="monitors.length + 1" width="30px" class="title-box">
857 857
               透析治疗记录
858 858
             </td>
859 859
 
@@ -898,7 +898,7 @@
898 898
             </td>
899 899
 
900 900
             <td>
901
-              &nbsp;{{ monitor.arterial_pressure ? monitor.arterial_pressure : "" }}
901
+              &nbsp;<span v-if="getTime(monitor.operate_time, '{h}:{i}')">{{ monitor.arterial_pressure ? monitor.arterial_pressure : '0' }}</span>
902 902
             </td>
903 903
             <td>
904 904
               &nbsp;{{ monitor.venous_pressure ? monitor.venous_pressure : "" }}
@@ -1106,6 +1106,189 @@
1106 1106
       </table>
1107 1107
 
1108 1108
     </div>
1109
+    <div style="page-break-after: always;"></div>
1110
+    <div class="dialysis-print-order"  v-if="monitors.length > 8">
1111
+      <div class="order-yy-name" style="font-size:28px;font-weight:bold;">{{ orgname }}</div>
1112
+      <div class="order-title">血液净化治疗记录单</div>
1113
+      <table class="table-box">
1114
+        <tbody>
1115
+          <tr>
1116
+            <td width="50">姓 名:</td>
1117
+            <td width="90">
1118
+              <div class="under-line">&nbsp;{{ patientInfo.name }}</div>
1119
+            </td>
1120
+            <td width="30"></td>
1121
+            <td width="50">性 别:</td>
1122
+            <td width="100">
1123
+              <label-box :isChecked="patientInfo_gender_1" showValue="男" ></label-box>&nbsp;
1124
+              <label-box :isChecked="patientInfo_gender_2" showValue="女" ></label-box>
1125
+            </td>
1126
+            <td width="20"></td>
1127
+
1128
+            <td width="50">年 龄:</td>
1129
+            <td width="50">
1130
+              <div class="under-line">{{ getNewAge(patientInfo.id_card_no) }}</div>
1131
+            </td>
1132
+            <td width="20">岁</td>
1133
+            <td width="20"></td>
1134
+
1135
+            <!-- <td width="40">诊 断:</td>
1136
+            <td width="160">
1137
+              <div class="under-line">&nbsp;{{ patientInfo.diagnose }}</div>
1138
+            </td> -->
1139
+            <td width="40">日 期:</td>
1140
+            <td width="50">
1141
+                <div class="under-line">{{ queryParams.xtdate.slice(0,4) }}</div>
1142
+            </td>
1143
+            <td width='10'>年</td>
1144
+            <td width="50">
1145
+                <div class="under-line">{{ queryParams.xtdate.slice(5,7) }}</div>
1146
+            </td>
1147
+            <td width='10'>月</td>
1148
+            <td width="50">
1149
+                <div class="under-line">{{ queryParams.xtdate.slice(8,11) }}</div>
1150
+            </td>
1151
+            <td width='10'>日</td>
1152
+            <td width='30'></td>
1153
+            <td width="20">第</td>
1154
+            <td width="50">
1155
+                <div class="under-line">2</div>
1156
+            </td>
1157
+            <td width="20">页</td>
1158
+            <!-- <td width="60">住院号:</td>
1159
+            <td width="80">
1160
+              <div class="under-line">
1161
+                &nbsp;{{ receiverTreatmentAccess.admission_number ? receiverTreatmentAccess.admission_number : "" }}
1162
+              </div>
1163
+            </td> -->
1164
+            <td width="20"></td>
1165
+
1166
+            <td></td>
1167
+
1168
+            
1169
+          </tr>
1170
+        </tbody>
1171
+      </table>
1172
+      <table class="table-box" style="margin-top: 10px;">
1173
+        <tbody>
1174
+          <tr>
1175
+            <td width="70">透析次数:</td>
1176
+            <td width="50">
1177
+              <div class="under-line">&nbsp;{{ patientInfo.total_dialysis + patientInfo.user_sys_before_count }}</div>
1178
+            </td>
1179
+            <td width="30"></td>
1180
+            <td width="40">诊 断:</td>
1181
+            <td width="160">
1182
+              <div class="under-line">&nbsp;{{ patientInfo.diagnose }}</div>
1183
+            </td>
1184
+            <td width="20"></td>
1185
+
1186
+            <td width="60">门诊号:</td>
1187
+            <td width="80">
1188
+              <div class="under-line">
1189
+                &nbsp;{{ patientInfo.dialysis_no }}
1190
+              </div>
1191
+            </td>
1192
+            <td width="20"></td>
1193
+
1194
+            
1195
+            <td width="70">设备型号:</td>
1196
+            <td width='100'>
1197
+                <div class="under-line">&nbsp;
1198
+                    {{ predialysis.machine_type ? predialysis.machine_type : '' }}
1199
+                </div>
1200
+            </td>
1201
+            <td width='30'></td>
1202
+            <td width="30">机位</td>
1203
+            <td width="120">
1204
+                <div class="under-line">&nbsp;{{ getNumber() }}</div>
1205
+            </td>
1206
+            <td width="20">号</td>
1207
+
1208
+            <td></td>
1209
+
1210
+            
1211
+          </tr>
1212
+        </tbody>
1213
+      </table>
1214
+      <table class="print-table" border="1">
1215
+        <tbody>
1216
+          <tr>
1217
+            <td :rowspan="monitors.length + 1" width="30px" class="title-box">
1218
+              透析治疗记录
1219
+            </td>
1220
+
1221
+            <td style="line-height:20px;" width="50">时<br />间</td>
1222
+            <td style="line-height:20px;" width="70">血<br />压<br /><span style="font-size:10px; !important">mmHg</span></td>
1223
+            <td style="line-height:20px;" width="40">脉<br />搏<br /><span style="font-size:10px; !important">次/分</span></td>
1224
+            <td style="line-height:20px;" width="50">血<br />流<br />量<br /><span style="font-size:10px; !important">ml/分</span></td>
1225
+            <td style="line-height:20px;" width="50">动<br />脉<br />压<br /><span style="font-size:10px; !important">mmHg</span></td>
1226
+            <td style="line-height:20px;" width="50">静<br />脉<br />压<br /><span style="font-size:10px; !important">mmHg</span></td>
1227
+            <td style="line-height:20px;" width="50">跨<br />膜<br />压<br /><span style="font-size:10px; !important">mmHg</span></td>
1228
+            <td style="line-height:20px;" width="40">超<br />滤<br />率<br /><span style="font-size:10px; !important">ml/h</span></td>
1229
+            <td style="line-height:20px;" width="40">钠<br />浓<br />度<br /><span style="font-size:10px; !important">mmol/L</span></td>
1230
+            <td style="line-height:20px;" width="40">电<br />导<br />度<br /><span style="font-size:10px; !important">ms/cm</span></td>
1231
+            
1232
+            <td style="line-height:20px;" width="60">透析液<br />温度<br /><span style="font-size:10px; !important">ml</span></td>
1233
+            <td style="line-height:20px;" width="">病情变化及处理</td>
1234
+            <td style="line-height:20px;" width="60">签名</td>
1235
+          </tr>
1236
+
1237
+          <tr v-for="monitor in monitors" :key="monitor.id">
1238
+            <td style="height:40px;">
1239
+              &nbsp;
1240
+              <!-- <template>
1241
+                <span v-if="monitor.monitoring_date">
1242
+                    {{monitor.monitoring_date | parseTime('{y}-{m}-{d}')}}
1243
+                </span>
1244
+            </template>     -->
1245
+              {{ getTime(monitor.operate_time, "{h}:{i}") }}
1246
+            </td>
1247
+            <td>
1248
+              &nbsp;
1249
+              <span v-if='monitor.operate_time'>
1250
+              {{ monitor.systolic_blood_pressure ? monitor.systolic_blood_pressure : "" }}/
1251
+              {{ monitor.diastolic_blood_pressure ? monitor.diastolic_blood_pressure : "" }}
1252
+              </span>
1253
+            </td>
1254
+            <td>
1255
+              &nbsp;{{ monitor.pulse_frequency ? monitor.pulse_frequency : "" }}
1256
+            </td>
1257
+            <td>
1258
+              &nbsp;{{ monitor.blood_flow_volume ? monitor.blood_flow_volume : "" }}
1259
+            </td>
1260
+
1261
+            <td>
1262
+              &nbsp;<span v-if="getTime(monitor.operate_time, '{h}:{i}')">{{ monitor.arterial_pressure ? monitor.arterial_pressure : '0' }}</span>
1263
+            </td>
1264
+            <td>
1265
+              &nbsp;{{ monitor.venous_pressure ? monitor.venous_pressure : "" }}
1266
+            </td>
1267
+            <td>
1268
+              &nbsp;{{ monitor.transmembrane_pressure ? monitor.transmembrane_pressure : "" }}
1269
+            </td>
1270
+            <td>&nbsp;{{ monitor.ultrafiltration_rate ? monitor.ultrafiltration_rate : "" }}</td>
1271
+            <td>&nbsp;{{ monitor.sodium_concentration ? monitor.sodium_concentration : "" }}</td>
1272
+            <td>&nbsp;{{ monitor.conductivity ? monitor.conductivity : "" }}</td>
1273
+
1274
+            <td>&nbsp;{{ monitor.dialysate_temperature ? monitor.dialysate_temperature : '' }}</td>
1275
+            <td style="text-align:left;line-height:20px;">
1276
+              &nbsp;{{ monitor.symptom }} &nbsp;{{ monitor.dispose }} &nbsp;{{ monitor.result }}
1277
+            </td>
1278
+            <td>
1279
+              <span v-if="setAdminUserES(monitor.monitoring_nurse) == ''">
1280
+                {{ getAdminUser(monitor.monitoring_nurse) }}
1281
+              </span>
1282
+              <span v-else style="display:flex;align-items:center;justify-content:space-around;height:36px;">
1283
+                <img style="height:30px;" :src="setAdminUserES(monitor.monitoring_nurse)" alt srcset />
1284
+              </span>
1285
+            </td>
1286
+            
1287
+            
1288
+          </tr>
1289
+        </tbody>
1290
+      </table>
1291
+    </div>
1109 1292
   </div>
1110 1293
 </template>
1111 1294
 

+ 157 - 0
src/xt_pages/outpatientCharges/costComparison.vue Voir le fichier

@@ -0,0 +1,157 @@
1
+<template>
2
+  <div class="main-contain incomeStatistics">
3
+    <div class="position">
4
+      <bread-crumb :crumbs='crumbs'></bread-crumb>
5
+    </div>
6
+    <div class="app-container">
7
+      <div style="display: flex;justify-content: space-between;margin-bottom:10px;">
8
+        <div>
9
+          <el-input size="small" style="width:150px;"  v-model="keywords"
10
+                    class="filter-item"/>
11
+          <el-button size="small" style="margin-left:10px;" class="filter-item" type="primary" @click="searchAction">
12
+            搜索
13
+          </el-button>
14
+        </div>
15
+        <el-button size="small" type="primary" @click="dialogFormVisible = true">医保对账</el-button>
16
+      </div>
17
+      <el-table :data="tableData" border style="width: 100%;" :row-style="{ color: '#303133' }"
18
+                :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}" highlight-current-row>
19
+        <el-table-column
20
+          prop="date"
21
+          label="序号"
22
+          width="60"
23
+          align="center"
24
+          type="index"
25
+        >
26
+        </el-table-column>
27
+        <el-table-column align="center" prop="name" label="操作机构">
28
+          <template slot-scope="scope"></template>
29
+        </el-table-column>
30
+        <el-table-column align="center" prop="name" label="对账申请人">
31
+          <template slot-scope="scope"></template>
32
+        </el-table-column>
33
+        <el-table-column align="center" prop="name" label="开始日期">
34
+          <template slot-scope="scope"></template>
35
+        </el-table-column>
36
+        <el-table-column align="center" prop="name" label="结束日期">
37
+          <template slot-scope="scope"></template>
38
+        </el-table-column>
39
+        <el-table-column align="center" prop="name" label="险种类型">
40
+          <template slot-scope="scope"></template>
41
+        </el-table-column>
42
+        <el-table-column align="center" prop="name" label="对账类型">
43
+          <template slot-scope="scope"></template>
44
+        </el-table-column>
45
+        <el-table-column align="center" prop="name" label="结算笔数">
46
+          <template slot-scope="scope"></template>
47
+        </el-table-column>
48
+        <el-table-column align="center" prop="name" label="医疗费用总数">
49
+          <template slot-scope="scope">
50
+          </template>
51
+        </el-table-column>
52
+        <el-table-column align="center" prop="name" width="160" label="基本医疗基金总费用">
53
+          <template slot-scope="scope">
54
+          </template>
55
+        </el-table-column>
56
+        <el-table-column align="center" prop="name" label="个人支付总费用">
57
+          <template slot-scope="scope">
58
+          </template>
59
+        </el-table-column>
60
+      </el-table>
61
+      <el-pagination
62
+        @size-change="handleSizeChange"
63
+        @current-change="handleCurrentChange"
64
+        :page-sizes="[10, 50, 100]"
65
+        :page-size="10"
66
+        background
67
+        style="margin-top:20px;float: right"
68
+        layout="total, sizes, prev, pager, next, jumper"
69
+        :total="total"
70
+
71
+      >
72
+      </el-pagination>
73
+      <el-dialog title="医保对账" :visible.sync="dialogFormVisible">
74
+        <el-form :model="form" label-width="100px">
75
+            <el-form-item label="时间" :label-width="formLabelWidth">
76
+                <el-date-picker v-model="start_time" prefix-icon="el-icon-date"
77
+                    @change="handleStartTimeChange" :editable="false" :clearable="false"
78
+                    style="width: 200px;" type="date" placeholder="选择开始日期"
79
+                    format="yyyy-MM-dd"
80
+                    value-format="yyyy-MM-dd"
81
+                    align="right"></el-date-picker>-
82
+
83
+                <el-date-picker v-model="end_time" prefix-icon="el-icon-date"
84
+                    @change="handleEndTimeChange" :editable="false" :clearable="false"
85
+                    style="width: 200px;margin-right:10px;" type="date" placeholder="选择结束日期"
86
+                    format="yyyy-MM-dd"
87
+                    value-format="yyyy-MM-dd"
88
+                    align="right"></el-date-picker>
89
+            </el-form-item>
90
+            <el-form-item label="险种类型" :label-width="formLabelWidth">
91
+                <el-select v-model="value" placeholder="请选择" style="width: 200px;">
92
+                    <el-option
93
+                    v-for="item in options"
94
+                    :key="item.value"
95
+                    :label="item.label"
96
+                    :value="item.value">
97
+                    </el-option>
98
+                </el-select>
99
+            </el-form-item>
100
+            <el-form-item label="对账类型" :label-width="formLabelWidth">
101
+                <el-select v-model="value" placeholder="请选择" style="width: 200px;">
102
+                    <el-option
103
+                    v-for="item in options"
104
+                    :key="item.value"
105
+                    :label="item.label"
106
+                    :value="item.value">
107
+                    </el-option>
108
+                </el-select>
109
+            </el-form-item>
110
+        </el-form>
111
+        <div slot="footer" class="dialog-footer">
112
+            <el-button @click="dialogFormVisible = false">取 消</el-button>
113
+            <el-button type="primary" @click="dialogFormVisible = false">确 定</el-button>
114
+        </div>
115
+      </el-dialog>
116
+    </div>
117
+
118
+
119
+  </div>
120
+</template>
121
+
122
+
123
+<script>
124
+  import BreadCrumb from '@/xt_pages/components/bread-crumb'
125
+  import { getHisOrderList,getDoctorList,getExportConsumeDetailList } from '@/api/his/his'
126
+  import { uParseTime } from '@/utils/tools'
127
+
128
+  export default {
129
+    components: {
130
+      BreadCrumb
131
+    },
132
+    data() {
133
+      return {
134
+        crumbs: [
135
+          { path: false, name: '门诊收费' },
136
+          { path: false, name: '医保费用对照' }
137
+        ],
138
+        tableData: [],
139
+        limit:10,
140
+        page:1,
141
+        dialogFormVisible:false
142
+      }
143
+    },
144
+    methods: {
145
+      handleSizeChange(limit){
146
+        this.limit = limit;
147
+      },
148
+      handleCurrentChange(page){
149
+        this.page = page;
150
+      },
151
+    },
152
+    created() {
153
+
154
+
155
+    }
156
+  }
157
+</script>

+ 81 - 52
src/xt_pages/outpatientCharges/outpatientChargesManagement.vue Voir le fichier

@@ -179,59 +179,88 @@
179 179
               </div>
180 180
             </el-tab-pane>
181 181
             <el-tab-pane label="月结" name="second">
182
-            <div style="display:flex;height:100%;">
183
-            <div class="centerLeft">
184
-            <div class="tabsBox">
185
-            <!--<el-button type="text" class="addTab" @click="addCharges" icon="el-icon-circle-plus">附加收费</el-button>-->
186
-            <el-tabs class="preTabs" v-model="editableTabsValue" type="card" closable>
187
-
188
-            <el-tab-pane
189
-            v-for="(item, index) in month_prescriptions"
190
-            :key="index"
191
-            :label="item.name"
192
-            :name="item.name"
193
-            >
194
-            </el-tab-pane>
182
+              <div style="display:flex;height:100%;">
183
+                <div class="centerLeft">
184
+                  <div class="tabsBox">
185
+                    <!-- <el-button type="text" class="addTab" @click="addCharges" icon="el-icon-circle-plus">附加收费</el-button> -->
186
+                    <el-tabs class="preTabs" v-model="editableTabsValue" type="border-card" closable>
195 187
 
196
-            <div class="RP">
197
-            Rp
198
-            <el-date-picker
199
-            v-model="other_start_time"
200
-            prefix-icon="el-icon-date"
201
-            @change="changeTime"
202
-            :editable="false"
203
-            style="width: 150px;"
204
-            type="date"
205
-            :picker-options="pickerOptions"
206
-            placeholder="选择开始时间"
207
-            align="right"
208
-            format="yyyy-MM-dd"
209
-            value-format="yyyy-MM-dd"
210
-            ></el-date-picker>
211
-            <span class>-</span>
212
-            <el-date-picker
213
-            v-model="other_end_time"
214
-            prefix-icon="el-icon-date"
215
-            @change="changeEndTime"
216
-            :editable="false"
217
-            style="width: 150px;"
218
-            type="date"
219
-            placeholder="选择结束时间"
220
-            align="right"
221
-            format="yyyy-MM-dd"
222
-            value-format="yyyy-MM-dd"
223
-            ></el-date-picker>
224
-            </div>
225
-            <!--<prescription-table :preTableData='preTableData'></prescription-table>-->
226
-            </el-tabs>
227
-
228
-            </div>
229
-            <!--<div class="costBox">-->
230
-            <!--<span>当前处方总费用:<span style="color:red;">{{ total }}元</span></span>-->
231
-            <!--<span>{{ state }}</span>-->
232
-            <!--</div>-->
233
-            </div>
234
-            </div>
188
+                      <el-tab-pane
189
+                        v-for="(item, index) in month_prescriptions"
190
+                        :key="index"
191
+                        :label="item.name"
192
+                        :name="item.name">
193
+                      </el-tab-pane>
194
+
195
+                      <div class="RP">
196
+                        Rp
197
+                        <el-date-picker
198
+                          v-model="other_start_time"
199
+                          prefix-icon="el-icon-date"
200
+                          @change="changeTime"
201
+                          :editable="false"
202
+                          style="width: 150px;"
203
+                          type="date"
204
+                          :picker-options="pickerOptions"
205
+                          placeholder="选择开始时间"
206
+                          align="right"
207
+                          format="yyyy-MM-dd"
208
+                          value-format="yyyy-MM-dd">
209
+                        </el-date-picker>
210
+                        <span class>-</span>
211
+                        <el-date-picker
212
+                          v-model="other_end_time"
213
+                          prefix-icon="el-icon-date"
214
+                          @change="changeEndTime"
215
+                          :editable="false"
216
+                          style="width: 150px;"
217
+                          type="date"
218
+                          placeholder="选择结束时间"
219
+                          align="right"
220
+                          format="yyyy-MM-dd"
221
+                          value-format="yyyy-MM-dd">
222
+                        </el-date-picker>
223
+                      </div>
224
+                      <prescription-table :preTableData='preTableData'></prescription-table>
225
+                    </el-tabs>
226
+
227
+                  </div>
228
+                  <div class="costBox">
229
+                    <span>当前处方总费用:<span style="color:red;">{{ total }}元</span></span>
230
+                    <span>{{ state }}</span>
231
+                  </div>
232
+                </div>
233
+                <div class="centerRight">
234
+                  <p class="centerRightTitle">人员信息</p>
235
+                  <div style="display:flex;justify-content: space-between;line-height:30px;">
236
+                    <span style="font-size:14px;">人员编码:{{patientInfo.dialysis_no}}</span>
237
+                    <span style="font-size:14px;">日期:{{record_date}}</span>
238
+                  </div>
239
+                  <ul class="basicUl">
240
+                    <li style="width:50%;">姓名:{{patientInfo.name}}</li>
241
+                    <li style="width:50%;">性别:{{patientInfo.gender == 1 ? '男' : '女' }}</li>
242
+                    <li style="width:50%;">年龄:{{patientInfo.age }}</li>
243
+                    <li style="width:50%;">身高:{{patientInfo.height?patientInfo.height:''}}</li>
244
+                    <li style="width:50%;">体重:{{patientInfo.weight?patientInfo.weight:''}}</li>
245
+                    <li style="width:50%;">电话:{{patientInfo.phone}}</li>
246
+                    <li style="width:100%;">地址:{{patientInfo.home_address}}</li>
247
+                    <li style="width:100%;">过敏史及其他病史:{{info.sick_history}}</li>
248
+                  </ul>
249
+                  <p class="centerRightTitle" style="padding-top: 10px;">诊断信息</p>
250
+                  <div style="display:flex;justify-content: space-between;line-height:30px;">
251
+                    <span style="font-size:14px;">门诊编号:{{ hisPatientInfo.number}}</span>
252
+                  </div>
253
+                  <ul class="basicUl">
254
+                    <li style="width:50%;">医生:{{ info.doctor }}</li>
255
+                    <li style="width:50%;">科室:{{ info.departments }}</li>
256
+                    <li style="width:100%;">总费用:{{ getTotal() }}</li>
257
+
258
+                    <li style="width:100%;">判断结果:{{info.diagnosis}}</li>
259
+                    <li style="width:100%;">是否有传染病:</li>
260
+                    <li style="width:100%;">血压:</li>
261
+                  </ul>
262
+                </div>
263
+              </div>
235 264
             </el-tab-pane>
236 265
           </el-tabs>
237 266
 

+ 31 - 3
src/xt_pages/outpatientDoctorStation/components/deskPrescription.vue Voir le fichier

@@ -1,5 +1,5 @@
1 1
 <template>
2
-  <div style="height: calc(100% - 56px);display: flex;flex-direction: column;margin-top: 56px;">
2
+  <div style="height: calc(100% - 58px);display: flex;flex-direction: column;margin-top: 56px;">
3 3
     <!-- <div style="border-top:1px solid #e5e5e5;margin-top:5px;">
4 4
       <div class="mainCell" style="margin-bottom:10px;float:right">
5 5
         <el-button size="small" @click="open(1)" type="primary" style="margin-left:10px;">保存</el-button>
@@ -11,6 +11,10 @@
11 11
     <!-- <div class="backColor"></div> -->
12 12
     <div class="mainCenter">
13 13
       <div class="centerLeft">
14
+        <el-tabs v-model="dayorMonth" @tab-click="changeDayOrMonth">
15
+          <el-tab-pane label="日结" name="day"></el-tab-pane>
16
+          <el-tab-pane label="月结" name="month"></el-tab-pane>
17
+        </el-tabs>
14 18
         <el-form :model="form" ref="form" label-width="80px"
15 19
                  style="display: flex;flex-wrap: wrap;justify-content: space-between;">
16 20
           <el-form-item label="姓名:" prop="name" label-position="right">
@@ -82,6 +86,7 @@
82 86
             >
83 87
             <div class="RP">Rp
84 88
               <el-date-picker
89
+                v-if="dayorMonth == 'day'"
85 90
                 v-model="item.pre_time"
86 91
                 type="datetime"
87 92
                 :clearable="false"
@@ -89,6 +94,14 @@
89 94
                 value-format="yyyy-MM-dd HH:mm"
90 95
                 placeholder="选择日期">
91 96
               </el-date-picker>
97
+              <el-date-picker
98
+                v-if="dayorMonth == 'month'"
99
+                v-model="value1"
100
+                type="daterange"
101
+                range-separator="至"
102
+                start-placeholder="开始日期"
103
+                end-placeholder="结束日期">
104
+              </el-date-picker>
92 105
               <div style="float: right;margin-bottom:5px;margin-right:1%;">
93 106
                 <el-button
94 107
                   round
@@ -252,6 +265,17 @@
252 265
           <div style="height:100%;" v-show="showTwo">
253 266
             <el-tabs class="rightTabs" v-model="activeName">
254 267
               <el-tab-pane label="项目列表" name="1">
268
+                <div style="margin-bottom:5px;">
269
+                  <el-input style="width:50%;" v-model="input" placeholder=""></el-input>
270
+                  <el-select style="float: right;width: 49%;" v-model="value" placeholder="">
271
+                    <el-option
272
+                      v-for="item in options"
273
+                      :key="item.value"
274
+                      :label="item.label"
275
+                      :value="item.value">
276
+                    </el-option>
277
+                  </el-select>
278
+                </div>
255 279
                 <div style="width: 100%;flex:1;overflow-y: auto;">
256 280
                   <el-table ref="tables" :height="multipleTableHeight != '' ? multipleTableHeight : '200'"
257 281
                             :data="tabProject" border @select='selectChange'
@@ -443,7 +467,8 @@
443 467
         diagnose: '',
444 468
         curTotal: 0,
445 469
         prescription_id: 0,
446
-        tempDrugs: []
470
+        tempDrugs: [],
471
+        dayorMonth:'day'
447 472
 
448 473
       }
449 474
     },
@@ -1543,6 +1568,9 @@
1543 1568
         if (this.departmentValue == 0) {
1544 1569
           this.departmentValue = ""
1545 1570
         }
1571
+      },
1572
+      changeDayOrMonth(tab){
1573
+        // console.log('dayormonth',this.dayorMonth)
1546 1574
       }
1547 1575
     }, mounted() {
1548 1576
       this.request_record_date = this.record_date
@@ -1658,7 +1686,7 @@
1658 1686
     flex: 1;
1659 1687
     overflow-y: auto;
1660 1688
     margin-bottom: 60px;
1661
-    margin-top: 4px;
1689
+    // margin-top: 4px;
1662 1690
 
1663 1691
   .el-tabs__item {
1664 1692
     padding: 0 10px;

Fichier diff supprimé car celui-ci est trop grand
+ 699 - 587
src/xt_pages/outpatientRegistration/index.vue


+ 2 - 2
src/xt_pages/sign/signIn.vue Voir le fichier

@@ -196,7 +196,7 @@ export default {
196 196
                 console.log('执行')
197 197
                 this.page++
198 198
                 let obj = {
199
-                    cmd: "queue/queuelist",
199
+                    cmd: "queuelistbyq",
200 200
                     data: {page:this.page,size:10,sort:1}
201 201
                 };
202 202
                 this.websocketSend(obj)
@@ -204,7 +204,7 @@ export default {
204 204
                 console.log('执行2222')
205 205
                 this.page = 1
206 206
                 let newobj = {
207
-                    cmd: "queue/queuelist",
207
+                    cmd: "queuelistbyq",
208 208
                     data: {page:this.page,size:10,sort:1}
209 209
                 };
210 210
                 this.websocketSend(newobj)