oak-pay-business/es/components/pay/detail/index.xml

184 lines
8.6 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!-- 这个页面没有和web同时去适配backend模式缺少了支付成功的能力 -->
<view class="container">
<view class="info">
<view class="title-bar-wrapper">
<view class="title-bar">
<view class="title">{{t('title')}}</view>
<l-tag bg-color="{{iStateColor}}" type="reading">{{iStateStr}}</l-tag>
</view>
</view>
<view class="list">
<l-list title="{{t('type.label')}}" icon="warning" right-desc="{{t('type.' + type)}}" is-link="{{false}}" />
<l-list title="{{t('pay:attr.price')}}" icon="cart" right-desc="{{priceStr}}" is-link="{{false}}" />
<l-list title="{{t('pay:attr.entity')}}" icon="research" right-desc="{{t('payChannel::' + pay.entity)}}" is-link="{{false}}" />
</view>
</view>
<view class="meta">
<block wx:if="{{pay.entity !== 'offlineAccount' && notSameApp}}">
<view class="wariningAlert">{{t('notSameApp')}}</view>
</block>
<block wx:elif="{{pay.entity === 'offlineAccount'}}">
<view wx:if="{{pay.iState === 'paying'}}" class="infoAlert" style="margin-bottom:20rpx;">{{t('code.help.' + mode)}}</view>
<l-popup wx:if="{{showChannelSelectMp}}" show="{{showChannelSelectMp}}" content-align="bottom" bind:lintap="closeChannelSelectMp">
<view class="my-panel-class">
<l-radio-group
wx:for="{{offlines}}"
wx:key="value"
current="{{offline.id}}"
bind:linchange="updateOfflineIdMp"
>
<l-radio wx:key="{{item.id}}" key="{{item.id}}">
<view class="radio">
<view style="white-space:nowrap">{{t('offlineAccount:v.type.'+ item.type)}}</view>
</view>
</l-radio>
</l-radio-group>
</view>
</l-popup>
<l-form style="margin-top:24rpx;width:100%;background-color:#fff;">
<l-form-item label-width="240rpx" label="{{t('channel.prefix')}}">
<block wx:if="{{pay.iState === 'paying' && offlines.length > 1}}">
<view style="display: flex; align-items: center; justify-content: flex-start;">
<view class="defaultBtn" bindtap="openChannelSelectMp">{{t('offlineAccount:v.type.' + offline.type)}}</view>
</view>
</block>
<block wx:else>
<view>{{t('offlineAccount:v.type.' + offline.type)}}</view>
</block>
</l-form-item>
<block wx:if="{{offline.type === 'bank'}}">
<l-form-item label-width="240rpx" label="{{t('offlineAccount::label.channel.bank')}}">
<view>{{offline.channel}}</view>
</l-form-item>
<l-form-item label-width="240rpx" label="{{t('offlineAccount::label.name.bank')}}">
<view>{{offline.name}}</view>
</l-form-item>
<l-form-item label-width="240rpx" label="{{t('offlineAccount::label.qrCode.bank')}}">
<view>{{offline.qrCode}}</view>
</l-form-item>
</block>
<block wx:else>
<block wx:if="{{offline.type === 'others'}}">
<l-form-item label-width="240rpx" label="{{t('offlineAccount::label.channel.others')}}">
<view>{{offline.channel}}</view>
</l-form-item>
</block>
<block wx:if="{{offline.name}}">
<l-form-item label-width="240rpx" label="{{t('offlineAccount::label.name.' + offline.type)}}">
<view>{{offline.name}}</view>
</l-form-item>
</block>
<!-- <block wx:if="{{offline.qrCode}}">
<l-form-item label-width="240rpx" label="{{t('offlineAccount::label.qrCode.' + offline.type)}}">
<view class="qrCode"></view>
</l-form-item>
</block> -->
</block>
<l-form-item label-width="240rpx" label="{{t('code.label')}}">
<l-tag bg-color="#d9363e">{{pay.phantom3}}</l-tag>
</l-form-item>
<l-form-item label-width="240rpx" label="{{t('externalId.label')}}">
<l-input
hide-label="{{true}}"
clear="{{true}}"
disabled="{{pay.iState !== 'paying'}}"
placeholder="{{t('externalId.placeholder')}}"
bind:lininput="updateExternalIdMp"
bind:linclear="clearExternalIdMp"
/>
</l-form-item>
<!-- 这里在条件满足情况下应当显示t('externalId.help')和web.tsx保持一致 todo by Xc -->
</l-form>
</block>
<block wx:elif="{{pay.entity === 'wpProduct'}}">
<view wx:if="{{pay.iState === 'paid' && !showDepositConfirm}}" class="paid">
<l-icon name="success" color="green" size="140" />
<view class="text">{{t('success')}}</view>
</view>
<block wx:if="{{pay.wpProduct.type === 'native'}}">
<view wx:if="{{pay.iState === 'paying'}}">
<l-countdown time-type="second" time="{{duration}}" format="{%h}:{%m}:{%s}"/>
<view>QRCode</view>
<view class="qrCodeTips">
<view wx:if="{{process.env.NODE_ENV === 'production'}}" class="infoAlert">{{t('wechat.native.tips')}}</view>
<view wx:else class="warningAlert">{{t('wechat.native.tips2')}}</view>
</view>
</view>
</block>
</block>
</view>
<view class="padding">
<view wx:if="{{showDepositConfirm}}" class="depositConfrimBox">
<view class="depositConfrimText">
<l-icon name='warning' size="36" color="#faad14" />
<span>{{depositConfirmLoading ? t('ship.waiting.tip') : t('ship.confirming.tip')}}</span>
</view>
<l-button
size="long"
bind:lintap="confirmShipMp"
loading="{{depositConfirmLoading}}"
style="width:100%"
>
{{depositConfirmLoading ? t('ship.waiting.confirm') : t('ship.confirming.confirm')}}
</l-button>
</view>
</view>
<view style="display:flex; align-items: center;justify-content: space-between;gap:16rpx;">
<block wx:if="{{closable && !oakExecutable}}">
<l-button
type="error"
size="long"
bind:lintap="closeMp"
style="flex:1;"
>
{{t('pay:action.close')}}
</l-button>
<l-dialog
show="{{showCloseConfirmMp}}"
type="confirm"
title="{{t('cc.title')}}"
content="{{t('cc.content')}}"
bind:linconfirm="confirmCloseMp"
bind:lincancel="cancelCloseMp"
bind:lintap="cancelCloseMp"
/>
</block>
<block wx:if="{{startPayable}}">
<l-button
size="long"
bind:lintap="startPay"
type="success"
style="flex:1;"
>
{{t('pay')}}
</l-button>
</block>
<block wx:elif="{{oakExecutable === true}}">
<view class="btn">
<l-button
plain="true"
size="long"
bind:lintap="resetMp"
>
{{t('common::reset')}}
</l-button>
<l-button
size="long"
bind:lintap="executeMp"
>
{{t('common::action.update')}}
</l-button>
</view>
</block>
<block wx:elif="{{!closable && !showDepositConfirm}}">
<l-button
type="default"
size="long"
bind:lintap="goBack"
style="flex:1;"
>
{{t('common::back')}}
</l-button>
</block>
</view>
</view>