86 lines
3.1 KiB
Go
86 lines
3.1 KiB
Go
package v1
|
|
|
|
import (
|
|
"git.5iot.com/iotlcm-public/iotlcm-admin-svr/internal/service/fullsyncretry"
|
|
|
|
"github.com/gogf/gf/v2/frame/g"
|
|
)
|
|
|
|
type FullSyncRunsListReq struct {
|
|
g.Meta `path:"/fullSyncRuns" method:"get" tags:"全量同步" summary:"查询全量同步" x-check-permission:"cpm:iot:fullSyncRuns:view"`
|
|
SyncKind string `json:"syncKind"`
|
|
Limit int `json:"limit"`
|
|
}
|
|
|
|
type FullSyncRunsListRes struct {
|
|
Items []fullsyncretry.RunView `json:"items"`
|
|
Total int `json:"total"`
|
|
}
|
|
|
|
type FullSyncRunDetailReq struct {
|
|
g.Meta `path:"/fullSyncRuns/{runId}" method:"get" tags:"全量同步" summary:"查看全量同步详情" x-check-permission:"cpm:iot:fullSyncRuns:view"`
|
|
RunID string `json:"runId" v:"required"`
|
|
}
|
|
|
|
type FullSyncRunDetailRes struct {
|
|
fullsyncretry.RunView
|
|
SyncKind string `json:"syncKind"`
|
|
SyncName string `json:"syncName"`
|
|
}
|
|
|
|
type FullSyncRunFailuresReq struct {
|
|
g.Meta `path:"/fullSyncRuns/{runId}/failures" method:"get" tags:"全量同步" summary:"查看全量同步失败明细" x-check-permission:"cpm:iot:fullSyncRuns:failures"`
|
|
RunID string `json:"runId" v:"required"`
|
|
Limit int `json:"limit"`
|
|
Cursor string `json:"cursor"`
|
|
}
|
|
|
|
type FullSyncRunFailuresRes struct {
|
|
Items []fullsyncretry.Failure `json:"items"`
|
|
NextCursor string `json:"nextCursor"`
|
|
}
|
|
|
|
type FullSyncRunStartReq struct {
|
|
g.Meta `path:"/fullSyncRuns/start" method:"post" tags:"全量同步" summary:"手动启动全量同步" x-check-permission:"cpm:iot:fullSyncRuns:start"`
|
|
SyncKind string `json:"syncKind" v:"required"`
|
|
// Channels narrows the run to the listed chanKeys. Empty or omitted means a
|
|
// full sync, which is the only behaviour that existed before this field.
|
|
Channels []string `json:"channels"`
|
|
// QueryDate backfills a specific day (yyyyMMdd) instead of the default
|
|
// "yesterday". Only valid when syncKind=traffic_usage_daily; empty keeps the
|
|
// default period.
|
|
QueryDate string `json:"queryDate"`
|
|
// QueryMonth backfills a specific month (yyyyMM) instead of the default
|
|
// "previous month". Only valid when syncKind=traffic_usage_monthly; empty
|
|
// keeps the default period.
|
|
QueryMonth string `json:"queryMonth"`
|
|
}
|
|
|
|
type FullSyncRunStartRes struct {
|
|
RunID string `json:"runId"`
|
|
SyncKind string `json:"syncKind"`
|
|
Status string `json:"status"`
|
|
// ScopeChannels is the normalized channel count; 0 means a full sync.
|
|
ScopeChannels int `json:"scopeChannels"`
|
|
// QueryPeriod echoes the requested period (yyyyMMdd or yyyyMM); empty means
|
|
// the run used its default period.
|
|
QueryPeriod string `json:"queryPeriod"`
|
|
}
|
|
|
|
type FullSyncChannelOptionsReq struct {
|
|
g.Meta `path:"/fullSyncRuns/channels" method:"get" tags:"全量同步" summary:"可同步通道候选" x-check-permission:"cpm:iot:fullSyncRuns:view"`
|
|
}
|
|
|
|
type FullSyncChannelOptionsRes struct {
|
|
Items []FullSyncChannelOption `json:"items"`
|
|
}
|
|
|
|
type FullSyncChannelOption struct {
|
|
ChanKey string `json:"chanKey"`
|
|
ChanName string `json:"chanName"`
|
|
TempKey string `json:"tempKey"`
|
|
Operator int `json:"operator"`
|
|
CardCount int64 `json:"cardCount"`
|
|
SyncEnabled bool `json:"syncEnabled"`
|
|
}
|