From b099e758396f61b39d24cf5fa6be7bb0d10c2b4d Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期一, 18 五月 2026 19:16:26 +0800
Subject: [PATCH] 提交
---
small-program/pages/storage-point/storage-point.vue | 61 +++++++++++++++++++++++++++---
1 files changed, 55 insertions(+), 6 deletions(-)
diff --git a/small-program/pages/storage-point/storage-point.vue b/small-program/pages/storage-point/storage-point.vue
index bac46dd..ff80462 100644
--- a/small-program/pages/storage-point/storage-point.vue
+++ b/small-program/pages/storage-point/storage-point.vue
@@ -62,6 +62,9 @@
<text class="point-name">{{ item.name }}</text>
<text class="point-distance">{{ item.distance }}</text>
</view>
+ <view class="point-tips">
+ <view class="point-tips-item" v-for="(tag, idx) in item.locationTagNames" :key="idx">{{ tag }}</view>
+ </view>
<view class="point-address">
<image src="/static/icon/home_ic_location3@2x.png" mode="widthFix"></image>
<text>{{ item.address ||''}}</text>
@@ -103,6 +106,9 @@
</swiper>
<view class="popup-body">
<text class="popup-title">{{ activeStore.name }}</text>
+ <view class="point-tips">
+ <view class="point-tips-item" v-for="(tag, idx) in activeStore.locationTagNames" :key="idx">{{ tag }}</view>
+ </view>
<text class="popup-hours">{{ activeStore.time }}</text>
<text class="popup-desc" v-if="activeStore.content">{{ activeStore.content }}</text>
<view class="popup-address-row" @click="openNavigation">
@@ -151,7 +157,8 @@
selectedFilters: {
sortType: '',
distance: '',
- businessType: ''
+ businessType: '',
+ locationTagId: ''
},
mapCenter: {
latitude: 31.86119,
@@ -160,7 +167,8 @@
filters: [
{ key: 'sortType', label: '缁煎悎鎺掑簭' },
{ key: 'distance', label: '浣嶇疆鑼冨洿' },
- { key: 'businessType', label: '钀ヤ笟鏃堕棿' }
+ { key: 'businessType', label: '钀ヤ笟鏃堕棿' },
+ { key: 'locationTagId', label: '浣嶇疆鏍囩' }
],
dropdownOptions: {
sortType: [
@@ -179,7 +187,8 @@
{ label: '钀ヤ笟鏃堕棿', value: '' },
{ label: '鍏ㄥぉ钀ヤ笟', value: '1' },
{ label: '闄愭椂钀ヤ笟', value: '0' }
- ]
+ ],
+ locationTagId: []
},
pointList: [],
isRequest: true,
@@ -192,7 +201,8 @@
return {
sortType: this.getFilterLabel('sortType'),
distance: this.getFilterLabel('distance'),
- businessType: this.getFilterLabel('businessType')
+ businessType: this.getFilterLabel('businessType'),
+ locationTagId: this.getFilterLabel('locationTagId')
}
},
currentOptions() {
@@ -232,12 +242,23 @@
},
async onLoad() {
await this.$onLaunched
+ this.getLocationTagList()
this.getNearbyShopList()
},
onReachBottom() {
this.getNearbyShopList()
},
methods: {
+ async getLocationTagList() {
+ const res = await this.$u.api.getCategoryList({ type: 5 })
+ if (res.code === 200) {
+ const list = (res.data || []).map(item => ({
+ label: item.name,
+ value: item.id
+ }))
+ this.dropdownOptions.locationTagId = [{ label: '浣嶇疆鏍囩', value: '' }, ...list]
+ }
+ },
isFilterBold(key) {
if (key === 'sortType') {
return true
@@ -274,12 +295,17 @@
name: this.keyword,
cityId: this.cityId,
sortType: this.selectedFilters.sortType || 1,
- businessType: this.selectedFilters.businessType || ''
+ businessType: this.selectedFilters.businessType || '',
+ locationTagId: this.selectedFilters.locationTagId || ''
}
})
if (res.code === 200) {
let arr = []
res.data.records.forEach(item => {
+ let locationTagNames = []
+ if (item.locationTagNames) {
+ locationTagNames = item.locationTagNames.split(',')
+ }
let obj = {
id: item.id,
shopId: item.id,
@@ -291,7 +317,8 @@
latitude: item.latitude,
longitude: item.longitude,
depositTypes: item.depositTypes,
- feeStandard: item.feeStandard
+ feeStandard: item.feeStandard,
+ locationTagNames: locationTagNames
}
arr.push(obj)
})
@@ -348,6 +375,9 @@
longitude: this.longitude,
}).then(res => {
if (res.code === 200) {
+ if (res.data.locationTagNames) {
+ res.data.locationTagNames = res.data.locationTagNames.split(',')
+ }
this.activeStore = res.data
}
})
@@ -821,6 +851,25 @@
justify-content: space-between;
gap: 12rpx;
}
+
+ .point-tips {
+ width: 100%;
+ display: flex;
+ align-items: center;
+ margin-top: 12rpx;
+ .point-tips-item {
+ width: 116rpx;
+ height: 36rpx;
+ line-height: 36rpx;
+ text-align: center;
+ border-radius: 8rpx;
+ font-weight: 400;
+ font-size: 20rpx;
+ color: #10B2FA;
+ margin-right: 12rpx;
+ border: 1rpx solid #10B2FA;
+ }
+ }
.point-name {
flex: 1;
--
Gitblit v1.9.3