Skip to content

Commit f40d3bd

Browse files
author
之瑛
committed
PullRequest: 792 优化定时模块展示逻辑
Merge branch 'feat/control-schedule-display of [email protected]:oceanbase/oceanbase-developer-center.git into dev-4.3.4 https://code.alipay.com/oceanbase/oceanbase-developer-center/pull_requests/792 Signed-off-by: 晓康 <[email protected]> * feat: 新用户配置 * refactor: 调整变量名称 * feat: 新增 totalCount 控制定时模块显示 * feat: 修改定时模块展示条件 * fix: 调整依赖项 * fix: 补充数值校验
1 parent c1c205c commit f40d3bd

File tree

2 files changed

+12
-10
lines changed

2 files changed

+12
-10
lines changed

src/d.ts/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2737,6 +2737,7 @@ export interface IDatabaseHistoriesParam {
27372737
export interface ICycleTaskStatRecord {
27382738
type: string;
27392739
successEnabledCount: number;
2740+
totalCount?: number;
27402741
taskStats: {
27412742
type: string;
27422743
successExecutionCount: number;

src/page/Console/index.tsx

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -55,26 +55,27 @@ const Console = () => {
5555
} = useRequest((params: ICycleTaskStatParam) => getScheduleStat(params), {
5656
manual: true,
5757
});
58-
const res = useMemo(() => {
59-
const scheduleData = {};
58+
const schedulesData = useMemo(() => {
59+
const _schedules = { totalCount: 0 };
6060
data?.forEach((item) => {
6161
const taskStat = sumTaskStats(item.taskStats);
6262
const schedule = { ...item, taskStat };
63-
scheduleData[item?.type] = schedule;
63+
_schedules[item?.type] = schedule;
64+
_schedules.totalCount += Number(item?.totalCount || 0);
6465
});
65-
return scheduleData;
66+
return _schedules;
6667
}, [data]);
6768

6869
useEffect(() => {
69-
const enable = setting.configurations['odc.user.guidePromptEnabled'];
70-
const guidePromptEnabled = enable !== 'true';
71-
const hasData = data?.length > 0;
70+
const enable = setting.configurations?.['odc.user.guidePromptEnabled'];
71+
const guidePromptEnabled = enable && enable !== 'true';
72+
const hasData = schedulesData?.totalCount > 0;
7273
if (guidePromptEnabled) {
7374
setTopAreaLayout(hasData ? areaLayout.schedules : areaLayout.hideTop);
7475
} else {
7576
setTopAreaLayout(hasData ? areaLayout.both : areaLayout.quickStart);
7677
}
77-
}, [data]);
78+
}, [schedulesData]);
7879

7980
useMount(() => {
8081
runGetScheduleStat({
@@ -144,15 +145,15 @@ const Console = () => {
144145
return (
145146
<ScheduleItem
146147
title={title}
147-
progress={res[schdules.scheduleType[index]]}
148+
progress={schedulesData[schdules.scheduleType[index]]}
148149
type={schdules.scheduleType[index]}
149150
/>
150151
);
151152
})}
152153
</div>
153154
</Card>
154155
);
155-
}, [res]);
156+
}, [schedulesData]);
156157
return (
157158
<>
158159
<div className={styles.consoleBackgroud} />

0 commit comments

Comments
 (0)