From e52934f6527027bd6008c2ade61c3083159efd4a Mon Sep 17 00:00:00 2001
From: shinnosuke <tantao@1hoper.com>
Date: 星期五, 09 十月 2026 18:14:28 +0800
Subject: [PATCH] 更新....
---
rencaika_merchant/pages/orders/orders.uvue | 19 ++++++++++++++++---
1 files changed, 16 insertions(+), 3 deletions(-)
diff --git a/rencaika_merchant/pages/orders/orders.uvue b/rencaika_merchant/pages/orders/orders.uvue
index 678d640..7b53714 100644
--- a/rencaika_merchant/pages/orders/orders.uvue
+++ b/rencaika_merchant/pages/orders/orders.uvue
@@ -20,10 +20,10 @@
<view v-if="listLoadState == 'success'" class="order-list">
<view v-for="order in orders" :key="order.id" class="order-card" :class="order.category == 'stay' ? 'stay-order-card' : (order.category == 'store' ? 'store-order-card' : '')" @tap="openOrderItem(order)">
<view class="customer-row"><view class="customer-info"><image class="customer-icon" src="/static/icons/lucide/circle-user-round.svg" mode="aspectFit"></image><text class="customer-name">{{order.customerName}}</text><text class="customer-phone">{{order.customerMobile}}</text></view><text class="status" :class="order.status == 'completed' ? 'verified' : ((order.status == 'cancelled' || order.status == 'refunded') ? 'closed' : 'pending')">{{order.statusText}}</text></view>
- <text v-if="order.category != 'stay'" class="order-name">{{order.title}}</text>
- <view v-if="order.category == 'stay'" class="stay-title-row"><text class="stay-order-name">{{order.title}}</text><text class="card-tag">{{order.cardLevel}}</text></view>
+ <text v-if="order.category != 'stay' && !isTicketOrder(order)" class="order-name">{{order.title}}</text>
+ <view v-if="order.category == 'stay' || isTicketOrder(order)" class="stay-title-row"><text class="stay-order-name">{{order.title}}</text><text class="card-tag">{{order.cardLevel}}</text></view>
<view v-else class="price-row" :class="order.category == 'store' ? 'store-price-row' : ''"><view class="price-group"><text class="price">¥{{formatAmount(order.payAmount)}}</text><text v-if="order.orderAmount > order.payAmount" class="original-price">¥{{formatAmount(order.orderAmount)}}</text></view><text class="card-tag">{{order.cardLevel}}</text></view>
- <text class="time-text">{{order.status == 'completed' && order.verifyTime.length > 0 ? '核销时间:' + formatDateTime(order.verifyTime) : '下单时间:' + formatDateTime(order.createdAt)}}</text>
+ <text class="time-text">{{orderTimeText(order)}}</text>
</view>
</view>
@@ -283,8 +283,21 @@
const formatAmount = (amount: number): string => (amount / 100).toFixed(2)
const formatDateTime = (value: string): string => value.length > 0 ? value.replace('T', ' ') : '—'
+ /** 观影券没有金额,列表里按「标题 + 人才卡」一行展示,和免费入住同一套排版。 */
+ const isTicketOrder = (order: MerchantOrder): boolean => order.sourceType == 'TICKET_PACKAGE'
+ const orderTimeText = (order: MerchantOrder): string => {
+ if (order.status == 'completed' && order.verifyTime.length > 0) return '核销时间:' + formatDateTime(order.verifyTime)
+ return (isTicketOrder(order) ? '领取时间:' : '下单时间:') + formatDateTime(order.createdAt)
+ }
+
const openOrderItem = (order: MerchantOrder) => {
const query = 'id=' + encodeURIComponent(order.id) + '&orderNo=' + encodeURIComponent(order.orderNo)
+ if (isTicketOrder(order)) {
+ const rawClaimId = order.claimId != null ? order.claimId as string : ''
+ const claimId = rawClaimId.length > 0 ? rawClaimId : order.id.replace('TP', '')
+ uni.navigateTo({ url: '/pages/ticket-package-detail/ticket-package-detail?claimId=' + encodeURIComponent(claimId) })
+ return
+ }
if (order.status == 'pending_verification') {
uni.navigateTo({ url: '/pages/verification-detail/verification-detail?' + query })
return
--
Gitblit v1.7.1