From 6fc60fcdccd4c99e43be482ecf3757108e833c34 Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期二, 04 十一月 2025 17:27:34 +0800
Subject: [PATCH] fix: 四流
---
src/services/api/index.ts | 2
src/store/modules/permission.ts | 6
src/views/StatisticalReport/RewardStatistics.vue | 38 +++--
src/constants/module.ts | 12 +
src/services/api/User.ts | 15 ++
src/services/api/typings.d.ts | 52 +++++++
src/router/index.ts | 150 ++++++++++----------
src/services/api/EnterpriseMaterial.ts | 18 ++
src/views/StatisticalReport/hooks/rewardStatistics.ts | 34 ++++
src/services/api/ParkBountyApply.ts | 30 ++++
src/views/Reward/components/RewardApplyTradeCheckDialog.vue | 2
src/services/api/BaseModuleNew.ts | 33 ++++
12 files changed, 299 insertions(+), 93 deletions(-)
diff --git a/src/constants/module.ts b/src/constants/module.ts
index 798ceca..6d25c55 100644
--- a/src/constants/module.ts
+++ b/src/constants/module.ts
@@ -132,3 +132,15 @@
width: 80,
},
];
+
+export enum EnumMenuScene {
+ /// 鍚庡彴
+ Back = 0,
+ /// 鏀垮姟绔�
+ Goverment = 1,
+}
+
+export const EnumMenuSceneText = {
+ [EnumMenuScene.Back]: '鍚庡彴',
+ [EnumMenuScene.Goverment]: '鏀垮姟绔�',
+};
diff --git a/src/router/index.ts b/src/router/index.ts
index 89c9087..6fb9c51 100644
--- a/src/router/index.ts
+++ b/src/router/index.ts
@@ -134,81 +134,81 @@
},
],
},
- {
- path: '/MaterialReview',
- redirect: 'noRedirect',
- component: Layout,
- hidden: false,
- alwaysShow: true,
- meta: {
- rank: 10020,
- title: '鏉愭枡瀹℃牳',
- rootMenu: true,
- icon: 'home',
- },
- children: [
- {
- path: '/MaterialReviewList',
- name: 'MaterialReviewList',
- hidden: false,
- alwaysShow: true,
- component: () => import('@/views/MaterialReview/MaterialReview.vue'),
- meta: {
- rank: 10021,
- title: '鏉愭枡鍒濆',
- // rootMenu: true,
- icon: 'home',
- },
- },
- {
- path: '/MaterialReviewDetail/:id',
- name: 'MaterialReviewDetail',
- hidden: true,
- component: () => import('@/views/MaterialReview/MaterialReviewDetail.vue'),
- meta: {
- rank: 10022,
- title: '鏉愭枡瀹℃牳璇︽儏',
- rootMenu: false,
- },
- },
- {
- path: '/MaterialReviewAudit/:id',
- name: 'MaterialReviewAudit',
- hidden: true,
- component: () => import('@/views/MaterialReview/MaterialReviewAudit.vue'),
- meta: {
- rank: 10023,
- title: '瀹℃牳',
- rootMenu: false,
- },
- },
- {
- path: '/MaterialReReviewList',
- name: 'MaterialReReviewList',
- hidden: false,
- alwaysShow: true,
- component: () => import('@/views/MaterialReview/MaterialReReviewList.vue'),
- meta: {
- rank: 10021,
- title: '鏉愭枡澶嶅',
- // rootMenu: true,
- icon: 'home',
- },
- },
- {
- path: '/MaterialReReviewAudit/:id',
- name: 'MaterialReReviewAudit',
- hidden: true,
- component: () => import('@/views/MaterialReview/MaterialReReviewAudit.vue'),
- meta: {
- rank: 10021,
- title: '澶嶅',
- // rootMenu: true,
- icon: 'home',
- },
- },
- ],
- },
+ // {
+ // path: '/MaterialReview',
+ // redirect: 'noRedirect',
+ // component: Layout,
+ // hidden: false,
+ // alwaysShow: true,
+ // meta: {
+ // rank: 10020,
+ // title: '鏉愭枡瀹℃牳',
+ // rootMenu: true,
+ // icon: 'home',
+ // },
+ // children: [
+ // {
+ // path: '/MaterialReviewList',
+ // name: 'MaterialReviewList',
+ // hidden: false,
+ // alwaysShow: true,
+ // component: () => import('@/views/MaterialReview/MaterialReview.vue'),
+ // meta: {
+ // rank: 10021,
+ // title: '鏉愭枡鍒濆',
+ // // rootMenu: true,
+ // icon: 'home',
+ // },
+ // },
+ // {
+ // path: '/MaterialReviewDetail/:id',
+ // name: 'MaterialReviewDetail',
+ // hidden: true,
+ // component: () => import('@/views/MaterialReview/MaterialReviewDetail.vue'),
+ // meta: {
+ // rank: 10022,
+ // title: '鏉愭枡瀹℃牳璇︽儏',
+ // rootMenu: false,
+ // },
+ // },
+ // {
+ // path: '/MaterialReviewAudit/:id',
+ // name: 'MaterialReviewAudit',
+ // hidden: true,
+ // component: () => import('@/views/MaterialReview/MaterialReviewAudit.vue'),
+ // meta: {
+ // rank: 10023,
+ // title: '瀹℃牳',
+ // rootMenu: false,
+ // },
+ // },
+ // {
+ // path: '/MaterialReReviewList',
+ // name: 'MaterialReReviewList',
+ // hidden: false,
+ // alwaysShow: true,
+ // component: () => import('@/views/MaterialReview/MaterialReReviewList.vue'),
+ // meta: {
+ // rank: 10021,
+ // title: '鏉愭枡澶嶅',
+ // // rootMenu: true,
+ // icon: 'home',
+ // },
+ // },
+ // {
+ // path: '/MaterialReReviewAudit/:id',
+ // name: 'MaterialReReviewAudit',
+ // hidden: true,
+ // component: () => import('@/views/MaterialReview/MaterialReReviewAudit.vue'),
+ // meta: {
+ // rank: 10021,
+ // title: '澶嶅',
+ // // rootMenu: true,
+ // icon: 'home',
+ // },
+ // },
+ // ],
+ // },
{
path: '/Reward',
diff --git a/src/services/api/BaseModuleNew.ts b/src/services/api/BaseModuleNew.ts
new file mode 100644
index 0000000..7a09141
--- /dev/null
+++ b/src/services/api/BaseModuleNew.ts
@@ -0,0 +1,33 @@
+/* eslint-disable */
+// @ts-ignore
+import { request } from '@/utils/request';
+
+/** 鏌ヨ鎵�鏈夋ā鍧� GET /api/BaseModuleNew/GetAllModuleList */
+export async function getAllModuleList(
+ // 鍙犲姞鐢熸垚鐨凱aram绫诲瀷 (闈瀊ody鍙傛暟swagger榛樿娌℃湁鐢熸垚瀵硅薄)
+ params: API.APIgetAllModuleListParams,
+ options?: API.RequestConfig
+) {
+ return request<API.ModuleDto[]>('/api/BaseModuleNew/GetAllModuleList', {
+ method: 'GET',
+ params: {
+ ...params,
+ },
+ ...(options || {}),
+ });
+}
+
+/** 姝ゅ鍚庣娌℃湁鎻愪緵娉ㄩ噴 GET /api/BaseModuleNew/GetUserOrRoleModuleList */
+export async function getUserOrRoleModuleList(
+ // 鍙犲姞鐢熸垚鐨凱aram绫诲瀷 (闈瀊ody鍙傛暟swagger榛樿娌℃湁鐢熸垚瀵硅薄)
+ params: API.APIgetUserOrRoleModuleListParams,
+ options?: API.RequestConfig
+) {
+ return request<API.ModuleDto[]>('/api/BaseModuleNew/GetUserOrRoleModuleList', {
+ method: 'GET',
+ params: {
+ ...params,
+ },
+ ...(options || {}),
+ });
+}
diff --git a/src/services/api/EnterpriseMaterial.ts b/src/services/api/EnterpriseMaterial.ts
index ac06d23..3030a65 100644
--- a/src/services/api/EnterpriseMaterial.ts
+++ b/src/services/api/EnterpriseMaterial.ts
@@ -68,6 +68,24 @@
);
}
+/** 鑾峰彇浼佷笟鏉愭枡绠$悊鍒嗛〉鍒楄〃 POST /api/EnterpriseMaterial/GetEnterpriseMaterialManagePageTotal */
+export async function getEnterpriseMaterialManagePageTotal(
+ body: API.QueryEnterpriseMaterialManageListInput,
+ options?: API.RequestConfig
+) {
+ return request<API.EnterpriseMaterialManageListOutputPageOutput>(
+ '/api/EnterpriseMaterial/GetEnterpriseMaterialManagePageTotal',
+ {
+ method: 'POST',
+ headers: {
+ 'Content-Type': 'application/json',
+ },
+ data: body,
+ ...(options || {}),
+ }
+ );
+}
+
/** 鑾峰彇鎴戠殑浼佷笟鍥涙祦鏉愭枡鍒楄〃 POST /api/EnterpriseMaterial/GetMyEnterpriseMaterialPage */
export async function getMyEnterpriseMaterialPage(
body: API.PageInput,
diff --git a/src/services/api/ParkBountyApply.ts b/src/services/api/ParkBountyApply.ts
index fdbd9c9..e420fb5 100644
--- a/src/services/api/ParkBountyApply.ts
+++ b/src/services/api/ParkBountyApply.ts
@@ -17,6 +17,21 @@
});
}
+/** 浼佷笟鑷富鐢虫姤 POST /api/ParkBountyApply/AddParkBountyApplyByEnterprise */
+export async function addParkBountyApplyByEnterprise(
+ body: API.AddParkBountyApplyByEnterpriseInput,
+ options?: API.RequestConfig
+) {
+ return request<string>('/api/ParkBountyApply/AddParkBountyApplyByEnterprise', {
+ method: 'POST',
+ headers: {
+ 'Content-Type': 'application/json',
+ },
+ data: body,
+ ...(options || {}),
+ });
+}
+
/** 濂栧姳閲�-鍑鸿处-瀹℃壒 POST /api/ParkBountyApply/AuditParkBountyApplyTrade */
export async function auditParkBountyApplyTrade(
body: API.AuditParkBountyTradeInput,
@@ -808,6 +823,21 @@
);
}
+/** 鏌ヨ濂栧姳閲戠粺璁℃姤琛� GET /api/ParkBountyApply/GetRewardStatisticsMonths */
+export async function getRewardStatisticsMonths(
+ // 鍙犲姞鐢熸垚鐨凱aram绫诲瀷 (闈瀊ody鍙傛暟swagger榛樿娌℃湁鐢熸垚瀵硅薄)
+ params: API.APIgetRewardStatisticsMonthsParams,
+ options?: API.RequestConfig
+) {
+ return request<string[]>('/api/ParkBountyApply/GetRewardStatisticsMonths', {
+ method: 'GET',
+ params: {
+ ...params,
+ },
+ ...(options || {}),
+ });
+}
+
/** 瀵煎叆濂栧姳閲戠敵鎶ヨ储鏀�/骞冲彴鎷ㄤ粯鎬婚 POST /api/ParkBountyApply/ImportParkBountyAppalyAmount */
export async function importParkBountyAppalyAmount(
body: API.ImportParkBountyAppalyAmountInput,
diff --git a/src/services/api/User.ts b/src/services/api/User.ts
index 3e7a25b..2d5020a 100644
--- a/src/services/api/User.ts
+++ b/src/services/api/User.ts
@@ -784,6 +784,21 @@
});
}
+/** 璁剧疆浼佷笟鍚堜綔鍗忚 POST /api/User/SetUserEnterpiseCooperationUrl */
+export async function setUserEnterpiseCooperationUrl(
+ body: API.SetUserEnterpiseCooperationUrlInput,
+ options?: API.RequestConfig
+) {
+ return request<number>('/api/User/SetUserEnterpiseCooperationUrl', {
+ method: 'POST',
+ headers: {
+ 'Content-Type': 'application/json',
+ },
+ data: body,
+ ...(options || {}),
+ });
+}
+
/** 鍙栧叧鐢ㄦ埛 POST /api/User/UnFollowUser */
export async function unFollowUser(body: API.UnFollowUserInput, options?: API.RequestConfig) {
return request<number>('/api/User/UnFollowUser', {
diff --git a/src/services/api/index.ts b/src/services/api/index.ts
index e267aca..a0a2349 100644
--- a/src/services/api/index.ts
+++ b/src/services/api/index.ts
@@ -12,6 +12,7 @@
import * as AliPayNotify from './AliPayNotify';
import * as Area from './Area';
import * as BaseModule from './BaseModule';
+import * as BaseModuleNew from './BaseModuleNew';
import * as BestSign from './BestSign';
import * as BestSignCallBack from './BestSignCallBack';
import * as CaiNiao from './CaiNiao';
@@ -103,6 +104,7 @@
AliPayNotify,
Area,
BaseModule,
+ BaseModuleNew,
BestSign,
BestSignCallBack,
CaiNiao,
diff --git a/src/services/api/typings.d.ts b/src/services/api/typings.d.ts
index 6472f78..e8377f6 100644
--- a/src/services/api/typings.d.ts
+++ b/src/services/api/typings.d.ts
@@ -453,6 +453,11 @@
userId?: string;
}
+ interface AddParkBountyApplyByEnterpriseInput {
+ batchNo?: string;
+ enterpriseMonthApplyId?: string;
+ }
+
interface AddParkBountyApplyStepOneInput {
batchNo?: string;
parkId?: string;
@@ -1290,6 +1295,10 @@
parentId?: string;
}
+ interface APIgetAllModuleListParams {
+ menuScene?: EnumMenuScene;
+ }
+
interface APIgetAllSubModuleParams {
moduleId?: string;
}
@@ -1750,6 +1759,11 @@
id?: string;
}
+ interface APIgetRewardStatisticsMonthsParams {
+ /** 鎵�灞炲洯鍖篒d */
+ industrialParkId?: string;
+ }
+
interface APIgetRolesIdRolesParams {
id: string;
}
@@ -1842,6 +1856,12 @@
interface APIgetUserOrRoleModuleListParams {
id?: string;
+ objectType?: number;
+ }
+
+ interface APIgetUserOrRoleModuleListParams {
+ id?: string;
+ menuScene?: EnumMenuScene;
objectType?: number;
}
@@ -4081,6 +4101,8 @@
password?: string;
/** 浜т笟鍥尯id */
industrialParkId?: string;
+ /** 缁熶竴绀句細淇$敤浠g爜 */
+ societyCreditCode?: string;
}
interface CreateBackClientUserInput {
@@ -4101,6 +4123,7 @@
}
interface CreateBaseRoleInput {
+ menuScene?: EnumMenuScene;
/** 鍚嶇О */
name?: string;
/** 鎺掑簭 */
@@ -5192,6 +5215,7 @@
}
interface CreateOrUpdateRoleInput {
+ menuScene?: EnumMenuScene;
/** 鍚嶇О */
name?: string;
/** 鎺掑簭 */
@@ -5698,6 +5722,8 @@
isSignFreeSet?: boolean;
/** 娉ㄥ唽鏃堕棿 */
registTime?: string;
+ /** 澶囨敞 */
+ remark?: string;
}
interface CustomerManageListOutputPageOutput {
@@ -5754,6 +5780,7 @@
/** 鐢虫姤閲戦 */
applyAmount?: number;
fileTypes?: CustomerUploadMonthApplyFileType[];
+ enterpriseId?: string;
}
interface CustomerUploadMonthApplyFileType {
@@ -6153,6 +6180,8 @@
remark?: string;
/** 鏂囦欢鏁伴噺 */
fileCount?: number;
+ /** 浼佷笟鐢虫姤鏉愭枡鏁伴噺 */
+ enterpriseMonthApplyFileCount?: number;
lastModificationTime?: string;
lastModifierName?: string;
lastModifierId?: string;
@@ -6294,6 +6323,8 @@
type EnumElectronSignRealStatus = 0 | 10 | 99 | 100;
type EnumElectronSignUserType = 10 | 20;
+
+ type EnumMenuScene = 0 | 1;
type EnumPagedListOrder = 0 | 1;
@@ -7548,6 +7579,7 @@
interface GetCustomerUploadApplyFilesInput {
id?: string;
enterpriseId?: string;
+ userId?: string;
withMonth?: string;
parkBountyApplyId?: string;
}
@@ -7694,6 +7726,9 @@
/** 鐢虫姤閲戦 */
applyAmount?: number;
applyStatus?: EnterpriseMonthApplyStatusEnum;
+ inCheckStatus?: BountyCheckStatusEnum;
+ /** 鑷富鐢虫姤鐨勭敵鎶d */
+ parkBountyApplyId?: string;
}
interface GetEnterpriseMonthApplyFileOutputPageOutput {
@@ -9315,6 +9350,7 @@
selfAuditOperatorId?: string;
/** 姹熺淇濅笂浼犵殑淇濆崟鏂囦欢 */
insureBillUrl?: string;
+ auditType?: EnumParkBountyTradeDetailAuditType;
}
interface GetParkBountyTradeDetailOutputPageOutput {
@@ -9536,6 +9572,8 @@
parkTypName?: string;
/** 钀ヤ笟鎵х収 */
licenseUrl?: string;
+ /** 鍚堜綔鍗忚 */
+ cooperationUrl?: string;
/** 閾惰鎬昏鍚嶇О */
bankName?: string;
/** 閾惰鏀鍚嶇О */
@@ -9885,6 +9923,7 @@
pageModel?: Pagination;
/** 鏌ヨ鏉′欢锛氳鑹插悕绉� */
queryCondition?: string;
+ menuScene?: EnumMenuScene;
}
interface GetSearchSettingList {
@@ -10297,6 +10336,8 @@
bankBranchName?: string;
bankCardNumber?: string;
bankIsVerify?: boolean;
+ /** 鍚堜綔鍗忚 */
+ cooperationUrl?: string;
}
interface GetUserBaseInfoDataResponse {
@@ -20212,6 +20253,7 @@
interface RoleInfo {
/** 瑙掕壊Id */
id?: string;
+ menuScene?: EnumMenuScene;
/** 鍚嶇О */
name?: string;
/** 鎺掑簭 */
@@ -20922,6 +20964,15 @@
/** 鐢ㄦ埛Id */
userId?: string;
disabledSyncUser?: boolean;
+ /** 鍚堜綔鍗忚 */
+ cooperationUrl?: string;
+ }
+
+ interface SetUserEnterpiseCooperationUrlInput {
+ /** 鐢ㄦ埛Id */
+ userId?: string;
+ /** 鍚堜綔鍗忚 */
+ cooperationUrl?: string;
}
interface SetUserEnterpriseBankInfoInput {
@@ -23183,6 +23234,7 @@
monthApplyId?: string;
fileSearchTypeId?: string;
listFiles?: CustomerUploadMonthApplyFileTypeDto[];
+ enterpriseId?: string;
}
interface UploadParkApplyCustomerFilesInput {
diff --git a/src/store/modules/permission.ts b/src/store/modules/permission.ts
index 925456d..ded2d45 100644
--- a/src/store/modules/permission.ts
+++ b/src/store/modules/permission.ts
@@ -33,12 +33,14 @@
const res = await baseModuleServices.getCurrentUserModuleList({
showLoading: false,
});
- const accessedRoutes = ascending(addAsyncRoutes(formatModuleList([], null))); // createAccessedRoutes(userMenuList, userInfo)
+ const accessedRoutes = ascending(addAsyncRoutes(formatModuleList(res, null))); // createAccessedRoutes(userMenuList, userInfo)
//@ts-ignore
accessedRoutes.push({ path: '/:pathMatch(.*)*', redirect: '/404', hidden: true });
this.addRoutes = accessedRoutes;
- this.routes = constantRoutes.concat(accessedRoutes);
+ this.routes = constantRoutes
+ .concat(accessedRoutes)
+ .sort((a, b) => (a.meta?.rank ?? 0) - (b.meta?.rank ?? 0));
resolve(accessedRoutes);
} catch (e) {
diff --git a/src/views/Reward/components/RewardApplyTradeCheckDialog.vue b/src/views/Reward/components/RewardApplyTradeCheckDialog.vue
index 7c917f7..ad902e5 100644
--- a/src/views/Reward/components/RewardApplyTradeCheckDialog.vue
+++ b/src/views/Reward/components/RewardApplyTradeCheckDialog.vue
@@ -307,7 +307,7 @@
async function handleApply() {
try {
- const content = `寮�鎴峰悕绉帮細${getIncomeCompanyName(form.value)}\n寮�鎴烽摱琛岋細${getIncomeBankName(
+ const content = `寮�鎴峰悕绉帮細${getIncomeBankAccount(form.value)}\n寮�鎴烽摱琛岋細${getIncomeBankName(
form.value
)}\n寮�鎴疯处鍙凤細${getIncomeBankCardNumber(form.value)}`;
await Message.tipMessage(content, { title: '澶嶅埗鍐呭' });
diff --git a/src/views/StatisticalReport/RewardStatistics.vue b/src/views/StatisticalReport/RewardStatistics.vue
index c7e00e7..16689e1 100644
--- a/src/views/StatisticalReport/RewardStatistics.vue
+++ b/src/views/StatisticalReport/RewardStatistics.vue
@@ -20,17 +20,6 @@
</div>
<ProTableQueryFilterBar @on-reset="reset">
<template #query>
- <QueryFilterItem tip-content="鐢虫姤鏈堜唤">
- <FieldDatePicker
- v-model="extraParamState.months"
- type="months"
- clearable
- placeholder="璇烽�夋嫨鐢虫姤鏈堜唤"
- format="YYYY-MM"
- value-format="YYYY-MM"
- @change="getList()"
- ></FieldDatePicker>
- </QueryFilterItem>
<QueryFilterItem>
<FieldSelect
v-model="extraParamState.industrialParkId"
@@ -41,6 +30,18 @@
clearable
@change="getList()"
/>
+ </QueryFilterItem>
+ <QueryFilterItem tip-content="鐢虫姤鏈堜唤">
+ <FieldDatePicker
+ v-model="extraParamState.months"
+ type="months"
+ clearable
+ placeholder="璇烽�夋嫨鐢虫姤鏈堜唤"
+ format="YYYY-MM"
+ value-format="YYYY-MM"
+ @change="getList()"
+ :disabled-date="disabledDate"
+ ></FieldDatePicker>
</QueryFilterItem>
<QueryFilterItem>
<SearchInput
@@ -133,6 +134,7 @@
import EnterpriseWithdrawalDetailDialog from './components/EnterpriseWithdrawalDetailDialog.vue';
import BalanceDetailDialog from './components/BalanceDetailDialog.vue';
import { EnumParkRewardStatisticsDetailScene } from '@/constants';
+import { useRewardStatisticsMonths } from './hooks';
defineOptions({
name: 'RewardStatistics',
@@ -289,14 +291,15 @@
// Message.errorMessage('璇烽�夋嫨鏈堜唤');
// return;
// }
- if (!extraParamState.months.length) {
- Message.errorMessage('璇烽�夋嫨鏈堜唤');
- return;
- }
if (!extraParamState.industrialParkId) {
Message.errorMessage('璇烽�夋嫨鍥尯');
return;
}
+ if (!extraParamState.months.length) {
+ Message.errorMessage('璇烽�夋嫨鏈堜唤');
+ return;
+ }
+
let params: API.GetRewardStatisticsInput = {
pageModel: {
rows: pageSize,
@@ -358,6 +361,11 @@
}
);
+const { disabledDate } = useRewardStatisticsMonths({
+ industrialParkId: toRef(extraParamState, 'industrialParkId'),
+ enabled: computed(() => !!extraParamState.industrialParkId),
+});
+
const handleExport = _.debounce(
async () => {
if (!extraParamState.month) {
diff --git a/src/views/StatisticalReport/hooks/rewardStatistics.ts b/src/views/StatisticalReport/hooks/rewardStatistics.ts
index b1d4324..681ed8c 100644
--- a/src/views/StatisticalReport/hooks/rewardStatistics.ts
+++ b/src/views/StatisticalReport/hooks/rewardStatistics.ts
@@ -2,6 +2,8 @@
import { useTable } from '@bole-core/components';
import * as parkBountyApplyServices from '@/services/api/ParkBountyApply';
import { OrderInputType } from '@bole-core/core';
+import { useQuery } from '@tanstack/vue-query';
+import dayjs from 'dayjs';
type UseRewardStatisticsDetailOptions = {
scene?: Ref<EnumParkRewardStatisticsDetailScene>;
@@ -54,3 +56,35 @@
reset,
};
}
+
+type UseRewardStatisticsMonthsOptions = {
+ industrialParkId?: MaybeRef<string>;
+ enabled?: MaybeRef<boolean>;
+};
+
+export function useRewardStatisticsMonths(options: UseRewardStatisticsMonthsOptions = {}) {
+ const { industrialParkId, enabled } = options;
+
+ const { data: rewardStatisticsMonths } = useQuery({
+ queryKey: ['parkBountyApplyServices/getRewardStatisticsMonths', industrialParkId],
+ queryFn: async () => {
+ let params: API.APIgetRewardStatisticsMonthsParams = {
+ industrialParkId: unref(industrialParkId),
+ };
+ let res = await parkBountyApplyServices.getRewardStatisticsMonths(params, {
+ showLoading: false,
+ });
+ return res;
+ },
+ placeholderData: [] as string[],
+ enabled: enabled,
+ });
+
+ const disabledDate = computed(() => {
+ return (time: Date) => {
+ return rewardStatisticsMonths.value.every((x) => !dayjs(x).isSame(dayjs(time), 'month'));
+ };
+ });
+
+ return { rewardStatisticsMonths, disabledDate };
+}
--
Gitblit v1.9.1