You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
450 lines
21 KiB
450 lines
21 KiB
<!-- 问诊医生列表 -->
|
|
<template>
|
|
<div class="doct-list__wrap">
|
|
<section class="header__box">
|
|
<nav-header title="医生列表"
|
|
:showTab="false"></nav-header>
|
|
</section>
|
|
<div style="height: 42px;"></div>
|
|
<div style="width: 100%; background: #ffffff">
|
|
<div class="header">
|
|
<div class="search">
|
|
<van-field v-model="searchText"
|
|
clearable
|
|
size="large"
|
|
label=""
|
|
left-icon="search"
|
|
placeholder="请输入医生名称查询"
|
|
enterkeyhint="send"
|
|
style="background: #f7f8fa;border-radius: 4px; width: calc(100% - 48px);align-items: center;padding: 0 10px;height: 34px;"
|
|
@clear="getDoctList('reflush')"
|
|
@keydown.enter="getDoctList('reflush')" />
|
|
<van-button type="primary"
|
|
size="small"
|
|
style="margin-top: 2px"
|
|
@click="getDoctList('reflush')">搜索</van-button>
|
|
</div>
|
|
<van-dropdown-menu active-color="#1989fa">
|
|
<van-dropdown-item v-model="job"
|
|
:title="job === -1 ? '职称' : ''"
|
|
:options="jobList"
|
|
@change="getDoctList('reflush')">
|
|
</van-dropdown-item>
|
|
<van-dropdown-item v-model="sort"
|
|
:title="sort === -1 ? '排序' : ''"
|
|
:options="sortList"
|
|
@change="getDoctList('reflush')" />
|
|
</van-dropdown-menu>
|
|
</div>
|
|
</div>
|
|
<div class="doctor-list__box">
|
|
<van-list id="list"
|
|
v-model:loading="loading"
|
|
:finished="finished"
|
|
:immediate-check="false"
|
|
finished-text=">_< 到底啦,别拉了~"
|
|
@load="onLoad"
|
|
style="flex-direction: column">
|
|
<div v-for="item in doctList"
|
|
:key="item.id">
|
|
<div class="item"
|
|
@click="handleTo(item)">
|
|
|
|
<template v-if="!item.headImg">
|
|
<div style="min-width: 65px;height: 65px;position: relative;overflow: hidden;border-radius: 50%;background-color: #fff;border: #fff solid 2px;">
|
|
<van-image class="doc__avatar"
|
|
:width="65"
|
|
:height="65"
|
|
round
|
|
src="data:image/png;base64,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" />
|
|
</div>
|
|
</template>
|
|
<template v-else>
|
|
<div style="min-width: 66px;height: 66px;position: relative;overflow: hidden;border-radius: 50%;background-color: #fff;border: #fff solid 2px;">
|
|
<van-image class="doc__avatar"
|
|
:width="66"
|
|
:height="88"
|
|
style="transform:translateY(-5px);clip-path: circle(31px at 33px 40px);"
|
|
:src="(item.headImg.indexOf('data:image/') !== -1 ? item.headImg : (UPLOAD_URL + item.headImg))" />
|
|
</div>
|
|
</template>
|
|
|
|
<div class="item__right">
|
|
<van-cell class="flex__row"
|
|
style="position: relative">
|
|
<div class="flex__row flex__row__between">
|
|
<section>
|
|
<span class="name">{{ item.doctName }}</span>
|
|
<span class="job_title">{{ item.title }}</span>
|
|
</section>
|
|
<span v-if="item.onlineState && item.onlineState === 1"
|
|
class="stop">可约</span>
|
|
</div>
|
|
</van-cell>
|
|
<van-cell class="flex__row">
|
|
<span class="department">{{ item.deptName }}</span>
|
|
</van-cell>
|
|
<van-cell class="flex__row">
|
|
<span class="label">咨询
|
|
<span class="number">{{
|
|
!item.consultNum ? 0 : item.consultNum
|
|
}}</span></span>
|
|
<span class="label"
|
|
style="margin: 0 15px">粉丝
|
|
<span class="number">{{
|
|
!item.concernNum ? 0 : item.concernNum
|
|
}}</span></span>
|
|
<span class="label">访问
|
|
<span class="number">{{
|
|
!item.visitNum ? 0 : item.visitNum
|
|
}}</span></span>
|
|
</van-cell>
|
|
<van-cell v-if="item.skill"
|
|
class="flex__row flex__row__warp">
|
|
<span class="label">擅长:</span><span style="font-size: 12px">{{
|
|
!item.skill ? "" : item.skill.replace("擅长:", "")
|
|
}}</span>
|
|
</van-cell>
|
|
<van-cell>
|
|
<div class="flex__row flex__row__between">
|
|
<section>
|
|
<span class="price">¥{{
|
|
item.consultMoney === undefined ||
|
|
item.consultMoney === null
|
|
? " - "
|
|
: item.consultMoney
|
|
}}
|
|
元起</span>
|
|
</section>
|
|
<div v-if="false"
|
|
style="padding-right: 10px; font-size: 13px; color: #7d7d7d;">
|
|
余 0个
|
|
</div>
|
|
</div>
|
|
</van-cell>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</van-list>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
|
|
<script>
|
|
import { reactive, toRefs } from 'vue';
|
|
import { useRoute, useRouter } from 'vue-router';
|
|
import { axios, UPLOAD_URL } from 'axios'
|
|
export default {
|
|
components: {
|
|
'nav-header': VueConfig.vueLoader('@/components/tab-router.vue'),
|
|
},
|
|
setup(props, context) {
|
|
const route = useRoute();
|
|
const router = useRouter();
|
|
|
|
const state = reactive({
|
|
searchText: '', // 搜索内容
|
|
jobList: [
|
|
{ text: '不限', value: -1 },
|
|
{ text: '主任医师', value: 231 },
|
|
{ text: '副主任医师', value: 232 },
|
|
{ text: '主治医师', value: 233 },
|
|
{ text: '医师', value: 234 }
|
|
],
|
|
sortList: [
|
|
{ text: '不限', value: 0 },
|
|
{ text: '咨询次数', value: 1 },
|
|
{ text: '关注人数', value: 2 },
|
|
{ text: '访问次数', value: 3 }
|
|
],
|
|
job: -1,
|
|
sort: 0,
|
|
loading: false, // 列表加载状态
|
|
finished: false, // 列表加载全部
|
|
doctList: [], // 医生列表,
|
|
pageNum: 1,
|
|
deptCode: route.query.deptCode, // 科室列表
|
|
refresh_loading: false // 下拉加载
|
|
})
|
|
|
|
const isTest = route.query.isTest === undefined || !eval(route.query.isTest) ? false : true
|
|
|
|
/**
|
|
* 跳转到医生详情页
|
|
* @param {Object} item 医生
|
|
*/
|
|
function handleTo(item) {
|
|
if (item.consultMoney === undefined || item.consultMoney === null) return vant.Toast.fail({ duration: 1000, message: '【提示】该医生的问诊订单价格未录入' })
|
|
|
|
if (!item.onlineState) return vant.Toast.fail({ duration: 1000, message: '【提示】该医生暂未开启在线咨询' })
|
|
|
|
router.push({
|
|
path: '/doctor-home',
|
|
query: {
|
|
doctCode: item.doctCode,
|
|
isAddVisit: true
|
|
}
|
|
})
|
|
}
|
|
/**
|
|
* 获取医生列表
|
|
*/
|
|
async function getDoctList(status) {
|
|
if (status === 'reflush') {
|
|
state.pageNum = 1
|
|
state.finished = false
|
|
state.doctList = []
|
|
comTime = new Date().getTime()
|
|
}
|
|
const resp = await axios.RGet('/micro/online_doctor/getOLDocList', {
|
|
pageNum: state.pageNum,
|
|
pageSize: 20,
|
|
deptCode: state.deptCode === -1 ? '' : state.deptCode,
|
|
doctTitleCode: state.job === -1 ? '' : state.job,
|
|
sortState: state.sort === -1 ? '' : state.sort,
|
|
key: state.searchText,
|
|
isTest: isTest
|
|
})
|
|
if (resp.code === 200) {
|
|
if (status === 'reflush') {
|
|
state.doctList = resp.data.list
|
|
state.loading = false
|
|
} else {
|
|
setTimeout(() => {
|
|
resp.data.list.forEach(item => {
|
|
state.doctList.push(item)
|
|
})
|
|
state.loading = false
|
|
}, 500)
|
|
}
|
|
if (state.doctList.length === resp.data.total) {
|
|
state.finished = true
|
|
}
|
|
}
|
|
state.refresh_loading = false
|
|
}
|
|
getDoctList('reflush')
|
|
|
|
/**
|
|
* 滚动加载医生数据
|
|
*/
|
|
let comTime = 0
|
|
function onLoad() {
|
|
if (new Date().getTime() - comTime < 1000) {
|
|
return
|
|
} else if (state.pageNum === 1) {
|
|
comTime = new Date().getTime()
|
|
}
|
|
state.pageNum += 1
|
|
getDoctList('add')
|
|
}
|
|
/**
|
|
* 下来刷新
|
|
*/
|
|
function onRefresh() {
|
|
getDoctList('reflush')
|
|
}
|
|
|
|
return {
|
|
...toRefs(state),
|
|
handleTo,
|
|
getDoctList,
|
|
onLoad,
|
|
UPLOAD_URL,
|
|
onRefresh
|
|
}
|
|
},
|
|
}
|
|
</script>
|
|
<style scoped>
|
|
.doct-list__wrap {
|
|
height: calc(100vh - 30px);
|
|
overflow-x: hidden;
|
|
overflow-y: hidden;
|
|
width: 100%;
|
|
max-width: 767px;
|
|
background: #fff;
|
|
}
|
|
|
|
.header__box {
|
|
background: #fff;
|
|
z-index: 2;
|
|
position: fixed;
|
|
width: 100%;
|
|
margin: 0 auto;
|
|
max-width: 767px;
|
|
box-shadow: 2px 2px 9px rgba(0, 0, 0, 0.15);
|
|
}
|
|
|
|
.header {
|
|
width: 100%;
|
|
/* margin-top: 40px; */
|
|
border-bottom: 1px solid rgb(245, 244, 244);
|
|
/* margin-bottom: 5px; */
|
|
}
|
|
|
|
.search {
|
|
padding: 10px 10px 10px 12px;
|
|
display: flex;
|
|
justify-content: space-between;
|
|
}
|
|
|
|
.search>>>.van-field__control {
|
|
margin: auto 0;
|
|
}
|
|
|
|
.search__input>>>.van-search__content {
|
|
border-radius: 6px;
|
|
}
|
|
|
|
.van-dropdown-menu {
|
|
width: calc(100% - 0px);
|
|
margin: 0 auto 5px;
|
|
}
|
|
|
|
.doct-list__wrap>>>.van-dropdown-menu__bar {
|
|
background: #ffffff;
|
|
box-shadow: none;
|
|
}
|
|
|
|
.doct-list__wrap>>>.van-dropdown-menu__bar {
|
|
height: 28px;
|
|
}
|
|
|
|
.doct-list__wrap>>>.van-dropdown-menu__title {
|
|
font-size: 12px;
|
|
color: #89898a;
|
|
}
|
|
|
|
.doct-list__wrap>>>#van-dropdown-menu-3-0::after,
|
|
.doct-list__wrap>>>#van-dropdown-menu-3-1::after {
|
|
position: relative;
|
|
content: '';
|
|
height: 70%;
|
|
width: 1px;
|
|
left: 30px;
|
|
background: rgb(239, 239, 239);
|
|
}
|
|
|
|
.doct-list__wrap :deep(.van-dropdown-item--down) {
|
|
max-width: 767px;
|
|
margin: 0 auto;
|
|
}
|
|
|
|
.doctor-list__box {
|
|
width: 100%;
|
|
height: calc(100vh - 162px);
|
|
box-sizing: border-box;
|
|
padding: 10px;
|
|
overflow-y: auto;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
.item {
|
|
width: calc(100% - 0px);
|
|
display: flex;
|
|
flex-direction: row;
|
|
justify-content: space-around;
|
|
padding: 10px 0;
|
|
border-bottom: 1px solid rgb(245, 244, 244);
|
|
position: relative;
|
|
}
|
|
|
|
.item__left {
|
|
text-align: center;
|
|
min-height: 90px;
|
|
min-width: 70px;
|
|
margin-top: 7px;
|
|
}
|
|
|
|
.gray {
|
|
-webkit-filter: grayscale(95%);
|
|
-moz-filter: grayscale(95%);
|
|
-ms-filter: grayscale(95%);
|
|
-o-filter: grayscale(95%);
|
|
filter: grayscale(95%);
|
|
filter: gray;
|
|
}
|
|
|
|
.item__right {
|
|
width: calc(100% - 70px);
|
|
font-size: 12px !important;
|
|
margin-left: 5px;
|
|
}
|
|
|
|
.van-cell {
|
|
padding: 0px 5px;
|
|
}
|
|
|
|
.van-cell:after {
|
|
border-bottom: 0px;
|
|
}
|
|
|
|
.item__right .name {
|
|
font-size: 13px;
|
|
font-weight: 550;
|
|
margin-right: 10px;
|
|
}
|
|
|
|
.item__right .department {
|
|
font-size: 12px;
|
|
color: #0e0d0d;
|
|
}
|
|
|
|
.item__right .job_title {
|
|
font-size: 12px;
|
|
color: #b4b4b6;
|
|
}
|
|
|
|
.item__right .hospital {
|
|
font-size: 12px;
|
|
color: #b4b4b6;
|
|
}
|
|
|
|
.item__right .label {
|
|
font-size: 12px;
|
|
color: #848485;
|
|
}
|
|
|
|
.item__right .number {
|
|
font-size: 13px;
|
|
color: #0e0d0d;
|
|
}
|
|
|
|
.item__right .price {
|
|
font-size: 13px;
|
|
color: #e88d82;
|
|
}
|
|
|
|
.item__right .pay__times {
|
|
font-size: 12px;
|
|
margin-left: 10px;
|
|
}
|
|
|
|
.van-tag {
|
|
margin: 0 5px 5px 0;
|
|
padding: 4px 10px;
|
|
border-radius: 5px;
|
|
}
|
|
|
|
.van-tag--plain:before {
|
|
border-color: #e9e9e9;
|
|
}
|
|
|
|
.van-tag--danger {
|
|
background: #cf6046;
|
|
}
|
|
|
|
.stop {
|
|
margin: 0 8px;
|
|
padding: 0px 4px;
|
|
border-radius: 4px;
|
|
background-color: var(--color-primary);
|
|
color: #fff;
|
|
font-size: 12px;
|
|
}
|
|
|
|
.doc__avatar {
|
|
border-radius: 50%;
|
|
}
|
|
</style>
|
|
|