27个文件已修改
10个文件已添加
2443 ■■■■ 已修改文件
.eslintrc-auto-import.json 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
auto-imports.d.ts 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pnpm-lock.yaml 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/Table/PortraitTableWithAttachment.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/constants/apiEnum.ts 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/constants/finance.ts 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/constants/task.ts 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/router/index.ts 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/services/api/electronSign.ts 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/services/api/enterpriseCooperationWallet.ts 122 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/services/api/eventUtils.ts 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/services/api/index.ts 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/services/api/task.ts 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/services/api/typings.d.ts 521 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/services/api/user.ts 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/index.ts 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/orderUtils.ts 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/EmploymentManage/CheckManage.vue 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/EmploymentManage/CheckReceiveTaskDetail.vue 61 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/EmploymentManage/TaskManageList.vue 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/EmploymentManage/components/AddOrEditEmploymentView.vue 62 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/EmploymentManage/components/CheckManageDialog.vue 79 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/EmploymentManage/constants/columns.ts 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FinanceManage/AccountManage.vue 169 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FinanceManage/CustomerRechargeManage.vue 168 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FinanceManage/CustomerRechargeRecord.vue 111 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FinanceManage/EnterpriseBalanceManage.vue 132 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FinanceManage/EnterpriseBalanceManageDetail.vue 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FinanceManage/components/CustomerBalanceManageView.vue 94 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FinanceManage/components/CustomerRechargeDialog.vue 170 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FinanceManage/components/DistributionDetailView.vue 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FinanceManage/components/EnterpriseBalanceManageView.vue 132 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FinanceManage/components/RechargeRecordialog.vue 102 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FinanceManage/constants/columns.ts 124 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/ServiceChargeManage/components/RechargeEnterpriseWalletDialog.vue 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/UserManage/UserManageList.vue 24 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/UserManage/components/AddOrEditUserDialog.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.eslintrc-auto-import.json
@@ -34,6 +34,9 @@
    "EnumEnterpriseCooperationSignStatusText": true,
    "EnumEnterpriseCooperationStatus": true,
    "EnumEnterpriseCooperationStatusText": true,
    "EnumEnterpriseCooperationWalletTransactionStatus": true,
    "EnumEnterpriseCooperationWalletTransactionStatusText": true,
    "EnumEnterpriseCooperationWalletTransactionStatusTextForConfirm": true,
    "EnumEnterpriseCostStatus": true,
    "EnumEnterpriseCostType": true,
    "EnumEnterpriseRealMethod": true,
@@ -107,6 +110,7 @@
    "EnumTaskUserSignContractStatusText": true,
    "EnumTaskUserSignContractStatusTextForFilter": true,
    "EnumTaskUserSubmitCheckHistoryType": true,
    "EnumTaskUserSubmitCheckHistoryTypeText": true,
    "EnumTaskUserSubmitCheckReceiveStatus": true,
    "EnumTaskUserSubmitCheckReceiveStatusText": true,
    "EnumUserBankCardAccess": true,
@@ -145,6 +149,7 @@
    "GetPersonalApplyTaskInfosQueryStatus": true,
    "GetPersonalHireTaskInfosQueryStatus": true,
    "GetSettlementTasksQueryPaymentStatus": true,
    "GetSettlementTasksQuerySupplierPaymentStatus": true,
    "GetTaskInfoQueryResultApplyButton": true,
    "GetTaskInfoQueryResultHireButton": true,
    "GlobalEvent": true,
auto-imports.d.ts
@@ -37,6 +37,9 @@
  const EnumEnterpriseCooperationSignStatusText: typeof import('./src/constants/customer')['EnumEnterpriseCooperationSignStatusText']
  const EnumEnterpriseCooperationStatus: typeof import('./src/constants/apiEnum')['EnumEnterpriseCooperationStatus']
  const EnumEnterpriseCooperationStatusText: typeof import('./src/constants/customer')['EnumEnterpriseCooperationStatusText']
  const EnumEnterpriseCooperationWalletTransactionStatus: typeof import('./src/constants/apiEnum')['EnumEnterpriseCooperationWalletTransactionStatus']
  const EnumEnterpriseCooperationWalletTransactionStatusText: typeof import('./src/constants/finance')['EnumEnterpriseCooperationWalletTransactionStatusText']
  const EnumEnterpriseCooperationWalletTransactionStatusTextForConfirm: typeof import('./src/constants/finance')['EnumEnterpriseCooperationWalletTransactionStatusTextForConfirm']
  const EnumEnterpriseCostStatus: typeof import('./src/constants/apiEnum')['EnumEnterpriseCostStatus']
  const EnumEnterpriseCostType: typeof import('./src/constants/apiEnum')['EnumEnterpriseCostType']
  const EnumEnterpriseRealMethod: typeof import('./src/constants/apiEnum')['EnumEnterpriseRealMethod']
@@ -112,6 +115,7 @@
  const EnumTaskUserSignContractStatusText: typeof import('./src/constants/enterpriseEmployee')['EnumTaskUserSignContractStatusText']
  const EnumTaskUserSignContractStatusTextForFilter: typeof import('./src/constants/enterpriseEmployee')['EnumTaskUserSignContractStatusTextForFilter']
  const EnumTaskUserSubmitCheckHistoryType: typeof import('./src/constants/apiEnum')['EnumTaskUserSubmitCheckHistoryType']
  const EnumTaskUserSubmitCheckHistoryTypeText: typeof import('./src/constants/task')['EnumTaskUserSubmitCheckHistoryTypeText']
  const EnumTaskUserSubmitCheckReceiveStatus: typeof import('./src/constants/apiEnum')['EnumTaskUserSubmitCheckReceiveStatus']
  const EnumTaskUserSubmitCheckReceiveStatusText: typeof import('./src/constants/task')['EnumTaskUserSubmitCheckReceiveStatusText']
  const EnumUserBankCardAccess: typeof import('./src/constants/apiEnum')['EnumUserBankCardAccess']
@@ -151,6 +155,7 @@
  const GetPersonalApplyTaskInfosQueryStatus: typeof import('./src/constants/apiEnum')['GetPersonalApplyTaskInfosQueryStatus']
  const GetPersonalHireTaskInfosQueryStatus: typeof import('./src/constants/apiEnum')['GetPersonalHireTaskInfosQueryStatus']
  const GetSettlementTasksQueryPaymentStatus: typeof import('./src/constants/apiEnum')['GetSettlementTasksQueryPaymentStatus']
  const GetSettlementTasksQuerySupplierPaymentStatus: typeof import('./src/constants/apiEnum')['GetSettlementTasksQuerySupplierPaymentStatus']
  const GetTaskInfoQueryResultApplyButton: typeof import('./src/constants/apiEnum')['GetTaskInfoQueryResultApplyButton']
  const GetTaskInfoQueryResultHireButton: typeof import('./src/constants/apiEnum')['GetTaskInfoQueryResultHireButton']
  const IdentityCodeEnum: typeof import('./src/constants/dic')['IdentityCodeEnum']
@@ -295,7 +300,7 @@
  export type { Component, Slot, Slots, ComponentPublicInstance, ComputedRef, DirectiveBinding, ExtractDefaultPropTypes, ExtractPropTypes, ExtractPublicPropTypes, InjectionKey, PropType, Ref, MaybeRef, MaybeRefOrGetter, VNode, WritableComputedRef } from 'vue'
  import('vue')
  // @ts-ignore
  export type { EnumBillingMethod, EnumClientType, EnumCodeUrlScene, EnumConsoleLogAccess, EnumContractTemplateStatus, EnumContractTemplateValueRecorder, EnumContractTemplateValueType, EnumDataSource, EnumDbAuditOperate, EnumElectronSignAccess, EnumElectronSignVerifyType, EnumEnterpriseCooperationSignStatus, EnumEnterpriseCooperationStatus, EnumEnterpriseCostStatus, EnumEnterpriseCostType, EnumEnterpriseRealMethod, EnumEnterpriseType, EnumEnterpriseWalletAccess, EnumEnterpriseWalletExpandindirectOrderFileType, EnumEnterpriseWalletExpandindirectOrderScene, EnumEnterpriseWalletExpandindirectOrderStatus, EnumEnterpriseWalletSignStatus, EnumEnterpriseWalletTransactionType, EnumGetArrangeTaskUsersQueryApplyStatus, EnumGetCheckReceiveTaskCheckInUsersQueryStatus, EnumGetCheckReceiveTasksQueryResultItemCheckStatus, EnumGetEnterpriseEmployeesQuerySignContractStatus, EnumLogLevel, EnumMenuType, EnumMenuVisitLevel, EnumOcrAccess, EnumPagedListOrder, EnumPayAccess, EnumPersonalFreeTime, EnumPersonalJobSeekingStatus, EnumPersonalRealMethod, EnumPersonalUserRealStatus, EnumRealAccess, EnumResourceController, EnumResourceMethod, EnumRoleWebApiDataPower, EnumSettlementCycle, EnumSmsAccess, EnumSmsStatus, EnumTaskApplyStatus, EnumTaskCheckReceiveMethod, EnumTaskCheckReceiveStatus, EnumTaskPaymentMethod, EnumTaskRecommendStatus, EnumTaskReleaseStatus, EnumTaskSettlementAuditStatus, EnumTaskSettlementOrderStatus, EnumTaskSettlementStatus, EnumTaskStatus, EnumTaskUserApplyStatus, EnumTaskUserArrangeStatus, EnumTaskUserHireStatus, EnumTaskUserSignContractStatus, EnumTaskUserSubmitCheckHistoryType, EnumTaskUserSubmitCheckReceiveStatus, EnumUserBankCardAccess, EnumUserGender, EnumUserRealMethod, EnumUserStatus, EnumUserType, EnumUserWalletTransactionType, EnumWalletTransactionStatus, EnumWeChatPayApplymentBankAccountType, EnumWeChatPayApplymentCertType, EnumWeChatPayApplymentContactType, EnumWeChatPayApplymentFinanceType, EnumWeChatPayApplymentIdDocType, EnumWeChatPayApplymentIdHolderType, EnumWeChatPayApplymentSalesScenesType, EnumWeChatPayApplymentState, EnumWeChatPayApplymentSubjectType, EnumWeChatPaySettlementModifyVerifyResult, EnumWeChatPaySettlementVerifyResult, GetPersonalApplyTaskInfosQueryStatus, GetPersonalHireTaskInfosQueryStatus, GetSettlementTasksQueryPaymentStatus, GetTaskInfoQueryResultApplyButton, GetTaskInfoQueryResultHireButton, SettlementReceiveStatus, EnumBillingMethod, EnumClientType, EnumCodeUrlScene, EnumConsoleLogAccess, EnumContractTemplateStatus, EnumContractTemplateValueRecorder, EnumContractTemplateValueType, EnumDataSource, EnumDbAuditOperate, EnumElectronSignAccess, EnumElectronSignVerifyType, EnumEnterpriseCooperationSignStatus, EnumEnterpriseCooperationStatus, EnumEnterpriseCostStatus, EnumEnterpriseCostType, EnumEnterpriseRealMethod, EnumEnterpriseType, EnumEnterpriseWalletAccess, EnumEnterpriseWalletExpandindirectOrderFileType, EnumEnterpriseWalletExpandindirectOrderScene, EnumEnterpriseWalletExpandindirectOrderStatus, EnumEnterpriseWalletSignStatus, EnumEnterpriseWalletTransactionType, EnumGetArrangeTaskUsersQueryApplyStatus, EnumGetCheckReceiveTaskCheckInUsersQueryStatus, EnumGetCheckReceiveTasksQueryResultItemCheckStatus, EnumGetEnterpriseEmployeesQuerySignContractStatus, EnumLogLevel, EnumMenuType, EnumMenuVisitLevel, EnumOcrAccess, EnumPagedListOrder, EnumPayAccess, EnumPersonalFreeTime, EnumPersonalJobSeekingStatus, EnumPersonalRealMethod, EnumPersonalUserRealStatus, EnumRealAccess, EnumResourceController, EnumResourceMethod, EnumRoleWebApiDataPower, EnumSettlementCycle, EnumSmsAccess, EnumSmsStatus, EnumTaskApplyStatus, EnumTaskCheckReceiveMethod, EnumTaskCheckReceiveStatus, EnumTaskPaymentMethod, EnumTaskRecommendStatus, EnumTaskReleaseStatus, EnumTaskSettlementAuditStatus, EnumTaskSettlementOrderStatus, EnumTaskSettlementStatus, EnumTaskStatus, EnumTaskUserApplyStatus, EnumTaskUserArrangeStatus, EnumTaskUserHireStatus, EnumTaskUserSignContractStatus, EnumTaskUserSubmitCheckHistoryType, EnumTaskUserSubmitCheckReceiveStatus, EnumUserBankCardAccess, EnumUserGender, EnumUserRealMethod, EnumUserStatus, EnumUserType, EnumUserWalletTransactionType, EnumWalletTransactionStatus, EnumWeChatPayApplymentBankAccountType, EnumWeChatPayApplymentCertType, EnumWeChatPayApplymentContactType, EnumWeChatPayApplymentFinanceType, EnumWeChatPayApplymentIdDocType, EnumWeChatPayApplymentIdHolderType, EnumWeChatPayApplymentSalesScenesType, EnumWeChatPayApplymentState, EnumWeChatPayApplymentSubjectType, EnumWeChatPaySettlementModifyVerifyResult, EnumWeChatPaySettlementVerifyResult, GetPersonalApplyTaskInfosQueryStatus, GetPersonalHireTaskInfosQueryStatus, GetSettlementTasksQueryPaymentStatus, GetTaskInfoQueryResultApplyButton, GetTaskInfoQueryResultHireButton, SettlementReceiveStatus } from './src/constants/apiEnum'
  export type { EnumBillingMethod, EnumClientType, EnumCodeUrlScene, EnumConsoleLogAccess, EnumContractTemplateStatus, EnumContractTemplateValueRecorder, EnumContractTemplateValueType, EnumDataSource, EnumDbAuditOperate, EnumElectronSignAccess, EnumElectronSignVerifyType, EnumEnterpriseCooperationSignStatus, EnumEnterpriseCooperationStatus, EnumEnterpriseCooperationWalletTransactionStatus, EnumEnterpriseCostStatus, EnumEnterpriseCostType, EnumEnterpriseRealMethod, EnumEnterpriseType, EnumEnterpriseWalletAccess, EnumEnterpriseWalletExpandindirectOrderFileType, EnumEnterpriseWalletExpandindirectOrderScene, EnumEnterpriseWalletExpandindirectOrderStatus, EnumEnterpriseWalletSignStatus, EnumEnterpriseWalletTransactionType, EnumGetArrangeTaskUsersQueryApplyStatus, EnumGetCheckReceiveTaskCheckInUsersQueryStatus, EnumGetCheckReceiveTasksQueryResultItemCheckStatus, EnumGetEnterpriseEmployeesQuerySignContractStatus, EnumLogLevel, EnumMenuType, EnumMenuVisitLevel, EnumOcrAccess, EnumPagedListOrder, EnumPayAccess, EnumPersonalFreeTime, EnumPersonalJobSeekingStatus, EnumPersonalRealMethod, EnumPersonalUserRealStatus, EnumRealAccess, EnumResourceController, EnumResourceMethod, EnumRoleWebApiDataPower, EnumSettlementCycle, EnumSmsAccess, EnumSmsStatus, EnumTaskApplyStatus, EnumTaskCheckReceiveMethod, EnumTaskCheckReceiveStatus, EnumTaskPaymentMethod, EnumTaskRecommendStatus, EnumTaskReleaseStatus, EnumTaskSettlementAuditStatus, EnumTaskSettlementOrderStatus, EnumTaskSettlementStatus, EnumTaskStatus, EnumTaskUserApplyStatus, EnumTaskUserArrangeStatus, EnumTaskUserHireStatus, EnumTaskUserSignContractStatus, EnumTaskUserSubmitCheckHistoryType, EnumTaskUserSubmitCheckReceiveStatus, EnumUserBankCardAccess, EnumUserGender, EnumUserRealMethod, EnumUserStatus, EnumUserType, EnumUserWalletTransactionType, EnumWalletTransactionStatus, EnumWeChatPayApplymentBankAccountType, EnumWeChatPayApplymentCertType, EnumWeChatPayApplymentContactType, EnumWeChatPayApplymentFinanceType, EnumWeChatPayApplymentIdDocType, EnumWeChatPayApplymentIdHolderType, EnumWeChatPayApplymentSalesScenesType, EnumWeChatPayApplymentState, EnumWeChatPayApplymentSubjectType, EnumWeChatPaySettlementModifyVerifyResult, EnumWeChatPaySettlementVerifyResult, GetPersonalApplyTaskInfosQueryStatus, GetPersonalHireTaskInfosQueryStatus, GetSettlementTasksQueryPaymentStatus, GetSettlementTasksQuerySupplierPaymentStatus, GetTaskInfoQueryResultApplyButton, GetTaskInfoQueryResultHireButton, SettlementReceiveStatus, EnumBillingMethod, EnumClientType, EnumCodeUrlScene, EnumConsoleLogAccess, EnumContractTemplateStatus, EnumContractTemplateValueRecorder, EnumContractTemplateValueType, EnumDataSource, EnumDbAuditOperate, EnumElectronSignAccess, EnumElectronSignVerifyType, EnumEnterpriseCooperationSignStatus, EnumEnterpriseCooperationStatus, EnumEnterpriseCooperationWalletTransactionStatus, EnumEnterpriseCostStatus, EnumEnterpriseCostType, EnumEnterpriseRealMethod, EnumEnterpriseType, EnumEnterpriseWalletAccess, EnumEnterpriseWalletExpandindirectOrderFileType, EnumEnterpriseWalletExpandindirectOrderScene, EnumEnterpriseWalletExpandindirectOrderStatus, EnumEnterpriseWalletSignStatus, EnumEnterpriseWalletTransactionType, EnumGetArrangeTaskUsersQueryApplyStatus, EnumGetCheckReceiveTaskCheckInUsersQueryStatus, EnumGetCheckReceiveTasksQueryResultItemCheckStatus, EnumGetEnterpriseEmployeesQuerySignContractStatus, EnumLogLevel, EnumMenuType, EnumMenuVisitLevel, EnumOcrAccess, EnumPagedListOrder, EnumPayAccess, EnumPersonalFreeTime, EnumPersonalJobSeekingStatus, EnumPersonalRealMethod, EnumPersonalUserRealStatus, EnumRealAccess, EnumResourceController, EnumResourceMethod, EnumRoleWebApiDataPower, EnumSettlementCycle, EnumSmsAccess, EnumSmsStatus, EnumTaskApplyStatus, EnumTaskCheckReceiveMethod, EnumTaskCheckReceiveStatus, EnumTaskPaymentMethod, EnumTaskRecommendStatus, EnumTaskReleaseStatus, EnumTaskSettlementAuditStatus, EnumTaskSettlementOrderStatus, EnumTaskSettlementStatus, EnumTaskStatus, EnumTaskUserApplyStatus, EnumTaskUserArrangeStatus, EnumTaskUserHireStatus, EnumTaskUserSignContractStatus, EnumTaskUserSubmitCheckHistoryType, EnumTaskUserSubmitCheckReceiveStatus, EnumUserBankCardAccess, EnumUserGender, EnumUserRealMethod, EnumUserStatus, EnumUserType, EnumUserWalletTransactionType, EnumWalletTransactionStatus, EnumWeChatPayApplymentBankAccountType, EnumWeChatPayApplymentCertType, EnumWeChatPayApplymentContactType, EnumWeChatPayApplymentFinanceType, EnumWeChatPayApplymentIdDocType, EnumWeChatPayApplymentIdHolderType, EnumWeChatPayApplymentSalesScenesType, EnumWeChatPayApplymentState, EnumWeChatPayApplymentSubjectType, EnumWeChatPaySettlementModifyVerifyResult, EnumWeChatPaySettlementVerifyResult, GetPersonalApplyTaskInfosQueryStatus, GetPersonalHireTaskInfosQueryStatus, GetSettlementTasksQueryPaymentStatus, GetSettlementTasksQuerySupplierPaymentStatus, GetTaskInfoQueryResultApplyButton, GetTaskInfoQueryResultHireButton, SettlementReceiveStatus } from './src/constants/apiEnum'
  import('./src/constants/apiEnum')
  // @ts-ignore
  export type { CategoryCode, IdentityCodeEnum, EducationCodeEnum, CertificateTypeCodeEnum, WelfareCodeEnum } from './src/constants/dic'
