You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

294 lines
6.7 KiB
Vue

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<script setup>
import DraggableButton from "@/pages/components/goHome.vue";
/**
* name
* usersa0ChunLuyu
* date2024年9月11日 19:24:50
*/
import {
ref
} from 'vue'
import {
$api,
$response
} from '@/api'
import {
onShow
} from '@dcloudio/uni-app'
import {
useStore
} from '@/store'
const $store = useStore()
const $props = defineProps({
id: {
type: String,
default: '0'
}
});
const mountedAction = () => {
getOrderInfo()
}
const config_ref = ref(null)
const configRef = (e) => {
if (!config_ref.value) {
config_ref.value = e
mountedAction()
}
}
// const order_info = ref({
// status: 1,
// combo_id: 1,
// combo_name: '中心动脉硬化检测体检',
// item_ids: [1, 2, 3, 4],
// item_info: [{
// name: '抽血1'
// }, {
// name: '抽血2'
// }, {
// name: '抽血3'
// }, {
// name: '抽血4'
// }],
// name: '周子轩',
// id_number: '130322199409090090',
// order_number: '1000034',
// order_time: '2024-12-12 12:12:12',
// type: '个检',
// price: '300.00'
// })
const order_info = ref({})
const getOrderInfo = async () => {
uni.showLoading()
const response = await $api('GetOrderDetail', {
openid: localStorage.getItem('OPENID'),
id: $props.id,
})
uni.hideLoading()
$response(response, () => {
if (response.status) {
order_info.value = response.data.info
}
})
}
const toOrderList = () => {
uni.reLaunch({
url: '/pages/main/order/order'
})
}
const toPlan=()=>{
uni.reLaunch({
url: '/pages/main/yytjsj/yytjsj_new?id='+$props.id
})
}
onShow(() => {
if (!!config_ref.value) {
mountedAction()
}
})
</script>
<template>
<DraggableButton />
<view class="done_new_main">
<view v-if="!!$store.config">
<view :ref="configRef"></view>
</view>
<view v-if="!!order_info">
<view v-if="order_info.status === 2" class="order_done_wrapper">
<view class="order_icon_wrapper">
<view class="order_icon_image_wrapper">
<image src="@/static/assets/buy/buydone.png"></image>
</view>
<view class="order_icon_tip_wrapper">支付成功!</view>
<!-- <view v-if="order_info.checkup_type_id==4"
style="font-size: 24rpx;padding:20rpx 40rpx; 0rpx 40rpx;color:#FF0000;">
请您的配偶在15分钟内完成预约否则本次预约将会失效如有支付金额会原路退回
</view> -->
</view>
<view class="order_info_wrapper">
<view class="order_info_title_wrapper">{{ order_info.title }}</view>
<view class="order_info_line_wrapper">
<view class="order_info_label_wrapper">体检人:</view>
<view class="order_info_value_wrapper">{{ order_info.name }}</view>
</view>
<view class="order_info_line_wrapper">
<view class="order_info_label_wrapper">预约单号:</view>
<view class="order_info_value_wrapper">{{ order_info.order_number }}</view>
</view>
<view class="order_info_line_wrapper">
<view class="order_info_label_wrapper">体检类型:</view>
<view class="order_info_value_wrapper"><span v-if="order_info.type==1">个检</span><span
v-if="order_info.type==2">团检</span></view>
</view>
<view class="tishi">
<view>
<uni-icons type="info-filled" size="18" color="#009DA6"></uni-icons>
</view>
<view style="line-height: 38rpx;margin-left: 6rpx;">
请提前10分钟凭身份证原件到现代妇儿秀英院区健康管理中心(<span v-if="order_info.sex==1">一楼男宾区</span><span v-if="order_info.sex==2">二楼女宾区</span>)自助机取号超时作废请按预约顺序等候开单。建议体检前3天清淡饮食、禁烟酒体检当天需空腹禁水禁食。咨询电话66595555、65781993。
</view>
</view>
<view class="tishi2">温馨提示:<span style="color: #e95513;">若要增加项目可以到现场预检咨询</span></view>
<view class="order_info_price_wrapper">
<view class="order_info_price_label_wrapper">订单金额:</view>
<view class="order_info_value_wrapper">¥{{ order_info.true_price }}</view>
</view>
</view>
<view v-if="order_info.source !='web'" @click="toPlan()" class="check_done_wrapper">立即预约体检</view>
<view @click="toOrderList()" class="next_done_wrapper">
<view style="margin-right: 6rpx;">下次预约</view>
<view style="letter-spacing: -10rpx; vertical-align:super;color: #b3b3b3;">
&gt;&gt;&gt;
</view>
</view>
</view>
</view>
</view>
</template>
<style>
page {
background: #ffffff;
}
</style>
<style scoped>
.tishi2{
font-size: 26rpx;
padding-top: 16rpx;
background-color: #fff;
}
.next_done_wrapper{
display: flex;
width: 100%;
justify-content: center;
margin-top: 10rpx;
color:#9E9E9F;
font-size: 24rpx;
font-weight: 700;
}
.done_new_main {
background-color: #D8EEF3;
height: calc(100vh - 130rpx);
padding-top: 40rpx;
}
.check_done_wrapper {
width: 263rpx;
height: 53rpx;
margin: 80rpx auto 0;
border-radius: 999rpx;
background: #35ACB2;
font-weight: 700;
font-size: 29rpx;
color: #F6FDFD;
line-height: 53rpx;
text-align: center;
}
.order_info_line_wrapper {
display: flex;
align-items: center;
font-weight: normal;
font-size: 24rpx;
color: #666666;
line-height: 50rpx;
}
.order_info_value_wrapper {
color: #9E9E9F;
}
.order_info_price_wrapper {
display: flex;
align-items: center;
justify-content: end;
font-weight: normal;
font-size: 24rpx;
color: #333;
line-height: 48rpx;
margin-top: 20rpx;
}
.order_info_price_wrapper .order_info_value_wrapper {
color: #E95513;
font-size: 28rpx;
font-weight: bolder;
}
.order_info_title_wrapper {
font-weight: 700;
font-size: 30rpx;
color: #009FA8;
line-height: 45rpx;
border-bottom: solid 1rpx #DBDCDC;
padding-bottom: 30rpx;
margin-bottom: 10rpx;
}
.order_info_wrapper {
background: #fff;
border-radius: 20rpx;
margin: 25rpx 40rpx;
padding: 30rpx 48rpx;
}
.order_icon_tip_wrapper {
font-weight: bold;
font-size: 36rpx;
color: #3E3A39;
line-height: 1;
margin-top: 31rpx;
text-align: center;
}
.order_done_wrapper {
width: 750rpx;
}
.order_icon_wrapper {
background-color: #fff;
margin-left: 40rpx;
margin-right: 40rpx;
border-radius: 20rpx;
padding-top: 98rpx;
height: 335rpx;
}
.order_icon_image_wrapper {
width: 145rpx;
height: 137rpx;
margin: 0 auto;
}
.order_icon_image_wrapper image {
width: 145rpx;
height: 137rpx;
}
.tishi {
display: flex;
color: #009FA8;
font-size: 20rpx;
margin-top: 30rpx;
}
.order_info_label_wrapper {
color: #9E9E9F;
}
.order_info_price_label_wrapper {
color: #333;
font-weight: 700;
}
</style>