瀏覽代碼

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

csx 4 年之前
父節點
當前提交
f19924fe2a
共有 29 個文件被更改,包括 20408 次插入331 次删除
  1. 18318 89
      package-lock.json
  2. 6 0
      src/App.vue
  3. 1 1
      src/api/his/his.js
  4. 12 0
      src/router/modules/dialysis.js
  5. 1 0
      src/xt_pages/data/components/addtion.vue
  6. 1 1
      src/xt_pages/dialysis/batch_print/batch_print_order_seven.vue
  7. 1527 0
      src/xt_pages/dialysis/batch_print/batch_print_order_thirty.vue
  8. 12 0
      src/xt_pages/dialysis/bloodPresssWatch.vue
  9. 3 3
      src/xt_pages/dialysis/details/dialog/computer_dialog.vue
  10. 3 3
      src/xt_pages/dialysis/details/dialog/finish_dialog.vue
  11. 7 1
      src/xt_pages/dialysis/details/index.vue
  12. 35 5
      src/xt_pages/dialysis/schedualPatient.vue
  13. 1 1
      src/xt_pages/dialysis/template/DialysisPrintOrderThirty.vue
  14. 2 2
      src/xt_pages/dialysis/template/DialysisPrintOrderTwentyEight.vue
  15. 27 30
      src/xt_pages/outpatientCharges/outpatientChargesManagement.vue
  16. 4 1
      src/xt_pages/outpatientDoctorStation/components/deskPrescription.vue
  17. 124 48
      src/xt_pages/sign/components/beforeDialysisCalling.vue
  18. 9 2
      src/xt_pages/sign/components/called.vue
  19. 104 29
      src/xt_pages/sign/components/computerCalling.vue
  20. 9 2
      src/xt_pages/sign/components/waitingCalled.vue
  21. 88 71
      src/xt_pages/sign/lineUp.vue
  22. 63 32
      src/xt_pages/sign/signIn.vue
  23. 1 1
      src/xt_pages/stock/drugs/drugStockInOrderAdd.vue
  24. 1 1
      src/xt_pages/stock/drugs/drugStockOutOrderAdd.vue
  25. 1 1
      src/xt_pages/stock/stockQuery.vue
  26. 25 5
      src/xt_pages/workforce/components/nextTableWeeks.vue
  27. 2 0
      src/xt_pages/workforce/components/tableData.vue
  28. 14 2
      src/xt_pages/workforce/components/tableWeeks.vue
  29. 7 0
      src/xt_pages/workforce/next_remind_print.vue

文件差異過大導致無法顯示
+ 18318 - 89
package-lock.json


+ 6 - 0
src/App.vue 查看文件

@@ -9,6 +9,11 @@ import axios from 'axios'
9 9
 import { getOrgs, changeOrg } from "@/api/config";
