1280 Commits

Author SHA1 Message Date
danial
5a88d8e0d6 chore(env): 更新 OTEL_EXPORTER_ENDPOINT 配置
All checks were successful
continuous-integration/drone/push Build is passing
- 将 OTEL_EXPORTER_ENDPOINT 从 38.38.251.113:31547 修改为 host.docker.internal:31417
- 适配新的导出端点地址,提高本地调试兼容性
2025-12-17 17:59:01 +08:00
danial
0af20ab14e chore(ci): 更新CI配置中的镜像仓库地址和登录信息
All checks were successful
continuous-integration/drone Build is passing
continuous-integration/drone/push Build is passing
- 将.drone.yml中docker登录地址由git.oceanpay.cc替换为git.domainpay.top
- 修改相关docker构建、标记及推送的镜像路径为git.domainpay.top
- 更新docker-compose.yml中所有服务的镜像地址至git.domainpay.top
- 内部日志处理中添加错误日志打印,增强错误排查能力
2025-12-17 15:54:26 +08:00
danial
83dfb7dac8 chore(env): 更新生产环境配置及调整定时任务注册
- 增加OTEL及数据库、Redis相关环境变量配置
- 修改服务网关、商城和门户地址为新IP及端口
- 注释掉骆驼加油模块定时任务注册代码,暂时停用相关定时任务
- docker-compose.yml中添加extra_hosts配置,支持host.docker.internal映射
- 代码逻辑中增加条件判断,控制是否使用Haozhu平台功能
2025-12-15 17:01:26 +08:00
danial
0d861c6099 fix(docker): 修正数据库连接和迁移配置
- 更新docker-compose中migrate命令参数,改为使用目录方式管理迁移文件
- 修改spider服务环境变量,切换为单独的数据库连接配置前缀
- main.go中调整服务名称拼接逻辑,追加环境变量中的OTEL服务名称
- 删除main.go中OTel配置中的注释认证头部代码,提高配置清晰度
2025-12-14 23:41:20 +08:00
danial
cb2bba17f6 fix(otel): 修正otel环境变量名称和初始化配置
- 将docker-compose中多个服务的serverName环境变量替换为OTEL_SERVICE_NAME
- 将OTEL_COLLECTOR_URL环境变量替换为OTEL_EXPORTER_ENDPOINT以统一命名
- main.go中移除未使用依赖,简化变量声明
- otel配置从环境变量获取OTEL_EXPORTER_ENDPOINT,默认地址保持不变
- otel配置赋值时去除不必要的String转换保持类型一致性
2025-12-14 23:27:37 +08:00
danial
9a5ef23f34 feat(docker): 更新镜像仓库地址及添加数据库迁移服务
- 替换所有服务镜像地址为 git.oceanpay.cc 域名仓库
- 添加 kami-db-migrate 服务用于数据库模式迁移
- 删除多个旧服务定义以简化配置
- 为相关服务添加并传递 OTEL 服务名和收集器地址环境变量
- 修改 kami-spider-monorepo 服务的数据库及 Redis 环境变量为动态获取
- 调整 main.go 中 OpenTelemetry 配置逻辑,支持环境变量自定义服务名和收集器URL
- 设置 OpenTelemetry 配置中的 CollectorURL 字符串赋值和默认值处理逻辑
2025-12-14 22:33:12 +08:00
danial
f96c2f21ad fix(camel_oil): 修正订单查询顺序问题
- 在查询处理中订单时添加按创建时间升序排序
- 确保订单获取顺序符合预期逻辑
- 解决因排序引起的处理异常情况
2025-12-13 16:08:03 +08:00
danial
eda5ff8fed feat(camelOil): 使用智能调度算法优化Token绑定逻辑
- 移除旧的可用Token检查和轮询绑定逻辑
- 新增GetOptimalTokenForBinding方法,按上传时间顺序选择最优Token
- 增加isTokenEligible方法,全面校验Token有效性和用户余额
- 绑定卡密操作改为调用智能调度算法选出的最优Token进行绑定
- 完善绑定失败和异常处理,增加日志记录细节信息
- 提升绑卡选Token的准确性和业务鲁棒性
2025-12-11 23:13:59 +08:00
danial
74d892fad9 fix(camel_oil): improve callback retry logic and token update handling
- Increase CamelOilMaxCallbackRetry from 3 to 5 for callback attempts
- Refactor order callback failure flow to update notify status and count correctly
- Fix HTTP callback request to capture and return errors properly
- Use constant CamelOilMaxCallbackRetry for pending callback query condition
- Correct token bind count update with proper chained Data calls
- Add error return when token is disabled due to frequent input errors
- Comment out test call in ListAccount to prevent unintended execution
2025-12-11 22:51:34 +08:00
danial
85b552eec3 feat(camel_oil): add order export to Excel functionality
- Add ExportOrder RPC method to camel_oil API and service interfaces
- Implement service logic to query orders and generate Excel file with order data
- Include card number and password fields in order export
- Create HTTP handler to stream Excel file with proper headers for download
- Handle token status update on frequent error ban (oneDay case)
- Fix order processing query to filter by status and pay status correctly
- Add new error code for one-day ban in camel_oil_api and handle in client logic
- Update order model and response to include card number and password
- Remove redundant logging of SendCaptcha request data in camel_oil_api client
- Add access control checks on ExportOrder endpoint for authorized users only
2025-12-11 20:13:52 +08:00
danial
75a032019a fix(camel_oil_api): update API endpoints and improve logging in order query
- Change query and recharge URLs from recharge3.bac365.com to app.bac365.com
- Remove redundant glog info and debug logs to reduce log noise
- Log full response string before unmarshalling JSON to aid debugging
- Use request data directly when posting instead of marshalled body
- Add new unit test for CronOrderPaymentCheckTask to improve coverage
- Maintain detailed prefetch order logs for key steps and errors
2025-12-11 17:50:32 +08:00
danial
356ff9b408 fix(camel_oil): correct payment timeout and order query duration
- Adjust order query time window from 6 hours ahead to 1 day before the current time
- Update payment timeout check duration from 24 hours to 1 hour
- Remove unused time package import from cron_tasks.go
- Fix logic to properly identify unpaid orders within the correct timeframe
2025-12-11 17:28:51 +08:00
danial
1da95d16b4 fix(card_apple_account): 修正账号查询逻辑,添加状态过滤和排序
- 在查询苹果账号时增加账号状态为正常的过滤条件
- 按创建时间升序排列账号记录,保证查询结果有序
- 移除重复的状态过滤和排序调用,优化查询链
- 保证排除指定账户ID和账号列表的逻辑不受影响
2025-12-11 13:57:54 +08:00
danial
0e58fafe83 fix(card_apple_order): 优化充值余额查询错误处理
- 使用gerror.New封装查询余额失败的错误信息
- 调整未知错误处理时传递的错误信息,替换为err.Error()
- 改善日志中充值余额查询失败的错误表达方式
- 提升错误信息的准确性和可读性
2025-12-11 01:00:47 +08:00
danial
14ab86d4b7 fix(card_apple_order): 优化查询订单失败时的错误处理与日志记录
- 修改网络错误处理逻辑,增加充值历史记录记录失败详情
- 删除原有的特定错误码处理,简化错误判断流程
- 在订单查询异常时,添加详细的账号和卡密失败原因备注
- 保留其他错误情况下的历史记录添加功能,增强可追溯性
2025-12-10 16:00:18 +08:00
danial
929c8dbb79 fix(camel_oil): 优化卡密绑定任务的日志输出
- 移除卡密绑定任务开始时的info级别日志
- 移除无待绑定订单时的debug级别日志
- 减少日志冗余,优化日志使用策略
2025-12-09 22:37:48 +08:00
danial
219f85edce fix(camel_oil): 修正订单状态判断逻辑避免错误失效提示
- 将订单状态判断条件由相等改为不等,修复判断错误
- 避免状态为挂起的订单被错误判定为失效
- 提升订单提交接口的准确性和用户体验
- 防止因状态判断错误导致业务逻辑异常
2025-12-09 21:59:23 +08:00
danial
8468cac4af fix(camel_oil): 缩短预拉取订单过期时间并移除登录校验
- 将预拉取订单过期时间从24小时改为5分钟,提升时效性
- 移除提交订单时的登录校验代码,简化调用流程
- 在订单逻辑中新增判断,订单处于待处理状态时返回失效提示
- 删除无用代码及导入,清理代码结构
2025-12-09 21:53:04 +08:00
danial
4215576170 fix(camel_oil): 修正登录校验与登录令牌过期时间
- 将登录校验方法调整为LoginWithIFrameAndLogin以兼容iframe场景
- 修正验证码登录逻辑,区分空令牌和错误
- 更新登录令牌过期时间为30天,延长有效期
- 保持登录令牌状态为可用,并更新最后登录时间
2025-12-09 20:38:06 +08:00
danial
fd679be483 feat(camel_oil): 实现批量删除过期账号功能
- 添加 DeleteExpiredAccounts 接口处理函数
- 验证管理员权限,限制只能管理员执行删除操作
- 调用服务层方法删除所有过期账号
- 返回删除数量及操作完成提示信息
2025-12-09 20:16:37 +08:00
danial
8112cf92f4 feat(account): 添加删除所有过期无效账号接口
- 新增DeleteExpiredAccountsReq和DeleteExpiredAccountsRes结构体
- 实现DeleteAllExpiredAccounts函数,通过状态删除过期账号
- 在service接口中加入DeleteAllExpiredAccounts方法声明
- 将定时任务注册中添加CronExpiredTokensCode和CronCardBindingTask任务调用
- 删除了原有的Token自动登录及验证码发送相关复杂逻辑,改为简单清理状态的实现
- 修正Token删除逻辑为直接删除数据库记录
- 调整Token状态校验逻辑,允许验证码已发送和验证失败状态输入验证码
- 修正CreateTokenReq中手机号验证规则为phone格式验证
2025-12-09 20:13:03 +08:00
danial
e3956cbe35 refactor(camelOil): 优化 Token 相关接口和模型结构
- 调整 CamelOilToken 相关输入输出模型,增强数据结构表达能力
- 统一服务层方法参数,使用结构体传递参数,提升代码可读性和扩展性
- 更新控制层调用逻辑,传递结构体参数替换原有独立参数
- 增加卡密绑定及分页查询相关输入结构定义
- 优化枚举及状态常量使用,确保状态类型表达准确
- 规范代码 import 顺序和格式,清理无用 import
- 修正 gtag 全局枚举顺序,优化内部键值排列顺序
2025-12-09 16:12:15 +08:00
danial
8c457895c8 feat(camel_oil): 支持Token验证码输入与重新发送功能
- 在CamelOil接口中新增InputVerificationCode和ResendVerificationCode方法
- 扩展Token状态,增加验证码验证失败状态
- 调整Token创建逻辑,初始化状态为验证码已发送
- 删除旧的发送验证码和登录方法,改为统一的验证码输入处理
- 增加验证Token状态后验证码登录逻辑,更新登录Token信息
- 实现重新发送验证码接口,限制状态后允许重发
- API和控制层新增输入验证码与重新发送验证码的请求响应结构与处理逻辑
- Token列表及详情响应中新增LoginToken字段返回登录令牌信息
2025-12-09 13:58:05 +08:00
danial
3ef482357b feat(camel_oil): 新增Token自动登录与验证码管理功能
- 新增Token状态:待验证码、登录失败、验证码已发送等多种状态
- 修改Token模型及数据库结构,新增登录token及过期时间字段
- 创建Token时,默认状态为待验证码,异步发送验证码
- 实现Token登录接口,支持验证码登录并更新登录token信息
- 支持重发验证码接口及获取需登录Token列表接口
- 添加Token自动登录定时任务,自动发送验证码和重试登录
- 优化账号列表查询,默认按状态升序排列,搜索支持模糊匹配
- 调整API和服务接口,统一Token名称和状态相关字段命名
- 修正绑定卡密接口使用登录token替代旧token值登录
- 新增Token管理相关单元测试用例,覆盖新增功能逻辑
2025-12-08 23:02:24 +08:00
danial
1e2b734b19 fix(camel_oil): 修复预拉取订单过期判断及日志错误处理
- 修正查询已过期订单时的时间比较操作,由小于等于改为小于
- 修正查询未过期订单计数时的时间比较操作,由大于等于改为大于
- 添加解析查询响应失败时的错误日志,便于排查问题
- 调整预拉取订单过期时间为5分钟,减少订单有效期
- 在定时任务中新增清理过期预拉取订单任务,保持数据清洁
2025-12-08 20:02:25 +08:00
danial
e3fc3f08c1 fix(camel_oil): 修复预取订单日志时间顺序
- 引入切片反转函数以倒序存储单分钟日志
- 避免日志顺序混乱,确保时间戳递减排列
- 优化日志处理逻辑,提升数据准确性
- 创建临时日志切片以批量操作再合并结果列表
2025-12-08 16:44:45 +08:00
danial
ff0d6e2d9f fix(proxy): 更新代理池初始化策略的接口地址和测试逻辑
- 替换main.go中代理池初始化策略的API密钥和参数
- 修改测试用例,增加定时器循环调用初始化和代理获取
- 测试中使用随机UUID模拟订单ID获取代理
- 保证测试用例能持续获取代理结果进行日志输出
2025-12-08 16:34:23 +08:00
danial
622aed094b fix(proxy): 处理代理获取错误并更新测试策略
- 在获取代理失败时记录错误日志
- 修改测试中代理池初始化策略的API Key及参数
- 新增代理池测试用例验证获取代理功能
- 测试中添加日志输出以便调试代理信息
2025-12-08 16:18:18 +08:00
danial
24b823d701 fix(camel_oil): 修正时间范围遍历逻辑错误
- 使用结束时间的分钟开始作为当前时间起点
- 设置实际结束时间为结束时间的分钟结束
- 修正遍历条件为当前时间是否在起始时间之后或相等
- 修正循环遍历每一分钟的逻辑保证正确范围
- 确保日志计数达到最大值时停止遍历
2025-12-08 15:46:34 +08:00
danial
a5c2dd4f67 fix(cache): 修正日志预取时时间递增方向错误
- 修改获取Redis日志失败时时间递增逻辑,改为递减1分钟
- 调整空日志判断时时间递增为递减1分钟
- 修正日志解析失败时时间递增为递减1分钟
- 防止因时间递增错误导致的循环逻辑异常
2025-12-08 15:37:22 +08:00
danial
d53aa249cc refactor(camel_oil): 移除冗余glog日志,统一使用保存日志方法
- 删除SendCaptcha和登录相关接口中的glog.Infof和glog.Info日志调用
- 去除PrefetchOrder并发拉取订单和单账号拉取订单过程中的所有glog日志
- 在绑卡请求响应处改为记录详细响应日志,替代原有glog日志
- order_logs接口响应结构新增实际查询到的最早和最晚日志时间字段
- prefetch_order_logs逻辑增加对实际查询时间范围的记录和返回
- 统一调用service.CamelOil().SavePrefetchOrderLog记录详细业务日志,避免重复打印
2025-12-08 14:52:03 +08:00
danial
995b0cd3eb fix(camel_oil): 限制预取订单日志数量为1000条
- 添加最大日志条数变量,限制展示日志条数为1000条
- 在遍历和获取日志时增加计数逻辑,达到上限时提前退出循环
- 避免一次性加载过多数据,提升性能和稳定性
2025-12-08 14:29:16 +08:00
danial
4afde35232 fix(proxy): 优化代理池使用及测试代码
- 替换固定代理地址为从代理池随机获取代理
- 修改代理池初始化地址为新的第三方代理接口
- 取消注释并清理代理认证用户名密码
- 更新测试用例,注册并初始化代理池,测试基础请求
- 调整主程序中代理池初始化地址配置
2025-12-08 01:05:03 +08:00
danial
cc164aec55 fix(camel_oil_api): 更新代理服务器地址和端口
- 替换了socks5代理的用户名和密码
- 更改了代理服务器的主机地址
- 修改了代理服务器使用的端口号
2025-12-07 22:29:10 +08:00
danial
7d103c4093 feat(card): 新增骆驼加油卡密类别及相关业务逻辑
- 新增 CardRedeemAccountCategoryCamelOil 类型及名称映射
- 修改绑定 Token 查询变量名避免变量覆盖
- 优化苹果订单推送中备注字段命名,区分订单和操作备注
- 修复苹果订单支付异常处理中的备注赋值错误
- 在骆驼加油卡密消费时同步更新商户消费记录
- 调整骆驼加油相关代码,完善订单绑定及状态处理逻辑
2025-12-07 21:31:20 +08:00
danial
7881009376 fix(camel_oil): 统一预拉取订单库存字段及补充逻辑
- 修改 DenominationSetting 结构体,合并 MinCapacity 和 TargetCapacity 为统一的 Capacity 字段
- 预拉取订单库存检查逻辑改用 Capacity 进行判断和补充
- 优化相关变量命名,提升代码可读性
- 修正库存不足时的补充数量计算及日志记录逻辑
2025-12-07 20:19:46 +08:00
danial
c18cdc06f5 fix(camel_oil): 修复预加载订单日志时间遍历逻辑
- 将起始时间变量由开始时间改为结束时间
- 修正循环中时间的递增为递减,确保正确遍历时间范围
- 避免时间范围遍历出现逻辑错误导致数据遗漏
- 保持时间格式的一致性与正确性
- 优化时间循环逻辑,使预加载功能准确执行
2025-12-07 01:28:31 +08:00
danial
6890938e96 refactor(camel_oil): 移除多余的日志打印信息
- 删除了当前在线账号数量和目标数量的日志输出
- 去除了获取预拉取订单日志数量的日志打印
- 精简代码,减少无用日志,提高运行效率
2025-12-07 01:25:35 +08:00
danial
a7ecd1147b fix(docker): 优化Alpine镜像源配置及时区设置
- 移除阿里云镜像源配置,改用默认镜像源进行apk更新
- 保持时区数据安装和上海时区设置不变
- 简化Dockerfile相关命令,提升构建效率
2025-12-07 00:48:37 +08:00
danial
cddb704ee7 fix(camel_oil): 优化预拉取订单库存日志记录
- 在创建订单响应时日志中添加手机号信息
- 替换未使用的日志保存代码为真实调用
- 预拉取订单库存不足时添加日志记录补充单数
- 统一日志格式,提升监控和调试的可读性
2025-12-07 00:35:20 +08:00
danial
8e60429dfd fix(camel_oil): 优化时间格式处理及错误码使用
- 移除无用日志打印,减少冗余信息
- 统一使用标准时间格式 "2006-01-02T15:04" 替代不规范格式
- 调整时间跨度校验,禁止结束时间小于开始时间
- 使用 gcode 标准错误码替代普通错误信息
- 规范Redis键的生成逻辑,确保一致性
- 更新相关单元测试,匹配时间格式调整
2025-12-06 23:48:44 +08:00
danial
ed3b3c9e42 fix(camel_oil_api): 调整并注释订单日志保存代码
- 将并发设置从 PrefetchConcurrencyAccounts 修改为 SingleAccountConcurrency
- 注释掉 SavePrefetchOrderLog 函数调用,暂时关闭订单日志保存功能
- 清理测试代码,删除多余空行和注释符号
2025-12-06 23:27:44 +08:00
danial
57d91991fc refactor(api): 优化 camel_oil_api 客户端及日志隐私处理
- 为 NewClient 函数添加 context 参数以支持上下文传递
- 修改调用处使用带 context 的 NewClient 构造客户端实例
- 调整日志打印,手机号不再部分隐藏,确保日志信息完整
- 添加客户端代理配置,使用固定 socks5 代理地址
- 更新代理池初始化 Key 和代理用户名密码信息
- 调整创建订单、登录等接口日志,保存完整手机号
- 修正测试文件调用,改用带 context 的客户端创建方式
- 移除部分旧注释代码,提高代码清晰度
- 优化查询订单时卡号日志信息,输出完整卡号
- 调整部分时间和循环控制相关实现,提升代码规范性
2025-12-06 23:20:59 +08:00
danial
c643970397 fix(prefetch): 修正时间格式处理及优化预拉取订单日志逻辑
- 将时间格式由固定字符串改为使用标准格式化方法格式化时间对象
- 修复logs结构体字段Timestamp的对齐问题
- 调整Redis Key生成方式,统一使用时间对象格式化结果
- 删除部分冗余日志打印,减少不必要的日志输出
- 优化OpenTelemetry批处理配置,调整批处理大小和超时时间,提升性能
- 添加OpenTelemetry系统简化版初始化代码,与GoFrame集成
2025-12-06 22:18:39 +08:00
danial
d3da03990b fix(integration): 更新 Camel Oil API 请求地址和日志手机号显示
- 将所有请求地址由 recharge3.bac365.com 替换为 app.bac365.com
- 修改日志中手机号显示,移除部分掩码,直接展示完整手机号
- 保持发送验证码、登录及查询接口的请求地址一致性
- 更新错误日志和响应日志中手机号的显示格式

