From be90afefe51e6ddabc115b6d9477eab3fa804df6 Mon Sep 17 00:00:00 2001
From: linxi <957440651@qq.com>
Date: Sat, 28 Feb 2026 10:49:06 +0800
Subject: [PATCH 01/99] =?UTF-8?q?Fix=EF=BC=9A4906=20=E3=80=90=E5=95=86?=
=?UTF-8?q?=E5=9F=8E=E5=B0=8F=E7=A8=8B=E5=BA=8F=E3=80=91=E5=BA=B7=E5=85=BB?=
=?UTF-8?q?=E5=92=8C=E6=97=85=E5=B1=85=E7=B1=BB=E7=9B=AE=E4=B8=8B=E9=A1=B5?=
=?UTF-8?q?=E9=9D=A2=E5=86=85=E5=AE=B9=E5=81=8F=E5=B7=A6=EF=BC=8C=E9=9C=80?=
=?UTF-8?q?=E6=8C=89=E6=95=88=E6=9E=9C=E5=9B=BE=E8=B0=83=E6=95=B4=EF=BC=8C?=
=?UTF-8?q?=E5=B9=B6=E5=81=9A=E6=88=90=E7=80=91=E5=B8=83=E6=B5=81=E5=BD=A2?=
=?UTF-8?q?=E5=BC=8F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pkg_product/views/healthFoods.vue | 110 +++++++++++++++++++--------
pkg_product/views/healthSanctum.vue | 111 ++++++++++++++++++++--------
2 files changed, 162 insertions(+), 59 deletions(-)
diff --git a/pkg_product/views/healthFoods.vue b/pkg_product/views/healthFoods.vue
index 374197d..e90257b 100644
--- a/pkg_product/views/healthFoods.vue
+++ b/pkg_product/views/healthFoods.vue
@@ -93,35 +93,69 @@
{{ tab.name }}
-
-
-
-
-
-
-
- {{ item.areaName }}
+
+
+
+
+
+
+
+
+ {{ item.areaName }}
+
+
+ {{ item.intro }}
+
+
+
+
+ {{ item.name }}
- {{ item.intro }}
-
-
-
+
+
+
+
+
+
+
+
+ {{ item.areaName }}
+
+
+ {{ item.intro }}
+
+
+
+
+ {{ item.name }}
- {{ item.name }}
@@ -158,6 +192,12 @@ export default {
wellnessButtonSrc() {
const config = this.topImageConfig || {}
return config.wellnessButtonImageFocus || config.wellnessButtonImage || ''
+ },
+ leftItems() {
+ return this.items.filter((item, index) => index % 2 === 0)
+ },
+ rightItems() {
+ return this.items.filter((item, index) => index % 2 !== 0)
}
},
onLoad(opts) {
@@ -346,17 +386,29 @@ export default {
display: grid;
grid-template-columns: 50% 50%;
}
+.waterfall-box {
+ display: flex;
+ justify-content: space-between;
+ align-items: flex-start;
+}
+.waterfall-column {
+ width: 48%;
+ display: flex;
+ flex-direction: column;
+}
.atr{
width: 52rpx;
height: 52rpx;
border-radius: 50%;
}
.img{
- width: 320rpx;
- height: 320rpx;
- // background: #707070;
+ width: 100%;
border-radius: 16rpx;
position: relative;
+ overflow: hidden;
+ max-height: 460rpx;
+ display: block;
+ min-height: 200rpx;
}
.sanctum-wrap{
min-height: 100vh;
diff --git a/pkg_product/views/healthSanctum.vue b/pkg_product/views/healthSanctum.vue
index eb508dc..68c6bfc 100644
--- a/pkg_product/views/healthSanctum.vue
+++ b/pkg_product/views/healthSanctum.vue
@@ -63,35 +63,69 @@
-->
大家都在看
-
-
-
-
-
-
-
- {{ item.areaName }}
+
+
+
+
+
+
+
+
+ {{ item.areaName }}
+
+
+ {{ item.intro }}
+
+
+
+
+ {{ item.name }}
- {{ item.intro }}
-
-
-
+
+
+
+
+
+
+
+
+ {{ item.areaName }}
+
+
+ {{ item.intro }}
+
+
+
+
+ {{ item.name }}
- {{ item.name }}
@@ -128,7 +162,12 @@ export default {
wellnessButtonSrc() {
const config = this.topImageConfig || {}
return config.wellnessButtonImage || config.wellnessButtonImageFocus || ''
- keyword: ''
+ },
+ leftItems() {
+ return this.items.filter((item, index) => index % 2 === 0)
+ },
+ rightItems() {
+ return this.items.filter((item, index) => index % 2 !== 0)
}
},
onLoad(opts) {
@@ -308,17 +347,29 @@ export default {
display: grid;
grid-template-columns: 50% 50%;
}
+.waterfall-box {
+ display: flex;
+ justify-content: space-between;
+ align-items: flex-start;
+}
+.waterfall-column {
+ width: 48%;
+ display: flex;
+ flex-direction: column;
+}
.atr{
width: 52rpx;
height: 52rpx;
border-radius: 50%;
}
.img{
- width: 320rpx;
- height: 320rpx;
- // background: #707070;
+ width: 100%;
border-radius: 16rpx;
position: relative;
+ overflow: hidden;
+ max-height: 460rpx;
+ display: block;
+ min-height: 200rpx;
}
.sanctum-wrap{
min-height: 100vh;
From 732a21e17fedb85b8eae6a79788b1aedf5557458 Mon Sep 17 00:00:00 2001
From: linxi <957440651@qq.com>
Date: Sat, 28 Feb 2026 11:08:38 +0800
Subject: [PATCH 02/99] =?UTF-8?q?Fix=EF=BC=9A4903=20=E3=80=90=E5=95=86?=
=?UTF-8?q?=E5=9F=8E=E5=B0=8F=E7=A8=8B=E5=BA=8F=E3=80=91=E5=BA=97=E9=93=BA?=
=?UTF-8?q?=E5=85=A5=E9=A9=BB=EF=BC=8C=E5=BA=97=E9=93=BA=E7=B1=BB=E5=9E=8B?=
=?UTF-8?q?=E7=82=B9=E5=87=BB=E8=8C=83=E5=9B=B4=E8=B0=83=E6=95=B4=EF=BC=88?=
=?UTF-8?q?=E7=82=B9=E5=87=BB=E5=8F=B3=E4=BE=A7=E2=80=9C>=E2=80=9D?=
=?UTF-8?q?=E6=8C=89=E9=92=AE=E6=97=B6=E6=B2=A1=E6=9C=89=E5=BC=B9=E5=87=BA?=
=?UTF-8?q?=E7=B1=BB=E5=9E=8B=E9=80=89=E6=8B=A9=EF=BC=89?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pkg_join/views/shop.vue | 3 ++-
pkg_join/views/supplier.vue | 15 +++++++++------
2 files changed, 11 insertions(+), 7 deletions(-)
diff --git a/pkg_join/views/shop.vue b/pkg_join/views/shop.vue
index 6f6a8ad..9e75c1c 100644
--- a/pkg_join/views/shop.vue
+++ b/pkg_join/views/shop.vue
@@ -210,6 +210,7 @@
mode="selector"
range-key="name"
class="picker"
+ style="width: 100%"
@change="typeChange"
>
@@ -289,7 +290,7 @@
-
+
*
diff --git a/pkg_join/views/supplier.vue b/pkg_join/views/supplier.vue
index c534d7d..80da33c 100644
--- a/pkg_join/views/supplier.vue
+++ b/pkg_join/views/supplier.vue
@@ -161,7 +161,7 @@
-
+
*
@@ -349,7 +349,7 @@
-
+
*
@@ -358,13 +358,16 @@
:value="indexType"
:range="columnsType"
:disabled="reviewing"
- mode=selector
+ mode="selector"
range-key="name"
class="picker"
@change="typeChange"
>
-
-
+
+
+
+
+
@@ -401,7 +404,7 @@
-
+
*
From c33f9dfc12f4527d8acb896417f5b024e247a931 Mon Sep 17 00:00:00 2001
From: linxi <957440651@qq.com>
Date: Tue, 3 Mar 2026 10:08:56 +0800
Subject: [PATCH 03/99] =?UTF-8?q?Fix=EF=BC=9A4906=20=E3=80=90=E5=95=86?=
=?UTF-8?q?=E5=9F=8E=E5=B0=8F=E7=A8=8B=E5=BA=8F=E3=80=91=E5=BA=B7=E5=85=BB?=
=?UTF-8?q?=E5=92=8C=E6=97=85=E5=B1=85=E7=B1=BB=E7=9B=AE=E4=B8=8B=E9=A1=B5?=
=?UTF-8?q?=E9=9D=A2=E5=86=85=E5=AE=B9=E5=81=8F=E5=B7=A6=EF=BC=8C=E9=9C=80?=
=?UTF-8?q?=E6=8C=89=E6=95=88=E6=9E=9C=E5=9B=BE=E8=B0=83=E6=95=B4=EF=BC=8C?=
=?UTF-8?q?=E5=B9=B6=E5=81=9A=E6=88=90=E7=80=91=E5=B8=83=E6=B5=81=E5=BD=A2?=
=?UTF-8?q?=E5=BC=8F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pkg_product/views/healthFoods.vue | 15 +++++++++------
pkg_product/views/healthSanctum.vue | 15 +++++++++------
2 files changed, 18 insertions(+), 12 deletions(-)
diff --git a/pkg_product/views/healthFoods.vue b/pkg_product/views/healthFoods.vue
index e90257b..af84610 100644
--- a/pkg_product/views/healthFoods.vue
+++ b/pkg_product/views/healthFoods.vue
@@ -108,7 +108,7 @@
:poster="item.cover + '?vframe/jpg/offset/1'"
v-if="item.coverType === 2">
-
+
{{ item.intro }}
-
+
@@ -140,7 +140,7 @@
:poster="item.cover + '?vframe/jpg/offset/1'"
v-if="item.coverType === 2">
-
+
{{ item.intro }}
-
+
@@ -371,8 +371,8 @@ export default {
position: relative;
}
.desc-txt {
- height: 78rpx;
line-height: 40rpx;
+ max-height: 78rpx;
}
.address{
position: absolute;
@@ -392,9 +392,12 @@ export default {
align-items: flex-start;
}
.waterfall-column {
- width: 48%;
+ width: 49.9%;
display: flex;
flex-direction: column;
+ .img{
+ height: 670rpx;
+ }
}
.atr{
width: 52rpx;
diff --git a/pkg_product/views/healthSanctum.vue b/pkg_product/views/healthSanctum.vue
index 68c6bfc..4e61c9d 100644
--- a/pkg_product/views/healthSanctum.vue
+++ b/pkg_product/views/healthSanctum.vue
@@ -78,7 +78,7 @@
:poster="item.cover + '?vframe/jpg/offset/1'"
v-if="item.coverType === 2">
-
+
{{ item.intro }}
-
+
@@ -110,7 +110,7 @@
:poster="item.cover + '?vframe/jpg/offset/1'"
v-if="item.coverType === 2">
-
+
{{ item.intro }}
-
+
@@ -332,8 +332,8 @@ export default {
position: relative;
}
.desc-txt {
- height: 78rpx;
line-height: 40rpx;
+ max-height: 78rpx;
}
.address{
position: absolute;
@@ -353,9 +353,12 @@ export default {
align-items: flex-start;
}
.waterfall-column {
- width: 48%;
+ width: 49.9%;
display: flex;
flex-direction: column;
+ .img{
+ height: 670rpx;
+ }
}
.atr{
width: 52rpx;
From d0ca72c85585856aca416d3973871f85ead5a15d Mon Sep 17 00:00:00 2001
From: linxi <957440651@qq.com>
Date: Tue, 3 Mar 2026 14:03:02 +0800
Subject: [PATCH 04/99] =?UTF-8?q?Fix=EF=BC=9A4906=20=E3=80=90=E5=95=86?=
=?UTF-8?q?=E5=9F=8E=E5=B0=8F=E7=A8=8B=E5=BA=8F=E3=80=91=E5=BA=B7=E5=85=BB?=
=?UTF-8?q?=E5=92=8C=E6=97=85=E5=B1=85=E7=B1=BB=E7=9B=AE=E4=B8=8B=E9=A1=B5?=
=?UTF-8?q?=E9=9D=A2=E5=86=85=E5=AE=B9=E5=81=8F=E5=B7=A6=EF=BC=8C=E9=9C=80?=
=?UTF-8?q?=E6=8C=89=E6=95=88=E6=9E=9C=E5=9B=BE=E8=B0=83=E6=95=B4=EF=BC=8C?=
=?UTF-8?q?=E5=B9=B6=E5=81=9A=E6=88=90=E7=80=91=E5=B8=83=E6=B5=81=E5=BD=A2?=
=?UTF-8?q?=E5=BC=8F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pkg_product/views/healthFoods.vue | 4 ++--
pkg_product/views/healthSanctum.vue | 12 ++++++------
2 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/pkg_product/views/healthFoods.vue b/pkg_product/views/healthFoods.vue
index af84610..171a0bc 100644
--- a/pkg_product/views/healthFoods.vue
+++ b/pkg_product/views/healthFoods.vue
@@ -108,7 +108,7 @@
:poster="item.cover + '?vframe/jpg/offset/1'"
v-if="item.coverType === 2">
-
+
-
+
-->
大家都在看
-
+
@@ -78,7 +78,7 @@
:poster="item.cover + '?vframe/jpg/offset/1'"
v-if="item.coverType === 2">
-
+
{{ item.intro }}
-
+
@@ -110,7 +110,7 @@
:poster="item.cover + '?vframe/jpg/offset/1'"
v-if="item.coverType === 2">
-
+
{{ item.intro }}
-
+
@@ -377,7 +377,7 @@ export default {
.sanctum-wrap{
min-height: 100vh;
background-color: #fff;
- padding: 20rpx ;
+ padding: 10rpx ;
}
.tab{
position: relative;
From 6b849c53005c8be48ecab5128d6a7d72f1e4c303 Mon Sep 17 00:00:00 2001
From: linxi <957440651@qq.com>
Date: Thu, 12 Mar 2026 12:29:27 +0800
Subject: [PATCH 05/99] =?UTF-8?q?Feat=EF=BC=9A=E4=BD=93=E9=AA=8C=E5=BA=97?=
=?UTF-8?q?=E5=85=A5=E9=A9=BB=E5=AE=A1=E6=A0=B8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
api/join.js | 16 +
pages.json | 7 +
pkg_join/views/experienceStore.vue | 933 +++++++++++++++++++++++++++++
pkg_join/views/index.vue | 10 +
4 files changed, 966 insertions(+)
create mode 100644 pkg_join/views/experienceStore.vue
diff --git a/api/join.js b/api/join.js
index 3854c48..e898cc5 100644
--- a/api/join.js
+++ b/api/join.js
@@ -55,6 +55,22 @@ export function saveWholesaler(wholesalerInfo) {
return request.post("/merchantApply/wholesaler/submit", param, {login: true})
}
+export function saveExperienceStore(params) {
+ return request.post("/merchantApply/experienceStore/submit", params, {login: true})
+}
+
+export function saveExperienceStoreDraft(params) {
+ return request.post("/merchantApply/experienceStore/saveDraft", params, {login: true})
+}
+
+export function getExperienceStoreCategoryList() {
+ return request.get("/experienceStore/categoryList", {}, {login: true})
+}
+
+export function getExperienceStoreInfo(params) {
+ return request.get("merchantApply/info/experienceStore", params, {login: true})
+}
+
// 撤销入驻申请
export function removeApply() {
return request.post("/merchantApply/revoke")
diff --git a/pages.json b/pages.json
index 0187dbb..92aa809 100644
--- a/pages.json
+++ b/pages.json
@@ -477,6 +477,13 @@
"navigationBarTitleText": "旅居商家入驻",
"navigationBarBackgroundColor": "#FFFFFF"
}
+ },
+ {
+ "path": "views/experienceStore",
+ "style": {
+ "navigationBarTitleText": "体验店入驻",
+ "navigationBarBackgroundColor": "#FFFFFF"
+ }
}
]
},
diff --git a/pkg_join/views/experienceStore.vue b/pkg_join/views/experienceStore.vue
new file mode 100644
index 0000000..ad6da9a
--- /dev/null
+++ b/pkg_join/views/experienceStore.vue
@@ -0,0 +1,933 @@
+
+
+
+ 驳回原因: {{ form.reviewMsg }}
+
+
+ 审核中,请耐心等待审核结果
+
+
+
+ *
+ 名称:
+
+
+
+
+
+
+
+
+ *
+ 主图:
+
+
+
+
+
+
+
+ *
+ 头像:
+
+
+
+
+
+
+
+
+ *
+ 轮播图:
+
+
+
+
+
+
+
+ 视频:
+
+
+
+
+
+
+ x
+
+
+
+
+
+
+ *
+ 公司名称
+
+
+
+
+
+
+
+ *
+ 店铺分类
+
+
+
+
+
+ {{ form.experienceStoreCategoryName || '请选择店铺分类' }}
+
+
+
+
+
+
+
+ *
+ 简介
+
+
+
+
+
+
+
+
+ *
+ 联系人
+
+
+
+
+
+
+
+
+ *
+ 营业时间
+
+
+
+
+ {{ form.serviceTime || '起始时间' }}
+
+ -
+
+ {{ form.serviceEndTime || '结束时间' }}
+
+
+
+
+
+
+
+
+ *
+ 省市区
+
+
+
+
+
+
+
+
+ *
+ 详细地址
+
+
+
+
+
+
+
+
+ *
+ 地理定位
+
+
+
+
+
+
+
+
+
+ *
+ 商家电话
+
+
+
+
+
+
+
+
+
+
+
+
+
+ *
+ 填写验证码
+
+
+
+
+
+
+
+
+ *
+ 商家微信
+
+
+
+
+
+
+
+
+ *
+ 资质:
+
+
+
+
+
+
+
+ {{ form.reviewStatus === 0 ? '撤销申请' : form.reviewStatus === 2 ? '重新提交' : '提交审核' }}
+
+
+
+
+ 提交审核
+
+
+
+
+
+ 入驻申请须知
+
+
+
+
+
+
+
+ 我已仔细阅读并同意
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/pkg_join/views/index.vue b/pkg_join/views/index.vue
index 7a5376f..b848b1b 100644
--- a/pkg_join/views/index.vue
+++ b/pkg_join/views/index.vue
@@ -38,6 +38,13 @@
mode="widthFix"
@click="toTravelResidence"
/>
+
@@ -116,6 +123,9 @@ export default {
}
this.$yrouter.push('/pkg_join/views/shop?partnerId=' + this.partnerId)
break
+ case 'experience_store':
+ this.$yrouter.push('/pkg_join/views/experienceStore?partnerId=' + this.partnerId)
+ break
case 'wholesaler':
if (this.hasWholesaler === 1) {
this.$global.goSupplierMini()
From 605cd4f0542552ba8c58739da91d933a8d1c654a Mon Sep 17 00:00:00 2001
From: linxi <957440651@qq.com>
Date: Thu, 12 Mar 2026 18:05:38 +0800
Subject: [PATCH 06/99] =?UTF-8?q?Feat=EF=BC=9A=E4=BD=93=E9=AA=8C=E5=88=B8?=
=?UTF-8?q?=E9=A2=86=E5=8F=96?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
api/product.js | 6 +-
pages.json | 7 +
pages/home/index.vue | 31 ++
pkg_product/views/experienceCoupon.vue | 454 +++++++++++++++++++++++++
4 files changed, 497 insertions(+), 1 deletion(-)
create mode 100644 pkg_product/views/experienceCoupon.vue
diff --git a/api/product.js b/api/product.js
index 1268d51..36a19dc 100644
--- a/api/product.js
+++ b/api/product.js
@@ -159,4 +159,8 @@ export function hadView(data) {
export function getShareImg(id) {
return request.get('/landmarkGoods/poster/' + id, {}, {login: false})
-}
\ No newline at end of file
+}
+
+export function getLatestExperienceCoupon() {
+ return request.get('/experienceCoupon/latest', {}, {login: true})
+}
diff --git a/pages.json b/pages.json
index 92aa809..c827f7a 100644
--- a/pages.json
+++ b/pages.json
@@ -737,6 +737,13 @@
"navigationBarTitleText": "时令尝鲜"
}
},
+ {
+ "path": "views/experienceCoupon",
+ "style": {
+ "navigationBarTitleText": "体验券详情",
+ "navigationBarBackgroundColor": "#FFFFFF"
+ }
+ },
{
"path": "views/submitOrder",
"style": {
diff --git a/pages/home/index.vue b/pages/home/index.vue
index be1d07f..cde3e57 100644
--- a/pages/home/index.vue
+++ b/pages/home/index.vue
@@ -85,6 +85,17 @@
+
+
+
{
const { data } = res
@@ -1429,6 +1447,9 @@ export default {
_this.$set(_this, 'contentHomestay', data.contentHomestayV2 || [])
_this.$set(_this, 'contentFestival', data.contentFestivalV2 || [])
_this.$set(_this, 'newZone', data.newGoods || [])
+ _this.$set(_this, 'hasExperienceCoupon', data.hasExperienceCoupon || 0)
+ _this.$set(_this, 'hasUnusedExperienceCoupon', data.hasUnusedExperienceCoupon || 0)
+ _this.$set(_this, 'experienceCouponImage', data.experienceCouponImage || '')
_this.$set(_this, 'isOldUserPopupShow', data.isOldUserPopupShow || 0)
_this.indexVideo = data.indexVideo ? data.indexVideo.videoUrl : ''
_this.bastLeftList = []
@@ -1802,6 +1823,16 @@ export default {
}
}
}
+.experience-coupon-banner {
+ position: relative;
+ z-index: 5;
+ padding-top: 16rpx;
+ .experience-coupon-img {
+ display: block;
+ width: 100%;
+ border-radius: 20rpx;
+ }
+}
.hotel-list-wrap {
position: relative;
width: 344rpx;
diff --git a/pkg_product/views/experienceCoupon.vue b/pkg_product/views/experienceCoupon.vue
new file mode 100644
index 0000000..78c972a
--- /dev/null
+++ b/pkg_product/views/experienceCoupon.vue
@@ -0,0 +1,454 @@
+
+
+
+
+
+
+
+
+
+ {{ item.name }}
+
+
+
+
+
+
+
+ {{ item.title }}
+
+
+ {{ item.subTitle }}
+
+
+ {{ item.distance }}
+ 营业时间:{{ item.businessTime }}
+
+
+
+
+
+
+
+
+
+ 继续选择(还可以选{{ remainCount }}张)
+
+
+ 先去体验
+
+
+
+
+ 确认
+
+
+
+
+
+
+
From ad70e3afeddd178ef8552dacd66963ea0e0cad7f Mon Sep 17 00:00:00 2001
From: linxi <957440651@qq.com>
Date: Sun, 15 Mar 2026 16:21:45 +0800
Subject: [PATCH 07/99] =?UTF-8?q?Feat=EF=BC=9A=E4=BD=93=E9=AA=8C=E9=A1=B9?=
=?UTF-8?q?=E7=9B=AE=E8=AF=A6=E6=83=85?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
api/qianxian.js | 17 +
pages.json | 7 +
pkg_product/views/experienceProjectDetail.vue | 544 ++++++++++++++++++
pkg_product/views/sojoumStore.vue | 202 ++++++-
4 files changed, 753 insertions(+), 17 deletions(-)
create mode 100644 pkg_product/views/experienceProjectDetail.vue
diff --git a/api/qianxian.js b/api/qianxian.js
index 110268d..9ec0387 100644
--- a/api/qianxian.js
+++ b/api/qianxian.js
@@ -316,3 +316,20 @@ export function getCityShopList(params) {
export function getCountyFamousHotelType() {
return request.get('/countyFamous/hotelType', {}, {login: true})
}
+
+/**
+ * ������б�
+ * travelMerchantId int �þ��̻�ID
+ * experienceStoreCategoryId int ��������ID
+ */
+export function getExperienceStoreList(params) {
+ return request.get('/experienceStore/list', params, { login: true })
+}
+
+export function getExperienceStoreProject(experienceMerchantId) {
+ return request.get('/experienceStoreProject/' + experienceMerchantId, {}, { login: true })
+}
+
+export function getExperienceStoreDetail(id) {
+ return request.get('/experienceStore/detail/' + id, {}, { login: true })
+}
diff --git a/pages.json b/pages.json
index c827f7a..ad91f60 100644
--- a/pages.json
+++ b/pages.json
@@ -744,6 +744,13 @@
"navigationBarBackgroundColor": "#FFFFFF"
}
},
+ {
+ "path": "views/experienceProjectDetail",
+ "style": {
+ "navigationBarTitleText": "体验项目详情",
+ "navigationBarBackgroundColor": "#FFFFFF"
+ }
+ },
{
"path": "views/submitOrder",
"style": {
diff --git a/pkg_product/views/experienceProjectDetail.vue b/pkg_product/views/experienceProjectDetail.vue
new file mode 100644
index 0000000..2910bdd
--- /dev/null
+++ b/pkg_product/views/experienceProjectDetail.vue
@@ -0,0 +1,544 @@
+
+
+
+
+
+
+
+
+
+
+ {{ project.name }}
+
+
+ {{ project.intro }}
+
+
+
+ 营业时间
+ {{ project.serviceTime }}~{{ project.serviceEndTime }}
+
+ 营业执照
+
+
+
+
+
+ {{ project.cityName }}{{ project.address }}
+
+
+
+
+
+
+
+ 导航
+
+
+
+
+
+ 客服
+
+
+
+
+
+
+
+
+
+ 超值体验
+
+
+
+
+
+
+
+ {{ project.experienceTitle || project.name }}
+
+
+
+ {{ project.experienceSubTitle || project.intro }}
+
+
+
+
+
+
+ 详情
+
+
+
+
+ {{ item.name }}
+
+ ({{ item.count }})
+
+
+
+
+ {{ project.detailText || '详情信息由商家提供' }}
+
+
+
+
+ 备注
+
+
+ {{ project.remark || '仅限堂食,具体以到店实际安排为准' }}
+
+
+
+
+ 使用须知
+
+
+ 有效期: {{ validFrom || '2026年1月1日' }} — {{ validTo || '2026年1月31日' }}
+
+
+
+ {{ usageNotice || '无需预约,如遇消费高峰时段您可能需要排队' }}
+
+
+
+ 平台温馨提醒:您在到店体验本商品/服务期间,请关注商家的安全提示内容,了解相关注意事项,做好安全防护措施,保护您的安全。
+
+
+
+
+
+
+
+
+
+
+
diff --git a/pkg_product/views/sojoumStore.vue b/pkg_product/views/sojoumStore.vue
index 5433559..6e2e1b0 100644
--- a/pkg_product/views/sojoumStore.vue
+++ b/pkg_product/views/sojoumStore.vue
@@ -82,19 +82,22 @@
-
-
-
- {{ item.text }}
+
+
+
+
+
+ {{ item.text }}
+
+
-
-
+
+
+
+
+
+
+
+
+
+ {{ item.cityName }}
+
+
+
+ {{ item.name }}
+ {{ item.intro }}
+
+
+ 营业时间:{{ item.serviceTime }}~{{ item.serviceEndTime }}
+
+
+ 查看
+
+
+
+
+
+
+ 店主还没有上传内容哦~
+
+
{
+ if (res.status === 200) {
+ this.experienceStoreList = res.data.records || []
+ }
+ }).finally(() => {
+ uni.hideLoading()
+ })
+ },
getJiaLouProductList() {
uni.showLoading({
title: '加载中',
@@ -855,7 +918,8 @@ export default {
align-items: center;
padding: 20rpx;
border-top: 1px solid #f1f1f1;
- font-size: 16px;
+ font-size: 22rpxl;
+ font-weight: bold;
.time {
flex: 1;
color: #333;
@@ -1018,24 +1082,128 @@ export default {
color:#A6AAB3;
font-size:28rpx;
}
+.experience-list {
+ display: flex;
+ flex-wrap: wrap;
+ justify-content: space-between;
+
+ .experience-item {
+ width: 335rpx;
+ background: #fff;
+ border-radius: 16rpx;
+ overflow: hidden;
+ margin-bottom: 20rpx;
+ box-shadow: 0 2rpx 10rpx rgba(0,0,0,0.05);
+
+ .img-box {
+ position: relative;
+ width: 100%;
+ height: 335rpx;
+
+ .cover-img {
+ width: 100%;
+ height: 100%;
+ }
+
+ .location-tag {
+ position: absolute;
+ bottom: 10rpx;
+ left: 10rpx;
+ display: flex;
+ align-items: center;
+ // background: rgba(0,0,0,0.5);
+ // padding: 4rpx 10rpx;
+ // border-radius: 20rpx;
+
+ .city-name {
+ color: #fff;
+ font-size: 20rpx;
+ margin-left: 4rpx;
+ }
+ }
+ }
+
+ .info-box {
+ padding: 16rpx;
+
+ .name {
+ font-size: 28rpx;
+ font-weight: bold;
+ color: #333;
+ margin-bottom: 8rpx;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ }
+
+ .intro {
+ font-size: 22rpx;
+ color: #999;
+ margin-bottom: 16rpx;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ }
+
+ .bottom-row {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+
+ .time {
+ font-size: 20rpx;
+ color: #666;
+ }
+
+ .btn-check {
+ background: #C52733;
+ color: #fff;
+ font-size: 24rpx;
+ padding: 4rpx 16rpx;
+ border-radius: 20rpx;
+ }
+ }
+ }
+ }
+}
.top-tab {
padding-bottom: 30rpx;
padding-top: 30rpx;
background: #fff;
+
+ .tab-scroll {
+ width: 100%;
+ white-space: nowrap;
+
+ .tab-list {
+ display: inline-flex;
+ padding: 0 30rpx;
+ }
+ }
+
.tab {
+ display: inline-block;
width: fit-content;
+ margin-right: 20rpx;
+
+ &:last-child {
+ margin-right: 0;
+ }
+
.tab-item {
height: 52rpx;
padding: 0 30rpx;
- border-radius: 26rpx 0 0 26rpx;
+ border-radius: 26rpx;
font-size: 32rpx;
line-height: 52rpx;
font-weight: bold;
+
&.active {
color: #fff;
background: linear-gradient(90deg, #C52733 0%, rgba(211,92,101,0.91) 54%, rgba(255,255,255,0.62) 100%);
}
}
+
&.hide {
display: none;
}
From 9a647cffd60a5855468181e29026e6df083e7365 Mon Sep 17 00:00:00 2001
From: linxi <957440651@qq.com>
Date: Mon, 16 Mar 2026 18:09:41 +0800
Subject: [PATCH 08/99] =?UTF-8?q?Feat=EF=BC=9A=E4=BD=93=E9=AA=8C=E5=88=B8?=
=?UTF-8?q?=E8=AF=A6=E6=83=85?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pages.json | 4 +++-
pkg_product/views/experienceProjectDetail.vue | 12 ++++++------
2 files changed, 9 insertions(+), 7 deletions(-)
diff --git a/pages.json b/pages.json
index ad91f60..f161a1c 100644
--- a/pages.json
+++ b/pages.json
@@ -746,9 +746,11 @@
},
{
"path": "views/experienceProjectDetail",
+
"style": {
"navigationBarTitleText": "体验项目详情",
- "navigationBarBackgroundColor": "#FFFFFF"
+ "navigationBarBackgroundColor": "#FFFFFF",
+ "navigationStyle": "custom"
}
},
{
diff --git a/pkg_product/views/experienceProjectDetail.vue b/pkg_product/views/experienceProjectDetail.vue
index 2910bdd..4dbee1f 100644
--- a/pkg_product/views/experienceProjectDetail.vue
+++ b/pkg_product/views/experienceProjectDetail.vue
@@ -35,7 +35,7 @@
@@ -46,13 +46,13 @@
-
+
导航
-
+
客服
@@ -108,11 +108,11 @@
-
+
备注
- {{ project.remark || '仅限堂食,具体以到店实际安排为准' }}
+ {{ project.remark }}
@@ -458,11 +458,11 @@ export default {
background: #C52733;
overflow: hidden;
box-shadow: 0 8rpx 24rpx rgba(197, 39, 51, 0.15);
- padding-top: 12rpx;
}
.experience-image {
width: 100%;
height: 360rpx;
+ border-radius: 24rpx;
display: block;
}
.experience-info {
From 7091d7e124ecef3281260821e52c9989eba16beb Mon Sep 17 00:00:00 2001
From: LinCyJang
Date: Mon, 16 Mar 2026 23:43:14 +0800
Subject: [PATCH 09/99] =?UTF-8?q?Fix=EF=BC=9A=E4=BD=93=E9=AA=8C=E5=BA=97?=
=?UTF-8?q?=E5=85=A5=E9=A9=BB=E8=A1=A8=E5=8D=95=E6=A0=B7=E5=BC=8F=E7=BB=9F?=
=?UTF-8?q?=E4=B8=80?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pkg_join/views/experienceStore.vue | 2 ++
1 file changed, 2 insertions(+)
diff --git a/pkg_join/views/experienceStore.vue b/pkg_join/views/experienceStore.vue
index ad6da9a..23e4bda 100644
--- a/pkg_join/views/experienceStore.vue
+++ b/pkg_join/views/experienceStore.vue
@@ -144,6 +144,7 @@
/>
+
*
@@ -169,6 +170,7 @@
+
*
From e6083820750c2573749f6a9095b3634f61e337b1 Mon Sep 17 00:00:00 2001
From: linxi <957440651@qq.com>
Date: Tue, 17 Mar 2026 19:29:13 +0800
Subject: [PATCH 10/99] =?UTF-8?q?Feat=EF=BC=9A=E4=BD=93=E9=AA=8C=E9=A1=B9?=
=?UTF-8?q?=E7=9B=AE=E8=AE=A2=E5=8D=95=E6=B5=81=E7=A8=8B=E5=AF=B9=E6=8E=A5?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
api/product.js | 16 +
assets/css/base.less | 4 +
pages.json | 7 +
pages/order/MyOrder/index.vue | 105 ++-
pkg_product/views/experienceCoupon.vue | 692 +++++++++++++-----
.../views/experienceCouponOrderDetail.vue | 558 ++++++++++++++
6 files changed, 1172 insertions(+), 210 deletions(-)
create mode 100644 pkg_product/views/experienceCouponOrderDetail.vue
diff --git a/api/product.js b/api/product.js
index 36a19dc..a04c643 100644
--- a/api/product.js
+++ b/api/product.js
@@ -164,3 +164,19 @@ export function getShareImg(id) {
export function getLatestExperienceCoupon() {
return request.get('/experienceCoupon/latest', {}, {login: true})
}
+
+export function getExperienceCouponList() {
+ return request.get('/experienceCoupon/list', {}, {login: true})
+}
+
+export function getExperienceCouponItems(params) {
+ return request.get('/experienceCoupon/items', params, {login: true})
+}
+
+export function createExperienceCouponOrder(data) {
+ return request.post('/experienceCoupon/order/create', data, {login: true})
+}
+
+export function getExperienceCouponOrderDetail(orderId) {
+ return request.get(`/experienceCoupon/order/detail/${orderId}`, {}, {login: true})
+}
diff --git a/assets/css/base.less b/assets/css/base.less
index d917846..d9940a9 100644
--- a/assets/css/base.less
+++ b/assets/css/base.less
@@ -295,4 +295,8 @@ checkbox .wx-checkbox-input.wx-checkbox-input-checked {
font-style: normal;
font-size: 28rpx;
color: #C2C5CC;
+}
+
+.bg-color-hui {
+ background-color: #999 !important;
}
\ No newline at end of file
diff --git a/pages.json b/pages.json
index f161a1c..30a243b 100644
--- a/pages.json
+++ b/pages.json
@@ -744,6 +744,13 @@
"navigationBarBackgroundColor": "#FFFFFF"
}
},
+ {
+ "path": "views/experienceCouponOrderDetail",
+ "style": {
+ "navigationBarTitleText": "订单核销",
+ "navigationBarBackgroundColor": "#FFFFFF"
+ }
+ },
{
"path": "views/experienceProjectDetail",
diff --git a/pages/order/MyOrder/index.vue b/pages/order/MyOrder/index.vue
index 564f79f..48a459a 100644
--- a/pages/order/MyOrder/index.vue
+++ b/pages/order/MyOrder/index.vue
@@ -51,7 +51,24 @@
class="item"
>
+
+
+ {{ order.merName || order.storeName }}
+
+
+
+
@@ -74,7 +91,16 @@
{{ order.merCityName }}
-
+
+
+ 订单号:{{ order.orderId }}
+
+ {{ ['待使用', '已完成', '已过期'][order.experienceOrderStatus] }}
+
+
+
+
+
+
+
+
+
+ {{ order.experienceOrderInfo.themeName }}
+
+
+ 有效期至{{ order.experienceOrderInfo.endTime }}
+
+
+
+ 距该地{{ order.distance || order.experienceOrderInfo.distance }}
+
+
+
+
-
+
{{ order.createTime }}
@@ -208,7 +253,7 @@
入住时间: {{ order.travelGroupOrderInfo.orderStartDate }}
-
+
等待商家确认时间,剩余
@@ -216,7 +261,27 @@
+ 联系商家
+ 去使用
+ 删除订单
+
+
-
+
{{ Number(order.status) === 0 ? '待支付' : getGiftTips(order.giftCardInfo) }}
@@ -366,6 +431,7 @@