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

合并分支

<template>
<div class="consultationlist" style=" user-select:none; ">
<div class="consultationlist" style="user-select: none">
<div class="list">
<div class="name">{{ operatorsItem.name || ''}}</div>
<div class="name">{{ operatorsItem.name || "" }}</div>
<div class="details" @click="goworkBench">
<div class="handle">待处理: <span> 暂无</span></div>
<!-- <div class="handle">待处理: <span> 暂无</span></div> -->
<div class="see">
<a href="#">查看详情</a>
<span>查看详情</span>
<i class="el-icon-arrow-right"></i>
</div>
</div>
</div>
<div class="data">
<!-- <div class="data">
<div>
<div class="totallist">暂无</div>
<div class="statelist">全部</div>
......@@ -27,27 +27,27 @@
<div class="totallist">暂无</div>
<div class="statelist">全部</div>
</div>
</div>
</div> -->
</div>
</template>
<script>
export default {
data() {
return {
}
return {};
},
props:{
operatorsItem:{
props: {
operatorsItem: {
type: Object,
default:{}
default: {},
},
workbenchAdminDate: {
type: String,
default:''
}
default: "",
},
},
created() {
console.log("operatorsItem", this.operatorsItem);
},
methods: {
goworkBench() {
......@@ -56,41 +56,37 @@ export default {
operateUserId: this.operatorsItem.id,
pageNo: 1,
pageSize: 6,
returnStatus: 1
returnStatus: 1,
};
this.$store.commit("clearRawCurrentCalList")
this.POST('/diagnose/socket/condition/update', p).then(res=>{
if(res.code == '000000'){
this.$store.commit('updateSoketQuest', p)
this.$router.push({path:'/workbench'})
}else{
this.$message({
message: res.message,
type: "warning",
duration:1000
});
}
})
}
}
this.$store.commit("clearRawCurrentCalList");
this.POST("/diagnose/socket/condition/update", p).then((res) => {
if (res.code == "000000") {
this.$store.commit("updateSoketQuest", p);
this.$router.push({ path: "/workbench" });
} else {
this.$message({
message: res.message,
type: "warning",
duration: 1000,
});
}
});
},
},
};
</script>
<style lang="scss">
.consultationlist {
padding: 25px 40px 25px 40px;
width: 488px;
height: 164px;
padding: 25px;
width: 100%;
background: #ffffff;
border-radius: 18px;
margin-left: 14px;
margin-top: 20px;
.list {
display: flex;
justify-content: space-between;
.details {
width: 192px;
width: 120px;
height: 40px;
background: rgba(68, 146, 132, 0.24);
border-radius: 20px;
......@@ -98,29 +94,30 @@ export default {
border: 1px solid #449284;
display: flex;
justify-content: space-evenly;
align-items: center;
align-items: center;
cursor: pointer;
.handle {
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #6a7990;
line-height: 18px;
span{
font-size: 18px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #449284;
span {
font-size: 18px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #449284;
}
}
.see {
a{
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #6a7990;
span {
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #6a7990;
}
}
}
}
.name {
font-size: 24px;
font-family: PingFangSC-Medium, PingFang SC;
......@@ -128,22 +125,22 @@ export default {
color: #063948;
}
}
.data{
margin-top: 20px;
display: flex;
justify-content: space-between;
.totallist{
font-size: 18px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #063948;
line-height: 25px;
.data {
margin-top: 20px;
display: flex;
justify-content: space-between;
.totallist {
font-size: 18px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #063948;
line-height: 25px;
}
.statelist{
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #6A7990;
.statelist {
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #6a7990;
}
}
}
......
<template>
<div class="inquiry-wrap" >
<div class="inquiry-wrap">
<div class="line">
<div class="left">
<div>
{{item.diagnoseLogId}}&nbsp;
<span class="dep">{{item.department}}</span>
{{ item.diagnoseLogId }}&nbsp;
<span class="dep">{{ item.department }}</span>
</div>
<div class="talk">
<i :class='diagnoseTypeIcon'></i>
{{diagnoseType}}
<i :class="diagnoseTypeIcon"></i>
{{ diagnoseType }}
</div>
<div class="time">
<i class="appointment"></i><span>{{ appointBeginTime }}</span
>-<span>{{ appointEndTime }}</span>
</div>
<div class="time"> <i class="appointment"></i> {{appointBeginTime}} {{appointEndTime}}</div>
</div>
<div class="right">
<div class="right-status" :class="{grey: item.returnStatus >= 5, org: item.returnStatus == 1}">
{{returnStatusText}}
</div>
<!-- <div class="right-time">-->
<!-- 已经问诊-->
<!-- </div>-->
<!-- <div class="right-time">-->
<!-- 已经问诊-->
<!-- </div>-->
</div>
</div>
<div class="line mt30">
<div class="inquiry-user">
<div class="inquiry-user-img">
<el-avatar :src="item.doctorImageUrl"></el-avatar>
</div>
<div class="inquiry-user-info">
<div>
<span class="info-name">
{{item.doctorName}}
</span>
<span>接诊医生</span>
<div class="inquiry-user-container">
<div class="inquiry-user">
<div class="inquiry-user-img">
<div class="avatar">
<el-avatar :src="item.doctorImageUrl"></el-avatar>
</div>
</div>
<div>
<span class="info-phone">
{{item.doctorMobile}}
</span>
<span class="info-call-time" v-if="item.doctorCallTime">
{{doctorCallTime}}小时前呼叫
</span>
<span class="info-calling" v-if="item.doctorCallKfStatus == 1">
<img :src="infocallImg" alt="">
</span>
<div class="inquiry-user-info">
<div>
<span class="info-name">
{{ item.doctorName }}
</span>
<span>接诊医生</span>
</div>
<div>
<span class="info-phone">
{{ item.doctorMobile }}
</span>
<span class="info-call-time" v-if="item.doctorCallTime">
{{ doctorCallTime }}小时前呼叫
</span>
<span class="info-calling" v-if="item.doctorCallKfStatus == 1">
<img :src="infocallImg" alt="" />
</span>
</div>
</div>
<div class="call-status">
<img
v-if="isCall"
@click="drivingCall(item.doctorId, 2)"
:src="isDoctorChat ? callouting : callout"
alt=""
/>
</div>
</div>
</div>
<div class="inquiry-user">
<div class="inquiry-user-img">
<el-avatar :src="item.userImageUrl"></el-avatar>
<div class="line-btn" @click="openChat">
<span v-if="isDoctorChat">正在呼叫接诊医生,进入诊室</span>
<span v-else-if="isUserChat">正在呼叫医助,进入诊室</span>
<span v-else>进入诊室</span>
</div>
<div class="inquiry-user-info">
<div>
<span class="info-name">
{{item.userName}}
</span>
<span>助诊医生</span>
</div>
<div class="inquiry-user-container">
<div class="inquiry-user">
<div class="inquiry-user-img">
<div class="avatar">
<el-avatar :src="item.userImageUrl"></el-avatar>
</div>
</div>
<div class="inquiry-user-info">
<div>
<span class="info-name">
{{ item.userName }}
</span>
<span>助诊医生</span>
</div>
<div>
<span class="info-phone">
{{ item.userMobile }}
</span>
<span class="info-call-time" v-if="item.userCallTime">
{{ userCallTime }}小时前呼叫
</span>
<span class="info-calling" v-if="item.userCallKfStatus == 1">
<img :src="infocallImg" alt="" />
</span>
</div>
</div>
<div>
<span class="info-phone">
{{item.userMobile}}
</span>
<span class="info-call-time" v-if="item.userCallTime">
{{userCallTime}}小时前呼叫
</span>
<span class="info-calling" v-if="item.userCallKfStatus == 1">
<img :src="infocallImg" alt="">
</span>
<div class="call-status">
<img
v-if="isCall"
@click="drivingCall(item.userId, 1)"
:src="isUserChat ? callouting : callout"
alt=""
/>
</div>
</div>
<div class="line-btn" @click="openAdvice">
诊断建议
<div
class="line-btn-tap"
v-if="item.adviceStatus && item.adviceStatus == 2"
>
未写
</div>
</div>
</div>
</div>
<div class="line mt20">
<div class="line-btn" @click="openChat">进入诊室 </div>
<div class="line-btn" @click="openAdvice">诊断建议 <div class="line-btn-tap" v-if="item.adviceStatus && item.adviceStatus == 2">未写</div></div>
</div>
</div>
</template>
<script>
import { mapState } from "vuex";
export default {
data() {
data() {
return {
infocallImg: require('@/assets/image/workbench/calling.png')
infocallImg: require("@/assets/image/workbench/calling.png"),
callout: require("@/assets/image/workbench/callout.png"),
callouting: require("@/assets/image/workbench/callouting.png"),
timer: null,
isChat: false,
isUserChat: false,
isDoctorChat: false,
isCall: false,
accId: "",
};
},
props:{
item:{
type:Object,
default:{}
}
props: {
item: {
type: Object,
default: {},
},
},
created() {
created() {},
mounted() {
console.log("this.item", this.item);
let nowData = new Date().getTime();
let timeleft = this.item.appointBeginTime - nowData;
if (timeleft < 120000 && nowData < this.item.appointEndTime) {
clearInterval(this.timer);
this.down();
} else {
this.isCall = true;
}
// if (this.appointBeginTime > 0) {
// this.time=this.timeleft
// this.down();
// }
},
computed:{
computed: {
...mapState({
showChat: 'showChat',
showAdvice:'showAdvice',
showChat: "showChat",
showAdvice: "showAdvice",
}),
diagnoseType() {
switch(this.item.diagnoseType) {
switch (this.item.diagnoseType) {
case 1:
return '语音问诊'
case 2:
return '视频问诊'
case 3:
return '图文问诊'
return "语音问诊";
case 2:
return "视频问诊";
case 3:
return "图文问诊";
default:
return''
return "";
}
},
diagnoseTypeIcon () {
switch(this.item.diagnoseType) {
diagnoseTypeIcon() {
switch (this.item.diagnoseType) {
case 1:
return 'voice'
return "voice";
case 2:
return 'voice'
return "voice";
case 3:
return 'photo'
return "photo";
default:
return'photo'
return "photo";
}
},
returnStatusText() {
switch(this.item.returnStatus) {
switch (this.item.returnStatus) {
case 1:
return '待处理'
case 2:
......@@ -136,237 +198,311 @@ export default {
case 5:
return '已取消'
default:
return'暂无';
return "暂无";
}
},
appointBeginTime() {
return new Date(this.item.appointBeginTime).format("yyyy-MM-dd hh:mm");
},
appointEndTime () {
appointEndTime() {
return new Date(this.item.appointEndTime).format("hh:mm");
},
userCallTime() {
return new Date(this.item.userCallTime).format("hh:mm");
},
doctorCallTime () {
doctorCallTime() {
return new Date(this.item.doctorCallTime).format("hh:mm");
}
},
nowtime() {
return new Date().getTime() - this.item.appointBeginTime;
},
},
methods: {
openChat () {
if(this.showChat){
down() {
this.timer = setInterval(() => {
let nowData = new Date().getTime();
let timeleft = this.item.appointBeginTime - nowData;
if (timeleft < 120000 && nowData < this.item.appointEndTime) {
this.isCall = true;
clearInterval(this.timer);
}
}, 1000);
},
getInfo(id) {
let url = `/im/team/detail?tid=${this.item.imTeamId}`;
return this.GET(url)
.then((res) => {
if (res.code == "000000") {
let { memberList } = res.data;
console.log("---memberList", memberList);
if (memberList) {
let accId = memberList.filter((val) => {
return val.id == id;
});
return accId[0].accId;
}
}
})
.catch(() => {});
},
// 主动呼叫 roletype 1:助诊医生 2:接诊医生
drivingCall(id, roletype) {
this.getInfo(id).then((res) => {
console.log(res)
let url = `/im/team/call/direct/`;
let params = {
imAccId: res,
imTeamId: this.item.imTeamId,
liveRoomId: this.item.roomId,
};
this.POST(url, params).then((res) => {
if (res.code === "000000") {
if (roletype == 1) {
this.isUserChat = true;
} else {
console.log("ererer")
this.isDoctorChat = true;
}
} else {
this.$message({
message: res.message,
type: "warning",
});
}
});
});
},
openChat() {
if (this.showChat) {
this.$message({
message: '不可同时进入多个诊室,请先退出已进入的诊室,再试。',
message: "不可同时进入多个诊室,请先退出已进入的诊室,再试。",
type: "warning",
duration:1000
duration: 1000,
});
return false;
}
const i = this.item;
// if(i.imTeamId){
// const params = {
// teamIdList: [i.imTeamId]
// }
// this.POST(`/im/team/call/op/ack/`,params).then(res=>{
// if(res.code == '000000'){
// this.$store.commit('updateShowChat', true);
// this.$store.commit('updateCurrentChat', i);
// }
// }).catch(err=>{
// this.$message({
// message: err.message,
// type: "warning",
// duration:1000
// });
// })
//
// }
this.$store.dispatch('gotoInquiry', i);
this.$store.dispatch("gotoInquiry", i);
},
openAdvice() {
if(this.showAdvice){
if (this.showAdvice) {
this.$message({
message: '不可同时打开多个诊断建议,请先退出已打开的诊断建议,再试。',
message: "不可同时打开多个诊断建议,请先退出已打开的诊断建议,再试。",
type: "warning",
duration:1000
duration: 1000,
});
return false;
}
const i = this.item.diagnoseLogId;
// const i = 11;
this.GET(`/diagnose/admin/diagnose/doctorAdvice/list/${i}`).then(res=>{
if(res.code == '000000'){
console.log(res.data);
this.$store.commit('updateShowAdvice', true);
this.$store.commit('updateCurrentAdvice', res.data);
}else {
this.$message({
message: res.message,
type: "warning",
duration:1000
});
this.GET(`/diagnose/admin/diagnose/doctorAdvice/list/${i}`)
.then((res) => {
if (res.code == "000000") {
console.log(res.data);
this.$store.commit("updateShowAdvice", true);
this.$store.commit("updateCurrentAdvice", res.data);
} else {
this.$message({
message: res.message,
type: "warning",
duration: 1000,
});
}
})
.catch((err) => {
console.log(err);
});
},
},
};
</script>
<style lang="scss" scoped>
.inquiry-wrap {
box-sizing: border-box;
margin-bottom: 10px;
padding: 20px 34px;
background: #ffffff;
border-radius: 18px;
user-select: none;
min-width: 610px;
border: 1px solid #cccccc;
.line {
display: flex;
justify-content: space-between;
.left {
color: #02120f;
font-size: 28px;
.dep {
font-size: 20px;
}
.talk {
margin-right: 5px;
display: inline-block;
width: 120px;
height: 24px;
background: #f0f2f5;
border-radius: 23px;
font-size: 14px;
color: #6a7990;
text-align: center;
line-height: 24px;
}
.time {
display: inline-block;
width: 217px;
height: 24px;
background: #f0f2f5;
border-radius: 23px;
font-size: 14px;
color: #6a7990;
text-align: center;
line-height: 24px;
}
}
.right {
.right-status {
color: #0d9078;
font-size: 14px;
}
.right-time {
margin-top: 5px;
color: #6a7990;
font-size: 12px;
}
.grey {
color: #6a7990;
}
.org {
color: #ff5e57;
}
}
.inquiry-user-container {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
.inquiry-user {
display: flex;
justify-content: space-between;
margin-bottom: 20px;
.inquiry-user-img {
display: flex;
flex-direction: column;
justify-content: center;
.avatar {
background: #dddddd;
border-radius: 36px;
display: flex;
flex-direction: column;
justify-content: center;
}
}
}).catch(err=>{
console.log(err);
})
.inquiry-user-info {
font-size: 14px;
margin-left: 10px;
display: flex;
flex-direction: column;
justify-content: center;
margin-right: 10px;
.info-name {
font-size: 18px;
color: #02120f;
font-weight: bold;
}
.info-phone {
color: #6a7990;
font-size: 16px;
}
.info-call-time {
color: #ff5e57;
}
.info-calling {
width: 15px;
height: 15px;
display: inline-block;
img {
width: 100%;
}
}
}
.call-status {
width: 45px;
height: 46px;
cursor: pointer;
img {
width: 45px;
height: 46px;
}
}
}
}
.line-btn {
cursor: pointer;
position: relative;
width: 238px;
height: 37px;
background: rgba(68, 146, 132, 0.09);
border-radius: 23px;
border: 1px solid rgba(68, 146, 132, 0.31);
text-align: center;
line-height: 37px;
color: #0d9078;
font-size: 14px;
font-weight: bold;
.line-btn-tap {
position: absolute;
top: -10px;
right: 20px;
width: 48px;
height: 20px;
background: #0d9078;
border-radius: 7px 7px 7px 0px;
font-size: 14px;
color: #ffffff;
line-height: 20px;
}
span {
font-weight: bold;
}
}
}
.mt30 {
margin-top: 30px;
}
.mt20 {
margin-top: 20px;
}
.appointment {
width: 12px;
height: 12px;
display: inline-block;
background: url("../../assets/image/workbench/appointment.png") no-repeat;
background-size: cover;
margin-right: 5px;
}
.video {
width: 12px;
height: 12px;
display: inline-block;
background: url("../../assets/image/workbench/video.png") no-repeat;
background-size: cover;
}
.photo {
width: 12px;
height: 12px;
display: inline-block;
background: url("../../assets/image/workbench/photo.png") no-repeat;
background-size: cover;
}
.voice {
width: 12px;
height: 12px;
display: inline-block;
background: url("../../assets/image/workbench/voice.png") no-repeat;
background-size: cover;
}
}
</script>
<style lang="scss" scoped>
.inquiry-wrap{
box-sizing: border-box;
margin-bottom: 10px;
padding: 20px 34px;
background: #FFFFFF;
border-radius: 18px;
user-select: none;
min-width: 572px;
border: 1px solid #cccccc;
.line{
display: flex;
justify-content: space-between;
.left{
color: #02120F;
font-size: 28px;
.dep{
font-size: 20px;
}
.talk{
display: inline-block;
width: 120px;
height: 24px;
background: #F0F2F5;
border-radius: 23px;
font-size: 14px;
color: #6A7990;
text-align: center;
line-height: 24px;
}
.time{
display: inline-block;
width: 217px;
height: 24px;
background: #F0F2F5;
border-radius: 23px;
font-size: 14px;
color: #6A7990;
text-align: center;
line-height: 24px;
}
}
.right{
.right-status{
color: #0D9078;
font-size: 14px;
}
.right-time{
margin-top: 5px;
color: #6A7990;
font-size: 12px;
}
.grey{
color: #6A7990;
}
.org{
color: #FF5E57;
}
}
.inquiry-user{
display: flex;
width: 50%;
.inquiry-user-img{
width: 36px;
height: 36px;
background: #DDDDDD;
border-radius: 36px;
}
.inquiry-user-info{
font-size: 14px;
margin-left: 5px;
.info-name{
font-size: 18px;
color: #02120F;
font-weight: bold;
}
.info-phone{
color: #6A7990;
font-size: 16px;
}
.info-call-time{
color: #FF5E57;
}
.info-calling{
width: 15px;
height: 15px;
display: inline-block;
img{
width: 100%;
}
}
}
}
.line-btn{
position: relative;
width: 238px;
height: 37px;
background: rgba(68, 146, 132, 0.09);
border-radius: 23px;
border: 1px solid rgba(68, 146, 132, 0.31);
text-align: center;
line-height: 37px;
color: #0D9078;
font-size: 14px;
font-weight: bold;
.line-btn-tap{
position: absolute;
top: -10px;
right: 20px;
width: 48px;
height: 20px;
background: #0D9078;
border-radius: 7px 7px 7px 0px;
font-size: 14px;
color: #ffffff;
line-height: 20px;
}
}
}
.mt30{
margin-top: 30px;
}
.mt20{
margin-top: 20px;
}
.appointment{
width: 12px;
height: 12px;
display: inline-block;
background: url('../../assets/image/workbench/appointment.png') no-repeat;
background-size: cover;
}
.video{
width: 12px;
height: 12px;
display: inline-block;
background: url('../../assets/image/workbench/video.png') no-repeat;
background-size: cover;
}
.photo{
width: 12px;
height: 12px;
display: inline-block;
background: url('../../assets/image/workbench/photo.png') no-repeat;
background-size: cover;
}
.voice{
width: 12px;
height: 12px;
display: inline-block;
background: url('../../assets/image/workbench/voice.png') no-repeat;
background-size: cover;
}
}
</style>
......@@ -40,8 +40,9 @@ export default {
});
state.socketClient.on("diagnose_push_event", (socket) => {
console.log('diagnose_push_event---', socket);
const {list, countRespList} = socket;
const {list,allSize,countRespList} = socket;
store.commit('updateCurrentDiagList', list);
store.commit('updateAllSize', allSize);
store.commit('updateCurrentCalList', countRespList);
});
state.socketClient.on("diagnose_call_push_event", (socket) => {
......
......@@ -3,6 +3,9 @@ export default {
updateCurrentDiagList(state, obj) {
state.currentDiagList = obj;
},
updateAllSize(state,allSize){
state.allSize = allSize;
},
// 改变原数据
changeRawCurrentCalList(state,obj){
// console.log("obj",obj)
......
......@@ -2,6 +2,7 @@
export default {
currentDiagList:[],
allSize:0,
currentCalList:{},
RawCurrentCalList:[],
currentChat: {},
......
......@@ -4,7 +4,7 @@
<div class="header">
<!-- 面包屑 -->
<el-breadcrumb separator="/">
<el-breadcrumb-item >首页</el-breadcrumb-item>
<el-breadcrumb-item>首页</el-breadcrumb-item>
<el-breadcrumb-item>我的工作台</el-breadcrumb-item>
</el-breadcrumb>
<el-row style="margin-top: 30px">
......@@ -21,70 +21,26 @@
>
</el-date-picker>
</el-col>
<el-col :span="12" style="margin-lfet: 10px">
<div style="margin-left: 10px">
<div class="total">3519</div>
<div class="state">全部</div>
</div>
</el-col>
</el-row>
</div>
</el-col>
<el-col :span="12">
<div>
<el-row type="flex" justify="space-between">
<el-col :span="8">
<div>
<div class="total">3519</div>
<div class="state">全部</div>
</div>
</el-col>
<el-col :span="8">
<div>
<div class="total aa">3519</div>
<div class="state">全部</div>
</div>
</el-col>
<el-col :span="8">
<div>
<div class="total">3519</div>
<div class="state">全部</div>
</div>
</el-col>
<el-col :span="8">
<div>
<div class="total">3519</div>
<div class="state">全部</div>
</div>
</el-col>
</el-row>
</div>
</el-col>
</el-row>
</div>
<!-- 问诊列表 -->
<div class="box">
<div class="row" v-for="(item, index ) in operatorslist" :key="index">
<consultationlist :workbenchAdminDate="workbenchAdminDate" :operatorsItem="item"></consultationlist>
<div class="consultation-container">
<div class="consultation-content">
<div
class="consultation-li"
v-for="(item, index) in operatorslist"
:key="index"
>
<consultationlist
:workbenchAdminDate="workbenchAdminDate"
:operatorsItem="item"
></consultationlist>
</div>
</div>
</div>
<!-- 底部 -->
<!-- <div class="footer">-->
<!-- &lt;!&ndash; 分页 &ndash;&gt;-->
<!-- <el-row type="flex" justify="end">-->
<!-- <el-pagination-->
<!-- background-->
<!-- @size-change="handleSizeChange"-->
<!-- @current-change="handleCurrentChange"-->
<!-- :current-page="currentPage"-->
<!-- :page-sizes="[100, 200, 300, 400]"-->
<!-- :page-size="100"-->
<!-- layout="total, sizes, prev, pager, next"-->
<!-- :total="400"-->
<!-- >-->
<!-- </el-pagination>-->
<!-- </el-row>-->
<!-- </div>-->
</div>
</template>
......@@ -95,7 +51,9 @@ export default {
consultationlist,
},
data() {
const d = localStorage.getItem('workbenchAdminDate') || new Date().format('yyyy-MM-dd');
const d =
localStorage.getItem("workbenchAdminDate") ||
new Date().format("yyyy-MM-dd");
return {
workbenchAdminDate: d,
operatorslist: [],
......@@ -104,27 +62,26 @@ export default {
created() {
this.init();
},
watch:{
},
watch: {},
methods: {
init () {
init() {
this.GET("/diagnose/match/list").then(({ code, data }) => {
if (code == "000000") {
this.operatorslist = data;
}
});
}
},
},
};
</script>
<style lang="scss" scoped>
.administrators {
height: calc(100% - 76px);
.header {
padding: 40px 32px 0 32px;
padding: 30px;
width: 100%;
height: 181px;
background: #ffffff;
.el-input__inner {
width: 173px;
......@@ -167,19 +124,25 @@ export default {
line-height: 20px;
margin: 0 auto;
}
.aa {
color: #449284;
}
.box {
display: flex;
width: 100%;
flex-flow: row wrap;
align-content: flex-start;
min-height: 600px;
max-height: 700px;
.consultation-container {
overflow-y: scroll;
.row {
flex: 0 0 50%;
height: calc(100% - 154px);
width: 100%;
padding: 20px;
.consultation-content {
display: grid;
grid-template-columns: 33.3% 33.3% 33.3%;
grid-row-gap: 20px;
// grid-column-gap: 20px;
overflow: hidden;
.consultation-li {
width: 90%;
margin: 0 auto;
display: flex;
justify-content: center;
}
}
}
.footer {
......
<template>
<div class="diagnosis-list-content">
<div class="select-content screenSet content-top">
<div class="workbench-container">
<div class="select-content">
<div class="title">我的工作台</div>
<!-- 时间 -->
<el-row type="flex" justify="center">
<div id="picker">
<div class="block">
<div class="search-box">
<div class="search-item">
<el-date-picker
@change="changeDatetime"
v-model="searchParam.dateTime"
type="date"
size="small"
clear-icon="el-input-icon"
:clearable="false"
>
</el-date-picker>
</div>
<div class="search-item">
<el-input
size="small"
class="input-item"
v-model="searchParam.checkvalue"
placeholder="输入问诊单号/医生姓名"
></el-input>
</div>
<div>
<el-button type="primary" size="small" @click="search()"
>搜索</el-button
>
</div>
</el-row>
</div>
<!-- tab栏 -->
<el-radio-group
@change="tabChange"
......@@ -34,17 +48,17 @@
<!-- <el-radio-button label="1">待处理({{currentCalList}})</el-radio-button>-->
</el-radio-group>
</div>
<div class="select-content screenSet">
<div class="forbox">
<div class="workbench-content">
<div class="workbench-li" >
<div
class="for"
class="workbench"
v-for="(item, index) in currentDiagList"
:key="'for' + index"
:key="index"
>
<inquiryList-component :item="item"></inquiryList-component>
</div>
</div>
<el-row type="flex" justify="end">
<div class="pagination-container">
<el-pagination
background
@size-change="handleSizeChange"
......@@ -53,11 +67,13 @@
:page-sizes="[6, 12, 18, 24]"
:page-size="searchParam.pageSize"
layout="prev, pager, next, sizes, jumper"
:total="totalRows"
:total="allSize"
>
</el-pagination>
</el-row>
</div>
</div>
</div>
</template>
......@@ -72,6 +88,7 @@ export default {
},
computed: {
...mapState({
allSize:'allSize',
currentDiagList: "currentDiagList",
currentCalList: "currentCalList",
soketQuest: "soketQuest",
......@@ -105,10 +122,11 @@ export default {
return {
tabPosition: "1",
showChat: true,
totalRows: 40,
totalRows: 0,
loading: false,
searchParam: {
dateTime: d,
checkvalue: "", // 模拟值后去
operateUserId: id,
returnStatus: 1,
pageSize: 1,
......@@ -157,8 +175,13 @@ export default {
const s = this.searchParam;
s.dateTime = val.format("yyyy-MM-dd");
this.searchParam = s;
},
search() {
this.inquirySearch("clear");
},
handleSizeChange(val) {
const s = this.searchParam;
s.pageSize = val;
......@@ -254,24 +277,25 @@ export default {
}
}
}
.forbox {
display: flex;
justify-content: space-between;
// justify-content: space-between;
.for {
max-width: 50%;
display: flex;
}
}
.diagnosis-list-content {
.workbench-container {
.select-content {
margin-bottom: 10px;
padding: 10px;
padding:0 20px;
background: #fff;
overflow: hidden !important;
&.content-top {
padding-bottom: 0;
.search-box {
display: flex;
justify-content: flex-start;
width: 250px;
margin: 20px 0;
.search-item{
margin-right: 20px;
.input-item{
width: 333px;
}
}
}
.title {
height: 50px;
display: flex;
......@@ -285,16 +309,32 @@ export default {
}
}
}
}
.el-row {
margin-bottom: 20px;
&:last-child {
margin-bottom: 0;
.workbench-content{
padding: 20px;
.workbench-li {
display: flex;
justify-content: space-between;
.workbench {
max-width: 50%;
display: flex;
}
}
.pagination-container{
background-color: #fff;
height: 71px;
background: #FFFFFF;
border-radius: 18px;
display: flex;
justify-content: flex-end;
align-items: center;
margin-top: 10px;
padding: 0 20px;
}
}
}
.el-col {
border-radius: 4px;
}
.bg-purple-dark {
background: #99a9bf;
}
......@@ -317,8 +357,8 @@ export default {
background-color: #f9fafc;
}
@media screen and (min-width: 1900px) {
.forbox {
.for {
.workbench-li {
.workbench {
width: 30%;
}
}
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册