From 92034e64c9bb28c262b0fcb90660b58328aa2f5e Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期四, 23 十月 2025 14:35:05 +0800
Subject: [PATCH] fix: bug

---
 src/views/BalanceManage/BalanceManage.vue                    |   34 ++++----
 src/hooks/useUser.ts                                         |   10 ++
 src/services/api/typings.d.ts                                |  138 ++++++++++++++++++++++++++++++++++
 src/views/BalanceManage/components/RewardGrantRecordView.vue |    6 -
 src/services/api/ParkBountyApply.ts                          |    8 ++
 5 files changed, 175 insertions(+), 21 deletions(-)

diff --git a/src/hooks/useUser.ts b/src/hooks/useUser.ts
index 1d23af1..d3fab41 100644
--- a/src/hooks/useUser.ts
+++ b/src/hooks/useUser.ts
@@ -2,6 +2,7 @@
 import { UserUtils } from '@bole-core/core';
 // import * as userRoleServices from '@/services/api/UserRole';
 import * as userServices from '@/services/api/User';
+import * as ParkBountyApplyServices from '@/services/api/ParkBountyApply';
 import { useQuery, useQueryClient } from '@tanstack/vue-query';
 
 export function useIsSystemAdmin() {
@@ -16,8 +17,17 @@
 
   const { userId, userInfo } = storeToRefs(userStore);
 
+  const { data: userDetail } = useQuery({
+    queryKey: ['ParkBountyApplyServices/get818UserInfo'],
+    queryFn: async () => {
+      return await ParkBountyApplyServices.get818UserInfo();
+    },
+    placeholderData: () => ({} as API.UserInfoV2),
+  });
+
   return {
     user: userInfo,
     userId: userId,
+    userDetail: userDetail,
   };
 }
diff --git a/src/services/api/ParkBountyApply.ts b/src/services/api/ParkBountyApply.ts
index ae8882e..4d95e5d 100644
--- a/src/services/api/ParkBountyApply.ts
+++ b/src/services/api/ParkBountyApply.ts
@@ -47,6 +47,14 @@
   });
 }
 
