zhangxiang
|
4ba4af2f53
|
refactor(cache): 缓存操作接口化,支持 Redis/Caffeine 双实现切换
将系统所有缓存操作从 `RedisUtil` 迁移至 `CacheOperations` 接口,
通过 `gym.cache.type` 配置选择 Redis 或 Caffeine 实现。
变更内容:
- 新增 CacheOperations 接口,定义 get/set/delete/hasKey/expire/deleteByPattern 等标准方法
- 新增 RedisCacheOperations 实现(基于 ReactiveRedisTemplate,默认实现)
- 新增 CaffeineCacheOperations 实现(基于 Caffeine 本地缓存)
- 新增 CacheProperties 配置类,支持 Caffeine 容量/过期等参数配置
- 新增 CacheAutoConfiguration 自动装配,通过 AutoConfiguration.imports 注册
- 全系统 17 个业务服务 + 18 个测试文件从 RedisUtil 迁移至 CacheOperations
- manage-gateway 配置 caffeine 实现(无需 Redis),manage-app 配置 redis 实现
- 分布式锁等 Redis 独有特性保持直接使用 ReactiveRedisTemplate
测试:202 通过,0 失败,0 错误
|
2026-08-02 18:26:15 +08:00 |
|
zhangxiang
|
eb33755f23
|
feat(encryption): 实现前后端 AES-256-GCM 加密通信
参考同级项目 novavis-authority 实现,在 HTTPS 基础上增加应用层加密。
后端:
- CryptoService: AES-256-GCM + PBKDF2 密钥派生(manage-common)
- CryptoFilter: Gateway GlobalFilter,检测 X-Encrypted 头后加解密请求/响应体
- 配置:app.encryption.secret 通过环境变量注入
前端:
- crypto.ts: Web Crypto API 实现 AES-256-GCM + PBKDF2
- request.ts: 拦截器自动加密请求体、解密响应体
- 环境变量 VITE_ENCRYPTION_SECRET
测试覆盖:
- 后端 CryptoServiceTest 16 个用例 + CryptoFilterTest 7 个用例
- 前端 crypto.test.ts 8 个用例 + Playwright E2E smoke 测试
- 全量 510 个前端测试 + 后端全量测试全部通过,无回归
|
2026-08-02 08:51:21 +08:00 |
|
liwentao
|
c2f11727fe
|
新增到课签到时间窗口与迟到签到时间窗口配置,优化教练评分机制(未测试)
|
2026-07-26 16:10:23 +08:00 |
|
liwentao
|
4c07ec5455
|
新增e2e测试脚本,修复部分问题
|
2026-07-22 20:00:13 +08:00 |
|
liwentao
|
97a5eff678
|
完善业务闭环,实现对轮播图的管理,优化数据库表文件
|
2026-07-18 16:21:40 +08:00 |
|
liwentao
|
a8e69e0850
|
新增会员管理
|
2026-07-09 14:45:45 +08:00 |
|
liwentao
|
f5b5724e92
|
完善团课相关管理
|
2026-07-08 17:02:04 +08:00 |
|
 futureandfujia
|
4481819eba
|
修复丢失文件
|
2026-06-24 00:46:47 +08:00 |
|
 futureandfujia
|
a7f31083cf
|
签到模块
|
2026-06-24 00:46:47 +08:00 |
|
future
|
3586a7d74b
|
登录
|
2026-06-23 22:47:35 +08:00 |
|
future
|
78c80c4b1d
|
签到模块
|
2026-06-09 09:43:31 +08:00 |
|
liwentao
|
8af444b7ee
|
完成模块2
|
2026-06-02 17:18:21 +08:00 |
|
liwentao
|
03991319fd
|
完成模块2-2.1团课预约
|
2026-06-02 17:14:06 +08:00 |
|
liwentao
|
2df598c0d8
|
将redis相关配置文件移动至common模块
修复app模块下配置文件中默认用户名与密码
|
2026-05-31 14:49:24 +08:00 |
|
future
|
29b73c1f67
|
更新前台相关功能,添加防XSS注入,加入ES搜索
|
2026-05-29 14:25:17 +08:00 |
|
张翔
|
e8e1e089fb
|
chore(config): 清理配置和更新依赖
- 删除未使用的 CacheConfig.java
- 更新 pom.xml 依赖版本
- 优化应用配置文件
- 更新前端配置管理页面
- 更新 package-lock.json
|
2026-04-18 13:07:03 +08:00 |
|
张翔
|
a64857fe2e
|
fix(build): 修复 mvn clean install 构建失败问题
主要修复:
- AuditLogService: 移除与 Reactor 不兼容的 @Async 注解
- AuditLogServiceTest: 配置 mock Executor 立即执行任务
- AuditLog/AuditLogTest: 添加 toString() 方法并修正断言
- FlywayMigrationScriptTest: 修复版本号排序逻辑
- ManualTableCreationTest: 指定配置类并修复 PostgreSQL 语法
- AutoConfiguration.imports: 修正包名 cn.novalon.manage -> cn.novalon.gym.manage
- pom.xml: 调整 JaCoCo 覆盖率检查策略
|
2026-04-17 20:18:36 +08:00 |
|
张翔
|
deb961c427
|
refactor(backend): 重命名后端项目为 gym-manage-api,修改包名为 cn.novalon.gym.manage
|
2026-04-17 18:35:50 +08:00 |
|