Merge branch 'main' of https://git.zdool.com/xs/yxdt/h5 into main

This commit is contained in:
liuyalei 2023-12-07 17:35:38 +08:00
commit d7756178e6
5 changed files with 290 additions and 24 deletions

View File

@ -60,7 +60,7 @@
body {
min-height: 100vh;
color: var(--color-text);
/* color: var(--color-text); */
background: var(--color-background);
transition:
color 0.5s,

BIN
src/assets/home/wdwz.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -29,8 +29,59 @@
:overlay="false"
round
position="bottom"
:style="{ height: '30%' }"
/>
:style="{ height: '45%' }"
>
<van-sticky style="background-color: #fff; z-index: 99">
<van-search
v-model="value"
shape="round"
background="#4fc08d00"
placeholder=""
/>
<van-dropdown-menu>
<van-dropdown-item
v-model="dropdown.value1"
:options="dropdown.option1"
/>
<van-dropdown-item
v-model="dropdown.value2"
:options="dropdown.option2"
/>
<van-dropdown-item
v-model="dropdown.value3"
:options="dropdown.option3"
/>
</van-dropdown-menu>
</van-sticky>
<div class="card">
<div
class="cardlist"
v-for="(item, index) in dropdown.rmyy"
:key="index"
>
<img class="imgse" :src="item.img" alt="" />
<div class="bodys">
<div class="bt">{{ item.name }}</div>
<div class="dz">
<div class="tp">
<img class="ims" src="../assets/home/dz.png" alt="" />
</div>
<div class="zl">{{ item.jl }}</div>
<div class="xxdz">{{ item.dz }}</div>
</div>
<div class="bq">
<van-tag
v-for="(item, index) in item.tag"
:key="index"
plain
type="primary"
>{{ item }}</van-tag
>
</div>
</div>
</div>
</div>
</van-popup>
</div>
</template>
@ -53,11 +104,122 @@ import img14 from "@/assets/home/ryzfxz.png";
import img15 from "@/assets/home/yxfw.png";
import img16 from "@/assets/home/yxfwxz.png";
import img17 from "@/assets/home/yy.png";
import img18 from "@/assets/home/wdwz.png";
var map = null;
var control = null;
var T = window.T;
const dropdown = reactive({
value1: 0,
value2: 0,
value3: 0,
option1: [{ text: "智能排序", value: 0 }],
option2: [{ text: "位置距离", value: 0 }],
option3: [{ text: "其他筛选", value: 0 }],
rmyy: [
{
name: "象山第一人民医院",
img: "http://store.is.autonavi.com/showpic/756391e986455206891ae6d6c27ac430?type=pic",
tag: ["综合医院", "二级甲等"],
dz: "宁波市象山县东谷路289-291",
jl: "1公里",
zb: [121.88637, 29.47231],
},
{
name: "象山县中医医院(新院区)",
img: "https://aos-comment.amap.com/B0FFKGTE0P/headerImg/40db9d22bfd0099a2e3418da8f3e9c5b_2048_2048_80.jpg",
tag: ["中医医院"],
dz: "宁波市象山县南部新城兴洋路7号",
jl: "6.7公里",
zb: [121.902770,29.435790],
},
{
name: "象山第三人民医院",
img: "http://store.is.autonavi.com/showpic/a0ff397c63274b1438755089ccc972d1?type=pic",
tag: ["综合医院", "二级医院"],
dz: "宁波市象山县丹西街道樟树下村",
jl: "3.8公里",
zb: [121.89218, 29.44957],
},
{
name: "丹城中心卫生院",
img: "http://store.is.autonavi.com/showpic/fee5ebf4dd4ccae1908faf4993d557bf?type=pic",
tag: ["卫生院"],
dz: "宁波市象山县上吴村254-2号",
jl: "2.5公里",
zb: [121.892122, 29.449637],
},
{
name: "象山爱尔眼科医院",
img: "http://store.is.autonavi.com/showpic/1d00880c0dce4c237df8499b20eda61d?type=pic",
tag: ["眼科医院"],
dz: "宁波市象山县丹西街道象山港路118号",
jl: "3.4公里",
zb: [121.86596, 29.4603],
},
{
name: "西港村卫生室",
img: "http://store.is.autonavi.com/showpic/aeec5aeacbb4deebb2530a060b37091a?type=pic",
tag: ["卫生院"],
dz: "宁波市象山县规划路与滨海大道交叉口东460米",
jl: "7.5公里",
zb: [121.910589, 29.422593],
},
{
name: "翁敬堂骨伤医院",
img: "http://store.is.autonavi.com/showpic/eb553882ac643ce7edba3074d2b27516?type=pic",
tag: ["骨科医院"],
dz: "宁波市象山县新丰路298号",
jl: "2.6公里",
zb: [121.87011, 29.46552],
},
{
name: "宁波口腔医院象山分院",
img: "http://store.is.autonavi.com/showpic/0ada714ce414813321099165da07151d?type=pic",
tag: ["口腔医院"],
dz: "宁波市象山县丹河东路1098号",
jl: "1.6公里",
zb: [121.898524, 29.461311],
},
{
name: "星城医院",
img: "http://store.is.autonavi.com/showpic/89bfcbf76b4b197a4fb94b10d49b7bf4?type=pic",
tag: ["综合医院"],
dz: "宁波市象山县丹河东路1086号",
jl: "1.7公里",
zb: [121.89456, 29.46375],
},
{
name: "宁波港城口腔医院",
img: "http://store.is.autonavi.com/showpic/d77f446fcacc052f9d1aed8554d125c8?type=pic",
tag: ["口腔医院"],
dz: "宁波市象山县丹东街道新华路269号",
jl: "1.6公里",
zb: [121.88508, 29.46631],
},
{
name: "益民口腔",
img: "http://store.is.autonavi.com/showpic/b742650078a06ec8443c31c94fa4c32c?type=pic",
tag: ["口腔诊所"],
dz: "台州市天台县和合北路161-17号",
jl: "917米",
zb: [121.89336, 29.47956],
},
{
name: "象山妇幼保健院",
img: "http://store.is.autonavi.com/showpic/b742650078a06ec8443c31c94fa4c32c?type=pic",
tag: ["妇幼医院"],
dz: "宁波市象山县城东路1号",
jl: "3公里",
zb: [121.87026, 29.48092],
},
],
});
const list = reactive({
show: true,
index: 0,
index: 3,
yxfw: [
{
id: 0,
@ -104,29 +266,40 @@ const list = reactive({
],
});
const init = () => {
var T = window.T;
map = new T.Map("mapDiv");
// map.setMapType(window.TMAP_SATELLITE_MAP);
map.centerAndZoom(new T.LngLat(121.91686, 29.42154), 12);
map.centerAndZoom(new T.LngLat(121.88356,29.45144), 13);
control = new T.Control.Zoom();
//
map.addControl(control);
control.setPosition(T_ANCHOR_TOP_RIGHT);
var icon = new T.Icon({
iconUrl: img17,
iconUrl: img18,
iconSize: new T.Point(28, 28),
iconAnchor: new T.Point(28, 28),
});
//
var marker = new T.Marker(new T.LngLat(121.94773, 29.47982), { icon: icon });
var markers = new T.Marker(new T.LngLat(121.89074, 29.40876), { icon: icon });
var marker = new T.Marker(new T.LngLat(121.89248, 29.47474), { icon: icon });
map.addOverLay(marker);
map.addOverLay(markers);
yxf();
};
const yxfwxz = (e) => {
list.index = e.id;
};
const yxf = () => {
dropdown.rmyy.forEach((item, index) => {
var icons = new T.Icon({
iconUrl: img17,
iconSize: new T.Point(28, 28),
iconAnchor: new T.Point(28, 28),
});
var LngLats = new T.Marker(new T.LngLat(item.zb[0], item.zb[1]), {
icon: icons,
});
map.addOverLay(LngLats);
});
};
onMounted(() => {
init();
});
@ -148,15 +321,16 @@ onMounted(() => {
z-index: 2;
position: absolute;
width: 40px;
height: 40px;
background: #ffffff;
border-radius: 6px 6px 6px 6px;
opacity: 1;
text-align: center;
padding-bottom: 5px;
padding-top: 3px;
.yxfwtp {
width: 18px;
height: 18px;
margin: 6px auto 0;
margin: 2px auto 0;
}
.yxfwwz {
font-size: 8px;
@ -176,7 +350,7 @@ onMounted(() => {
.yxfwnr {
margin-top: 72px;
margin-left: 16px;
z-index: 2;
z-index: 10;
position: absolute;
background: #ffffff;
border-radius: 6px 6px 6px 6px;
@ -186,7 +360,7 @@ onMounted(() => {
width: 50%;
height: 5px;
border-bottom: 1px solid #f1f1f1;
margin: 0 auto 5px;
margin: 0 auto 3px;
}
.yxfws {
z-index: 2;
@ -199,7 +373,7 @@ onMounted(() => {
.yxfwtp {
width: 18px;
height: 18px;
margin: 6px auto 0;
margin: 4px auto 0;
}
.yxfwwz {
font-size: 8px;
@ -217,4 +391,83 @@ onMounted(() => {
}
}
}
.card {
width: 100%;
height: calc(100% - 102px);
overflow: auto;
padding-bottom: 50px;
.cardlist {
background-color: #fff;
padding: 14px 16px 0;
width: 100%;
height: 80px;
display: flex;
.imgse {
width: 100px;
border-radius: 3px;
height: 68px;
}
.bodys {
border-bottom: 1px solid #f1f1f1;
height: 68px;
width: 250px;
margin-left: 12px;
.bq {
padding-top: 8px;
display: flex;
width: 100%;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
.van-tag--primary.van-tag--plain {
margin-right: 2px;
}
}
.bt {
font-size: 14px;
font-family: PingFang SC, PingFang SC;
font-weight: 500;
color: #333333;
width: 100%;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.dz {
font-size: 12px;
font-family: PingFang SC, PingFang SC;
font-weight: 400;
color: #999999;
line-height: 12px;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
padding-top: 2px;
display: flex;
.tp {
width: 12px;
}
.xxdz {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
width: 170px;
}
.zl {
padding-right: 5px;
}
.ims {
width: 12px;
height: 12px;
}
}
}
}
}
:deep(.van-dropdown-menu__bar) {
box-shadow: 0 0px 0px rgba(100, 101, 102, 0.12);
border-bottom: 1px solid #f1f1f1;
}
</style>

View File

@ -43,7 +43,9 @@
<div v-for="(data, index) in records.list" :key="data.id">
<listNoImg v-if="data.display == 0" :newData="data" />
<listRightImg v-if="data.display == 1" :newData="data" />
<div class="line"></div>
<div class="container">
<div class="line"></div>
</div>
</div>
</div>
</div>
@ -172,7 +174,7 @@ const records = reactive({
position: absolute;
top: 0;
left: 0;
width: 70px;
min-width: 70px;
height: 24px;
background: #457aff;
opacity: 1;
@ -196,9 +198,11 @@ const records = reactive({
font-weight: 600;
color: #333333;
line-height: 24px;
// white-space: nowrap;
overflow: hidden;
// text-overflow: ellipsis;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
}
.time {
margin-top: 24px;
@ -228,7 +232,7 @@ const records = reactive({
padding-top: 0;
// overflow: hidden;
background-color: #ffffff;
height: 68vh;
// height:calc(100vh - 150px);
.main-t {
display: flex;
align-items: center;
@ -263,9 +267,10 @@ const records = reactive({
.list {
// box-sizing: border-box;
width: 100vw;
height: 59vh;
height: calc(100vh - 280px);
background-color: #ffffff;
overflow: auto;
// border: 1px solid yellow;
// border: 1px solid yellow;
}
}
}
@ -280,13 +285,18 @@ const records = reactive({
::-webkit-scrollbar {
display: none;
}
.container {
display: flex;
justify-content: center;
align-items: center;
}
.line {
width: 100vw;
width: calc(100vw - 32px);
height: 0px;
border-radius: 0px 0px 0px 0px;
opacity: 1;
border: 1px solid #f1f1f1;
margin-top: 16px;
margin-top: 12px;
margin-bottom: 16px;
text-align: center;
}

View File

@ -5,6 +5,9 @@ import vue from '@vitejs/plugin-vue'
// https://vitejs.dev/config/
export default defineConfig({
server: { // ← ← ← ← ← ←
host: '0.0.0.0' // ← 新增内容 ←
},
plugins: [
vue(),
],