Files
2026-06-25 23:05:11 +08:00

88 lines
4.3 KiB
Plaintext

<view class="page">
<view class="title">房间详情</view>
<view>门店编号:{{storeId}}</view>
<view>房间编号:{{roomId}}</view>
<view class="section-title">选择时长</view>
<view class="duration-row">
<button size="mini" class="{{durationMinutes === 60 ? 'selected' : ''}}" data-minutes="60" bindtap="setDuration">1小时</button>
<button size="mini" class="{{durationMinutes === 120 ? 'selected' : ''}}" data-minutes="120" bindtap="setDuration">2小时</button>
<button size="mini" class="{{durationMinutes === 180 ? 'selected' : ''}}" data-minutes="180" bindtap="setDuration">3小时</button>
</view>
<view class="section-title">权益抵扣</view>
<view wx:if="{{benefitLoading}}" class="muted">权益加载中</view>
<view wx:if="{{!benefitLoading && availableCoupons.length === 0 && availablePackages.length === 0}}" class="muted">暂无可用权益</view>
<view wx:if="{{availableCoupons.length}}" class="benefit-list">
<view
wx:for="{{availableCoupons}}"
wx:key="couponGrantId"
class="benefit-option {{couponGrantId === item.couponGrantId ? 'active' : ''}}"
data-id="{{item.couponGrantId}}"
bindtap="selectCoupon"
>
<view class="option-head">
<view class="option-title">{{item.name}}</view>
<view class="option-value">{{item.valueText}}</view>
</view>
<view class="muted">{{item.thresholdText}} · {{item.scopeText}}</view>
</view>
</view>
<view wx:if="{{availablePackages.length}}" class="benefit-list">
<view
wx:for="{{availablePackages}}"
wx:key="packageHoldingId"
class="benefit-option {{packageHoldingId === item.packageHoldingId ? 'active' : ''}}"
data-id="{{item.packageHoldingId}}"
bindtap="selectPackage"
>
<view class="option-head">
<view class="option-title">{{item.name}}</view>
<view class="option-value">{{item.remainingAmountText}}</view>
</view>
<view class="muted">剩余 {{item.remainingMinutes}} 分钟 · {{item.scopeText}}</view>
</view>
</view>
<view wx:if="{{packageHoldingId}}" class="benefit-grid">
<input placeholder="套餐分钟" type="number" value="{{packageMinutes}}" data-field="packageMinutes" bindinput="updatePackageUsage" />
<input placeholder="套餐抵扣元" type="digit" value="{{packageCreditYuan}}" data-field="packageCreditYuan" bindinput="updatePackageUsage" />
</view>
<view class="action-grid">
<button loading="{{loading}}" bindtap="quote">报价</button>
<button loading="{{loading}}" bindtap="reserve">预占</button>
<button loading="{{loading}}" bindtap="createWechatPayment">微信支付</button>
<button loading="{{loading}}" bindtap="createBalancePayment">余额支付</button>
<button loading="{{loading}}" bindtap="createTestPayment">测试支付</button>
<button loading="{{loading}}" bindtap="completeTestPayment">完成测试支付</button>
</view>
<view wx:if="{{errorMessage}}" class="error">{{errorMessage}}</view>
<view wx:if="{{successMessage}}" class="success">{{successMessage}}</view>
<view wx:if="{{quote}}" class="result-card">
<view class="result-title">报价</view>
<view>总价:{{quote.totalText}}</view>
<view>押金:{{quote.depositText}}</view>
</view>
<view wx:if="{{order}}" class="result-card">
<view class="result-title">订单</view>
<view>订单编号:{{order.orderId}}</view>
<view wx:if="{{order.reservationId}}">预占编号:{{order.reservationId}}</view>
<view wx:if="{{selectedCouponName}}">已选优惠券:{{selectedCouponName}}</view>
<view wx:if="{{selectedPackageName}}">已选套餐:{{selectedPackageName}}</view>
<view wx:if="{{order.quote.discountCents}}">优惠抵扣:{{order.quote.discountCents}}分</view>
<view wx:if="{{order.quote.packageCreditCents}}">套餐抵扣:{{order.quote.packageCreditCents}}分</view>
<button size="mini" data-order-id="{{order.orderId}}" bindtap="openOrder">查看订单</button>
</view>
<view wx:if="{{payment}}" class="result-card">
<view class="result-title">支付</view>
<view>支付编号:{{payment.paymentId}}</view>
<view>金额:{{payment.amountText}}</view>
<view>状态:{{payment.status}}</view>
</view>
<view class="notice">扫码或 NFC 只打开此页面,开门权限仍由有效订单单独校验;生产支付以微信预支付为准。</view>
</view>