提交 ee48f505 编写于 作者: lyf's avatar lyf

同步呼叫

上级 19addf0a
...@@ -72,23 +72,28 @@ ...@@ -72,23 +72,28 @@
<el-button <el-button
class="call-btn" class="call-btn"
size="mini" size="mini"
:disabled="item.status== 2&&item.timeleft == 0" :disabled="item.status == 2 && item.timeleft == 0"
type="primary" type="primary"
:loading="item.timeleft>0" :loading="item.timeleft > 0"
@click="drivingCall(item)" @click="drivingCall(item)"
> >
<span v-if="item.timeleft == 0">呼叫{{ item.role == 1 ? "问诊医生" : "接诊医生" }}</span> <span v-if="item.timeleft == 0"
<time-left @setItem='setItem($event,item)' v-else :timeleft="item.timeleft"></time-left> >呼叫{{ item.role == 1 ? "问诊医生" : "接诊医生" }}</span
>
<time-left
@setItem="setItem($event, item)"
v-else
:timeleft="item.timeleft"
></time-left>
</el-button> </el-button>
<span> <span>
{{ showText(item.status, item.role,item) }} {{ showText(item.status, item.role, item) }}
</span> </span>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div class="out" @click="leave">退出</div> <div class="out" @click="leave">退出</div>
<alert ref="alert"></alert> <alert ref="alert"></alert>
</div> </div>
...@@ -108,7 +113,7 @@ import timeLeft from "@/components/timeLeft"; ...@@ -108,7 +113,7 @@ import timeLeft from "@/components/timeLeft";
export default { export default {
components: { components: {
alert, alert,
timeLeft timeLeft,
}, },
data() { data() {
return { return {
...@@ -178,22 +183,21 @@ export default { ...@@ -178,22 +183,21 @@ export default {
} }
}, },
// 设置item // 设置item
setItem(data,item){ setItem(data, item) {
item.timeleft=0 item.timeleft = 0;
}, },
// 主动呼叫 // 主动呼叫
drivingCall(data) { drivingCall(data) {
// /team/call/direct/{imAccId}呼叫 // /team/call/direct/{imAccId}呼叫
let url = `/im/team/call/direct/`; let url = `/im/team/call/direct/`;
let params={ let params = {
imAccId :data.accId imAccId: data.accId,
} };
this.POST(url,params).then((res) => { this.POST(url, params).then((res) => {
if (res.code === "000000") { if (res.code === "000000") {
// this.tid = this.$route.query.tid || ""; // this.tid = this.$route.query.tid || "";
// this.diagnoseLogId = this.$route.query.diagnoseLogId || ""; // this.diagnoseLogId = this.$route.query.diagnoseLogId || "";
this.getInfo(data) this.getInfo(data);
} else { } else {
this.$message({ this.$message({
message: res.message, message: res.message,
...@@ -204,8 +208,7 @@ export default { ...@@ -204,8 +208,7 @@ export default {
}, },
// 获取相关信息 // 获取相关信息
getInfo(data) { getInfo(data) {
let role = data ? data.role : "";
let role=data?data.role:''
let url = `/im/team/detail?tid=${this.tid}`; let url = `/im/team/detail?tid=${this.tid}`;
this.GET(url) this.GET(url)
.then((res) => { .then((res) => {
...@@ -220,25 +223,31 @@ export default { ...@@ -220,25 +223,31 @@ export default {
} }
if (memberList && memberList.length) { if (memberList && memberList.length) {
memberList.forEach((item) => { memberList.forEach((item) => {
//在当前群组中的角色 1: 问诊医生 2: 接诊医生 3: 居民 4: 其他 if (role) {
if (item.role == 1) { if (item.role == 1 && role == 1) {
if(role==1){ this.memberList[0] = Object.assign(item, {
this.memberList[0] = Object.assign(item, { status: 1,timeleft:60 }); status: 1,
} timeleft: 60,
else{ });
this.memberList[0] = Object.assign(item, { status: 1,timeleft:0 });
}
//等待连接还是已经下麦 1为等待 2为进行中 3为下麦
}
if (item.role == 2) {
if(role==2){
this.memberList[1] = Object.assign(item, { status: 1,timeleft:60});
} }
else{ if (item.role == 2 && role == 2) {
this.memberList[1] = Object.assign(item, { status: 1,timeleft:0 }); this.memberList[1] = Object.assign(item, {
status: 1,
timeleft: 60,
});
} }
} else {
this.memberList[0] = Object.assign(item, {
status: 1,
timeleft: 0,
});
this.memberList[1] = Object.assign(item, {
status: 1,
timeleft: 0,
});
} }
//在当前群组中的角色 1: 问诊医生 2: 接诊医生 3: 居民 4: 其他
if (item.role == 4) { if (item.role == 4) {
this.userId = item.liveUserId; this.userId = item.liveUserId;
} }
...@@ -312,26 +321,24 @@ export default { ...@@ -312,26 +321,24 @@ export default {
title: `为了更好的体验,请保证您输出设备的正常使用`, title: `为了更好的体验,请保证您输出设备的正常使用`,
}) })
.then(() => { .then(() => {
Promise.all([this.rtc.join()]).then(res=>{ Promise.all([this.rtc.join()]).then((res) => {
this.ispending(); this.ispending();
let t = setTimeout(() => { let t = setTimeout(() => {
closeLoading(this); closeLoading(this);
this.muteLocalAudio(); this.muteLocalAudio();
clearTimeout(t); clearTimeout(t);
}, 1000); }, 1000);
}) });
}) })
.catch((err) => { .catch((err) => {
Promise.all([this.rtc.join()]).then(res=>{ Promise.all([this.rtc.join()]).then((res) => {
this.ispending(); this.ispending();
let t = setTimeout(() => { let t = setTimeout(() => {
closeLoading(this); closeLoading(this);
this.muteLocalAudio(); this.muteLocalAudio();
clearTimeout(t); clearTimeout(t);
}, 1000); }, 1000);
}) });
}); });
}); });
}, },
...@@ -371,11 +378,11 @@ export default { ...@@ -371,11 +378,11 @@ export default {
this.rtc.unmuteLocalAudio(); this.rtc.unmuteLocalAudio();
}, },
// 显示文案 // 显示文案
showText(status, role,item) { showText(status, role, item) {
console.log("status",status) console.log("status", status);
// 1 呼叫中 2 接入 3离线 // 1 呼叫中 2 接入 3离线
if(item.status==2){ if (item.status == 2) {
item.timeleft=0 item.timeleft = 0;
} }
let text = ""; let text = "";
switch (status) { switch (status) {
...@@ -648,7 +655,6 @@ export default { ...@@ -648,7 +655,6 @@ export default {
margin-left: 20px; margin-left: 20px;
cursor: pointer; cursor: pointer;
} }
} }
} }
.main { .main {
...@@ -745,7 +751,6 @@ export default { ...@@ -745,7 +751,6 @@ export default {
} }
} }
.out { .out {
width: 102px; width: 102px;
height: 32px; height: 32px;
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册