Commit Graph

15 Commits

Author SHA1 Message Date
f217b8133a feat(data-align): 新增数据对齐日增量表创建功能
- 新增 CreateTableMapper 接口定义多个创建临时表方法
- 新增 CreateTableMapper.xml 实现具体建表 SQL逻辑
- 修改 CreateTableXxlJob 定时任务,集成表创建逻辑
- 新增 TableConstants 工具类用于构建表名后缀
- 更新 MyBatis 配置文件路径映射及词典配置
- 支持按日期和分片自动创建七种数据对齐相关表结构
2025-10-20 21:43:15 +08:00
023d0c0926 feat(data-align): 初始化数据对齐模块
- 添加 han-note-data-align 模块基础结构
- 配置 application.yml 和 bootstrap.yml 文件
- 设置 MyBatis Plus 和 Redis 配置
- 集成 Nacos 服务发现与配置中心
- 添加日志配置文件 logback-spring.xml
- 创建数据源和 MyBatis 相关 IDEA 配置文件- 更新 .gitignore 排除特定开发环境配置和日志文件
- 配置 IntelliJ IDEA 编译器和编码设置
2025-10-19 20:01:31 +08:00
893f52e5aa feat(count): 初始化计数服务模块
- 新增 han-note-count 模块及其子模块 han-note-count-api 和 han-note-count-biz
- 配置 application.yml 和 bootstrap.yml,支持 Nacos 注册与配置中心
- 添加 MyBatis-Plus、Redis、MySQL 等基础依赖
- 集成日志配置 logback-spring.xml,支持异步输出及多环境配置
- 设置 .gitignore 忽略本地开发配置文件
- 更新 IDEA 编码配置,指定新增模块的字符集为 UTF-8- 在主 pom.xml 中注册新模块 han-note-count
2025-10-15 19:10:48 +08:00
9e3c35043e feat(relation): 实现用户粉丝列表查询功能
- 新增查询用户粉丝列表接口
- 定义粉丝列表请求参数类 FindFansListReqVO- 定义粉丝信息响应类 FindFansUserRspVO
- 在 RelationController 中添加 /fans/list POST 接口
- 在 RelationService 中定义 findFansList 方法
- 在 RelationServiceImpl 中实现粉丝列表查询逻辑
- 支持 Redis 缓存查询与数据库分页查询
- 实现粉丝列表异步同步至 Redis 功能
- 添加 HTTP 客户端测试用例
2025-10-15 17:40:36 +08:00
f0afb23a73 feat(note): 新增笔记删除功能
- 新增 DeleteNoteReqVO 请求参数类,用于接收笔记删除请求
- 在 NoteController 中添加 /delete 接口,实现笔记删除功能
- 在 NoteService 和 NoteServiceImpl 中实现 deleteNote 方法
- 删除笔记时进行权限校验,仅允许笔记创建者删除
- 删除操作为逻辑删除,更新笔记状态为已删除
- 删除笔记后清除 Redis 缓存,并通过 MQ 广播通知各实例清除本地缓存
-优化更新和可见性接口的权限校验逻辑,避免重复代码
- 添加 MQ 测试类 MQTests,用于批量发送关注/取关消息
- 引入 Guava 的 RateLimiter 实现 MQ 消费端限流- 配置 Nacos 配置中心依赖及动态刷新配置
- 更新 .gitignore 文件,忽略日志文件目录
- 在 application.yml 中添加 MQ 消费者限流配置项
- 在 bootstrap.yml 中完善 Nacos 配置中心相关配置
- 为 FollowUnfollowConsumer 添加限流逻辑,防止消费端压力过大
2025-10-13 21:18:12 +08:00
eaa5586211 feat(sql): 初始化频道、话题及关系数据
- 添加 leaf-segment 分布式ID配置表及初始数据

fix(pom):修正模块 artifactId 命名

