diff --git a/frontend/providers/cronjob/src/api/job.ts b/frontend/providers/cronjob/src/api/job.ts index 346085ac5cc..1dcefd95239 100644 --- a/frontend/providers/cronjob/src/api/job.ts +++ b/frontend/providers/cronjob/src/api/job.ts @@ -66,14 +66,13 @@ export const getJobListEventsAndLogs = async (cronJobName: string) => { const jobPod = podJobMap.get(job.name); if (!jobPod?.metadata?.name) continue; + job.podName = jobPod?.metadata?.name; getPodLogs(jobPod?.metadata?.name) .then((podLog) => { job.logs = podLog; - job.podName = jobPod?.metadata?.name || ''; }) .catch((err) => { job.logs = err; - job.podName = jobPod?.metadata?.name || ''; }); } diff --git a/frontend/providers/cronjob/src/pages/job/detail/components/AppMainInfo.tsx b/frontend/providers/cronjob/src/pages/job/detail/components/AppMainInfo.tsx index 1fd24a4d5ee..491e5fd82c2 100644 --- a/frontend/providers/cronjob/src/pages/job/detail/components/AppMainInfo.tsx +++ b/frontend/providers/cronjob/src/pages/job/detail/components/AppMainInfo.tsx @@ -94,18 +94,31 @@ export default function AppBaseInfo({ appName }: { appName: string }) { ))} - - - {t('Log')} (pod: {ActivePod?.podName}) - - {ActivePod?.logs} - - {data?.history?.length === 0 && !isLoading && ( - + {ActivePod?.podName && !isLoading ? ( + + + {t('Log')} (pod: {ActivePod?.podName}) + + {ActivePod?.logs} + + ) : ( + - - No Events - )} diff --git a/frontend/providers/cronjob/src/pages/job/edit/components/Cron.tsx b/frontend/providers/cronjob/src/pages/job/edit/components/Cron.tsx index 1551a468563..15ed14550e1 100644 --- a/frontend/providers/cronjob/src/pages/job/edit/components/Cron.tsx +++ b/frontend/providers/cronjob/src/pages/job/edit/components/Cron.tsx @@ -93,7 +93,7 @@ export default function Cron({ formHook }: { formHook: UseFormReturn - + {cronMessage && `"${cronMessage}"`} diff --git a/frontend/providers/cronjob/src/utils/adapt.ts b/frontend/providers/cronjob/src/utils/adapt.ts index 119dc274b3c..39a10e5bbab 100644 --- a/frontend/providers/cronjob/src/utils/adapt.ts +++ b/frontend/providers/cronjob/src/utils/adapt.ts @@ -148,19 +148,25 @@ export const adaptServiceAccountList = ( export const adaptJobItemList = (jobs: V1Job[]) => { const total = jobs.length; let successAmount = 0; - const history = jobs.map((item) => { - if (!!item.status?.succeeded) successAmount++; - return { - status: !!item.status?.succeeded, - startTime: dayjs(item.status?.startTime).format('YYYY-MM-DD HH:mm'), - completionTime: dayjs(item.status?.completionTime).format('YYYY-MM-DD HH:mm'), - uid: item.metadata?.uid, - name: item.metadata?.name, - events: [] as JobEvent[], - logs: '', - podName: '' - }; - }); + const history = jobs + .map((item) => { + if (!!item.status?.succeeded) successAmount++; + const startTimeTimestamp = dayjs(item.status?.startTime).unix(); + return { + status: !!item.status?.succeeded, + startTime: dayjs(item.status?.startTime).format('YYYY-MM-DD HH:mm'), + completionTime: dayjs(item.status?.completionTime).format('YYYY-MM-DD HH:mm'), + uid: item.metadata?.uid, + name: item.metadata?.name, + events: [] as JobEvent[], + logs: '', + podName: '', + startTimeTimestamp: startTimeTimestamp + }; + }) + .sort((a, b) => { + return b.startTimeTimestamp - a.startTimeTimestamp; + }); return { total,