+/** 姝ゅ鍚庣娌℃湁鎻愪緵娉ㄩ噴 GET /api/ParkBountyApply/Get818UserInfo */
+export async function get818UserInfo(options?: API.RequestConfig) {
+  return request<API.UserInfoV2>('/api/ParkBountyApply/Get818UserInfo', {
+    method: 'GET',
+    ...(options || {}),
+  });
+}
+
 /** 姝ゅ鍚庣娌℃湁鎻愪緵娉ㄩ噴 POST /api/ParkBountyApply/GetEnterpriseDrawWithList */
 export async function getEnterpriseDrawWithList(
   body: API.GetEnterpriseDrawWithListInput,
diff --git a/src/services/api/typings.d.ts b/src/services/api/typings.d.ts
index 793cec4..faa86b6 100644
--- a/src/services/api/typings.d.ts
+++ b/src/services/api/typings.d.ts
@@ -743,6 +743,8 @@
 
   type EnterpriseRechargeStatusEnum = 10 | 20 | 30;
 
+  type EnterpriseTypeEnum = 10 | 20 | 30 | 40;
+
   interface EntityExtensionDto {
     properties?: Record<string, any>;
     configuration?: Record<string, any>;
@@ -853,6 +855,8 @@
   type FinanceStatusEnum = 1 | 2 | 3;
 
   type FinanceTypeEnum = 10 | 20;
+
+  type GenderTypeEnum = 1 | 2;
 
   interface GetEffectingStaffListInput {
     claimDateTime?: string;
@@ -1598,6 +1602,8 @@
     errorList?: ImportInsStaffAnalysisList[];
   }
 
+  type IndustrialParkStatusEnum = 10 | -10;
+
   type InsuranceClaimAttachmentBusinessTypeEnum = 10 | 20 | 30 | 40 | 50;
 
   interface InsuranceClaimAttachmentOutput {
@@ -2021,6 +2027,8 @@
 
   type InsureProductSettingStatusEnum = 10 | -10;
 
+  type InvoicingStatusEnum = 0 | 10 | 20;
+
   interface IStringValueType {
     name?: string;
     properties?: Record<string, any>;
@@ -2054,6 +2062,8 @@
     name?: string;
     resource?: string;
   }
+
+  type MatchMakingIdentityEnum = 10 | 20;
 
   interface MethodParameterApiDescriptionModel {
     name?: string;
@@ -3076,6 +3086,12 @@
     totalAmount?: number;
   }
 
+  type UserCertificationAuditStatusEnum = 0 | 10 | 30 | 40;
+
+  type UserCertificationChannelEnum = 10 | 20;
+
+  type UserCertificationStatusEnum = 0 | 20 | 30;
+
   interface UserData {
     id?: string;
     tenantId?: string;
@@ -3126,6 +3142,112 @@
     batchUpdateMessage?: boolean;
     /** 浼佷笟鍚嶇О */
     enterpriseName?: string;
+  }
+
+  interface UserInfoV2 {
+    /** 鐢ㄦ埛Id */
+    userId?: string;
+    /** 鐢ㄦ埛鍚� */
+    userName?: string;
+    /** 鎵嬫満鍙� */
+    phoneNumber?: string;
+    /** 鐢ㄦ埛鐧诲綍鎵�浣跨敤鐨勬墜鏈哄彿 */
+    userPhoneNumber?: string;
+    /** 璐︽埛浣欓 */
+    amount?: number;
+    /** 鏀跺埌鎵撹祻 */
+    reward?: number;
+    /** 鏄电О */
+    nickName?: string;
+    userCertificationAuditStatus?: UserCertificationAuditStatusEnum;
+    /** 鐢ㄦ埛璁よ瘉Id */
+    userCertificationId?: string;
+    /** 浼佷笟璁よ瘉鐨勫悕绉� */
+    customerName?: string;
+    /** 浼佷笟缁熶竴淇$敤浠g爜 */
+    societyCreditCode?: string;
+    /** 鐢ㄦ埛璁よ瘉Id(鍏徃Id) */
+    companyId?: string;
+    /** 娉曚汉鍚嶇О */
+    legalPersonName?: string;
+    /** 骞存秷璐� */
+    yearlyConsume?: number;
+    /** 骞翠骇鍝佽喘涔版秷璐� */
+    yearlyPurchasedConsume?: number;
+    /** 骞存墦璧忔秷璐� */
+    yearlyRewardConsume?: number;
+    /** 骞翠骇鍝佸箍鍛婃姇鏀炬秷璐� */
+    yearlyProductAdConsume?: number;
+    /** 骞磋祫璁箍鍛婃姇鏀炬秷璐� */
+    yearlyInformationAdConsume?: number;
+    /** 1锛屼紒涓� 2锛� 涓汉 */
+    userType?: number;
+    authType?: EnterpriseTypeEnum;
+    userCertificationStatus?: UserCertificationStatusEnum;
+    /** 0 鏈紑閫� 10 寰呭鏍�   20鍔炵悊涓�  30閫氳繃  -20 椹冲洖 40 涓嬫灦 50 绯荤粺涓嬫灦 */
+    openHRSiteStatus?: number;
+    /** 鑱旂郴浜� */
+    contacter?: string;
+    /** 鐢ㄦ埛璁よ瘉杩囨湡鏃ユ湡 */
+    userCertificationExpirationTime?: string;
+    invoicingStatus?: InvoicingStatusEnum;
+    /** 骞村寮�濮嬫椂闂� */
+    annualAuditStartTime?: string;
+    /** 鏀粯鍙戠エ鍦板潃 */
+    payInvoicingUrl?: string;
+    /** 缁戝畾閭鍦板潃 */
+    bindEmailAddress?: string;
+    /** 鐢ㄦ埛澶村儚鍦板潃 */
+    avatarUrl?: string;
+    genderType?: GenderTypeEnum;
+    /** 鑱岀О */
+    jobTitle?: string;
+    /** 鐪乧ode */
+    provinceCode?: number;
+    /** 甯俢ode */
+    cityCode?: number;
+    /** 鍖哄幙code */
+    countyCode?: number;
+    /** 鐪� */
+    provinceName?: string;
+    /** 甯� */
+    cityName?: string;
+    /** 鍖哄幙 */
+    countyName?: string;
+    /** 璇︾粏鍦板潃 */
+    addressDetail?: string;
+    /** 寰俊浜岀淮鐮佸浘鐗� */
+    wxQrCodeUrl?: string;
+    /** 涓汉淇℃伅閭鍦板潃 */
+    userInfoEmailAddress?: string;
+    /** 淇濋櫓绛剧害鐘舵�� 0鏈绾� 10宸茬绾� */
+    insureSignStatus?: number;
+    /** 鏄惁鎻愪氦閽卞寘寮�鎴风敵璇� */
+    isApplyWalletAccountOpen?: boolean;
+    /** 鑱旂郴鐢佃瘽 */
+    contactPhone?: string;
+    /** 閽卞寘寮�鎴风姸鎬� */
+    walletAccountOpenStatus?: WalletAccountOpenStatusInfo[];
+    /** 閽卞寘鐘舵�� */
+    walletMainStatus?: WalletAccountTypeMainStatusInfo[];
+    matchMakingIdentity?: MatchMakingIdentityEnum;
+    /** 鐢靛瓙绛惧嵃绔犲浘鐗囩敓鎴愮姸鎬� 0鏈敓鎴� 1宸茬敓鎴� */
+    signatureImageStatus?: number;
+    certificationChannel?: UserCertificationChannelEnum;
+    industrialParkId?: string;
+    industrialParkName?: string;
+    suportEnterpriseUpload?: boolean;
+    suportPlatRecharge?: boolean;
+    rewardEnable?: boolean;
+    suportWithDraw?: boolean;
+    industrialParkStatus?: IndustrialParkStatusEnum;
+    isHasBountyApply?: boolean;
+    /** 鏄惁鍙互鐧诲綍鐢靛瓙绛� */
+    canLoginUserSign?: boolean;
+    /** 鏄惁鍙互鐧诲綍姹熶綉淇� */
+    canLoginJYB?: boolean;
+    /** 鏄惁鍙互鐧诲綍鐏垫椿鐢ㄥ伐 */
+    canLoginFlexJob?: boolean;
   }
 
   interface UserListOutput {
@@ -3202,6 +3324,22 @@
     sequence?: number;
   }
 
+  type WalletAccountOpenStatusEnum = 10 | 20;
+
+  interface WalletAccountOpenStatusInfo {
+    walletAccountType?: WalletAccountTypeEnum;
+    walletAccountOpenStatus?: WalletAccountOpenStatusEnum;
+  }
+
+  type WalletAccountTypeEnum = 10 | 20 | 30;
+
+  interface WalletAccountTypeMainStatusInfo {
+    walletAccountType?: WalletAccountTypeEnum;
+    walletMainStatus?: WalletMainStatusEnum;
+  }
+
+  type WalletMainStatusEnum = 10 | -20 | -10;
+
   interface WindowsTimeZone {
     timeZoneId?: string;
   }
diff --git a/src/views/BalanceManage/BalanceManage.vue b/src/views/BalanceManage/BalanceManage.vue
index 15e8037..15a70b3 100644
--- a/src/views/BalanceManage/BalanceManage.vue
+++ b/src/views/BalanceManage/BalanceManage.vue
@@ -71,18 +71,18 @@
         <ProTabPane lazy label="鎷ㄤ粯璁板綍" name="Payment">
           <PaymentRecordView></PaymentRecordView>
         </ProTabPane>
-        <!-- <template v-if="sceneThree || sceneFour"> -->
-        <ProTabPane lazy label="濂栧姳鍙戞斁璁板綍" name="RewardGrant">
-          <RewardGrantRecordView></RewardGrantRecordView>
-        </ProTabPane>
-        <ProTabPane lazy label="鍏呭�艰褰�" name="Recharge">
-          <RechargeRecordView ref="rechargeRecordRef"></RechargeRecordView>
-        </ProTabPane>
-        <ProTabPane lazy label="娑堣垂璁板綍" name="Consume">
-          <ConsumeRecordView></ConsumeRecordView>
-        </ProTabPane>
-        <!-- </template> -->
-        <ProTabPane lazy label="鎻愮幇璁板綍" name="Withdrawal">
+        <template v-if="sceneThree || sceneFour">
+          <ProTabPane lazy label="濂栧姳鍙戞斁璁板綍" name="RewardGrant">
+            <RewardGrantRecordView></RewardGrantRecordView>
+          </ProTabPane>
+          <ProTabPane lazy label="鍏呭�艰褰�" name="Recharge">
+            <RechargeRecordView ref="rechargeRecordRef"></RechargeRecordView>
+          </ProTabPane>
+          <ProTabPane lazy label="娑堣垂璁板綍" name="Consume">
+            <ConsumeRecordView></ConsumeRecordView>
+          </ProTabPane>
+        </template>
+        <ProTabPane lazy label="鎻愮幇璁板綍" name="Withdrawal" v-if="sceneTwo || sceneFour">
           <WithdrawalRecordView ref="withdrawalRecordRef"></WithdrawalRecordView>
         </ProTabPane>
       </ProTabs>
@@ -114,20 +114,20 @@
   tabType: 'Consume',
 };
 
-const { user } = useUser();
+const { userDetail } = useUser();
 const state = reactive({ ...BaseState });
 
 const sceneOne = computed(() => {
-  // return !userDetail.value?.suportPlatRecharge && !userDetail.value?.suportWithDraw;
+  return !userDetail.value?.suportPlatRecharge && !userDetail.value?.suportWithDraw;
 });
 const sceneTwo = computed(() => {
-  // return !userDetail.value?.suportPlatRecharge && userDetail.value?.suportWithDraw;
+  return !userDetail.value?.suportPlatRecharge && userDetail.value?.suportWithDraw;
 });
 const sceneThree = computed(() => {
-  // return userDetail.value?.suportPlatRecharge && !userDetail.value?.suportWithDraw;
+  return userDetail.value?.suportPlatRecharge && !userDetail.value?.suportWithDraw;
 });
 const sceneFour = computed(() => {
-  // return userDetail.value?.suportPlatRecharge && userDetail.value?.suportWithDraw;
+  return userDetail.value?.suportPlatRecharge && userDetail.value?.suportWithDraw;
 });
 
 const { isLoading, data: detail } = useQuery({
diff --git a/src/views/BalanceManage/components/RewardGrantRecordView.vue b/src/views/BalanceManage/components/RewardGrantRecordView.vue
index ced3e51..2b5c6e2 100644
--- a/src/views/BalanceManage/components/RewardGrantRecordView.vue
+++ b/src/views/BalanceManage/components/RewardGrantRecordView.vue
@@ -47,14 +47,12 @@
 ];
 
 const route = useRoute();
-const router = useRouter();
-const id = route.params.id as string;
 const BaseState = {
   loading: true,
 };
 
 const state = reactive({ ...BaseState });
-// const { userDetail } = useUser();
+const { userDetail } = useUser();
 
 const {
   getDataSource: getList,
@@ -70,7 +68,7 @@
           page: pageIndex,
           orderInput: extraParamState.orderInput,
         },
-        // id: userDetail.value?.userId ?? '',
+        id: userDetail.value?.userId ?? '',
       };
       let res = await parkBountyApplyServices.getParkCustomerBountySettleList(params, {
         showLoading: !state.loading,

--
Gitblit v1.9.1