Compare commits

...

3 Commits

Author SHA1 Message Date
kk 2978ac25f7 调整开门状态样式
Uni-app H5 Deploy (Prod + Staging) / deploy (release) Successful in 48s
2026-07-11 16:56:15 +08:00
kk a08afd0cfd 退出登录跳到扫码页 2026-07-11 16:49:32 +08:00
kk 4292c0f819 退出登录跳转至扫码页/完成交易页增加查看订单详情按钮
Uni-app H5 Deploy (Prod + Staging) / deploy (release) Successful in 50s
2026-07-11 16:41:57 +08:00
3 changed files with 50 additions and 9 deletions
+39 -1
View File
@@ -39,9 +39,11 @@
<text class="step-text">完成订单</text>
</view>
</view>
<view class="door-btn-area">
<view class="door-btn-close" @click="handleClose">返回首页</view>
</view>
</view>
</view>
<!-- 已关门 -->
<view v-if="step === 'closed'" class="door-state-bg">
@@ -74,9 +76,11 @@
<text class="step-text">完成订单</text>
</view>
</view>
<view class="door-btn-area">
<view class="door-btn-close" @click="handleClose">返回首页</view>
</view>
</view>
</view>
<!-- 订单完成 -->
<view v-if="step === 'complete'" class="door-state-bg">
@@ -109,10 +113,13 @@
<text class="door-order-loading">加载订单信息...</text>
</view>
<view class="door-btn-area">
<view class="door-btn-detail" @click="goOrderDetail">查看订单详情</view>
<view class="door-btn-close" @click="handleClose">返回首页</view>
</view>
</view>
</view>
</view>
</template>
<script>
@@ -232,6 +239,18 @@ export default {
}
},
// 跳转订单详情
goOrderDetail() {
if (this.orderInfo) {
const orderId = this.orderInfo.order_id || this.orderInfo.order_no;
uni.navigateTo({ url: `/pages/order/detail?order_id=${orderId}` });
} else if (this.flowId) {
uni.navigateTo({ url: `/pages/order/detail?flow_id=${this.flowId}` });
} else {
uni.showToast({ title: '无法获取订单信息', icon: 'none' });
}
},
// 关闭遮罩
handleClose() {
this.step = '';
@@ -534,9 +553,28 @@ export default {
padding: 16rpx 0;
}
/* ====== 按钮区域 ====== */
.door-btn-area {
margin-top: 64rpx;
display: flex;
flex-direction: column;
align-items: center;
gap: 24rpx;
}
/* ====== 查看订单详情按钮 ====== */
.door-btn-detail {
font-size: 30rpx;
color: #fff;
padding: 24rpx 80rpx;
background: linear-gradient(135deg, #2979ff, #1e60e0);
border-radius: 48rpx;
letter-spacing: 2rpx;
box-shadow: 0 8rpx 24rpx rgba(41, 121, 255, 0.35);
}
/* ====== 关闭按钮 ====== */
.door-btn-close {
margin-top: 48rpx;
font-size: 30rpx;
color: rgba(255, 255, 255, 0.85);
padding: 24rpx 100rpx;
+2 -5
View File
@@ -500,11 +500,8 @@ export default {
uni.clearStorageSync();
uni.showToast({ title: '已退出登录', icon: 'success' });
setTimeout(() => {
// 跳转到干净的URL,去掉code/state参数,避免重复使用旧code
const url = new URL(window.location.href);
url.searchParams.delete('code');
url.searchParams.delete('state');
window.location.href = url.toString();
uni.setStorageSync('__logout_flag', true);
uni.reLaunch({ url: '/pages/index/scan' });
}, 1000);
},
onVConsoleChange(e) {
+6
View File
@@ -67,6 +67,12 @@ export default {
};
},
onLoad(options) {
// 退出登录后跳转过来,清除标记,停留在扫码页
if (uni.getStorageSync('__logout_flag')) {
uni.removeStorageSync('__logout_flag');
return;
}
// 1. 检查 JWT(App.vue 已处理首次跳转,这里兜底)
const token = uni.getStorageSync('token');
if (!token) {