- 将 han-note-api 模块名称更正为 han-note-note-api
2025-10-11 23:31:26 +08:00
Hanserwei
3ce029ecce feat(user-relation): 初始化用户关系服务模块
- 新增用户关注和粉丝数据表结构及对应 DO、Mapper、Service 层代码
- 配置 RedisTemplate 以支持 JSON 格式的值序列化
- 添加全局异常处理器处理业务、参数校验等异常情况
- 完成模块基础配置文件(application.yml、bootstrap.yml)的初始化
- 在 SQL 脚本中新增 t_following 和 t_fans 表定义
- 更新 .gitignore、IDEA 编码设置以及 Maven 模块依赖关系
- 增加日志配置文件 logback-spring.xml 并区分环境输出方式
- 创建模块启动类 HannoteUserRelationBizApplication 并启用 MyBatis Mapper 扫描
2025-10-10 19:38:37 +08:00
Hanserwei
31b06fe32d fix(id-gen): 重命名分布式id模块名称,与其他模块一致。 2025-10-09 08:52:44 +08:00
Hanserwei
665ea930fd feat(note): 初始化笔记服务模块
- 添加笔记、频道、话题等核心数据表结构
- 创建对应的数据访问对象(DO)和MyBatis映射文件
- 配置Spring Boot应用启动类及基础依赖
- 设置Nacos服务发现与配置中心相关配置
- 添加全局异常处理机制和响应码枚举定义
- 配置RedisTemplate以支持JSON序列化存储
- 定义日志输出格式及异步写入策略
- 新增笔记状态、类型、可见性等相关枚举类
- 配置MyBatis-Plus、MySQL、Druid等数据访问组件
- 添加Maven模块结构并集成到主项目中
2025-10-07 18:07:30 +08:00
Hanserwei
2910fdb54f feat(kv): 初始化 KV 服务模块
- 添加了笔记内容的增删查 DTO 类
- 配置了 Cassandra 数据库连接
- 实现了基于 Cassandra 的笔记内容存储与查询功能

feat(kv): 初始化 distributeID 服务模块

- 实现了分布式 ID 生成器服务(Snowflake与 Segment)
- 添加了 ID 生成器监控接口
- 配置了 MyBatis 与数据库交互
- 添加了 Segment 与 Snowflake 服务实现
- 添加了 Leaf 相关模型类与分配器接口
- 添加了 Leaf 分配器实现类
- 添加了 Leaf 控制器与监控视图
- 添加了 Leaf 异常处理类
- 添加了 Leaf 日志配置文件
- 添加了 Leaf 启动类
- 添加了 Leaf 常量定义
- 添加了 Leaf ID 生成接口
- 添加了 Leaf 初始化异常类
- 添加了 Leaf 配置文件
- 添加了 Leaf 模型类
- 添加了 Leaf 服务类
- 添加了 Leaf 工具类
- 添加了 Leaf 相关注解
- 添加了 Leaf 相关配置类
- 添加了 Leaf 相关枚举类
- 添加了 Leaf 相关工具类

后续考虑复刻Leaf代码至Java21平台
2025-10-06 22:28:27 +08:00
Hanserwei
91e36d5a84 feat(user): 初始化用户服务模块
update(gateway):更新网关相关路由配置

