From ed68d97625c05f0d1ab3ce2bf1ce187e78ad10aa Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期五, 26 十二月 2025 16:30:33 +0800
Subject: [PATCH] feat: 订单

---
 src/services/api/standardOrder.ts                                  |   18 ++
 src/views/StandardOrderManage/OrderManage.vue                      |    4 
 .eslintrc-auto-import.json                                         |    2 
 src/services/api/typings.d.ts                                      |   89 ++++++++++++
 src/views/FinanceManage/OrderSettlementManage.vue                  |   25 +++
 src/hooks/standardOrder.ts                                         |   45 ++++++
 src/services/api/taskUser.ts                                       |   15 ++
 src/services/api/index.ts                                          |    4 
 src/views/StandardOrderManage/OrderManageDetail.vue                |   15 -
 src/constants/common.ts                                            |    9 +
 auto-imports.d.ts                                                  |    5 
 src/components/Table/PortraitTableWithAttachment.vue               |   87 ++++++++++++
 src/constants/apiEnum.ts                                           |    2 
 src/constants/index.ts                                             |    1 
 src/views/FinanceManage/components/OrderSettlementDetailDialog.vue |   40 +++--
 src/services/api/user.ts                                           |   15 ++
 16 files changed, 337 insertions(+), 39 deletions(-)

diff --git a/.eslintrc-auto-import.json b/.eslintrc-auto-import.json
index 3102a68..13eaef6 100644
--- a/.eslintrc-auto-import.json
+++ b/.eslintrc-auto-import.json
@@ -11,6 +11,7 @@
     "CertificateTypeCodeEnum": true,
     "ChargeTypeEnum": true,
     "ChargeTypeEnumText": true,
+    "CommonAnnexTableColumns": true,
     "Component": true,
     "ComponentPublicInstance": true,
     "ComputedRef": true,
@@ -363,6 +364,7 @@
     "useRouter": true,
     "useSetReactive": true,
     "useSlots": true,
+    "useStandardOrder": true,
     "useTemplateRef": true,
     "useUser": true,
     "useVModel": true,
diff --git a/auto-imports.d.ts b/auto-imports.d.ts
index ea619c8..253a3c1 100644
--- a/auto-imports.d.ts
+++ b/auto-imports.d.ts
@@ -17,6 +17,7 @@
   const CertificateTypeCodeEnum: typeof import('./src/constants/dic')['CertificateTypeCodeEnum']
   const ChargeTypeEnum: typeof import('./src/constants/enterprise')['ChargeTypeEnum']
   const ChargeTypeEnumText: typeof import('./src/constants/enterprise')['ChargeTypeEnumText']
+  const CommonAnnexTableColumns: typeof import('./src/constants/common')['CommonAnnexTableColumns']
   const EditorType: typeof import('./src/constants/editor')['EditorType']
   const EditorTypeText: typeof import('./src/constants/editor')['EditorTypeText']
   const EducationCodeEnum: typeof import('./src/constants/dic')['EducationCodeEnum']
@@ -326,6 +327,7 @@
   const useGetDictionaryCategorySelect: typeof import('./src/hooks/dic')['useGetDictionaryCategorySelect']
   const useGetEnterprises: typeof import('./src/hooks/enterprise')['useGetEnterprises']
   const useGetShowAdvertisements: typeof import('./src/hooks/advertisement')['useGetShowAdvertisements']
+  const useGetStandardOrder: typeof import('./src/hooks/standardOrder')['useGetStandardOrder']
   const useGetStandardOrders: typeof import('./src/hooks/standardOrder')['useGetStandardOrders']
   const useGlobalEventContext: typeof import('./src/hooks/useEvent')['useGlobalEventContext']
   const useGlobalEventProvide: typeof import('./src/hooks/useEvent')['useGlobalEventProvide']
@@ -349,6 +351,7 @@
   const useRouter: typeof import('vue-router')['useRouter']
   const useSetReactive: typeof import('./src/hooks/global/helper')['useSetReactive']
   const useSlots: typeof import('vue')['useSlots']