@@ -361,6 +366,9 @@
    readonly EnumEnterpriseCooperationSignStatusText: UnwrapRef<typeof import('./src/constants/customer')['EnumEnterpriseCooperationSignStatusText']>
    readonly EnumEnterpriseCooperationStatus: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumEnterpriseCooperationStatus']>
    readonly EnumEnterpriseCooperationStatusText: UnwrapRef<typeof import('./src/constants/customer')['EnumEnterpriseCooperationStatusText']>
    readonly EnumEnterpriseCooperationWalletTransactionStatus: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumEnterpriseCooperationWalletTransactionStatus']>
    readonly EnumEnterpriseCooperationWalletTransactionStatusText: UnwrapRef<typeof import('./src/constants/finance')['EnumEnterpriseCooperationWalletTransactionStatusText']>
    readonly EnumEnterpriseCooperationWalletTransactionStatusTextForConfirm: UnwrapRef<typeof import('./src/constants/finance')['EnumEnterpriseCooperationWalletTransactionStatusTextForConfirm']>
    readonly EnumEnterpriseCostStatus: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumEnterpriseCostStatus']>
    readonly EnumEnterpriseCostType: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumEnterpriseCostType']>
    readonly EnumEnterpriseRealMethod: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumEnterpriseRealMethod']>
@@ -434,6 +442,7 @@
    readonly EnumTaskUserSignContractStatusText: UnwrapRef<typeof import('./src/constants/enterpriseEmployee')['EnumTaskUserSignContractStatusText']>
    readonly EnumTaskUserSignContractStatusTextForFilter: UnwrapRef<typeof import('./src/constants/enterpriseEmployee')['EnumTaskUserSignContractStatusTextForFilter']>
    readonly EnumTaskUserSubmitCheckHistoryType: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumTaskUserSubmitCheckHistoryType']>
    readonly EnumTaskUserSubmitCheckHistoryTypeText: UnwrapRef<typeof import('./src/constants/task')['EnumTaskUserSubmitCheckHistoryTypeText']>
    readonly EnumTaskUserSubmitCheckReceiveStatus: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumTaskUserSubmitCheckReceiveStatus']>
    readonly EnumTaskUserSubmitCheckReceiveStatusText: UnwrapRef<typeof import('./src/constants/task')['EnumTaskUserSubmitCheckReceiveStatusText']>
    readonly EnumUserBankCardAccess: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumUserBankCardAccess']>
@@ -468,6 +477,7 @@
    readonly GetPersonalApplyTaskInfosQueryStatus: UnwrapRef<typeof import('./src/constants/apiEnum')['GetPersonalApplyTaskInfosQueryStatus']>
    readonly GetPersonalHireTaskInfosQueryStatus: UnwrapRef<typeof import('./src/constants/apiEnum')['GetPersonalHireTaskInfosQueryStatus']>
    readonly GetSettlementTasksQueryPaymentStatus: UnwrapRef<typeof import('./src/constants/apiEnum')['GetSettlementTasksQueryPaymentStatus']>
    readonly GetSettlementTasksQuerySupplierPaymentStatus: UnwrapRef<typeof import('./src/constants/apiEnum')['GetSettlementTasksQuerySupplierPaymentStatus']>
    readonly GetTaskInfoQueryResultApplyButton: UnwrapRef<typeof import('./src/constants/apiEnum')['GetTaskInfoQueryResultApplyButton']>
    readonly GetTaskInfoQueryResultHireButton: UnwrapRef<typeof import('./src/constants/apiEnum')['GetTaskInfoQueryResultHireButton']>
    readonly IdentityCodeEnum: UnwrapRef<typeof import('./src/constants/dic')['IdentityCodeEnum']>
pnpm-lock.yaml
@@ -15,7 +15,7 @@
dependencies:
  '@bole-12333/chat-kit':
    specifier: latest
    version: 1.0.1(@tencentcloud/chat-uikit-engine@2.5.6)(lodash@4.17.21)(vue@3.5.11)
    version: 1.0.1(@tencentcloud/chat-uikit-engine@2.5.7)(lodash@4.17.21)(vue@3.5.11)
  '@bole-12333/customer-chat':
    specifier: latest
    version: 1.0.3(@bole-12333/chat-kit@1.0.1)(@tiptap/core@2.1.13)(@tiptap/extension-document@2.1.13)(@tiptap/extension-image@2.1.13)(@tiptap/extension-mention@2.1.13)(@tiptap/extension-paragraph@2.1.13)(@tiptap/extension-placeholder@2.1.13)(@tiptap/extension-text@2.1.13)(@tiptap/pm@2.1.13)(@tiptap/suggestion@2.1.13)(dayjs@1.11.6)(vue@3.5.11)
@@ -367,7 +367,7 @@
    specifier: ^2.0.1
    version: 2.0.1(vite@6.0.6)
  vite-plugin-vue-enhance:
    specifier: ^2.0.3
    specifier: latest
    version: 2.0.3(postcss-preset-env@10.0.0)(semver@7.6.3)(vite@6.0.6)
  vite-svg-loader:
    specifier: ^3.6.0
@@ -1850,14 +1850,14 @@
      '@babel/helper-validator-identifier': 7.25.9
    dev: false
  /@bole-12333/chat-kit@1.0.1(@tencentcloud/chat-uikit-engine@2.5.6)(lodash@4.17.21)(vue@3.5.11):
  /@bole-12333/chat-kit@1.0.1(@tencentcloud/chat-uikit-engine@2.5.7)(lodash@4.17.21)(vue@3.5.11):
    resolution: {integrity: sha512-yeSh4XLagaM+uNZRdcG49mhDJO3UbYEpIYZS4Lk303ROnTwxuZyuh5jkoflnCFwWN3Ib3AolfQy999oOqF012A==}
    peerDependencies:
      '@tencentcloud/chat-uikit-engine': '*'
      lodash: '*'
      vue: 3.5.11
    dependencies:
      '@tencentcloud/chat-uikit-engine': 2.5.6
      '@tencentcloud/chat-uikit-engine': 2.5.7
      lodash: 4.17.21
      vue: 3.5.11(typescript@4.8.4)
    dev: false
@@ -1878,7 +1878,7 @@
      dayjs: '*'
      vue: 3.5.11
    dependencies:
      '@bole-12333/chat-kit': 1.0.1(@tencentcloud/chat-uikit-engine@2.5.6)(lodash@4.17.21)(vue@3.5.11)
      '@bole-12333/chat-kit': 1.0.1(@tencentcloud/chat-uikit-engine@2.5.7)(lodash@4.17.21)(vue@3.5.11)
      '@tiptap/core': 2.1.13(@tiptap/pm@2.1.13)
      '@tiptap/extension-document': 2.1.13(@tiptap/core@2.1.13)
      '@tiptap/extension-image': 2.1.13(@tiptap/core@2.1.13)
@@ -3738,14 +3738,6 @@
      '@tencentcloud/call-engine-js': 3.3.0
      '@tencentcloud/chat': 3.5.9
      '@tencentcloud/tui-core': 2.5.1
    dev: false
  /@tencentcloud/chat-uikit-engine@2.5.6:
    resolution: {integrity: sha512-hzGkruR3j5S/9hx7HfGBWvHAZ7FZqpkl5LEz0z9sVm3faG/IaBkeTCjPmvN9kGIdDIan8Jn6mhVW57EEx7E8UQ==}
    dependencies:
      '@tencentcloud/chat': 3.5.9
      tim-profanity-filter-plugin: 1.1.0
      tim-upload-plugin: 1.4.3
    dev: false
  /@tencentcloud/chat-uikit-engine@2.5.7:
src/components/Table/PortraitTableWithAttachment.vue
@@ -1,4 +1,5 @@
<template>
  <slot name="title"></slot>
  <PortraitTable v-bind="portraitTableProps" :label-width="labelWidth"> </PortraitTable>
  <div class="enclosure-list-title">附件列表</div>
  <ProTableV2
src/constants/apiEnum.ts
@@ -117,6 +117,16 @@
  Completed = 20,
}
/** 合作企业钱包交易状态 */
export enum EnumEnterpriseCooperationWalletTransactionStatus {
  /**待确认 */
  WaitSure = 10,
  /**已到账 */
  Success = 20,
  /**未到账 */
  Fail = 30,
}
/** 企业用量扣费状态 */
export enum EnumEnterpriseCostStatus {
  /**扣费成功 */
@@ -391,42 +401,46 @@
  CommonServerCodeUrls = 4,
  /**文件 */
  CommonServerFileUtils = 5,
  /**事件 */
  CommonServerEventUtils = 6,
  /**文字识别 */
  CommonServerOcrUtils = 6,
  CommonServerOcrUtils = 7,
  /**日志记录 */
  CommonServerLogRecords = 7,
  CommonServerLogRecords = 8,
  /**同步数据库 */
  CommonServerSyncDatabase = 8,
  CommonServerSyncDatabase = 9,
  /**短信工具 */
  CommonServerSmsUtils = 9,
  CommonServerSmsUtils = 10,
  /**配置 */
  CommonServerSettings = 10,
  CommonServerSettings = 11,
  /**用户认证 */
  UserServerAuth = 11,
  UserServerAuth = 12,
  /**用户菜单 */
  UserServerMenu = 12,
  UserServerMenu = 13,
  /**用户资源 */
  UserServerResource = 13,
  UserServerResource = 14,
  /**用户角色 */
  UserServerRole = 14,
  UserServerRole = 15,
  /**用户信息 */
  UserServerUser = 15,
  UserServerUser = 16,
  /**用户钱包 */
  UserServerUserWallet = 16,
  UserServerUserWallet = 17,
  /**电子签 */
  UserServerElectronSign = 17,
  UserServerElectronSign = 18,
  /**用户简历 */
  UserServerUserResume = 18,
  UserServerUserResume = 19,
  /**企业信息 */
  UserServerEnterprise = 19,
  UserServerEnterprise = 20,
  /**企业钱包 */
  UserServerEnterpriseWallet = 20,
  UserServerEnterpriseWallet = 21,
  /**企业合作钱包 */
  UserServerEnterpriseCooperationWallet = 22,
  /**灵工信息 */
  UserServerEnterpriseEmployee = 21,
  UserServerEnterpriseEmployee = 23,
  /**电子签 */
  ElectronSignServerElectronSign = 22,
  ElectronSignServerElectronSign = 24,
  /**电子签 */
  ToolServerSms = 23,
  ToolServerSms = 25,
}
/** 资源请求方式 */
@@ -637,9 +651,9 @@
  WaitSubmit = 10,
  /**待验收 */
  WaitCheckReceive = 20,
  /**验收通过/已签到 */
  /**验收通过 */
  Success = 30,
  /**验收未通过/未到岗 */
  /**验收未通过 */
  Fail = 40,
}
@@ -885,7 +899,7 @@
  Completed = 20,
}
/** 发薪状态 */
/** 发薪状态(甲方) */
export enum GetSettlementTasksQueryPaymentStatus {
  /**待审核 */
  WaitAudit = 10,
@@ -895,6 +909,16 @@
  CompletedRelease = 30,
}
/** 发薪状态(供应商) */
export enum GetSettlementTasksQuerySupplierPaymentStatus {
  /**待结算 */
  WaitSettlement = 10,
  /**已结算 */
  CompletedSettlement = 20,
  /**已发放 */
  CompletedRelease = 30,
}
/** 我的报名列表-详情-按钮类型 */
export enum GetTaskInfoQueryResultApplyButton {
  /**待确认 */
src/constants/finance.ts
@@ -11,3 +11,14 @@
  [EnumWalletTransactionStatus.Refund]: '退票',
  [EnumWalletTransactionStatus.Fail]: '失败',
};
export const EnumEnterpriseCooperationWalletTransactionStatusText = {
  [EnumEnterpriseCooperationWalletTransactionStatus.WaitSure]: '待确认',
  [EnumEnterpriseCooperationWalletTransactionStatus.Success]: '已到账',
  [EnumEnterpriseCooperationWalletTransactionStatus.Fail]: '未到账',
};
export const EnumEnterpriseCooperationWalletTransactionStatusTextForConfirm = {
  [EnumEnterpriseCooperationWalletTransactionStatus.Success]: '已到账',
  [EnumEnterpriseCooperationWalletTransactionStatus.Fail]: '未到账',
};
src/constants/task.ts
@@ -92,6 +92,7 @@
  [EnumBillingMethod.Day]: '元/日',
  [EnumBillingMethod.Hour]: '元/小时',
  [EnumBillingMethod.Piece]: '元/件',
  [EnumBillingMethod.Face]: '面议',
};
export const EnumUserGenderText = {
@@ -181,3 +182,9 @@
  [EnumTaskSettlementAuditStatus.Pass]: '审核通过',
  [EnumTaskSettlementAuditStatus.Fail]: '驳回',
};
export const EnumTaskUserSubmitCheckHistoryTypeText = {
  [EnumTaskUserSubmitCheckHistoryType.CheckIn]: '签到',
  [EnumTaskUserSubmitCheckHistoryType.CheckOut]: '签出',
  [EnumTaskUserSubmitCheckHistoryType.UnCheckIn]: '未到岗',
};
src/router/index.ts
@@ -442,6 +442,45 @@
          icon: 'home',
        },
      },
      {
        path: '/CustomerRechargeRecord/:id',
        name: 'CustomerRechargeRecord',
        hidden: true,
        alwaysShow: false,
        component: () => import('@/views/FinanceManage/CustomerRechargeRecord.vue'),
        meta: {
          rank: 10074,
          title: '充值记录',
          // rootMenu: true,
          icon: 'home',
        },
      },
      {
        path: '/AccountManage',
        name: 'AccountManage',
        hidden: false,
        alwaysShow: true,
        component: () => import('@/views/FinanceManage/AccountManage.vue'),
        meta: {
          rank: 10075,
          title: '账户管理',
          // rootMenu: true,
          icon: 'home',
        },
      },
      {
        path: '/CustomerRechargeManage',
        name: 'CustomerRechargeManage',
        hidden: false,
        alwaysShow: true,
        component: () => import('@/views/FinanceManage/CustomerRechargeManage.vue'),
        meta: {
          rank: 10074,
          title: '客户充值管理',
          // rootMenu: true,
          icon: 'home',
        },
      },
    ],
  },