perf(otel): 配置 OpenTelemetry gRPC 最大消息大小限制

- 为 trace exporter 添加 gRPC 最大接收和发送消息大小限制(100MB)
- 为 log exporter 添加相同的 gRPC 消息大小限制配置
- 确保大数据量的采样和日志传输过程中不被消息大小限制阻断
2025-12-06 21:58:09 +08:00
danial
8c84aeabf1 fix(camel_oil): 修正手机号存在判断逻辑
- 将手机号存在判断条件由 existingAccount == nil 修改为 existingAccount != nil
- 确保手机号已存在时返回错误提示,避免重复使用该手机号
- 优化账号登录逻辑中的手机号校验流程
2025-12-06 21:34:46 +08:00
danial
8fc3c2a1cb refactor(camel_oil): 优化登录流程并添加链路追踪
- 删除了 LoginAccount 中的轮询逻辑,改为单次获取手机号
- 当手机号已存在时返回错误,提示重新获取手机号
- BatchLoginAccounts 函数中固定并发数为1,移除依赖的配置项
- 添加调用链的追踪 span,覆盖 LoginAccount、BatchLoginAccounts 及 pig 包的 GetAccountInfo 方法
- CronAccountPrefetchTask 中新增链路追踪并传递新的上下文 span
- 统一日志上下文使用新的 gtrace span 追踪ctx,提升可观测性
- 移除部分无用导入,整理代码结构
2025-12-06 21:27:38 +08:00
danial
a4419f8ee6 fix(camelOil): 优化账户预拉取任务时间判断逻辑
- 移除 CronAccountPrefetchTask 中对拉取时间的限制判断
- 使账户预拉取任务不再受时间段限制,支持全天调度
- 简化任务执行条件,避免因时间限制而跳过执行
- 保持任务正常获取设置信息和后续处理流程
2025-12-06 21:04:59 +08:00
danial
55edcd5a1d fix(camel_oil): 优化预拉取订单与账号登录逻辑处理
- 在账号登录逻辑中增加平台使用判断,优化并发控制流程
- 预拉取订单补充成功时增加日志保存,补充数量为0时不保存
- 查询待支付订单为空时去除冗余日志输出
- 查询待验证码账号为空时提前返回,避免不必要日志
- 未配置面额设置时移除多余日志,直接返回结果
2025-12-06 16:36:17 +08:00
danial
6014195889 fix(integration): 修复获取设置失败时返回错误
- 移除默认的硬编码用户名和密码
- 获取设置失败时返回明确错误信息,避免使用默认值
- 保持向后兼容的错误处理逻辑
2025-12-06 15:48:08 +08:00