You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
88 lines
4.5 KiB
88 lines
4.5 KiB
<template>
|
|
<div
|
|
class="PaymentDetails tw-bg-white tw-rounded-[20px] tw-text-base-primary tw-p-5 tw-h-auto"
|
|
v-if="BookingOrder.Payment && BookingOrder.OnSiteService.Provider"
|
|
>
|
|
<div class="tw-body-3 tw-font-bold tw-mb-[11.5px]">{{ $t('Payment Details') }}</div>
|
|
<div class="tw-mb-[10px]">
|
|
<div class="tw-py-[20px] t14 tw-font-bold tw-inline-block tw-mr-[40px]">
|
|
<div class="tw-mb-[12px]">{{ $t('Payment Method') }}</div>
|
|
<div class="tw-mb-[12px]">{{ $t('Payment Terms') }}</div>
|
|
<div v-if="BookingOrder.Payment.PaymentDate" class="tw-mb-[12px]">{{ $t('Payment Date') }}</div>
|
|
<div>{{ $t('Total Amount') }}</div>
|
|
</div>
|
|
<div class="t14 tw-inline-block">
|
|
<div class="tw-mb-[12px]">
|
|
{{ BookingOrder.PaymentType ? paymentMethodMap(BookingOrder.PaymentType) : "尚未確認付款方式" }}
|
|
</div>
|
|
<div class="tw-mb-[12px]">
|
|
全額付款
|
|
</div>
|
|
<div v-if="BookingOrder.Payment.PaymentDate" class="tw-mb-[12px]">
|
|
{{ BookingOrder.Payment.PaymentDate ? new Date(BookingOrder.Payment.PaymentDate).toLocaleString() : "尚未付款" }}
|
|
</div>
|
|
<div>
|
|
${{ BookingOrder.TotalPrice }} {{ BookingOrder.Currency.CurrencyName }}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div v-if="BookingOrder.PaymentStatus == '01' && BookingOrder.PaymentType == '3'" class="tw-flex">
|
|
<img src="~/assets/img/icons/Icon.png" class="tw-w-[20px] tw-h-[20px] tw-mr-[5px]" />
|
|
<div class="tw-text-[#ffb70a]">{{ $t('This Booking is Unpaid') }}</div>
|
|
</div>
|
|
<div v-if="BookingOrder.PaymentStatus == '01' && BookingOrder.PaymentType == '2' && BookingOrder.OnSiteService.Provider.ProviderStatus == null" class="tw-flex">
|
|
<img src="~/assets/img/icons/Icon.png" class="tw-w-[20px] tw-h-[20px] tw-mr-[5px]" />
|
|
<div class="tw-text-[#ffb70a]">等待供應商確認後提供匯款訊息</div>
|
|
</div>
|
|
<div
|
|
class="tw-grid tw-grid-rows-[40px_40px_auto] tw-gap-[10px_12px] md:tw-grid-cols-[129px_175px_auto] md:tw-grid-rows-none md:tw-items-center md:tw-gap-[24px]"
|
|
>
|
|
<button v-if="BookingOrder.BookingStatus == '02' && BookingOrder.PaymentType == '2' && BookingOrder.OnSiteService.Provider.ProviderStatus != '04'"
|
|
class="t14 tw-text-complementary-1 tw-p-[11px] tw-font-bold tw-bg-[#EFF3FF] tw-max-w-[129px] tw-rounded-[10px] hover:tw-text-[#A0B5FF] no-print"
|
|
@click="$emit('banking-details')"
|
|
>
|
|
{{ $t('Banking Details') }}
|
|
</button>
|
|
<button v-if="BookingOrder.BookingStatus == '02' && BookingOrder.PaymentStatus == '01' && BookingOrder.PaymentType == '2' && BookingOrder.Payment.Remittance == null"
|
|
class="button-border t14 tw-text-primary-1 tw-p-[11px] tw-font-bold tw-border tw-border-solid tw-rounded-[10px] tw-border-primary-1 tw-max-w-[175px] hover:tw-bg-primary-3 no-print"
|
|
@click="$emit('upload-remittanceSlip')"
|
|
>
|
|
{{ $t('Upload Remittance Slip') }}
|
|
</button>
|
|
<button v-if="BookingOrder.BookingStatus == '02' && BookingOrder.PaymentStatus == '02' && BookingOrder.PaymentType == '2' && BookingOrder.Payment.Remittance != null"
|
|
class="button-border t14 tw-text-primary-1 tw-p-[11px] tw-font-bold tw-border tw-border-solid tw-rounded-[10px] tw-border-primary-1 tw-max-w-[175px] hover:tw-bg-primary-3 no-print"
|
|
@click="$emit('upload-remittanceSlip')"
|
|
>
|
|
{{ $t('Upload Remittance Slip Again') }}
|
|
</button>
|
|
<div v-if="BookingOrder.BookingStatus == '02' && BookingOrder.PaymentStatus == '01' && BookingOrder.PaymentType == '2' && BookingOrder.Payment.Remittance == null" class="t14 tw-font-normal tw-text-[#EE9546]">
|
|
{{ $t('Please upload your remittance slip as soon as the bill has been transferred.') }}
|
|
</div>
|
|
<button v-if="BookingOrder.BookingStatus == '02' && BookingOrder.PaymentStatus == '02' && BookingOrder.PaymentType == '2' && BookingOrder.Payment.Remittance != null"
|
|
class="t14 tw-text-complementary-1 tw-underline tw-underline-complementary-1 tw-max-w-[110px] no-print"
|
|
@click="$emit('open-remittanceSlip', BookingOrder.Payment.Remittance)"
|
|
>
|
|
{{ BookingOrder.Payment.RemittanceFileName }}
|
|
</button>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
<script>
|
|
import { paymentMethodMap, paymentTermMap } from '@/plugins/util.js'
|
|
export default {
|
|
components: {
|
|
paymentMethodMap,
|
|
paymentTermMap
|
|
},
|
|
props: {
|
|
BookingOrder: {
|
|
type: Object,
|
|
},
|
|
},
|
|
methods: {
|
|
paymentMethodMap,
|
|
paymentTermMap
|
|
}
|
|
};
|
|
</script>
|
|
<style lang="scss" scoped></style>
|