- 实现账号增删改查接口和逻辑 - 支持账号状态更新及状态历史记录功能 - 提供账号列表、历史和统计信息查询API - 实现账号轮询机制,支持按使用时间轮询获取账号 - 增加账号登录流程及批量登录功能,集成接码平台和平台API - 管理账号订单容量,支持容量检查与账号登录触发 - 提供账号池状态统计接口 - 账号历史记录查询支持多种变更类型文本展示 - 密码等敏感信息采用脱敏展示 - 完善日志记录和错误处理机制,保证业务稳定运行
164 lines
9.4 KiB
Go
164 lines
9.4 KiB
Go
package v1
|
|
|
|
import (
|
|
"kami/api/commonApi"
|
|
"kami/internal/consts"
|
|
|
|
"github.com/gogf/gf/v2/frame/g"
|
|
"github.com/gogf/gf/v2/os/gtime"
|
|
)
|
|
|
|
// SubmitOrderReq 提交订单
|
|
type SubmitOrderReq struct {
|
|
g.Meta `path:"/jd-v2/order/submit" tags:"JD V2 Order" method:"post" summary:"提交订单"`
|
|
Amount float64 `json:"amount" v:"required|min:0.01#订单金额不能为空|订单金额必须大于0" description:"订单金额"`
|
|
MerchantOrderId string `json:"merchantOrderId" v:"required#商户订单号不能为空" description:"商户订单号"`
|
|
Attach string `json:"attach" description:"附加信息"`
|
|
}
|
|
|
|
type SubmitOrderRes struct {
|
|
OrderNo string `json:"orderNo" description:"系统订单号"`
|
|
AlipayUrl string `json:"alipayUrl" description:"支付宝支付链接"`
|
|
Amount float64 `json:"amount" description:"订单金额"`
|
|
CreatedAt *gtime.Time `json:"createdAt" description:"创建时间"`
|
|
}
|
|
|
|
// ListOrderReq 订单列表查询
|
|
type ListOrderReq struct {
|
|
g.Meta `path:"/jd-v2/order/list" tags:"JD V2 Order" method:"get" summary:"订单列表"`
|
|
commonApi.CommonPageReq
|
|
MerchantOrderId string `json:"merchantOrderId" description:"商户订单号"`
|
|
OrderNo string `json:"orderNo" description:"系统订单号"`
|
|
AccountId int64 `json:"accountId" description:"账号ID"`
|
|
Status consts.CamelOilOrderStatus `json:"status" description:"订单状态"`
|
|
PayStatus consts.CamelOilPayStatus `json:"payStatus" description:"支付状态"`
|
|
DateRange []*gtime.Time `json:"dateRange" description:"时间范围"`
|
|
}
|
|
|
|
type OrderListItem struct {
|
|
OrderNo string `json:"orderNo" description:"系统订单号"`
|
|
MerchantOrderId string `json:"merchantOrderId" description:"商户订单号"`
|
|
AccountId int64 `json:"accountId" description:"账号ID"`
|
|
AccountName string `json:"accountName" description:"账号名称"`
|
|
Amount float64 `json:"amount" description:"订单金额"`
|
|
AlipayUrl string `json:"alipayUrl" description:"支付宝支付链接"`
|
|
Status consts.CamelOilOrderStatus `json:"status" description:"订单状态"`
|
|
StatusText string `json:"statusText" description:"订单状态文本"`
|
|
PayStatus consts.CamelOilPayStatus `json:"payStatus" description:"支付状态"`
|
|
PayStatusText string `json:"payStatusText" description:"支付状态文本"`
|
|
NotifyStatus consts.CamelOilNotifyStatus `json:"notifyStatus" description:"回调状态"`
|
|
NotifyStatusText string `json:"notifyStatusText" description:"回调状态文本"`
|
|
NotifyCount int `json:"notifyCount" description:"回调次数"`
|
|
PaidAt *gtime.Time `json:"paidAt" description:"支付完成时间"`
|
|
LastCheckAt *gtime.Time `json:"lastCheckAt" description:"最后检测支付时间"`
|
|
FailureReason string `json:"failureReason" description:"失败原因"`
|
|
CreatedAt *gtime.Time `json:"createdAt" description:"创建时间"`
|
|
UpdatedAt *gtime.Time `json:"updatedAt" description:"更新时间"`
|
|
}
|
|
|
|
type ListOrderRes struct {
|
|
commonApi.CommonPageRes[OrderListItem]
|
|
}
|
|
|
|
// OrderDetailReq 订单详情查询
|
|
type OrderDetailReq struct {
|
|
g.Meta `path:"/jd-v2/order/detail" tags:"JD V2 Order" method:"get" summary:"订单详情"`
|
|
OrderNo string `json:"orderNo" v:"required#订单号不能为空" description:"订单号"`
|
|
}
|
|
|
|
type OrderDetailRes struct {
|
|
OrderInfo struct {
|
|
OrderNo string `json:"orderNo" description:"系统订单号"`
|
|
MerchantOrderId string `json:"merchantOrderId" description:"商户订单号"`
|
|
AccountId int64 `json:"accountId" description:"账号ID"`
|
|
AccountName string `json:"accountName" description:"账号名称"`
|
|
Amount float64 `json:"amount" description:"订单金额"`
|
|
AlipayUrl string `json:"alipayUrl" description:"支付宝支付链接"`
|
|
Status consts.CamelOilOrderStatus `json:"status" description:"订单状态"`
|
|
StatusText string `json:"statusText" description:"订单状态文本"`
|
|
PayStatus consts.CamelOilPayStatus `json:"payStatus" description:"支付状态"`
|
|
PayStatusText string `json:"payStatusText" description:"支付状态文本"`
|
|
NotifyStatus consts.CamelOilNotifyStatus `json:"notifyStatus" description:"回调状态"`
|
|
NotifyStatusText string `json:"notifyStatusText" description:"回调状态文本"`
|
|
NotifyCount int `json:"notifyCount" description:"回调次数"`
|
|
PaidAt *gtime.Time `json:"paidAt" description:"支付完成时间"`
|
|
LastCheckAt *gtime.Time `json:"lastCheckAt" description:"最后检测支付时间"`
|
|
Attach string `json:"attach" description:"附加信息"`
|
|
FailureReason string `json:"failureReason" description:"失败原因"`
|
|
CreatedAt *gtime.Time `json:"createdAt" description:"创建时间"`
|
|
UpdatedAt *gtime.Time `json:"updatedAt" description:"更新时间"`
|
|
} `json:"orderInfo" description:"订单信息"`
|
|
|
|
AccountInfo struct {
|
|
AccountId int64 `json:"accountId" description:"账号ID"`
|
|
AccountName string `json:"accountName" description:"账号名称"`
|
|
Phone string `json:"phone" description:"手机号(脱敦)"`
|
|
Status consts.CamelOilAccountStatus `json:"status" description:"状态"`
|
|
StatusText string `json:"statusText" description:"状态文本"`
|
|
LastUsedAt *gtime.Time `json:"lastUsedAt" description:"最后使用时间"`
|
|
} `json:"accountInfo" description:"账号信息"`
|
|
}
|
|
|
|
// OrderHistoryReq 订单历史记录查询
|
|
type OrderHistoryReq struct {
|
|
g.Meta `path:"/jd-v2/order/history" tags:"JD V2 Order" method:"get" summary:"订单历史记录"`
|
|
commonApi.CommonPageReq
|
|
OrderNo string `json:"orderNo" v:"required#订单号不能为空" description:"订单号"`
|
|
}
|
|
|
|
type OrderHistoryItem struct {
|
|
HistoryUuid string `json:"historyUuid" description:"历史记录UUID"`
|
|
OrderNo string `json:"orderNo" description:"订单号"`
|
|
ChangeType consts.CamelOilOrderChangeType `json:"changeType" description:"变更类型"`
|
|
ChangeText string `json:"changeText" description:"变更类型文本"`
|
|
AccountId int64 `json:"accountId" description:"关联账号ID"`
|
|
AccountName string `json:"accountName" description:"账号名称"`
|
|
RawData string `json:"rawData" description:"原始响应数据"`
|
|
Remark string `json:"remark" description:"备注"`
|
|
CreatedAt *gtime.Time `json:"createdAt" description:"创建时间"`
|
|
}
|
|
|
|
type OrderHistoryRes struct {
|
|
commonApi.CommonPageRes[OrderHistoryItem]
|
|
}
|
|
|
|
// AccountOrderListReq 查询账号绑定的历史订单
|
|
type AccountOrderListReq struct {
|
|
g.Meta `path:"/jd-v2/order/accountOrders" tags:"JD V2 Order" method:"get" summary:"账号历史订单"`
|
|
commonApi.CommonPageReq
|
|
AccountId int64 `json:"accountId" v:"required#账号ID不能为空" description:"账号ID"`
|
|
Status consts.CamelOilOrderStatus `json:"status" description:"订单状态筛选"`
|
|
PayStatus consts.CamelOilPayStatus `json:"payStatus" description:"支付状态筛选"`
|
|
DateRange []*gtime.Time `json:"dateRange" description:"时间范围"`
|
|
}
|
|
|
|
type AccountOrderListRes struct {
|
|
AccountInfo struct {
|
|
AccountId int64 `json:"accountId" description:"账号ID"`
|
|
AccountName string `json:"accountName" description:"账号名称"`
|
|
Phone string `json:"phone" description:"手机号(脱敦)"`
|
|
Status consts.CamelOilAccountStatus `json:"status" description:"状态"`
|
|
StatusText string `json:"statusText" description:"状态文本"`
|
|
} `json:"accountInfo" description:"账号基本信息"`
|
|
|
|
OrderStats struct {
|
|
TotalOrders int `json:"totalOrders" description:"总订单数"`
|
|
PaidOrders int `json:"paidOrders" description:"已支付订单数"`
|
|
PendingOrders int `json:"pendingOrders" description:"待支付订单数"`
|
|
TimeoutOrders int `json:"timeoutOrders" description:"超时订单数"`
|
|
} `json:"orderStats" description:"订单统计"`
|
|
|
|
// OrderList commonApi.CommonPageRes[OrderListItem] `json:"orderList" description:"订单分页列表"`
|
|
}
|
|
|
|
// OrderCallbackReq 手动触发订单回调(管理接口)
|
|
type OrderCallbackReq struct {
|
|
g.Meta `path:"/jd-v2/order/callback" tags:"JD V2 Order" method:"post" summary:"手动回调"`
|
|
OrderNo string `json:"orderNo" v:"required#订单号不能为空" description:"订单号"`
|
|
}
|
|
|
|
type OrderCallbackRes struct {
|
|
Success bool `json:"success" description:"回调是否成功"`
|
|
Message string `json:"message" description:"回调结果消息"`
|
|
}
|