+  const useStandardOrder: typeof import('./src/hooks/standardOrder')['useStandardOrder']
   const useTemplateRef: typeof import('vue')['useTemplateRef']
   const useUser: typeof import('./src/hooks/useUser')['useUser']
   const useVModel: typeof import('./src/hooks/help')['useVModel']
@@ -422,6 +425,7 @@
     readonly CertificateTypeCodeEnum: UnwrapRef<typeof import('./src/constants/dic')['CertificateTypeCodeEnum']>
     readonly ChargeTypeEnum: UnwrapRef<typeof import('./src/constants/enterprise')['ChargeTypeEnum']>
     readonly ChargeTypeEnumText: UnwrapRef<typeof import('./src/constants/enterprise')['ChargeTypeEnumText']>
+    readonly CommonAnnexTableColumns: UnwrapRef<typeof import('./src/constants/common')['CommonAnnexTableColumns']>
     readonly EditorType: UnwrapRef<typeof import('./src/constants/editor')['EditorType']>
     readonly EditorTypeText: UnwrapRef<typeof import('./src/constants/editor')['EditorTypeText']>
     readonly EducationCodeEnum: UnwrapRef<typeof import('./src/constants/dic')['EducationCodeEnum']>
@@ -748,6 +752,7 @@
     readonly useRouter: UnwrapRef<typeof import('vue-router')['useRouter']>
     readonly useSetReactive: UnwrapRef<typeof import('./src/hooks/global/helper')['useSetReactive']>
     readonly useSlots: UnwrapRef<typeof import('vue')['useSlots']>
+    readonly useStandardOrder: UnwrapRef<typeof import('./src/hooks/standardOrder')['useStandardOrder']>
     readonly useTemplateRef: UnwrapRef<typeof import('vue')['useTemplateRef']>
     readonly useUser: UnwrapRef<typeof import('./src/hooks/useUser')['useUser']>
     readonly useVModel: UnwrapRef<typeof import('./src/hooks/help')['useVModel']>
diff --git a/src/components/Table/PortraitTableWithAttachment.vue b/src/components/Table/PortraitTableWithAttachment.vue
new file mode 100644
index 0000000..b8e0a15
--- /dev/null
+++ b/src/components/Table/PortraitTableWithAttachment.vue
@@ -0,0 +1,87 @@
+<template>
+  <PortraitTable v-bind="portraitTableProps" :label-width="labelWidth"> </PortraitTable>
+  <div class="enclosure-list-title">闄勪欢鍒楄〃</div>
+  <ProTableV2
+    :table-data="annexList"
+    :columns="CommonAnnexTableColumns"
+    :operation-btns="operationListBtns"
+    :show-pagination="false"
+    :show-no-data="false"
+    :auto-height="false"
+    :show-table-column-setting="false"
+    :table-props="{ maxHeight: '400px' }"
+    :column-render-map="columnsRenderProps"
+  >
+  </ProTableV2>
+</template>
+
+<script setup lang="ts" generic="TAnnexItem">
+import { downloadFileByUrl } from '@bole-core/core';
+import { CommonAnnexTableColumns } from '@/constants';
+import { bolePreview, ProTableV2, ProTableV2Props } from '@bole-core/components';
+
+defineOptions({
+  name: 'PortraitTableWithAttachment',
+});
+
+type Props = {
+  annexList: TAnnexItem[];
+  customDownLoad?: (row: TAnnexItem) => Promise<any>;
+  labelWidth?: string;
+  portraitTableProps: any;
+  columnsRenderProps?: ProTableV2Props['columnRenderMap'];
+  downloadFileKey?: keyof TAnnexItem;
+};
+
+const props = withDefaults(defineProps<Props>(), {
+  labelWidth: '180px',
+  columnsRenderProps: () => ({}),
+  downloadFileKey: 'url' as any,
+});
+
+const operationListBtns = [
+  {
+    data: {
+      enCode: 'previewBtn',
+      name: '鏌ョ湅',
+    },
+    emits: {
+      onClick: (row) => handlePreview(row),
+    },
+  },
+  {
+    data: {
+      enCode: 'downloadBtn',
+      name: '涓嬭浇',
+    },
+    emits: {
+      onClick: (row) => handleDownload(row),
+    },
+  },
+];
+
+function handleDownload(row: TAnnexItem) {
+  if (props.customDownLoad) {
+    props.customDownLoad(row);
+  } else {
+    downloadFileByUrl(row[props.downloadFileKey] as any);
+  }
+}
+
+function handlePreview(row: TAnnexItem) {
+  bolePreview({
+    fileUrl: row[props.downloadFileKey] as any,
+  });
+}
+</script>
+
+<style lang="scss" scoped>
+@use '@/style/common.scss' as *;
+
+.enclosure-list-title {
+  padding: 16px 0;
+  font-size: 14px;
+  color: getCssVar('text-color', 'primary');
+  line-height: 19px;
+}
+</style>
diff --git a/src/constants/apiEnum.ts b/src/constants/apiEnum.ts
index d81c52a..69697f3 100644
--- a/src/constants/apiEnum.ts
+++ b/src/constants/apiEnum.ts
@@ -265,6 +265,8 @@
 export enum EnumEnterpriseWalletTransactionType {
   /**鍏呭�� */
   Recharge = 10,
+  /**鏀跺叆 */
+  Income = 11,
   /**杞处 */
   Transfer = 20,
 }