src/services/api/electronSign.ts
@@ -62,6 +62,24 @@
  });
}
/** 查询合同参数选择器数据 GET /api/user/electronSign/getContractParamterSelect */
export async function getContractParamterSelect(
  // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
  params: API.APIgetContractParamterSelectParams,
  options?: API.RequestConfig
) {
  return request<API.SelectOptionStringGetDictionaryDataSelectQueryResultOption[]>(
    '/api/user/electronSign/getContractParamterSelect',
    {
      method: 'GET',
      params: {
        ...params,
      },
      ...(options || {}),
    }
  );
}
/** 查询合同模板详情 GET /api/user/electronSign/getContractTemplate */
export async function getContractTemplate(
  // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
@@ -293,6 +311,21 @@
  });
}
/** 同步模板参数至818 POST /api/user/electronSign/syncContractTemplateParamterTo818 */
export async function syncContractTemplateParamterTo818(
  body: API.SyncContractTemplateParamterTo818Command,
  options?: API.RequestConfig
) {
  return request<number>('/api/user/electronSign/syncContractTemplateParamterTo818', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json-patch+json',
    },
    data: body,
    ...(options || {}),
  });
}
/** 同步电子签配置 POST /api/user/electronSign/syncElectronSignSettings */
export async function syncElectronSignSettings(
  body: API.SyncElectronSignSettingsCommand,
src/services/api/enterpriseCooperationWallet.ts
New file
@@ -0,0 +1,122 @@
/* eslint-disable */
// @ts-ignore
import { request } from '@/utils/request';
/** 查询企业合作钱包充值明细 GET /api/user/enterpriseCooperationWallet/getCooperationWalletRechargeTransaction */
export async function getCooperationWalletRechargeTransaction(
  // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
  params: API.APIgetCooperationWalletRechargeTransactionParams,
  options?: API.RequestConfig
) {
  return request<API.GetCooperationWalletRechargeTransactionQueryResult>(
    '/api/user/enterpriseCooperationWallet/getCooperationWalletRechargeTransaction',
    {
      method: 'GET',
      params: {
        ...params,
      },
      ...(options || {}),
    }
  );
}
/** 查询企业合作钱包充值交易分页列表数据 POST /api/user/enterpriseCooperationWallet/getCooperationWalletRechargeTransactions */
export async function getCooperationWalletRechargeTransactions(
  body: API.GetCooperationWalletRechargeTransactionsQuery,
  options?: API.RequestConfig
) {
  return request<API.GetCooperationWalletRechargeTransactionsQueryResult>(
    '/api/user/enterpriseCooperationWallet/getCooperationWalletRechargeTransactions',
    {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json-patch+json',
      },
      data: body,
      ...(options || {}),
    }
  );
}
/** 查询企业合作钱包分页列表数据 POST /api/user/enterpriseCooperationWallet/getCooperationWallets */
export async function getCooperationWallets(
  body: API.GetCooperationWalletsQuery,
  options?: API.RequestConfig
) {
  return request<API.GetCooperationWalletsQueryResult>(
    '/api/user/enterpriseCooperationWallet/getCooperationWallets',
    {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json-patch+json',
      },
      data: body,
      ...(options || {}),
    }
  );
}
/** 查询企业收款账户 GET /api/user/enterpriseCooperationWallet/getEnterpriseReceiveAccount */
export async function getEnterpriseReceiveAccount(
  // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
  params: API.APIgetEnterpriseReceiveAccountParams,
  options?: API.RequestConfig
) {
  return request<API.GetEnterpriseReceiveAccountQueryResult>(
    '/api/user/enterpriseCooperationWallet/getEnterpriseReceiveAccount',
    {
      method: 'GET',
      params: {
        ...params,
        request: undefined,
        ...params['request'],
      },
      ...(options || {}),
    }
  );
}
/** 充值企业合作钱包 POST /api/user/enterpriseCooperationWallet/rechargeCooperationWallet */
export async function rechargeCooperationWallet(
  body: API.RechargeCooperationWalletCommand,
  options?: API.RequestConfig
) {
  return request<string>('/api/user/enterpriseCooperationWallet/rechargeCooperationWallet', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json-patch+json',
    },
    data: body,
    ...(options || {}),
  });
}
/** 保存企业收款账户 POST /api/user/enterpriseCooperationWallet/saveEnterpriseReceiveAccount */
export async function saveEnterpriseReceiveAccount(
  body: API.SaveEnterpriseReceiveAccountCommand,
  options?: API.RequestConfig
) {
  return request<string>('/api/user/enterpriseCooperationWallet/saveEnterpriseReceiveAccount', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json-patch+json',
    },
    data: body,
    ...(options || {}),
  });
}
/** 确认充值企业合作钱包 POST /api/user/enterpriseCooperationWallet/sureRechargeCooperationWallet */
export async function sureRechargeCooperationWallet(
  body: API.SureRechargeCooperationWalletCommand,
  options?: API.RequestConfig
) {
  return request<string>('/api/user/enterpriseCooperationWallet/sureRechargeCooperationWallet', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json-patch+json',
    },
    data: body,
    ...(options || {}),
  });
}
src/services/api/eventUtils.ts
New file
@@ -0,0 +1,15 @@
/* eslint-disable */
// @ts-ignore
import { request } from '@/utils/request';
/** 测试事件 POST /api/common/eventUtils/testEvent */
export async function testEvent(body: API.TestEventCommand, options?: API.RequestConfig) {
  return request<boolean>('/api/common/eventUtils/testEvent', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json-patch+json',
    },
    data: body,
    ...(options || {}),
  });
}
src/services/api/index.ts
@@ -24,6 +24,8 @@
import * as userWallet from './userWallet';
import * as fileUtils from './fileUtils';
import * as settings from './settings';
import * as eventUtils from './eventUtils';
import * as enterpriseCooperationWallet from './enterpriseCooperationWallet';
export default {
  enterprise,
  enterpriseEmployee,
@@ -47,4 +49,6 @@
  userWallet,
  fileUtils,
  settings,
  eventUtils,
  enterpriseCooperationWallet,
};
src/services/api/task.ts
@@ -32,6 +32,24 @@
  });
}
/** 计算任务总服务费 POST /api/flexjob/task/calcTaskTotalServiceFee */
export async function calcTaskTotalServiceFee(
  body: API.CalcTaskTotalServiceFeeCommand,
  options?: API.RequestConfig
) {
  return request<API.CalcTaskTotalServiceFeeCommandResult>(
    '/api/flexjob/task/calcTaskTotalServiceFee',
    {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json-patch+json',
      },
      data: body,
      ...(options || {}),
    }
  );
}
/** 删除任务 DELETE /api/flexjob/task/deleteTaskInfo */
export async function deleteTaskInfo(body: API.DeleteTaskInfoCommand, options?: API.RequestConfig) {
  return request<number>('/api/flexjob/task/deleteTaskInfo', {
@@ -281,6 +299,21 @@
  );
}
/** 修复任务预计总服务费v1.3.0.1 POST /api/flexjob/task/repairTaskEstimatedServiceFee_1_3_0_1 */
export async function repairTaskEstimatedServiceFee1301(
  body: API.RepairTaskEstimatedServiceFee1301Command,
  options?: API.RequestConfig
) {
  return request<boolean>('/api/flexjob/task/repairTaskEstimatedServiceFee_1_3_0_1', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json-patch+json',
    },
    data: body,
    ...(options || {}),
  });
}
/** 撤回结算 POST /api/flexjob/task/revokeTaskSettlementOrder */
export async function revokeTaskSettlementOrder(
  body: API.RevokeTaskSettlementOrderCommand,
src/services/api/typings.d.ts
@@ -41,9 +41,25 @@
    code?: string;
  }
  interface APIgetContractParamterSelectParams {
    /** 关键字 */
    keywords?: string;
    /** 是否默认 */
    isDefault?: boolean;
    /** 合同模板Id */
    templateId?: string;
  }
  interface APIgetContractTemplateParams {
    /** 模板Id */
    id?: string;
  }
  interface APIgetCooperationWalletRechargeTransactionParams {
    /** 交易Id(编辑时传入) */
    id?: string;
    /** 合作Id(新增时传入) */
    cooperationId?: string;
  }
  interface APIgetCurrentLogierMenuParams {
@@ -110,6 +126,11 @@
  interface APIgetEnterpriseParams {
    /** Id */
    id?: string;
  }
  interface APIgetEnterpriseReceiveAccountParams {
    /** 查询企业收款账户 */
    request?: GetEnterpriseReceiveAccountQuery;
  }
  interface APIgetEnterpriseSmsSettingParams {
@@ -498,6 +519,27 @@
    timeoutFee?: number;
  }
  interface CalcTaskTotalServiceFeeCommand {
    billingMethod?: EnumBillingMethod;
    /** 服务费 */
    serviceFee?: number;
    /** 核定工时 */
    verifyWorkHours?: number;
    /** 总件数 */
    totalPieceQuantity?: number;
    /** 需求人数 */
    needPeopleNumber?: number;
    /** 任务开始时间 */
    beginTime?: string;
    /** 任务结束时间 */
    endTime?: string;
  }
  interface CalcTaskTotalServiceFeeCommandResult {
    /** 服务费 */
    totalServiceFee?: number;
  }
  interface ChangePhoneNumberCommand {
    /** 手机号码 */
    phoneNumber: string;
@@ -536,10 +578,6 @@
    taskInfoUserId?: string;
    /** 日期 */
    date?: string;
    /** 签到时间 */
    checkInTime?: string;
    /** 签出时间 */
    checkOutTime?: string;
    /** 服务费(元) */
    serviceFee?: number;
    /** 超时(小时) */
@@ -552,6 +590,7 @@
    remark?: string;
    /** 结算金额 */
    settlementAmount?: number;
    checkHistoryType?: EnumTaskUserSubmitCheckHistoryType;
    checkReceiveStatus?: EnumTaskUserSubmitCheckReceiveStatus;
  }
@@ -820,6 +859,15 @@
    Completed = 20,
  }
  enum EnumEnterpriseCooperationWalletTransactionStatus {
    /**待确认 */
    WaitSure = 10,
    /**已到账 */
    Success = 20,
    /**未到账 */
    Fail = 30,
  }
  enum EnumEnterpriseCostStatus {
    /**扣费成功 */
    Success = 10,
@@ -1068,42 +1116,46 @@
    CommonServerCodeUrls = 4,
    /**文件 */
    CommonServerFileUtils = 5,
    /**事件 */
    CommonServerEventUtils = 6,
    /**文字识别 */
    CommonServerOcrUtils = 6,
    CommonServerOcrUtils = 7,
    /**日志记录 */
    CommonServerLogRecords = 7,
    CommonServerLogRecords = 8,
    /**同步数据库 */
    CommonServerSyncDatabase = 8,
    CommonServerSyncDatabase = 9,
    /**短信工具 */
    CommonServerSmsUtils = 9,
    CommonServerSmsUtils = 10,
    /**配置 */
    CommonServerSettings = 10,
    CommonServerSettings = 11,
    /**用户认证 */
    UserServerAuth = 11,
    UserServerAuth = 12,
    /**用户菜单 */
    UserServerMenu = 12,
    UserServerMenu = 13,
    /**用户资源 */
    UserServerResource = 13,
    UserServerResource = 14,
    /**用户角色 */
    UserServerRole = 14,
    UserServerRole = 15,
    /**用户信息 */
    UserServerUser = 15,
    UserServerUser = 16,
    /**用户钱包 */
    UserServerUserWallet = 16,
    UserServerUserWallet = 17,
    /**电子签 */
    UserServerElectronSign = 17,
    UserServerElectronSign = 18,
    /**用户简历 */
    UserServerUserResume = 18,
    UserServerUserResume = 19,
    /**企业信息 */
    UserServerEnterprise = 19,
    UserServerEnterprise = 20,
    /**企业钱包 */
    UserServerEnterpriseWallet = 20,
    UserServerEnterpriseWallet = 21,
    /**企业合作钱包 */
    UserServerEnterpriseCooperationWallet = 22,
    /**灵工信息 */
    UserServerEnterpriseEmployee = 21,
    UserServerEnterpriseEmployee = 23,
    /**电子签 */
    ElectronSignServerElectronSign = 22,
    ElectronSignServerElectronSign = 24,
    /**电子签 */
    ToolServerSms = 23,
    ToolServerSms = 25,
  }
  enum EnumResourceMethod {
@@ -1293,9 +1345,9 @@
    WaitSubmit = 10,
    /**待验收 */
    WaitCheckReceive = 20,
    /**验收通过/已签到 */
    /**验收通过 */
    Success = 30,
    /**验收未通过/未到岗 */
    /**验收未通过 */
    Fail = 40,
  }
