52 Commits

Author SHA1 Message Date
95e1173849 refactor(github-actions): 使用yq-action替换直接wget和优化依赖图提交
Some checks are pending
Docker Build and Publish / build (push) Waiting to run
gitea-sync.yml / trigger-gitea-sync (push) Waiting to run
- 在docker-publish.yml中使用mikefarah/yq-action直接替换繁琐的wget和chmod命令,用于更新manifest。
-通过精确的路径监听在maven.yml中优化依赖图提交动作,以响应pom.xml和src/更改,提高效率。
2024-08-25 19:37:02 +08:00
8a9612bcb3 refactor(github-actions): 自动化提交镜像更新和Gitea同步工作流
Some checks are pending
Docker Build and Publish / build (push) Waiting to run
gitea-sync.yml / trigger-gitea-sync (push) Waiting to run
Java CI with Maven / build (push) Waiting to run
- 在docker-publish.yml中引入yq Linux二进制文件并设置权限,用于在'push'事件中自动更新部署镜像标签。
- 用git-auto-commit-action自动化提交更新到GitHub,使用机器用户凭据。- 在gitea-sync.yml中增加workflow_run事件的类型限定,仅在'Docker Build and Publish'工作流完成时触发。
2024-08-25 19:32:28 +08:00
6bffefee2e feat(cicd):增加Workflow来更新部署镜像标签
Some checks are pending
Docker Build and Publish / build (push) Waiting to run
gitea-sync.yml / trigger-gitea-sync (push) Waiting to run
Java CI with Maven / build (push) Waiting to run
2024-08-25 19:13:28 +08:00
437b23022c fix(JwtInterceptor): 解决登录过期问题
增加对过期JWT令牌的异常处理,以在访问受限时强制重新认证。在验证失败时抛出服务异常前,捕获并处理TokenExpiredException。
2024-08-25 19:12:28 +08:00
f5efdf8bf4
Update gitea-sync.yml
Some checks are pending
Docker / build (push) Waiting to run
gitea-sync.yml / trigger-gitea-sync (push) Waiting to run
Java CI with Maven / build (push) Waiting to run
2024-08-25 11:45:24 +08:00
2734fb2227
Update gitea-sync.yml
Some checks are pending
Docker / build (push) Waiting to run
gitea-sync.yml / trigger-gitea-sync (push) Waiting to run
Java CI with Maven / build (push) Waiting to run
2024-08-25 11:42:46 +08:00
8fab21bc25
Merge pull request #20
* feat(github): 创建gitea-sync.yml工作流
2024-08-25 11:39:21 +08:00
7a4e9adb29
fix: Dockerfile 2024-08-25 02:35:47 +08:00
1a53ffd83c
自动化构建docker镜像 (#19)
* feat(build): add Dockerfile

* feat(github-actions): 添加 Docker 镜像构建和发布工作流

* 删除maven的镜像配置
2024-08-25 02:09:50 +08:00
c00d979e91
RBAC 优化 (#18)
* refactor(common): 整理拦截器配置和JWT拦截器实现

* feat(auth): 将权限信息使用注解的形式固定在接口上

* feat(rbac): stash

* fix(GlobalException): 在ServiceException处理中添加日志记录

在全局异常处理器中为ServiceException添加错误日志记录,以提高错误跟踪的可观察性。现在,当捕获到ServiceException时,将记录错误消息。

更改包含:
- 导入lombok.extern.slf4j.Slf4j注解以启用日志记录功能。
- 使用@Slf4j注解GlobalException类。- 在ServiceException的@ExceptionHandler方法中添加日志记录语句。

* feat(auth): 实现RBAC,调整JWT验证,更新用户服务和控制器

* 为所有接口添加权限注解

* 删除没有必要的接口

* 删除过期的测试

* refactor(entity): 使用MyBatis-Plus和AutoTable注解重新定义主键和注释

- 重构`Role`, `RolePermission`, `User`, 和`UserRole`实体类,统一使用`@ColumnId`注解代替`@TableId`,并为各实体类的字段添加了相应的注释。- 为`Role`实体类的`roleId`和`roleName`字段,`RolePermission`的`roleId`和`permissionId`字段,`User`实体类的`studentId`, `username`, `password`, `email`, `grade`, 和`userGroup`字段,以及`UserRole`的`userId`和`roleId`字段添加了`@ColumnNotNull`注解,以强化字段的非空约束。

* refactor(jwt-interceptor):精简无效的JWT,提高检查效率

调整JwtInterceptor以精简无效的JWT检查逻辑。实现对JWT效验和用户ID提取的优化,避免不必要的数据库查询。refactor(role): 使用自定义注解替换MyBatis Plus注解并移除冗余字段

通过自定义注解替换MyBatis Plus注解,以整理和优化实体类定义。删除了Role类中的冗余字段,如'tag',以及未使用的imports。

refactor(user-service): 使用ModelMapper简化对象映射,重构注册逻辑引入ModelMapper以简化User对象和DTO之间的映射操作。重构UserService中的用户注册逻辑,使用ModelMapper进行对象转换,减少手动设置属性的需求。

fix(user-controller):调整用户注册请求参数,统一数据类型

调整UserController中的注册请求参数,将'studentId'和'userGroup'的类型与现有代码库保持一致,以便正确进行参数传递和处理。

feat(user-service): 实现rbacService集成,增强用户注册流程

在UserService中集成rbacService,以在用户注册时为新用户分配默认角色。优化了用户注册流程,并简化了权限和角色的管理。

BREAKING CHANGE: 对UserRole逻辑的改动可能会影响现有的用户权限和角色分配。请确保在更新代码后进行

* 修复测试配置
2024-08-25 01:42:40 +08:00
tortoise014
5b9e835108
Merge pull request #16 from suyiiyii/wr
Record 增删改查
2024-08-21 22:25:56 +08:00
68ef028a1b 实现权限校验 2024-08-21 21:21:48 +08:00
a04c901b04 RecordController基本完成 2024-08-20 23:44:09 +08:00
17bc297b10 Merge remote-tracking branch 'origin/wr' into wr 2024-08-19 23:33:22 +08:00
aa08b363e1 完成查询自己的记录的接口 2024-08-19 23:19:51 +08:00
da6057ccab test(sims): 删除多余的测试 2024-08-17 02:39:34 +08:00
6c6ab8475c Revert "```javarefactor(maven): 将Java版本更新到21"
This reverts commit c080be00932a58228db28cbad61bbc9359c594ed.
2024-08-17 02:31:18 +08:00
c080be0093 ```javarefactor(maven): 将Java版本更新到21
更新CI工作流和pom.xml中的Java版本。此更改包括将GitHub Actions工作流中使用的JDK版本从17更新到21,
以及将pom.xml中定义的Java版本属性从17更新到21,以适应新的Java版本。
```
2024-08-17 02:28:45 +08:00
734960d031 fix(ci): 跳过测试并修复依赖图上传工作流在GitHub Actions工作流中,Maven打包步骤现在跳过测试以加快构建速度并避免不必要的依赖。此外,修复了上传依赖图的步骤,以确保其在构建过程中正确执行。 2024-08-17 02:06:05 +08:00
7528d960f1 一些小错 2024-08-17 01:58:41 +08:00
a91f3dd203 一些小错 2024-08-17 01:46:33 +08:00
6b862ffe6b Merge remote-tracking branch 'origin/wr' into wr 2024-08-17 01:15:10 +08:00
a74b724045 获取所有奖惩记录,改了userMapper里面一个错的命名 2024-08-17 01:13:36 +08:00
07d2aa00b0 refactor(gitignore): 从.gitignore中移除application.yaml移除src/main/resources/application.yaml文件的.gitignore条目,以便将其包含在版本控制中。此外,新增src/main/resources/application-prod.yaml文件的.gitignore条目,以保持环境特定配置文件不受版本控制的影响。同时,调整了SimsApplication类以引入@Profile注释,为不同的环境配置文件做好准备。 2024-08-17 00:55:26 +08:00
d7dc256353 Revert "test(dependencies): 将sqlite-jdbc依赖的作用范围更改为运行时"
This reverts commit 66de1d0ce4424ff45e7f3063d8cf1c99bf5634b8.
2024-08-17 00:50:30 +08:00
66de1d0ce4 test(dependencies): 将sqlite-jdbc依赖的作用范围更改为运行时 2024-08-16 23:00:54 +08:00
a8f39e2b0c feat(mapper): 添加 MpUserMapper 及用户插入测试
新增 MpUserMapper 接口,扩展自 Mybatis Plus 的 BaseMapper,用于 User 实体的数据库操作。在 UserMapperTest 中添加 testAddUser 方法以验证用户插入功能,使用 SQLite 数据库进行单元测试。
2024-08-16 22:51:06 +08:00
e9bbc1e274 refactor(user): 更改用户组字段并更新关联代码
用户实体的group字段已被重命名为userGroup,以提高清晰度。此外,与用户组相关的逻辑已从UserService和UserController中更新,以适应这一变化。用户权限集合的处理逻辑也被移除。
2024-08-16 22:47:45 +08:00
645789254d feat(pre-commit): 添加额外的hooks和shebangs检查
添加了检查文件夹大小写冲突、合并冲突和可执行文件shebangs的预提交hooks。这确保了提交的文件在所有平台上都能正常工作,并遵循项目的编码风格。此外,实现了对可执行文件的shebangs进行自动修复的支持。
2024-08-16 21:39:56 +08:00
7d016f8562 feat(pre-commit):集成pre-commit-hooks和pre-commit-java以提升代码质量
新增检查工具集成,包括pre-commit-hooks v2.3.0和pre-commit-java v0.5.4,以自动化代码样式和质量验证。这些工具将帮助检测并修正yaml格式问题、修复文件末尾换行、修剪尾随空格,并执行Java代码的静态分析和风格检查,排除测试目录。
2024-08-16 21:25:14 +08:00
675c07939e docs(record): 添加奖惩记录接口的描述 2024-08-16 16:33:32 +08:00
c484bdcf69 docs(user): 添加用户接口的描述 2024-08-16 16:32:05 +08:00
55d2072fa0 改一下 2024-08-16 16:17:03 +08:00
tortoise014
038b7ebe8d
定义 User 和 Record 接口 (#9)
* 登陆,注册,加上异常集中处理,mybatis和mybatisplus不兼容好像是

* 更新hutool依赖并移除mybatis-starter

此更改升级了hutool版本从5.8.11到5.8.26,并且移除了mybatis-spring-boot-starter依赖。这对于优化项目依赖和保持项目轻量级有好处。

* 数据库表名有点小问题

* 解决用户表映射问题以匹配实际数据库结构

之前,用户表列名在MyBatis映射中被错误地标注为`userId`和`group`,而数据库中的实际列名为`user_id`和`group`(无反引号)。此次更改通过在MyBatis注释中使用正确的列名来解决了该问题,确保了数据操作的正确执行。此外,还修正了选择语句中的列名,以确保查询能够正确执行并返回期望的结果。

* 不会测那个apifox有token怎么加进去啊

* 拦截器ok

* 允许接口文档目录的未登录访问
启用自动建表

* jwtUtils

* 权限校验1

* 管理员查看用户信息

* 816

* refactor(user): 简化控制器和实体类并调整注释格式

- 合并登录和注册请求模型,统一参数处理- 删除未使用的字段和导入语句,优化代码
-调整方法注释格式,提升可读性和一致性
- 实体类 `User` 移除 `name` 字段,避免冗余

BREAKING CHANGE: `User` 实体类移除 `name` 字段,可能影响依赖此字段的数据库查询。请确保更新相关代码以适应这一变更。

* feat(user): 完成User的接口

* feat(user): 完成Record的接口

---------

Co-authored-by: suyiiyii <suyiiyii@gmail.com>
2024-08-16 01:44:20 +08:00
tortoise014
ce69219012
feat: 创建表
* 表

* 二级分类

* chore: 更新mybatis-plus扩展启动器版本

* 添加了实现成员申请撤销记录,管理员撤销的表

* chore: 更新mybatis-plus扩展启动器版本

* 用通知来解决:普通成员可以向管理员申请撤销某一个奖惩记录,管理员可以查看所有撤销申请,并决定是否撤销该记录
然后,那个职务的问题,我觉得可以直接放到role里面,HierarchyRelation表就只记录上下级关系

---------

Co-authored-by: suyiiyii <suyiiyii@gmail.com>
2024-08-10 18:41:37 +08:00
f23e9c2818
Create maven.yml (#8)
* Create maven.yml

* Update maven.yml

* Update maven.yml
2024-08-10 02:58:51 +08:00
3b44def8aa
feat: 添加健康检查和问候控制器 (#7)
实现新的健康检查端点和Hello控制器以响应GET和POST请求。健康检查返回"ok"或自定义响应,而Hello控制器返回带参数的问候信息。另外,引入了springdoc-openapi以增强API文档生成能力。
2024-08-10 02:46:54 +08:00
tortoise014
4fb6e0566b
Merge pull request #5 from suyiiyii/syy
更新README.md以详细说明开发流程,包括拉取、合并和删除分支的git命令。
2024-08-09 16:52:05 +08:00
ab797aa040 Merge remote-tracking branch 'origin/syy' into syy 2024-08-09 16:47:43 +08:00
a1a3119d52 更新README.md以详细说明开发流程,包括拉取、合并和删除分支的git命令。 2024-08-09 16:44:54 +08:00
a0982e7d0a 更新README.md以详细说明开发流程,包括拉取、合并和删除分支的git命令。 2024-08-09 16:43:55 +08:00
4989d2fefe
branch protect test (#4) 2024-08-09 16:25:24 +08:00
4193117100 Merge remote-tracking branch 'origin/main' 2024-08-09 16:13:35 +08:00
ddb2db905e chore: 移除spring-boot-docker-compose依赖 2024-08-09 16:13:15 +08:00
tortoise014
4f6ea202e8
Merge pull request #3 from suyiiyii/wr
流程
2024-08-09 05:06:28 +08:00
10f29b5d81 流程 2024-08-09 05:03:55 +08:00
tortoise014
1f0894e9aa
Merge pull request #2 from suyiiyii/suyiiyii
Update README.md
2024-08-09 04:42:28 +08:00
51b87438c1
Update README.md 2024-08-09 04:36:40 +08:00
tortoise014
7dee1ead23
Merge pull request #1 from suyiiyii/wr
feat(SIMS): 初始提交 README 文件
2024-08-09 04:35:46 +08:00
f86ef0dbfa feat(SIMS): 初始提交 README 文件 2024-08-09 04:26:42 +08:00