Commit f70aca23 authored by 王炽's avatar 王炽

Merge branch 'feihesanqi_20251014' of...

Merge branch 'feihesanqi_20251014' of http://gitlab2.dui88.com/fh/20250528_FHQ1 into feihesanqi_20251014
parents 03c28fdb cf149e8c
<template>
<uni-popup ref="answerPopup" type="bottom" :maskClick="false" :safe-area="true">
<uni-popup ref="answerPopup" type="bottom" :maskClick="false" :safe-area="true" :backgroundColor="'rgba(0, 0, 0, 0.5)'">
<view class="answer-popup-container">
<view class="answer-popup">
<!-- 关闭按钮 -->
<view class="close-btn" @tap="handleClose">×</view>
<view class="close-btn" @tap="handleClose">
<image :src="`${$baseUrl}homepage/Q3Res/canEatCloseBtn.png`" mode="aspectFit"></image>
</view>
<!-- 结果标题和图标 -->
<view class="result-header">
......@@ -94,11 +96,11 @@ export default {
// 根据fallResult或allResult字符串生成显示用的选项分布数据
displayOptionDistribution() {
const labels = ['能吃', '少吃', '慎吃', '禁吃'];
// 确保所有数据都被正确记录
console.log('AllResult数据:', this.allResult, '类型:', typeof this.allResult);
console.log('FallResult数据:', this.fallResult, '类型:', typeof this.fallResult);
// 首先检查fallResult
if (this.fallResult && this.fallResult !== null && this.fallResult.trim() !== '' && this.fallResult.includes('|')) {
try {
......@@ -112,7 +114,7 @@ export default {
console.error('处理fallResult时出错:', error);
}
}
// 然后检查allResult,使用更宽松的判断条件
if (this.allResult && this.allResult !== null && typeof this.allResult === 'string') {
// 即使不包含|符号,也尝试处理
......@@ -129,7 +131,7 @@ export default {
percentage: `${percent}%`
}));
}
// 最后使用默认的optionDistribution
console.log('使用默认optionDistribution');
return this.optionDistribution;
......@@ -149,9 +151,21 @@ export default {
},
methods: {
openPopup() {
// 禁止背景页面滚动(小程序原生方式)
wx.setPageStyle({
style: {
overflow: 'hidden'
}
});
this.$refs.answerPopup.open();
},
closePopup() {
// 恢复背景页面滚动(小程序原生方式)
wx.setPageStyle({
style: {
overflow: 'auto'
}
});
if (this.$refs.answerPopup) {
this.$refs.answerPopup.close();
}
......@@ -191,11 +205,15 @@ export default {
right: 20rpx;
width: 60rpx;
height: 60rpx;
line-height: 60rpx;
text-align: center;
font-size: 40rpx;
color: #999;
z-index: 10;
display: flex;
align-items: center;
justify-content: center;
}
.close-btn image {
width: 100%;
height: 100%;
}
.result-header {
......@@ -241,7 +259,7 @@ export default {
.option-distribution {
display: flex;
gap: 5rpx;
gap: 3rpx;
margin-bottom: 30rpx;
align-items: center;
width: 100%;
......@@ -264,18 +282,22 @@ export default {
/* 从左到右4种颜色 - 反转顺序 */
.option-bar:nth-child(1) {
border-radius: 50rpx 20rpx 50rpx 50rpx;
background: #D3A458;
}
.option-bar:nth-child(2) {
border-radius: 20rpx 10rpx 20rpx 10rpx;
background: #B27C1E;
}
.option-bar:nth-child(3) {
border-radius: 20rpx 10rpx 20rpx 10rpx;
background: #8D5C05;
}
.option-bar:nth-child(4) {
border-radius: 20rpx 50rpx 50rpx 20rpx;
background: #644104;
}
......@@ -298,8 +320,8 @@ export default {
.question-answer-section {
background: #FFFFFF;
height: 164rpx;
padding: 20rpx;
/* height: 164rpx; */
padding: 40rpx;
border-radius: 20rpx;
margin-bottom: 30rpx;
overflow-y: auto;
......@@ -309,6 +331,7 @@ export default {
font-size: 28rpx;
color: #333;
display: block;
font-weight: bolder;
margin-bottom: 15rpx;
line-height: 1.6;
}
......@@ -317,13 +340,13 @@ export default {
font-size: 28rpx;
color: #D3A358;
display: block;
font-weight: bold;
/* font-weight: bold; */
}
.analysis-section {
background: #FFFFFF;
height: 446rpx;
padding: 20rpx;
padding: 40rpx;
border-radius: 36rpx;
margin-bottom: 40rpx;
overflow-y: auto;
......@@ -331,15 +354,15 @@ export default {
.analysis-title {
font-size: 30rpx;
font-weight: bold;
color: #333;
font-weight: bolder;
color: #000;
display: block;
margin-bottom: 15rpx;
}
.analysis-content {
font-size: 28rpx;
color: #333;
color: #999999;
line-height: 1.8;
white-space: pre-wrap;
}
......
......@@ -89,7 +89,7 @@
</view>
</view>
<view class="agreement_section">
<!-- <view class="agreement_section">
<view class="agreement_checkbox">
<view class="checkbox" :class="{ checked: agreementChecked }" @click="agreementChecked = !agreementChecked">
<text v-if="agreementChecked" class="checkmark"></text>
......@@ -98,7 +98,7 @@
data-type="member">《星妈会用户注册协议》</text><text class="agreement_link" @click="openAgreement"
data-type="privacy">《星妈会隐私政策》</text></text>
</view>
</view>
</view> -->
<button v-if="pageStatus.btnStatus" form-type="submit" class="form_btn" :class="{ disabled: !isBtnActive }">
完成
......
......@@ -103,14 +103,14 @@
</view>
</view>
<view class="agreement_section">
<!-- <view class="agreement_section">
<view class="agreement_checkbox">
<view class="checkbox" :class="{ checked: agreementChecked }" @click="toggleAgreement">
<text v-if="agreementChecked" class="checkmark"></text>
</view>
<text class="agreement_text">我已阅读并同意<text class="agreement_link" @click="handleAgreementClick('member')">《星妈会用户注册协议》</text><text class="agreement_link" @click="handleAgreementClick('privacy')">《星妈会隐私政策》</text></text>
</view>
</view>
</view> -->
<button v-if="pageStatus.btnStatus" form-type="submit" class="form_btn" :class="{ disabled: !agreementChecked }">
完成
......
......@@ -76,9 +76,9 @@
<!-- 悬浮授权手机号模块 -->
<view class="auth-phone-module" v-if="!userStore.memberInfo?.mobile">
<image class="auth-phone-bg" :src="$baseUrl + 'homepage/Q3Res/accessBg2.png'"></image>
<image class="auth-phone-bg" :src="$baseUrl + 'homepage/Q3Res/accessBg3.png'"></image>
<view class="auth-phone-btn-container">
<image class="auth-phone-btn" :src="$baseUrl + 'homepage/Q3Res/accessBtn2.png'" @tap="handleAuthPhoneClick">
<image class="auth-phone-btn" :src="$baseUrl + 'homepage/Q3Res/accessBtn3.png'" @tap="handleAuthPhoneClick">
</image>
</view>
</view>
......
This diff is collapsed.
......@@ -30,14 +30,22 @@
<!-- 删除确认弹窗 -->
<view v-if="showDeleteConfirm" class="modal-overlay" @tap="cancelDelete">
<view class="modal-container" @tap.stop>
<view class="modal-content" @tap.stop>
<view class="modal-title">确认删除</view>
<view class="modal-content">确定要删除该收货地址吗?</view>
<view class="modal-message">确定要删除该收货地址吗?</view>
<view class="modal-buttons">
<view class="modal-cancel" @tap="cancelDelete">取消</view>
<view class="modal-confirm" @tap="deleteAddress">删除</view>
<view class="modal-btn cancel-btn" @tap="cancelDelete">
<image :src="$baseUrl + 'homepage/Q3Res/buyCancelBtn.png'" mode="aspectFill"></image>
</view>
<view class="modal-btn confirm-btn" @tap="deleteAddress">
<image :src="$baseUrl + 'homepage/Q3Res/buyComfirmBtn.png'" mode="aspectFill"></image>
</view>
</view>
</view>
<!-- 关闭按钮 -->
<view class="modal-close-btn" @tap="cancelDelete">
<image :src="$baseUrl + 'homepage/Q3Res/commonCloseBtn1.png'" mode="aspectFill"></image>
</view>
</view>
</view>
</template>
......@@ -95,7 +103,7 @@ export default {
// 使用uni-app的全局状态来存储选中的地址
// 这是一种更可靠的数据传递方式
uni.setStorageSync('selectedAddressForSettlement', addressData);
console.log('存储选中的地址信息:', addressData);
// 返回上一页(结算页面)
......@@ -180,7 +188,7 @@ export default {
addAddress() {
// 防连点检查
if (this.isSubmitting) return;
// 检查地址数量限制
if (this.addressList.length >= 20) {
uni.showToast({
......@@ -221,7 +229,7 @@ export default {
if (this.isSubmitting || this.currentDeleteIndex < 0) return;
this.isSubmitting = true;
this.isLoading = true;
const address = this.addressList[this.currentDeleteIndex];
try {
const response = await deleteAddress({ id: address.id });
......@@ -231,7 +239,7 @@ export default {
this.addressList.splice(this.currentDeleteIndex, 1);
uni.showToast({
title: '删除成功',
icon: 'success'
icon: 'none'
});
} else {
uni.showToast({
......@@ -485,47 +493,60 @@ export default {
z-index: 200;
}
.modal-container {
width: 600rpx;
.modal-content {
width: 550rpx;
background-color: #ffffff;
border-radius: 20rpx;
overflow: hidden;
padding: 50rpx;
text-align: center;
}
.modal-title {
text-align: center;
font-size: 34rpx;
font-weight: bold;
padding: 30rpx;
border-bottom: 1rpx solid #e0e0e0;
margin-bottom: 30rpx;
text-align: center;
}
.modal-content {
text-align: center;
.modal-message {
font-size: 32rpx;
color: #333333;
padding: 40rpx 30rpx;
margin-bottom: 30rpx;
text-align: center;
}
.modal-buttons {
display: flex;
border-top: 1rpx solid #e0e0e0;
justify-content: space-between;
gap: 30rpx;
}
.modal-cancel,
.modal-confirm {
flex: 1;
text-align: center;
padding: 30rpx;
font-size: 32rpx;
.modal-btn {
height: 78rpx;
}
.modal-cancel {
color: #666666;
border-right: 1rpx solid #e0e0e0;
.modal-btn image {
width: 220rpx !important;
height: 78rpx !important;
}
.cancel-btn {
margin-right: 20rpx;
}
.confirm-btn {
margin-left: 20rpx;
}
.modal-close-btn {
position: absolute;
top: 30rpx;
right: 30rpx;
z-index: 201;
}
.modal-confirm {
color: #ff4444;
.modal-close-btn image {
width: 40rpx;
height: 40rpx;
}
</style>
......@@ -49,18 +49,26 @@
<view class="detail-section">
<text class="detail-title">详情信息</text>
<view class="detail-banner" v-if="goodsData.goodsContent">
<rich-text class="banner-text" :nodes="goodsData.goodsContent"></rich-text>
<rich-text style="width: 100%; /* 或设置为具体的像素值 */ overflow-x: hidden;" class="banner-text"
:nodes="formatRichText(goodsData.goodsContent)"></rich-text>
</view>
</view>
</view>
<!-- 底部兑换按钮 -->
<view class="bottom-bar">
<button class="exchange-btn" :class="getButtonClass()" :disabled="!canExchange" @click="handleExchange">
<button class="exchange-btn" :class="getButtonClass()" @click="handleExchange">
{{ getButtonText() }}
</button>
</view>
<!-- 悬浮客服按钮 -->
<view class="service-btn" @click="handleServiceClick">
<image class="service-icon" :src="$baseUrl + 'homepage/Q3Res/settlementCenter_serviceBtn.png'"
mode="aspectFit">
</image>
</view>
<!-- 规格选择弹窗 -->
<view class="spec-modal-overlay" v-if="showSpecModal" @click="closeSpecModal">
<view class="spec-modal-content" @click.stop>
......@@ -78,7 +86,7 @@
</view>
<view class="product-details">
<text class="product-points">{{ goodsData.points }}{{ goodsData.creditsTypeName || '积分'
}}</text>
}}</text>
<text class="product-stock">库存 {{ formatCount(goodsData.exchangeCount) }}</text>
</view>
</view>
......@@ -101,6 +109,8 @@
<text class="quantity-label">选择数量 <text class="limit-text" v-if="goodsData.goodsLimit">(限购{{
goodsData.goodsLimit }}件)</text></text>
<view class="quantity-selector">
<image class="quantity-bg" :src="$baseUrl + 'homepage/Q3Res/objectSelectConBg.png'"
mode="aspectFill"></image>
<view class="quantity-btn " @click="decreaseQuantity" :disabled="quantity <= 1">-</view>
<text class="quantity-value">{{ quantity }}</text>
<view class="quantity-btn " @click="increaseQuantity"
......@@ -126,14 +136,18 @@
<view class="modal-title">兑换确认</view>
<view class="modal-message">本次兑换需要消耗{{ goodsData.points }}{{ goodsData.creditsTypeName || '积分' }}</view>
<view class="modal-buttons">
<button class="modal-btn cancel-btn" @click="closeModal">取消</button>
<button class="modal-btn confirm-btn" @click="confirmExchange">确定</button>
<view class="modal-btn cancel-btn" @click="closeModal">
<image :src="$baseUrl + 'homepage/Q3Res/buyCancelBtn.png'" mode="aspectFill"></image>
</view>
<view class="modal-btn confirm-btn" @click="confirmExchange">
<image :src="$baseUrl + 'homepage/Q3Res/buyComfirmBtn.png'" mode="aspectFill"></image>
</view>
</view>
<view class="modal-disclaimer">{{ isPhysicalGoods() ? '已发货商品非质量问题不退不换' : '兑换完成后不退不换' }}</view>
</view>
<!-- 关闭按钮 -->
<view class="modal-close-btn" @click="closeModal">
<text class="modal-close-icon">×</text>
<image :src="$baseUrl + 'homepage/Q3Res/commonCloseBtn1.png'" mode="aspectFit"></image>
</view>
</view>
</view>
......@@ -143,6 +157,7 @@
import { fetchGoodsDetail, fetchSeckillDetail, fetchGoodsPrice, fetchTradeCredits, fetchSeckillTakeOrder } from '@/api/goods.js';
import { useUserStore } from '@/stores/user';
import { jump, JumpType } from '../../utils';
import { useHomeStore } from '../../stores/home';
export default {
data() {
......@@ -345,6 +360,27 @@ export default {
uni.navigateBack();
},
// 客服按钮点击事件
handleServiceClick() {
// 客服功能逻辑,可根据实际需求调整
console.log('客服按钮点击');
// 可以跳转到客服页面或打开客服弹窗
console.log('客服点击');
const homeStore = useHomeStore();
const {
memberId,
mobile,
openId,
unionId
} = homeStore.homeInfo;
const customerUrl =
`https://intelcc-user.icsoc.net/?channelKey=45839e0505554f8c8aea3c7b6259b049&init=1&crmld=${memberId}&mobile=${mobile}&openId=${openId}&unionId=${unionId}`;
jump({
type: JumpType.H5,
url: customerUrl
});
},
// 初始化用户状态
async initUserStatus() {
// 获取用户store实例
......@@ -563,6 +599,23 @@ export default {
};
return levelMap[memberLevelName] || 1;
},
// 富文本格式化处理函数
formatRichText(html) {
let newContent = html.replace(/<img[^>]*>/gi, function(match, capture) {
match = match.replace(/style="[^"]+"/gi, '').replace(/style='[^']+'/gi, '');
match = match.replace(/width="[^"]+"/gi, '').replace(/width='[^']+'/gi, '');
match = match.replace(/height="[^"]+"/gi, '').replace(/height='[^']+'/gi, '');
return match;
});
newContent = newContent.replace(/style="[^"]+"/gi, function(match, capture) {
match = match.replace(/width:[^;]+;/gi, 'max-width:100%;').replace(/width:[^;]+;/gi, 'max-width:100%;');
return match;
});
newContent = newContent.replace(/<br[^>]*\/>/gi, '');
newContent = newContent.replace(/<img/gi, '<img style="max-width:100%;height:auto;display:block;margin-top:0;margin-bottom:0;"');
return newContent;
},
// 根据等级数字获取等级名称
getUserLevelName(level) {
......@@ -729,8 +782,14 @@ export default {
// 处理兑换
handleExchange() {
console.log('handleExchange 被调用');
console.log('登录状态:', this.cfgStatus.isRegister);
console.log('canExchange:', this.canExchange);
console.log('goodsState:', this.goodsData.goodsState);
if (!this.cfgStatus.isRegister) {
// 未登录,跳转到登录注册页面
console.log('未登录,跳转到登录页面');
jump({
type: JumpType.INNER,
url: "/pages/activity/register",
......@@ -738,10 +797,13 @@ export default {
return;
}
if (!this.canExchange) {
console.log('不可兑换,显示提示信息');
this.showStatusMessage();
return;
}
console.log('可以兑换,继续执行兑换流程');
// 根据商品类型决定弹窗流程
if (this.isPhysicalGoods()) {
// 实物商品:显示规格选择弹窗
......@@ -1073,7 +1135,7 @@ export default {
orderId: orderData ? (orderData.orderId || orderData.orderNo || orderData.id) : '',
// 积分信息
pointsValue: `${this.goodsData.points}${this.goodsData.creditsTypeName || '积分'}`,
pointsValue: `${this.goodsData.points}`,
creditsTypeName: this.goodsData.creditsTypeName || '积分',
// 商品信息
......@@ -1134,14 +1196,15 @@ export default {
min-height: 100vh;
background-color: #f5f5f5;
box-sizing: border-box;
overflow-x: hidden; /* 禁止横向滚动 */
overflow-x: hidden;
/* 禁止横向滚动 */
position: relative;
}
/* 禁止整个页面横向滚动 */
page {
overflow-x: hidden;
width: 100%;
width: 100%;
}
/* 确保所有内容区域都不会超出屏幕宽度 */
......@@ -1203,7 +1266,7 @@ page {
.goods-carousel {
width: 100%;
height: 750rpx;
margin-bottom: 20rpx;
/* margin-bottom: 20rpx; */
}
.carousel-swiper {
......@@ -1390,9 +1453,10 @@ page {
.detail-banner {
width: 100%;
min-height: 200rpx;
background-color: #f8f8f8;
padding: 30rpx;
border-radius: 10rpx;
overflow: hidden;
/* background-color: #f8f8f8; */
/* padding: 30rpx; */
/* border-radius: 10rpx; */
}
.banner-text {
......@@ -1413,6 +1477,26 @@ page {
box-shadow: 0 -2rpx 10rpx rgba(0, 0, 0, 0.1);
}
/* 悬浮客服按钮 */
.service-btn {
position: fixed;
bottom: 200rpx;
right: 30rpx;
width: 96rpx;
height: 96rpx;
background-color: #d3a458;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
z-index: 100;
}
.service-icon {
width: 60rpx;
height: 60rpx;
}
.exchange-btn {
width: 100%;
height: 90rpx;
......@@ -1605,28 +1689,39 @@ page {
.quantity-selector {
display: flex;
align-items: center;
justify-content: center;
gap: 0;
border: 2rpx solid #A8A8A8;
border-radius: 8rpx;
padding: 0;
width: fit-content;
position: relative;
width: 204rpx;
height: 58rpx;
margin-right: auto;
}
.quantity-bg {
position: absolute;
width: 204rpx;
height: 58rpx;
z-index: 1;
}
.quantity-btn {
width: 60rpx;
height: 60rpx;
border-right: 1rpx solid #A8A8A8;
background-color: #fff;
color: #A8A8A8;
font-size: 32rpx;
/* background-color: #F5F5F5; */
color: #333;
font-size: 40rpx;
font-weight: bold;
display: flex;
align-items: center;
justify-content: center;
z-index: 2;
border-right: none;
}
.quantity-btn:last-child {
border-right: none;
border-left: 1rpx solid #A8A8A8;
/* border-right: none;
border-left: 1rpx solid #A8A8A8; */
}
.quantity-btn:disabled {
......@@ -1635,12 +1730,13 @@ page {
}
.quantity-value {
margin: 0 30rpx;
font-size: 32rpx;
color: #333;
font-weight: 500;
min-width: 80rpx;
min-width: 40rpx;
text-align: center;
padding: 0 20rpx;
z-index: 2;
padding: 0;
}
/* 秒杀商品数量显示 */
......@@ -1721,13 +1817,12 @@ page {
align-items: center;
justify-content: center;
margin: 40rpx auto 0;
background-color: #B0B0B0;
border-radius: 50%;
}
.modal-close-icon {
font-size: 40rpx;
color: #fff;
.modal-close-btn {
width: 56rpx;
height: 56rpx;
}
.modal-title {
......@@ -1748,30 +1843,25 @@ page {
.modal-buttons {
display: flex;
gap: 20rpx;
margin-top: 25rpx;
justify-content: space-between;
/* gap: 30rpx; */
}
.modal-btn {
flex: 1;
height: 80rpx;
border-radius: 40rpx;
font-size: 28rpx;
border: none;
display: flex;
align-items: center;
justify-content: center;
height: 78rpx;
}
.modal-btn image {
width: 220rpx !important;
height: 78rpx !important;
}
.cancel-btn {
background-color: #fff;
color: #D3A458;
border: 2rpx solid #D3A458;
/* margin-right: 20rpx; */
}
.confirm-btn {
background-color: #D3A458;
color: #fff;
/* margin-left: 20rpx; */
}
.modal-disclaimer {
......
......@@ -22,7 +22,7 @@
</view>
<text class="menu-text">异业合作</text>
</view>
<text class="arrow"></text>
<image class="arrow" :src="$baseUrl + 'homepage/Q3Res/rightArrowBtn.png'" mode="aspectFit" />
</view>
<view class="menu-item" @tap="handleItemTap('feedback')">
......@@ -33,7 +33,7 @@
</view>
<text class="menu-text">意见反馈</text>
</view>
<text class="arrow"></text>
<image class="arrow" :src="$baseUrl + 'homepage/Q3Res/rightArrowBtn.png'" mode="aspectFit" />
</view>
<view class="menu-item" @tap="handleItemTap('userPolicy')">
......@@ -44,7 +44,7 @@
</view>
<text class="menu-text">用户政策</text>
</view>
<text class="arrow"></text>
<image class="arrow" :src="$baseUrl + 'homepage/Q3Res/rightArrowBtn.png'" mode="aspectFit" />
</view>
<view class="menu-item" @tap="handleItemTap('privacyPolicy')">
......@@ -55,7 +55,7 @@
</view>
<text class="menu-text">隐私协议</text>
</view>
<text class="arrow"></text>
<image class="arrow" :src="$baseUrl + 'homepage/Q3Res/rightArrowBtn.png'" mode="aspectFit" />
</view>
<view class="menu-item cancel-account" @tap="handleItemTap('cancelAccount')">
......@@ -68,7 +68,7 @@
</view>
<view class="cancel-text-container">
<text class="cancel-text">注销后无法恢复</text>
<text class="arrow"></text>
<image class="arrow" :src="$baseUrl + 'homepage/Q3Res/rightArrowBtn.png'" mode="aspectFit" />
</view>
</view>
</view>
......@@ -219,8 +219,8 @@ export default {
}
.arrow {
font-size: 40rpx;
color: #C8C8C8;
width: 14rpx;
height: 23rpx;
}
/* 注销账号特殊样式 */
......@@ -232,6 +232,6 @@ export default {
.cancel-text {
font-size: 26rpx;
color: #999999;
margin-right: 10rpx;
margin-right: 30rpx;
}
</style>
......@@ -2,6 +2,8 @@
<view class="container">
<!-- 内容区域 -->
<view class="content">
<!-- 顶部背景渐变 -->
<view class="top-gradient-bg"></view>
<!-- 订单状态 -->
<view class="status-section" :class="statusClass">
<image class="status-icon" :src="getStatusIcon()" mode="aspectFit"></image>
......@@ -56,11 +58,21 @@
<view
v-if="orderData.virtualType === 'card' && orderData.coupon && orderData.coupon.cards && orderData.coupon.cards.length > 0 && orderData.coupon.cards[0].code"
class="coupon-code-item">
<text class="coupon-label">券码</text>
<!-- 当只有code没有pwd时显示券码,否则显示卡号 -->
<text class="coupon-label">{{ orderData.coupon.cards[0].pwd ? '卡号' : '券码' }}</text>
<view class="coupon-code-content">
<text class="coupon-code">{{ orderData.coupon.cards[0].code }}</text>
<text class="copy-btn" @click="copyCouponCode(orderData.coupon.cards[0].code)">复制</text>
</view>
<!-- 卡密展示 - 如果存在pwd字段,换行显示 -->
<view v-if="orderData.coupon.cards[0].pwd" class="pwd-section">
<text class="coupon-label">卡密</text>
<view class="coupon-code-content">
<text class="coupon-code">{{ orderData.coupon.cards[0].pwd }}</text>
<text class="copy-btn" @click="copyCouponCode(orderData.coupon.cards[0].pwd)">复制</text>
</view>
</view>
</view>
<!-- 过期时间 -->
......@@ -149,9 +161,11 @@
<!-- 操作按钮 - 实物订单退货按钮在右下角 -->
<view v-if="showActionButton" class="action-container">
<button class="action-btn" :class="{
<view v-if="orderData.productType === 'virtual' && orderData.virtualType === 'coupon'" class="action-btn btn-use" @click="handleAction">
<image :src="$baseUrl + 'homepage/Q3Res/orderDetailToUseBtn.png'" mode="aspectFill"></image>
</view>
<button v-else class="action-btn" :class="{
'btn-refund': orderData.productType === 'physical',
'btn-use': orderData.productType === 'virtual',
'corner-btn': orderData.productType === 'physical'
}" @click="handleAction">{{ actionButtonText }}</button>
</view>
......@@ -172,14 +186,18 @@
<view class="modal-title">确认退货</view>
<view class="modal-message">确定要申请退货吗?</view>
<view class="modal-buttons">
<button class="modal-btn cancel-btn" @click="closeRefundModal">取消</button>
<button class="modal-btn confirm-btn" @click="confirmRefund">确定</button>
<view class="modal-btn cancel-btn" @click="closeRefundModal">
<image :src="$baseUrl + 'homepage/Q3Res/buyCancelBtn.png'" mode="aspectFill"></image>
</view>
<view class="modal-btn confirm-btn" @click="confirmRefund">
<image :src="$baseUrl + 'homepage/Q3Res/buyComfirmBtn.png'" mode="aspectFill"></image>
</view>
</view>
<view class="modal-disclaimer">申请退货后将由客服进行审核处理</view>
<!-- <view class="modal-disclaimer">申请退货后将由客服进行审核处理</view> -->
</view>
<!-- 关闭按钮 -->
<view class="modal-close-btn" @click="closeRefundModal">
<text class="modal-close-icon">×</text>
<image :src="$baseUrl + 'homepage/Q3Res/commonCloseBtn1.png'" mode="aspectFit"></image>
</view>
</view>
</template>
......@@ -377,7 +395,7 @@ export default {
// 页面跳转
navigateToCoupon: () => {
const url = 'subPackages/xmhMainProcess/mine/index';
const url = 'subPackages/shopMainProcess/coupons/couponList';
const type = JumpType.MINI;
const extra = {
appId: 'wx4205ec55b793245e', //星妈优选小程序
......@@ -749,6 +767,7 @@ export default {
min-height: 100vh;
background-color: #f5f5f5;
box-sizing: border-box;
overflow: hidden;
}
/* 内容区域 */
......@@ -757,12 +776,21 @@ export default {
box-sizing: border-box;
}
/* 顶部背景渐变 */
.top-gradient-bg {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 200rpx;
background: linear-gradient(180deg, #ECC990 0%, rgba(211, 164, 88, 0) 100%);
}
/* 订单状态 */
.status-section {
padding: 40rpx 20rpx;
padding: 20rpx 80rpx;
display: flex;
align-items: center;
background: linear-gradient(180deg, #ECC990 0%, rgba(211, 164, 88, 0) 100%);
position: relative;
margin: 0 -20rpx;
width: calc(100% + 40rpx);
......@@ -807,6 +835,8 @@ export default {
/* 收货地址 */
.address-section {
z-index: 1;
position: relative;
background-color: #fff;
padding: 30rpx 20rpx;
margin-bottom: 20rpx;
......@@ -1082,8 +1112,13 @@ export default {
padding: 80rpx 30rpx;
box-shadow: 0 -2rpx 10rpx rgba(0, 0, 0, 0.1);
z-index: 100;
/* 实物商品按钮使用flex布局,将按钮推到右侧 */
/* 虚拟商品按钮居中显示,实物商品按钮推到右侧 */
display: flex;
justify-content: center;
}
/* 实物商品按钮容器特殊样式 */
.action-container:has(.btn-refund) {
justify-content: flex-end;
}
......@@ -1094,6 +1129,7 @@ export default {
border-radius: 44rpx;
font-size: 32rpx;
font-weight: bold;
text-align: center;
}
/* 实物商品申请退货按钮样式 - 右下角 */
......@@ -1113,20 +1149,38 @@ export default {
z-index: 101;
}
/* 去使用图片按钮样式 */
.action-btn.btn-use {
background-color: #d3a458;
color: #fff;
background-color: transparent;
/* 虚拟商品按钮保持在容器中 */
position: static;
box-shadow: none;
/* 确保图片充满按钮 */
overflow: hidden;
/* 调整按钮尺寸为484*90 */
width: 484rpx;
height: 90rpx;
border-radius: 45rpx;
}
/* 去使用按钮内的图片样式 */
.action-btn.btn-use image {
width: 100%;
height: 100%;
border-radius: 45rpx;
}
/* 券码和过期时间样式 - 现在是模块1的一部分 */
.coupon-section {
/* 已迁移到module-card-code */
margin-top: 30rpx;
padding-top: 30rpx;
border-top: 1rpx solid #f0f0f0;
}
.coupon-code-item {
margin-bottom: 20rpx;
}
.coupon-code-item,
.expire-time-item {
display: flex;
align-items: center;
......@@ -1134,6 +1188,11 @@ export default {
margin-bottom: 20rpx;
}
/* 卡号和卡密之间的间距 */
.pwd-section {
margin-top: 20rpx;
}
.coupon-label {
font-size: 28rpx;
color: #666;
......@@ -1185,18 +1244,15 @@ export default {
.module-payment,
.module-order-info,
.module-logistics {
z-index: 1;
position: relative;
background-color: #fff;
padding: 30rpx 20rpx;
margin-bottom: 20rpx;
border-radius: 20rpx;
}
/* 券码和过期时间样式 */
.coupon-section {
margin-top: 30rpx;
padding-top: 30rpx;
border-top: 1rpx solid #f0f0f0;
}
/* 券码和过期时间样式 - 已在上方定义 */
/* 使用说明样式 - 现在是模块3 */
.usage-instructions {
......@@ -1228,8 +1284,8 @@ export default {
position: fixed;
bottom: 200rpx;
right: 30rpx;
width: 120rpx;
height: 120rpx;
width: 96rpx;
height: 96rpx;
background-color: #d3a458;
border-radius: 50%;
display: flex;
......@@ -1255,6 +1311,7 @@ export default {
align-items: center;
justify-content: center;
z-index: 9999;
flex-direction: column;
}
.modal-content {
......@@ -1289,23 +1346,20 @@ export default {
}
.modal-btn {
flex: 1;
height: 88rpx;
line-height: 88rpx;
text-align: center;
font-size: 32rpx;
border-radius: 44rpx;
border: none;
height: 78rpx;
}
.modal-btn image {
width: 220rpx !important;
height: 78rpx !important;
}
.cancel-btn {
background-color: #f5f5f5;
color: #666;
margin-right: 20rpx;
}
.confirm-btn {
background-color: #d3a458;
color: #fff;
margin-left: 20rpx;
}
.modal-disclaimer {
......@@ -1316,18 +1370,17 @@ export default {
}
.modal-close-btn {
position: absolute;
top: -80rpx;
right: 20rpx;
width: 60rpx;
height: 60rpx;
width: 56rpx;
height: 56rpx;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
margin-top: 80rpx;
}
.modal-close-icon {
font-size: 60rpx;
color: #fff;
.modal-close-btn {
width: 56rpx;
height: 56rpx;
}
</style>
......@@ -6,7 +6,9 @@
<view class="result-section">
<!-- 状态图标 -->
<view class="result-icon" :class="resultIconClass">
<text class="icon-text">{{ resultIcon }}</text>
<image
:src="$baseUrl + (isSuccess ? 'homepage/Q3Res/payResultSucIcon.png' : 'homepage/Q3Res/payResultFailIcon.png')"
mode="aspectFit" class="result-icon-img"></image>
</view>
<!-- 状态文字 -->
......@@ -15,12 +17,12 @@
<!-- 成功状态显示积分信息 -->
<view v-if="isSuccess" class="points-info">
<text class="points-value">{{ pointsValue }}</text>
<!-- <text class="points-unit">{{ resultData.creditsTypeName || '积分' }}</text> -->
<text class="points-unit">{{ resultData.creditsTypeName || '积分' }}</text>
</view>
<!-- 失败状态显示失败原因 -->
<view v-if="!isSuccess" class="failure-info">
<text class="failure-reason">{{ failureReason }}</text>
<text class="failure-reason">失败原因:{{ failureReason }}</text>
</view>
<!-- 支付方式信息 - 仅成功状态显示 -->
......@@ -34,7 +36,11 @@
<!-- 底部操作按钮 -->
<view class="action-section">
<button class="action-btn" @click="handleAction">{{ actionButtonText }}</button>
<view class="action-btn" @click="handleAction">
<image
:src="$baseUrl + (isSuccess ? 'homepage/Q3Res/payResultLookOrderBtn.png' : 'homepage/Q3Res/payResultBackHome.png')"
mode="aspectFit" class="action-btn-img"></image>
</view>
</view>
<!-- 活动banner -->
......@@ -224,7 +230,7 @@ export default {
// 处理活动banner点击
handleVipActiveClick(index, item) {
console.log('活动banner点击:', item);
// 只保留跳转功能,从item.link获取跳转参数
const url = item?.link?.url || item?.linkUrl || '';
const type = item?.link?.type || (item?.linkType === 'h5' ? JumpType.H5 : JumpType.PAGE);
......@@ -246,6 +252,7 @@ export default {
min-height: 100vh;
background-color: #f5f5f5;
box-sizing: border-box;
background-color: #fff;
}
......@@ -253,16 +260,18 @@ export default {
.content {
padding: 0;
box-sizing: border-box;
background-color: #fff;
}
/* 支付结果状态 */
.result-section {
background-color: #fff;
padding: 80rpx 30rpx 40rpx;
padding: 60rpx 30rpx 30rpx;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
margin-bottom: 20rpx;
}
.result-icon {
......@@ -272,34 +281,42 @@ export default {
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 30rpx;
margin-bottom: 20rpx;
}
.result-icon.icon-success {
background-color: #d3a458;
/* background-color: #d3a458; */
}
.result-icon.icon-failure {
background-color: #d3a458;
/* background-color: #d3a458; */
}
.icon-text {
font-size: 60rpx;
color: #fff;
font-weight: bold;
.result-icon-img {
width: 80rpx;
height: 80rpx;
}
.action-btn-img {
width: 100%;
height: 88rpx;
}
.result-text {
font-size: 36rpx;
font-weight: bold;
color: #333;
margin-bottom: 20rpx;
margin-bottom: 25rpx;
padding: 10rpx 30rpx;
border-radius: 10rpx;
}
.points-info {
display: flex;
align-items: baseline;
margin-bottom: 30rpx;
margin-bottom: 25rpx;
padding: 10rpx 30rpx;
border-radius: 10rpx;
}
.points-value {
......@@ -315,7 +332,9 @@ export default {
}
.failure-info {
margin-bottom: 30rpx;
margin-bottom: 60rpx;
padding: 10rpx 30rpx;
border-radius: 10rpx;
}
.failure-reason {
......@@ -325,6 +344,9 @@ export default {
.payment-info {
width: 100%;
padding: 10rpx 30rpx;
border-radius: 10rpx;
margin-bottom: 10rpx;
}
.payment-row {
......@@ -341,13 +363,14 @@ export default {
.payment-value {
font-size: 28rpx;
color: #999;
color: #000;
}
/* 操作按钮区域 */
.action-section {
padding: 40rpx 30rpx;
padding: 30rpx 30rpx;
background-color: #fff;
margin-bottom: 20rpx;
}
.action-btn {
......@@ -357,8 +380,8 @@ export default {
font-size: 32rpx;
font-weight: bold;
background-color: #fff;
color: #333;
border: 1rpx solid #ddd;
color: #000000;
/* border: 2rpx solid #000000; */
}
/* 活动banner区域 */
......@@ -383,8 +406,8 @@ export default {
position: fixed;
bottom: 200rpx;
right: 30rpx;
width: 120rpx;
height: 120rpx;
width: 96rpx;
height: 96rpx;
background-color: #d3a458;
border-radius: 50%;
display: flex;
......
......@@ -16,7 +16,9 @@
</view>
</view>
</view>
<view class="arrow-icon">{{ ">" }}</view>
<view class="arrow-icon">
<image :src="$baseUrl + 'homepage/Q3Res/rightArrowBtn.png'" mode="aspectFill"></image>
</view>
</view>
<!-- 订单信息模块 -->
......@@ -91,14 +93,18 @@
<view class="modal-message">本次兑换需要消耗{{ goodsInfo.points * goodsInfo.quantity }}{{ goodsInfo.creditsTypeName
|| '积分' }}</view>
<view class="modal-buttons">
<button class="modal-btn cancel-btn" @click="closeModal">取消</button>
<button class="modal-btn confirm-btn" @click="confirmExchange">确定</button>
<view class="modal-btn cancel-btn" @click="closeModal">
<image :src="$baseUrl + 'homepage/Q3Res/buyCancelBtn.png'" mode="aspectFill"></image>
</view>
<view class="modal-btn confirm-btn" @click="confirmExchange">
<image :src="$baseUrl + 'homepage/Q3Res/buyComfirmBtn.png'" mode="aspectFill"></image>
</view>
</view>
<view class="modal-disclaimer">{{ isPhysicalGoods() ? '已发货商品非质量问题不退不换' : '兑换完成后不退不换' }}</view>
</view>
<!-- 关闭按钮 -->
<view class="modal-close-btn" @click="closeModal">
<text class="modal-close-icon">×</text>
<image :src="$baseUrl + 'homepage/Q3Res/commonCloseBtn1.png'" mode="aspectFit"></image>
</view>
</view>
<!-- 地址添加确认弹窗 -->
......@@ -107,13 +113,36 @@
<view class="modal-title">提示</view>
<view class="modal-message">您还没有收货地址,是否添加地址?</view>
<view class="modal-buttons">
<button class="modal-btn cancel-btn" @click="handleAddressCancel">取消</button>
<button class="modal-btn confirm-btn" @click="confirmAddAddress">添加地址</button>
<view class="modal-btn cancel-btn" @click="handleAddressCancel">
<image :src="$baseUrl + 'homepage/Q3Res/buyCancelBtn.png'" mode="aspectFill"></image>
</view>
<view class="modal-btn confirm-btn" @click="confirmAddAddress">
<image :src="$baseUrl + 'homepage/Q3Res/buyComfirmBtn.png'" mode="aspectFill"></image>
</view>
</view>
</view>
<!-- 关闭按钮 -->
<view class="modal-close-btn" @click="closeAddressModal">
<text class="modal-close-icon">×</text>
<image :src="$baseUrl + 'homepage/Q3Res/commonCloseBtn1.png'" mode="aspectFit"></image>
</view>
</view>
<!-- 选择地址提示弹窗 -->
<view class="modal-overlay" v-if="showSelectAddressModal" @click="closeSelectAddressModal">
<view class="modal-content" @click.stop>
<view class="modal-title">提示</view>
<view class="modal-message">请先选择收货地址</view>
<view class="modal-buttons">
<view class="modal-btn cancel-btn" @click="closeSelectAddressModal">
<image :src="$baseUrl + 'homepage/Q3Res/buyCancelBtn.png'" mode="aspectFill"></image>
</view>
<view class="modal-btn confirm-btn" @click="handleGoSelectAddress">
<image :src="$baseUrl + 'homepage/Q3Res/buyComfirmBtn.png'" mode="aspectFill"></image>
</view>
</view>
</view>
<!-- 关闭按钮 -->
<view class="modal-close-btn" @click="closeSelectAddressModal">
<image :src="$baseUrl + 'homepage/Q3Res/commonCloseBtn1.png'" mode="aspectFit"></image>
</view>
</view>
</template>
......@@ -126,34 +155,35 @@ import { jump, JumpType } from '../../utils';
export default {
data() {
return {
orderNotes: '',
// 订单来源子渠道
orderSubSource: '',
// 订单参数
orderParams: {},
priceData: null,
// 地址信息
selectedAddress: null,
hasAddress: false,
fullAddress: '',
recipientName: '',
recipientPhone: '',
// 商品信息
goodsInfo: {
name: '',
spec: '',
points: 0,
quantity: 1
},
// 商店信息
homeStore: null,
// 弹窗状态
showConfirmModal: false,
showAddressModal: false,
// 用于防连点
isSubmitting: false
}
return {
orderNotes: '',
// 订单来源子渠道
orderSubSource: '',
// 订单参数
orderParams: {},
priceData: null,
// 地址信息
selectedAddress: null,
hasAddress: false,
fullAddress: '',
recipientName: '',
recipientPhone: '',
// 商品信息
goodsInfo: {
name: '',
spec: '',
points: 0,
quantity: 1
},
// 商店信息
homeStore: null,
// 弹窗状态
showConfirmModal: false,
showAddressModal: false,
showSelectAddressModal: false,
// 用于防连点
isSubmitting: false
}
},
onLoad(options) {
console.log('结算页面参数:', options);
......@@ -204,8 +234,11 @@ export default {
}
}
// 页面显示时重新检查地址(从地址编辑页面返回时或无选中地址时)
this.checkAddress();
// 只有在没有选中地址的情况下才重新检查地址
// 这样当用户从地址选择页返回但没有选择新地址时,会保留之前已有的地址
if (!this.selectedAddress || !this.hasAddress) {
this.checkAddress();
}
// 如果已经有地址了,关闭地址弹窗
if (this.hasAddress && this.showAddressModal) {
......@@ -312,6 +345,17 @@ export default {
closeAddressModal() {
this.showAddressModal = false;
},
// 关闭选择地址提示弹窗
closeSelectAddressModal() {
this.showSelectAddressModal = false;
},
// 处理选择地址
handleGoSelectAddress() {
this.closeSelectAddressModal();
this.selectAddress();
},
// 处理地址弹窗取消
handleAddressCancel() {
......@@ -360,17 +404,8 @@ export default {
try {
// 检查是否有收货地址
if (!this.hasAddress || !this.selectedAddress) {
uni.showModal({
title: '提示',
content: '请先选择收货地址',
confirmText: '去选择',
cancelText: '取消',
success: (res) => {
if (res.confirm) {
this.selectAddress();
}
}
});
// 显示选择地址提示弹窗
this.showSelectAddressModal = true;
return;
}
......@@ -467,7 +502,7 @@ export default {
orderId: orderId,
// 积分信息
pointsValue: `${this.goodsInfo.points * this.goodsInfo.quantity}${this.goodsInfo.creditsTypeName}`,
pointsValue: `${this.goodsInfo.points * this.goodsInfo.quantity}`,
creditsTypeName: this.goodsInfo.creditsTypeName,
// 商品信息
......@@ -539,6 +574,7 @@ export default {
align-items: center;
justify-content: center;
z-index: 9999;
flex-direction: column;
}
.modal-content {
......@@ -570,27 +606,27 @@ export default {
display: flex;
gap: 20rpx;
margin-bottom: 30rpx;
justify-content: center;
}
.modal-btn {
flex: 1;
height: 88rpx;
border-radius: 44rpx;
font-size: 30rpx;
line-height: 88rpx;
padding: 0;
width: 220rpx !important;
height: 78rpx !important;
position: relative;
}
.modal-btn image {
width: 220rpx !important;
height: 78rpx !important;
}
.cancel-btn {
background-color: #f5f5f5;
color: #666;
border: none;
}
.confirm-btn {
background-color: #e6a23c;
color: #fff;
border: none;
margin-left: 20rpx;
}
.modal-disclaimer {
......@@ -601,22 +637,16 @@ export default {
}
.modal-close-btn {
position: absolute;
bottom: -100rpx;
width: 80rpx;
height: 80rpx;
background-color: #fff;
width: 56rpx;
height: 56rpx;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
box-shadow: 0 2rpx 10rpx rgba(0, 0, 0, 0.1);
margin-top: 80rpx;
}
.modal-close-icon {
font-size: 50rpx;
color: #999;
}
.container {
width: 100%;
......@@ -657,6 +687,7 @@ export default {
.address-info {
flex: 1;
margin-right: 20rpx;
}
.address-text {
......@@ -685,8 +716,13 @@ export default {
}
.arrow-icon {
font-size: 32rpx;
color: #999;
width: 20rpx;
height: 32rpx;
}
.arrow-icon image {
width: 100%;
height: 100%;
}
/* 订单信息模块 */
......@@ -770,7 +806,7 @@ export default {
.product-price {
font-size: 32rpx;
color: #e6a23c;
color: #D3A458;
font-weight: bold;
display: inline-block;
margin-right: 20rpx;
......@@ -862,29 +898,29 @@ export default {
.summary-price {
font-size: 28rpx;
color: #e6a23c;
color: #D3A458;
font-weight: bold;
}
/* 客服按钮 */
.service-btn {
position: fixed;
bottom: 200rpx;
bottom: 220rpx;
right: 30rpx;
width: 120rpx;
height: 120rpx;
background-color: #e6a23c;
width: 96rpx;
height: 96rpx;
background-color: #D3A458;
border-radius: 50%;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
z-index: 100;
box-shadow: 0 2rpx 10rpx rgba(0, 0, 0, 0.2);
}
.service-icon {
width: 100%;
height: 100%;
width: 60rpx;
height: 60rpx;
}
/* 底部提交栏 */
......@@ -894,42 +930,46 @@ export default {
left: 0;
right: 0;
background-color: #fff;
padding: 20rpx 30rpx 40rpx;
padding: 40rpx 20rpx 60rpx 20rpx;
box-sizing: border-box;
box-shadow: 0 -2rpx 10rpx rgba(0, 0, 0, 0.1);
display: flex;
align-items: center;
justify-content: flex-end;
justify-content: space-between;
width: 100%;
}
.total-info {
width: 60%;
display: flex;
flex-direction: column;
flex-direction: row;
margin-right: 20rpx;
align-items: center;
}
.total-label {
font-size: 24rpx;
color: #666;
margin-bottom: 5rpx;
}
.total-price {
font-size: 32rpx;
color: #e6a23c;
color: #D3A458;
font-weight: bold;
margin-left: 20rpx;
display: block;
}
.submit-btn {
width: 200rpx;
height: 80rpx;
background-color: #e6a23c;
width: 248rpx;
height: 74rpx;
background-color: #D3A458;
color: #fff;
font-size: 28rpx;
border-radius: 40rpx;
border-radius: 37rpx;
border: none;
display: flex;
align-items: center;
justify-content: center;
line-height: 74rpx;
padding: 0;
}
.submit-btn:active {
......
......@@ -1036,6 +1036,15 @@ export default {
// 处理能不能吃答题
async handleCanEatAnswer(answerIndex) {
// 添加登录检查
if (!this.homeStore.isLogin) {
jump({
type: JumpType.INNER,
url: "/pages/activity/register",
});
return;
}
if (!this.canEatData || !this.canEatData.id) {
uni.showToast({
title: '数据异常,请稍后重试',
......
......@@ -146,7 +146,7 @@
}">
<image class="menu-icon" :src="$baseUrl + 'homepage/Q3Res/myIcon_myOrder.png'" mode="aspectFit" />
<text class="menu-title">我的订单</text>
<text class="menu-arrow"></text>
<image class="menu-arrow" :src="$baseUrl + 'homepage/Q3Res/rightArrowBtn.png'" mode="aspectFit" />
</view>
<view class="menu-item" @click="navigateToWithLogin('/v3/addressList/addressList')" :data-log="{
xcxClick: '我的页面点击',
......@@ -155,7 +155,7 @@
}">
<image class="menu-icon" :src="$baseUrl + 'homepage/Q3Res/myIcon_address.png'" mode="aspectFit" />
<text class="menu-title">收货地址管理</text>
<text class="menu-arrow"></text>
<image class="menu-arrow" :src="$baseUrl + 'homepage/Q3Res/rightArrowBtn.png'" mode="aspectFit" />
</view>
<view class="menu-item" @click="navigateToCouponWithLogin()" :data-log="{
xcxClick: '我的页面点击',
......@@ -164,7 +164,7 @@
}">
<image class="menu-icon" :src="$baseUrl + 'homepage/Q3Res/myIcon_myCupon.png'" mode="aspectFit" />
<text class="menu-title">我的优惠券</text>
<text class="menu-arrow"></text>
<image class="menu-arrow" :src="$baseUrl + 'homepage/Q3Res/rightArrowBtn.png'" mode="aspectFit" />
</view>
<view class="menu-item" @click="navigateToWithLogin('/v3/more/index')" :data-log="{
xcxClick: '我的页面点击',
......@@ -173,7 +173,7 @@
}">
<image class="menu-icon" :src="$baseUrl + 'homepage/Q3Res/myIcon_more.png'" mode="aspectFit" />
<text class="menu-title">更多</text>
<text class="menu-arrow"></text>
<image class="menu-arrow" :src="$baseUrl + 'homepage/Q3Res/rightArrowBtn.png'" mode="aspectFit" />
</view>
</view>
......@@ -211,6 +211,7 @@
.menu-container {
width: 702rpx;
margin: 0 auto;
margin-bottom: 100rpx;
}
.menu-item {
......@@ -227,7 +228,7 @@
.menu-icon {
width: 40rpx;
height: 40rpx;
margin-right: 20rpx;
margin-right: 35rpx;
}
.menu-title {
......@@ -237,8 +238,8 @@
}
.menu-arrow {
font-size: 24rpx;
color: #999999;
width: 14rpx;
height: 23rpx;
}
/* 任务模块样式 */
......@@ -351,7 +352,7 @@ function clickRegisterShield() {
// 页面跳转
const navigateToCoupon = () => {
const url = 'subPackages/xmhMainProcess/mine/index';
const url = 'subPackages/shopMainProcess/coupons/couponList';
const type = JumpType.MINI;
const extra = {
appId: 'wx4205ec55b793245e', //星妈优选小程序
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment