作者 韩昌

提交一次

... ... @@ -119,9 +119,9 @@
:isSend="true"
/>
</u-popup>
<u-modal :show="showPrescriptionDetailState" :title="`处方单详情`" @confirm="showPrescriptionDetailState = false">
<!-- <u-modal :show="showPrescriptionDetailState" :title="`处方单详情`" @confirm="showPrescriptionDetailState = false">
<ViewPrescription :orderId="Event.orderId" @click="showPrescriptionDetailState = false" />
</u-modal>
</u-modal> -->
<u-modal :show="showUserCardDetailState" :title="``" :showConfirmButton="false" closeOnClickOverlay @close="showUserCardDetailState = false">
<view class="slot-content" @click="showUserCardDetailState = false">
<view class="text mb24">问诊类型:{{ proxy.$h.optObjectValue('consultationWay', detailData.consultationWay) || '未设置' }}</view>
... ... @@ -148,12 +148,15 @@
</view>
</view>
</u-modal>
<u-popup :show="showPrescriptionDetailState" @close="showPrescriptionDetailState = false" mode="bottom" closeIconPos="top-right" closeable round="20">
<Prescription :showTopState="false" :PrescriptionDetail="PrescriptionDetail" bg="linear-gradient(188deg, #E0FFF4 5.54%, #FFF 24.89%)" :title="`${detailData?.user?.nickname}的处方单`" :isRenew="'err'" :showStep="`err`" />
</u-popup>
</template>
<script lang="ts">
import { defineComponent, reactive, toRefs, computed, nextTick, watch, onMounted, shallowRef, getCurrentInstance, ComponentPublicInstance, ref, onUnmounted, onBeforeUnmount } from 'vue'
import { onReady, onLoad, onNavigationBarButtonTap, onUnload } from '@dcloudio/uni-app'
import { updateSend_prescription_form, getConsultation_information_detail, getEndInformation, getReceive_diagnosis, getOrder_chat } from '@/api'
import { updateSend_prescription_form, getConsultation_information_detail, getEndInformation, getReceive_diagnosis, getOrder_chat, getPrescription_detail_information } from '@/api'
// 消息元素组件
import MessageBubble from './components/message-elements/message-bubble.vue'
import MessageText from './components/message-elements/message-text.vue'
... ... @@ -172,8 +175,9 @@ import UserInfoCard from '@/components/UserInfoCard'
import ConversationEnd from '@/components/ConversationEnd'
import SendPrescription from '@/components/SendPrescription'
import ViewPrescription from '@/components/ViewPrescription'
import Prescription from '@/pages2/order/com/Prescription.vue'
import store from '../../TUICore/store'
import type { DiaLogEventType, Consultation_information_detailType } from '../../../types'
import type { DiaLogEventType, Consultation_information_detailType, PrescriptionDetailType } from '../../../types'
import { emojiMap } from '../../utils/emojiMap'
import {
handleAvatar,
... ... @@ -195,7 +199,25 @@ import { TUIChatServer } from '../../TUICore/server'
export default defineComponent({
name: 'TUIChat',
components: { MessageText, MessageImage, MessageVideo, MessageAudio, MessageFace, MessageCustom, MessageBubble, MessageTip, MessageRevoked, MessageSystem, TUIChatInput, MessageOperate, UserInfoCard, ConversationEnd, SendPrescription, ViewPrescription },
components: {
MessageText,
MessageImage,
MessageVideo,
MessageAudio,
MessageFace,
MessageCustom,
MessageBubble,
MessageTip,
MessageRevoked,
MessageSystem,
TUIChatInput,
MessageOperate,
UserInfoCard,
ConversationEnd,
SendPrescription,
ViewPrescription,
Prescription
},
setup(props) {
const { proxy } = getCurrentInstance() as { proxy: ComponentPublicInstance }
... ... @@ -238,7 +260,8 @@ export default defineComponent({
},
imUserId: '',
historyList: [] as any,
navbarTitle: ''
navbarTitle: '',
PrescriptionDetail: {}
})
// 判断当前会话类型:无/系统会话/正常C2C、群聊
... ... @@ -388,6 +411,10 @@ export default defineComponent({
data.detailData = result
const { result: Pdetail }: { result: PrescriptionDetailType } = await getPrescription_detail_information({ id: data.Event.orderId })
data.PrescriptionDetail = Pdetail
if (data.history === 'success') getOrder_chatHandler(true)
}
... ...
... ... @@ -13,14 +13,16 @@
<image src="/static/images/xin.png" class="navbar-icon" mode="aspectFill" @click="proxy.$h.jumpUrl(`/pages2/message/index`)" />
<view class="dot" v-if="props.showDot"></view>
</view>
<image
v-if="props.isShowQrCode"
src="/static/images/mineqr.png"
class="navbar-icon"
mode="aspectFill"
style="margin-right: 0"
@click=";[20, '20'].includes(props.examineState) ? proxy.$h.jumpUrl(`/pages2/mineinfo/qrcode`) : $u.toast('请先完成认证')"
/>
<view>
<image
v-if="props.isShowQrCode"
src="/static/images/mineqr.png"
class="navbar-icon"
mode="aspectFill"
style="margin-right: 0"
@click=";[20, '20'].includes(props.examineState) ? proxy.$h.jumpUrl(`/pages2/mineinfo/qrcode`) : $u.toast('请先完成认证')"
/>
</view>
</view>
<view v-else></view>
</template>
... ...
... ... @@ -104,6 +104,7 @@
</view>
</view>
</view>
<view style="height: 60rpx"></view>
</template>
</u-form>
... ... @@ -369,7 +370,6 @@ onShow(() => {
</style>
<style lang="scss" scoped>
.step {
&-top {
background: #fff;
box-sizing: border-box;
... ...
<template>
<u-sticky bgColor="#06b9d3" zIndex="999999999999999999999999">
<u-navbar title="我的评论" :autoBack="true" bgColor="#06b9d3" placeholder safeAreaInsetTop :titleStyle="{ color: '#fff' }" leftIconColor="#fff"></u-navbar>
<u-navbar title="我的评论" :autoBack="true" bgColor="#06b9d3" safeAreaInsetTop :titleStyle="{ color: '#fff' }" leftIconColor="#fff"></u-navbar>
<u-tabs :list="list1" @click="clickTabsItemHandler" lineColor="#fff" lineWidt="18" lineHeight="3" :scrollable="false" :activeStyle="{ fontSize: '34rpx', color: '#fff', fontWeight: 700 }" :inactiveStyle="{ fontSize: '34rpx', color: '#fff' }"></u-tabs>
</u-sticky>
<image src="/static/images/commentBg.png" class="mineCom-bg" mode="aspectFill" />
... ... @@ -8,17 +8,24 @@
<view class="mineCom Zindex">
<template v-if="pageList.records.length">
<view class="mineCom-item" v-for="_ in pageList?.records" :key="_.id">
<view class="flexJ" style="margin-bottom: 50rpx">
<view class="" style="margin-bottom: 50rpx">
<view class="flexA">
<image :src="_?.user?.avatar ? proxy.$h.downFile(_?.user?.avatar) : '/static/images/commentBg.png'" class="mineCom-avatar" mode="aspectFill" />
<view class="mineCom-username">{{ _?.user?.nickname }}</view>
<view class="mineCom-toptag" v-if="_?.consultationWay">{{ proxy.$h.optObjectValue('consultationWay', _?.consultationWay) }}</view>
<view>
<image :src="_?.user?.avatar ? proxy.$h.downFile(_?.user?.avatar) : '/static/images/commentBg.png'" class="mineCom-avatar" mode="aspectFill" />
</view>
<view>
<view class="flexA">
<view class="mineCom-username">{{ _?.user?.nickname }}</view>
<view class="mineCom-toptag" v-if="_?.consultationWay">{{ proxy.$h.optObjectValue('consultationWay', _?.consultationWay) }}</view>
</view>
<view class="mineCom-time">{{ _?.time }}</view>
</view>
</view>
</view>
<view class="mineCom-time">{{ _?.time }}</view>
<view class="flexA" style="margin-bottom: 16rpx">
<view class="mineCom-text">评分:</view>
<view style="margin-right: 6rpx; color: #ffc525">{{ _?.star }}分</view>
<view style="margin-right: 6rpx; color: #ffc525; font-size: 26rpx">{{ _?.star }}分</view>
<u-rate :count="5" v-model="_.star" allowHalf activeColor="#ffc525" readonly></u-rate>
</view>
<view class="mineCom-text">评价:{{ _?.content }}</view>
... ... @@ -147,6 +154,8 @@ page {
&-time {
color: #999999;
font-size: 26rpx;
margin-left: 16rpx;
margin-top: 8rpx;
}
&-toptag {
color: #05b8d2;
... ...
... ... @@ -129,6 +129,9 @@ onLoad((e: EventType) => {
font-weight: 700;
}
}
:deep(.u-icon__icon) {
font-size: 30rpx !important;
}
:deep(.u-input) {
padding: 26rpx 9px !important;
font-size: 36rpx !important;
... ...
... ... @@ -4,7 +4,8 @@
<view style="background-color: #fff">
<u-cell-group>
<template v-for="(_, index) in mineinfo">
<u-cell :title="_.title" :isLink="![1, 5].includes(index)">
<u-cell :title="_.title" :isLink="![1, 6].includes(index)">
<!-- <u-cell :title="_.title" isLink> -->
<template #value>
<template v-if="_.type === 'jump'">
<text class="info-text" @click="proxy.$h.jumpUrl(`${_.url}?flag=${_.flag}&title=${_.title}&isMyInfo=${_.isMyInfo}`)" :style="{ color: !['请选择', '暂无手机号'].includes(_.text) ? '#000' : '#999' }">{{ _.text }}</text>
... ... @@ -13,15 +14,18 @@
<text class="info-text" @click="showSelectSex = true" :style="{ color: _.text !== '请选择' ? '#000' : '#999' }">{{ _.text !== '请选择' ? proxy.$h.optObjectValue('sexData', _.text) : _.text }}</text>
</template>
<template v-if="_.type === 'upload'"><image @click="uploadAvatarHandler" class="info-avatar" :src="proxy.$h.downFile(_.imgUrl) || '/static/images/mAvatar.png'" mode="aspectFill" /></template>
<template v-if="_.type === 'input'"><up-input v-model="form[_.keyName]" :disabled="_.disabled" :placeholder="_.text" border="none" inputAlign="right" disabledColor="#fff"></up-input></template>
<template v-if="_.type === 'textarea'"><u-textarea v-model="form[_.keyName]" :placeholder="_.text" border="none" height="30"></u-textarea></template>
<template v-if="['input'].includes(_.type)"><up-input v-model="form[_.keyName]" :disabled="_.disabled" :placeholder="_.text" border="none" inputAlign="right" maxlength="11" disabledColor="#fff"></up-input></template>
</template>
</u-cell>
<view class="grayLine" v-if="index === mineinfo.length - 2"></view>
</template>
</u-cell-group>
</view>
<view style="box-sizing: border-box; padding: 36rpx 30rpx">
<view style="font-size: 15px; color: #303133; margin-bottom: 22rpx">个人介绍</view>
<u-textarea v-model="form['introduction']" :placeholder="`介绍一下自己吧`" border="none" count maxlength="200"></u-textarea>
</view>
<view class="main">
<view class="zhu" style="color: red">*注:昵称可输入1-12个字,一个月只能修改一次</view>
<up-button color="#05B8D2" shape="circle" text="保存" throttleTime="1500" @click="confirmEditUserInfoHandler"></up-button>
... ... @@ -52,9 +56,9 @@ const mineinfo = ref([
{ keyName: 'sex', title: '性别', text: '请选择', type: 'selectData' },
{ keyName: 'phone', title: '手机号', text: '暂无手机号', type: 'jump', url: '/pages2/mineinfo/phone' },
{ keyName: 'hospital', title: '坐诊医院', text: '请选择', type: 'jump', url: '/pages2/mineinfo/hospitalList', isMyInfo: 1, flag: 'ZUOZHENYIYUAN' },
{ keyName: 'introduction', title: '个人介绍', text: '介绍一下自己吧', type: 'textarea' },
// { keyName: '', title: '标签', text: '请选择', type: 'jump', url: '/pages2/mineinfo/tag', flag: '' }, // 个人标签暂不可编辑
{ keyName: 'department', title: '科室', text: '请选择', type: 'jump', url: '/pages2/mineinfo/hospitalList', flag: 'KESHI' }
// { keyName: 'introduction', title: '个人介绍', text: '介绍一下自己吧', type: 'textarea' }
])
const form = ref<{
... ... @@ -74,6 +78,8 @@ const sexList = [
{ title: '女', value: 2 }
]
const textareaHeight = ref<number>(20)
const selectSexHandler = (value: number) => ((mineinfo.value[2].text = value + ''), (showSelectSex.value = false))
const uploadAvatarHandler = () => proxy.$h.upload('/sys/common/upload', (e: { upImg: string }) => (mineinfo.value[0].imgUrl = e.upImg))
... ... @@ -87,7 +93,7 @@ const getInfoHandler = async () => {
mineinfo.value[1].disabled = !Boolean(result?.isCanUpdateNickName)
mineinfo.value[6].text = form.value.department.length ? form.value.department.map((_: { id: string; name: string }) => _.name).join() : '请选择'
mineinfo.value[5].text = form.value.department.length ? form.value.department.map((_: { id: string; name: string }) => _.name).join() : '请选择'
mineinfo.value[4].text = !['', null, undefined].includes(result.hospital) ? result.hospitalName : '请选择'
... ... @@ -104,6 +110,10 @@ const getInfoHandler = async () => {
form.value.introduction = result.introduction
}
const linechangeHandler = e => {
textareaHeight.value = e.detail.height
}
const confirmEditUserInfoHandler = async () => {
await updateChange_userinfo({
...form.value,
... ... @@ -149,6 +159,21 @@ page {
:deep(.u-line) {
display: none !important;
}
:deep(.u-cell__body) {
box-sizing: border-box;
padding: 30rpx 30rpx;
height: fit-content;
}
:deep(.u-textarea__field) {
color: #000;
font-size: 30rpx;
}
:deep(.uni-input-input) {
font-size: 30rpx;
}
:deep(.u-textarea) {
border-radius: 22rpx;
}
.main {
box-sizing: border-box;
padding: 0 24rpx;
... ...
... ... @@ -5,7 +5,7 @@
<view class="flexC ti">你可以用该手机号直接登录****短信通知</view>
<view class="flexC bl">已绑定手机号</view>
<view class="flexC nu">{{ UserInfo.phone.replace(/(\d{3})\d{4}(\d{4})/, '$1****$2') }}</view>
<up-button color="#E4F8F9" shape="circle" icon="更换手机号" iconColor="#05B8D2" throttleTime="1500" @click="proxy.$h.jumpUrl(`/pages2/mineinfo/editphone?type=editphone`)"></up-button>
<up-button color="#E4F8F9" shape="circle" icon="更换手机号" iconColor="#05B8D2" throttleTime="1500" @click="proxy.$h.jumpUrl(`/pages2/mineinfo/editphone?type=editphone`)" :customStyle="{ fontSize: '16px' }"></up-button>
</view>
</template>
... ... @@ -18,6 +18,9 @@ const UserInfo = uni.getStorageSync('UserInfo')
</script>
<style lang="scss" scoped>
:deep(.u-icon__icon) {
font-size: 32rpx !important;
}
.phone {
box-sizing: border-box;
padding: 102rpx 64rpx 0;
... ... @@ -34,7 +37,6 @@ const UserInfo = uni.getStorageSync('UserInfo')
.bl {
color: #333333;
font-size: 30rpx;
font-weight: 700;
margin-bottom: 20rpx;
}
.nu {
... ...
... ... @@ -15,7 +15,7 @@
<view class="blueSText" v-else>{{ proxy.$h.optObjectValue('state', props.item?.orderState) || '未知' }}</view>
</view>
<view class="flexA" style="margin-bottom: 16rpx" @click="clickOrderItemHandler">
<view style="margin-bottom: 16rpx; display: flex" @click="clickOrderItemHandler">
<view class="messagetext flex1">
<text class="graytext">就诊宠物:</text>
<!-- 蓝猫/2岁/女绝/育/1kg -->
... ... @@ -40,10 +40,10 @@
<view class="moneytext flexD" v-if="!props.isPrescriptionDrug && !props.isRecord">¥{{ props.item?.award || 0 }}/预计收入</view>
<view class="flexD">
<view class="flexW" v-if="!props.isPrescriptionDrug">
<up-button type="info" v-if="props.item?.orderId !== null" shape="circle" text="处方单" throttleTime="1500" :customStyle="{ width: '170rpx', marginRight: '20rpx' }" @click="showPrHandler"></up-button>
<up-button type="info" @click="clickOrderItemHandler" shape="circle" text="查看症状" throttleTime="1500" :customStyle="{ width: '170rpx', marginRight: '20rpx' }"></up-button>
<up-button type="info" v-if="props.isRecords === 'success'" @click="AcceptHandler('success')" shape="circle" text="问诊记录" throttleTime="1500" :customStyle="{ width: '170rpx', marginRight: '20rpx' }"></up-button>
<up-button color="#05B8D2" v-if="[20, '20'].includes(props.item?.orderState)" @click="AcceptHandler('err')" shape="circle" text="接诊" throttleTime="1500" :customStyle="{ width: '170rpx', marginRight: '20rpx' }"></up-button>
<up-button type="info" v-if="props.item?.orderId !== null" shape="circle" text="处方单" throttleTime="1500" :customStyle="{ width: '170rpx', height: '64rpx', marginRight: '20rpx' }" @click="showPrHandler"></up-button>
<up-button type="info" @click="clickOrderItemHandler" shape="circle" text="查看症状" throttleTime="1500" :customStyle="{ width: '170rpx', height: '64rpx', marginRight: '20rpx' }"></up-button>
<up-button type="info" v-if="props.isRecords === 'success'" @click="AcceptHandler('success')" shape="circle" text="问诊记录" throttleTime="1500" :customStyle="{ width: '170rpx', height: '64rpx', marginRight: '20rpx' }"></up-button>
<up-button color="#05B8D2" v-if="[20, '20'].includes(props.item?.orderState)" @click="AcceptHandler('err')" shape="circle" text="接诊" throttleTime="1500" :customStyle="{ width: '170rpx', height: '64rpx', marginRight: '20rpx' }"></up-button>
<up-button
color="#05B8D2"
v-if="[30, '30'].includes(props.item?.orderState) && [null, undefined, ''].includes(props.item?.orderId)"
... ... @@ -57,7 +57,7 @@
shape="circle"
text="填写处方单"
throttleTime="1500"
:customStyle="{ width: '170rpx', marginRight: '20rpx' }"
:customStyle="{ width: '170rpx', height: '64rpx', marginRight: '20rpx' }"
></up-button>
<up-button
color="#05B8D2"
... ... @@ -67,7 +67,7 @@
shape="circle"
text="结束问诊"
throttleTime="1500"
:customStyle="{ width: '170rpx', marginRight: '20rpx', fontWeight: 700 }"
:customStyle="{ width: '170rpx', height: '64rpx', marginRight: '20rpx', fontWeight: 700 }"
></up-button>
</view>
<view class="flexA" v-else>
... ... @@ -77,10 +77,10 @@
v-if="[null, '', undefined].includes(props.item?.expressNo) && [1, '1', 2, '2'].includes(props.item?.orderState)"
text="上传单号"
throttleTime="1500"
:customStyle="{ width: '170rpx', marginRight: '20rpx' }"
:customStyle="{ width: '170rpx', height: '64rpx', marginRight: '20rpx' }"
@click="proxy.$h.jumpUrl(`/pages2/order/PrescriptionDetail?id=${props.item.id}&isShowUpload=success&orderRenewId=${props.item.orderRenewId}&isRenew=${props.item?.isAgain == 1 ? 'success' : 'err'}&order=Prescription`)"
></up-button>
<up-button type="info" shape="circle" text="查看详情" throttleTime="1500" :customStyle="{ width: '170rpx', marginRight: '20rpx' }" @click="clickOrderItemHandler"></up-button>
<up-button type="info" shape="circle" text="查看详情" throttleTime="1500" :customStyle="{ width: '170rpx', height: '64rpx', marginRight: '20rpx' }" @click="clickOrderItemHandler"></up-button>
</view>
</view>
</view>
... ... @@ -273,6 +273,7 @@ const getEndInformationHandler = async () => {
font-size: 24rpx;
font-weight: 700;
margin-left: 16rpx;
height: min-content;
}
.tag {
color: #05b8d2;
... ...
... ... @@ -6,7 +6,7 @@
<view class="Prescription">
<view class="Prescription-title flexC" v-if="props.title">{{ props.title }}</view>
<template v-if="!props.showX">
<template v-if="!props.showX && props.isRenew != 'success'">
<view class="text mb24">问诊病情:</view>
<view class="text mb24">{{ PrescriptionDetail?.prescriptionForm || '病情描述' }}</view>
</template>
... ... @@ -20,19 +20,24 @@
</template>
<view class="text mb24">处方药:</view>
<view class="list">
<view class="flexJ" v-for="(_, index) in props.isRenew === 'err' ? PrescriptionDetail?.drugList : PrescriptionDetail?.renewDrugList" :key="index" style="margin-bottom: 42rpx">
<view
class="flexJ"
v-for="(_, index) in props.isRenew === 'err' ? PrescriptionDetail?.drugList : PrescriptionDetail?.renewDrugList"
:key="index"
:style="index === (props.isRenew === 'err' ? PrescriptionDetail?.drugList : PrescriptionDetail?.renewDrugList)?.length ? 'margin-bottom: 42rpx' : 'margin-bottom: 0'"
>
<view>
<view class="blacktext" style="margin-bottom: 8rpx">{{ _.name || '' }}</view>
<view class="blacktext" style="margin-bottom: 8rpx; font-weight: 700">{{ _.name || '' }}</view>
<view class="graytext">{{ _.des || '' }}</view>
</view>
<view>
<view class="blacktext" style="margin-bottom: 8rpx">¥{{ _.amount || 0 }}</view>
<view class="blacktext" style="margin-bottom: 8rpx; font-weight: 700">¥{{ _.amount || 0 }}</view>
<view class="graytext">x{{ _.num || 0 }}</view>
</view>
</view>
</view>
<view>
<view class="text">处方单证明</view>
<view class="text" style="margin-bottom: 12rpx">处方单证明:</view>
<view class="flexW">
<template v-if="typeof PrescriptionDetail?.prescriptionFile === 'string'">
<template v-for="_ in PrescriptionDetail?.prescriptionFile.split(',')">
... ... @@ -41,7 +46,7 @@
</template>
</view>
</view>
<view class="flexJ mb24">
<view class="flexJ mb24" style="margin-top: 24rpx">
<view class="text">总金额</view>
<view class="blacktext">¥{{ amount || 0 }}</view>
</view>
... ... @@ -147,7 +152,6 @@ const CustomBackground = ref(props.bg)
.text {
color: #323233;
font-size: 28rpx;
font-weight: 700;
}
.blacktext {
color: #323233;
... ...
... ... @@ -23,7 +23,7 @@
:isPrescriptionDrug="Boolean(orderState)"
:isRecords="Event?.isRecords"
:bg="Event?.isRecords === 'success' ? 'linear-gradient(188deg, #E0FFF4 5.54%, #FFF 24.89%)' : '#fff'"
:isRecord="false"
:isRecord="Event?.isRecords === 'success' ? true : false"
:item="_"
@editIsJumpHandler="e => (isJump = e)"
@fetchOrderListHandler="orderStore.getOrderListHandler(true, orderState, subOrderState)"
... ...
... ... @@ -15,8 +15,8 @@
<view>
<view class="flexA" style="margin-bottom: 4rpx">
<view class="symptom-username">{{ detailData?.user?.nickname || '暂无' }}</view>
<view class="symptom-tag flexC">{{ proxy.$h.optObjectValue('consultationWay', detailData?.consultationWay) || '未设置' }}</view>
</view>
<view class="symptom-tag flexC">{{ proxy.$h.optObjectValue('consultationWay', detailData?.consultationWay) || '未设置' }}</view>
<view class="symptom-cla">
{{ detailData?.petName }} /{{ detailData?.petClass || '品种未知' }}/{{ detailData?.age || '年龄未知' }}/ {{ proxy.$h.optObjectValue('petSex', detailData?.petSex) || '性别未知' }} /
... ... @@ -61,11 +61,12 @@
</view> -->
</view>
<view style="height: 200rpx"></view>
<view class="fixed-bottom" v-if="[30, '30', 20, '20'].includes(detailData?.orderState)">
<view class="fixed-bottom" v-if="[30, '30', 20, '20', 40, '40'].includes(detailData?.orderState)">
<!-- <view> -->
<view class="form-btns">
<up-button type="info" shape="circle" text="返回" throttleTime="1500" @click="proxy.$h.backUrl()" :customStyle="{ width: '196rpx', marginRight: '16rpx' }"></up-button>
<up-button color="#05B8D2" shape="circle" :text="[20, '20'].includes(detailData?.orderState) ? '接诊' : '继续接诊'" throttleTime="1500" @click="AcceptHandler"></up-button>
<!-- <up-button type="info" v-if="[20, '20'].includes(detailData?.orderState)" shape="circle" text="返回" throttleTime="1500" @click="proxy.$h.backUrl()" :customStyle="{ width: '196rpx', marginRight: '16rpx' }"></up-button> -->
<up-button color="#05B8D2" v-if="[20, '20'].includes(detailData?.orderState)" shape="circle" :text="[20, '20'].includes(detailData?.orderState) ? '接诊' : '回复'" throttleTime="1500" @click="AcceptHandler('err')"></up-button>
<up-button color="#05B8D2" v-if="[40, '40'].includes(detailData?.orderState)" shape="circle" text="问诊记录" throttleTime="1500" @click="AcceptHandler('success')"></up-button>
</view>
<u-safe-bottom></u-safe-bottom>
</view>
... ... @@ -95,8 +96,8 @@ const form = ref({
file: [{}, {}]
})
const AcceptHandler = async () => {
uni.setStorageSync('history', 'err')
const AcceptHandler = async (flag: string) => {
uni.setStorageSync('history', flag)
await getReceive_diagnosis({ id: detailData.value?.id as string })
... ... @@ -149,7 +150,7 @@ onLoad((e: EventType) => {
box-sizing: border-box;
padding: 66rpx 24rpx 0;
background: #fff;
margin-top: 42%;
margin-top: 36%;
.fileImg {
position: relative;
.fileimage {
... ... @@ -195,6 +196,8 @@ onLoad((e: EventType) => {
}
&-infoitem {
margin-bottom: 22rpx;
color: #323233;
font-weight: 400 !important;
}
&-cla {
color: #666666;
... ...
... ... @@ -13,7 +13,7 @@
align-items: center;
}
.graybg{
.graybg {
height: 100vh;
background: #f7f8fa;
}
... ... @@ -92,7 +92,9 @@
}
.blueTag {
border: 2rpx solid #05b8d2;
box-sizing: border-box;
padding: 0 8rpx;
border: 1rpx solid #05b8d2;
background: #ebfdff;
color: #05b8d2;
border-radius: 8rpx;
... ...
... ... @@ -7,7 +7,7 @@ const GlobalData = {
ReceivePatients: { 0: '暂不接诊', 1: '在线坐诊', 'err': '状态码错误' },
sexData: { 0: '未知', 1: '男', 2: '女', 'err': '状态码错误' },
MessageType: { 1: '系统通知', 2: '用户反馈', 'err': '状态码错误' },
consultationWay: { 10: '快速问诊', 21: '专家图文语音问诊', 22: '专家视频问诊', 23: '专家电话问诊', 'err': '状态码错误' },
consultationWay: { 10: '快速问诊', 21: '图文问诊', 22: '视频问诊', 23: '电话问诊', 'err': '状态码错误' },
isReply: { 0: '否', 1: '是', 'err': '状态码错误' },
paramsOrderState: ['', 20, 30, 40, 50, 50],
orderState: { 10: '待接诊', 20: '待问诊', 30: '问诊中', 40: '问诊结束', 50: '已取消', 60: '已退款', 'err': '状态码错误' },
... ...