Files
CN_Tool_client/frontend/src/views/steady/checksquare/utils/checksquareTaskTable.ts

54 lines
1.8 KiB
TypeScript
Raw Normal View History

import type { SteadyDataView } from '@/api/steady/steadyDataView/interface'
export interface ChecksquareTaskSearchParams extends SteadyDataView.SteadyChecksquareTaskQueryParams {
taskTimeRange?: string[]
}
export const buildChecksquareTaskQueryParams = (
params: ChecksquareTaskSearchParams
): SteadyDataView.SteadyChecksquareTaskQueryParams => {
const { taskTimeRange, ...rest } = params
const queryParams: SteadyDataView.SteadyChecksquareTaskQueryParams = { ...rest }
if (taskTimeRange?.[0]) queryParams.timeStart = taskTimeRange[0]
if (taskTimeRange?.[1]) queryParams.timeEnd = taskTimeRange[1]
return queryParams
}
export const formatChecksquareTaskStatus = (status?: string) => {
if (!status) return '--'
if (status === 'SUCCESS') return '成功'
if (status === 'FAILED') return '失败'
if (status === 'RUNNING') return '执行中'
return status
}
export const resolveChecksquareTaskStatusType = (status?: string) => {
if (status === 'SUCCESS') return 'success'
if (status === 'FAILED') return 'danger'
if (status === 'RUNNING') return 'warning'
return 'info'
}
export const formatChecksquareIntegrity = (value?: number | null, fallbackMissingRate?: number | null) => {
const integrityValue =
value === null || value === undefined || !Number.isFinite(Number(value))
? fallbackMissingRate === null || fallbackMissingRate === undefined || !Number.isFinite(Number(fallbackMissingRate))
? null
: 1 - Number(fallbackMissingRate)
: Number(value)
if (integrityValue === null) return '--'
return `${(integrityValue * 100).toFixed(2)}%`
}
export const resolveChecksquareText = (value: unknown) => {
if (value === null || value === undefined || value === '') return '--'
return String(value)
}