@@ -1512,6 +1564,20 @@
    createdTimeEnd?: string;
  }
  interface ExportPersonalUserTransactionEreceiptsCommand {
    /** 关键字 */
    keywords?: string;
    transactionStatus?: EnumWalletTransactionStatus;
    /** 创建时间-起始 */
    createdTimeStart?: string;
    /** 创建时间-截止 */
    createdTimeEnd?: string;
    /** 用户Id */
    userId?: string;
    /** 企业钱包Id */
    enterpriseWalletId?: string;
  }
  interface ExportTaskCheckReceiveTaskUsersCommand {
    /** 任务Id */
    id?: string;
@@ -1610,6 +1676,24 @@
    timestamp?: number;
  }
  interface FriendlyResultCalcTaskTotalServiceFeeCommandResult {
    /** 跟踪Id */
    traceId?: string;
    /** 状态码 */
    code?: number;
    /** 错误码 */
    errorCode?: string;
    data?: CalcTaskTotalServiceFeeCommandResult;
    /** 执行成功 */
    success?: boolean;
    /** 错误信息 */
    msg?: any;
    /** 附加数据 */
    extras?: any;
    /** 时间戳 */
    timestamp?: number;
  }
  interface FriendlyResultEnterpriseUserElectronSignCommandResult {
    /** 跟踪Id */
    traceId?: string;
@@ -1618,6 +1702,25 @@
    /** 错误码 */
    errorCode?: string;
    data?: EnterpriseUserElectronSignCommandResult;
    /** 执行成功 */
    success?: boolean;
    /** 错误信息 */
    msg?: any;
    /** 附加数据 */
    extras?: any;
    /** 时间戳 */
    timestamp?: number;
  }
  interface FriendlyResultFileContentResult {
    /** 跟踪Id */
    traceId?: string;
    /** 状态码 */
    code?: number;
    /** 错误码 */
    errorCode?: string;
    /** 数据 */
    data?: string;
    /** 执行成功 */
    success?: boolean;
    /** 错误信息 */
@@ -1862,6 +1965,60 @@
    timestamp?: number;
  }
  interface FriendlyResultGetCooperationWalletRechargeTransactionQueryResult {
    /** 跟踪Id */
    traceId?: string;
    /** 状态码 */
    code?: number;
    /** 错误码 */
    errorCode?: string;
    data?: GetCooperationWalletRechargeTransactionQueryResult;
    /** 执行成功 */
    success?: boolean;
    /** 错误信息 */
    msg?: any;
    /** 附加数据 */
    extras?: any;
    /** 时间戳 */
    timestamp?: number;
  }
  interface FriendlyResultGetCooperationWalletRechargeTransactionsQueryResult {
    /** 跟踪Id */
    traceId?: string;
    /** 状态码 */
    code?: number;
    /** 错误码 */
    errorCode?: string;
    data?: GetCooperationWalletRechargeTransactionsQueryResult;
    /** 执行成功 */
    success?: boolean;
    /** 错误信息 */
    msg?: any;
    /** 附加数据 */
    extras?: any;
    /** 时间戳 */
    timestamp?: number;
  }
  interface FriendlyResultGetCooperationWalletsQueryResult {
    /** 跟踪Id */
    traceId?: string;
    /** 状态码 */
    code?: number;
    /** 错误码 */
    errorCode?: string;
    data?: GetCooperationWalletsQueryResult;
    /** 执行成功 */
    success?: boolean;
    /** 错误信息 */
    msg?: any;
    /** 附加数据 */
    extras?: any;
    /** 时间戳 */
    timestamp?: number;
  }
  interface FriendlyResultGetDbAuditLogsQueryResult {
    /** 跟踪Id */
    traceId?: string;
@@ -1996,6 +2153,24 @@
    /** 错误码 */
    errorCode?: string;
    data?: GetEnterpriseQueryResult;
    /** 执行成功 */
    success?: boolean;
    /** 错误信息 */
    msg?: any;
    /** 附加数据 */
    extras?: any;
    /** 时间戳 */
    timestamp?: number;
  }
  interface FriendlyResultGetEnterpriseReceiveAccountQueryResult {
    /** 跟踪Id */
    traceId?: string;
    /** 状态码 */
    code?: number;
    /** 错误码 */
    errorCode?: string;
    data?: GetEnterpriseReceiveAccountQueryResult;
    /** 执行成功 */
    success?: boolean;
    /** 错误信息 */
@@ -3814,16 +3989,28 @@
    /** 是否实名 */
    isReal?: boolean;
    realMethod?: EnumUserRealMethod;
    /** 签到时间 */
    /** 用户签到时间 */
    userCheckInTime?: string;
    /** 用户签出时间 */
    userCheckOutTime?: string;
    userCheckHistoryType?: EnumTaskUserSubmitCheckHistoryType;
    /** 用户操作人 */
    userOperator?: string;
    /** 人工签到时间 */
    checkInTime?: string;
    /** 签出时间 */
    /** 人工签出时间 */
    checkOutTime?: string;
    checkHistoryType?: EnumTaskUserSubmitCheckHistoryType;
    /** 操作人 */
    checkOperator?: string;
    /** 操作人 */
    operator?: string;
    /** 最近提交时间 */
    lastSubmitTime?: string;
    checkReceiveStatus?: EnumTaskCheckReceiveStatus;
    submitCheckReceiveStatus?: EnumTaskUserSubmitCheckReceiveStatus;
    /** 验收方式 */
    checkReceiveMethods?: EnumTaskCheckReceiveMethod[];
  }
  interface GetCheckReceiveTaskQueryResultObjectData {
@@ -3842,6 +4029,8 @@
    verifyWorkHours?: number;
    /** 超时服务费 */
    timeoutServiceFee?: number;
    /** 总件数 */
    totalPieceQuantity?: number;
    settlementCycle?: EnumSettlementCycle;
    /** 任务开始时间 */
    beginTime?: string;
@@ -3851,7 +4040,8 @@
    applyBeginTime?: string;
    /** 报名结束时间 */
    applyEndTime?: string;
    checkReceiveMethod?: EnumTaskCheckReceiveMethod;
    /** 验收方式 */
    checkReceiveMethods?: EnumTaskCheckReceiveMethod[];
    paymentMethod?: EnumTaskPaymentMethod;
    settlementAccess?: EnumEnterpriseWalletAccess;
    /** 任务描述 */
@@ -3897,6 +4087,8 @@
    verifyWorkHours?: number;
    /** 超时服务费 */
    timeoutServiceFee?: number;
    /** 总件数 */
    totalPieceQuantity?: number;
    settlementCycle?: EnumSettlementCycle;
    /** 发布时间 */
    createdTime?: string;
@@ -3908,7 +4100,8 @@
    applyBeginTime?: string;
    /** 报名结束时间 */
    applyEndTime?: string;
    checkReceiveMethod?: EnumTaskCheckReceiveMethod;
    /** 验收方式 */
    checkReceiveMethods?: EnumTaskCheckReceiveMethod[];
    paymentMethod?: EnumTaskPaymentMethod;
    settlementAccess?: EnumEnterpriseWalletAccess;
    /** 任务描述 */
@@ -3959,20 +4152,55 @@
    checkTime?: string;
    /** 操作人 */
    operator?: string;
    operatorType?: EnumUserType;
    type?: EnumTaskUserSubmitCheckHistoryType;
  }
  interface GetCheckReceiveTaskUserSubmitQueryResult {
    /** 提交Id */
    id?: string;
    /** 任务人员Id */
    taskInfoUserId?: string;
    enterpriseEmployeeUser?: GetCheckReceiveTaskUserSubmitsQueryResultObjectDataEnterpriseEmployeeUser;
    /** 验收时间 */
    date?: string;
    /** 提交时间 */
    createdTime?: string;
    checkReceiveStatus?: EnumTaskUserSubmitCheckReceiveStatus;
    /** 用户签到时间 */
    userCheckInTime?: string;
    /** 用户签出时间 */
    userCheckOutTime?: string;
    userCheckHistoryType?: EnumTaskUserSubmitCheckHistoryType;
    /** 用户操作人 */
    userOperator?: string;
    /** 人工签到时间 */
    checkInTime?: string;
    /** 人工签出时间 */
    checkOutTime?: string;
    checkHistoryType?: EnumTaskUserSubmitCheckHistoryType;
    /** 操作人 */
    checkOperator?: string;
    /** 操作人 */
    operator?: string;
    /** 验收照片 */
    files?: string[];
    /** 验收方式 */
    checkReceiveMethods?: EnumTaskCheckReceiveMethod[];
    /** 任务超时服务费单价 */
    timeoutServiceFee?: number;
    /** 服务费(元) */
    serviceFee?: number;
    /** 超时(小时) */
    timeoutHours?: number;
    /** 超时费用(元) */
    timeoutFee?: number;
    /** 其他费用(元) */
    otherFee?: number;
    /** 备注 */
    remark?: string;
    /** 结算金额 */
    settlementAmount?: number;
  }
  interface GetCheckReceiveTaskUserSubmitsQuery {
@@ -3995,10 +4223,20 @@
    id?: string;
    /** 验收时间 */
    date?: string;
    /** 签到时间 */
    /** 用户签到时间 */
    userCheckInTime?: string;
    /** 用户签出时间 */
    userCheckOutTime?: string;
    userCheckHistoryType?: EnumTaskUserSubmitCheckHistoryType;
    /** 用户操作人 */
    userOperator?: string;
    /** 人工签到时间 */
    checkInTime?: string;
    /** 签出时间 */
    /** 人工签出时间 */
    checkOutTime?: string;
    checkHistoryType?: EnumTaskUserSubmitCheckHistoryType;
    /** 操作人 */
    checkOperator?: string;
    /** 操作人 */
    operator?: string;
    /** 提交时间 */
@@ -4008,6 +4246,8 @@
    checkReceiveStatus?: EnumTaskUserSubmitCheckReceiveStatus;
    /** 验收时间 */
    checkReceiveTime?: string;
    /** 验收方式 */
    checkReceiveMethods?: EnumTaskCheckReceiveMethod[];
  }
  interface GetCheckReceiveTaskUserSubmitsQueryResultObjectData {
@@ -4045,6 +4285,8 @@
    endTime?: string;
    /** 任务地点名称 */
    addressName?: string;
    /** 验收方式 */
    checkReceiveMethods?: EnumTaskCheckReceiveMethod[];
  }
  interface GetCodeUrlQueryResult {
@@ -4168,10 +4410,19 @@
    autoSignPowerAttorneyUrl?: string;
    /** 变量 */
    values?: GetContractTemplateQueryResultValue[];
    /** 变量 */
    customContents?: GetContractTemplateQueryResultCustomContent[];
    /** 创建操作人 */
    createdUserId?: string;
    /** 是否企业用户创建 */
    isEnterpriseUserCreated?: boolean;
  }
  interface GetContractTemplateQueryResultCustomContent {
    /** 变量代码 */
    name?: string;
    /** 值 */
    value?: string;
  }
  interface GetContractTemplateQueryResultValue {
@@ -4194,6 +4445,107 @@
    y?: number;
    /** 页码 */
    page?: number;
  }
  interface GetCooperationWalletRechargeTransactionQueryResult {
    /** 交易Id */
    id?: string;
    /** 合作Id */
    cooperationId?: string;
    /** 进账单位 */
    receiveUnit?: string;
    /** 开户名称 */
    receiveName?: string;
    /** 开户银行 */
    receiveBank?: string;
    /** 开户支行 */
    receiveBankBranch?: string;
    /** 开户账号 */
    receiveAccount?: string;
    /** 充值金额 */
    amount?: number;
    /** 充值时间 */
    createdTime?: string;
    /** 备注 */
    remark?: string;
    transactionStatus?: EnumEnterpriseCooperationWalletTransactionStatus;
    /** 凭证 */
    files?: string[];
  }
  interface GetCooperationWalletRechargeTransactionsQuery {
    /** 合作Id */
    cooperationId?: string;
    /** 关键字 */
    keywords?: string;
    pageModel?: PagedListQueryPageModel;
  }
  interface GetCooperationWalletRechargeTransactionsQueryResult {
    pageModel?: PagedListQueryResultPageModel;
    /** 数据 */
    data?: GetCooperationWalletRechargeTransactionsQueryResultItem[];
  }
  interface GetCooperationWalletRechargeTransactionsQueryResultItem {
    /** 交易Id */
    id?: string;
    /** 钱包Id */
    walletId?: string;
    /** 供应商Id */
    supplierEnterpriseId?: string;
    /** 供应商名称 */
    supplierEnterpriseName?: string;
    /** 甲方企业Id */
    partyAEnterpriseId?: string;
    /** 甲方企业名称 */
    partyAEnterpriseName?: string;
    /** 甲方企业统一社会信用代码 */
    partyAEnterpriseSocietyCreditCode?: string;
    /** 开户银行 */
    receiveBank?: string;
    /** 开户支行 */
    receiveBankBranch?: string;
    /** 开户账号 */
    receiveAccount?: string;
    /** 充值金额 */
    amount?: number;
    /** 充值时间 */
    createdTime?: string;
    transactionStatus?: EnumEnterpriseCooperationWalletTransactionStatus;
  }
  interface GetCooperationWalletsQuery {
    pageModel?: PagedListQueryPageModel;
  }
  interface GetCooperationWalletsQueryResult {
    pageModel?: PagedListQueryResultPageModel;
    /** 数据 */
    data?: GetCooperationWalletsQueryResultItem[];
  }
  interface GetCooperationWalletsQueryResultItem {
    /** 合作Id */
    id?: string;
    /** 供应商Id */
    supplierEnterpriseId?: string;
    /** 供应商名称 */
    supplierEnterpriseName?: string;
    /** 供应商开户总行 */
    supplierEnterpriseBank?: string;
    /** 供应商开户支行 */
    supplierEnterpriseBankBranch?: string;
    /** 供应商户号 */
    supplierEnterpriseAccount?: string;
    /** 甲方企业Id */
    partyAEnterpriseId?: string;
    /** 甲方企业名称 */
    partyAEnterpriseName?: string;
    /** 甲方企业统一社会信用代码 */
    partyAEnterpriseSocietyCreditCode?: string;
    /** 余额 */
    balance?: number;
  }
  type GetCurrentLogierMenusQuery = Record<string, any>;
@@ -4570,6 +4922,8 @@
    gender?: EnumUserGender;
    /** 企业全称 */
    enterpriseName?: string;
    /** 企业是否实名 */
    enterpriseIsReal?: boolean;
    /** 角色 */
    roles?: string[];
    /** 是否实名 */
