78 Commits

Author SHA1 Message Date
8f83ee268a cherry 2024-09-09 11:29:11 +08:00
199d4010e5 cherry 2024-09-09 11:25:16 +08:00
39cfd99bad
Merge pull request #26 from suyiiyii/cat
Some checks failed
Docker Build and Publish / build (push) Has been cancelled
Gitea Sync / trigger-gitea-sync (push) Has been cancelled
Java CI with Maven / build (push) Has been cancelled
实现记录类别的增删改查以及查询记录的过滤
2024-09-09 00:46:44 +08:00
ec0c8b20ce 实现记录的替换 2024-09-08 21:15:17 +08:00
df4230a5d2 实现记录的增加和删除 2024-09-08 20:44:26 +08:00
b8b14f7af9 实现记录的过滤 2024-09-08 20:21:18 +08:00
b04a347c33 奖惩类型实现分页查询 2024-09-08 19:52:05 +08:00
tortoise014
efc2aa97cb
奖惩记录增删改查 (#17)
Some checks are pending
Docker Build and Publish / build (push) Waiting to run
Gitea Sync / trigger-gitea-sync (push) Waiting to run
Java CI with Maven / build (push) Waiting to run
* 模糊查询

* 模糊查询

* 模糊查询

* 调整个人查询

* 调整个人查询

* 调整个人查询无法出现类别类型

* 调整个人查询无法出现类别类型

* 筛选查询

* 定义对象

* 管理员查找所用用户加上角色

* jwt: token有效期两周,便于调试

* 改了那个

* 那个record的id

* 无

* 1

* 1

* 调整获取userId的方式

* gai

---------

Co-authored-by: suyiiyii <suyiiyii@gmail.com>
2024-09-08 18:52:44 +08:00
665fae6d32 添加cors允许的方法范围
Some checks are pending
Docker Build and Publish / build (push) Waiting to run
Gitea Sync / trigger-gitea-sync (push) Waiting to run
Java CI with Maven / build (push) Waiting to run
2024-09-08 15:36:23 +08:00
2024c5e07f
实现获取用户基本信息 (#25)
Some checks failed
Docker Build and Publish / build (push) Has been cancelled
Gitea Sync / trigger-gitea-sync (push) Has been cancelled
Java CI with Maven / build (push) Has been cancelled
* Reapply "refactor(sims): 重构JwtInterceptor并修复用户角色加载"

This reverts commit 4579dbda81299d207de88db0f073bc48301e931a.

* 给注册添加参数校验
2024-09-06 17:42:12 +08:00
4579dbda81 Revert "refactor(sims): 重构JwtInterceptor并修复用户角色加载"
Some checks are pending
Docker Build and Publish / build (push) Waiting to run
Gitea Sync / trigger-gitea-sync (push) Waiting to run
Java CI with Maven / build (push) Waiting to run
This reverts commit 8ee13b5f8f06a34f8c7f1fc41ae9d38169b25183.
2024-09-05 18:27:30 +08:00
8ee13b5f8f refactor(sims): 重构JwtInterceptor并修复用户角色加载
Some checks are pending
Docker Build and Publish / build (push) Waiting to run
Gitea Sync / trigger-gitea-sync (push) Waiting to run
Java CI with Maven / build (push) Waiting to run
- 在JwtInterceptor中新增getUserIdFromReq方法,用于从请求中获取用户ID。
- 在UserController的getSelf方法中使用新方法获取当前用户ID并修复。
- 重构UserService中关于用户角色加载的代码,消除不必要的循环,提高执行效率。
- 修复了在UserService中findUser方法传入空值的问题,并增加用户不存在时的异常处理。
2024-09-05 18:24:59 +08:00
28f5b146d8 增强JWT拦截器异常处理
Some checks failed
Docker Build and Publish / build (push) Has been cancelled
Gitea Sync / trigger-gitea-sync (push) Has been cancelled
Java CI with Maven / build (push) Has been cancelled
新增异常处理,专门针对无法识别的token异常,提升错误提示的准确性。当token验证失败时,现在将抛出一个具体的"token验证失败,请重新登录"错误,以区别于登录过期错误。
2024-09-03 17:32:26 +08:00
tortoise014
94bf792cd2
Merge pull request #24 from suyiiyii/suyiiyii-s3
Some checks are pending
Docker Build and Publish / build (push) Waiting to run
Gitea Sync / trigger-gitea-sync (push) Waiting to run
Java CI with Maven / build (push) Waiting to run
添加文件上传功能及S3集成
2024-09-03 16:43:43 +08:00
d353304f3a 在测试中mock S3Client,避免报错 2024-09-03 16:34:35 +08:00
b9ca333958 添加文件上传功能及S3集成
新版本中添加了文件上传功能,并集成了S3进行文件存储。这包括控制器、服务和工具类的更新,以及配置S3客户端的bean配置。
2024-09-03 16:13:00 +08:00
f113c341e5 Revert "feat(cors): 允许option请求通过"
Some checks failed
Docker Build and Publish / build (push) Has been cancelled
Gitea Sync / trigger-gitea-sync (push) Has been cancelled
Java CI with Maven / build (push) Has been cancelled
This reverts commit f867d7b7bc9fd2a809fc725f401a42542659368c.
2024-08-29 17:53:30 +08:00
6a0812b836 Revert "feat(cors): 暴力允许option请求通过"
This reverts commit 0fea9664f9bf7415085345419644ef3134806b3c.
2024-08-29 17:53:29 +08:00
fb37c59810 feat(cors): 使用CorsFilter来处理跨域问题 2024-08-29 17:53:26 +08:00
0fea9664f9 feat(cors): 暴力允许option请求通过
Some checks are pending
Docker Build and Publish / build (push) Waiting to run
Gitea Sync / trigger-gitea-sync (push) Waiting to run
Java CI with Maven / build (push) Waiting to run
2024-08-29 17:15:28 +08:00
f867d7b7bc feat(cors): 允许option请求通过
Some checks are pending
Docker Build and Publish / build (push) Waiting to run
Gitea Sync / trigger-gitea-sync (push) Waiting to run
Java CI with Maven / build (push) Waiting to run
2024-08-29 16:54:37 +08:00
b7afe430d3
ci(docker-publish): 确保仅在push事件时提交标签更新 (#22)
Some checks are pending
Docker Build and Publish / build (push) Waiting to run
Gitea Sync / trigger-gitea-sync (push) Waiting to run
Java CI with Maven / build (push) Waiting to run
* ci(docker-publish): 确保仅在push事件时提交标签更新

* refactor(github-workflows): 标准化Gitea Sync workflow名称

* feat(cors): 全局启用CORS支持

在Spring应用中通过配置CORS实现跨域请求支持,允许所有来源、方法和头。
此变更有助于解决前端应用在不同域上运行时的跨域问题。
2024-08-28 21:13:59 +08:00
2c51b04381
feat(user): 为用户表添加唯一索引 (#23)
Some checks failed
Docker Build and Publish / build (push) Failing after 2m16s
gitea-sync.yml / trigger-gitea-sync (push) Successful in 4s
Java CI with Maven / build (push) Failing after 5m48s
2024-08-26 10:21:01 +08:00
6e3ffa092b
reformat 格式化代码 (#21)
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
* reformat 格式化代码

* 为依赖图的生成添加写权限
2024-08-25 20:21:15 +08:00
8d10add577 feat(docker-publish): 从meta输出中提取版本用于镜像标签
Some checks are pending
Docker Build and Publish / build (push) Waiting to run
gitea-sync.yml / trigger-gitea-sync (push) Waiting to run
2024-08-25 20:00:59 +08:00
6185381753 fix(github-actions):将权限从read更改为write
Some checks are pending
Docker Build and Publish / build (push) Waiting to run
gitea-sync.yml / trigger-gitea-sync (push) Waiting to run
2024-08-25 19:41:39 +08:00
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