143 lines
6.2 KiB
Go
143 lines
6.2 KiB
Go
|
|
package dto
|
|||
|
|
|
|||
|
|
import (
|
|||
|
|
consts "assets/consts/public"
|
|||
|
|
|
|||
|
|
"gitea.com/red-future/common/beans"
|
|||
|
|
"github.com/gogf/gf/v2/frame/g"
|
|||
|
|
"github.com/gogf/gf/v2/os/gtime"
|
|||
|
|
"go.mongodb.org/mongo-driver/v2/bson"
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
// CreateSyncTaskReq 创建同步任务请求
|
|||
|
|
type CreateSyncTaskReq struct {
|
|||
|
|
g.Meta `path:"/createSyncTask" method:"post" tags:"同步任务" summary:"创建同步任务" dc:"创建新的同步任务"`
|
|||
|
|
|
|||
|
|
Platform consts.SyncPlatform `json:"platform" v:"required" dc:"同步平台"`
|
|||
|
|
SyncType consts.SyncType `json:"syncType" v:"required" dc:"同步类型:full全量/incremental增量"`
|
|||
|
|
AssetID *bson.ObjectID `json:"assetId,omitempty" dc:"资产ID"`
|
|||
|
|
AssetSKUID *bson.ObjectID `json:"assetSkuId,omitempty" dc:"资产SKU ID"`
|
|||
|
|
StockID *bson.ObjectID `json:"stockId,omitempty" dc:"库存ID"`
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// CreateSyncTaskRes 创建同步任务响应
|
|||
|
|
type CreateSyncTaskRes struct {
|
|||
|
|
TaskID *bson.ObjectID `json:"taskId" dc:"任务ID"`
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// ListSyncTaskReq 同步任务列表请求
|
|||
|
|
type ListSyncTaskReq struct {
|
|||
|
|
g.Meta `path:"/listSyncTasks" method:"get" tags:"同步任务" summary:"获取同步任务列表" dc:"分页查询同步任务列表,支持多条件筛选"`
|
|||
|
|
beans.Page
|
|||
|
|
Platform consts.SyncPlatform `json:"platform,omitempty" dc:"同步平台"`
|
|||
|
|
Status consts.SyncStatus `json:"status,omitempty" dc:"同步状态"`
|
|||
|
|
StartTime *gtime.Time `json:"startTime,omitempty" dc:"开始时间"`
|
|||
|
|
EndTime *gtime.Time `json:"endTime,omitempty" dc:"结束时间"`
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// ListSyncTaskRes 同步任务列表响应
|
|||
|
|
type ListSyncTaskRes struct {
|
|||
|
|
List []*SyncTaskItem `json:"list" dc:"同步任务列表"`
|
|||
|
|
Total int64 `json:"total" dc:"总数"`
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// SyncTaskItem 同步任务项
|
|||
|
|
type SyncTaskItem struct {
|
|||
|
|
ID *bson.ObjectID `json:"id" dc:"任务ID"`
|
|||
|
|
Platform consts.SyncPlatform `json:"platform" dc:"同步平台"`
|
|||
|
|
SyncType consts.SyncType `json:"syncType" dc:"同步类型"`
|
|||
|
|
Status consts.SyncStatus `json:"status" dc:"同步状态"`
|
|||
|
|
AssetID *bson.ObjectID `json:"assetId,omitempty" dc:"资产ID"`
|
|||
|
|
AssetSKUID *bson.ObjectID `json:"assetSkuId,omitempty" dc:"资产SKU ID"`
|
|||
|
|
StockID *bson.ObjectID `json:"stockId,omitempty" dc:"库存ID"`
|
|||
|
|
ErrorMessage string `json:"errorMessage,omitempty" dc:"错误信息"`
|
|||
|
|
ErrorCount int `json:"errorCount" dc:"错误次数"`
|
|||
|
|
CreatedAt *gtime.Time `json:"createdAt" dc:"创建时间"`
|
|||
|
|
StartedAt *gtime.Time `json:"startedAt,omitempty" dc:"开始时间"`
|
|||
|
|
FinishedAt *gtime.Time `json:"finishedAt,omitempty" dc:"完成时间"`
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// GetSyncTaskReq 获取同步任务详情请求
|
|||
|
|
type GetSyncTaskReq struct {
|
|||
|
|
g.Meta `path:"/getSyncTask" method:"get" tags:"同步任务" summary:"获取同步任务详情" dc:"获取同步任务详情"`
|
|||
|
|
ID *bson.ObjectID `json:"id" v:"required" dc:"任务ID"`
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// GetSyncTaskRes 获取同步任务详情响应
|
|||
|
|
type GetSyncTaskRes struct {
|
|||
|
|
SyncTaskItem
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// UpdateSyncTaskStatusReq 更新同步任务状态请求
|
|||
|
|
type UpdateSyncTaskStatusReq struct {
|
|||
|
|
g.Meta `path:"/updateSyncTaskStatus" method:"put" tags:"同步任务" summary:"更新同步任务状态" dc:"更新同步任务状态"`
|
|||
|
|
ID *bson.ObjectID `json:"id" v:"required" dc:"任务ID"`
|
|||
|
|
Status consts.SyncStatus `json:"status" v:"required" dc:"同步状态"`
|
|||
|
|
ErrorMessage string `json:"errorMessage,omitempty" dc:"错误信息"`
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// SyncAssetReq 同步资产请求
|
|||
|
|
type SyncAssetReq struct {
|
|||
|
|
g.Meta `path:"/syncAsset" method:"post" tags:"资产同步" summary:"同步资产" dc:"同步资产到指定平台"`
|
|||
|
|
Platform consts.SyncPlatform `json:"platform" v:"required" dc:"同步平台"`
|
|||
|
|
AssetID *bson.ObjectID `json:"assetId" v:"required" dc:"资产ID"`
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// SyncAssetRes 同步资产响应
|
|||
|
|
type SyncAssetRes struct {
|
|||
|
|
TaskID *bson.ObjectID `json:"taskId" dc:"任务ID"`
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// SyncAssetSkuReq 同步资产SKU请求
|
|||
|
|
type SyncAssetSkuReq struct {
|
|||
|
|
g.Meta `path:"/syncAssetSku" method:"post" tags:"SKU同步" summary:"同步资产SKU" dc:"同步资产SKU到指定平台"`
|
|||
|
|
Platform consts.SyncPlatform `json:"platform" v:"required" dc:"同步平台"`
|
|||
|
|
AssetSKUID *bson.ObjectID `json:"assetSkuId" v:"required" dc:"资产SKU ID"`
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// SyncAssetSkuRes 同步资产SKU响应
|
|||
|
|
type SyncAssetSkuRes struct {
|
|||
|
|
TaskID *bson.ObjectID `json:"taskId" dc:"任务ID"`
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// SyncStockReq 同步库存请求
|
|||
|
|
type SyncStockReq struct {
|
|||
|
|
g.Meta `path:"/syncStock" method:"post" tags:"库存同步" summary:"同步库存" dc:"同步库存到指定平台"`
|
|||
|
|
Platform consts.SyncPlatform `json:"platform" v:"required" dc:"同步平台"`
|
|||
|
|
StockID *bson.ObjectID `json:"stockId" v:"required" dc:"库存ID"`
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// SyncStockRes 同步库存响应
|
|||
|
|
type SyncStockRes struct {
|
|||
|
|
TaskID *bson.ObjectID `json:"taskId" dc:"任务ID"`
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// BatchSyncAssetsReq 批量同步资产请求
|
|||
|
|
type BatchSyncAssetsReq struct {
|
|||
|
|
g.Meta `path:"/batchSyncAssets" method:"post" tags:"批量同步" summary:"批量同步资产" dc:"批量同步资产到指定平台"`
|
|||
|
|
Platform consts.SyncPlatform `json:"platform" v:"required" dc:"同步平台"`
|
|||
|
|
AssetIDs []*bson.ObjectID `json:"assetIds" v:"required" dc:"资产ID列表"`
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// BatchSyncAssetsRes 批量同步资产响应
|
|||
|
|
type BatchSyncAssetsRes struct {
|
|||
|
|
TaskIDs []*bson.ObjectID `json:"taskIds" dc:"任务ID列表"`
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// GetPlatformSyncStatusReq 获取平台同步状态请求
|
|||
|
|
type GetPlatformSyncStatusReq struct {
|
|||
|
|
g.Meta `path:"/getPlatformSyncStatus" method:"get" tags:"平台状态" summary:"获取平台同步状态" dc:"获取指定平台的同步状态"`
|
|||
|
|
Platform consts.SyncPlatform `json:"platform" v:"required" dc:"同步平台"`
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// GetPlatformSyncStatusRes 获取平台同步状态响应
|
|||
|
|
type GetPlatformSyncStatusRes struct {
|
|||
|
|
Platform consts.SyncPlatform `json:"platform" dc:"同步平台"`
|
|||
|
|
IsEnabled bool `json:"isEnabled" dc:"是否启用"`
|
|||
|
|
LastSyncTime *gtime.Time `json:"lastSyncTime,omitempty" dc:"最后同步时间"`
|
|||
|
|
NextSyncTime *gtime.Time `json:"nextSyncTime,omitempty" dc:"下次同步时间"`
|
|||
|
|
SyncCount int64 `json:"syncCount" dc:"同步次数"`
|
|||
|
|
SuccessCount int64 `json:"successCount" dc:"成功次数"`
|
|||
|
|
FailedCount int64 `json:"failedCount" dc:"失败次数"`
|
|||
|
|
}
|