diff --git a/src/constants/common.ts b/src/constants/common.ts
new file mode 100644
index 0000000..d2a756c
--- /dev/null
+++ b/src/constants/common.ts
@@ -0,0 +1,9 @@
+import { defineColumns } from '@bole-core/components';
+
+export const CommonAnnexTableColumns = defineColumns([
+  {
+    id: '1',
+    enCode: 'name',
+    name: '鏂囦欢鍚�',
+  },
+]);
diff --git a/src/constants/index.ts b/src/constants/index.ts
index 06a967c..dfc0dd0 100644
--- a/src/constants/index.ts
+++ b/src/constants/index.ts
@@ -1,3 +1,4 @@
+export * from './common';
 export * from './enum';
 export * from './oss';
 export * from './module';
diff --git a/src/hooks/standardOrder.ts b/src/hooks/standardOrder.ts
index 28cde86..9d56f14 100644
--- a/src/hooks/standardOrder.ts
+++ b/src/hooks/standardOrder.ts
@@ -7,8 +7,14 @@
   EnumStandardOrderPayStatusText,
   EnumStandardOrderSettlementStatusText,
 } from '@/constants';
+import { useQuery } from '@tanstack/vue-query';
 
-export function useGetStandardOrders() {
+type UseGetStandardOrdersOptions = {
+  isSettlement?: boolean;
+};
+
+export function useGetStandardOrders(options: UseGetStandardOrdersOptions) {
+  const { isSettlement = false } = options;
   const {
     getDataSource: getList,
     proTableProps,
@@ -25,7 +31,9 @@
             orderInput: extraParamState.orderInput,
           },
           keywords: extraParamState.keywords,
-          appointmentStatus: extraParamState.appointmentStatus,
+          appointmentStatus: isSettlement
+            ? EnumStandardOrderAppointmentStatus.Completed
+            : extraParamState.appointmentStatus,
           payStatus: extraParamState.payStatus,
           settlementStatus: extraParamState.settlementStatus,
           createdTimeBegin: format(extraParamState.createdTime?.[0] ?? '', 'YYYY-MM-DD 00:00:00'),
@@ -69,3 +77,36 @@
     reset,
   };
 }
