wupengfei
1 天以前 ddddcf83e7deb9d0a674d2bbead300089530d87e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
<template>
  <InfiniteLoading
    scrollViewClassName="life-page-infinite-scroll-list"
    v-bind="infiniteLoadingProps"
  >
    <template #renderItem="{ item }">
      <OrderCard
        title="燃气充值"
        :status="item?.lifePayOrderStatus"
        :order-no="item?.orderNo"
        :id="item?.id"
        @goApplyRefund="emit('goApplyRefund', $event)"
        @goRefundDetail="emit('goRefundDetail', $event)"
      >
        <OrderCardItem
          label="充值账号:"
          :value="JSON.parse(item?.orderParamDetailJsonStr)?.gasAccount"
        />
        <OrderCardItem
          label="下单时间:"
          :value="item?.creationTime && dayjs(item?.creationTime).format('YYYY-MM-DD HH:mm:ss')"
        />
        <template
          v-if="
            item.frontStatus === BlLifeRecharge.constants.LifePayOrderFrontStatusEnum.充值成功 ||
            item.frontStatus === BlLifeRecharge.constants.LifePayOrderFrontStatusEnum.支付成功
          "
        >
          <OrderCardItem
            label="充值金额:"
            :value="`¥${toThousand(item?.rechargeAmount)}`"
            danger
          />
          <OrderCardItem label="优惠金额:" :value="`¥${toThousand(item?.discountAmount)}`" />
        </template>
        <OrderCardItem label="实付金额:" :value="`¥${toThousand(item?.payAmount)}`" danger />
        <OrderCardItem
          label="支付时间:"
          :value="item?.payTime && dayjs(item?.payTime).format('YYYY-MM-DD HH:mm:ss')"
        />
        <OrderCardItem
          v-if="
            item.frontStatus === BlLifeRecharge.constants.LifePayOrderFrontStatusEnum.充值成功 ||
            item.frontStatus === BlLifeRecharge.constants.LifePayOrderFrontStatusEnum.支付成功
          "
          label="完成时间:"
          :value="item?.finishTime && dayjs(item?.finishTime).format('YYYY-MM-DD HH:mm:ss')"
        />
        <OrderCardItem
          v-else-if="
            item.frontStatus === BlLifeRecharge.constants.LifePayOrderFrontStatusEnum.退款待审核 ||
            item.frontStatus === BlLifeRecharge.constants.LifePayOrderFrontStatusEnum.退款失败
          "
          label="退款发起时间:"
          :labelWidth="200"
          :value="
            item?.refundApplyTime && dayjs(item?.refundApplyTime).format('YYYY-MM-DD HH:mm:ss')
          "
        />
        <template v-else>
          <OrderCardItem label="退款金额:" :value="`¥${toThousand(item?.payAmount)}`" danger />
          <OrderCardItem
            label="退款时间:"
            :value="item?.refundTime && dayjs(item?.refundTime).format('YYYY-MM-DD HH:mm:ss')"
          >
          </OrderCardItem>
        </template>
      </OrderCard>
    </template>
  </InfiniteLoading>
</template>
 
<script setup lang="ts">
import InfiniteLoading from '../../../components/InfiniteLoading/InfiniteLoading.vue';
import OrderCard from '../../../components/Card/OrderCard.vue';
import OrderCardItem from '../../../components/Card/OrderCardItem.vue';
import { useGetUserLifePayOrderPage } from '../../../hooks';
import dayjs from 'dayjs';
import { BlLifeRecharge } from '@life-payment/core-vue';
import { toThousand, convertOrderFrontStatus } from '../../../utils';
 
defineOptions({
  name: 'GasOrder',
});
 
// type Props = {};
 
// const props = withDefaults(defineProps<Props>(), {});
 
const emit = defineEmits<{
  (e: 'goApplyRefund', id: string): void;
  (e: 'goRefundDetail', orderNo: string): void;
}>();
 
const { infiniteLoadingProps } = useGetUserLifePayOrderPage({
  lifePayOrderType: BlLifeRecharge.constants.LifePayOrderTypeEnum.燃气订单,
});
</script>