- 添加用户服务基础架构,包括 API 和 Biz 模块
- 配置用户服务的 Spring Boot 启动类及 MyBatis Plus 配置- 实现用户信息更新接口,支持头像、昵称、小憨书号等字段校验
- 添加全局异常处理器,统一处理业务异常和参数校验错误
- 集成 Nacos 服务发现与配置中心
- 添加日志配置文件,支持异步日志写入
- 新增用户相关枚举类,如性别、响应码等
- 添加参数校验工具类,用于昵称、小憨书号等格式校验
- 配置网关路由,将 /user/** 路径转发至用户服务
- 在 GitIgnore 中忽略用户服务的本地开发配置文件
- 更新认证服务中的用户相关字段命名与接口路径
- 添加用户数据对象 UserDO 及对应的 Mapper 和 XML 配置
- 实现 UserService 接口及默认实现类 UserServiceImpl
- 添加用户信息更新请求 VO 类 UpdateUserInfoReqVO
- 添加用户 Mapper 接口 UserDOMapper 继承 BaseMapper
- 添加用户模块的 Maven 配置 pom.xml 文件
- 添加用户模块的编码配置,确保使用 UTF-8 编码
- 添加用户模块的启动日志配置 logback-spring.xml
- 添加用户模块的 bootstrap.yml 配置文件
- 添加用户模块的 application.yml 配置文件
- 添加用户模块的异常处理类 GlobalExceptionHandler
- 添加用户模块的枚举类 ResponseCodeEnum 和 SexEnum
- 添加用户模块的工具类 ParamUtils用于参数校验
- 添加用户模块的控制器 UserController 处理用户信息更新请求
- 添加用户模块的服务接口 UserService 及其实现类 UserServiceImpl
- 添加用户模块的数据访问对象 UserDO 及其映射文件 UserDOMapper.xml
- 添加用户模块的请求视图对象 UpdateUserInfoReqVO
- 添加用户模块的 API 模块 pom.xml 配置文件
- 添加用户模块的 Biz 模块 pom.xml 配置文件
- 添加用户模块的根 pom.xml 配置文件
- 在主 pom.xml 中添加用户模块 han-note-user作为子模块
- 修改 SaToken 配置,调整登录和登出接口路径白名单
- 移除 UserController 中的 @RequestMapping("/user") 注解- 修改 UserDO 中“小哈书号”为“小憨书号”以保持命名一致性
2025-10-04 14:56:33 +08:00
Hanserwei
0d71d8e209 feat(oss): 增加对象存储模块并支持多种存储策略
- 新增对象存储服务模块 `han-note-oss`,集成 Rustfs、阿里云 OSS 及腾讯云 Cos 存储
- 提供统一的 `FileStrategy` 接口及 `FileStrategyFactory` 工厂类,根据存储类型动态选择存储策略
- 实现阿里云 OSS、腾讯云 Cos 和 Rustfs 具体存储逻辑
- 增加文件上传接口 `FileController`,支持接收文件并返回访问路径
- 完成用户密码更新接口,使用`spring.security`对密码进行加密
2025-10-03 17:52:25 +08:00
Hanserwei
5c406b48f9 feat(context): 新增业务上下文组件并迁移相关功能
- 创建 `hanserwei-spring-boot-starter-biz-context` 模块,封装为starter供其余模块使用
- 迁移 `HeaderUserId2ContextFilter` 和 `LoginUserContextHolder` 到Starter
- 使用 `TransmittableThreadLocal` 替代普通 `ThreadLocal`
- 在 `han-note-auth` 中引入新的上下文组件依赖
- 调整包结构和日志输出格式
- 异步任务中验证上下文传递功能正常工作
2025-10-02 23:23:47 +08:00
Hanserwei
4c6a08438a feat(gateway): 新增网关服务及权限认证功能
- 新增网关服务模块 han-note-gateway,包含基础配置和启动类
- 实现全局过滤器 AddUserId2HeaderFilter,自动将用户ID添加到请求头(目前有问题)
- 配置 Sa-Token 权限认证,支持 JWT 格式的 Token 解析和鉴权
- 新增全局异常处理器 GlobalExceptionHandler,统一处理未登录和权限不足异常
- 实现 StpInterfaceImpl 接口,从 Redis 获取用户角色和权限信息- 配置 RedisTemplate 支持 JSON 序列化,用于存储用户角色和权限数据
- 在 auth 服务中增加登出接口,支持用户退出登录(待完成)
- 引入 Nacos 配置中心和注册中心依赖,支持配置动态刷新和服务发现
- 更新 Redis Key 构造方式,使用 userId 和 roleKey 替代 email 和 roleId
- 新增告警模块,支持邮件和短信告警方式的配置与切换
-优化角色权限同步逻辑,使用角色 Key 替代角色 ID 存储权限信息
- 添加 bootstrap.yml 配置文件,支持从 Nacos 读取配置
2025-10-02 21:46:05 +08:00
Hanserwei
fe12d54c92 han-note项目初始化完毕!
- 整合完毕MyBatis-Plus
- 整合Druid数据库链接池
- 自定义两个Starter,业务日志打印Starter和自定义Jackson配置类,支持Java8的LocalTime等API
- 整合 flatten-maven-plugin 插件:解决子模块单独打包失败问题
2025-09-28 14:42:39 +08:00