+
+type UseStandardOrderOptions = {
+  id: MaybeRef<string>;
+  scene?: EnumGetStandardOrdersQueryScene;
+  onSuccess?: (data: API.GetStandardOrderQueryResult) => any;
+};
+
+export function useStandardOrder({ id, scene, onSuccess }: UseStandardOrderOptions) {
+  const {
+    isLoading,
+    isError,
+    data: detail,
+    refetch,
+  } = useQuery({
+    queryKey: ['standardOrderServices/getStandardOrder', id, scene],
+    queryFn: async () => {
+      const params: API.APIgetStandardOrderParams = {
+        id: unref(id),
+        scene: scene,
+      };
+      return await standardOrderServices.getStandardOrder(params, {
+        showLoading: false,
+      });
+    },
+    placeholderData: () => ({} as API.GetStandardOrderQueryResult),
+    onSuccess(data) {
+      onSuccess?.(data);
+    },
+    enabled: computed(() => !!unref(id)),
+  });
+
+  return { detail, isLoading, isError, refetch };
+}
diff --git a/src/services/api/index.ts b/src/services/api/index.ts
index 10b88c6..aa4cd2f 100644
--- a/src/services/api/index.ts
+++ b/src/services/api/index.ts
@@ -9,13 +9,13 @@
 import * as task from './task';
 import * as enterpriseWallet from './enterpriseWallet';
 import * as ocrUtils from './ocrUtils';
+import * as standardOrder from './standardOrder';
 import * as electronSign from './electronSign';
 import * as resource from './resource';
 import * as logRecords from './logRecords';
 import * as dictionary from './dictionary';
 import * as taskCheckReceive from './taskCheckReceive';
 import * as taskUser from './taskUser';
-import * as standardOrder from './standardOrder';
 import * as standardService from './standardService';
 import * as userResume from './userResume';
 import * as auth from './auth';
@@ -40,13 +40,13 @@
   task,
   enterpriseWallet,
   ocrUtils,
+  standardOrder,
   electronSign,
   resource,
   logRecords,
   dictionary,
   taskCheckReceive,
   taskUser,
-  standardOrder,
   standardService,
   userResume,
   auth,
diff --git a/src/services/api/standardOrder.ts b/src/services/api/standardOrder.ts
index 22de738..a38f968 100644
--- a/src/services/api/standardOrder.ts
+++ b/src/services/api/standardOrder.ts
@@ -98,6 +98,24 @@
   });
 }
 
+/** 鏌ヨ鏍囧噯璁㈠崟缁撶畻璇︽儏 GET /api/flexjob/standardOrder/getStandardOrderSettlement */
+export async function getStandardOrderSettlement(
+  // 鍙犲姞鐢熸垚鐨凱aram绫诲瀷 (闈瀊ody鍙傛暟swagger榛樿娌℃湁鐢熸垚瀵硅薄)
+  params: API.APIgetStandardOrderSettlementParams,
+  options?: API.RequestConfig
+) {
+  return request<API.GetStandardOrderSettlementQueryResult>(
+    '/api/flexjob/standardOrder/getStandardOrderSettlement',
+    {
+      method: 'GET',
+      params: {
+        ...params,
+      },
+      ...(options || {}),
+    }
+  );
+}
+
 /** 鏌ヨ鏍囧噯璁㈠崟璇︽儏 GET /api/flexjob/standardOrder/getSureStandardOrder */
 export async function getSureStandardOrder(
   // 鍙犲姞鐢熸垚鐨凱aram绫诲瀷 (闈瀊ody鍙傛暟swagger榛樿娌℃湁鐢熸垚瀵硅薄)
diff --git a/src/services/api/taskUser.ts b/src/services/api/taskUser.ts
index e7816d9..574ebbc 100644
--- a/src/services/api/taskUser.ts
+++ b/src/services/api/taskUser.ts
@@ -14,6 +14,21 @@
   });
 }
 
