import React, { useState, useEffect, useImperativeHandle } from 'react'
import { Table, Space, message } from 'antd'
import { getJoblog, refreshLogsStatus } from '../services'
import moment from 'moment'
import { useNavigate } from 'react-router-dom'
let timeout = null
const DatasourceLog = ({ onRef, logId }) => {
// 初始化日志列表
const [logList, setLogList] = useState([])
// 表格Loading状态
const [dataLoading, setDataLoading] = useState(false)
const [currentPage, setCurrentPage] = useState(1)
const [currentPageSize, setCurrentPageSize] = useState(10)
const [dataTotal, setDataTotal] = useState(0)
const navigate = useNavigate()
const changeTask = () => {}
// 暴露更新列表方法
useImperativeHandle(onRef, () => {
return {
updateLogList: fetchJoblog,
}
})
const checkLog = id => {
navigate('/datasource/log-watcher', {
state: { id },
})
}
const columns = [
{
title: '同步ID',
dataIndex: 'jobId',
key: 'jobId',
},
{
title: '任务描述',
dataIndex: 'jobDesc',
key: 'jobDesc',
},
{
title: '开始时间',
dataIndex: 'startTime',
key: 'startTime',
},
{
title: '同步状态',
dataIndex: 'handleResult',
key: 'handleResult',
render: code => (
{code === 3
? '失败'
: code === 2
? '成功'
: code === 1
? '运行中'
: code === 0
? '队列中'
: '暂无'}
),
},
{
title: '操作',
key: 'operation',
render: (_, record) => (