|
|
a2793f7bec
|
需要改造的地方
|
2026-06-29 18:17:06 +09:00 |
|
|
|
3b7b856e48
|
企业授权增强与资产列表扩展
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 8m9s
- 企业卡授权唯一约束:新增 DB 迁移(000154),卡级部分唯一索引防止同一张卡被多个企业同时持有,Service 层新增跨企业冲突检测
- 单卡列表新增 network_status 过滤参数
- 单卡/设备列表新增 asset_status、asset_status_name、generation 响应字段
- 单卡/设备列表新增企业维度过滤(authorized_enterprise_id、is_authorized_to_enterprise)及响应中企业授权信息(批量加载,无 N+1)
- 主钱包流水/退款列表新增 asset_identifier 精确过滤参数
- 企业卡授权/收回接口升级为三模式(list/range/filter),企业设备授权/收回升级为双模式(list/filter)
- 升级 sonic v1.14.2 → v1.15.2 以兼容 Go 1.26
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-06-17 16:23:03 +09:00 |
|
|
|
cf36f1447f
|
尝试某个skills
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 6m24s
|
2026-06-16 18:58:55 +09:00 |
|
Break
|
1f634eb465
|
init
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 8m3s
|
2026-06-16 15:15:50 +08:00 |
|
Break
|
1ee554daec
|
钱包流水新增资产信息
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m59s
|
2026-05-29 10:52:12 +08:00 |
|
Break
|
58863e8ec5
|
数据迁移脚本
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 54s
|
2026-05-27 11:10:56 +08:00 |
|
Break
|
e131d6ba77
|
imei
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 21m51s
|
2026-05-26 16:55:35 +08:00 |
|
|
|
20b5d70af9
|
1. 清理预充值SQL
2. 查日志的脚本
|
2026-05-25 14:30:09 +08:00 |
|
|
|
2768deb0b6
|
设备新增搜索条件
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 8m8s
|
2026-05-20 10:27:30 +08:00 |
|
|
|
e2301d5f3b
|
chore(集成验证): gofmt 修复 DTO 格式并重新生成 OpenAPI 文档
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 8m3s
- 修复 ListStandaloneIotCardRequest 和 ListDeviceRequest 字段对齐格式
- 重新生成 docs/admin-openapi.yaml,两个列表接口均新增 has_active_package 参数
- go build ./cmd/api、go build ./cmd/worker 均通过验证
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-05-19 12:15:06 +08:00 |
|
|
|
631c5392b6
|
1
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m56s
|
2026-05-18 10:47:10 +08:00 |
|
|
|
af5a21ed1e
|
新增三个同步时间字段
|
2026-05-18 10:47:07 +08:00 |
|
|
|
480d4c4583
|
1
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m59s
|
2026-05-18 10:34:04 +08:00 |
|
|
|
ed071918ed
|
钱包订单退款时应当正确退回,充值时允许最低充值1分
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 8m7s
|
2026-05-18 09:51:59 +08:00 |
|
|
|
8f3a68a673
|
新增上游的停机原因
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 8m5s
|
2026-05-12 11:13:04 +08:00 |
|
|
|
95fc0b0a1b
|
修复一些问题,主要是生效套餐
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 8m16s
|
2026-05-12 10:32:38 +08:00 |
|
|
|
eb74dd7849
|
补回是否启用虚流量
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m58s
|
2026-05-06 16:07:59 +08:00 |
|
|
|
3a2e3f2571
|
浅浅升级一下
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 8m8s
|
2026-05-06 14:41:14 +08:00 |
|
|
|
001f8caf35
|
修复当前卡不对的问题
|
2026-05-06 10:19:21 +08:00 |
|
|
|
948243b13d
|
修改
|
2026-04-30 15:49:40 +08:00 |
|
|
|
8a3c45c577
|
设备导入卡槽不对的问题
|
2026-04-30 11:56:09 +08:00 |
|
|
|
9674e0d0d9
|
文档更新
|
2026-04-30 10:54:29 +08:00 |
|
|
|
66e12e9629
|
订单相关以及佣金相关修复
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m57s
|
2026-04-30 09:52:39 +08:00 |
|
|
|
37b4483183
|
赠送套餐逻辑
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m55s
|
2026-04-28 17:40:06 +08:00 |
|
|
|
fe4c545308
|
修正数据
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m55s
|
2026-04-27 18:10:08 +08:00 |
|
|
|
c3ae7fcfbc
|
修复设备WiFi上游请求参数
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m40s
|
2026-04-27 15:19:23 +08:00 |
|
|
|
15cd26c81a
|
强制手机绑定
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 8m1s
|
2026-04-24 10:26:32 +08:00 |
|
|
|
1f1f31a7cb
|
退款列表快照订单号
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m30s
|
2026-04-23 10:59:34 +08:00 |
|
|
|
6b1fbf4a92
|
修复金额的问题
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m30s
|
2026-04-23 10:09:23 +08:00 |
|
|
|
0f58886454
|
增加日志,提交流程图
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m42s
|
2026-04-22 14:49:09 +08:00 |
|
|
|
9f8173e124
|
灰度上线流程图准备
|
2026-04-21 16:42:47 +08:00 |
|
|
|
fd795d8742
|
feat: 新增设备切卡模式接口 SetSwitchMode
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m32s
|
2026-04-18 16:22:30 +08:00 |
|
|
|
4b8784d5e7
|
docs: 更新 OpenAPI 文档,新增批量下载 URL 接口文档
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m15s
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
|
2026-04-18 10:08:53 +08:00 |
|
|
|
6caf0f6141
|
feat: 新增全局操作密码功能,将线下充值验证从登录密码改为统一操作密码
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Has been cancelled
- 新增 RedisSystemOperationPasswordKey 常量函数(pkg/constants/redis.go)
- 新增 operation_password Service(Set/IsSet/Verify,bcrypt 哈希存 Redis)
- 新增 SuperAdminHandler 及两个接口:
- POST /api/admin/super-admin/operation-password(设置/重置,仅超级管理员)
- GET /api/admin/super-admin/operation-password/status(查询是否已设置)
- AgentRecharge.OfflinePay 操作密码验证从"查当前用户登录密码"改为"全局操作密码 Verify"
- Bootstrap/路由/文档生成器同步注册
|
2026-04-18 09:06:33 +08:00 |
|
|
|
6e15e1b853
|
docs: 更新 OpenAPI 文档及提案任务清单,新增 payment_voucher_key 字段
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m26s
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
|
2026-04-17 18:29:42 +08:00 |
|
|
|
9d8e3926ff
|
docs: 更新 OpenAPI 文档,新增 realname-mode 更新接口文档
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
|
2026-04-17 17:33:07 +08:00 |
|
|
|
44e4f03957
|
docs: 补充微信 JSSDK 配置接口 OpenAPI 文档
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
|
2026-04-17 12:04:35 +08:00 |
|
|
|
854330a4b4
|
docs: 更新 OpenAPI 文档,新增卡状态检查间隔字段
PollingConfig 请求/响应结构中添加 card_status_check_interval 字段说明
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
|
2026-04-15 12:22:55 +08:00 |
|
|
|
b972a776d9
|
重构充值订单模块:用 tb_recharge_order + tb_payment 替换 tb_asset_recharge_record
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m32s
- 新增 RechargeOrder 和 Payment 模型及对应 Store
- 新增 ClientRechargeOrderHandler 提供充值订单列表/详情接口
- 修改 client_wallet.go 使用新表读写充值数据
- 修改 callback/payment.go 将 CRCH 订单路由到 rechargeOrderService
- 修改 client_order/service.go 的强充流程使用新表
- 修改 auto_purchase.go 从 tb_recharge_order 读取 linked_package_ids
- 修改 order/service.go 的 WalletPay 使用 tb_payment 记录
- 修改 wechat_config_store.go 从 tb_recharge_order 统计待支付充值数
- 移除 AssetRechargeStore 和 AssetRechargeRecord 的注册引用
- 修复文档生成器缺失 ClientRechargeOrder handler
- 状态枚举改为 0-based: Pending=0, Paid=1, Closed=2, Refunded=3
|
2026-04-15 11:00:32 +08:00 |
|
|
|
c35542f911
|
feat: 补全客户端订单和资产 DTO _name 字段,修复代码格式
|
2026-04-14 11:19:57 +08:00 |
|
|
|
7308afe801
|
归档
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m18s
|
2026-04-13 15:03:02 +08:00 |
|
|
|
c1456f3c54
|
docs: 补充轮询自动触发环境变量说明
|
2026-04-13 14:57:00 +08:00 |
|
|
|
8d8d426e2e
|
feat: verify-asset 接口返回当前生效的公众号和小程序 AppID
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m51s
|
2026-04-11 17:22:21 +08:00 |
|
|
|
8f66ca7bcb
|
文档提交
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m14s
|
2026-04-11 11:27:43 +08:00 |
|
|
|
e9ff14df0e
|
规范: 新增枚举与状态字段规范并修复代理充值状态描述错误
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Has been cancelled
- 新增 docs/enum-status-standards.md:完整的枚举/状态规范,涵盖 int vs string 选择、起始值约定、description 格式统一、constants 唯一真相来源、Response DTO 必须提供 status_name
- 更新 dto-standards SKILL.md:加入枚举规范要点,AI 写 DTO 时自动触发
- 更新 AGENTS.md:常量管理章节和 Code Review 检查清单各加入枚举检查项
- 修复 agent_recharge_dto.go:description 从错误的 3 个状态改为正确的 5 个状态(原 3:已取消 实为 3:已完成)
- 修复 agent_recharge service:toResponse 补充 StatusName 中文字段,防止前端映射出错
|
2026-04-11 11:25:58 +08:00 |
|
|
|
677d6239ce
|
fix: 统一佣金状态常量并修复佣金明细关联查询
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m33s
- 删除 model/commission.go 中与 constants 包冲突的旧常量(值=1/2)
- 所有服务层改用 constants.CommissionStatusReleased(值=3)写入和查询
- 数据库迁移:status 1→3(已发放),2→4(已失效)
- 修复佣金明细列表接口,通过 JOIN 关联返回 order_no、iccid、virtual_no、order_created_at
- 新增 seller_shop_id / seller_shop_name 销售来源字段
- 统计接口过滤条件从精确匹配改为排除无效(NOT IN 4,99)
- 更新 OpenAPI 文档及 commission-record-query spec
|
2026-04-11 10:42:37 +08:00 |
|
|
|
5496cb58aa
|
feat: 订单创建时快照买家手机号/昵称和套餐类型
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Has been cancelled
新增字段:
- tb_order: buyer_phone, buyer_nickname(个人客户下单时快照)
- tb_order_item: package_type(套餐类型快照)
后台订单列表支持按 buyer_phone 精确过滤查询。
OpenSpec: order-buyer-snapshot
|
2026-04-10 17:12:56 +08:00 |
|
|
|
0627ffec42
|
feat: 代理商资金可见性重构(agent-fund-visibility)
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m10s
- 将 GET /shops/commission-summary 重命名为 GET /shops/fund-summary,
响应新增 main_balance、main_frozen_balance 两个预充值钱包字段
- 新增 GET /shops/:id/main-wallet/transactions 预充值钱包流水接口
- 将佣金统计、每日统计、发起提现从 /my/ 路径迁移至 /shops/:id/ 路径:
GET /shops/:id/commission-stats
GET /shops/:id/commission-daily-stats
POST /shops/:id/withdrawal-requests
- 删除 MyCommissionService、MyCommissionHandler 及全部 /my/ 路由
- 补齐 ListShopWithdrawalRequests、ListShopCommissionRecords 的
CanManageShop 越权校验(安全修复)
- 提现接口增加严格权限:仅代理账号本人可为自己店铺发起提现
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-09 14:40:39 +08:00 |
|
|
|
81ba84cf05
|
feat: 新增店铺联级查询接口
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m3s
- 新增 GET /api/admin/shops/cascade 接口,支持按店铺名模糊查询和上级ID过滤
- Store 层新增 ListForCascade(支持数据权限过滤)和 GetParentIDsWithChildren 方法
- Service 层新增 ListCascade,批量判断 has_children 避免 N+1 查询
- 返回格式:[{id, shop_name, has_children}]
💘 Generated with Crush
Assisted-by: Claude Sonnet 4.6 via Crush <crush@charm.land>
|
2026-04-09 11:43:37 +08:00 |
|
|
|
384a54164b
|
feat: 新增批量移除角色权限接口
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Has been cancelled
- 新增 DELETE /api/admin/roles/:role_id/permissions 接口
- Store 层新增 BatchDelete 方法,单次 SQL 批量软删除
- Service 层新增 BatchRemovePermissions 方法
- Handler 层新增 BatchRemovePermissions 处理函数
- DTO 新增 BatchRemovePermissionsRequest/Params
- 修复 openapi generator 对 DELETE 方法 requestBody 不生成的问题
- RouteSpec 新增 Body 字段,支持显式指定 JSON 请求体
💘 Generated with Crush
Assisted-by: Claude Sonnet 4.6 via Crush <crush@charm.land>
|
2026-04-09 11:41:58 +08:00 |
|