+/** 鎵归噺浠诲姟瀹夋帓 POST /api/flexjob/taskUser/batchSetTaskUserArrange */
+export async function batchSetTaskUserArrange(
+  body: API.BatchSetTaskUserArrangeCommand,
+  options?: API.RequestConfig
+) {
+  return request<number>('/api/flexjob/taskUser/batchSetTaskUserArrange', {
+    method: 'POST',
+    headers: {
+      'Content-Type': 'application/json-patch+json',
+    },
+    data: body,
+    ...(options || {}),
+  });
+}
+
 /** 娓呯┖宸插仠姝㈢殑浠诲姟鏀惰棌 DELETE /api/flexjob/taskUser/clearTaskCollect */
 export async function clearTaskCollect(
   body: API.ClearTaskCollectCommand,
diff --git a/src/services/api/typings.d.ts b/src/services/api/typings.d.ts
index 62cea36..d7ac05a 100644
--- a/src/services/api/typings.d.ts
+++ b/src/services/api/typings.d.ts
@@ -408,6 +408,11 @@
     scene?: EnumGetStandardOrdersQueryScene;
   }
 
+  interface APIgetStandardOrderSettlementParams {
+    /** 璁㈠崟Id */
+    id?: string;
+  }
+
   interface APIgetStandardServiceParams {
     /** Id */
     id?: string;
@@ -622,6 +627,14 @@
     errorMessages?: string;
   }
 
+  interface BatchSetTaskUserArrangeCommand {
+    /** 浠诲姟Id */
+    taskInfoIds?: string[];
+    /** 鐏靛伐Id */
+    enterpriseEmployeeId?: string;
+    arrangeStatus?: EnumTaskUserArrangeStatus;
+  }
+
   interface BindWxmpUserInfoCommand {
     /** 璁块棶浠ょ墝 */
     accessToken: string;
@@ -1214,6 +1227,8 @@
   enum EnumEnterpriseWalletTransactionType {
     /**鍏呭�� */
     Recharge = 10,
+    /**鏀跺叆 */
+    Income = 11,
     /**杞处 */
     Transfer = 20,
   }
@@ -3439,6 +3454,24 @@
     timestamp?: number;
   }
 
+  interface FriendlyResultGetStandardOrderSettlementQueryResult {
+    /** 璺熻釜Id */
+    traceId?: string;
+    /** 鐘舵�佺爜 */
+    code?: number;
+    /** 閿欒鐮� */
+    errorCode?: string;
+    data?: GetStandardOrderSettlementQueryResult;
+    /** 鎵ц鎴愬姛 */
+    success?: boolean;
+    /** 閿欒淇℃伅 */
+    msg?: any;
+    /** 闄勫姞鏁版嵁 */
+    extras?: any;
+    /** 鏃堕棿鎴� */
+    timestamp?: number;
+  }
+
   interface FriendlyResultGetStandardOrdersQueryResult {
     /** 璺熻釜Id */
     traceId?: string;
@@ -8178,6 +8211,10 @@
     /** 渚涘簲鍟� */
     supplierEnterpriseName?: string;
     /** 鏈嶅姟浜哄憳 */
+    serverNames?: string;
+    /** 鏈嶅姟浜哄憳鑱旂郴鐢佃瘽 */
+    serverContactPhoneNumbers?: string;
+    /** 鏈嶅姟浜哄憳 */
     servers?: GetStandardOrderQueryResultServer[];
     /** 澶囨敞 */
     remark?: string;
@@ -8202,6 +8239,7 @@
     receiveAmount?: number;
     /** 缁撶畻閲戦 */
     settlementAmount?: number;
+    taskCheckReceiveStatus?: EnumTaskCheckReceiveStatus;
     partAEnterpriseOrderStatus?: EnumGetStandardOrdersQueryPartAEnterpriseOrderStatus;
     supplierEnterpriseOrderStatus?: EnumGetStandardOrdersQuerySupplierEnterpriseOrderStatus;
   }
@@ -8215,6 +8253,38 @@
     contactPhoneNumber?: string;
   }
 
