修复看板上次同步时间显示 Invalid Date
This commit is contained in:
@@ -147,7 +147,10 @@ func (s *StockSyncService) doSync(ctx context.Context) (int, error) {
|
|||||||
|
|
||||||
func (s *StockSyncService) LatestJob(ctx context.Context) (*models.StockSyncJob, error) {
|
func (s *StockSyncService) LatestJob(ctx context.Context) (*models.StockSyncJob, error) {
|
||||||
var job models.StockSyncJob
|
var job models.StockSyncJob
|
||||||
if err := s.db.WithContext(ctx).Order("started_at DESC").First(&job).Error; err != nil {
|
if err := s.db.WithContext(ctx).
|
||||||
|
Where("started_at > ?", time.Time{}).
|
||||||
|
Order("started_at DESC").
|
||||||
|
First(&job).Error; err != nil {
|
||||||
if err == gorm.ErrRecordNotFound {
|
if err == gorm.ErrRecordNotFound {
|
||||||
return nil, nil
|
return nil, nil
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -233,9 +233,14 @@ function StockList({
|
|||||||
|
|
||||||
function formatSyncStatus(job: SyncJob): string {
|
function formatSyncStatus(job: SyncJob): string {
|
||||||
if (job.status === 'running') return '同步中…'
|
if (job.status === 'running') return '同步中…'
|
||||||
const timeStr = job.finished_at
|
const ts = job.finished_at || job.started_at
|
||||||
? new Date(job.finished_at).toLocaleString()
|
let timeStr = '时间未知'
|
||||||
: new Date(job.started_at).toLocaleString()
|
if (ts && ts !== '0001-01-01T00:00:00Z') {
|
||||||
|
const d = new Date(ts)
|
||||||
|
if (!isNaN(d.getTime())) {
|
||||||
|
timeStr = d.toLocaleString()
|
||||||
|
}
|
||||||
|
}
|
||||||
const statusText = job.status === 'success' ? '成功' : '失败'
|
const statusText = job.status === 'success' ? '成功' : '失败'
|
||||||
return `${statusText} · ${timeStr}`
|
return `${statusText} · ${timeStr}`
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user