|
|
|
|
@ -1,14 +1,28 @@
|
|
|
|
|
<script setup>
|
|
|
|
|
import DraggableButton from "@/pages/components/goHome.vue";
|
|
|
|
|
import PriceRange from "@/common/PriceRange.vue";
|
|
|
|
|
/**
|
|
|
|
|
* name:
|
|
|
|
|
* user:sa0ChunLuyu
|
|
|
|
|
* date:2024年8月7日 20:05:05
|
|
|
|
|
*/
|
|
|
|
|
import { ref, computed, nextTick } from "vue";
|
|
|
|
|
import { $image, $api, $response } from "@/api";
|
|
|
|
|
import { onShow,onLoad } from "@dcloudio/uni-app";
|
|
|
|
|
import { useStore } from "@/store";
|
|
|
|
|
import {
|
|
|
|
|
ref,
|
|
|
|
|
computed,
|
|
|
|
|
nextTick
|
|
|
|
|
} from "vue";
|
|
|
|
|
import {
|
|
|
|
|
$image,
|
|
|
|
|
$api,
|
|
|
|
|
$response
|
|
|
|
|
} from "@/api";
|
|
|
|
|
import {
|
|
|
|
|
onShow,
|
|
|
|
|
onLoad
|
|
|
|
|
} from "@dcloudio/uni-app";
|
|
|
|
|
import {
|
|
|
|
|
useStore
|
|
|
|
|
} from "@/store";
|
|
|
|
|
const $store = useStore();
|
|
|
|
|
|
|
|
|
|
const $props = defineProps({
|
|
|
|
|
@ -20,10 +34,14 @@ const $props = defineProps({
|
|
|
|
|
|
|
|
|
|
const combo_active = ref("");
|
|
|
|
|
const person_active = ref("");
|
|
|
|
|
let tabs_active_id=ref(false); //激活tabsid
|
|
|
|
|
let popup = ref(null);
|
|
|
|
|
let popup_new = ref(null);
|
|
|
|
|
let selectKey = ref(""); // 整个选择的key
|
|
|
|
|
let sortIndex = ref(0); // 排序的索引
|
|
|
|
|
let comboIndex = ref(null); // 套餐类型索引
|
|
|
|
|
let sort_price_index=ref(null)
|
|
|
|
|
let sort_salecount_index=ref(null)
|
|
|
|
|
let crowdIndex = ref(null); // 适用人群索引
|
|
|
|
|
let priceIndex = ref(null); // 套餐价格索引
|
|
|
|
|
let projectIds = ref([]); // 项目id集合
|
|
|
|
|
@ -36,6 +54,10 @@ let multipleIndex = ref(0); // 多选索引
|
|
|
|
|
let itemIds = ref([]); // 项目id集合
|
|
|
|
|
let itemId = ref(""); // 项目id
|
|
|
|
|
let comboId = ref(""); // 套餐id
|
|
|
|
|
let price_max_min=ref([]);
|
|
|
|
|
let zhuangjianType=ref(18);
|
|
|
|
|
let TiShiPopupRef=ref(null);//提示弹窗
|
|
|
|
|
let SelectedComboInfo=ref(null);//选中的套餐信息
|
|
|
|
|
|
|
|
|
|
const selectItemClick = async (index, key) => {
|
|
|
|
|
// 选择套餐条件
|
|
|
|
|
@ -48,21 +70,29 @@ const selectItemClick = async (index, key) => {
|
|
|
|
|
sortIndex.value = index;
|
|
|
|
|
}
|
|
|
|
|
screenObj.value.combo_sort = data[selectKey.value][index]?.id;
|
|
|
|
|
} else if (selectKey.value == "combo_type") {
|
|
|
|
|
if (comboIndex.value == index) {
|
|
|
|
|
comboIndex.value = null;
|
|
|
|
|
delete screenObj.value.combo_type;
|
|
|
|
|
} else if (selectKey.value == "sort_sale_count") {
|
|
|
|
|
//清除综合排序
|
|
|
|
|
sortIndex.value = 0;
|
|
|
|
|
delete screenObj.value.combo_sort;
|
|
|
|
|
|
|
|
|
|
if (sort_salecount_index.value == index) {
|
|
|
|
|
sort_salecount_index.value = null;
|
|
|
|
|
delete screenObj.value.sort_sale_count;
|
|
|
|
|
} else {
|
|
|
|
|
comboIndex.value = index;
|
|
|
|
|
screenObj.value.combo_type = data[selectKey.value][index]?.id;
|
|
|
|
|
sort_salecount_index.value = index;
|
|
|
|
|
screenObj.value.sort_sale_count = data[selectKey.value][index]?.id;
|
|
|
|
|
}
|
|
|
|
|
} else if (selectKey.value == "combo_crowd") {
|
|
|
|
|
if (crowdIndex.value == index) {
|
|
|
|
|
crowdIndex.value = null;
|
|
|
|
|
delete screenObj.value.combo_crowd;
|
|
|
|
|
} else if (selectKey.value == "sort_price") {
|
|
|
|
|
//清除综合排序
|
|
|
|
|
sortIndex.value = 0;
|
|
|
|
|
delete screenObj.value.combo_sort;
|
|
|
|
|
|
|
|
|
|
if (sort_price_index.value == index) {
|
|
|
|
|
sort_price_index.value = null;
|
|
|
|
|
delete screenObj.value.sort_price;
|
|
|
|
|
} else {
|
|
|
|
|
crowdIndex.value = index;
|
|
|
|
|
screenObj.value.combo_crowd = data[selectKey.value][index]?.id;
|
|
|
|
|
sort_price_index.value = index;
|
|
|
|
|
screenObj.value.sort_price = data[selectKey.value][index]?.id;
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
if (key == "combo_price") {
|
|
|
|
|
@ -96,15 +126,21 @@ const selectDone = async () => {
|
|
|
|
|
delete screenObj.value.combo_item;
|
|
|
|
|
}
|
|
|
|
|
await getComboList();
|
|
|
|
|
select_drawer_ref.value.close();
|
|
|
|
|
popup_new.value.close();
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
const remake = () => {
|
|
|
|
|
// 重置筛选
|
|
|
|
|
delete screenObj.value.combo_price;
|
|
|
|
|
delete screenObj.value.combo_item;
|
|
|
|
|
delete screenObj.value.price_range
|
|
|
|
|
delete screenObj.value.combo_crowd
|
|
|
|
|
delete screenObj.value.combo_type
|
|
|
|
|
price_max_min.value=[0,combo_list.value.price_max];
|
|
|
|
|
priceIndex.value = null;
|
|
|
|
|
projectIds.value = [];
|
|
|
|
|
comboIndex.value=null
|
|
|
|
|
crowdIndex.value=null
|
|
|
|
|
};
|
|
|
|
|
const getComboSelect = async () => {
|
|
|
|
|
uni.showLoading();
|
|
|
|
|
@ -112,6 +148,8 @@ const getComboSelect = async () => {
|
|
|
|
|
uni.hideLoading();
|
|
|
|
|
$response(response, async () => {
|
|
|
|
|
combo_select.value = response.data;
|
|
|
|
|
combo_select.value.sort_sale_count=[{id:1,name:"销量从低到高"},{id:2,name:"销量从高到低"}]
|
|
|
|
|
combo_select.value.sort_price=[{id:1,name:"价格从低到高"},{id:2,name:"价格从高到低"}]
|
|
|
|
|
if ("sort_list" in combo_select.value) {
|
|
|
|
|
selectKey.value = "sort_list";
|
|
|
|
|
sortIndex.value = 0;
|
|
|
|
|
@ -184,10 +222,8 @@ const getComboList = async (e) => {
|
|
|
|
|
const response = await $api("ComboList", obj);
|
|
|
|
|
uni.hideLoading();
|
|
|
|
|
$response(response, () => {
|
|
|
|
|
|
|
|
|
|
combo_list.value = response.data;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
price_max_min.value=combo_list.value.price_max_min
|
|
|
|
|
});
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
@ -232,6 +268,7 @@ const open = (key) => {
|
|
|
|
|
// 点击三个筛选条件
|
|
|
|
|
selectKey.value = key;
|
|
|
|
|
popup.value.close();
|
|
|
|
|
popup_new.value.close();
|
|
|
|
|
let time = setTimeout(() => {
|
|
|
|
|
popup.value.open("top");
|
|
|
|
|
clearTimeout(time);
|
|
|
|
|
@ -239,22 +276,28 @@ const open = (key) => {
|
|
|
|
|
} else {
|
|
|
|
|
// 点击筛选
|
|
|
|
|
popup.value.close();
|
|
|
|
|
popup_new.value.close();
|
|
|
|
|
selectKey.value = "screen";
|
|
|
|
|
select_drawer_ref.value.open();
|
|
|
|
|
|
|
|
|
|
if (screenObj.value.combo_price) {
|
|
|
|
|
priceIndex.value = combo_select.value["combo_price"].findIndex(
|
|
|
|
|
(item) => item.id == screenObj.value.combo_price
|
|
|
|
|
);
|
|
|
|
|
} else {
|
|
|
|
|
priceIndex.value = null;
|
|
|
|
|
}
|
|
|
|
|
let time = setTimeout(() => {
|
|
|
|
|
|
|
|
|
|
if (screenObj.value.combo_item?.length) {
|
|
|
|
|
projectIds.value = [...screenObj.value.combo_item];
|
|
|
|
|
} else {
|
|
|
|
|
projectIds.value = [];
|
|
|
|
|
}
|
|
|
|
|
popup_new.value.open("top");
|
|
|
|
|
clearTimeout(time);
|
|
|
|
|
}, 400);
|
|
|
|
|
|
|
|
|
|
// if (screenObj.value.combo_price) {
|
|
|
|
|
// priceIndex.value = combo_select.value["combo_price"].findIndex(
|
|
|
|
|
// (item) => item.id == screenObj.value.combo_price
|
|
|
|
|
// );
|
|
|
|
|
// } else {
|
|
|
|
|
// priceIndex.value = null;
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
// if (screenObj.value.combo_item?.length) {
|
|
|
|
|
// projectIds.value = [...screenObj.value.combo_item];
|
|
|
|
|
// } else {
|
|
|
|
|
// projectIds.value = [];
|
|
|
|
|
// }
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
@ -268,10 +311,7 @@ const configRef = (e) => {
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
const select_drawer_ref = ref(null);
|
|
|
|
|
const selectDrawerRef = (e) => {
|
|
|
|
|
select_drawer_ref.value = e;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
onShow(() => {
|
|
|
|
|
$store.setDuoXuanYi({});
|
|
|
|
|
@ -286,6 +326,7 @@ onLoad((e)=>{
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
const buyClick = async (item) => {
|
|
|
|
|
SelectedComboInfo.value=item
|
|
|
|
|
let checkup_type_id = $store.getCheckupTypeId();
|
|
|
|
|
console.log("----", checkup_type_id.id);
|
|
|
|
|
if (checkup_type_id.id == "" || checkup_type_id.id == undefined) {
|
|
|
|
|
@ -303,6 +344,10 @@ const buyClick = async (item) => {
|
|
|
|
|
multipleList.value = item.duo_xuan_yi;
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
if(item.type_id==zhuangjianType.value){
|
|
|
|
|
TiShiPopupRef.value.open();
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
toDetail();
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
@ -351,25 +396,62 @@ const toRouter = () => {
|
|
|
|
|
url: "/pages/main/combo/tcdb",
|
|
|
|
|
});
|
|
|
|
|
};
|
|
|
|
|
const ComboTypeClickFunc=(id)=>{
|
|
|
|
|
if(comboIndex.value==id){
|
|
|
|
|
comboIndex.value=null
|
|
|
|
|
delete screenObj.value.combo_type
|
|
|
|
|
}else{
|
|
|
|
|
comboIndex.value=id
|
|
|
|
|
screenObj.value.combo_type=comboIndex.value
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
const ComboCrowdClickFunc=(id)=>{
|
|
|
|
|
if(crowdIndex.value==id){
|
|
|
|
|
crowdIndex.value=null
|
|
|
|
|
delete screenObj.value.combo_crowd
|
|
|
|
|
}else{
|
|
|
|
|
crowdIndex.value=id
|
|
|
|
|
screenObj.value.combo_crowd=crowdIndex.value
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
const CheckItemClickFunc=(id)=>{
|
|
|
|
|
if (projectIds.value?.includes(id)) {
|
|
|
|
|
projectIds.value.splice(projectIds.value.indexOf(id), 1);
|
|
|
|
|
} else {
|
|
|
|
|
projectIds.value.push(id);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
const getHuaKuaiValue=(value)=>{
|
|
|
|
|
screenObj.value.price_range=value
|
|
|
|
|
price_max_min.value=value
|
|
|
|
|
console.log(price_max_min.value);
|
|
|
|
|
}
|
|
|
|
|
const tabsClickFunc=(value)=>{
|
|
|
|
|
tabs_active_id.value=value
|
|
|
|
|
if(value==1){
|
|
|
|
|
comboIndex.value=zhuangjianType.value //设置筛选套餐类型为专家
|
|
|
|
|
screenObj.value.combo_type=comboIndex.value
|
|
|
|
|
}else{
|
|
|
|
|
comboIndex.value=''
|
|
|
|
|
delete screenObj.value.combo_type
|
|
|
|
|
}
|
|
|
|
|
getComboList();
|
|
|
|
|
}
|
|
|
|
|
</script>
|
|
|
|
|
<template>
|
|
|
|
|
<DraggableButton />
|
|
|
|
|
<view>
|
|
|
|
|
<view style="background-color: #d8eef3; padding-top: 20rpx;">
|
|
|
|
|
<view v-if="!!$store.config">
|
|
|
|
|
<view :ref="configRef"></view>
|
|
|
|
|
</view>
|
|
|
|
|
|
|
|
|
|
<view class="header_wrapper">
|
|
|
|
|
<view
|
|
|
|
|
@click="toRouter"
|
|
|
|
|
class="center fixed pt-10rpx box-border left-40rpx bottom-5% rounded-full w-110rpx h-110rpx bg-#239EA3 flex-col"
|
|
|
|
|
>
|
|
|
|
|
<view @click="toRouter"
|
|
|
|
|
class="center fixed pt-10rpx box-border left-40rpx bottom-5% rounded-full w-110rpx h-110rpx bg-#239EA3 flex-col">
|
|
|
|
|
<uni-badge :text="comboIds.length" absolute="rightTop" size="small">
|
|
|
|
|
<image
|
|
|
|
|
src="@/static/assets/slices/duibi.png"
|
|
|
|
|
mode="widthFix"
|
|
|
|
|
class="w-42rpx"
|
|
|
|
|
/>
|
|
|
|
|
<image src="@/static/assets/slices/duibi.png" mode="widthFix" class="w-42rpx" />
|
|
|
|
|
</uni-badge>
|
|
|
|
|
<text class="text-22rpx text-#fff -mt-5rpx">对比</text>
|
|
|
|
|
</view>
|
|
|
|
|
@ -378,18 +460,12 @@ const toRouter = () => {
|
|
|
|
|
<view class="hospital_icon_wrapper">
|
|
|
|
|
<image src="@/static/assets/dingwei@2x.png"></image>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="hospital_name_wrapper">{{
|
|
|
|
|
combo_list.hospital.name
|
|
|
|
|
}}</view>
|
|
|
|
|
<view class="hospital_select_wrapper">
|
|
|
|
|
<view class="hospital_name_wrapper">{{combo_list.hospital.name}}</view>
|
|
|
|
|
<!-- <view class="hospital_select_wrapper">
|
|
|
|
|
<image src="@/static/assets/gengduo@2x.png"></image>
|
|
|
|
|
</view> -->
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<view
|
|
|
|
|
v-if="!!combo_list.info.name"
|
|
|
|
|
class="user_wrapper"
|
|
|
|
|
@click="tabPatients()"
|
|
|
|
|
>
|
|
|
|
|
<view v-if="!!combo_list.info.name" class="user_wrapper" @click="tabPatients()">
|
|
|
|
|
<view class="user_title_wrapper">体检人:</view>
|
|
|
|
|
<view class="user_name_wrapper">{{ combo_list.info.name }}</view>
|
|
|
|
|
<view v-if="combo_list.info.count > 1" class="user_choose_wrapper">
|
|
|
|
|
@ -397,59 +473,39 @@ const toRouter = () => {
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<!-- <view class="relative z-999 pt-10rpx center">
|
|
|
|
|
<view class="doctor_wrapper">
|
|
|
|
|
<view class="doctor_tip_wrapper">
|
|
|
|
|
<text v-if="!!combo_list.doctor.id">已根据指定医生:</text>
|
|
|
|
|
<text v-else>可选择指定医生:</text>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="doctor_name_wrapper">
|
|
|
|
|
{{ !!combo_list.doctor.id ? combo_list.doctor.name : "前往选择" }}
|
|
|
|
|
</view>
|
|
|
|
|
<view class="doctor_tip_wrapper">(自动筛选匹配套餐)</view>
|
|
|
|
|
|
|
|
|
|
<view class="bg-#d8edf2" style="margin-top: -10rpx;">
|
|
|
|
|
<uni-search-bar class="search" radius="100" placeholder="请输入关键字搜索" @clear="getComboList()"
|
|
|
|
|
@cancel="getComboList()" @confirm="getComboList" />
|
|
|
|
|
</view>
|
|
|
|
|
</view> -->
|
|
|
|
|
<view class="bg-#d8edf2">
|
|
|
|
|
<uni-search-bar
|
|
|
|
|
class="search"
|
|
|
|
|
radius="100"
|
|
|
|
|
placeholder="请输入关键字搜索"
|
|
|
|
|
@clear="getComboList()"
|
|
|
|
|
@cancel="getComboList()"
|
|
|
|
|
@confirm="getComboList"
|
|
|
|
|
/>
|
|
|
|
|
<view class="top_button_row">
|
|
|
|
|
<view @click="tabsClickFunc(0)" :class="['top_button',{'top_button_active':tabs_active_id==false}]">选择套餐</view>
|
|
|
|
|
<view @click="tabsClickFunc(1)" :class="['top_button',{'top_button_active':tabs_active_id==true}]">专家定制</view>
|
|
|
|
|
<view class="top_button">项目自选</view>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="select_wrapper flex" v-if="selectKey">
|
|
|
|
|
<template v-for="(value, key, index) in combo_select" :key="index">
|
|
|
|
|
<view
|
|
|
|
|
@click="open(key)"
|
|
|
|
|
class="flex-1 center text-#2f2f2f text-26rpx line-height-[1]"
|
|
|
|
|
v-if="key != 'combo_price' && key != 'combo_item'"
|
|
|
|
|
:class="{
|
|
|
|
|
<view @click="open(key)" class="flex-1 center text-#2f2f2f text-26rpx line-height-[1]"
|
|
|
|
|
v-if="key != 'combo_price' && key != 'combo_item' && key != 'combo_type' && key != 'combo_crowd'" :class="{
|
|
|
|
|
'!text-#239EA3': selectKey == key,
|
|
|
|
|
}"
|
|
|
|
|
>
|
|
|
|
|
}">
|
|
|
|
|
<view v-if="key == 'sort_list'">
|
|
|
|
|
{{ value[sortIndex]?.name || "综合排序" }}
|
|
|
|
|
</view>
|
|
|
|
|
<view v-if="key == 'combo_type'">
|
|
|
|
|
{{ value[comboIndex]?.name || "套餐类型" }}
|
|
|
|
|
<view v-if="key == 'sort_sale_count'">
|
|
|
|
|
{{ value[sort_salecount_index]?.name || "按销量" }}
|
|
|
|
|
</view>
|
|
|
|
|
<view v-if="key == 'combo_crowd'">
|
|
|
|
|
{{ value[crowdIndex]?.name || "适用人群" }}
|
|
|
|
|
<view v-if="key == 'sort_price'">
|
|
|
|
|
{{ value[sort_price_index]?.name || "按价格" }}
|
|
|
|
|
</view>
|
|
|
|
|
<view class="select_item_icon_wrapper">
|
|
|
|
|
<image src="@/static/assets/xuanzegengduo@2x.png"></image>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
</template>
|
|
|
|
|
<view
|
|
|
|
|
@click="open()"
|
|
|
|
|
:class="{
|
|
|
|
|
<view @click="open()" :class="{
|
|
|
|
|
'!text-#239EA3': selectKey == 'screen',
|
|
|
|
|
}"
|
|
|
|
|
class="mx-20rpx center text-#2f2f2f text-26rpx"
|
|
|
|
|
>
|
|
|
|
|
}" class="mx-20rpx center text-#2f2f2f text-26rpx">
|
|
|
|
|
<view>筛选</view>
|
|
|
|
|
<view class="select_item_icon2_wrapper">
|
|
|
|
|
<image src="@/static/assets/shaixuan@2x.png"></image>
|
|
|
|
|
@ -457,27 +513,20 @@ const toRouter = () => {
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="list_wrapper" ref="combo_list_k">
|
|
|
|
|
<view
|
|
|
|
|
class="combo_wrapper"
|
|
|
|
|
v-for="(i, k) in combo_list_computed"
|
|
|
|
|
:key="k"
|
|
|
|
|
>
|
|
|
|
|
<view class="combo_wrapper" v-for="(i, k) in combo_list_computed" :key="k">
|
|
|
|
|
<view style="display: flex;">
|
|
|
|
|
<view class="combo_info_wrapper">
|
|
|
|
|
<view class="combo_cover_wrapper">
|
|
|
|
|
<image v-if="i.cover" :src="$image(i.cover)"></image>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="combo_content_wrapper">
|
|
|
|
|
<view class="combo_name_wrapper">{{ i.name }}</view>
|
|
|
|
|
<view style="display: flex;">
|
|
|
|
|
<view class="combo_name_wrapper">{{ i.name }}
|
|
|
|
|
</view>
|
|
|
|
|
<view v-if="i.is_hot">
|
|
|
|
|
<image style="height: 32rpx;width: 24rpx;" src="@/static/assets/buy/huomiao.jpg"></image>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="combo_tags_wrapper">
|
|
|
|
|
<view
|
|
|
|
|
class="combo_tag_wrapper"
|
|
|
|
|
v-for="(ii, kk) in i.tag"
|
|
|
|
|
:key="kk"
|
|
|
|
|
:style="{
|
|
|
|
|
color: ii.text_color,
|
|
|
|
|
background: ii.color,
|
|
|
|
|
}"
|
|
|
|
|
>
|
|
|
|
|
<view class="combo_tag_wrapper" v-for="(ii, kk) in i.tag" :key="kk"
|
|
|
|
|
:style="{ color: ii.text_color, background: '#fff',}">
|
|
|
|
|
{{ ii.text }}
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
@ -488,192 +537,175 @@ const toRouter = () => {
|
|
|
|
|
<view class="combo_price_box_wrapper">
|
|
|
|
|
<view class="combo_true_price_wrapper">
|
|
|
|
|
<text class="combo_true_price_icon_wrapper">¥</text>
|
|
|
|
|
<text class="combo_true_price_number_wrapper">{{
|
|
|
|
|
i.price
|
|
|
|
|
}}</text>
|
|
|
|
|
<text class="combo_true_price_number_wrapper">{{ i.price }}</text>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="combo_original_price_wrapper"
|
|
|
|
|
>¥{{ i.original_price }}</view
|
|
|
|
|
>
|
|
|
|
|
<view v-if="i.type_id!=zhuangjianType" class="combo_original_price_wrapper">¥{{ i.original_price }}</view>
|
|
|
|
|
<view v-if="i.type_id==zhuangjianType" class="combo_original_price_wrapper2">预存款</view>
|
|
|
|
|
</view>
|
|
|
|
|
<!-- <view class="combo_count_wrapper">已售{{ i.count }}</view> -->
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="combo_button_wrapper">
|
|
|
|
|
<view @click="contrastClick(i)" class="combo_pick_button_wrapper">{{
|
|
|
|
|
comboIds.includes(i.combo_id) ? "已加入" : "对比"
|
|
|
|
|
}}</view>
|
|
|
|
|
<view class="combo_buy_button_wrapper" @click="buyClick(i)"
|
|
|
|
|
>预约</view
|
|
|
|
|
>
|
|
|
|
|
<view v-if="i.type_id!=zhuangjianType" @click="contrastClick(i)" class="combo_pick_button_wrapper">
|
|
|
|
|
{{comboIds.includes(i.combo_id) ? "已加入" : "对比"}}
|
|
|
|
|
</view>
|
|
|
|
|
<view class="combo_buy_button_wrapper" @click="buyClick(i)">选择</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="combo_line_wrapper"></view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<uni-popup ref="popupMultiple" class="w-full">
|
|
|
|
|
<view class="rounded-10rpx px-20rpx pb-55rpx box-border bg-#fff w-95vw">
|
|
|
|
|
<view
|
|
|
|
|
class="center relative pt-40rpx pb-30rpx text-36rpx rounded-t-15rpx box-border"
|
|
|
|
|
>
|
|
|
|
|
<view class="center relative pt-40rpx pb-30rpx text-36rpx rounded-t-15rpx box-border">
|
|
|
|
|
<text class="line-height-[1] text-32rpx">请选择</text>
|
|
|
|
|
<uni-icons
|
|
|
|
|
@click="popupMultiple.close()"
|
|
|
|
|
type="closeempty"
|
|
|
|
|
color="#A6A6A6"
|
|
|
|
|
size="26"
|
|
|
|
|
class="absolute right-40rpx"
|
|
|
|
|
></uni-icons>
|
|
|
|
|
<uni-icons @click="popupMultiple.close()" type="closeempty" color="#A6A6A6" size="26"
|
|
|
|
|
class="absolute right-40rpx"></uni-icons>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="bg-#F8F8F8 px-20rpx box-border rounded-10rpx">
|
|
|
|
|
<view
|
|
|
|
|
v-for="(item, index) in multipleList[multipleIndex]['item_list']"
|
|
|
|
|
:key="index"
|
|
|
|
|
<view v-for="(item, index) in multipleList[multipleIndex]['item_list']" :key="index"
|
|
|
|
|
@click="itemId = item.item_id"
|
|
|
|
|
class="px-20rpx box-border b-b-1 b-#EAEAEA b-solid bs between h-100rpx"
|
|
|
|
|
>
|
|
|
|
|
class="px-20rpx box-border b-b-1 b-#EAEAEA b-solid bs between h-100rpx">
|
|
|
|
|
<text class="text-#000000 text-30rpx">{{ item.item_name }}</text>
|
|
|
|
|
<view class="center">
|
|
|
|
|
<text class="text-#EC3D15 text-20rpx mt-10rpx mr-5rpx">¥</text>
|
|
|
|
|
<text class="text-#EC3D15 text-32rpx mb-0">{{ item.price }}</text>
|
|
|
|
|
<uni-icons
|
|
|
|
|
class="ml-28rpx"
|
|
|
|
|
color="#239EA3"
|
|
|
|
|
:type="itemId == item.item_id ? 'checkbox-filled' : 'circle'"
|
|
|
|
|
size="30"
|
|
|
|
|
></uni-icons>
|
|
|
|
|
<uni-icons class="ml-28rpx" color="#239EA3"
|
|
|
|
|
:type="itemId == item.item_id ? 'checkbox-filled' : 'circle'" size="30"></uni-icons>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="text-#239EA3 text-28rpx my-45rpx text-center"
|
|
|
|
|
>当前套餐包含一个可自由{{
|
|
|
|
|
<view class="text-#239EA3 text-28rpx my-45rpx text-center">当前套餐包含一个可自由{{
|
|
|
|
|
multipleList[multipleIndex]["item_list"].length
|
|
|
|
|
}}选1的体检项目,请<br />根据您的实际情况自行选择。</view
|
|
|
|
|
>
|
|
|
|
|
<view
|
|
|
|
|
class="w-270rpx h-80rpx bg-#239EA3 center text-#F8F8F8 text-30rpx rounded-10rpx mx-auto"
|
|
|
|
|
@click="nextItemClick()"
|
|
|
|
|
>{{
|
|
|
|
|
}}选1的体检项目,请<br />根据您的实际情况自行选择。</view>
|
|
|
|
|
<view class="w-270rpx h-80rpx bg-#239EA3 center text-#F8F8F8 text-30rpx rounded-10rpx mx-auto"
|
|
|
|
|
@click="nextItemClick()">{{
|
|
|
|
|
multipleIndex == multipleList.length - 1 ? "确定" : "下一项"
|
|
|
|
|
}}</view
|
|
|
|
|
>
|
|
|
|
|
}}</view>
|
|
|
|
|
</view>
|
|
|
|
|
</uni-popup>
|
|
|
|
|
<uni-popup ref="popup" mask-background-color="transparent" :animation="false">
|
|
|
|
|
<view class="pt-292rpx w-full h-100vh" @click="popup.close()">
|
|
|
|
|
<view class="pt-330rpx w-full h-100vh" @click="popup.close()">
|
|
|
|
|
<view class="bg-[rgba(0,0,0,0.3)] h-100%">
|
|
|
|
|
<view
|
|
|
|
|
class="bg-#fff"
|
|
|
|
|
:class="
|
|
|
|
|
<view class="bg-#fff" :class="
|
|
|
|
|
selectKey != 'sort_list'
|
|
|
|
|
? 'flex pt20rpx px10rpx pb0 box-border flex-wrap'
|
|
|
|
|
: ''
|
|
|
|
|
"
|
|
|
|
|
>
|
|
|
|
|
<view
|
|
|
|
|
v-for="(val, index) in combo_select[selectKey]"
|
|
|
|
|
:key="index"
|
|
|
|
|
@click.stop="selectItemClick(index)"
|
|
|
|
|
:class="{
|
|
|
|
|
">
|
|
|
|
|
<view v-for="(val, index) in combo_select[selectKey]" :key="index"
|
|
|
|
|
@click.stop="selectItemClick(index)" :class="{
|
|
|
|
|
'min-w-23% mx-1% mb-20rpx': selectKey != 'sort_list',
|
|
|
|
|
}"
|
|
|
|
|
>
|
|
|
|
|
}">
|
|
|
|
|
<uni-list-item v-if="selectKey == 'sort_list'">
|
|
|
|
|
<template v-slot:body>
|
|
|
|
|
<text
|
|
|
|
|
class="text-26rpx"
|
|
|
|
|
:class="{
|
|
|
|
|
<text class="text-26rpx" :class="{
|
|
|
|
|
'!text-#239EA3': sortIndex == index,
|
|
|
|
|
}"
|
|
|
|
|
>{{ val.name }}</text
|
|
|
|
|
>
|
|
|
|
|
}">{{ val.name }}</text>
|
|
|
|
|
</template>
|
|
|
|
|
</uni-list-item>
|
|
|
|
|
<view
|
|
|
|
|
v-else
|
|
|
|
|
<view v-else
|
|
|
|
|
class="box-border px-28rpx py-20rpx text-26rpx center line-height-[1] rounded-5rpx"
|
|
|
|
|
:class="{
|
|
|
|
|
'!bg-#239EA3 !text-#fff':
|
|
|
|
|
(selectKey == 'combo_type' && comboIndex == index) ||
|
|
|
|
|
(selectKey == 'combo_crowd' && crowdIndex == index),
|
|
|
|
|
(selectKey == 'sort_sale_count' && sort_salecount_index == index) ||
|
|
|
|
|
(selectKey == 'sort_price' && sort_price_index == index),
|
|
|
|
|
'!text-#747474 !bg-#e0e0e0':
|
|
|
|
|
(selectKey == 'combo_type' && comboIndex != index) ||
|
|
|
|
|
(selectKey == 'combo_crowd' && crowdIndex != index),
|
|
|
|
|
}"
|
|
|
|
|
>{{ val.name }}</view
|
|
|
|
|
>
|
|
|
|
|
(selectKey == 'sort_sale_count' && sort_salecount_index != index) ||
|
|
|
|
|
(selectKey == 'sort_price' && sort_price_index != index),
|
|
|
|
|
}">{{ val.name }}</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
</uni-popup>
|
|
|
|
|
<uni-drawer :ref="selectDrawerRef" mode="right">
|
|
|
|
|
<view>
|
|
|
|
|
<scroll-view scroll-y="true">
|
|
|
|
|
<view>
|
|
|
|
|
<view class="select_group_wrapper">
|
|
|
|
|
<view class="text-30rpx bold">套餐价格</view>
|
|
|
|
|
<view class="select_group_line_wrapper mt-20rpx">
|
|
|
|
|
<view
|
|
|
|
|
v-for="(val, index) in combo_select['combo_price']"
|
|
|
|
|
:key="index"
|
|
|
|
|
@click.stop="selectItemClick(index, 'combo_price')"
|
|
|
|
|
class="min-w-31% mx-1% mb-20rpx"
|
|
|
|
|
>
|
|
|
|
|
<view
|
|
|
|
|
class="box-border px-20rpx py-20rpx text-22rpx center line-height-[1] rounded-5rpx"
|
|
|
|
|
:class="{
|
|
|
|
|
'!bg-#239EA3 !text-#fff':
|
|
|
|
|
selectKey == 'screen' && priceIndex == index,
|
|
|
|
|
'!text-#747474 !bg-#e0e0e0':
|
|
|
|
|
selectKey == 'screen' && priceIndex != index,
|
|
|
|
|
}"
|
|
|
|
|
>{{ val.name }}</view
|
|
|
|
|
>
|
|
|
|
|
<uni-popup ref="popup_new" mask-background-color="transparent" :animation="false" :is-mask-click="true" >
|
|
|
|
|
<view class="pt-292rpx w-full h-100vh" >
|
|
|
|
|
<view class="bg-[rgba(0,0,0,0.3)] h-100%">
|
|
|
|
|
<view class="popup_new_main">
|
|
|
|
|
<view class="shaixuan_title">套餐类型</view>
|
|
|
|
|
<view style="display: flex;flex-wrap: wrap; ">
|
|
|
|
|
<view v-for="(item,index) in combo_select.combo_type" @click="ComboTypeClickFunc(item.id)" :class="['shaixuan_button',{'shaixuan_button_active': comboIndex==item.id}]">
|
|
|
|
|
{{item.name}}
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
|
|
|
|
|
<view class="shaixuan_title">价格区间</view>
|
|
|
|
|
<PriceRange @huakuaiValue="getHuaKuaiValue" :step="combo_list.step" :rangDate="price_max_min" :rangMax="combo_list.price_max" :dataInfo="combo_list.price_range"></PriceRange>
|
|
|
|
|
<view style="margin-top: -70rpx;">
|
|
|
|
|
<view class="shaixuan_title">适用人群</view>
|
|
|
|
|
<view style="display: flex;flex-wrap: wrap; ">
|
|
|
|
|
<view v-for="(item,index) in combo_select.combo_crowd" @click="ComboCrowdClickFunc(item.id)" :class="['shaixuan_button',{'shaixuan_button_active': crowdIndex==item.id}]">
|
|
|
|
|
{{item.name}}
|
|
|
|
|
</view>
|
|
|
|
|
<view class="select_group_wrapper">
|
|
|
|
|
<view class="text-30rpx bold">体检项目(多选)</view>
|
|
|
|
|
<view class="select_group_line_wrapper mt-20rpx">
|
|
|
|
|
<view
|
|
|
|
|
v-for="(val, index) in combo_select['combo_item']"
|
|
|
|
|
:key="index"
|
|
|
|
|
@click.stop="selectItemClick(val.id, 'combo_item')"
|
|
|
|
|
class="min-w-31% mx-1% mb-20rpx"
|
|
|
|
|
>
|
|
|
|
|
<view
|
|
|
|
|
class="box-border px-20rpx py-20rpx text-22rpx center line-height-[1] rounded-5rpx"
|
|
|
|
|
:class="{
|
|
|
|
|
'!bg-#239EA3 !text-#fff':
|
|
|
|
|
selectKey == 'screen' && projectIds.includes(val.id),
|
|
|
|
|
'!text-#747474 !bg-#e0e0e0':
|
|
|
|
|
selectKey == 'screen' && !projectIds.includes(val.id),
|
|
|
|
|
}"
|
|
|
|
|
>{{ val.name }}</view
|
|
|
|
|
>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<view >
|
|
|
|
|
<view class="shaixuan_title">体检项目</view>
|
|
|
|
|
<view style="display: flex;flex-wrap: wrap; ">
|
|
|
|
|
<view v-for="(item,index) in combo_select.combo_item" @click="CheckItemClickFunc(item.id)" :class="['shaixuan_button',{'shaixuan_button_active': projectIds.includes(item.id)}]">
|
|
|
|
|
{{item.name}}
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="around">
|
|
|
|
|
<view
|
|
|
|
|
class="w-40% text-26rpx h-60rpx center rounded-full bg-#239EA3 text-#fff"
|
|
|
|
|
@click="remake()"
|
|
|
|
|
>重置</view
|
|
|
|
|
>
|
|
|
|
|
<view
|
|
|
|
|
class="w-40% text-26rpx h-60rpx center rounded-full bg-#239EA3 text-#fff"
|
|
|
|
|
@click="selectDone()"
|
|
|
|
|
>确定</view
|
|
|
|
|
>
|
|
|
|
|
<view class="around" style="margin-top: 40rpx;">
|
|
|
|
|
<view class="w-40% text-26rpx h-60rpx center rounded-full bg-#239EA3 text-#fff"
|
|
|
|
|
@click="remake()">重置</view>
|
|
|
|
|
<view class="w-40% text-26rpx h-60rpx center rounded-full bg-#239EA3 text-#fff"
|
|
|
|
|
@click="selectDone()">确定</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
</scroll-view>
|
|
|
|
|
<view style=";height: 100%;" @click="popup_new.close()"></view>
|
|
|
|
|
</view>
|
|
|
|
|
|
|
|
|
|
</view>
|
|
|
|
|
</uni-popup>
|
|
|
|
|
<uni-popup ref="TiShiPopupRef" style="z-index: 999;">
|
|
|
|
|
<view class="tishi_main">
|
|
|
|
|
<view class="tishi_title">套餐须知</view>
|
|
|
|
|
<view class="tishi_title2">专家定制套餐</view>
|
|
|
|
|
<view class="tishi_content">此套餐收费{{SelectedComboInfo.price}}元为预存款,可根据现场定制套餐后实际价格多退少补。</view>
|
|
|
|
|
<view class="tishi_button" @click="toDetail()">我已知晓</view>
|
|
|
|
|
</view>
|
|
|
|
|
</uni-drawer>
|
|
|
|
|
</uni-popup>
|
|
|
|
|
</view>
|
|
|
|
|
</template>
|
|
|
|
|
<style scoped>
|
|
|
|
|
.tishi_main{
|
|
|
|
|
background-color: #fff;
|
|
|
|
|
padding: 40rpx 50rpx;
|
|
|
|
|
width:600rpx;
|
|
|
|
|
border-radius: 40rpx;
|
|
|
|
|
}
|
|
|
|
|
.tishi_button{
|
|
|
|
|
width: 365rpx;
|
|
|
|
|
background-color: #009da5;
|
|
|
|
|
color:#fff;
|
|
|
|
|
text-align: center;
|
|
|
|
|
padding-top: 10rpx;
|
|
|
|
|
padding-bottom: 10rpx;
|
|
|
|
|
border-radius: 40rpx;
|
|
|
|
|
margin: 40rpx auto 10rpx auto;
|
|
|
|
|
}
|
|
|
|
|
.tishi_title{
|
|
|
|
|
text-align: center;
|
|
|
|
|
font-size: 30rpx;
|
|
|
|
|
font-weight: 600;
|
|
|
|
|
color:#2b2827;
|
|
|
|
|
}
|
|
|
|
|
.tishi_title2{
|
|
|
|
|
font-size: 28rpx;
|
|
|
|
|
margin-top: 30rpx;
|
|
|
|
|
font-weight: 600;
|
|
|
|
|
color:#3a3635;
|
|
|
|
|
border-left: 3px solid #009da5;
|
|
|
|
|
padding-left: 5rpx;
|
|
|
|
|
}
|
|
|
|
|
.tishi_content{
|
|
|
|
|
font-size: 28rpx;
|
|
|
|
|
margin-top: 30rpx;
|
|
|
|
|
color:#474241;
|
|
|
|
|
}
|
|
|
|
|
.select_done_wrapper {
|
|
|
|
|
color: #ffffff;
|
|
|
|
|
background: #239ea3;
|
|
|
|
|
@ -721,6 +753,7 @@ const toRouter = () => {
|
|
|
|
|
scrollbar-width: none;
|
|
|
|
|
overflow: -moz-scrollbars-none;
|
|
|
|
|
overflow-y: scroll;
|
|
|
|
|
background-color: #fff;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.list_wrapper::-webkit-scrollbar {
|
|
|
|
|
@ -731,7 +764,7 @@ const toRouter = () => {
|
|
|
|
|
width: 710rpx;
|
|
|
|
|
height: 1rpx;
|
|
|
|
|
background: #e1ecee;
|
|
|
|
|
margin: 15rpx auto 0;
|
|
|
|
|
margin: 26rpx 0rpx 0rpx 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.combo_pick_button_wrapper {
|
|
|
|
|
@ -756,15 +789,14 @@ const toRouter = () => {
|
|
|
|
|
color: #ffffff;
|
|
|
|
|
text-align: center;
|
|
|
|
|
line-height: 60rpx;
|
|
|
|
|
margin-left: 32rpx;
|
|
|
|
|
margin-right: 20rpx;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.combo_button_wrapper {
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
align-items: center;
|
|
|
|
|
justify-content: end;
|
|
|
|
|
margin-top: 27rpx;
|
|
|
|
|
justify-content: space-around;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.combo_count_wrapper {
|
|
|
|
|
@ -782,6 +814,13 @@ const toRouter = () => {
|
|
|
|
|
text-decoration-line: line-through;
|
|
|
|
|
margin-left: 10rpx;
|
|
|
|
|
}
|
|
|
|
|
.combo_original_price_wrapper2 {
|
|
|
|
|
font-weight: 500;
|
|
|
|
|
font-size: 18rpx;
|
|
|
|
|
color: #8b8b8b;
|
|
|
|
|
line-height: 1;
|
|
|
|
|
margin-left: 10rpx;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.combo_true_price_wrapper {
|
|
|
|
|
font-weight: 500;
|
|
|
|
|
@ -807,9 +846,11 @@ const toRouter = () => {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.combo_wrapper {
|
|
|
|
|
height: 307rpx;
|
|
|
|
|
width: 750rpx;
|
|
|
|
|
/* height: 196rpx; */
|
|
|
|
|
width: calc(750rpx - 80rpx);
|
|
|
|
|
margin: 0 auto;
|
|
|
|
|
background-color: #fff;
|
|
|
|
|
padding: 0rpx 40rpx 30rpx 40rpx;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.combo_tags_wrapper {
|
|
|
|
|
@ -835,14 +876,16 @@ const toRouter = () => {
|
|
|
|
|
font-weight: 400;
|
|
|
|
|
font-size: 18rpx;
|
|
|
|
|
color: #47abd8;
|
|
|
|
|
margin-right: 8rpx;
|
|
|
|
|
margin: 10rpx 8rpx 10rpx 0rpx;
|
|
|
|
|
border: 1rpx solid #009da5;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.combo_name_wrapper {
|
|
|
|
|
font-weight: 400;
|
|
|
|
|
font-size: 32rpx;
|
|
|
|
|
color: #0e0e0e;
|
|
|
|
|
line-height: 1;
|
|
|
|
|
line-height: 32rpx;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.combo_content_wrapper {
|
|
|
|
|
@ -888,11 +931,11 @@ const toRouter = () => {
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
width: 750rpx;
|
|
|
|
|
height: 80rpx;
|
|
|
|
|
background: #f1f7f7;
|
|
|
|
|
background: #eef7f7;
|
|
|
|
|
box-shadow: 0rpx -1rpx 1rpx 0rpx rgba(0, 0, 0, 0.1);
|
|
|
|
|
margin: 0 auto;
|
|
|
|
|
position: relative;
|
|
|
|
|
z-index: 999;
|
|
|
|
|
z-index: 998;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.select_item_icon_wrapper {
|
|
|
|
|
@ -991,24 +1034,25 @@ const toRouter = () => {
|
|
|
|
|
|
|
|
|
|
.user_title_wrapper {
|
|
|
|
|
font-weight: 400;
|
|
|
|
|
font-size: 28rpx;
|
|
|
|
|
color: #239ea3;
|
|
|
|
|
font-size: 26rpx;
|
|
|
|
|
color: #fff;
|
|
|
|
|
line-height: 1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.user_name_wrapper {
|
|
|
|
|
font-weight: 400;
|
|
|
|
|
font-size: 28rpx;
|
|
|
|
|
color: #0d0d0d;
|
|
|
|
|
font-size: 26rpx;
|
|
|
|
|
color: #fff;
|
|
|
|
|
line-height: 1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.user_wrapper {
|
|
|
|
|
height: 80rpx;
|
|
|
|
|
height: 60rpx;
|
|
|
|
|
padding-left: 40rpx;
|
|
|
|
|
padding-right: 20rpx;
|
|
|
|
|
background: #ffffff;
|
|
|
|
|
border-radius: 40rpx 0 0 40rpx;
|
|
|
|
|
margin-right: 20rpx;
|
|
|
|
|
background: #009ea7;
|
|
|
|
|
border-radius: 40rpx;
|
|
|
|
|
display: flex;
|
|
|
|
|
align-items: center;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
@ -1018,18 +1062,22 @@ const toRouter = () => {
|
|
|
|
|
display: flex;
|
|
|
|
|
align-items: center;
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
width: 750rpx;
|
|
|
|
|
height: 100rpx;
|
|
|
|
|
width: 710rpx;
|
|
|
|
|
height: 90rpx;
|
|
|
|
|
background: #d8edf2;
|
|
|
|
|
margin: 0 auto;
|
|
|
|
|
position: relative;
|
|
|
|
|
z-index: 999;
|
|
|
|
|
|
|
|
|
|
background-color: #fff;
|
|
|
|
|
margin-left: 20rpx;
|
|
|
|
|
margin-right: 20rpx;
|
|
|
|
|
border-radius: 20rpx;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.hospital_wrapper {
|
|
|
|
|
display: flex;
|
|
|
|
|
align-items: center;
|
|
|
|
|
width: 50%;
|
|
|
|
|
width: 40%;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.hospital_icon_wrapper {
|
|
|
|
|
@ -1065,4 +1113,58 @@ const toRouter = () => {
|
|
|
|
|
display: block;
|
|
|
|
|
object-fit: contain;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.popup_new_main {
|
|
|
|
|
background-color: #fff;
|
|
|
|
|
border-radius: 0rpx 0rpx 20rpx 20rpx;
|
|
|
|
|
padding: 40rpx 20rpx 20rpx 20rpx;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.top_button_row {
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
padding-left: 20rpx;
|
|
|
|
|
padding-right: 20rpx;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.top_button {
|
|
|
|
|
color: #666;
|
|
|
|
|
background-color: #fff;
|
|
|
|
|
padding: 6rpx 40rpx;
|
|
|
|
|
border-radius: 15rpx;
|
|
|
|
|
margin-top: -6rpx;
|
|
|
|
|
margin-bottom: 8rpx;
|
|
|
|
|
font-size: 28rpx;
|
|
|
|
|
width: 140rpx;
|
|
|
|
|
text-align: center;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.top_button_active {
|
|
|
|
|
background-color: #009ea7;
|
|
|
|
|
color: #fff;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.search {}
|
|
|
|
|
|
|
|
|
|
.shaixuan_title {
|
|
|
|
|
font-size: 26rpx;
|
|
|
|
|
margin-top: 20rpx;
|
|
|
|
|
margin-bottom: 10rpx;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.shaixuan_button {
|
|
|
|
|
font-size: 24rpx;
|
|
|
|
|
padding-left: 10rpx;
|
|
|
|
|
background-color: #ccc;
|
|
|
|
|
margin: 10rpx;
|
|
|
|
|
padding: 5rpx 10rpx;
|
|
|
|
|
border-radius: 5rpx;
|
|
|
|
|
background-color: #f3f3f3;
|
|
|
|
|
color: #1e1a19;
|
|
|
|
|
}
|
|
|
|
|
.shaixuan_button_active{
|
|
|
|
|
background-color: #009da5;
|
|
|
|
|
color: #fff;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
</style>
|