+  interface GetStandardOrderSettlementQueryResult {
+    /** 璁㈠崟Id */
+    id?: string;
+    /** 浠樻浜鸿处鎴� */
+    payerAccount?: string;
+    /** 浠樻浜哄悕绉� */
+    payerName?: string;
+    /** 浠樻浜哄紑鎴疯 */
+    payerBank?: string;
+    /** 浠樻浜烘敮琛� */
+    payerBankBranch?: string;
+    /** 鏀舵浜哄鍚� */
+    receiveName?: string;
+    /** 鏀舵璐︽埛 */
+    receiveAccount?: string;
+    /** 鏀舵浜哄紑鎴疯 */
+    receiveBank?: string;
+    /** 鏀舵浜烘敮琛� */
+    receiveBankBranch?: string;
+    /** 甯佺 */
+    currency?: string;
+    /** 甯佺 */
+    currencyName?: string;
+    settlementStatus?: EnumStandardOrderSettlementStatus;
+    /** 缁撶畻鏃堕棿 */
+    settlementTime?: string;
+    /** 缁撶畻閲戦 */
+    settlementAmount?: number;
+    /** 鐢靛瓙鏀舵嵁涓嬭浇閾炬帴 */
+    ereceiptDownloadOssUrl?: string;
+  }
+
   interface GetStandardOrdersQuery {
     scene?: EnumGetStandardOrdersQueryScene;
     /** 鍏抽敭瀛楋紙璁㈠崟鍙�/鏈嶅姟鍚嶏級 */
@@ -8232,6 +8302,7 @@
     partAEnterpriseOrderStatus?: EnumGetStandardOrdersQueryPartAEnterpriseOrderStatus;
     supplierEnterpriseOrderStatus?: EnumGetStandardOrdersQuerySupplierEnterpriseOrderStatus;
     settlementStatus?: EnumStandardOrderSettlementStatus;
+    taskCheckReceiveStatus?: EnumTaskCheckReceiveStatus;
     pageModel?: PagedListQueryPageModel;
   }
 
@@ -9364,6 +9435,8 @@
   interface GetWxmpSettingsQueryResult {
     /** 闅愯棌鏀粯瀹� */
     hiddenAlipay?: boolean;
+    /** 寰俊瀹℃牳涓� */
+    wxmpAuditInProcess?: boolean;
   }
 
   interface HistoryQueryResult {
@@ -10205,6 +10278,22 @@
     id?: string;
   }
 
+  interface SaveOperationUserCommand {
+    /** 濮撳悕 */
+    name?: string;
+    /** 鐢ㄦ埛鍚� */
+    userName: string;
+    /** 鎵嬫満鍙� */
+    phoneNumber?: string;
+    /** 瀵嗙爜 */
+    password?: string;
+    status?: EnumUserStatus;
+    /** 澶囨敞 */
+    remark?: string;
+    /** Id */
+    id?: string;
+  }
+
   interface SavePartyAEnterpriseCommand {
     /** Id */
     id?: string;
diff --git a/src/services/api/user.ts b/src/services/api/user.ts
index 99cf0de..df6fe54 100644
--- a/src/services/api/user.ts
+++ b/src/services/api/user.ts
@@ -251,6 +251,21 @@
   });
 }
 
