Files
kami_backend/internal/consts/camel_oil.go
danial 15e2426e85 feat(camel_oil): 新增骆驼加油账号管理模块
- 实现账号增删改查接口和逻辑
- 支持账号状态更新及状态历史记录功能
- 提供账号列表、历史和统计信息查询API
- 实现账号轮询机制,支持按使用时间轮询获取账号
- 增加账号登录流程及批量登录功能,集成接码平台和平台API
- 管理账号订单容量,支持容量检查与账号登录触发
- 提供账号池状态统计接口
- 账号历史记录查询支持多种变更类型文本展示
- 密码等敏感信息采用脱敏展示
- 完善日志记录和错误处理机制,保证业务稳定运行
2025-11-21 00:49:50 +08:00

229 lines
9.9 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package consts
// ====================================================================================
// 骆驼加油订单处理模块常量定义
// ====================================================================================
// CamelOilAccountStatus 骆驼加油账号状态枚举
type CamelOilAccountStatus int
const (
CamelOilAccountStatusPending CamelOilAccountStatus = 0 // 待登录
CamelOilAccountStatusSendCode CamelOilAccountStatus = 1 // 发送验证码
CamelOilAccountStatusOnline CamelOilAccountStatus = 2 // 在线
CamelOilAccountStatusPaused CamelOilAccountStatus = 3 // 已暂停
CamelOilAccountStatusInvalid CamelOilAccountStatus = 4 // 已失效
)
// CamelOilAccountStatusText 账号状态文本映射
var CamelOilAccountStatusText = map[CamelOilAccountStatus]string{
CamelOilAccountStatusPending: "待登录",
CamelOilAccountStatusSendCode: "登录中",
CamelOilAccountStatusOnline: "在线",
CamelOilAccountStatusPaused: "已暂停",
CamelOilAccountStatusInvalid: "已失效",
}
// CamelOilOrderStatus 骆驼加油订单状态枚举
type CamelOilOrderStatus int
const (
CamelOilOrderStatusPending CamelOilOrderStatus = 0 // 待处理
CamelOilOrderStatusProcessing CamelOilOrderStatus = 1 // 处理中
CamelOilOrderStatusCompleted CamelOilOrderStatus = 2 // 已完成
CamelOilOrderStatusFailed CamelOilOrderStatus = 3 // 已失败
)
// CamelOilOrderStatusText 订单状态文本映射
var CamelOilOrderStatusText = map[CamelOilOrderStatus]string{
CamelOilOrderStatusPending: "待处理",
CamelOilOrderStatusProcessing: "处理中",
CamelOilOrderStatusCompleted: "已完成",
CamelOilOrderStatusFailed: "已失败",
}
// CamelOilPayStatus 支付状态枚举
type CamelOilPayStatus int
const (
CamelOilPaymentStatusUnpaid CamelOilPayStatus = 0 // 未支付
CamelOilPaymentStatusPaid CamelOilPayStatus = 1 // 已支付
CamelOilPaymentStatusRefunded CamelOilPayStatus = 2 // 已退款
CamelOilPaymentStatusTimeout CamelOilPayStatus = 3 // 已超时
)
// CamelOilPaymentStatusText 支付状态文本映射
var CamelOilPaymentStatusText = map[CamelOilPayStatus]string{
CamelOilPaymentStatusUnpaid: "未支付",
CamelOilPaymentStatusPaid: "已支付",
CamelOilPaymentStatusRefunded: "已退款",
CamelOilPaymentStatusTimeout: "已超时",
}
// CamelOilNotifyStatus 回调状态枚举
type CamelOilNotifyStatus int
const (
CamelOilCallbackStatusPending CamelOilNotifyStatus = 0 // 未回调
CamelOilCallbackStatusSuccess CamelOilNotifyStatus = 1 // 回调成功
CamelOilCallbackStatusFailed CamelOilNotifyStatus = 2 // 回调失败
)
// CamelOilCallbackStatusText 回调状态文本映射
var CamelOilCallbackStatusText = map[CamelOilNotifyStatus]string{
CamelOilCallbackStatusPending: "未回调",
CamelOilCallbackStatusSuccess: "回调成功",
CamelOilCallbackStatusFailed: "回调失败",
}
// ====================================================================================
// 变更类型常量定义
// ====================================================================================
// CamelOilAccountChangeType 账号变更类型
type CamelOilAccountChangeType string
const (
CamelOilAccountChangeTypeCreate CamelOilAccountChangeType = "create" // 创建账号
CamelOilAccountChangeTypeLogin CamelOilAccountChangeType = "login" // 登录成功
CamelOilAccountChangeTypeOffline CamelOilAccountChangeType = "offline" // 检测到掉线
CamelOilAccountChangeTypeLoginFail CamelOilAccountChangeType = "login_fail" // 登录失败
CamelOilAccountChangeTypePause CamelOilAccountChangeType = "pause" // 订单数达到10暂停使用
CamelOilAccountChangeTypeResume CamelOilAccountChangeType = "resume" // 次日重置,恢复使用
CamelOilAccountChangeTypeInvalidate CamelOilAccountChangeType = "invalidate" // 单日下单不足10个账号失效
CamelOilAccountChangeTypeOrderBind CamelOilAccountChangeType = "order_bind" // 绑定订单
CamelOilAccountChangeTypeOrderComplete CamelOilAccountChangeType = "order_complete" // 订单完成
CamelOilAccountChangeTypeUpdate CamelOilAccountChangeType = "update" // 更新账号信息
CamelOilAccountChangeTypeDelete CamelOilAccountChangeType = "delete" // 删除账号
)
// CamelOilAccountChangeTypeText 账号变更类型文本映射
var CamelOilAccountChangeTypeText = map[CamelOilAccountChangeType]string{
CamelOilAccountChangeTypeCreate: "创建账号",
CamelOilAccountChangeTypeLogin: "登录成功",
CamelOilAccountChangeTypeOffline: "检测到掉线",
CamelOilAccountChangeTypeLoginFail: "登录失败",
CamelOilAccountChangeTypePause: "暂停使用",
CamelOilAccountChangeTypeResume: "恢复使用",
CamelOilAccountChangeTypeInvalidate: "账号失效",
CamelOilAccountChangeTypeOrderBind: "绑定订单",
CamelOilAccountChangeTypeOrderComplete: "订单完成",
CamelOilAccountChangeTypeUpdate: "更新账号",
CamelOilAccountChangeTypeDelete: "删除账号",
}
// CamelOilOrderChangeType 订单变更类型
type CamelOilOrderChangeType string
const (
CamelOilOrderChangeTypeCreate CamelOilOrderChangeType = "create" // 创建订单
CamelOilOrderChangeTypeSubmit CamelOilOrderChangeType = "submit" // 提交到骆驼平台
CamelOilOrderChangeTypeGetPayUrl CamelOilOrderChangeType = "get_pay_url" // 获取支付链接
CamelOilOrderChangeTypeCheckPay CamelOilOrderChangeType = "check_pay" // 检测支付状态
CamelOilOrderChangeTypePaid CamelOilOrderChangeType = "paid" // 支付成功
CamelOilOrderChangeTypeTimeout CamelOilOrderChangeType = "timeout" // 支付超时
CamelOilOrderChangeTypeFail CamelOilOrderChangeType = "fail" // 下单失败
CamelOilOrderChangeTypeCallbackSuccess CamelOilOrderChangeType = "callback_success" // 回调商户成功
CamelOilOrderChangeTypeCallbackFail CamelOilOrderChangeType = "callback_fail" // 回调商户失败
)
// CamelOilOrderChangeTypeText 订单变更类型文本映射
var CamelOilOrderChangeTypeText = map[CamelOilOrderChangeType]string{
CamelOilOrderChangeTypeCreate: "创建订单",
CamelOilOrderChangeTypeSubmit: "提交平台",
CamelOilOrderChangeTypeGetPayUrl: "获取支付链接",
CamelOilOrderChangeTypeCheckPay: "检测支付",
CamelOilOrderChangeTypePaid: "支付成功",
CamelOilOrderChangeTypeTimeout: "支付超时",
CamelOilOrderChangeTypeFail: "下单失败",
CamelOilOrderChangeTypeCallbackSuccess: "回调成功",
CamelOilOrderChangeTypeCallbackFail: "回调失败",
}
// ====================================================================================
// 业务配置常量
// ====================================================================================
const (
// CamelOilAccountDailyOrderLimit 账号每日订单上限
CamelOilAccountDailyOrderLimit = 10
// CamelOilMinAvailableCapacity 最小可用订单容量阈值
CamelOilMinAvailableCapacity = 50
// CamelOilTargetOnlineAccounts 目标在线账号数量
CamelOilTargetOnlineAccounts = 5
// CamelOilOrderExpireDuration 订单支付超时时间(小时)
CamelOilOrderExpireDuration = 24
// CamelOilMaxCallbackRetry 回调最大重试次数
CamelOilMaxCallbackRetry = 3
// CamelOilMaxLoginConcurrency 最大并发登录数量
CamelOilMaxLoginConcurrency = 3
// CamelOilTokenExpireDuration Token过期时间
CamelOilTokenExpireDuration = 30
// CamelOilAccountLockKey Redis中账号分配锁的键名前缀
CamelOilAccountLockKey = "camel_oil_api:account:lock:"
// CamelOilOrderLockKey Redis中订单处理锁的键名前缀
CamelOilOrderLockKey = "camel_oil_api:order:lock:"
// CamelOilLoginTaskLockKey Redis中登录任务分布式锁的键名
CamelOilLoginTaskLockKey = "camel_oil_api:task:login:lock"
// CamelOilCheckTaskLockKey Redis中检测任务分布式锁的键名
CamelOilCheckTaskLockKey = "camel_oil_api:task:check:lock"
// CamelOilDailyResetTaskLockKey Redis中日重置任务分布式锁的键名
CamelOilDailyResetTaskLockKey = "camel_oil_api:task:daily_reset:lock"
)
// ====================================================================================
// 错误码常量
// ====================================================================================
const (
// ErrCodeCamelOilNoAvailableAccount 无可用账号
ErrCodeCamelOilNoAvailableAccount = "CAMEL_OIL_NO_AVAILABLE_ACCOUNT"
// ErrCodeCamelOilAccountNotFound 账号不存在
ErrCodeCamelOilAccountNotFound = "CAMEL_OIL_ACCOUNT_NOT_FOUND"
// ErrCodeCamelOilAccountLoginFailed 账号登录失败
ErrCodeCamelOilAccountLoginFailed = "CAMEL_OIL_ACCOUNT_LOGIN_FAILED"
// ErrCodeCamelOilAccountOffline 账号掉线
ErrCodeCamelOilAccountOffline = "CAMEL_OIL_ACCOUNT_OFFLINE"
// ErrCodeCamelOilAccountReachLimit 账号订单数已达上限
ErrCodeCamelOilAccountReachLimit = "CAMEL_OIL_ACCOUNT_REACH_LIMIT"
// ErrCodeCamelOilOrderSubmitFailed 订单提交失败
ErrCodeCamelOilOrderSubmitFailed = "CAMEL_OIL_ORDER_SUBMIT_FAILED"
// ErrCodeCamelOilOrderNotFound 订单不存在
ErrCodeCamelOilOrderNotFound = "CAMEL_OIL_ORDER_NOT_FOUND"
// ErrCodeCamelOilOrderPayTimeout 订单支付超时
ErrCodeCamelOilOrderPayTimeout = "CAMEL_OIL_ORDER_PAY_TIMEOUT"
// ErrCodeCamelOilPhoneGetFailed 获取手机号失败
ErrCodeCamelOilPhoneGetFailed = "CAMEL_OIL_PHONE_GET_FAILED"
// ErrCodeCamelOilPhoneDuplicate 手机号重复
ErrCodeCamelOilPhoneDuplicate = "CAMEL_OIL_PHONE_DUPLICATE"
// ErrCodeCamelOilCodeGetFailed 获取验证码失败
ErrCodeCamelOilCodeGetFailed = "CAMEL_OIL_CODE_GET_FAILED"
// ErrCodeCamelOilCallbackFailed 回调商户失败
ErrCodeCamelOilCallbackFailed = "CAMEL_OIL_CALLBACK_FAILED"
// ErrCodeCamelOilSystemBusy 系统繁忙
ErrCodeCamelOilSystemBusy = "CAMEL_OIL_SYSTEM_BUSY"
)