|
|
62186ca672
|
feat(iap/apple): 实现苹果IAP非续期订阅功能
Build docker and publish / build (20.15.1) (push) Successful in 6m37s
新增苹果IAP相关接口与逻辑,包括产品列表查询、交易绑定、状态查询和恢复购买功能。移除旧的IAP验证逻辑,重构订阅系统以支持苹果IAP交易记录存储和权益计算。
- 新增/pkg/iap/apple包处理JWS解析和产品映射
- 实现GET /products、POST /attach、POST /restore和GET /status接口
- 新增apple_iap_transactions表存储交易记录
- 更新文档说明配置方式和接口规范
- 移除旧的AppleIAP验证和通知处理逻辑
|
2025-12-13 20:54:50 -08:00 |
|
|
|
a80d6af035
|
refactor(payment): 移除ApplePay支付平台支持并整合到Stripe
Build docker and publish / build (20.15.1) (push) Has been cancelled
将ApplePay支付方式整合到Stripe平台处理,移除独立的ApplePay平台代码
简化支付逻辑,统一通过Stripe处理所有支付方式
|
2025-12-09 00:58:03 -08:00 |
|
|
|
d95911d6bd
|
feat(支付): 新增Apple IAP支付支持
Build docker and publish / build (20.15.1) (push) Has been cancelled
实现Apple应用内购支付功能,包括:
1. 新增AppleIAP和ApplePay支付平台枚举
2. 添加IAP验证接口/v1/public/iap/verify处理初购验证
3. 实现Apple服务器通知处理逻辑/v1/iap/notifications
4. 新增JWS验签和JWKS公钥缓存功能
5. 复用现有订单系统处理IAP支付订单
相关文档已更新,包含接入方案和实现细节
|
2025-12-09 00:53:25 -08:00 |
|
|
|
4b6fcb338e
|
refactor(用户): 优化设备解绑逻辑并提取错误上报接口文档
Build docker and publish / build (20.15.1) (push) Successful in 7m15s
重构设备解绑逻辑,简化事务处理流程并移除冗余代码。将错误上报接口的详细说明从主文档拆分到单独文件,提高文档可维护性。
- 合并设备查询与认证记录查询操作
- 简化匿名用户创建流程
- 移除冗余的错误日志记录
- 将错误上报接口文档拆分到单独文件
|
2025-12-03 01:45:06 -08:00 |
|
|
|
f0439f4f80
|
feat(日志): 新增客户端错误日志收集功能
Build docker and publish / build (20.15.1) (push) Successful in 6m50s
- 创建 log_message 表用于存储客户端错误日志
- 实现客户端日志上报接口 POST /v1/common/log/message/report
- 添加管理端日志查询接口 GET /v1/admin/log/message/error/list 和 GET /v1/admin/log/message/error/detail
- 实现日志指纹去重和限流机制
- 完善相关模型、逻辑和文档说明
|
2025-12-02 20:12:33 -08:00 |
|
|
|
61cdc0ce23
|
feat(log): 添加客户端错误日志采集功能
Build docker and publish / build (20.15.1) (push) Successful in 7m17s
新增 log_message 表用于存储客户端错误日志,包含平台、设备信息、错误详情等字段
添加客户端上报接口和管理端查询接口
实现日志去重、限流和安全防护机制
|
2025-12-02 19:34:43 -08:00 |
|
|
|
d1a620f939
|
feat(支付): 添加支付金额转换日志并优化代码结构
Build docker and publish / build (20.15.1) (push) Successful in 7m17s
为支付宝、Stripe、Epay和CryptoSaaS支付逻辑添加金额转换的日志记录
将支付请求参数提取为变量并添加日志记录
优化代码结构,提高可读性和可维护性
|
2025-12-02 18:30:16 -08:00 |
|
|
|
6fba1d683a
|
fix(支付): 修复金额计算精度问题
Build docker and publish / build (20.15.1) (push) Successful in 6m45s
在epayPayment和CryptoSaaSPayment方法中,对转换后的金额进行四舍五入保留两位小数处理,确保支付金额精度准确
|
2025-12-02 02:35:05 -08:00 |
|
|
|
9987bd43fa
|
fix(订单): 修复折扣计算问题并添加四舍五入处理
Build docker and publish / build (20.15.1) (push) Successful in 6m53s
统一处理百分比和系数两种折扣输入方式,增加边界保护
在金额计算中使用math.Round进行四舍五入处理
添加相关单元测试确保计算准确性
|
2025-12-02 02:22:09 -08:00 |
|
|
|
fcdd6ac170
|
fix(admin/user): 修复删除用户设备时未清理缓存和会话的问题
Build docker and publish / build (20.15.1) (push) Successful in 6m47s
添加设备删除前的检查逻辑,确保设备存在后再执行删除操作
在删除设备前先踢下线在线设备并清理相关缓存会话
最后删除数据库中的设备记录,确保数据一致性
|
2025-12-02 01:45:12 -08:00 |
|
|
|
d546ea6502
|
feat(auth): 添加设备绑定和解绑的日志记录和缓存清理
Build docker and publish / build (20.15.1) (push) Has been cancelled
在设备绑定和解绑逻辑中添加详细的日志记录,包括用户ID、设备标识符和限制检查
解绑时增加设备管理器的踢出操作,确保设备状态同步
|
2025-12-02 01:38:32 -08:00 |
|
|
|
6b65ffb728
|
fix(user): 修复解绑设备接口的502错误和安全断言问题
Build docker and publish / build (20.15.1) (push) Successful in 7m4s
修复不安全类型断言可能导致panic的问题,将Redis清理移出事务并添加超时控制
增加代理层超时配置和详细日志,提升接口稳定性
|
2025-12-01 21:24:11 -08:00 |
|
|
|
37cec59460
|
refactor(用户绑定邮箱): 修改设备记录处理逻辑,从删除改为更新归属
Build docker and publish / build (20.15.1) (push) Successful in 7m7s
将原本删除设备记录并创建新记录的逻辑改为直接更新设备记录的归属用户ID
移除不再需要的旧设备信息获取和创建新设备记录的代码
|
2025-12-01 01:22:55 -08:00 |
|
|
|
e02e1d1f37
|
refactor(user): 移除未使用的trial订阅激活逻辑
Build docker and publish / build (20.15.1) (push) Successful in 6m59s
|
2025-12-01 00:52:53 -08:00 |
|
|
|
842edad966
|
refactor(用户逻辑): 移除设备解绑时激活试用订阅的逻辑
Build docker and publish / build (20.15.1) (push) Has been cancelled
|
2025-12-01 00:52:27 -08:00 |
|
|
|
77e4be3a71
|
refactor(user): 重构设备解绑逻辑,优化用户迁移流程
Build docker and publish / build (20.15.1) (push) Successful in 7m22s
- 将原有删除设备逻辑改为迁移设备到新匿名用户
- 添加注册日志记录功能
- 优化事务处理流程,确保数据一致性
- 添加试用订阅激活功能
- 完善错误处理和日志记录
|
2025-12-01 00:44:33 -08:00 |
|
|
|
306300244d
|
refactor(用户绑定): 移动设备信息获取代码位置以优化逻辑流程
Build docker and publish / build (20.15.1) (push) Successful in 7m19s
|
2025-12-01 00:22:36 -08:00 |
|
|
|
8086785828
|
fix(用户逻辑): 修复设备记录中丢失IP和UserAgent的问题
Build docker and publish / build (20.15.1) (push) Successful in 7m5s
在删除账户和绑定邮箱逻辑中,保留原设备的IP和UserAgent信息
|
2025-11-30 21:46:13 -08:00 |
|
|
|
330b4ee6a1
|
refactor(解绑设备): 优化解绑设备逻辑,保留设备IP和UserAgent信息
Build docker and publish / build (20.15.1) (push) Successful in 6m50s
将deleteDevice变量提前声明以避免重复声明
在registerUserAndDevice方法中新增ip和userAgent参数,保留原设备信息
|
2025-11-30 20:37:03 -08:00 |
|
|
|
5de2f37c20
|
feat(auth): 在JWT令牌中添加设备ID信息
Build docker and publish / build (20.15.1) (push) Has been cancelled
|
2025-11-30 20:32:34 -08:00 |
|
|
|
b6e93d0496
|
fix(device): 修复设备解绑后重建逻辑,确保设备ID稳定
Build docker and publish / build (20.15.1) (push) Has been cancelled
重构设备解绑逻辑,删除原有设备记录后重新创建用户和设备
移除文档中已废弃的测试用例和修复方案说明
|
2025-11-30 20:28:59 -08:00 |
|
|
|
5497a1ffdb
|
feat(用户): 添加删除账户响应中的状态码字段
Build docker and publish / build (20.15.1) (push) Successful in 6m39s
refactor(设备绑定): 重构设备所有权转移逻辑以保持设备ID稳定
docs: 添加设备绑定与踢出后重登录的回归测试文档
fix(设备登录): 修复设备不存在时空指针崩溃问题
|
2025-11-30 20:03:09 -08:00 |
|
|
|
41b52992e4
|
refactor(user): 重构设备解绑逻辑,改为迁移设备到新用户而非删除
Build docker and publish / build (20.15.1) (push) Successful in 6m44s
修改设备解绑逻辑,不再删除设备而是将其迁移到新创建的用户账户下
同时优化了事务处理和错误日志记录
|
2025-11-30 19:14:09 -08:00 |
|
|
|
109f708652
|
refactor(用户绑定): 移除设备绑定数量上限校验逻辑
Build docker and publish / build (20.15.1) (push) Successful in 6m56s
简化邮箱绑定流程,直接绑定邮箱而不检查设备数量限制
|
2025-11-28 01:03:25 -08:00 |
|
|
|
471c84eb1c
|
feat(用户验证): 添加测试验证码绕过逻辑
Build docker and publish / build (20.15.1) (push) Successful in 7m10s
|
2025-11-28 00:49:12 -08:00 |
|
|
|
55b8fe813d
|
fix(用户): 修复邮箱验证码校验逻辑,支持多场景验证
Build docker and publish / build (20.15.1) (push) Has been cancelled
修改邮箱验证码校验逻辑,使其支持安全场景和注册场景的验证码校验。当任一场景验证通过时即视为验证成功,提升用户体验。
|
2025-11-28 00:47:38 -08:00 |
|
|
|
14f4e351f4
|
fix(auth): 修复设备登录时旧会话未清理的问题
Build docker and publish / build (20.15.1) (push) Successful in 7m9s
在设备登录逻辑中添加对旧会话的清理,防止同一设备多会话冲突
同时修复邮箱绑定时的设备数量限制校验问题
|
2025-11-28 00:25:19 -08:00 |
|
|
|
6afd6eb307
|
feat(auth): 添加设备绑定数量限制检查
Build docker and publish / build (20.15.1) (push) Successful in 7m26s
在设备绑定逻辑中添加对设备绑定数量的限制检查,当超过限制时返回特定错误码
同时在用户注册、登录等流程中处理设备绑定数量超限的错误情况
|
2025-11-27 23:58:10 -08:00 |
|
|
|
2442831cd7
|
feat(设备管理): 添加设备在线记录查询功能并优化设备列表排序
Build docker and publish / build (20.15.1) (push) Successful in 7m28s
添加FindLatestDeviceOnlineRecord接口用于查询设备最新在线记录
实现GetOnlineDeviceLoginTime方法获取设备登录时间
优化设备列表查询按最后活动时间排序
移除未使用的依赖项
|
2025-11-27 23:24:48 -08:00 |
|
|
|
236fa6c4e6
|
feat(auth): 在登录响应中添加会话限制信息
Build docker and publish / build (20.15.1) (push) Successful in 7m32s
在LoginResponse结构体中新增Limit字段,用于返回用户最大会话数限制
修复userLoginLogic.go和telephoneLoginLogic.go中的缩进问题
|
2025-11-26 22:57:10 -08:00 |
|
|
|
7e32c571ab
|
fix: 将每个用户的最大会话数默认值从3改为1
Build docker and publish / build (20.15.1) (push) Successful in 7m20s
|
2025-11-26 18:42:09 -08:00 |
|
|
|
1d5d361ae8
|
feat(auth): 实现用户会话数限制功能
Build docker and publish / build (20.15.1) (push) Successful in 7m32s
添加用户会话数限制功能,当超过最大会话数时自动移除最旧的会话
- 在config中添加UserSessionsKeyPrefix常量
- 在JwtAuth配置中新增MaxSessionsPerUser字段
- 在ServiceContext中实现EnforceUserSessionLimit方法
- 在所有登录逻辑中调用会话限制检查
|
2025-11-26 17:52:12 -08:00 |
|
|
|
4ad384b01a
|
fix(redis): 修复缓存设置和清除逻辑的问题
Build docker and publish / build (20.15.1) (push) Successful in 7m20s
修复Redis缓存设置未设置TTL的问题,使用节点拉取间隔加60秒作为TTL
修复ClearServerAllCache中重复添加keys的问题
修复ClearServerCache中未使用cursor参数的问题
优化ClearServerAllCache以支持清除多种前缀的缓存
|
2025-11-23 23:39:30 -08:00 |
|
|
|
58107ed76f
|
feat(handler): 添加绑定邀请码接口路由和处理逻辑
Build docker and publish / build (20.15.1) (push) Successful in 7m56s
新增/public/user/bindInviteCodeHandler.go处理绑定邀请码请求
在routes.go中添加对应的POST路由/bind_invite_code
|
2025-11-20 05:56:18 -08:00 |
|
|
|
70561876d6
|
fix(auth): 修复设备首次登录时空指针崩溃问题
Build docker and publish / build (20.15.1) (push) Failing after 1m21s
在设备不存在分支注册后立即查询设备信息并赋值,避免后续操作解引用空指针
同时增加设备信息空指针保护并完善错误处理
|
2025-11-16 23:10:35 -08:00 |
|
|
|
004acd03d2
|
fix(用户绑定): 修复邮箱绑定流程中用户ID未正确赋值的问题
Build docker and publish / build (20.15.1) (push) Successful in 7m10s
在邮箱不存在的情况下,确保将当前设备用户的ID正确赋值给emailUserId变量,以保证后续token生成和返回结果正确
|
2025-11-05 18:40:48 -08:00 |
|
|
|
15f4e69dc3
|
feat(server): 添加服务器地理位置信息字段
Build docker and publish / build (20.15.1) (push) Successful in 7m3s
为服务器模型添加经度、纬度及中心点坐标字段,并在相关逻辑中处理这些字段
同时修复服务器用户列表缓存功能
|
2025-11-03 23:50:23 -08:00 |
|
|
|
01eab942fd
|
fix(auth): 修复用户注册和登录后缓存清理问题
Build docker and publish / build (20.15.1) (push) Successful in 6m43s
在用户注册、登录、修改订阅和删除订阅等操作后,添加清理服务器缓存的逻辑
同时修复电话重置密码验证码解析问题
|
2025-11-01 09:31:38 -07:00 |
|
|
|
49d3fc1c74
|
feat(用户订阅): 添加获取订阅状态接口
Build docker and publish / build (20.15.1) (push) Successful in 7m3s
新增获取用户设备及邮箱订阅状态的接口,包括请求和响应数据结构定义、路由注册及处理逻辑实现
同时更新相关依赖版本
|
2025-10-31 03:31:29 -07:00 |
|
|
|
e1616765c7
|
refactor(auth): 移除设备登录逻辑中的错误处理并简化代码
Build docker and publish / build (20.15.1) (push) Successful in 6m51s
refactor(user): 修改删除账号处理器的邮箱验证逻辑
|
2025-10-31 02:14:28 -07:00 |
|
|
|
ccdcfd3430
|
fix(account): 将删除账号接口从GET改为POST方法
Build docker and publish / build (20.15.1) (push) Successful in 6m55s
修复删除账号接口的安全问题,GET方法不应用于敏感操作
同时增加邮箱验证码校验,提高账号安全性
```
```msg
feat(auth): 在设备登录时更新用户代理信息
添加设备登录时更新用户代理(UA)的逻辑
确保设备信息保持最新状态
```
```msg
refactor(handler): 重构删除账号处理器的验证逻辑
将邮箱验证码校验逻辑提取为独立函数
提高代码可维护性和复用性
|
2025-10-31 01:59:14 -07:00 |
|
|
|
b1e9382e73
|
fix(用户): 修正账户注销成功消息文本
Build docker and publish / build (20.15.1) (push) Successful in 6m52s
|
2025-10-31 00:58:29 -07:00 |
|
|
|
70c8811406
|
feat(用户): 添加账号注销功能
Build docker and publish / build (20.15.1) (push) Has been cancelled
实现用户账号注销逻辑,包括删除用户所有关联数据并根据原设备信息创建新账号
|
2025-10-31 00:58:05 -07:00 |
|
|
|
c5d59b86b0
|
feat(用户绑定): 实现邮箱绑定功能并优化设备解绑逻辑
Build docker and publish / build (20.15.1) (push) Successful in 7m20s
添加邮箱绑定错误码和消息
修改解绑设备逻辑,解绑后创建新用户设备记录
重构邮箱绑定逻辑,支持检测已绑定邮箱并处理设备转移
|
2025-10-31 00:14:22 -07:00 |
|
|
|
e23809b32e
|
fix(user): 初始化订阅详情结构体避免nil指针
Build docker and publish / build (20.15.1) (push) Successful in 7m15s
修复FindOneUserSubscribe函数中未初始化SubscribeDetails结构体的问题,避免可能的nil指针错误
|
2025-10-30 01:06:25 -07:00 |
|
|
|
83cb35add6
|
fix(portal): 修复折扣计算中浮点数精度问题
Build docker and publish / build (20.15.1) (push) Successful in 7m13s
|
2025-10-29 20:31:58 -07:00 |
|
|
|
81086eea52
|
fix(订单折扣): 将折扣计算从整数百分比改为浮点数
Build docker and publish / build (20.15.1) (push) Failing after 6m30s
修改 SubscribeDiscount 结构体中的 Discount 字段类型为 float64,并调整 getDiscount 函数逻辑以直接使用浮点数计算
|
2025-10-29 20:18:05 -07:00 |
|
|
|
1302accaf9
|
fix(用户): 修复邮箱绑定逻辑中的错误处理
Build docker and publish / build (20.15.1) (push) Successful in 7m17s
重构邮箱绑定逻辑的错误处理流程,正确处理数据库查询错误和记录不存在的情况
优化设备查询方法,移除不必要的缓存键生成
|
2025-10-29 01:38:49 -07:00 |
|
|
|
02e76ebcf1
|
feat(用户): 添加新用户注册时激活试用订阅功能
Build docker and publish / build (20.15.1) (push) Successful in 8m33s
在创建邮箱用户时,检查配置是否启用试用订阅功能。若启用,则自动为用户激活试用订阅
|
2025-10-28 21:20:57 -07:00 |
|
|
|
63d90fba72
|
fix(用户绑定): 修复生成JWT token时的时间戳和过期时间参数错误
Build docker and publish / build (20.15.1) (push) Failing after 26s
使用time.Now().Unix()替代now变量,确保获取当前时间戳
添加LoginType参数以明确登录类型为设备
|
2025-10-28 21:10:28 -07:00 |
|