From ddddcf83e7deb9d0a674d2bbead300089530d87e Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期三, 21 五月 2025 13:24:07 +0800
Subject: [PATCH] feat: UI

---
 packages/components/src/views/Order/components/ElectricOrder.vue |  106 ++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 89 insertions(+), 17 deletions(-)

diff --git a/packages/components/src/views/Order/components/ElectricOrder.vue b/packages/components/src/views/Order/components/ElectricOrder.vue
index 1ab4dc3..eac8a9e 100644
--- a/packages/components/src/views/Order/components/ElectricOrder.vue
+++ b/packages/components/src/views/Order/components/ElectricOrder.vue
@@ -1,24 +1,91 @@
 <template>
-  <!-- <InfiniteLoading scrollViewClassName="common-infinite-scroll-list" v-bind="infiniteLoadingProps">
-    <template #renderItem="{ item }"> -->
-  <OrderCard title="鐢佃垂鍏呭��" status="寰呮敮浠�">
-    <OrderCardItem label="鍏呭�煎湴鍖�:" :value="'18888888888'" />
-    <OrderCardItem label="鍏呭�兼埛鍙�:" :value="'18888888888'" />
-    <OrderCardItem label="涓嬪崟鏃堕棿:" :value="'2025-02-19  17:15:54'" />
-    <OrderCardItem label="鍏呭�奸噾棰�:" :value="'18888888888'" />
-    <OrderCardItem label="浼樻儬閲戦:" :value="'18888888888'" />
-    <OrderCardItem label="瀹炰粯閲戦:" :value="'18888888888'" />
-    <OrderCardItem label="鏀粯鏃堕棿:" :value="'2025-02-19  17:15:54'" />
-    <OrderCardItem label="瀹屾垚鏃堕棿:" :value="'2025-02-19  17:15:54'" />
-  </OrderCard>
-  <!-- </template>
-  </InfiniteLoading> -->
+  <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)?.Province ?? ''} ${
+            JSON.parse(item?.orderParamDetailJsonStr)?.City ?? ''
+          }`"
+        />
+        <OrderCardItem
+          label="鍏呭�兼埛鍙�:"
+          :value="JSON.parse(item?.orderParamDetailJsonStr)?.ElectricAccount"
+        />
+        <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="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>
 </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 { BlLifeRecharge } from '@life-payment/core-vue';
+import dayjs from 'dayjs';
+import { toThousand, convertOrderFrontStatus } from '../../../utils';
 
 defineOptions({
   name: 'ElectricOrder',
@@ -28,7 +95,12 @@
 
 // const props = withDefaults(defineProps<Props>(), {});
 
-const infiniteLoadingProps = {};
-</script>
+const emit = defineEmits<{
+  (e: 'goApplyRefund', id: string): void;
+  (e: 'goRefundDetail', orderNo: string): void;
+}>();
 
-<style lang="scss"></style>
+const { infiniteLoadingProps } = useGetUserLifePayOrderPage({
+  lifePayOrderType: BlLifeRecharge.constants.LifePayOrderTypeEnum.鐢佃垂璁㈠崟,
+});
+</script>

--
Gitblit v1.9.1