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 @@ + + + + + + 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 @@ + + + + + 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 @@ + + + + + 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 @@