Commit Graph

116 Commits

Author SHA1 Message Date
a73a92c0c2 fix(config): 修复包名大小写并优化 Maven 构建配置
- 统一 interceptor 包名为小写
- 修正测试接口拼写 testSearchText
- 升级编译插件并显式声明 JDK17 与 Lombok 版本
- 将本地 Claude 记录文件加入忽略列表
2026-01-04 15:51:40 +08:00
2cdbdfeaf2 fix(config): 将分页拦截器数据库类型改为 PostgreSQL 2025-12-31 17:29:46 +08:00
a510a4afcb fix(invite): 重命名字段并补充AGENT类型支持 2025-12-29 18:43:09 +08:00
c38f62c3c1 feat(theme): 新增主题列表Redis缓存机制
为提升查询性能,在KeyboardThemesServiceImpl中集成RedisTemplate,优先从缓存读取主题列表;新增ThemeCacheInitializer用于应用启动时预热缓存。
2025-12-29 15:13:50 +08:00
be921e144f feat(invite): 支持租户与用户两种邀请码类型 2025-12-29 15:04:30 +08:00
778cf4a0cb fix(entity): 补全用户邀请绑定台账字段与注释
为 KeyboardUserInvites 实体新增 clickToken、inviteType、profitTenantId、profitEmployeeId、inviterTenantId、inviteCode 等字段,并统一 Schema 注解空格格式,满足邀请链接归因、代理结算及审计需求。
2025-12-29 13:59:02 +08:00
fb0c0c34a9 refactor(model): 移除 click_token 字段并调整字段顺序
- 删除实体与 Mapper 中 click_token 相关定义
- 保持其余字段(bind_type、bound_at、bind_ip、bind_user_agent)顺序一致
2025-12-25 14:17:09 +08:00
6ef1488e5f feat(invite): 新增H5邀请链接配置与返回
在 AppConfig 中增加 inviteConfig 及 h5Link 字段;
服务层改造 getUserInviteCode 返回 InviteCodeRespVO 并填充 h5Link;
Controller 简化调用逻辑,统一走服务层组装 VO。
2025-12-24 22:02:08 +08:00
b9197c4275 feat(invite): 新增用户邀请码创建与查询接口 2025-12-24 21:36:27 +08:00
e90078791c refactor(service): 优化推荐逻辑不再排除已购买主题 2025-12-23 15:43:27 +08:00
1b7374e959 fix(controller): 将 themeId 参数改为可选 2025-12-23 14:09:26 +08:00
2b0fa71c40 [Claude Code] After prompt #0 2025-12-23 13:53:53 +08:00
619c59d786 [Claude Code] After prompt #8 2025-12-22 22:00:16 +08:00
d07478eaea chore(build): 移除 Maven Wrapper 脚本
删除 mvnw 与 mvnw.cmd,项目已改用全局 Maven 构建,避免维护冗余脚本。
2025-12-22 19:50:33 +08:00
c70a1bd0e2 feat(wallet): 新增分页DTO并统一交易记录接口入参 2025-12-22 19:30:20 +08:00
45d6058b90 fix(service): 修复查询用户主题时调用错误服务
将 KeyboardThemePurchaseService 改为 userThemesService,并调整查询条件从支付状态改为删除标记,确保获取正确的用户主题列表。
2025-12-22 18:31:04 +08:00
ecce22384b fix(service): 修复查询用户主题时调用错误服务
将 KeyboardThemePurchaseService 改为 userThemesService,并调整查询条件从支付状态改为删除标记,确保获取正确的用户主题列表。
2025-12-22 16:39:01 +08:00
44f031c939 chore(config): 将配置文件注释乱码替换为中文可读文本 2025-12-19 21:56:41 +08:00
f69393b79d fix(config): 切换模型至 text-embedding-v4 并更新 API 配置 2025-12-19 21:37:54 +08:00
b068ab4d7c refactor(invite): 移除用户主动生成邀请码功能
- 删除 InviteCodeRespVO.java VO 类
- 移除 KeyboardUserInviteCodesService 及其实现中的 createInviteCode/getUserInviteCode 方法
- 删除 UserController 中 /inviteCode 查询接口
- 注册流程不再自动为用户创建邀请码,仅保留绑定逻辑
2025-12-19 15:15:53 +08:00
6638ff2ccc feat(invite): 添加邀请码注册与验证功能
- 新增邀请码实体、Mapper、Service 及 XML 配置
- 注册接口支持填写邀请码并建立绑定关系
- 邀请码校验包含存在性、状态、过期及次数限制
- 补充相关错误码:INVITE_CODE_* 与 RECEIPT_ALREADY_PROCESSED
2025-12-19 14:47:54 +08:00
0ef7a7fd83 feat(invite): 添加邀请码注册与验证功能
- 新增邀请码实体、Mapper、Service 及 XML 配置
- 注册接口支持填写邀请码并建立绑定关系
- 邀请码校验包含存在性、状态、过期及次数限制
- 补充相关错误码:INVITE_CODE_* 与 RECEIPT_ALREADY_PROCESSED
2025-12-19 14:21:02 +08:00
419878a607 feat(invite): 新增用户邀请码功能
新增实体、Mapper、Service及Controller接口,支持注册时自动生成与用户查询个人邀请码
2025-12-18 19:20:25 +08:00
c4d0c60ea8 chore(core): 清理Demo代码并优化配置文件
删除DemoController和PostReviewStatusEnum等测试/废弃代码;
.gitignore、SaTokenConfigure、SendMailUtils、application.yml小幅更新;
AppleAppStoreConfig改用流式读取私钥,适配容器化部署。
2025-12-18 15:51:46 +08:00
95fb77a575 fix(chat): 保存LLM响应的生成ID用于链路追踪 2025-12-17 19:23:21 +08:00
abfac871fd feat(user): 新增用户反馈提交功能 2025-12-17 18:20:05 +08:00
198650556f feat(themes): 新增主题模糊搜索接口及鉴权放行
支持按名称模糊搜索主题,并标记用户已购状态;同步放开 /themes/search 无需登录访问
2025-12-17 16:57:39 +08:00
4666180b73 style(service): 添加详细注释并优化人设列表查询逻辑 2025-12-17 16:49:10 +08:00
35c45abf73 feat(service): 为标签人设列表增加Redis缓存 2025-12-17 16:46:50 +08:00
65cd9d9fae feat(service): 为所有人设列表添加Redis缓存
在 selectListWithRank 中先读缓存,未命中再查库并写入7天过期缓存,减少数据库压力。
2025-12-17 16:32:05 +08:00
0156156440 feat(character): 添加Redis缓存支持人设查询 2025-12-17 16:25:05 +08:00
27a8911b7f refactor(service): 优化聊天服务代码注释与结构
添加详细中文注释,明确用户配额校验、VIP权限判断及流式响应处理逻辑,提升可维护性。
2025-12-17 16:05:14 +08:00
323baa876f feat(chat): 新增免费额度与VIP校验逻辑
在聊天接口中增加用户免费次数及VIP身份校验,未通过时返回新错误码50022;
调用成功后若使用免费额度则自动扣减,保障额度体系闭环。
2025-12-17 15:51:46 +08:00
2621321dea refactor(chat): 拆分聊天逻辑至独立 ChatService 并提取 LLM 配置
将 ChatController 中的聊天与向量搜索流程整体迁移到 ChatServiceImpl,
新增 AppConfig.LLmConfig 集中管理系统提示语与最大消息长度,
消除控制器层复杂逻辑,提升可维护性与配置动态化能力。
2025-12-17 15:36:57 +08:00
86738e3d1b feat(chat): 新增聊天调用日志与动态配置支持
- 新增 KeyboardUserCallLog 实体及对应 Mapper、Service,用于记录每次聊天请求的模型、token、耗时、错误码等
- ChatController.talk() 在流式输出前后采集元数据,异步落库,支持错误码记录
- AppConfig 新增 QdrantConfig,支持 vectorSearchLimit 动态配置
- QdrantVectorService 改为从 Nacos 动态读取搜索条数,替代硬编码 limit=1
- UserController 登出时先清除用户会话再清除 token,避免并发异常
2025-12-17 15:03:23 +08:00
a237bc2987 refactor(config): 合并用户注册配置并调整默认配额
将 UserRegisterProperties 内嵌到 AppConfig,删除独立配置类;
freeTrialQuota 由 5 改为 3,新增 rewardBalance 字段;
同步更新 UserServiceImpl 初始化逻辑及 yml 配置。
2025-12-17 13:24:38 +08:00
8e26488738 feat(config): 接入 Nacos 配置中心
- 新增 AppConfig、NacosAppConfigCenter 动态配置类
- 将 userRegisterProperties 的默认值改为运行时从 Nacos 读取
- 注册/创建用户时免费配额改为动态配置获取
- 增加 nacos-client 依赖并配置 dev 环境连接信息
2025-12-16 21:50:00 +08:00
f95762138b feat(quota): 新增用户额度总计模块
增加用户免费体验额度配置,支持新用户注册时的额度分配功能
2025-12-16 17:54:53 +08:00
495485cc07 feat(quota): 新增用户额度总计模块
增加用户免费体验额度配置,支持新用户注册时的额度分配功能
2025-12-16 16:59:56 +08:00
cd6eca9cbb feat(apple): 支持App Store Server V2通知全类型处理
- 新增订阅、退款、偏好变更、消费请求等通知处理器
- 统一使用ResponseBodyV2DecodedPayload验签与分发
- 移除控制器层JWT解析逻辑,下沉至服务层
- 增加幂等、状态回滚及权益撤销/恢复能力
2025-12-16 15:50:35 +08:00
c54c14de58 refactor(service): 改用JWS验签,移除旧收据解析
废弃ReceiptUtility与AppStoreServerAPIClient,直接以SignedDataVerifier校验客户端传来的signedPayload(JWS),简化流程并减少一次网络IO。
2025-12-16 15:06:41 +08:00
c305dfaae4 fix(apple): 增加无效收据原因日志并补充订阅过期时间调试输出 2025-12-15 21:21:47 +08:00
0ad9de1011 fix(controller): 使用官方 SDK 验证 Apple 交易签名并解析 payload 2025-12-15 18:22:11 +08:00
d9a778f5aa refactor(apple-purchase): 重构苹果购买服务,增强可读性和健壮性 2025-12-15 15:15:10 +08:00
a70c1f4049 feat(apple): 新增服务器通知续订与JWT解析能力
- 支持解析Apple签名JWT并提取交易信息
- 新增processRenewNotification处理续订通知
- 添加测试用JWT生成、解析及发送重试记录示例
- 移除废弃ApplePayUtil,统一走新验证逻辑
2025-12-15 14:56:38 +08:00
c1dd4faf0e feat(apple): 新增苹果订阅通知接口并补充测试
- AppleReceiptController 新增 /apple/notification 端点,用于接收苹果服务器通知
- 调整路径前缀为 /apple,开放 /apple/receipt 与 /apple/notification 免登录
2025-12-12 20:37:43 +08:00
a24a795887 feat(purchase): 新增 Apple 内购完整链路
- AppleReceiptController 改造:验签后立刻落库并解锁权益
- 新增 ApplePurchaseService 处理业务:防重、写订单、发道具
- 新增 KeyboardUserPurchaseRecords 实体与 Mapper,记录用户购买
- ErrorCode 补充 RECEIPT_INVALID(50016)
- 删除过期 AGENTS.md,修正 i18n_message 表名与 CORS 白名单
2025-12-12 18:18:55 +08:00
2e16183cb8 feat(product): 新增键盘商品管理模块
新增商品实体、Mapper、Service、Controller 及 VO,支持商品列表、详情、订阅等接口;同步更新 Sa-Token 放行路径与 .gitignore
2025-12-12 14:15:30 +08:00
b4c35b0df3 fix(service): 优化向量搜索超时与中断处理
新增 ListenableFuture 超时保护(10s),捕获中断与超时异常并恢复中断状态,提升高并发鲁棒性。
2025-12-12 13:24:03 +08:00
f391f9dfe1 feat(user): 新增VIP字段及完善MyBatis-Plus映射 2025-12-11 20:51:34 +08:00