From 34e523d5ed7f25a0bc20532577ccde90386352aa Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期四, 23 十月 2025 15:22:41 +0800
Subject: [PATCH] Merge branch 'dev-2.2.3' of http://120.26.58.240:8888/r/JYBIndependentFront into dev-2.2.3

---
 src/views/BalanceManage/components/PaymentRecordView.vue |  123 +++++++++++++++++++++++++++++++++++++++++
 1 files changed, 123 insertions(+), 0 deletions(-)

diff --git a/src/views/BalanceManage/components/PaymentRecordView.vue b/src/views/BalanceManage/components/PaymentRecordView.vue
new file mode 100644
index 0000000..9a20b0d
--- /dev/null
+++ b/src/views/BalanceManage/components/PaymentRecordView.vue
@@ -0,0 +1,123 @@
+<template>
+  <LoadingLayout :loading="state.loading">
+    <AppContainer>
+      <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns">
+        <template #operationBtn-checkBtn="{ data, row }">
+          <PreviewBtnV2
+            class="pro-table-operation-btn"
+            :url="convertApi2FormUrlBySeparator(row.financeToFileUrl ?? '')"
+            preview-btn-text="鏌ョ湅鍑瘉"
+          />
+        </template>
+      </ProTableV2>
+    </AppContainer>
+  </LoadingLayout>
+</template>
+
+<script setup lang="ts">
+import {
+  AppContainer,
+  useTable,
+  PreviewBtnV2,
+  defineOperationBtns,
+  ProTableV2,
+} from '@bole-core/components';
+import { OrderInputType } from '@bole-core/core';
+import * as parkBountyApplyServices from '@/services/api/ParkBountyApply';
+import { FinanceStatusEnum, FinanceStatusEnumText } from '@/constants';
+import { useUser } from '@/hooks';
+import { convertApi2FormUrlBySeparator } from '@/utils';
+
+defineOptions({
+  name: 'PaymentRecordView',
+});
+
+const column = [
+  {
+    id: '1',
+    enCode: 'financeToTime',
+    name: '鎷ㄤ粯鏃堕棿',
+  },
+  {
+    id: '2',
+    enCode: 'financeToAmount',
+    name: '鎷ㄤ粯閲戦',
+  },
+  {
+    id: '3',
+    enCode: 'batchNo',
+    name: '鎷ㄤ粯鎵规',
+  },
+  {
+    id: '4',
+    enCode: 'applyMonth',
+    name: '鎷ㄤ粯鏈堜唤',
+  },
+  {
+    id: '5',
+    enCode: 'financeToStatus',
+    name: '鎷ㄤ粯鐘舵��',
+  },
+];
+
+const operationBtns = defineOperationBtns([
+  {
+    data: {
+      enCode: 'checkBtn',
+      name: '鏌ョ湅鍑瘉',
+    },
+  },
+]);
+
+const { userDetail } = useUser();
+const BaseState = {
+  loading: true,
+};
+
+const state = reactive({ ...BaseState });
+
+const {
+  getDataSource: getList,
+  proTableProps,
+  paginationState,
+  extraParamState,
+} = useTable(
+  async ({ pageIndex, pageSize }, extraParamState) => {
+    try {
+      let params: API.QueryParkCustomerBountyApplyInput = {
+        pageModel: {
+          rows: pageSize,
+          page: pageIndex,
+          orderInput: extraParamState.orderInput,
+        },
+        id: userDetail.value?.userId ?? '',
+      };
+      let res = await parkBountyApplyServices.getParkCustomerBountyFinanceList(params, {
+        showLoading: !state.loading,
+      });
+
+      return res;
+    } catch (error) {}
+  },
+  {
+    defaultExtraParams: {
+      orderInput: [{ property: 'financeToTime', order: OrderInputType.Desc }],
+    },
+    columnsRenderProps: {
+      financeToStatus: { type: 'enum', valueEnum: FinanceStatusEnumText },
+      financeToTime: { type: 'date', format: 'YYYY-MM-DD' },
+      applyMonth: { type: 'date', format: 'YYYY骞碝M鏈�' },
+      financeToAmount: { type: 'money' },
+    },
+  }
+);
+
+onMounted(async () => {
+  await getList();
+  state.loading = false;
+});
+</script>
+
+<style lang="scss" scoped>
+@use '@/style/common.scss' as *;
+</style>

--
Gitblit v1.9.1