@@ -4615,6 +4969,19 @@
    userName?: string;
    /** 在招岗位数量 */
    taskCount?: number;
  }
  type GetEnterpriseReceiveAccountQuery = Record<string, any>;
  interface GetEnterpriseReceiveAccountQueryResult {
    /** 开户名称 */
    name?: string;
    /** 开户总行 */
    bank?: string;
    /** 开户支行 */
    bankBranch?: string;
    /** 户号 */
    account?: string;
  }
  interface GetEnterpriseSmsSettingQueryResult {
@@ -5386,7 +5753,8 @@
    applyBeginTime?: string;
    /** 报名结束时间 */
    applyEndTime?: string;
    checkReceiveMethod?: EnumTaskCheckReceiveMethod;
    /** 验收方式 */
    checkReceiveMethods?: EnumTaskCheckReceiveMethod[];
    paymentMethod?: EnumTaskPaymentMethod;
    settlementAccess?: EnumEnterpriseWalletAccess;
    /** 任务描述 */
@@ -5398,6 +5766,8 @@
    verifyWorkHours?: number;
    /** 超时服务费 */
    timeoutServiceFee?: number;
    /** 总件数 */
    totalPieceQuantity?: number;
    settlementCycle?: EnumSettlementCycle;
    /** 福利 */
    benefits?: GetTaskInfoQueryResultBenefit[];
@@ -5442,7 +5812,8 @@
    applyBeginTime?: string;
    /** 报名结束时间 */
    applyEndTime?: string;
    checkReceiveMethod?: EnumTaskCheckReceiveMethod;
    /** 验收方式 */
    checkReceiveMethods?: EnumTaskCheckReceiveMethod[];
    paymentMethod?: EnumTaskPaymentMethod;
    settlementAccess?: EnumEnterpriseWalletAccess;
    /** 任务描述 */
@@ -5454,6 +5825,8 @@
    verifyWorkHours?: number;
    /** 超时服务费 */
    timeoutServiceFee?: number;
    /** 总件数 */
    totalPieceQuantity?: number;
    settlementCycle?: EnumSettlementCycle;
    /** 福利 */
    benefits?: GetTaskInfoQueryResultBenefit[];
@@ -5491,7 +5864,8 @@
    applyBeginTime?: string;
    /** 报名结束时间 */
    applyEndTime?: string;
    checkReceiveMethod?: EnumTaskCheckReceiveMethod;
    /** 验收方式 */
    checkReceiveMethods?: EnumTaskCheckReceiveMethod[];
    paymentMethod?: EnumTaskPaymentMethod;
    settlementAccess?: EnumEnterpriseWalletAccess;
    /** 任务描述 */
@@ -5503,6 +5877,8 @@
    verifyWorkHours?: number;
    /** 超时服务费 */
    timeoutServiceFee?: number;
    /** 总件数 */
    totalPieceQuantity?: number;
    settlementCycle?: EnumSettlementCycle;
    /** 福利 */
    benefits?: GetTaskInfoQueryResultBenefit[];
@@ -5849,6 +6225,9 @@
    settlementReceiveStatus?: SettlementReceiveStatus;
    /** 结算时间 */
    settlementTime?: string;
    settlementAuditStatus?: EnumTaskSettlementAuditStatus;
    /** 审核时间 */
    settlementAuditTime?: string;
    /** 付款人账户 */
    payerAccount?: string;
    /** 付款人名称 */
@@ -6123,7 +6502,6 @@
    keywords?: string;
    /** 任务Id */
    taskInfoId?: string;
    paymentStatus?: GetSettlementTasksQueryPaymentStatus;
    settlementOrderStatus?: EnumTaskSettlementOrderStatus;
    settlementStatus?: EnumTaskSettlementStatus;
    checkReceiveStatus?: EnumTaskCheckReceiveStatus;
@@ -6131,6 +6509,8 @@
    settlementTimeBegin?: string;
    /** 结算时间-截止 */
    settlementTimeEnd?: string;
    paymentStatus?: GetSettlementTasksQueryPaymentStatus;
    supplierPaymentStatus?: GetSettlementTasksQuerySupplierPaymentStatus;
    pageModel?: PagedListQueryPageModel;
  }
@@ -6160,6 +6540,8 @@
    checkReceiveStatus?: EnumTaskCheckReceiveStatus;
    /** 结算单号 */
    settlementCode?: string;
    /** 供应商名称 */
    supplierEnterpriseName?: string;
    settlementOrderStatus?: EnumTaskSettlementOrderStatus;
    /** 结算单名称 */
    settlementOrderName?: string;
@@ -6193,6 +6575,15 @@
    completedReleaseCount?: number;
  }
  enum GetSettlementTasksQuerySupplierPaymentStatus {
    /**待结算 */
    WaitSettlement = 10,
    /**已结算 */
    CompletedSettlement = 20,
    /**已发放 */
    CompletedRelease = 30,
  }
  interface GetSettlementTaskUsersQueryResult {
    detail?: GetSettlementTaskUsersQueryResultDetail;
    /** 结算名单 */
@@ -6221,6 +6612,8 @@
    verifyWorkHours?: number;
    /** 超时服务费 */
    timeoutServiceFee?: number;
    /** 总件数 */
    totalPieceQuantity?: number;
    settlementAccess?: EnumEnterpriseWalletAccess;
    settlementOrderStatus?: EnumTaskSettlementOrderStatus;
    /** 结算单名称 */
@@ -6480,10 +6873,14 @@
    billingMethod?: EnumBillingMethod;
    /** 服务费 */
    serviceFee?: number;
    /** 预计服务费 */
    estimatedServiceFee?: number;
    /** 核定工时 */
    verifyWorkHours?: number;
    /** 超时服务费 */
    timeoutServiceFee?: number;
    /** 总件数 */
    totalPieceQuantity?: number;
    settlementCycle?: EnumSettlementCycle;
    /** 结算日期 */
    settlementDate?: number;
@@ -6520,7 +6917,8 @@
    applyBeginTime?: string;
    /** 报名结束时间 */
    applyEndTime?: string;
    checkReceiveMethod?: EnumTaskCheckReceiveMethod;
    /** 验收方式 */
    checkReceiveMethods?: EnumTaskCheckReceiveMethod[];
    paymentMethod?: EnumTaskPaymentMethod;
    settlementAccess?: EnumEnterpriseWalletAccess;
    /** 任务描述 */
@@ -6632,6 +7030,8 @@
    verifyWorkHours?: number;
    /** 超时服务费 */
    timeoutServiceFee?: number;
    /** 总件数 */
    totalPieceQuantity?: number;
    settlementCycle?: EnumSettlementCycle;
    /** 福利 */
    benefits?: GetTaskInfoQueryResultBenefit[];
@@ -6666,7 +7066,8 @@
    /** 报名结束时间 */
    applyEndTime?: string;
    applyStatus?: EnumTaskApplyStatus;
    checkReceiveMethod?: EnumTaskCheckReceiveMethod;
    /** 验收方式 */
    checkReceiveMethods?: EnumTaskCheckReceiveMethod[];
    paymentMethod?: EnumTaskPaymentMethod;
    settlementAccess?: EnumEnterpriseWalletAccess;
    /** 任务描述 */
@@ -7486,6 +7887,17 @@
    verifyCode: string;
  }
  interface RechargeCooperationWalletCommand {
    /** 合作Id */
    cooperationId?: string;
    /** 收款账户 */
    receiveAccount: string;
    /** 金额 */
    amount: number;
    /** 凭证 */
    files: string[];
  }
  interface RechargeEnterpriseWalletCommand {
    /** 企业Id */
    enterpriseId?: string;
@@ -7509,6 +7921,8 @@
  }
  type RepairContractTemplateValuePointBy1202Command = Record<string, any>;
  type RepairTaskEstimatedServiceFee1301Command = Record<string, any>;
  interface ResendResourceCommand {
    /** 资源日志Id */
@@ -7570,6 +7984,8 @@
    isAutoSign?: boolean;
    /** 自动签授权书 */
    autoSignPowerAttorneyUrl?: string;
    /** 自定义内容 */
    customContents?: string[];
    /** Id */
    id?: string;
  }
@@ -7687,6 +8103,15 @@
    /** 灵工合同Id */
    enterpriseEmployeeContractId?: string;
    status?: EnumEnterpriseCostStatus;
  }
  interface SaveEnterpriseReceiveAccountCommand {
    /** 开户总行 */
    bank?: string;
    /** 开户支行 */
    bankBranch?: string;
    /** 户号 */
    account?: string;
  }
  interface SaveFrontConsoleLogCommand {
@@ -7943,10 +8368,14 @@
    billingMethod: EnumBillingMethod;
    /** 服务费 */
    serviceFee?: number;
    /** 预计服务费 */
    estimatedServiceFee?: number;
    /** 核定工时 */
    verifyWorkHours?: number;
    /** 超时服务费 */
    timeoutServiceFee?: number;
    /** 总件数 */
    totalPieceQuantity?: number;
    settlementCycle: EnumSettlementCycle;
    /** 结算日期 */
    settlementDate: number;
@@ -7979,7 +8408,8 @@
    applyBeginTime?: string;
    /** 报名结束时间 */
    applyEndTime?: string;
    checkReceiveMethod?: EnumTaskCheckReceiveMethod;
    /** 验收方式 */
    checkReceiveMethods?: EnumTaskCheckReceiveMethod[];
    paymentMethod?: EnumTaskPaymentMethod;
    settlementAccess?: EnumEnterpriseWalletAccess;
    /** 任务描述 */
@@ -8333,14 +8763,29 @@
    taskInfoId?: string;
    /** 日期 */
    date?: string;
    userCheckHistoryType?: EnumTaskUserSubmitCheckHistoryType;
    /** 附件 */
    files?: string[];
  }
  interface SureRechargeCooperationWalletCommand {
    /** 合作Id */
    cooperationId?: string;
    /** 交易Id */
    id?: string;
    transactionStatus?: EnumEnterpriseCooperationWalletTransactionStatus;
    /** 备注 */
    remark?: string;
  }
  interface SureTaskSettlementCommand {
    /** 任务Id */
    taskInfoId?: string;
    /** 操作令牌 */
    operatorToken?: string;
  }
  type SyncContractTemplateParamterTo818Command = Record<string, any>;
  type SyncDatabaseCommand = Record<string, any>;
