mirror of
https://github.com/Syngnat/GoNavi.git
synced 2026-05-12 07:19:39 +08:00
- 新增差异分析/预览接口与前端预览抽屉(插入/更新/删除) - 支持按表勾选插入/更新/删除(删除默认不勾选) - 支持按主键选择行级同步;无主键/复合主键表跳过并提示 - 同步过程实时输出中文日志与进度条,便于定位失败步骤
31 lines
731 B
Go
31 lines
731 B
Go
package sync
|
|
|
|
const (
|
|
EventSyncStart = "sync:start"
|
|
EventSyncProgress = "sync:progress"
|
|
EventSyncLog = "sync:log"
|
|
EventSyncDone = "sync:done"
|
|
)
|
|
|
|
type SyncLogEvent struct {
|
|
JobID string `json:"jobId"`
|
|
Level string `json:"level"` // info/warn/error
|
|
Message string `json:"message"`
|
|
Ts int64 `json:"ts"` // Unix milli
|
|
}
|
|
|
|
type SyncProgressEvent struct {
|
|
JobID string `json:"jobId"`
|
|
Percent int `json:"percent"`
|
|
Current int `json:"current"` // 已完成表数
|
|
Total int `json:"total"` // 总表数
|
|
Table string `json:"table,omitempty"`
|
|
Stage string `json:"stage,omitempty"`
|
|
}
|
|
|
|
type Reporter struct {
|
|
OnLog func(event SyncLogEvent)
|
|
OnProgress func(event SyncProgressEvent)
|
|
}
|
|
|