+/** 淇濆瓨杩愯惀绔敤鎴� POST /api/user/user/saveOperationUser */
+export async function saveOperationUser(
+  body: API.SaveOperationUserCommand,
+  options?: API.RequestConfig
+) {
+  return request<string>('/api/user/user/saveOperationUser', {
+    method: 'POST',
+    headers: {
+      'Content-Type': 'application/json-patch+json',
+    },
+    data: body,
+    ...(options || {}),
+  });
+}
+
 /** 淇濆瓨鐢ㄦ埛閾惰鍗′俊鎭� POST /api/user/user/savePersonalUserBankCard */
 export async function savePersonalUserBankCard(
   body: API.SavePersonalUserBankCardCommand,
diff --git a/src/views/FinanceManage/OrderSettlementManage.vue b/src/views/FinanceManage/OrderSettlementManage.vue
index 6c60ac8..e441dd7 100644
--- a/src/views/FinanceManage/OrderSettlementManage.vue
+++ b/src/views/FinanceManage/OrderSettlementManage.vue
@@ -46,6 +46,9 @@
 import OrderSettlementDetailDialog from './components/OrderSettlementDetailDialog.vue';
 import { useGetStandardOrders } from '@/hooks';
 import { EnumStandardOrderSettlementStatusText } from '@/constants';
+import * as standardOrderServices from '@/services/api/standardOrder';
+import { Message } from '@bole-core/core';
+import { toThousand } from '@/utils';
 
 defineOptions({
   name: 'OrderSettlementManage',
@@ -67,14 +70,30 @@
 
 const state = reactive({ ...BaseState });
 
-const { getList, proTableProps, paginationState, extraParamState, reset } = useGetStandardOrders();
+const { getList, proTableProps, paginationState, extraParamState, reset } = useGetStandardOrders({
+  isSettlement: true,
+});
 
 onMounted(async () => {
   await getList();
   state.loading = false;
 });
 
-async function handleSettlement(row) {}
+async function handleSettlement(row: API.GetStandardOrdersQueryResultItem) {
+  try {
+    await Message.tipMessage(
+      `纭灏�${toThousand(row.settlementAmount)}鍏冪粨绠楃粰${row.supplierEnterpriseName}鍚楋紵`
+    );
+    let params: API.SettlementStandardOrderCommand = {
+      id: row.id,
+    };
+    let res = await standardOrderServices.settlementStandardOrder(params);
+    if (res) {
+      Message.successMessage('鎿嶄綔鎴愬姛');
+      getList(paginationState.pageIndex);
+    }
+  } catch (error) {}
+}
 
 const { dialogProps, handleEdit, editForm } = useFormDialog({
   defaultFormParams: {
@@ -82,7 +101,7 @@
   },
 });
 
-function openDialog(row) {
+function openDialog(row: API.GetStandardOrdersQueryResultItem) {
   handleEdit({
     id: row.id,
   });
diff --git a/src/views/FinanceManage/components/OrderSettlementDetailDialog.vue b/src/views/FinanceManage/components/OrderSettlementDetailDialog.vue
index 1ee399e..06f2cbc 100644
--- a/src/views/FinanceManage/components/OrderSettlementDetailDialog.vue
+++ b/src/views/FinanceManage/components/OrderSettlementDetailDialog.vue
@@ -19,9 +19,11 @@
 import { FormInstance } from 'element-plus';
 import { ProDialog } from '@bole-core/components';
 import { usePortraitTableWithAttachment } from '@/hooks';
-import { convertApi2FormUrl } from '@/utils';
+import { convertApi2FormUrl, convertApi2FormUrlOnlyOne } from '@/utils';
 import { useQuery } from '@tanstack/vue-query';
-import * as enterpriseCooperationWalletServices from '@/services/api/enterpriseCooperationWallet';
+import * as standardOrderServices from '@/services/api/standardOrder';
+import { EnumStandardOrderSettlementStatusText } from '@/constants';
+import PortraitTableWithAttachment from '@/components/Table/PortraitTableWithAttachment.vue';
 
 defineOptions({
   name: 'OrderSettlementDetailDialog',
@@ -51,67 +53,67 @@
 );
 
 const { data: detail, refetch } = useQuery({
-  queryKey: [
-    'enterpriseCooperationWalletServices/getCooperationWalletRechargeTransaction',
-    form.value.id,
-  ],
+  queryKey: ['standardOrderServices/getStandardOrderSettlement', form.value.id],
   queryFn: async () => {
-    return await enterpriseCooperationWalletServices.getCooperationWalletRechargeTransaction({
+    return await standardOrderServices.getStandardOrderSettlement({
       id: form.value.id,
     });
   },
-  placeholderData: () => ({} as API.GetCooperationWalletRechargeTransactionQueryResult),
+  placeholderData: () => ({} as API.GetStandardOrderSettlementQueryResult),
   enabled: computed(() => !!form.value.id),
 });
 
 const { portraitTableWithAttachmentProps } = usePortraitTableWithAttachment({
   data: detail,
   annexList: computed(() =>
-    detail.value?.files ? detail.value?.files.map((item) => convertApi2FormUrl(item)) : []
+    detail.value?.ereceiptDownloadOssUrl
+      ? convertApi2FormUrlOnlyOne(detail.value?.ereceiptDownloadOssUrl)
+      : []
   ),
   columns: [
     {
       label: '浠樻浜鸿处鎴�',
-      key: 'receiveUnit',
+      key: 'payerAccount',
     },
     {
       label: '鏀舵浜鸿处鎴�',
-      key: 'receiveName',
+      key: 'receiveAccount',
     },
     {
       label: '浠樻浜哄悕绉�',
-      key: 'receiveBank',
+      key: 'payerName',
     },
     {
       label: '鏀舵浜哄悕绉�',
-      key: 'receiveAccount',
+      key: 'receiveName',
     },
     {
       label: '浠樻浜哄紑鎴疯',
-      key: 'receiveAccount',
+      key: 'payerBank',
     },
     {
       label: '鏀舵浜哄紑鎴疯',
-      key: 'receiveAccount',
+      key: 'receiveBank',
     },
     {
       label: '甯佺',
-      key: 'receiveAccount',
+      key: 'currencyName',
     },
     {
       label: '缁撶畻閲戦',
-      key: 'amount',
+      key: 'settlementAmount',
       type: 'money',
     },
     {
       label: '缁撶畻鏃堕棿',
-      key: 'createdTime',
+      key: 'settlementTime',
       type: 'date',
     },
     {
       label: '缁撶畻鐘舵��',
-      key: 'transactionStatus',
+      key: 'settlementStatus',
       type: 'enum',
+      valueEnum: EnumStandardOrderSettlementStatusText,
     },
   ],
 });
diff --git a/src/views/StandardOrderManage/OrderManage.vue b/src/views/StandardOrderManage/OrderManage.vue
index bd231a6..dc1aeb1 100644
--- a/src/views/StandardOrderManage/OrderManage.vue
+++ b/src/views/StandardOrderManage/OrderManage.vue
@@ -96,7 +96,9 @@
 
 const state = reactive({ ...BaseState });
 
-const { getList, proTableProps, paginationState, extraParamState, reset } = useGetStandardOrders();
+const { getList, proTableProps, paginationState, extraParamState, reset } = useGetStandardOrders({
+  isSettlement: false,
+});
 
 onMounted(async () => {
   await getList();
diff --git a/src/views/StandardOrderManage/OrderManageDetail.vue b/src/views/StandardOrderManage/OrderManageDetail.vue
index 37912d1..b059c0d 100644
--- a/src/views/StandardOrderManage/OrderManageDetail.vue
+++ b/src/views/StandardOrderManage/OrderManageDetail.vue
@@ -128,6 +128,7 @@
 import { format, paginateList, setOSSLink } from '@/utils';
 import { useQuery } from '@tanstack/vue-query';
 import { ModelValueType } from 'element-plus';
+import { useStandardOrder } from '@/hooks';
 
 defineOptions({
   name: 'OrderManageDetail',
@@ -174,17 +175,8 @@
 
 const state = reactive({ ...BaseState });
 
-const { isLoading } = useQuery({
-  queryKey: ['standardOrderServices/getStandardOrder', id],
-  queryFn: async () => {
-    return await standardOrderServices.getStandardOrder(
-      { id: id },
-      {
-        showLoading: false,
-      }
-    );
-  },
-  placeholderData: () => ({} as API.GetStandardOrderQueryResult),
+const { isLoading } = useStandardOrder({
+  id: id,
   onSuccess(data) {
     form.appointmentStatus = data.appointmentStatus;
     form.payStatus = data.payStatus;
@@ -214,7 +206,6 @@
     ];
     getList();
   },
-  enabled: computed(() => !!id),
 });
 
 const {

--
Gitblit v1.10.0