@@ -8467,6 +8912,8 @@
    remark?: string;
  }
  type TestEventCommand = Record<string, any>;
  interface UpdateEnterpriseWeChatPayWalletBankAccountInfoCommand {
    /** 企业Id */
    enterpriseId?: string;
src/services/api/user.ts
@@ -47,6 +47,21 @@
  });
}
/** 导出个人用户收支明细电子回单 POST /api/user/user/exportPersonalUserTransactionEreceipts */
export async function exportPersonalUserTransactionEreceipts(
  body: API.ExportPersonalUserTransactionEreceiptsCommand,
  options?: API.RequestConfig
) {
  return request<string>('/api/user/user/exportPersonalUserTransactionEreceipts', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json-patch+json',
    },
    data: body,
    ...(options || {}),
  });
}
/** 查询个人用户银行卡信息 GET /api/user/user/getPersonalUserBankCard */
export async function getPersonalUserBankCard(
  // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
src/utils/index.ts
@@ -5,3 +5,4 @@
export * from './module';
export * from './theme';
export * from './validator';
export * from './orderUtils';
src/utils/orderUtils.ts
New file
@@ -0,0 +1,13 @@
export class OrderUtils {
  static getServiceFeeText(serviceFee: number, billingMethod: EnumBillingMethod) {
    if (billingMethod === EnumBillingMethod.Face) {
      return EnumBillingMethodUnitText[billingMethod];
    }
    return `${serviceFee ?? 0}${EnumBillingMethodUnitText[billingMethod]}`;
  }
  static isContainCheckIn(checkReceiveMethods: EnumTaskCheckReceiveMethod[]) {
    if (!checkReceiveMethods) return false;
    return checkReceiveMethods.includes(EnumTaskCheckReceiveMethod.CheckIn);
  }
}
src/views/EmploymentManage/CheckManage.vue
@@ -63,7 +63,7 @@
import { CheckManageColumns } from './constants';
import * as taskCheckReceiveServices from '@/services/api/taskCheckReceive';
import { ModelValueType } from 'element-plus';
import { downloadFileByUrl, format, setOSSLink } from '@/utils';
import { downloadFileByUrl, format, OrderUtils, setOSSLink } from '@/utils';
import { EnumTaskCheckReceiveStatusText } from '@/constants';
defineOptions({
@@ -160,13 +160,17 @@
    columnsRenderProps: {
      checkReceiveStatus: { type: 'enum', valueEnum: EnumTaskCheckReceiveStatusText },
      billingMethod: { type: 'enum', valueEnum: EnumBillingMethodText },
      checkReceiveMethod: { type: 'enum', valueEnum: EnumTaskCheckReceiveMethodText },
      checkReceiveMethods: {
        formatter: (row: API.GetCheckReceiveTasksQueryResultItem) => {
          return row.checkReceiveMethods
            .map((item) => EnumTaskCheckReceiveMethodText[item])
            .join(',');
        },
      },
      serviceFee: {
        type: 'money',
        formatter: (row) => {
          return row.billingMethod === EnumBillingMethod.Face
            ? ''
            : `${row.serviceFee}${EnumBillingMethodUnitText[row.billingMethod]}`;
        formatter: (row: API.GetCheckReceiveTasksQueryResultItem) => {
          return OrderUtils.getServiceFeeText(row.serviceFee, row.billingMethod);
        },
      },
      settlementCycle: { type: 'enum', valueEnum: EnumSettlementCycleText },
src/views/EmploymentManage/CheckReceiveTaskDetail.vue
@@ -16,11 +16,7 @@
            </ProFormColItem>
            <ProFormColItem :span="8">
              <ProFormItemV2 label="服务费金额:">
                {{
                  taskInfo.billingMethod === EnumBillingMethod.Face
                    ? EnumBillingMethodText[taskInfo.billingMethod]
                    : `${taskInfo.serviceFee}${EnumBillingMethodUnitText[taskInfo.billingMethod]}`
                }}
                {{ OrderUtils.getServiceFeeText(taskInfo.serviceFee, taskInfo.billingMethod) }}
              </ProFormItemV2>
            </ProFormColItem>
          </ProFormCol>
@@ -74,6 +70,7 @@
import * as taskServices from '@/services/api/task';
import { useQuery } from '@tanstack/vue-query';
import { CheckReceiveTaskDetailColumns } from './constants';
import { OrderUtils } from '@/utils';
import { EnumBillingMethodUnitText, EnumBillingMethod, EnumBillingMethodText } from '@/constants';
import dayjs from 'dayjs';
import CheckManageDialog from './components/CheckManageDialog.vue';
@@ -84,20 +81,20 @@
});
const operationBtns = defineOperationBtns([
  {
    data: {
      enCode: 'exportBtn',
      name: '验收',
    },
    emits: {
      onClick: (role) => openDialog(role),
    },
    extraProps: {
      hide: (row: API.GetCheckReceiveTaskQueryResultItem) =>
        row.checkReceiveStatus === EnumTaskCheckReceiveStatus.Completed ||
        state.checkReceiveMethod === EnumTaskCheckReceiveMethod.CheckIn,
    },
  },
  // {
  //   data: {
  //     enCode: 'exportBtn',
  //     name: '验收',
  //   },
  //   emits: {
  //     onClick: (role) => openDialog(role),
  //   },
  //   extraProps: {
  //     hide: (row: API.GetCheckReceiveTaskQueryResultItem) =>
  //       row.checkReceiveStatus === EnumTaskCheckReceiveStatus.Completed ||
  //       state.checkReceiveMethod === EnumTaskCheckReceiveMethod.CheckIn,
  //   },
  // },
  {
    data: {
      enCode: 'detailBtn',
@@ -127,7 +124,7 @@
const BaseState = {
  loading: true,
  checkReceiveMethod: '' as any as EnumTaskCheckReceiveMethod,
  checkReceiveMethods: [] as any as EnumTaskCheckReceiveMethod[],
};
const state = reactive({ ...BaseState });
@@ -163,7 +160,7 @@
      let res = await taskCheckReceiveServices.getCheckReceiveTask(params, {
        showLoading: !state.loading,
      });
      state.checkReceiveMethod = res.objectData?.checkReceiveMethod;
      state.checkReceiveMethods = res.objectData?.checkReceiveMethods;
      return res;
    } catch (error) {}
  },
@@ -180,21 +177,23 @@
);
function openDialog(row: API.GetCheckReceiveTaskQueryResultItem, isDetail = false) {
  if (state.checkReceiveMethod === EnumTaskCheckReceiveMethod.CheckIn) {
    handleManualEdit({
      id: row.id,
    });
  } else {
    handleEdit({
      id: row.id,
      isDetail,
    });
  }
  // if (state.checkReceiveMethod === EnumTaskCheckReceiveMethod.CheckIn) {
  //   handleManualEdit({
  //     id: row.id,
  //   });
  // } else {
  // }
  handleEdit({
    id: row.id,
    checkReceiveMethods: state.checkReceiveMethods,
    isDetail,
  });
}
const { dialogProps, handleEdit } = useFormDialog({
  defaultFormParams: {
    id: '',
    checkReceiveMethods: [] as any as EnumTaskCheckReceiveMethod[],
    isDetail: false,
  },
});
src/views/EmploymentManage/TaskManageList.vue
@@ -78,7 +78,7 @@
import { EnumTaskStatusText, EnumTaskReleaseStatusText } from '@/constants';
import { useGlobalEventContext } from '@/hooks';
import * as taskServices from '@/services/api/task';
import { format } from '@/utils';
import { format, OrderUtils } from '@/utils';
import { ModelValueType } from 'element-plus';
import { Message } from '@bole-core/core';
import dayjs from 'dayjs';
@@ -225,10 +225,8 @@
      endTime: { type: 'date', format: 'YYYY-MM-DD' },
      serviceFee: {
        type: 'money',
        formatter: (row) => {
          return row.billingMethod === EnumBillingMethod.Face
            ? ''
            : `${row.serviceFee}${EnumBillingMethodUnitText[row.billingMethod]}`;
        formatter: (row: API.GetTaskInfosQueryResultItem) => {
          return OrderUtils.getServiceFeeText(row.serviceFee, row.billingMethod);
        },
      },
      applyBeginTime: { type: 'date', format: 'YYYY-MM-DD' },
src/views/EmploymentManage/components/AddOrEditEmploymentView.vue
@@ -16,6 +16,21 @@
          </ProFormCol>
          <ProFormCol>
            <ProFormColItem :span="12">
              <ProFormItemV2 label="需求人数:" prop="needPeopleNumber">
                <ProFormInputNumber
                  :controls="false"
                  v-model="form.needPeopleNumber"
                  placeholder="请输入需求人数"
                  :min="0"
                  :max="999999999999"
                  :precision="0"
                  unit="人"
                ></ProFormInputNumber>
              </ProFormItemV2>
            </ProFormColItem>
          </ProFormCol>
          <ProFormCol>
            <ProFormColItem :span="12">
              <ProFormItemV2
                label="服务费:"
                prop="billingMethod"
@@ -56,12 +71,7 @@
              </ProFormItemV2>
            </ProFormColItem>
          </ProFormCol>
          <template
            v-if="
              form.billingMethod === EnumBillingMethod.Hour ||
              form.billingMethod === EnumBillingMethod.Day
            "
          >
          <template v-if="form.billingMethod === EnumBillingMethod.Hour">
            <ProFormCol>
              <ProFormColItem :span="12">
                <ProFormItemV2
@@ -105,7 +115,25 @@
              </ProFormColItem>
            </ProFormCol>
          </template>
          <ProFormCol v-if="form.billingMethod === EnumBillingMethod.Piece">
            <ProFormColItem :span="12">
              <ProFormItemV2
                label="总件数:"
                prop="totalPieceQuantity"
                :check-rules="[{ message: '请输入总件数' }]"
              >
                <ProFormInputNumber
                  :controls="false"
                  v-model="form.totalPieceQuantity"
                  placeholder="请输入总件数"
                  :min="0"
                  :max="999999999999"
                  unit="件"
                  :disabled="feeCannotEdit"
                ></ProFormInputNumber>
              </ProFormItemV2>
            </ProFormColItem>
          </ProFormCol>
          <ProFormCol>
            <ProFormColItem :span="12">
              <ProFormItemV2
@@ -310,14 +338,13 @@
            <ProFormColItem :span="12">
              <ProFormItemV2
                label="验收方式:"
                prop="checkReceiveMethod"
                prop="checkReceiveMethods"
                :check-rules="[{ message: '请选择验收方式' }]"
              >
                <ProFormRadio
                  v-model="form.checkReceiveMethod"
                <ProFormCheckbox
                  v-model="form.checkReceiveMethods"
                  :value-enum="EnumTaskCheckReceiveMethodText"
                  :button-style="false"
                ></ProFormRadio>
                ></ProFormCheckbox>
              </ProFormItemV2>
            </ProFormColItem>
          </ProFormCol>
@@ -441,6 +468,7 @@
  serviceFee: null,
  settlementCycle: EnumSettlementCycle.Day,
  settlementDate: null as number,
  totalPieceQuantity: null as number,
  benefits: [] as string[],
  ageMinLimit: null,
  ageMaxLimit: null,
@@ -452,9 +480,10 @@
  verifyWorkHours: null as number,
  timeoutServiceFee: null as number,
  description: '',
  checkReceiveMethod: '' as any as EnumTaskCheckReceiveMethod,
  checkReceiveMethods: [] as any as EnumTaskCheckReceiveMethod[],
  applyTime: [] as unknown as ModelValueType,
  settlementAccess: '' as any as EnumEnterpriseWalletAccess,
  needPeopleNumber: null as number,
});
const { isLoading } = useQuery({
@@ -474,6 +503,7 @@
    form.serviceFee = data.serviceFee;
    form.settlementCycle = data.settlementCycle;
    form.settlementDate = data.settlementDate;
    form.totalPieceQuantity = data.totalPieceQuantity;
    form.benefits = data.benefits?.map((x) => x.benefitCode) ?? [];
    form.ageMinLimit = data.ageMinLimit;
    form.ageMaxLimit = data.ageMaxLimit;
@@ -500,12 +530,13 @@
    form.verifyWorkHours = data.verifyWorkHours;
    form.timeoutServiceFee = data.timeoutServiceFee;
    form.description = data.description;
    form.checkReceiveMethod = data.checkReceiveMethod;
    form.checkReceiveMethods = data.checkReceiveMethods;
    form.applyTime = [
      format(data.applyBeginTime, 'YYYY-MM-DD 00:00:00'),
      format(data.applyEndTime, 'YYYY-MM-DD 23:59:59'),
    ];
    form.settlementAccess = data.settlementAccess;
    form.needPeopleNumber = data.needPeopleNumber;
  },
  enabled: isEdit,
});
@@ -542,6 +573,7 @@
      serviceFee: form.serviceFee,
      settlementCycle: form.settlementCycle,
      settlementDate: form.settlementDate ? form.settlementDate : 0,
      totalPieceQuantity: form.totalPieceQuantity,
      benefits: form.benefits,
      ageMinLimit: form.ageMinLimit,
      ageMaxLimit: form.ageMaxLimit,
@@ -560,7 +592,7 @@
      verifyWorkHours: form.verifyWorkHours,
      timeoutServiceFee: form.timeoutServiceFee,
      description: form.description,
      checkReceiveMethod: form.checkReceiveMethod,
      checkReceiveMethods: form.checkReceiveMethods,
      settlementAccess: form.settlementAccess,
    };
    if (isEdit) {
src/views/EmploymentManage/components/CheckManageDialog.vue
@@ -1,5 +1,9 @@
<template>
  <ProDialog :title="title" v-model="visible" destroy-on-close draggable>
    <ProTabs v-model="tabType" hasBorder v-if="form.checkReceiveMethods?.length > 1">
      <ProTabPane lazy label="签到记录" name="signRecord"></ProTabPane>
      <ProTabPane lazy label="提交记录" name="submitRecord"></ProTabPane>
    </ProTabs>
    <ProDialogTableWrapper :height="400">
      <ProTableV2 v-bind="proTableProps" :columns="columns" :operationBtns="operationBtns">
      </ProTableV2>
@@ -20,6 +24,8 @@
  defineColumns,
  defineOperationBtns,
  useTable,
  ProTabs,
  ProTabPane,
} from '@bole-core/components';
import * as taskCheckReceiveServices from '@/services/api/taskCheckReceive';
import { setOSSLink } from '@/utils';
@@ -32,11 +38,14 @@
type Form = {
  id: string;
  checkReceiveMethods: EnumTaskCheckReceiveMethod[];
  isDetail: boolean;
};
const visible = defineModel({ type: Boolean });
const form = defineModel<Form>('form');
const tabType = ref('signRecord');
const title = computed(() => (form.value.isDetail ? '详情' : '验收'));
const emit = defineEmits<{
  (e: 'onCancel'): void;
@@ -44,7 +53,7 @@
const eventContext = useGlobalEventContext();
const columns = defineColumns([
const submitColumns = defineColumns([
  {
    id: '1',
    enCode: 'date',
@@ -70,7 +79,69 @@
    enCode: 'checkReceiveTime',
    name: '验收时间',
  },
  {
    id: '6',
    enCode: 'checkOperator',
    name: '验收人',
  },
]);
const checkInColumns = defineColumns([
  {
    id: '1',
    enCode: 'date',
    name: '任务日期',
  },
  {
    id: '2',
    enCode: 'userCheckInTime',
    name: '用户签到时间',
  },
  {
    id: '3',
    enCode: 'userCheckOutTime',
    name: '用户签出时间',
  },
  {
    id: '4',
    enCode: 'userCheckHistoryType',
    name: '用户验收状态',
  },
  {
    id: '5',
    enCode: 'checkInTime',
    name: '签到时间',
  },
  {
    id: '6',
    enCode: 'checkOutTime',
    name: '签出时间',
  },
  {
    id: '7',
    enCode: 'checkHistoryType',
    name: '验收状态',
  },
  {
    id: '8',
    enCode: 'operator',
    name: '操作人',
  },
]);
const columns = computed(() => {
  if (form.value.checkReceiveMethods.every((x) => x == EnumTaskCheckReceiveMethod.CheckIn)) {
    return checkInColumns;
  } else if (form.value.checkReceiveMethods.every((x) => x == EnumTaskCheckReceiveMethod.Submit)) {
    return submitColumns;
  } else {
    if (tabType.value == 'signRecord') {
      return checkInColumns;
    } else {
      return submitColumns;
    }
  }
});
const operationBtns = defineOperationBtns([
  {
@@ -164,8 +235,14 @@
    columnsRenderProps: {
      createdTime: { type: 'date' },
      checkReceiveTime: { type: 'date' },
      userCheckInTime: { type: 'date' },
      userCheckOutTime: { type: 'date' },
      checkInTime: { type: 'date' },
      checkOutTime: { type: 'date' },
      date: { type: 'date', format: 'YYYY-MM-DD' },
      checkReceiveStatus: { type: 'enum', valueEnum: EnumTaskUserSubmitCheckReceiveStatusText },
      userCheckHistoryType: { type: 'enum', valueEnum: EnumTaskUserSubmitCheckHistoryTypeText },
      checkHistoryType: { type: 'enum', valueEnum: EnumTaskUserSubmitCheckHistoryTypeText },
      files: {
        type: 'url',
        //@ts-ignore
src/views/EmploymentManage/constants/columns.ts
@@ -13,12 +13,12 @@
  },
  {
    id: '3',
    enCode: 'supplierEnterpriseName',
    name: '所属客户',
    enCode: 'enterpriseName',
    name: '发单客户',
  },
  {
    id: '4',
    enCode: 'supplierEnterpriseId',
    enCode: 'enterpriseId',
    name: '客户ID',
  },
  {
@@ -212,7 +212,7 @@
  },
  {
    id: '8',
    enCode: 'checkReceiveMethod',
    enCode: 'checkReceiveMethods',
    name: '验收方式',
  },
  {
src/views/FinanceManage/AccountManage.vue
New file
@@ -0,0 +1,169 @@
<template>
  <LoadingLayout :loading="isLoading">
    <AppContainer>
      <PageFormLayout title="账户信息">
        <ProForm :model="form" ref="formRef" label-width="140px" :is-read="isDetail">
          <ProFormCol>
            <ProFormColItem :span="12">
              <ProFormItemV2 label="账户名称:" prop="name" mode="read">
                <ProFormText v-model.trim="form.name" placeholder="请输入账户名称" />
              </ProFormItemV2>
            </ProFormColItem>
          </ProFormCol>
          <ProFormCol>
            <ProFormColItem :span="12">
              <ProFormItemV2
                label="开户总行:"
                prop="bank"
                :check-rules="[{ message: '请输入开户总行' }]"
              >
                <ProFormText v-model.trim="form.bank" placeholder="请输入开户总行" />
              </ProFormItemV2>
            </ProFormColItem>
          </ProFormCol>
          <ProFormCol>
            <ProFormColItem :span="12">
              <ProFormItemV2
                label="开户支行:"
                prop="bankBranch"
                :check-rules="[{ message: '请输入开户支行' }]"
              >
                <ProFormText v-model.trim="form.bankBranch" placeholder="请输入开户支行" />
              </ProFormItemV2>
            </ProFormColItem>
          </ProFormCol>
          <ProFormCol>
            <ProFormColItem :span="12">
              <ProFormItemV2
                label="户号:"
                prop="account"
                :check-rules="[{ message: '请输入户号', type: 'bankCard' }]"
              >
                <ProFormText v-model.trim="form.account" placeholder="请输入户号" />
              </ProFormItemV2>
            </ProFormColItem>
          </ProFormCol>
        </ProForm>
        <template #footer>
          <el-button v-if="isDetail" type="primary" @click="isDetail = false">编辑</el-button>
          <el-button v-else type="primary" @click="handleConfirm()">保存</el-button>
        </template>
      </PageFormLayout>
    </AppContainer>
  </LoadingLayout>
</template>
<script setup lang="ts">
import {
  LoadingLayout,
  AppContainer,
  PageFormLayout,
  ProForm,
  ProFormCol,
  ProFormColItem,
  ProFormItemV2,
  ProFormInputNumber,
  ProFormRadio,
  ProFormText,
} from '@bole-core/components';
import { useQuery } from '@tanstack/vue-query';
import * as smsServices from '@/services/api/sms';
import { FormInstance } from 'element-plus';
import { Message } from '@bole-core/core';
import * as enterpriseCooperationWalletServices from '@/services/api/enterpriseCooperationWallet';
defineOptions({
  name: 'AccountManage',
});
const { userDetail } = useUser();
const form = reactive({
  name: '',
  bank: '',
  bankBranch: '',
  account: '',
});
const isDetail = ref(true);
const { isLoading } = useQuery({
  queryKey: ['enterpriseCooperationWalletServices/getEnterpriseReceiveAccount'],
  queryFn: async () => {
    return await enterpriseCooperationWalletServices.getEnterpriseReceiveAccount(
      {},
      {
        showLoading: false,
      }
    );
  },
  placeholderData: () => ({} as API.GetEnterpriseReceiveAccountQueryResult),
  onSuccess(data) {
    form.name = data.name;
    form.bank = data.bank;
    form.bankBranch = data.bankBranch;
    form.account = data.account;
  },
});
const formRef = ref<FormInstance>();
function handleConfirm() {
  if (!formRef.value) return;
  formRef.value.validate((valid) => {
    if (valid) {
      submit();
    } else {
      return;
    }
  });
}
async function submit() {
  try {
    let params: API.SaveEnterpriseReceiveAccountCommand = {
      bank: form.bank,
      bankBranch: form.bankBranch,
      account: form.account,
    };
    let res = await enterpriseCooperationWalletServices.saveEnterpriseReceiveAccount(params);
    if (res) {
      Message.successMessage('操作成功');
      isDetail.value = true;
    }
  } catch (error) {}
}
</script>
<style lang="scss" scoped>
@use '@/style/common.scss' as *;
.access-list {
  flex: 1;
  min-width: 0;
  :deep() {
    .el-form-item__content {
      flex-direction: column;
      align-items: flex-start;
    }
  }
}
.access-item {
  display: flex;
  align-items: center;
  margin-bottom: 10px;
  .access-item-label {
    margin-right: 20px;
    word-break: keep-all;
  }
  :deep() {
    .el-radio-group {
      margin-right: 20px;
    }
  }
}
</style>
src/views/FinanceManage/CustomerRechargeManage.vue
New file
@@ -0,0 +1,168 @@
<template>
  <LoadingLayout :loading="state.loading">
    <AppContainer>
      <ProTableQueryFilterBar @on-reset="reset">
        <template #query>
          <QueryFilterItem>
            <SearchInput
              v-model="extraParamState.keywords"
              style="width: 260px"
              placeholder="企业名称/信用代码"
              @on-click-search="getList"
            >
            </SearchInput>
          </QueryFilterItem>
        </template>
      </ProTableQueryFilterBar>
      <ProTableV2
        v-bind="proTableProps"
        :columns="CustomerRechargeManageColumns"
        :operationBtns="operationBtns"
      >
      </ProTableV2>
    </AppContainer>
    <CustomerRechargeDialog v-bind="dialogProps" />
  </LoadingLayout>
</template>
<script setup lang="ts">
import {
  ProTableQueryFilterBar,
  ProTableV2,
  SearchInput,
  LoadingLayout,
  AppContainer,
  QueryFilterItem,
  useTable,
  useFormDialog,
  defineOperationBtns,
} from '@bole-core/components';
import * as enterpriseCooperationWalletServices from '@/services/api/enterpriseCooperationWallet';
import CustomerRechargeDialog from './components/CustomerRechargeDialog.vue';
import { CustomerRechargeManageColumns } from './constants';
import { Message } from '@bole-core/core';
defineOptions({
  name: 'CustomerRechargeManage',
});
const operationBtns = defineOperationBtns([
  {
    data: {
      enCode: 'confirmBtn',
      name: '确认',
    },
    emits: {
      onClick: (role) => openDialog(role, false),
    },
    extraProps: {
      hide: (role: API.GetCooperationWalletRechargeTransactionsQueryResultItem) =>
        role.transactionStatus !== EnumEnterpriseCooperationWalletTransactionStatus.WaitSure,
    },
  },
  {
    data: {
      enCode: 'detailBtn',
      name: '详情',
    },
    emits: {
      onClick: (role) => openDialog(role, true),
    },
    extraProps: {
      hide: (role: API.GetCooperationWalletRechargeTransactionsQueryResultItem) =>
        role.transactionStatus === EnumEnterpriseCooperationWalletTransactionStatus.WaitSure,
    },
  },
]);
const router = useRouter();
const BaseState = {
  loading: true,
};
const state = reactive({ ...BaseState });
onMounted(async () => {
  await getList();
  state.loading = false;
});
const {
  getDataSource: getList,
  proTableProps,
  paginationState,
  extraParamState,
  reset,
} = useTable(
  async ({ pageIndex, pageSize }, extraParamState) => {
    try {
      let params: API.GetCooperationWalletRechargeTransactionsQuery = {
        pageModel: {
          rows: pageSize,
          page: pageIndex,
          orderInput: extraParamState.orderInput,
        },
        keywords: extraParamState.keywords,
      };
      let res = await enterpriseCooperationWalletServices.getCooperationWalletRechargeTransactions(
        params
      );
      return res;
    } catch (error) {}
  },
  {
    defaultExtraParams: {
      keywords: '',
      orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }],
    },
    columnsRenderProps: {
      amount: { type: 'money' },
      createdTime: { type: 'date' },
      transactionStatus: {
        type: 'enum',
        valueEnum: EnumEnterpriseCooperationWalletTransactionStatusText,
      },
    },
  }
);
const { dialogProps, handleAdd, handleEdit, editForm } = useFormDialog({
  onConfirm: handleAddOrEdit,
  defaultFormParams: {
    id: '',
    cooperationId: '',
    transactionStatus: '' as any as EnumEnterpriseCooperationWalletTransactionStatus,
    remark: '',
    isDetail: false,
  },
});
function openDialog(
  row: API.GetCooperationWalletRechargeTransactionsQueryResultItem,
  isDetail: boolean
) {
  handleEdit({
    cooperationId: '',
    id: row.id,
    transactionStatus: '' as any as EnumEnterpriseCooperationWalletTransactionStatus,
    remark: '',
    isDetail: isDetail,
  });
}
async function handleAddOrEdit() {
  try {
    let params: API.SureRechargeCooperationWalletCommand = {
      cooperationId: editForm.cooperationId,
      id: editForm.id,
      transactionStatus: editForm.transactionStatus,
      remark: editForm.remark,
    };
    let res = await enterpriseCooperationWalletServices.sureRechargeCooperationWallet(params);
    if (res) {
      Message.successMessage('操作成功');
      getList(paginationState.pageIndex);
    }
  } catch (error) {}
}
</script>
src/views/FinanceManage/CustomerRechargeRecord.vue
New file
@@ -0,0 +1,111 @@
<template>
  <LoadingLayout :loading="state.loading">
    <AppContainer>
      <ProTableV2
        v-bind="proTableProps"
        :columns="CustomerRechargeRecordColumns"
        :operationBtns="operationBtns"
      >
      </ProTableV2>
    </AppContainer>
    <RechargeRecordialog v-bind="dialogProps" />
  </LoadingLayout>
</template>
<script setup lang="ts">
import {
  ProTableV2,
  LoadingLayout,
  AppContainer,
  useTable,
  useFormDialog,
  defineOperationBtns,
  UploadUserFile,
} from '@bole-core/components';
import * as enterpriseCooperationWalletServices from '@/services/api/enterpriseCooperationWallet';
import { CustomerRechargeRecordColumns } from './constants';
import RechargeRecordialog from './components/RechargeRecordialog.vue';
import { EnumEnterpriseCooperationWalletTransactionStatusText } from '@/constants';
defineOptions({
  name: 'CustomerRechargeRecord',
});
const route = useRoute();
const id = route.params.id as string;
const operationBtns = defineOperationBtns([
  {
    data: {
      enCode: 'detailBtn',
      name: '详情',
    },
    emits: {
      onClick: (role: API.GetCooperationWalletRechargeTransactionsQueryResultItem) =>
        openDialog(role),
    },
  },
]);
const router = useRouter();
const BaseState = {
  loading: true,
};
const state = reactive({ ...BaseState });
onMounted(async () => {
  await getList();
  state.loading = false;
});
const {
  getDataSource: getList,
  proTableProps,
  paginationState,
  extraParamState,
  reset,
} = useTable(
  async ({ pageIndex, pageSize }, extraParamState) => {
    try {
      let params: API.GetCooperationWalletRechargeTransactionsQuery = {
        pageModel: {
          rows: pageSize,
          page: pageIndex,
          orderInput: extraParamState.orderInput,
        },
        cooperationId: id,
      };
      let res = await enterpriseCooperationWalletServices.getCooperationWalletRechargeTransactions(
        params
      );
      return res;
    } catch (error) {}
  },
  {
    defaultExtraParams: {
      orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }],
    },
    columnsRenderProps: {
      amount: { type: 'money' },
      createdTime: { type: 'date' },
      transactionStatus: {
        type: 'enum',
        valueEnum: EnumEnterpriseCooperationWalletTransactionStatusText,
      },
    },
  }
);
const { dialogProps, handleAdd, editForm } = useFormDialog({
  defaultFormParams: {
    id: '',
  },
});
function openDialog(row: API.GetCooperationWalletRechargeTransactionsQueryResultItem) {
  handleAdd({
    id: row.id,
  });
}
</script>
src/views/FinanceManage/EnterpriseBalanceManage.vue
@@ -1,128 +1,26 @@
<template>
  <LoadingLayout :loading="state.loading">
    <AppContainer>
      <ProTableV2
        v-bind="proTableProps"
        :columns="BalanceManageColumns"
        :operationBtns="operationBtns"
      >
      </ProTableV2>
    </AppContainer>
    <RechargeEnterpriseWalletDialog v-bind="dialogRechargeProps" />
  </LoadingLayout>
  <AppContainer>
    <ProTabs v-model="state.tabType" hasBorder>
      <ProTabPane lazy label="余额管理" name="enterpriseBalanceManageView">
        <EnterpriseBalanceManageView />
      </ProTabPane>
      <ProTabPane lazy label="客户余额管理" name="customerBalanceManageView">
        <CustomerBalanceManageView />
      </ProTabPane>
    </ProTabs>
  </AppContainer>
</template>
<script setup lang="ts">
import {
  ProTableV2,
  LoadingLayout,
  AppContainer,
  useTable,
  useFormDialog,
  defineOperationBtns,
} from '@bole-core/components';
import * as enterpriseWalletServices from '@/services/api/enterpriseWallet';
import { BalanceManageColumns } from './constants';
import RechargeEnterpriseWalletDialog from '@/views/ServiceChargeManage/components/RechargeEnterpriseWalletDialog.vue';
import { EnumEnterpriseWalletAccess, EnumEnterpriseWalletAccessText } from '@/constants';
import { AppContainer, ProTabs, ProTabPane } from '@bole-core/components';
import EnterpriseBalanceManageView from './components/EnterpriseBalanceManageView.vue';
import CustomerBalanceManageView from './components/CustomerBalanceManageView.vue';
defineOptions({
  name: 'EnterpriseBalanceManage',
});
const operationBtns = defineOperationBtns([
  {
    data: {
      enCode: 'rechargeBtn',
      name: '充值',
    },
    emits: {
      onClick: (role) => openDialog(role),
    },
    extraProps: {
      hide: (role: API.GetEnterpriseWalletBalancesQueryResultItem) =>
        role.access !== EnumEnterpriseWalletAccess.Alipay,
    },
  },
  {
    data: {
      enCode: 'detailBtn',
      name: '详情',
    },
    emits: {
      onClick: (role) => goDetail(role),
    },
  },
]);
const router = useRouter();
const BaseState = {
  loading: true,
};
const state = reactive({ ...BaseState });
onMounted(async () => {
  await getList();
  state.loading = false;
const state = reactive({
  tabType: 'enterpriseBalanceManageView',
});
const {
  getDataSource: getList,
  proTableProps,
  paginationState,
  extraParamState,
  reset,
} = useTable(
  async ({ pageIndex, pageSize }, extraParamState) => {
    try {
      let params: API.GetEnterpriseWalletBalancesQuery = {
        pageModel: {
          rows: pageSize,
          page: pageIndex,
          orderInput: extraParamState.orderInput,
        },
      };
      let res = await enterpriseWalletServices.getEnterpriseWalletBalances(params, {
        showLoading: !state.loading,
      });
      return res;
    } catch (error) {}
  },
  {
    defaultExtraParams: {
      orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }],
    },
    columnsRenderProps: {
      access: { type: 'enum', valueEnum: EnumEnterpriseWalletAccessText },
      balance: { type: 'money' },
    },
  }
);
const {
  dialogProps: dialogRechargeProps,
  handleAdd: handleRechargeAdd,
  editForm: rechargeEditForm,
} = useFormDialog({
  defaultFormParams: {
    access: EnumEnterpriseWalletAccess.Alipay,
    amount: null as number,
    remark: '',
  },
});
function openDialog(row) {
  handleRechargeAdd();
}
function goDetail(row: API.GetEnterpriseWalletBalancesQueryResultItem) {
  router.push({
    name: 'EnterpriseBalanceManageDetail',
    params: {
      id: row?.id ?? '',
    },
  });
}
</script>
src/views/FinanceManage/EnterpriseBalanceManageDetail.vue
@@ -41,7 +41,9 @@
            </QueryFilterItem>
          </template>
          <template #btn>
            <el-button type="primary" @click="handleExport()">回单导出</el-button>
            <el-button type="primary" @click="exportPersonalUserTransactionEreceipts()"
              >回单导出</el-button
            >
            <el-button type="primary" @click="handleExport()">导出</el-button>
          </template>
        </ProTableQueryFilterBar>
@@ -82,7 +84,7 @@
import * as enterpriseWalletServices from '@/services/api/enterpriseWallet';
import * as userServices from '@/services/api/user';
import { Message } from '@bole-core/core';
import { downloadFileByUrl, format, setOSSLink } from '@/utils';
import { downloadFile, downloadFileByUrl, format, setOSSLink } from '@/utils';
import _ from 'lodash';
import { ModelValueType } from 'element-plus';
@@ -174,6 +176,32 @@
  { leading: true, trailing: false }
);
const exportPersonalUserTransactionEreceipts = _.debounce(
  async () => {
    if (paginationState.total === 0) {
      Message.warnMessage('没有数据可以导出哦~');
      return;
    }
    try {
      let params: API.ExportPersonalUserTransactionEreceiptsCommand = {
        enterpriseWalletId: id,
        createdTimeStart: format(extraParamState.creationTime?.[0] ?? '', 'YYYY-MM-DD 00:00:00'),
        createdTimeEnd: format(extraParamState.creationTime?.[1] ?? '', 'YYYY-MM-DD 23:59:59'),
      };
      let res = await userServices.exportPersonalUserTransactionEreceipts(params, {
        responseType: 'blob',
        getResponse: true,
      });
      if (res) {
        // @ts-ignore
        downloadFile(res?.data, `电子回单`, 'zip');
      }
    } catch (error) {}
  },
  1000,
  { leading: true, trailing: false }
);
onMounted(() => {
  state.loading = false;
  getList();
src/views/FinanceManage/components/CustomerBalanceManageView.vue
New file
@@ -0,0 +1,94 @@
<template>
  <LoadingLayout :loading="state.loading">
    <AppContainer>
      <ProTableV2
        v-bind="proTableProps"
        :columns="CustomerBalanceManageColumns"
        :operationBtns="operationBtns"
      >
      </ProTableV2>
    </AppContainer>
  </LoadingLayout>
</template>
<script setup lang="ts">
import {
  ProTableV2,
  LoadingLayout,
  AppContainer,
  useTable,
  defineOperationBtns,
} from '@bole-core/components';
import * as enterpriseCooperationWalletServices from '@/services/api/enterpriseCooperationWallet';
import { CustomerBalanceManageColumns } from '../constants';
defineOptions({
  name: 'CustomerBalanceManageView',
});
const operationBtns = defineOperationBtns([
  {
    data: {
      enCode: 'recordBtn',
      name: '充值记录',
    },
    emits: {
      onClick: (role: API.GetCooperationWalletsQueryResultItem) => goDetail(role),
    },
  },
]);
const router = useRouter();
const BaseState = {
  loading: true,
};
const state = reactive({ ...BaseState });
onMounted(async () => {
  await getList();
  state.loading = false;
});
const {
  getDataSource: getList,
  proTableProps,
  paginationState,
  extraParamState,
  reset,
} = useTable(
  async ({ pageIndex, pageSize }, extraParamState) => {
    try {
      let params: API.GetCooperationWalletsQuery = {
        pageModel: {
          rows: pageSize,
          page: pageIndex,
          orderInput: extraParamState.orderInput,
        },
      };
      let res = await enterpriseCooperationWalletServices.getCooperationWallets(params, {
        showLoading: !state.loading,
      });
      return res;
    } catch (error) {}
  },
  {
    defaultExtraParams: {
      orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }],
    },
    columnsRenderProps: {
      balance: { type: 'money' },
    },
  }
);
function goDetail(row: API.GetCooperationWalletsQueryResultItem) {
  router.push({
    name: 'CustomerRechargeRecord',
    params: {
      id: row?.id ?? '',
    },
  });
}
</script>
src/views/FinanceManage/components/CustomerRechargeDialog.vue
New file
@@ -0,0 +1,170 @@
<template>
  <ProDialog :title="title" v-model="visible" @close="onDialogClose" destroy-on-close draggable>
    <PortraitTableWithAttachment v-bind="portraitTableWithAttachmentProps" />
    <ProForm
      :model="form"
      ref="dialogForm"
      label-width="90px"
      style="margin-top: 20px"
      :is-read="form.isDetail"
    >
      <ProFormItemV2
        label="充值状态:"
        prop="transactionStatus"
        :check-rules="[{ message: '请选择充值状态' }]"
      >
        <ProFormRadio v-model="form.transactionStatus" :value-enum="transactionStatusText" />
      </ProFormItemV2>
      <ProFormItemV2 label="备注:" prop="remark">
        <ProFormTextArea
          v-model="form.remark"
          placeholder="请输入备注"
          :rows="4"
          :maxlength="150"
          show-word-limit
        />
      </ProFormItemV2>
    </ProForm>
    <template #footer>
      <span class="dialog-footer">
        <el-button @click="emit('onCancel')">取 消</el-button>
        <el-button type="primary" @click="handleConfirm">确 定</el-button>
      </span>
    </template>
  </ProDialog>
</template>
<script setup lang="ts">
import { FormInstance } from 'element-plus';
import {
  ProDialog,
  ProForm,
  ProFormItemV2,
  ProFormRadio,
  ProFormTextArea,
} from '@bole-core/components';
import { usePortraitTableWithAttachment } from '@/hooks';
import { convertApi2FormUrl } from '@/utils';
import { useQuery } from '@tanstack/vue-query';
import * as enterpriseCooperationWalletServices from '@/services/api/enterpriseCooperationWallet';
import { EnumEnterpriseCooperationWalletTransactionStatusTextForConfirm } from '@/constants';
import _ from 'lodash';
defineOptions({
  name: 'CustomerRechargeDialog',
});
const visible = defineModel({ type: Boolean });
type Form = {
  title?: string;
  id: string;
  cooperationId: string;
  transactionStatus: EnumEnterpriseCooperationWalletTransactionStatus;
  remark: string;
  isDetail: boolean;
};
const form = defineModel<Form>('form');
const title = computed(() => (form.value.isDetail ? '充值记录' : '确认充值'));
const transactionStatusText = computed(() =>
  form.value.isDetail
    ? EnumEnterpriseCooperationWalletTransactionStatusText
    : EnumEnterpriseCooperationWalletTransactionStatusTextForConfirm
);
const emit = defineEmits<{
  (e: 'onConfirm'): void;
  (e: 'onCancel'): void;
}>();
watch(
  () => visible.value,
  (val) => {
    if (val) {
      refetch();
    }
  }
);
const { data: detail, refetch } = useQuery({
  queryKey: [
    'enterpriseCooperationWalletServices/getCooperationWalletRechargeTransaction',
    form.value.id,
  ],
  queryFn: async () => {
    return await enterpriseCooperationWalletServices.getCooperationWalletRechargeTransaction({
      id: form.value.id,
    });
  },
  placeholderData: () => ({} as API.GetCooperationWalletRechargeTransactionQueryResult),
  onSuccess(data) {
    form.value.cooperationId = data.cooperationId ?? '';
    if (form.value.isDetail) {
      form.value.transactionStatus = data.transactionStatus;
      form.value.remark = data.remark ?? '';
    }
  },
  enabled: computed(() => !!form.value.id),
});
const { portraitTableWithAttachmentProps } = usePortraitTableWithAttachment({
  data: detail,
  annexList: computed(() =>
    detail.value?.files ? detail.value?.files.map((item) => convertApi2FormUrl(item)) : []
  ),
  columns: [
    {
      label: '充值单位',
      key: 'receiveUnit',
    },
    {
      label: '开户账号',
      key: 'receiveAccount',
    },
    {
      label: '充值金额',
      key: 'amount',
      type: 'money',
    },
    {
      label: '充值时间',
      key: 'createdTime',
      type: 'date',
    },
  ],
});
const dialogForm = ref<FormInstance>();
function onDialogClose() {
  if (!dialogForm.value) return;
  dialogForm.value.resetFields();
}
const handleConfirm = _.debounce(
  () => {
    if (form.value.isDetail) {
      emit('onCancel');
    } else {
      if (!dialogForm.value) return;
      dialogForm.value.validate((valid) => {
        if (valid) {
          emit('onConfirm');
        } else {
          return;
        }
      });
    }
  },
  1000,
  {
    leading: true,
    trailing: false,
  }
);
</script>
<style lang="scss" scoped>
@use '@/style/common.scss' as *;
</style>
src/views/FinanceManage/components/DistributionDetailView.vue
@@ -6,6 +6,14 @@
        :columns="DistributionDetailColumns"
        :showOperationColumn="false"
      >
        <template #settlementStatus="{ row }">
          {{
            row.settlementStatus !== EnumTaskSettlementStatus.InProcess &&
            row.settlementStatus !== EnumTaskSettlementStatus.Wait
              ? '已确认'
              : '待确认'
          }}
        </template>
      </ProTableV2>
    </AppContainer>
  </LoadingLayout>
@@ -21,7 +29,11 @@
} from '@bole-core/components';
import { DistributionDetailColumns } from '../constants';
import * as userServices from '@/services/api/user';
import { EnumTaskSettlementStatusText, SettlementReceiveStatusText } from '@/constants';
import {
  EnumTaskSettlementStatusText,
  SettlementReceiveStatusText,
  EnumTaskSettlementStatus,
} from '@/constants';
defineOptions({
  name: 'DistributionDetailView',
@@ -65,7 +77,17 @@
      settlementStatus: { type: 'enum', valueEnum: EnumTaskSettlementStatusText },
      settlementAccess: { type: 'enum', valueEnum: EnumEnterpriseWalletAccessText },
      settlementReceiveStatus: { type: 'enum', valueEnum: SettlementReceiveStatusText },
      settlementAuditStatus: {
        type: 'text',
        formatter: (row: API.GetPersonalUserTransactionsQueryResultItem) => {
          return row.settlementAuditStatus === EnumTaskSettlementAuditStatus.Pass
            ? '已提交'
            : '待提交';
        },
      },
      settlementTime: { type: 'date' },
      transDate: { type: 'date' },
      createdTime: { type: 'date' },
    },
  }
);
src/views/FinanceManage/components/EnterpriseBalanceManageView.vue
New file
@@ -0,0 +1,132 @@
<template>
  <LoadingLayout :loading="state.loading">
    <AppContainer>
      <ProTableV2
        v-bind="proTableProps"
        :columns="BalanceManageColumns"
        :operationBtns="operationBtns"
      >
      </ProTableV2>
    </AppContainer>
    <RechargeEnterpriseWalletDialog v-bind="dialogRechargeProps" />
  </LoadingLayout>
</template>
<script setup lang="ts">
import {
  ProTableV2,
  LoadingLayout,
  AppContainer,
  useTable,
  useFormDialog,
  defineOperationBtns,
  ProTabs,
  ProTabPane,
} from '@bole-core/components';
import * as enterpriseWalletServices from '@/services/api/enterpriseWallet';
import { BalanceManageColumns } from '../constants';
import RechargeEnterpriseWalletDialog from '@/views/ServiceChargeManage/components/RechargeEnterpriseWalletDialog.vue';
import { EnumEnterpriseWalletAccess, EnumEnterpriseWalletAccessText } from '@/constants';
defineOptions({
  name: 'EnterpriseBalanceManageView',
});
const operationBtns = defineOperationBtns([
  {
    data: {
      enCode: 'rechargeBtn',
      name: '充值',
    },
    emits: {
      onClick: (role) => openDialog(role),
    },
    extraProps: {
      hide: (role: API.GetEnterpriseWalletBalancesQueryResultItem) =>
        role.access !== EnumEnterpriseWalletAccess.Alipay,
    },
  },
  {
    data: {
      enCode: 'detailBtn',
      name: '详情',
    },
    emits: {
      onClick: (role) => goDetail(role),
    },
  },
]);
const router = useRouter();
const BaseState = {
  loading: true,
};
const state = reactive({ ...BaseState });
onMounted(async () => {
  await getList();
  state.loading = false;
});
const {
  getDataSource: getList,
  proTableProps,
  paginationState,
  extraParamState,
  reset,
} = useTable(
  async ({ pageIndex, pageSize }, extraParamState) => {
    try {
      let params: API.GetEnterpriseWalletBalancesQuery = {
        pageModel: {
          rows: pageSize,
          page: pageIndex,
          orderInput: extraParamState.orderInput,
        },
      };
      let res = await enterpriseWalletServices.getEnterpriseWalletBalances(params, {
        showLoading: !state.loading,
      });
      return res;
    } catch (error) {}
  },
  {
    defaultExtraParams: {
      orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }],
    },
    columnsRenderProps: {
      access: { type: 'enum', valueEnum: EnumEnterpriseWalletAccessText },
      balance: { type: 'money' },
      availableBalance: { type: 'money' },
      freezeBalance: { type: 'money' },
    },
  }
);
const {
  dialogProps: dialogRechargeProps,
  handleAdd: handleRechargeAdd,
  editForm: rechargeEditForm,
} = useFormDialog({
  defaultFormParams: {
    access: EnumEnterpriseWalletAccess.Alipay,
    amount: null as number,
    remark: '',
  },
});
function openDialog(row) {
  handleRechargeAdd();
}
function goDetail(row: API.GetEnterpriseWalletBalancesQueryResultItem) {
  router.push({
    name: 'EnterpriseBalanceManageDetail',
    params: {
      id: row?.id ?? '',
    },
  });
}
</script>
src/views/FinanceManage/components/RechargeRecordialog.vue
New file
@@ -0,0 +1,102 @@
<template>
  <ProDialog title="充值详情" v-model="visible" @close="onDialogClose" destroy-on-close draggable>
    <PortraitTableWithAttachment v-bind="portraitTableWithAttachmentProps" />
    <template #footer>
      <span class="dialog-footer">
        <el-button @click="emit('onCancel')">取 消</el-button>
        <el-button type="primary" @click="emit('onCancel')">确 定</el-button>
      </span>
    </template>
  </ProDialog>