10 10
 export default {
11 11
   name: "App",
12
+  provide() {
13
+    return {
14
+      reload: this.reload
15
+    };
16
+  },
12 17
   data () {
13 18
     return {
14 19
       isRouterAlive: true,
@@ -19,6 +24,7 @@ export default {
19 24
   },
20 25
 
21 26
   created(){
27
+
22 28
     // getOrgs().then(response => {
23 29
     //   if (response.data.state === 1) {
24 30
     //     var creator = response.data.data.creator;

+ 1 - 1
src/api/his/his.js 查看文件

@@ -21,7 +21,7 @@ export function getPatientInfo(params) {
21 21
 
22 22
 
23 23
 export function createCaseHistory(params) {
24
-  // console.log("params",params)
24
+  console.log("params",params)
25 25
   return request({
26 26
     url: "/api/doctorworkstation/casehistory/create",
27 27
     method: "get",

+ 12 - 0
src/router/modules/dialysis.js 查看文件

@@ -316,6 +316,18 @@ export default {
316 316
         noCache: true
317 317
       }
318 318
     },
319
+    {
320
+      path: '/dialysis/print/batch/thirty',
321
+      component: () =>
322
+        import('@/xt_pages/dialysis/batch_print/batch_print_order_thirty'),
323
+      hidden: true,
324
+      is_menu: false,
325
+      name: 'dialysis_batch_thirty',
326
+      meta: {
327
+        title: '批量打印',
328
+        noCache: true
329
+      }
330
+    },
319 331
     {
320 332
       path: '/dialysis/print/batch/twentyTwo_one',
321 333
       component: () =>

+ 1 - 0
src/xt_pages/data/components/addtion.vue 查看文件

@@ -270,6 +270,7 @@
270 270
             }
271 271
           })
272 272
         } else if (val.isCreated == 1) {
273
+          console.log("val00000",val)
273 274
           //新增
274 275
           createAddition(val).then(response => {
275 276
             if (response.data.state == 0) {

+ 1 - 1
src/xt_pages/dialysis/batch_print/batch_print_order_seven.vue 查看文件

@@ -1301,7 +1301,7 @@
1301 1301
 
1302 1302
             this.records = this.records.concat(resp.data.schedules)
1303 1303
 
1304
-              console.log('记录', this.records)
1304
+              // console.log('记录', this.records)
1305 1305
 
1306 1306
             for (const recordIndex in this.records) {
1307 1307
               var dlegh = 0

文件差異過大導致無法顯示
+ 1527 - 0
src/xt_pages/dialysis/batch_print/batch_print_order_thirty.vue


+ 12 - 0
src/xt_pages/dialysis/bloodPresssWatch.vue 查看文件

@@ -199,6 +199,16 @@
199 199
           >
200 200
         </div>
201 201
       </template>
202
+      <template v-if="this.template_id == 30">
203
+        <el-button
204
+          size="small"
205
+          icon="el-icon-printer"
206
+          :disabled="selecting_schs.length == 0"
207
+          @click="batchPrintAction"
208
+          type="primary"
209
+          >批量打印</el-button
210
+        >
211
+      </template>
202 212
     </div>
203 213
     <div class="app-container">
204 214
       <!-- <div class="filter-container">
@@ -717,6 +727,8 @@ export default {
717 727
         this.$router.push({ path: "/dialysis/print/batch/twenty" });
718 728
       } else if (this.template_id == 22) {
719 729
         this.$router.push({ path: "/dialysis/print/batch/twentyTwo" });
730
+      }else if (this.template_id == 30) {
731
+        this.$router.push({ path: "/dialysis/print/batch/thirty" });
720 732
       }
721 733
     },
722 734
     batchPrintActionOne: function() {

+ 3 - 3
src/xt_pages/dialysis/details/dialog/computer_dialog.vue 查看文件

@@ -314,10 +314,10 @@
314 314
               this.$set(this_order, key, resp_dialysis_order[key])
315 315
             }
316 316
             let orgId = parseInt(sessionStorage.getItem("org_id"));
317
-            axios.get('/api/index/uppatient?org_id='+ orgId + '&admin_user_id='+ this.form.nurse_id + '&patient_id=' + this.patient_id + '&up_time=' + (new Date(this.form.start_time).getTime() / 1000)).then((res) => {
318
-              console.log('res',res.data)
317
+            // axios.get('/api/index/uppatient?org_id='+ orgId + '&admin_user_id='+ this.form.nurse_id + '&patient_id=' + this.patient_id + '&up_time=' + (new Date(this.form.start_time).getTime() / 1000)).then((res) => {
318
+            //   console.log('res',res.data)
319 319
 
320
-            }) 
320
+            // }) 
321 321
             this.hide()
322 322
             this.$emit('monitor', resp.data.monitor)
323 323
             this.$message.success('上机成功')

+ 3 - 3
src/xt_pages/dialysis/details/dialog/finish_dialog.vue 查看文件

@@ -213,10 +213,10 @@
213 213
               this.$set(this_order, key, dialysis_order[key])
214 214
             }
215 215
             let orgId = parseInt(sessionStorage.getItem("org_id"));
216
-            axios.get('/api/index/downpatient?org_id='+ orgId + '&admin_user_id='+ this.form.nurse_id + '&patient_id=' + this.patient_id).then((res) => {
217
-              console.log('res',res.data)
216
+            // axios.get('/api/index/downpatient?org_id='+ orgId + '&admin_user_id='+ this.form.nurse_id + '&patient_id=' + this.patient_id).then((res) => {
217
+            //   console.log('res',res.data)
218 218
 
219
-            }) 
219
+            // }) 
220 220
             this.hide()
221 221
             this.$emit('assessmentAfterDislysis', resp.data.assessmentAfterDislysis)
222 222
 

+ 7 - 1
src/xt_pages/dialysis/details/index.vue 查看文件

@@ -1801,10 +1801,16 @@ export default {
1801 1801
       })
1802 1802
     },
1803 1803
     next(){
1804
+      let schedule_type = null
1805
+      if(new Date().getHours() < 11){
1806
+        schedule_type = 1
1807
+      }else {
1808
+        schedule_type = 2
1809
+      }
1804 1810
       console.log('patient_id',this.$route.query.date)
1805 1811
       let org_id =  parseInt(sessionStorage.getItem("org_id"));
1806 1812
       let admin_user_id = parseInt(sessionStorage.getItem("admin_user_id"));
1807
-      axios.get('/api/index/nextcall?org_id=' + org_id + '&patient_id=' + this.patient_id + '&admin_user_id=' + admin_user_id).then(res => {
1813
+      axios.get('/api/index/nextcall?org_id=' + org_id + '&patient_id=' + this.patient_id + '&admin_user_id=' + admin_user_id + '&schedule_type=' + schedule_type).then(res => {
1808 1814
         console.log(res)
1809 1815
         if(res.data.data.patientInfo == null){
1810 1816
           this.$message.error('已经是最后一位了');

+ 35 - 5
src/xt_pages/dialysis/schedualPatient.vue 查看文件

@@ -378,13 +378,30 @@ import { getDialysisRecordInitData, getDialysisSchedules } from '@/api/dialysis_
378 378
           // let res = re.data;
379 379
           console.log('res3333333333',res)
380 380
           if(res.channel == 'queue/join'){
381
+            let timeType = null
382
+            if(new Date().getHours() < 11){
383
+              timeType = 1
384
+            }else if(new Date().getHours() >= 11){
385
+              timeType = 2
386
+            }
387
+            let fisrtQueueInfo = []
388
+            this.newFisrtQueueInfo = res.data.fisrtQueueInfo
381 389
             if(res.data.fisrtQueueInfo != null){
382
-              if(res.data.fisrtQueueInfo.create_time){
383
-                res.data.fisrtQueueInfo.create_time = moment(parseInt(res.data.fisrtQueueInfo.create_time) * 1000).format('HH:mm')
384
-              }
390
+                if(timeType == 1){
391
+                    fisrtQueueInfo = res.data.fisrtQueueInfo.morning
392
+                    if(fisrtQueueInfo.create_time){
393
+                        fisrtQueueInfo.create_time = moment(parseInt(fisrtQueueInfo.create_time) * 1000).format('HH:mm')
394
+                    }
395
+                }else if(timeType == 2){
396
+                    fisrtQueueInfo = res.data.fisrtQueueInfo.afternoon
397
+                    if(fisrtQueueInfo.create_time){
398
+                        fisrtQueueInfo.create_time = moment(parseInt(fisrtQueueInfo.create_time) * 1000).format('HH:mm')
399
+                    }
400
+                }
385 401
             }
402
+            this.fisrtQueueInfo = fisrtQueueInfo
386 403
             this.queueConfig = res.data.queueConfig
387
-            this.fisrtQueueInfo = res.data.fisrtQueueInfo
404
+            // this.fisrtQueueInfo = res.data.fisrtQueueInfo
388 405
             let arr = res.data.patientQueueList.data
389 406
             let waitingCalledArr = []
390 407
             let calledArr = []
@@ -448,10 +465,23 @@ import { getDialysisRecordInitData, getDialysisSchedules } from '@/api/dialysis_
448 465
             this.$message.error('已经是最后一位了');
449 466
             return
450 467
           }
468
+          let schedule_type = null
469
+          if(this.schedule_type_selected == 0){
470
+            if(new Date().getHours() < 11){
471
+              schedule_type = 1
472
+            }else {
473
+              schedule_type = 2
474
+            }
475
+          }else if(this.schedule_type_selected == 1){
476
+            schedule_type = 1
477
+          }else if(this.schedule_type_selected == 2){
478
+            schedule_type = 2
479
+          }
480
+          
451 481
           console.log('patient_id',patient_id)
452 482
           let org_id =  parseInt(sessionStorage.getItem("org_id"));
453 483
           let admin_user_id = parseInt(sessionStorage.getItem("admin_user_id"));
454
-          axios.get('/api/index/nextcall?org_id=' + org_id + '&patient_id=' + patient_id + '&admin_user_id=' + admin_user_id).then(res => {
484
+          axios.get('/api/index/nextcall?org_id=' + org_id + '&patient_id=' + patient_id + '&admin_user_id=' + admin_user_id + '&schedule_type=' + schedule_type).then(res => {
455 485
               console.log(res)
456 486
               // let patientArr = res.data.queue_list.data
457 487
               // this.patientArr = patientArr

+ 1 - 1
src/xt_pages/dialysis/template/DialysisPrintOrderThirty.vue 查看文件

@@ -429,7 +429,7 @@
429 429
                     <td width="10">ml</td>
430 430
                     <td width="30"></td>
431 431
                     <td width='70'>透后体重:</td>
432
-                    <td width="50">
432
+                    <td width="70">
433 433
                       <div class="under-line">&nbsp;{{ afterdialysis.weight_after ? afterdialysis.weight_after : "未称重" }}</div>
434 434
                     </td>
435 435
                     <td width="10">Kg</td>

+ 2 - 2
src/xt_pages/dialysis/template/DialysisPrintOrderTwentyEight.vue 查看文件

@@ -438,7 +438,7 @@
438 438
                 <td width="35">min</td>
439 439
                 <td></td>
440 440
                 <td width="80">透析机编号:</td>
441
-                <td width="100">
441
+                <td width="120">
442 442
                   <div class="under-line">{{ getNumber() }}</div>
443 443
                 </td>
444 444
                 <td width=""></td>
@@ -859,7 +859,7 @@
859 859
                 <td colspan="3" style="font-size: 16px">执行核对医嘱</td>
860 860
               </tr> -->
861 861
         <tr>
862
-          <td :rowspan="adviceLength" width="30" class="title-box">
862
+          <td :rowspan="doctor_advices.length + 1" width="30" class="title-box">
863 863
             医嘱内容
864 864
           </td>
865 865
           <td style="font-size: 16px" width="10%">时间</td>

+ 27 - 30
src/xt_pages/outpatientCharges/outpatientChargesManagement.vue 查看文件

@@ -1128,18 +1128,15 @@
1128 1128
     height: 100%;
1129 1129
     display: flex;
1130 1130
     flex-direction: column;
1131
-
1132
-  .mainLeft {
1133
-    width: 200px;
1134
-    height: 100%;
1135
-    display: flex;
1136
-    flex-direction: column;
1137
-    padding-top: 20px;
1138
-
1139
-  .el-radio {
1140
-    margin-right: 5px;
1141
-  }
1142
-
1131
+    .mainLeft {
1132
+      width: 200px;
1133
+      height: 100%;
1134
+      display: flex;
1135
+      flex-direction: column;
1136
+      padding-top: 20px;
1137
+    .el-radio {
1138
+      margin-right: 5px;
1139
+    }
1143 1140
   }
1144 1141
   .mainCell {
1145 1142
     height: 36px;
@@ -1264,10 +1261,14 @@
1264 1261
     border-bottom: 1px solid #e5e5e5;
1265 1262
     border-right: 1px solid #e5e5e5;
1266 1263
     width: 100%;
1267
-    height: 38px;
1268
-    line-height: 38px;
1269
-    text-indent: 5px;
1264
+    min-height: 38px;
1265
+    /* line-height: 38px;
1266
+    text-indent: 5px; */
1270 1267
     font-size: 14px;
1268
+    display:flex;
1269
+    align-items:center;
1270
+    padding:5px;
1271
+    box-sizing:border-box;
1271 1272
   }
1272 1273
 
1273 1274
   }
@@ -1276,26 +1277,22 @@
1276 1277
 
1277 1278
 <style lang="scss">
1278 1279
   #tab-more {
1279
-
1280
-  .el-icon-close {
1281
-    display: none;
1282
-  }
1283
-
1280
+    .el-icon-close {
1281
+      display: none;
1282
+    }
1284 1283
   }
1285 1284
   .settlementTabs {
1286
-
1287
-  .el-tabs__content {
1288
-    height: 90%;
1289
-  }
1290
-
1285
+    .el-tabs__content {
1286
+      height: 90%;
1287
+    }
1291 1288
   }
1292 1289
   .preTabs {
1293 1290
 
1294
-  .el-tabs__content {
1295
-    flex: 1;
1296
-    overflow-y: auto;
1297
-    padding: 5px 0 5px 5px;
1298
-  }
1291
+    .el-tabs__content {
1292
+      flex: 1;
1293
+      overflow-y: auto;
1294
+      padding: 5px 0 5px 5px;
1295
+    }
1299 1296
 
1300 1297
   }
1301 1298
   .centerDialog{

+ 4 - 1
src/xt_pages/outpatientDoctorStation/components/deskPrescription.vue 查看文件

@@ -1029,7 +1029,7 @@
1029 1029
             for (let b = 0; b < this.prescriptions[i].addition.length; b++) {
1030 1030
               this.prescriptions[i].addition[b].id = parseInt(this.prescriptions[i].addition[b].id)
1031 1031
               this.prescriptions[i].addition[b].item_id = parseInt(this.prescriptions[i].addition[b].item_id)
1032
-              this.prescriptions[i].addition[b].price = parseFloat(this.prescriptions[i].addition[b].price)
1032
+              this.prescriptions[i].addition[b].price = this.prescriptions[i].addition[b].price.toString()
1033 1033
               this.prescriptions[i].addition[b].count = this.prescriptions[i].addition[b].count.toString()
1034 1034
             }
1035 1035
           }
@@ -1037,6 +1037,9 @@
1037 1037
             'prescriptions': this.prescriptions
1038 1038
           }
1039 1039
           isLoading = true
1040
+          console.log("prescriptions9999",this.prescriptions)
1041
+          console.log("params---",params)
1042
+          console.log("data",data)
1040 1043
           createHisPrescription(data, params).then(response => {
1041 1044
             if (response.data.state == 1) {
1042 1045
               this.$emit("change")

+ 124 - 48
src/xt_pages/sign/components/beforeDialysisCalling.vue 查看文件

@@ -11,16 +11,17 @@
11 11
         </div>
12 12
         <div style="display:flex;justify-content: space-between;">
13 13
             <div class="callingArea">
14
-                <waiting-called v-if="patientStateVal == 0" :waitingCalled='waitingCalled' ></waiting-called>
15
-                <called v-if="patientStateVal == 1" :called="called"></called>
14
+                <waiting-called v-if="patientStateVal == 0" :waitingCalled='waitingCalledAm' ></waiting-called>
15
+                <waiting-called v-if="patientStateVal == 1" :waitingCalled='waitingCalledPm' ></waiting-called>
16
+                <called v-if="patientStateVal == 2" :called="called"></called>
16 17
             </div>
17
-            <div class="nowCalling" v-if="patientStateVal == 0">
18
+            <div class="nowCalling" v-if="patientStateVal == 0 || patientStateVal == 1">
18 19
                 <p class="nowCallingTitle">当前叫号</p>
19 20
                 <p class="nowCallingName">{{ fisrtQueueInfo ? fisrtQueueInfo.patient_name : '' }}</p>
20 21
                 <p class="nowCallingTime">签到时间:{{ fisrtQueueInfo ? fisrtQueueInfo.create_time : '' }}</p>
21 22
                 <el-button type="primary" @click="call(fisrtQueueInfo && fisrtQueueInfo.patient_id ? fisrtQueueInfo.patient_id : '')" style="margin-left:0;margin: 30px 0 20px 0;">&ensp;叫号&ensp;</el-button>
22 23
                 <!-- <el-button style="margin: 0px 0 20px 0;" @click="pass(fisrtQueueInfo.patient_id)">&ensp;过号&ensp;</el-button> -->
23
-                <el-button style="margin:0 auto;" @click="next(fisrtQueueInfo && fisrtQueueInfo.patient_id ? fisrtQueueInfo.patient_id : '')">下一位</el-button>
24
+                <el-button style="margin:0 auto;" @click="next(fisrtQueueInfo && fisrtQueueInfo.patient_id ? fisrtQueueInfo.patient_id : '',fisrtQueueInfo && fisrtQueueInfo.schedule_type ? fisrtQueueInfo.schedule_type : '')">下一位</el-button>
24 25
             </div>
25 26
         </div>
26 27
     </div>
@@ -40,8 +41,9 @@ export default {
40 41
     data(){
41 42
         return{
42 43
             patient_state:[
43
-                {value: 0,label: '待叫号'},
44
-                {value: 1,label: '已叫号'},
44
+                {value: 0,label: '上午待叫号'},
45
+                {value: 1,label: '下午待叫号'},
46
+                {value: 2,label: '已叫号'},
45 47
             ],
46 48
             patientStateVal: 0,
47 49
             waitingCalled:[],
@@ -49,6 +51,10 @@ export default {
49 51
             fisrtQueueInfo:{},
50 52
             timer:null,
51 53
 
54
+            waitingCalledAm:[],
55
+            waitingCalledPm:[],
56
+            newFisrtQueueInfo:{}
57
+
52 58
         }
53 59
     },
54 60
     computed: {
@@ -116,53 +122,117 @@ export default {
116 122
                 let res = JSON.parse(e.data);
117 123
                 // let res = re.data;
118 124
                 console.log('res3333333333',res)
119
-                if(res.channel == 'queue/join'){
120
-                    if(res.data.fisrtQueueInfo != null){
121
-                        if(res.data.fisrtQueueInfo.create_time){
122
-                            res.data.fisrtQueueInfo.create_time = moment(parseInt(res.data.fisrtQueueInfo.create_time) * 1000).format('HH:mm')
125
+                
126
+                    if(res.channel == 'queue/join'){
127
+                        if(res.data.type == 3){
128
+                            let fisrtQueueInfo = []
129
+                            this.newFisrtQueueInfo = res.data.fisrtQueueInfo
130
+                            if(res.data.fisrtQueueInfo != null){
131
+                                if(this.patientStateVal == 0){
132
+                                    fisrtQueueInfo = res.data.fisrtQueueInfo.morning
133
+                                    if(fisrtQueueInfo.create_time){
134
+                                        fisrtQueueInfo.create_time = moment(parseInt(fisrtQueueInfo.create_time) * 1000).format('HH:mm')
135
+                                    }
136
+                                }else if(this.patientStateVal == 1){
137
+                                    fisrtQueueInfo = res.data.fisrtQueueInfo.afternoon
138
+                                    if(fisrtQueueInfo.create_time){
139
+                                        fisrtQueueInfo.create_time = moment(parseInt(fisrtQueueInfo.create_time) * 1000).format('HH:mm')
140
+                                    }
141
+                                }
142
+                            }
143
+                            this.fisrtQueueInfo = fisrtQueueInfo
144
+                            let arr = res.data.patientQueueList.data
145
+                            // let waitingCalledArr = []
146
+                            let waitingCalledAm = []
147
+                            let waitingCalledPm = []
148
+                            let calledArr = []
149
+                            arr.map(item => {
150
+                                if(item.status == 1){
151
+                                    item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
152
+                                    // waitingCalledArr.push(item)
153
+                                    if(item.schedule_type == 1){
154
+                                        waitingCalledAm.push(item)
155
+                                    }else if(item.schedule_type == 2){
156
+                                        waitingCalledPm.push(item)
157
+                                    }
158
+                                }else if(item.status == 2){
159
+                                    item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
160
+                                    calledArr.push(item)
161
+                                }
162
+                            })
163
+                            // this.waitingCalled = waitingCalledArr
164
+                            this.waitingCalledAm = waitingCalledAm
165
+                            this.waitingCalledPm = waitingCalledPm
166
+                            this.called = calledArr
123 167
                         }
124
-                        
168
+                    }else if(res.channel == 'allQueueList'){
169
+                        let arr = res.data.queue_list.data
170
+                        // let waitingCalledArr = []
171
+                        let waitingCalledAm = []
172
+                        let waitingCalledPm = []
173
+                        let calledArr = []
174
+                        arr.map(item => {
175
+                            if(item.status == 1){
176
+                                item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
177
+                                // waitingCalledArr.push(item)
178
+                                if(item.schedule_type == 1){
179
+                                    waitingCalledAm.push(item)
180
+                                }else if(item.schedule_type == 2){
181
+                                    waitingCalledPm.push(item)
182
+                                }
183
+                            }else if(item.status == 2){
184
+                                item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
185
+                                calledArr.push(item)
186
+                            }
187
+                        })
188
+                        // this.waitingCalled = waitingCalledArr
189
+                        this.waitingCalledAm = waitingCalledAm
190
+                        this.waitingCalledPm = waitingCalledPm
191
+                        this.called = calledArr
192
+                    }else if(res.channel == 'patientCallInfo'){
193
+                        res.data.patientInfo.create_time = moment(parseInt(res.data.patientInfo.create_time) * 1000).format('HH:mm')
194
+                        this.fisrtQueueInfo = res.data.patientInfo
195
+                        this.newFisrtQueueInfo = res.data.patientInfo
125 196
                     }
126
-                    this.fisrtQueueInfo = res.data.fisrtQueueInfo
127
-                    let arr = res.data.patientQueueList.data
128
-                    let waitingCalledArr = []
129
-                    let calledArr = []
130
-                    arr.map(item => {
131
-                        if(item.status == 1){
132
-                            item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
133
-                            waitingCalledArr.push(item)
134
-                        }else if(item.status == 2){
135
-                            item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
136
-                            calledArr.push(item)
137
-                        }
138
-                    })
139
-                    console.log('waitingCalledArr待叫号',waitingCalledArr)
140
-                    console.log('waitingCalledArr以较好',calledArr)
141
-                    this.waitingCalled = waitingCalledArr
142
-                    this.called = calledArr
143
-                }else if(res.channel == 'allQueueList'){
144
-                    let arr = res.data.queue_list.data
145
-                    let waitingCalledArr = []
146
-                    let calledArr = []
147
-                    arr.map(item => {
148
-                        if(item.status == 1){
149
-                            item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
150
-                            waitingCalledArr.push(item)
151
-                        }else if(item.status == 2){
152
-                            item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
153
-                            calledArr.push(item)
154
-                        }
155
-                    })
156
-                    this.waitingCalled = waitingCalledArr
157
-                    this.called = calledArr
158
-                }else if(res.channel == 'patientCallInfo'){
159
-                    res.data.patientInfo.create_time = moment(parseInt(res.data.patientInfo.create_time) * 1000).format('HH:mm')
160
-                    this.fisrtQueueInfo = res.data.patientInfo
161
-                }
197
+                
162 198
             }
163 199
         },
164 200
         handleStateChange: function(index) {
165 201
             this.patientStateVal = index
202
+            // if(index == 0){
203
+            //     let arr = this.waitingCalledAm
204
+            //     let newArr = []
205
+            //     arr.map(item => {
206
+            //         if(item.schedule_type == 1){
207
+            //             newArr.push(item)
208
+            //         }
209
+            //     }) 
210
+            //     this.waitingCalledAm = newArr
211
+            // }else if(index == 1){
212
+            //     let arr = this.waitingCalledPm
213
+            //     let newArr = []
214
+            //     arr.map(item => {
215
+            //         if(item.schedule_type == 2){
216
+            //             newArr.push(item)
217
+            //         }
218
+            //     }) 
219
+            //     this.waitingCalledPm = newArr
220
+            // }
221
+            let fisrtQueueInfo = []
222
+            if(this.newFisrtQueueInfo != null){
223
+                if(this.patientStateVal == 0){
224
+                    fisrtQueueInfo = this.newFisrtQueueInfo.morning
225
+                    if(fisrtQueueInfo.create_time){
226
+                        fisrtQueueInfo.create_time = moment(parseInt(fisrtQueueInfo.create_time) * 1000).format('HH:mm')
227
+                    }
228
+                }else if(this.patientStateVal == 1){
229
+                    fisrtQueueInfo = this.newFisrtQueueInfo.afternoon
230
+                    if(fisrtQueueInfo.create_time){
231
+                        fisrtQueueInfo.create_time = moment(parseInt(fisrtQueueInfo.create_time) * 1000).format('HH:mm')
232
+                    }
233
+                }
234
+            }
235
+            this.fisrtQueueInfo = fisrtQueueInfo
166 236
         },
167 237
         call(patient_id){
168 238
             if(patient_id == undefined || patient_id == ""){
@@ -190,10 +260,16 @@ export default {
190 260
                 this.$message.error('已经是最后一位了');
191 261
                 return
192 262
             }
263
+            let schedule_type = null
264
+            if(this.patientStateVal == 0){
265
+                schedule_type = 1
266
+            }else if(this.patientStateVal == 1){
267
+                schedule_type = 2
268
+            }
193 269
             console.log('patient_id',patient_id)
194 270
             let org_id =  parseInt(sessionStorage.getItem("org_id"));
195 271
             let admin_user_id = parseInt(sessionStorage.getItem("admin_user_id"));
196
-            axios.get('/api/index/nextcall?org_id=' + org_id + '&patient_id=' + patient_id + '&admin_user_id=' + admin_user_id).then(res => {
272
+            axios.get('/api/index/nextcall?org_id=' + org_id + '&patient_id=' + patient_id + '&admin_user_id=' + admin_user_id + '&schedule_type=' + schedule_type).then(res => {
197 273
                 console.log(res)
198 274
                 // let patientArr = res.data.queue_list.data
199 275
                 // this.patientArr = patientArr

+ 9 - 2
src/xt_pages/sign/components/called.vue 查看文件

@@ -16,9 +16,15 @@
16 16
                     </p>
17 17
                 </div>
18 18
             </div>
19
-            <div class="calledOneRight" v-if="index == 1" @click="call(item.patient_id)" style="display: none;">
20
-                <img src="../../../assets/img/volume.png" alt="">
19
+            <div class="calledOneRight">
20
+                <span v-if="item.schedule_type == 1">上午</span>
21
+                <span v-if="item.schedule_type == 2">下午</span>
22
+                <span v-if="item.schedule_type == 3">晚上</span>
23
+                <span>{{ item.queue_no }}号</span>
21 24
             </div>
25
+            <!-- <div class="calledOneRight" v-if="index == 1" @click="call(item.patient_id)" style="display: none;">
26
+                <img src="../../../assets/img/volume.png" alt="">
27
+            </div> -->
22 28
         </div>
23 29
         <div class="NoData" v-show="called.length == 0">
24 30
             <img src="@/assets/img/data.jpg" alt="">
@@ -116,6 +122,7 @@ export default {
116 122
             
117 123
         }
118 124
         .calledOneRight{
125
+            color:#999;
119 126
             img{
120 127
                 width: 30px;
121 128
                 margin-top: 8px;

+ 104 - 29
src/xt_pages/sign/components/computerCalling.vue 查看文件

@@ -11,10 +11,11 @@
11 11
         </div>
12 12
         <div style="display:flex;justify-content: space-between;">
13 13
             <div class="callingArea">
14
-                <called v-if="patientStateVal == 0" :index='1' :called='waitingCalled'></called>
15
-                <called v-if="patientStateVal == 1" :called="called"></called>
14
+                <called v-if="patientStateVal == 0" :index='1' :called='waitingCalledAm'></called>
15
+                <called v-if="patientStateVal == 1" :index='1' :called='waitingCalledPm'></called>
16
+                <called v-if="patientStateVal == 2" :called="called"></called>
16 17
             </div>
17
-            <div class="nowCalling" v-if="patientStateVal == 0">
18
+            <div class="nowCalling" v-if="patientStateVal == 0 || patientStateVal == 1">
18 19
                 <p class="nowCallingTitle">当前叫号</p>
19 20
                 <p class="nowCallingName">{{ fisrtQueueInfo ? fisrtQueueInfo.patient_name : '' }}</p>
20 21
                 <p class="nowCallingTime">签到时间:{{ fisrtQueueInfo ? fisrtQueueInfo.create_time : '' }}</p>
@@ -36,8 +37,9 @@ export default {
36 37
     data(){
37 38
         return{
38 39
             patient_state:[
39
-                {value: 0,label: '待叫号'},
40
-                {value: 1,label: '已叫号'},
40
+                {value: 0,label: '上午待叫号'},
41
+                {value: 1,label: '下午待叫号'},
42
+                {value: 2,label: '已叫号'},
41 43
             ],
42 44
             patientStateVal: 0,
43 45
             waitingCalled:[],
@@ -45,6 +47,10 @@ export default {
45 47
             fisrtQueueInfo:{},
46 48
             timer:null,
47 49
 
50
+            waitingCalledAm:[],
51
+            waitingCalledPm:[],
52
+            newFisrtQueueInfo:{}
53
+
48 54
         }
49 55
     },
50 56
     computed: {
@@ -93,51 +99,114 @@ export default {
93 99
                 // let res = re.data;
94 100
                 console.log('res',res)
95 101
                 if(res.channel == 'queue/join'){
96
-                    if(res.data.fisrtQueueInfo != null){
97
-                        if(res.data.fisrtQueueInfo.create_time){
98
-                            res.data.fisrtQueueInfo.create_time = moment(parseInt(res.data.fisrtQueueInfo.create_time) * 1000).format('HH:mm')
102
+                    if(res.data.type == 4){
103
+                        let fisrtQueueInfo = []
104
+                        this.newFisrtQueueInfo = res.data.fisrtQueueInfo
105
+                        if(res.data.fisrtQueueInfo != null){
106
+                            if(this.patientStateVal == 0){
107
+                                fisrtQueueInfo = res.data.fisrtQueueInfo.morning
108
+                                if(fisrtQueueInfo.create_time){
109
+                                    fisrtQueueInfo.create_time = moment(parseInt(fisrtQueueInfo.create_time) * 1000).format('HH:mm')
110
+                                }
111
+                            }else if(this.patientStateVal == 1){
112
+                                fisrtQueueInfo = res.data.fisrtQueueInfo.afternoon
113
+                                if(fisrtQueueInfo.create_time){
114
+                                    fisrtQueueInfo.create_time = moment(parseInt(fisrtQueueInfo.create_time) * 1000).format('HH:mm')
115
+                                }
116
+                            }
99 117
                         }
118
+                        this.fisrtQueueInfo = fisrtQueueInfo
119
+                        let arr = res.data.patientQueueList.data
120
+                        // let waitingCalledArr = []
121
+                        let waitingCalledAm = []
122
+                        let waitingCalledPm = []
123
+                        let calledArr = []
124
+                        arr.map(item => {
125
+                            if(item.status == 2){
126
+                                item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
127
+                                // waitingCalledArr.push(item)
128
+                                if(item.schedule_type == 1){
129
+                                    waitingCalledAm.push(item)
130
+                                }else if(item.schedule_type == 2){
131
+                                    waitingCalledPm.push(item)
132
+                                }
133
+                            }else if(item.status == 3){
134
+                                item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
135
+                                calledArr.push(item)
136
+                            }
137
+                        })
138
+                        // this.waitingCalled = waitingCalledArr
139
+                        this.waitingCalledAm = waitingCalledAm
140
+                        this.waitingCalledPm = waitingCalledPm
141
+                        this.called = calledArr
100 142
                     }
101
-                    this.fisrtQueueInfo = res.data.fisrtQueueInfo
102
-                    let arr = res.data.patientQueueList.data
103
-                    let waitingCalledArr = []
104
-                    let calledArr = []
105
-                    arr.map(item => {
106
-                        if(item.status == 2){
107
-                            item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
108
-                            waitingCalledArr.push(item)
109
-                        }else if(item.status == 3){
110
-                            item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
111
-                            calledArr.push(item)
112
-                        }
113
-                    })
114
-                    console.log('waitingCalledArr',waitingCalledArr)
115
-                    console.log('waitingCalledArr',calledArr)
116
-                    this.waitingCalled = waitingCalledArr
117
-                    this.called = calledArr
118 143
                 }else if(res.channel == 'allQueueList'){
119 144
                     let arr = res.data.queue_list.data
120
-                    let waitingCalledArr = []
145
+                    // let waitingCalledArr = []
146
+                    let waitingCalledAm = []
147
+                    let waitingCalledPm = []
121 148
                     let calledArr = []
122 149
                     arr.map(item => {
123 150
                         if(item.status == 2){
124 151
                             item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
125
-                            waitingCalledArr.push(item)
152
+                            // waitingCalledArr.push(item)
153
+                            if(item.schedule_type == 1){
154
+                                waitingCalledAm.push(item)
155
+                            }else if(item.schedule_type == 2){
156
+                                waitingCalledPm.push(item)
157
+                            }
126 158
                         }else if(item.status == 3){
127 159
                             item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
128 160
                             calledArr.push(item)
129 161
                         }
130 162
                     })
131
-                    this.waitingCalled = waitingCalledArr
163
+                    // this.waitingCalled = waitingCalledArr
164
+                    this.waitingCalledAm = waitingCalledAm
165
+                    this.waitingCalledPm = waitingCalledPm
132 166
                     this.called = calledArr
133 167
                 }else if(res.channel == 'patientCallInfo'){
134 168
                     res.data.patientInfo.create_time = moment(res.data.patientInfo.create_time * 1000).format('HH:mm')
135 169
                     this.fisrtQueueInfo = res.data.patientInfo
170
+                    this.newFisrtQueueInfo = res.data.patientInfo
136 171
                 }
137 172
             }
138 173
         },
139 174
         handleStateChange: function(index) {
140 175
             this.patientStateVal = index
176
+            // if(index == 0){
177
+            //     let arr = this.waitingCalledAm
178
+            //     let newArr = []
179
+            //     arr.map(item => {
180
+            //         if(item.schedule_type == 1){
181
+            //             newArr.push(item)
182
+            //         }
183
+            //     }) 
184
+            //     this.waitingCalledAm = newArr
185
+            // }else if(index == 1){
186
+            //     let arr = this.waitingCalledPm
187
+            //     let newArr = []
188
+            //     arr.map(item => {
189
+            //         if(item.schedule_type == 2){
190
+            //             newArr.push(item)
191
+            //         }
192
+            //     }) 
193
+            //     this.waitingCalledPm = newArr
194
+            // }
195
+            let fisrtQueueInfo = []
196
+            if(this.newFisrtQueueInfo != null){
197
+                if(this.patientStateVal == 0){
198
+                    fisrtQueueInfo = this.newFisrtQueueInfo.morning
199
+                    if(fisrtQueueInfo.create_time){
200
+                        fisrtQueueInfo.create_time = moment(parseInt(fisrtQueueInfo.create_time) * 1000).format('HH:mm')
201
+                    }
202
+                }else if(this.patientStateVal == 1){
203
+                    fisrtQueueInfo = this.newFisrtQueueInfo.afternoon
204
+                    if(fisrtQueueInfo.create_time){
205
+                        fisrtQueueInfo.create_time = moment(parseInt(fisrtQueueInfo.create_time) * 1000).format('HH:mm')
206
+                    }
207
+                }
208
+            }
209
+            this.fisrtQueueInfo = fisrtQueueInfo
141 210
         },
142 211
         call(patient_id){
143 212
             if(patient_id == undefined || patient_id == ""){
@@ -166,9 +235,15 @@ export default {
166 235
                 return
167 236
             }
168 237
             console.log('patient_id',patient_id)
238
+            let schedule_type = null
239
+            if(this.patientStateVal == 0){
240
+                schedule_type = 1
241
+            }else if(this.patientStateVal == 1){
242
+                schedule_type = 2
243
+            }
169 244
             let org_id =  parseInt(sessionStorage.getItem("org_id"));
170 245
             let admin_user_id = parseInt(sessionStorage.getItem("admin_user_id"));
171
-            axios.get('/api/index/nextupcall?org_id=' + org_id + '&patient_id=' + patient_id + '&admin_user_id=' + admin_user_id).then(res => {
246
+            axios.get('/api/index/nextupcall?org_id=' + org_id + '&patient_id=' + patient_id + '&admin_user_id=' + admin_user_id + '&schedule_type=' + schedule_type).then(res => {
172 247
                 console.log(res)
173 248
                 // let patientArr = res.data.queue_list.data
174 249
                 // this.patientArr = patientArr

+ 9 - 2
src/xt_pages/sign/components/waitingCalled.vue 查看文件

@@ -8,9 +8,15 @@
8 8
                     <p>签到时间:{{ item.create_time }}</p>
9 9
                 </div>
10 10
             </div>
11
-            <div class="waitingOneRight" @click="call(item.patient_id)" style="display: none;">
12
-                <img src="../../../assets/img/volume.png" alt="">
11
+            <div class="waitingOneRight">
12
+                <span v-if="item.schedule_type == 1">上午</span>
13
+                <span v-if="item.schedule_type == 2">下午</span>
14
+                <span v-if="item.schedule_type == 3">晚上</span>
15
+                <span>{{ item.queue_no }}号</span>
13 16
             </div>
17
+            <!-- <div class="waitingOneRight" @click="call(item.patient_id)" style="display: none;">
18
+                <img src="../../../assets/img/volume.png" alt="">
19
+            </div> -->
14 20
         </div>
15 21
         <div class="NoData" v-show="waitingCalled.length == 0">
16 22
             <img src="@/assets/img/data.jpg" alt="">
@@ -102,6 +108,7 @@ export default {
102 108
             
103 109
         }
104 110
         .waitingOneRight{
111
+            color:#999;
105 112
             img{
106 113
                 width: 30px;
107 114
                 margin-top: 6px;

+ 88 - 71
src/xt_pages/sign/lineUp.vue 查看文件

@@ -70,7 +70,7 @@
70 70
                                     <span v-if="item.status == 5">已下机</span>
71 71
                                 </p>
72 72
                                 <p style="width:14%">{{ item.start_time ? getDates(item.start_time) : '--' }}</p>
73
-                                <p style="width:16%">{{ item.end_time ? getDates(item.end_time) : '--' }}</p>
73
+                                <p style="width:16%">{{ item.end_time && item.start_time ? getDates(item.end_time) : '--' }}</p>
74 74
                             </div>
75 75
                         </div>
76 76
                     </div> 
@@ -154,7 +154,7 @@
154 154
                                     <span v-if="item.status == 5">已下机</span>
155 155
                                 </p>
156 156
                                 <p style="width:14%">{{ item.start_time ? getDates(item.start_time) : '--' }}</p>
157
-                                <p style="width:16%">{{ item.end_time ? getDates(item.end_time) : '--' }}</p>
157
+                                <p style="width:16%">{{ item.end_time && item.start_time ? getDates(item.end_time) : '--' }}</p>
158 158
                             </div>
159 159
                         </div>
160 160
                     </div> 
@@ -213,6 +213,7 @@ export default {
213 213
     components:{
214 214
         BreadCrumb
215 215
     },
216
+    inject: ['reload'],
216 217
     data(){
217 218
         return{
218 219
             crumbs: [
@@ -240,6 +241,7 @@ export default {
240 241
 
241 242
             voice:true,
242 243
             a:1,
244
+            newTimes:null
243 245
             
244 246
         }
245 247
     },
@@ -249,6 +251,11 @@ export default {
249 251
         },
250 252
     },
251 253
     created(){
254
+        if(sessionStorage.getItem('lineUpKey') != null){
255
+            if(sessionStorage.getItem('lineUpKey') == 1){
256
+                this.dialogTableVisible = true
257
+            }
258
+        }
252 259
         this.initData = {
253 260
             cmd: "queue/join",
254 261
             data: {type:2,page:1,size:6},
@@ -318,12 +325,17 @@ export default {
318 325
         this.timerID = setInterval(() => {
319 326
             this.updateTime()
320 327
         }, 1000);
328
+        this.newTimes = setInterval(() => {
329
+            this.reload()
330
+        }, 1000 * 60 * 30);
321 331
     },
322 332
     beforeDestroy(){
323 333
         clearInterval(this.timer);  // 清除定时器
324 334
         this.timer = null
325 335
         clearInterval(this.timerID);
326 336
         this.timerID = null;  // 清除定时器
337
+        clearInterval(this.newTimes);  // 清除定时器
338
+        this.newTimes = null
327 339
         let unObj = {
328 340
             cmd:'queue/unjoin',
329 341
             data:{type:2}
@@ -353,76 +365,80 @@ export default {
353 365
                 let res = JSON.parse(e.data);
354 366
                 // let res = re.data;
355 367
                 console.log('res',res)
356
-                if(res.channel == 'queue/join'){
357
-                    this.queueConfig = res.data.queueConfig
358
-                    this.lineUpList = res.data.patientQueueList.data
359
-                    this.receivingPatient = res.data.receivingPatient
360
-                    this.waitDoctorList = res.data.waitDoctorList
361
-                    this.upPatientList = res.data.upPatientList
362
-                    this.count = res.data.patientQueueList.count
363
-                    // this.lineUpList.map(item => {
364
-                    //     item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
365
-                    //     // item.start_time = moment(item.start_time * 1000).format('HH:mm')
366
-                    // })
367
-                }else if(res.channel == 'queue/queuelist'){
368
-                    this.lineUpList = res.data.patientQueueList.data
369
-                    this.count = res.data.patientQueueList.count
370
-                    // this.lineUpList.map(item => {
371
-                    //     item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
372
-                    //     // item.start_time = moment(item.start_time * 1000).format('HH:mm')
373
-                    //     if(item.start_time != null){
374
-                    //         item.start_time = moment(item.start_time * 1000).format('HH:mm:ss')
375
-                    //     }
376
-                    //     if(item.status == 5 || item.end_time){
377
-                    //         item.end_time = moment(item.end_time * 1000).format('HH:mm:ss')
378
-                    //     }
379
-                    // })
380
-                }else if(res.channel == 'patientCallInfo'){
381
-                    console.log(999999999999,res.data)
382
-                    
383
-                    
384
-                    console.log('执行几次',this.voiceNum)
385
-                    if(this.voice == true){
386
-                        this.patient_id = res.data.patientInfo.patient_id
387
-                        this.voice = false
388
-                        // let time1 = null
389
-                        this.voicePrompt(res.data.callVolUrl)
390
-                        this.voiceTime = setInterval(() => {
391
-                            let num = null
392
-                            if(res.data.patientInfo.status == 2){
393
-                                num = parseInt(this.queueConfig.jzdcbbcs)
394
-                            }else if(res.data.patientInfo.status == 3){
395
-                                num = parseInt(this.queueConfig.sjdcbbcs)
396
-                            }
397
-                            if(this.voiceNum < num){
398
-                                this.voiceNum++
399
-                                this.voicePrompt(res.data.callVolUrl)
400
-                            }else{
401
-                                this.voiceNum = 1;
402
-                                this.voice = true 
403
-                                let obj = {
404
-                                    cmd: "queue/callreturn",
405
-                                    data: {patient_id:this.patient_id},
406
-                                };
407
-                                this.websocketSend(obj)
408
-                                clearInterval(this.voiceTime);
409
-                                this.voiceTime = null
410
-                            }
411
-                        },6000)
412
-                    }else {
413
-                        // this.$message({
414
-                        //     message: '警告哦,这是一条警告消息',
415
-                        //     type: 'warning'
416
-                        // });
368
+                
369
+                    if(res.channel == 'queue/join'){
370
+                        if(res.data.type == 2){
371
+                            this.queueConfig = res.data.queueConfig
372
+                            this.lineUpList = res.data.patientQueueList.data
373
+                            this.receivingPatient = res.data.receivingPatient
374
+                            this.waitDoctorList = res.data.waitDoctorList
375
+                            this.upPatientList = res.data.upPatientList
376
+                            this.count = res.data.patientQueueList.count
377
+                            // this.lineUpList.map(item => {
378
+                            //     item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
379
+                            //     // item.start_time = moment(item.start_time * 1000).format('HH:mm')
380
+                            // })
381
+                        }
382
+                    }else if(res.channel == 'queue/queuelist'){
383
+                        this.lineUpList = res.data.patientQueueList.data
384
+                        this.count = res.data.patientQueueList.count
385
+                        // this.lineUpList.map(item => {
386
+                        //     item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
387
+                        //     // item.start_time = moment(item.start_time * 1000).format('HH:mm')
388
+                        //     if(item.start_time != null){
389
+                        //         item.start_time = moment(item.start_time * 1000).format('HH:mm:ss')
390
+                        //     }
391
+                        //     if(item.status == 5 || item.end_time){
392
+                        //         item.end_time = moment(item.end_time * 1000).format('HH:mm:ss')
393
+                        //     }
394
+                        // })
395
+                    }else if(res.channel == 'patientCallInfo'){
396
+                        console.log(999999999999,res.data)
397
+                        
398
+                        
399
+                        console.log('执行几次',this.voiceNum)
400
+                        if(this.voice == true){
401
+                            this.patient_id = res.data.patientInfo.patient_id
402
+                            this.voice = false
403
+                            // let time1 = null
404
+                            this.voicePrompt(res.data.callVolUrl)
405
+                            this.voiceTime = setInterval(() => {
406
+                                let num = null
407
+                                if(res.data.patientInfo.status == 2){
408
+                                    num = parseInt(this.queueConfig.jzdcbbcs)
409
+                                }else if(res.data.patientInfo.status == 3){
410
+                                    num = parseInt(this.queueConfig.sjdcbbcs)
411
+                                }
412
+                                if(this.voiceNum < num){
413
+                                    this.voiceNum++
414
+                                    this.voicePrompt(res.data.callVolUrl)
415
+                                }else{
416
+                                    this.voiceNum = 1;
417
+                                    this.voice = true 
418
+                                    let obj = {
419
+                                        cmd: "queue/callreturn",
420
+                                        data: {patient_id:this.patient_id},
421
+                                    };
422
+                                    this.websocketSend(obj)
423
+                                    clearInterval(this.voiceTime);
424
+                                    this.voiceTime = null
425
+                                }
426
+                            },6000)
427
+                        }else {
428
+                            // this.$message({
429
+                            //     message: '警告哦,这是一条警告消息',
430
+                            //     type: 'warning'
431
+                            // });
432
+                        }
433
+                    }else if(res.channel == 'updateCallList'){
434
+                        this.receivingPatient = res.data.queue_list
435
+                        
436
+                    }else if(res.channel == 'updateWaitCallList'){
437
+                        this.waitDoctorList = res.data.queue_list
438
+                    }else if(res.channel == 'updateUpCallList'){
439
+                        this.upPatientList = res.data.queue_list
417 440
                     }
418
-                }else if(res.channel == 'updateCallList'){
419
-                    this.receivingPatient = res.data.queue_list
420
-                    
421
-                }else if(res.channel == 'updateWaitCallList'){
422
-                    this.waitDoctorList = res.data.queue_list
423
-                }else if(res.channel == 'updateUpCallList'){
424
-                    this.upPatientList = res.data.queue_list
425
-                }
441
+                
426 442
                 // else if(res.channel == "patientQueueInfo"){
427 443
                 //     this.queueInfo = res.data.queueInfo
428 444
                 //     let obj = {
@@ -449,6 +465,7 @@ export default {
449 465
             return (zero + num).slice(-digit);
450 466
         },
451 467
         fullscreenboard: function() {
468
+            sessionStorage.setItem('lineUpKey',1);
452 469
             this.dialogTableVisible = true;
453 470
             // let routeData = this.$router.resolve({ path: '/fullscreenboard' })
454 471
             // window.open(routeData.href, '_blank')

+ 63 - 32
src/xt_pages/sign/signIn.vue 查看文件

@@ -66,7 +66,13 @@
66 66
                         <div :class="Object.keys(queueInfo).length>0 ? 'signInMainRight' : 'noneSignInMainRight'" v-if='Object.keys(queueInfo).length>0'>
67 67
                             <div class="signInMainRightTitle"><span style="margin:0 auto;" v-if='Object.keys(queueInfo).length>0'>{{ queueInfo.patient_name }}</span></div>
68 68
                             <div class="signInMainRightContent">
69
-                                <p style="margin: 0 auto;display:flex;align-items: center;" v-if='Object.keys(queueInfo).length>0'><span>排队号&nbsp;</span><span style="font-size:180px;">{{ queueInfo.queue_no }}</span></p>
69
+                                <p style="margin: 0 auto;display:flex;align-items: center;" v-if='Object.keys(queueInfo).length>0'><span>排队号&nbsp;</span></p>
70
+                                <p style="margin: 0 auto;display:flex;align-items: center;" v-if='Object.keys(queueInfo).length>0'>
71
+                                    <span v-if="queueInfo.schedule_type == 1">上午</span>
72
+                                    <span v-if="queueInfo.schedule_type == 2">下午</span>
73
+                                    <span v-if="queueInfo.schedule_type == 3">晚上</span>
74
+                                    <span style="font-size:180px;">{{ queueInfo.queue_no }}号</span>
75
+                                </p>
70 76
                             </div>
71 77
                             <div class="signInMianRightBottom"><span style="margin:0 auto;" v-if='Object.keys(queueInfo).length>0'>签到成功</span></div>
72 78
                         </div>
@@ -109,7 +115,13 @@
109 115
                         <div :class="Object.keys(queueInfo).length>0 ? 'signInMainRight' : 'noneSignInMainRight'">
110 116
                             <div class="signInMainRightTitle"><span style="margin:0 auto;" v-if='Object.keys(queueInfo).length>0'>{{ queueInfo.patient_name }}</span></div>
111 117
                             <div class="signInMainRightContent">
112
-                                <p style="margin: 0 auto;display:flex;align-items: center;" v-if='Object.keys(queueInfo).length>0'><span>排队号&nbsp;</span><span style="font-size:180px;">{{ queueInfo.queue_no }}</span></p>
118
+                                <p style="margin: 0 auto;display:flex;align-items: center;" v-if='Object.keys(queueInfo).length>0'><span>排队号&nbsp;</span></p>
119
+                                <p style="margin: 0 auto;display:flex;align-items: center;" v-if='Object.keys(queueInfo).length>0'>
120
+                                    <span v-if="queueInfo.schedule_type == 1">上午</span>
121
+                                    <span v-if="queueInfo.schedule_type == 2">下午</span>
122
+                                    <span v-if="queueInfo.schedule_type == 3">晚上</span>
123
+                                    <span style="font-size:180px;">{{ queueInfo.queue_no }}号</span>
124
+                                </p>
113 125
                             </div>
114 126
                             <div class="signInMianRightBottom"><span style="margin:0 auto;" v-if='Object.keys(queueInfo).length>0'>签到成功</span></div>
115 127
                         </div>
@@ -131,6 +143,7 @@ export default {
131 143
     components:{
132 144
         BreadCrumb
133 145
     },
146
+    inject: ['reload'],
134 147
     data(){
135 148
         return{
136 149
             crumbs: [
@@ -147,7 +160,8 @@ export default {
147 160
             timerID:null,
148 161
             time:'',
149 162
             newdate:'',
150
-            ds:null
163
+            ds:null,
164
+            newTimes:null
151 165
         }
152 166
     },
153 167
     computed: {
@@ -156,6 +170,11 @@ export default {
156 170
         },
157 171
     },
158 172
     created(){
173
+        if(sessionStorage.getItem('signInKey') != null){
174
+            if(sessionStorage.getItem('signInKey') == 1){
175
+                this.dialogTableVisible = true
176
+            }
177
+        }
159 178
         this.initData = {
160 179
             cmd: "queue/join",
161 180
             data: {type:1,page:1,size:10},
@@ -190,10 +209,15 @@ export default {
190 209
             this.updateTime()
191 210
         }, 1000);
192 211
         // this.updateTime();
212
+        this.newTimes = setInterval(() => {
213
+            this.reload()
214
+        }, 1000 * 60 * 30);
193 215
     },
194 216
     beforeDestroy(){
195 217
         clearInterval(this.timer);  // 清除定时器
196 218
         clearInterval(this.timerID);  // 清除定时器
219
+        clearInterval(this.newTimes);  // 清除定时器
220
+        this.newTimes = null
197 221
         let obj = {
198 222
             cmd: "queue/unjoin",
199 223
             data: {type:1},
@@ -216,35 +240,39 @@ export default {
216 240
                 let res = JSON.parse(e.data);
217 241
                 // let res = re.data;
218 242
                 console.log('res',res)
219
-                if(res.channel == 'queue/join'){
220
-                    this.signInList = res.data.patientQueueList.data
221
-                    this.count = res.data.patientQueueList.count
222
-                    this.signInList.map(item => {
223
-                        item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
224
-                    })
225
-                }else if(res.channel == "patientQueueInfo"){
226
-                    clearTimeout(this.ds)
227
-                    this.ds = null
228
-                    this.queueInfo = res.data.queueInfo
229
-                    this.page = 1
230
-                    let obj = {
231
-                        cmd: "queue/queuelist",
232
-                        data: {page:1,size:10,sort:1}
233
-                    };
234
-                    this.websocketSend(obj)
235
-                    
236
-                    this.ds = setTimeout(() => { 
237
-                       this.queueInfo = {} 
238
-                    }, 60000);
239
-                    
240
-                }else if(res.channel == 'queue/queuelist'){
241
-                    console.log(11111111111,res.data)
242
-                    this.signInList = res.data.patientQueueList.data
243
-                    this.count = res.data.patientQueueList.count
244
-                    this.signInList.map(item => {
245
-                        item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
246
-                    })
247
-                }
243
+                
244
+                    if(res.channel == 'queue/join'){
245
+                        if(res.data.type == 1){
246
+                            this.signInList = res.data.patientQueueList.data
247
+                            this.count = res.data.patientQueueList.count
248
+                            this.signInList.map(item => {
249
+                                item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
250
+                            })
251
+                        }
252
+                    }else if(res.channel == "patientQueueInfo"){
253
+                        clearTimeout(this.ds)
254
+                        this.ds = null
255
+                        this.queueInfo = res.data.queueInfo
256
+                        this.page = 1
257
+                        let obj = {
258
+                            cmd: "queue/queuelist",
259
+                            data: {page:1,size:10,sort:1}
260
+                        };
261
+                        this.websocketSend(obj)
262
+                        
263
+                        this.ds = setTimeout(() => { 
264
+                        this.queueInfo = {} 
265
+                        }, 60000);
266
+                        
267
+                    }else if(res.channel == 'queue/queuelist'){
268
+                        console.log(11111111111,res.data)
269
+                        this.signInList = res.data.patientQueueList.data
270
+                        this.count = res.data.patientQueueList.count
271
+                        this.signInList.map(item => {
272
+                            item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
273
+                        })
274
+                    }
275
+                
248 276
                 // console.log("action", re.action);
249 277
                 // console.log("data", JSON.stringify(res));
250 278
             }
@@ -264,6 +292,7 @@ export default {
264 292
             return (zero + num).slice(-digit);
265 293
         },
266 294
         fullscreenboard: function() {
295
+            sessionStorage.setItem('signInKey',1);
267 296
             this.dialogTableVisible = true;
268 297
             // let routeData = this.$router.resolve({ path: '/fullscreenboard' })
269 298
             // window.open(routeData.href, '_blank')
@@ -400,6 +429,8 @@ export default {
400 429
         font-size:90px;
401 430
         display:flex;
402 431
         align-items:center;
432
+        flex-direction: column;
433
+        justify-content: space-around;
403 434
     }
404 435
     .signInMianRightBottom{
405 436
         height: 270px;

+ 1 - 1
src/xt_pages/stock/drugs/drugStockInOrderAdd.vue 查看文件

@@ -147,7 +147,7 @@
147 147
             </template>
148 148
           </el-table-column>
149 149
 
150
-          <el-table-column label="零价" align="center" width="150">
150
+          <el-table-column label="零价" align="center" width="150">
151 151
             <template slot-scope="scope">
152 152
               {{ scope.row.retail_price }}
153 153
             </template>

+ 1 - 1
src/xt_pages/stock/drugs/drugStockOutOrderAdd.vue 查看文件

@@ -182,7 +182,7 @@
182 182
           </el-table-column>
183 183
 
184 184
 
185
-          <el-table-column label="零价" align="center" width="150">
185
+          <el-table-column label="零价" align="center" width="150">
186 186
             <template slot-scope="scope">
187 187
               {{ scope.row.retail_price }}
188 188
             </template>

+ 1 - 1
src/xt_pages/stock/stockQuery.vue 查看文件

@@ -157,7 +157,7 @@
157 157
       <el-pagination
158 158
         @size-change="handleSizeChange"
159 159
         @current-change="handleCurrentChange"
160
-        :page-sizes="[10, 50, 100]"
160
+        :page-sizes="[10, 50, 100,200,500,1000]"
161 161
         :page-size="10"
162 162
         background
163 163
         align="right"

+ 25 - 5
src/xt_pages/workforce/components/nextTableWeeks.vue 查看文件

@@ -221,19 +221,42 @@ export default {
221 221
         path: "/schedule/remind/print/next?week_type=" + this.week_type+"&week_time="+this.week_time
222 222
       });
223 223
     },
224
+   compare(property) {
225
+       return function (a, b) {
226
+          var value1 = a[property];
227
+          var value2 = b[property];
228
+          return value1 - value2;
229
+      }
230
+     },
224 231
     getNextScheduleWeekDay() {
232
+        const start = moment().weekday(1).format('YYYY-MM-DD'); //本周一
233
+        const end = moment().weekday(7).format('YYYY-MM-DD')
234
+        // console.log("start",moment(start).unix())
235
+      
225 236
         const params = {
226 237
           start_time:moment().week(moment().week() + 1).startOf('week').unix(),
227 238
           end_time:moment().week(moment().week() + 1).endOf('week').unix(),
228 239
           week_type:this.week_type,
229 240
           week_time:this.week_time,
230 241
         }
242
+        // const params = {
243
+        //   start_time:1609603200,
244
+        //   end_time:1610208000,
245
+        //   week_type:this.week_type,
246
+        //   week_time:this.week_time,
247
+        // }
231 248
       
232 249
       getNextScheduleWeekDay(params).then(response => {
233 250
         this.scheduleData = [];
234 251
         if (response.data.state == 1) {
235
-          this.scheduleData = response.data.data.schedule;
236
-          console.log("下周数据",response.data.data.schedule)
252
+          var scheduleData = response.data.data.schedule;
253
+          for(let i=0;i<scheduleData.length;i++){
254
+             scheduleData[i].sort = scheduleData[i].number.sort
255
+           }
256
+          var arr =   scheduleData.sort(this.compare('sort'))
257
+          // console.log("元旦快乐",arr)
258
+          this.scheduleData = arr
259
+        
237 260
          
238 261
         } else {
239 262
           this.$message.error("网络错误");
@@ -280,9 +303,6 @@ export default {
280 303
     },
281 304
     selectWeekType(type) {
282 305
       this.week_type = type;
283
-      // let params = {
284
-      //   week_type: this.week_type
285
-      // };
286 306
       this.getNextScheduleWeekDay();
287 307
     },
288 308
     selectWeekTime(type){

+ 2 - 0
src/xt_pages/workforce/components/tableData.vue 查看文件

@@ -1461,6 +1461,7 @@ export default {
1461 1461
             this.zone_device_map = zone_device_map;
1462 1462
 
1463 1463
             this.zone_names = Object.keys(this.zone_device_map);
1464
+            console.log('8989898989898989',this.zone_names)
1464 1465
 
1465 1466
             console.log(this.current_devices);
1466 1467
 
@@ -1972,6 +1973,7 @@ export default {
1972 1973
   //    this.tableContainHeight = window.innerHeight - this.$refs.table.$el.offsetTop - 160
1973 1974
   // },
1974 1975
   created() {
1976
+    this.changeScheduleType(1)
1975 1977
     rowNumber = 0;
1976 1978
     this.modeOptions = this.$store.getters.treatment_mode;
1977 1979
 

+ 14 - 2
src/xt_pages/workforce/components/tableWeeks.vue 查看文件

@@ -220,6 +220,13 @@ export default {
220 220
         path: "/schedule/remind/print?week_type=" + this.week_type+"&week_time="+this.week_time
221 221
       });
222 222
     },
223
+    compare(property) {
224
+       return function (a, b) {
225
+          var value1 = a[property];
226
+          var value2 = b[property];
227
+          return value1 - value2;
228
+      }
229
+     },
223 230
     getScheduleWeekDay() {
224 231
         const params = {
225 232
           week_type:this.week_type,
@@ -229,8 +236,13 @@ export default {
229 236
       getScheduleWeekDay(params).then(response => {
230 237
         this.scheduleData = [];
231 238
         if (response.data.state == 1) {
232
-          this.scheduleData = response.data.data.schdules;
233
-         
239
+           var scheduleData = response.data.data.schdules;
240
+           for(let i=0;i<scheduleData.length;i++){
241
+             scheduleData[i].sort = scheduleData[i].number.sort
242
+           }
243
+          var arr = scheduleData.sort(this.compare('sort'))
244
+          console.log("元旦快乐",arr)
245
+          this.scheduleData = arr
234 246
         } else {
235 247
           this.$message.error("网络错误");
236 248
           return false;

+ 7 - 0
src/xt_pages/workforce/next_remind_print.vue 查看文件

@@ -133,6 +133,13 @@
133 133
           start_time:this.start_time,
134 134
           end_time:this.end_time,
135 135
         }
136
+
137
+        //  const params = {
138
+        //   week_type:this.week_type,
139
+        //   week_time:this.week_time,
140
+        //   start_time:1609603200,
141
+        //   end_time:1610208000,
142
+        // }
136 143
       console.log("打印下周",params)
137 144
       getNextScheduleWeekDay(params).then(rs => {
138 145
         var resp = rs.data