zhengyiming
昨天 23bfd958545ab5548d561ef6db1eafafe03e4e05
packages/components/src/views/Order/components/ElectricOrder.vue
@@ -1,24 +1,79 @@
<template>
  <InfiniteLoading scrollViewClassName="common-infinite-scroll-list" v-bind="infiniteLoadingProps">
  <InfiniteLoading
    scrollViewClassName="life-page-infinite-scroll-list"
    v-bind="infiniteLoadingProps"
  >
    <template #renderItem="{ item }">
      <OrderCard title="电费充值" status="待支付" :order-no="item?.orderNo">
        <OrderCardItem label="充值地区:" :value="'18888888888'" />
        <OrderCardItem label="充值户号:" :value="'18888888888'" />
      <OrderCard
        title="电费充值"
        :status="item?.lifePayOrderStatus"
        :frontStatus="item?.frontStatus"
        :order-no="item?.orderNo"
        :id="item?.id"
        @goApplyRefund="emit('goApplyRefund', $event)"
        @goRefundDetail="emit('goRefundDetail', $event)"
      >
        <OrderCardItem
          label="充值地区:"
          :value="`${JSON.parse(item?.orderParamDetailJsonStr)?.Province ?? ''} ${
            JSON.parse(item?.orderParamDetailJsonStr)?.City ?? ''
          }`"
        />
        <OrderCardItem
          label="充值户号:"
          :value="JSON.parse(item?.orderParamDetailJsonStr)?.ElectricAccount"
        />
        <OrderCardItem
          label="下单时间:"
          :value="dayjs(item?.creationTime).format('YYYY-MM-DD HH:mm:ss')"
          :value="item?.creationTime && dayjs(item?.creationTime).format('YYYY-MM-DD HH:mm:ss')"
        />
        <OrderCardItem label="充值金额:" :value="item?.rechargeAmount" />
        <OrderCardItem label="优惠金额:" :value="item?.discountAmount" />
        <OrderCardItem label="实付金额:" :value="item?.payAmount" />
        <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="dayjs(item?.payTime).format('YYYY-MM-DD HH:mm:ss')"
          :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
          label="完成时间:"
          :value="dayjs(item?.finishTime).format('YYYY-MM-DD HH:mm:ss')"
          v-else-if="
            item.frontStatus === BlLifeRecharge.constants.LifePayOrderFrontStatusEnum.退款待审核 ||
            item.frontStatus === BlLifeRecharge.constants.LifePayOrderFrontStatusEnum.退款失败
          "
          label="退款发起时间:"
          labelWidth="110px"
          :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>
@@ -29,8 +84,9 @@
import OrderCard from '../../../components/Card/OrderCard.vue';
import OrderCardItem from '../../../components/Card/OrderCardItem.vue';
import { useGetUserLifePayOrderPage } from '../../../hooks';
import { BlLifeRecharge } from '../../../utils';
import { BlLifeRecharge } from '@life-payment/core-vue';
import dayjs from 'dayjs';
import { toThousand, convertOrderFrontStatus } from '../../../utils';
defineOptions({
  name: 'ElectricOrder',
@@ -40,6 +96,11 @@
// 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.电费订单,
});