</template>
<script setup lang="ts">
import { FormInstance } from 'element-plus';
import { ProDialog } from '@bole-core/components';
import { usePortraitTableWithAttachment } from '@/hooks';
import { useQuery } from '@tanstack/vue-query';
import { EnumEnterpriseCooperationWalletTransactionStatusText } from '@/constants';
import * as enterpriseCooperationWalletServices from '@/services/api/enterpriseCooperationWallet';
import { convertApi2FormUrl } from '@/utils';
defineOptions({
  name: 'RechargeRecordialog',
});
const visible = defineModel({ type: Boolean });
type Form = {
  title?: string;
  id: string;
};
const form = defineModel<Form>('form');
const emit = defineEmits<{
  (e: 'onConfirm'): void;
  (e: 'onCancel'): void;
}>();
watch(
  () => visible.value,
  (val) => {
    if (val) {
      refetch();
    }
  }
);
const { data: detail, refetch } = useQuery({
  queryKey: [
    'enterpriseCooperationWalletServices/getCooperationWalletRechargeTransaction',
    form.value.id,
  ],
  queryFn: async () => {
    return await enterpriseCooperationWalletServices.getCooperationWalletRechargeTransaction({
      id: form.value.id,
    });
  },
  placeholderData: () => ({} as API.GetCooperationWalletRechargeTransactionQueryResult),
  enabled: computed(() => !!form.value.id),
});
const { portraitTableWithAttachmentProps } = usePortraitTableWithAttachment({
  data: detail,
  annexList: computed(() =>
    detail.value?.files ? detail.value?.files.map((item) => convertApi2FormUrl(item)) : []
  ),
  columns: [
    {
      label: '充值单位',
      key: 'receiveUnit',
    },
    {
      label: '开户账号',
      key: 'receiveAccount',
    },
    {
      label: '充值金额',
      key: 'amount',
      type: 'money',
    },
    {
      label: '充值时间',
      key: 'createdTime',
      type: 'date',
    },
    {
      label: '充值状态',
      key: 'transactionStatus',
      type: 'enum',
      valueEnum: EnumEnterpriseCooperationWalletTransactionStatusText,
    },
  ],
});
const dialogForm = ref<FormInstance>();
function onDialogClose() {
  if (!dialogForm.value) return;
  dialogForm.value.resetFields();
}
</script>
src/views/FinanceManage/constants/columns.ts
@@ -4,7 +4,7 @@
  {
    id: '1',
    enCode: 'enterpriseName',
    name: '所属客户',
    name: '客户名称',
  },
  {
    id: '2',
@@ -26,11 +26,6 @@
    enCode: 'receiveName',
    name: '姓名',
  },
  // {
  //   id: '3',
  //   enCode: 'settlementOrderName',
  //   name: '结算单名称',
  // },
  {
    id: '6',
    enCode: 'settlementAccess',
@@ -46,25 +41,35 @@
    enCode: 'amount',
    name: '结算金额',
  },
  // {
  //   id: '9',
  //   enCode: 'settlementStatus',
  //   name: '结算状态',
  // },
  {
    id: '9',
    enCode: 'settlementStatus',
    name: '结算单状态',
    name: '结算单确认状态',
  },
  {
    id: '10',
    enCode: 'settlementTime',
    name: '确认日期',
  },
  {
    id: '11',
    enCode: 'settlementAuditStatus',
    name: '结算单提交状态',
  },
  {
    id: '12',
    enCode: 'settlementAuditTime',
    name: '提交时间',
  },
  {
    id: '13',
    enCode: 'settlementReceiveStatus',
    name: '到账状态',
  },
  {
    id: '11',
    enCode: 'settlementTime',
    name: '结算日期',
    id: '14',
    enCode: 'transDate',
    name: '到账时间',
  },
]);
@@ -101,6 +106,34 @@
    id: '2',
    enCode: 'identity',
    name: '户号',
  },
  {
    id: '3',
    enCode: 'balance',
    name: '账户余额',
  },
  {
    id: '4',
    enCode: 'availableBalance',
    name: '可用余额',
  },
  {
    id: '5',
    enCode: 'freezeBalance',
    name: '已冻结',
  },
]);
export const CustomerBalanceManageColumns = defineColumns([
  {
    id: '1',
    enCode: 'partyAEnterpriseName',
    name: '客户名称',
  },
  {
    id: '2',
    enCode: 'partyAEnterpriseSocietyCreditCode',
    name: '信用代码',
  },
  {
    id: '3',
@@ -158,3 +191,64 @@
    name: '电子回单',
  },
]);
export const CustomerRechargeManageColumns = defineColumns([
  {
    id: '1',
    enCode: 'partyAEnterpriseName',
    name: '客户名称',
  },
  {
    id: '2',
    enCode: 'partyAEnterpriseSocietyCreditCode',
    name: '信用代码',
  },
  {
    id: '3',
    enCode: 'amount',
    name: '充值金额',
  },
  {
    id: '4',
    enCode: 'transactionStatus',
    name: '充值状态',
  },
]);
export const CustomerRechargeRecordColumns = defineColumns([
  {
    id: '1',
    enCode: 'partyAEnterpriseName',
    name: '客户名称',
  },
  {
    id: '2',
    enCode: 'receiveBank',
    name: '开户总行',
  },
  {
    id: '3',
    enCode: 'receiveBankBranch',
    name: '开户支行',
  },
  {
    id: '4',
    enCode: 'receiveAccount',
    name: '户号',
  },
  {
    id: '5',
    enCode: 'amount',
    name: '充值金额',
  },
  {
    id: '6',
    enCode: 'createdTime',
    name: '充值时间',
  },
  {
    id: '7',
    enCode: 'transactionStatus',
    name: '充值状态',
  },
]);
src/views/ServiceChargeManage/components/RechargeEnterpriseWalletDialog.vue
@@ -94,9 +94,10 @@
    };
    let res = await enterpriseWalletServices.rechargeEnterpriseWallet(params);
    if (res) {
      handleAlipayWalletAdd({
        alipayUrl: res.payUrl,
      });
      // handleAlipayWalletAdd({
      //   alipayUrl: res.payUrl,
      // });
      window.open(res.payUrl, '_blank');
    }
  } catch (error) {}
}
src/views/UserManage/UserManageList.vue
@@ -90,18 +90,18 @@
      onClick: (role) => openResetPasswordDialog(role),
    },
  },
  // {
  //   data: {
  //     enCode: 'resetOperatorPasswordBtn',
  //     name: '重置操作密码',
  //   },
  //   props: {
  //     type: 'danger',
  //   },
  //   emits: {
  //     onClick: (role) => openResetOperatorPasswordDialog(role),
  //   },
  // },
  {
    data: {
      enCode: 'resetOperatorPasswordBtn',
      name: '重置操作密码',
    },
    props: {
      type: 'danger',
    },
    emits: {
      onClick: (role) => openResetOperatorPasswordDialog(role),
    },
  },
]);
const router = useRouter();
src/views/UserManage/components/AddOrEditUserDialog.vue
@@ -28,7 +28,7 @@
      >
        <ProFormText placeholder="请输入密码" v-model.trim="innerForm.password"></ProFormText>
      </ProFormItemV2>
      <!-- <ProFormItemV2
      <ProFormItemV2
        v-if="!isEdit"
        label="操作密码"
        prop="operatorPassword"
@@ -44,7 +44,7 @@
          placeholder="请输入操作密码"
          v-model.trim="innerForm.operatorPassword"
        ></ProFormText>
      </ProFormItemV2> -->
      </ProFormItemV2>
      <ProFormItemV2 label="角色" prop="roleIds" :check-rules="[{ message: '请选择角色' }]">
        <ProFormCheckbox
          v-model="innerForm.roleIds"