提交 643377fe 编写于 作者: xiaoping.di's avatar xiaoping.di

大盘修改

上级 7de96d4e
import request from 'mn-template/plugins/http'; import request from 'mn-template/plugins/http';
export const conditionUpdate = async(data) => { export const conditionUpdate = async (data) => {
return request({ return request({
url: '/diagnose/socket/condition/update', url: '/diagnose/socket/condition/update',
data: data, data: data,
...@@ -7,10 +7,36 @@ export const conditionUpdate = async(data) => { ...@@ -7,10 +7,36 @@ export const conditionUpdate = async(data) => {
}); });
}; };
export const conditionNewList = async(data) => { // 轮循 获取卡边正常信息和异常信息
export const conditionNewList = async (data) => {
return request({ return request({
url: '/diagnose/admin/diagnose/operator/newList', url: '/diagnose/admin/diagnose/operator/newList',
params: data, data: data,
method: 'post',
});
};
// 诊断建议
export const doctorAdviceList = async (data) => {
return request({
url: `/diagnose/admin/diagnose/doctorAdvice/list/${data.diagnoseLogId}`,
method: 'get', method: 'get',
}); });
}; };
// 手动呼叫
export const manualCall = async (data) => {
return request({
url: '/diagnose/admin/diagnose/manual/call',
data: data,
method: 'post',
});
};
// 查询当前上级医生下排队的信息
export const waitPersonNum = async (doctorId) => {
return request({
url: `/admin/diagnose/queueList/${doctorId}`,
method: 'post',
});
};
import { teamDetail, callDirect } from '@/api/diagnosis';
import { import {
teamDetail, waitPersonNum,
callDirect,
doctorAdviceList, doctorAdviceList,
manualCall, manualCall,
} from '@/api/diagnosis'; } from '@/api/workbench.js';
import { createNamespacedHelpers } from 'vuex'; import { createNamespacedHelpers } from 'vuex';
const { mapState } = createNamespacedHelpers('main'); const { mapState } = createNamespacedHelpers('main');
export default { export default {
props: { props: {
item: { item: {
type: Object, type: Object,
...@@ -14,6 +14,16 @@ import { ...@@ -14,6 +14,16 @@ import {
return {}; return {};
}, },
}, },
orderType: {
// 订单类型
type: String,
default: '',
},
key: {
// 订单类型
type: String,
default: '',
},
}, },
data() { data() {
return { return {
...@@ -31,7 +41,7 @@ import { ...@@ -31,7 +41,7 @@ import {
isManuacall: false, isManuacall: false,
isManuacallType: false, isManuacallType: false,
accId: '', accId: '',
mockData: [{}, {}, {}], waitPersonList: [],
isShowWait: false, isShowWait: false,
}; };
}, },
...@@ -93,10 +103,18 @@ import { ...@@ -93,10 +103,18 @@ import {
} }
}, },
appointBeginTime() { appointBeginTime() {
if (this.item.appointBeginTime) {
return new Date(this.item.appointBeginTime).format('hh:mm'); return new Date(this.item.appointBeginTime).format('hh:mm');
} else {
return '';
}
}, },
appointEndTime() { appointEndTime() {
if (this.item.appointEndTime) {
return new Date(this.item.appointEndTime).format('hh:mm'); return new Date(this.item.appointEndTime).format('hh:mm');
} else {
return '';
}
}, },
userCallTime() { userCallTime() {
return new Date(this.item.userCallTime).format('hh:mm'); return new Date(this.item.userCallTime).format('hh:mm');
...@@ -140,6 +158,7 @@ import { ...@@ -140,6 +158,7 @@ import {
}, },
watch: { watch: {
item(newVal, oldVal) { item(newVal, oldVal) {
console.log(newVal, 'newValnewValnewVal');
console.log(newVal, oldVal, 'newVal, oldVal'); console.log(newVal, oldVal, 'newVal, oldVal');
if (newVal !== oldVal) { if (newVal !== oldVal) {
if (newVal.doctorTrtcEntryStatus == 2) { if (newVal.doctorTrtcEntryStatus == 2) {
...@@ -156,6 +175,9 @@ import { ...@@ -156,6 +175,9 @@ import {
} }
} }
}, },
key(newVal, oldVal) {
console.log(newVal, oldVal);
},
}, },
created() {}, created() {},
mounted() { mounted() {
...@@ -246,7 +268,6 @@ import { ...@@ -246,7 +268,6 @@ import {
down() { down() {
this.timer = setInterval(() => { this.timer = setInterval(() => {
const nowData = new Date().getTime(); const nowData = new Date().getTime();
const timeleft = this.item.appointBeginTime - nowData; const timeleft = this.item.appointBeginTime - nowData;
if (timeleft < 120000 && nowData < this.item.appointEndTime) { if (timeleft < 120000 && nowData < this.item.appointEndTime) {
this.isCall = true; this.isCall = true;
...@@ -344,7 +365,31 @@ import { ...@@ -344,7 +365,31 @@ import {
}); });
}, },
waitPersonFun() { waitPersonFun() {
if (!this.isShowWait) {
console.log(this.item.doctorId, 'this.item.doctorId');
waitPersonNum(this.item.doctorId)
.then((res) => {
if (res.code === '000000') {
this.waitPersonList = res.data || [];
} else {
this.$message({
message: res.message,
type: 'warning',
duration: 1000,
});
}
this.isShowWait = !this.isShowWait;
})
.catch((err) => {
console.log(err);
this.isShowWait = !this.isShowWait; this.isShowWait = !this.isShowWait;
this.$message({
message: '服务查询失败',
type: 'warning',
duration: 1000,
});
});
}
}, },
}, },
}; };
\ No newline at end of file
...@@ -44,10 +44,10 @@ ...@@ -44,10 +44,10 @@
color: #ff5e57; color: #ff5e57;
} }
} }
.superior-doctor{ .superior-doctor {
width: 49%; width: 49%;
display: flex; display: flex;
justify-content:flex-start; justify-content: flex-start;
align-items: flex-start; align-items: flex-start;
.inquiry-user-img { .inquiry-user-img {
display: flex; display: flex;
...@@ -139,17 +139,18 @@ ...@@ -139,17 +139,18 @@
} }
} }
} }
.basic-doctor{ .basic-doctor {
width: 49%; width: 49%;
display:flex; display: flex;
justify-content:flex-start; justify-content: flex-start;
.basic-user-img,.basic-user-info{ .basic-user-img,
padding-right:6px; .basic-user-info {
.info-name-wrap{ padding-right: 6px;
display:flex; .info-name-wrap {
align-items:center; display: flex;
justify-content:space-between; align-items: center;
.info-name{ justify-content: space-between;
.info-name {
max-width: 85px; max-width: 85px;
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
...@@ -186,8 +187,10 @@ ...@@ -186,8 +187,10 @@
} }
} }
} }
.no-info{ .no-info {
width: 100%;
height: auto;
color: #ff5e57;
} }
.inquiry-user-status { .inquiry-user-status {
width: 100%; width: 100%;
...@@ -331,4 +334,4 @@ ...@@ -331,4 +334,4 @@
height: auto; height: auto;
display: flex; display: flex;
} }
} }
\ No newline at end of file
<template> <template>
<div class="inquiry-wrap"> <div class="inquiry-wrap">
<div class="line"> <div class="line">
<!--上级医生头信息 -->
<div class="superior-doctor"> <div class="superior-doctor">
<div class="inquiry-user-img"> <div class="inquiry-user-img">
<div <div
...@@ -31,19 +32,8 @@ ...@@ -31,19 +32,8 @@
<li class="info-phone"> <li class="info-phone">
{{ item.doctorMobile }} {{ item.doctorMobile }}
</li> </li>
<li
v-if="item.doctorCallTime"
class="info-call-time"
>
{{ pastDoctorCallTime }}前呼叫
</li>
<li
v-if="doctorCallKfStatus == 1"
class="info-calling"
>
正在呼叫
</li>
<li class="inquiry-user-status"> <li class="inquiry-user-status">
<!-- 只有-->
<span <span
:class=" :class="
doctorCallStatus === '已拨打完成' doctorCallStatus === '已拨打完成'
...@@ -51,12 +41,21 @@ ...@@ -51,12 +41,21 @@
: 'status-cll-user-answer' : 'status-cll-user-answer'
" "
>{{ doctorCallStatus }}</span> >{{ doctorCallStatus }}</span>
<span
v-if="doctorCallKfStatus == 1"
class="status-cll-user-answer"
>正在呼叫</span>
<span
v-else
class="status-cll-user-answer"
> 未呼叫</span>
</li> </li>
</ul> </ul>
</div> </div>
</div> </div>
<!-- 助诊医生 --> <!-- 助诊医生头信息 -->
<div <div
v-if="item.userId"
class="basic-doctor" class="basic-doctor"
> >
<ul class="basic-user-img"> <ul class="basic-user-img">
...@@ -88,20 +87,11 @@ ...@@ -88,20 +87,11 @@
<div class="info-phone"> <div class="info-phone">
{{ item.userMobile }} {{ item.userMobile }}
</div> </div>
<div
v-if="item.userCallTime"
class="info-call-time"
>
{{ pastUserCallTime }}前呼叫
</div>
<div <div
v-if="userCallKfStatus == 1" v-if="userCallKfStatus == 1"
class="info-calling" class="info-calling"
> >
<img 呼叫中
:src="infocallImg"
alt=""
>
</div> </div>
</li> </li>
<li class="inquiry-user-status"> <li class="inquiry-user-status">
...@@ -115,36 +105,72 @@ ...@@ -115,36 +105,72 @@
</li> </li>
</ul> </ul>
</div> </div>
<!-- 未开始接诊 或停止接诊--> <!-- 未开始接诊 或停止接诊-->
<div class="no-info" /> <div
v-else
class="no-info"
>
<div
v-if="item.acceptStatus == 4"
class="doctor-late"
>
未开始接诊
</div>
<div
v-if="item.acceptStatus == 1"
class="doctor-stop"
>
暂停接诊
</div>
</div>
</div> </div>
<!-- 预约时间,复制单号 -->
<div class="line line-second"> <div class="line line-second">
<div class="left"> <div class="left">
<div>预约时间</div> <div>预约时间</div>
<div class="time"> <div
v-if="appointBeginTime && appointEndTime"
class="time"
>
<span>{{ appointBeginTime }}</span> - <span>{{ appointBeginTime }}</span> -
<span>{{ appointEndTime }}</span> <span>{{ appointEndTime }}</span>
</div> </div>
<div
v-else
class="time"
>
</div>
</div> </div>
<div class="right"> <div class="right">
<div>问诊单号</div> <div>问诊单号</div>
<ul class="orderno"> <ul class="orderno">
<li class="num"> <li class="num">
{{ item.diagnoseLogId }} {{ item.diagnoseLogId || '空' }}
</li> </li>
<li class="copy"> <li
v-if="item.diagnoseLogId"
class="copy"
@click="copyDiagnoseLogId"
>
复制 复制
</li> </li>
</ul> </ul>
</div> </div>
</div> </div>
<!-- 当前排队 -->
<div class="line mt30 line-last"> <div class="line mt30 line-last">
<div <div
class="line-btn" class="line-btn"
@click="waitPersonFun" @click="waitPersonFun"
> >
<div>当前排队5人<i class="el-icon-arrow-down el-icon--right" /></div> <div>
当前排队{{ item.queueCount || '0' }}<i
class="el-icon-arrow-down el-icon--right"
/>
</div>
</div> </div>
<div <div
class="line-btn line-btn-enter" class="line-btn line-btn-enter"
...@@ -175,12 +201,14 @@ ...@@ -175,12 +201,14 @@
</div> </div>
</div> </div>
</div> </div>
<!-- 排队详细 -->
<div <div
v-if="isShowWait" v-if="isShowWait"
class="line-position" class="line-position"
> >
<ul <ul
v-for="(ele, index) in mockData" v-for="(item, index) in waitPersonList"
:key="index" :key="index"
class="wait" class="wait"
> >
...@@ -188,19 +216,22 @@ ...@@ -188,19 +216,22 @@
<div class="header"> <div class="header">
<img <img
:src="item.userImageUrl" :src="item.userImageUrl"
alt="" alt="headImg"
> >
</div> </div>
<div class="name"> <div class="name">
name {{ item.userName }}
</div> </div>
<div class="connect"> <div
连接失败 2次 v-if="item.failCount"
class="connect"
>
连接失败 {{ item.failCount }}
</div> </div>
</li> </li>
<li class="wait-info"> <li class="wait-info">
<div class="order"> <div class="order">
问诊单号 <span>877654</span> 问诊单号 <span>{{ item.diagnoseLogId || '空' }}</span>
</div> </div>
</li> </li>
</ul> </ul>
...@@ -212,5 +243,5 @@ ...@@ -212,5 +243,5 @@
export default index; export default index;
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
@import "index"; @import 'index';
</style> </style>
...@@ -55,6 +55,11 @@ const socket = { ...@@ -55,6 +55,11 @@ const socket = {
} }
}); });
socketClient.on('diagnose_call_push_event', (socket) => { socketClient.on('diagnose_call_push_event', (socket) => {
console.log(
socket,
'socketsocket',
window._VM.$store.state.main.soketQuest
);
const l = window._VM.$store.state.main.noticeList; const l = window._VM.$store.state.main.noticeList;
if (l.length >= 5) { if (l.length >= 5) {
l.shift(); l.shift();
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册