zhonghua
|
7384a0423c
|
feat: 工作台仪表盘补全、快捷操作与租户菜单优化
- TenantDashboard: 快捷操作去掉用户管理;最近活动依赖后端 recentContests
- ContestServiceImpl: getDashboard 返回最近活动、进行中、待审、今日报名及租户信息
- 机构管理: 子菜单全未选时剔除父菜单 ID(pruneOrphanParentMenuIds)
- 菜单管理: AntdIconPicker 与表单调整;设计文档同步
Made-with: Cursor
|
2026-04-09 18:25:13 +08:00 |
|
zhonghua
|
e9ae6aeb7e
|
feat: 数据统计 API 与租户过滤对齐,补充 timeRange 与前端修复
Made-with: Cursor
|
2026-04-09 17:13:46 +08:00 |
|
zhonghua
|
d7dddd3058
|
feat: 公众端广场按标签ID筛选作品并补充设计说明
Made-with: Cursor
|
2026-04-09 16:44:44 +08:00 |
|
zhonghua
|
7240c543fc
|
fix: 公众端广场推荐与超管统计Tab查询对齐设计文档
Made-with: Cursor
|
2026-04-09 16:29:42 +08:00 |
|
|
|
67de13c29a
|
feat: 公众端注册添加手机号必填——支持 AI 创作功能绑定手机号
后端 PublicRegisterDto phone 字段添加 @NotBlank + @Pattern 校验;
PublicAuthService 添加手机号唯一性检查(公众租户范围内);
前端 Login.vue 注册表单添加手机号输入框、验证规则、提交参数;
新增 10 条 E2E 测试用例覆盖前端校验、API 参数传递、完整注册流程。
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-04-09 15:36:52 +08:00 |
|
|
|
87ac3b5ed9
|
fix: CORS 配置简化并启用 Spring Security CORS 支持;LeaiSync 作品同步封面图逻辑修复
- CorsConfig 改回允许所有来源(*),移除配置文件域名列表注入
- SecurityConfig 添加 .cors(Customizer.withDefaults()) 使 CorsFilter Bean 生效
- LeaiSyncService 修复 originalImageUrl 同时同步到 coverUrl,单独 coverUrl 优先覆盖
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-04-09 13:50:02 +08:00 |
|
|
|
f03991819d
|
feat: 管理端全功能 E2E 测试——40 用例覆盖登录、仪表盘、活动、报名、作品、评审、用户、导航
新增 10 个管理端 E2E 测试文件和 1 个 Mock fixture:
- admin.fixture.ts: Mock 数据 + 登录注入 + 组件预热 + 兜底 API 拦截
- login/contests/dashboard/navigation/registrations/works/reviews/users 等 9 个 spec
关键修复:route.fallback() 替代 route.continue() 修正 Mock 链式传递;
review-rules/select Mock + 兜底拦截器防止未 mock 请求到达真实后端。
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-04-09 12:52:39 +08:00 |
|
zhonghua
|
7a8d909df3
|
fix: 活动列表按阶段筛选未发布与已结束;已结束仅保留查看操作
Made-with: Cursor
|
2026-04-09 11:41:57 +08:00 |
|
zhonghua
|
d5657d8d23
|
feat: 表单提交前去除首尾空格;评委性别接口返回与持久化
Made-with: Cursor
|
2026-04-09 11:34:40 +08:00 |
|
zhonghua
|
c4f4613c49
|
fix: 活动公告列表回显活动名称并修复取消发布
Made-with: Cursor
|
2026-04-09 11:21:43 +08:00 |
|
zhonghua
|
b19acbd6d5
|
feat: 作品分配仅限活动评委、评委库仅启用及 UGC 调整
- 作品管理分配评委仅使用活动显式名单,assignWork 校验 t_biz_contest_judge
- 添加评委/评审进度选择评委时仅查询启用账号;接口文档与 API 注释
- UGC 作品分页与公开创作服务相关改动
Made-with: Cursor
|
2026-04-09 11:04:37 +08:00 |
|
|
|
c1113c937c
|
feat: 赛事→活动术语统一,AI创作嵌套路由重构,前端依赖升级
后端:
- 全局将"赛事"统一为"活动"(Swagger注解、DTO、Entity、Controller、Service)
- 评审模块DTO/Entity/Service字段调整与优化
- 新增V9迁移脚本,修改V2/V4/V6迁移脚本注释
- PublicRegisterActivityDto字段对齐
前端:
- AI绘本创作路由重构为嵌套路由(11个子路由)
- 新增依赖:@stomp/stompjs、ali-oss、crypto-js
- 环境配置(.env)更新,vite配置调整
- API接口术语统一,PublicLayout与aicreate store优化
- 新增nginx部署文档
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-04-08 22:58:07 +08:00 |
|
|
|
5bb159358f
|
fix: Webhook同步修复——实现findUserIdByPhone,补充PROCESSING状态coverUrl同步
1. 实现 findUserIdByPhone() 方法(原为 TODO 占位),注入 SysUserMapper 按手机号查询用户
2. updateProcessing() 方法补充 coverUrl 字段同步,AI创作过程中推送的封面图不再被丢弃
3. insertNewWork 中增加 WARN 日志,记录手机号未找到用户或手机号为空的情况
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-04-08 22:57:03 +08:00 |
|
zhonghua
|
593f7977eb
|
feat: 公众端活动成果卡片展示与公开公示接口
Made-with: Cursor
|
2026-04-08 16:31:48 +08:00 |
|
zhonghua
|
328533e805
|
feat: C端活动详情返回公告与附件,子女账号简化报名弹窗
Made-with: Cursor
|
2026-04-08 16:00:59 +08:00 |
|
|
|
b9ed5e17c6
|
feat: OSS 客户端直传改造(STS Token 签发 + 前端直传 + CORS 自动配置)
后端新增 OssUtils/OssTokenVo/OssCorsInitRunner,通过 STS 临时凭证实现客户端直传 OSS;
前端 upload API 适配直传流程,赛事创建/作品提交/作业/富文本编辑器均已切换;
多环境(dev/test/prod) OSS 配置补全;新增 oss-direct-upload-demo 示例项目及 E2E 测试。
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-04-08 15:19:43 +08:00 |
|
zhonghua
|
36cd01c585
|
feat: 作品编号 workNo 生成与回填(公开端/作业/Flyway V8)及评审与前端展示
Made-with: Cursor
|
2026-04-08 14:44:16 +08:00 |
|
|
|
1eb76979c4
|
Merge remote-tracking branch 'origin/master_develop' into master_develop
|
2026-04-08 13:39:03 +08:00 |
|
|
|
fa42eca339
|
feat: 数据库注释补全、常量枚举重构及多模块优化
- 新增 Flyway V6/V7 迁移脚本,为全部 42 张表、591 个列添加中文注释
- 抽取公共常量类(BaseEntityConstants、CacheConstants、RoleConstants、TenantConstants)
- 新增业务枚举(CommonStatus、RegistrationStatus、WorkStatus 等 11 个)
- 优化赛事/作业/评审/UGC 等模块服务层代码
- 更新乐读派(leai)模块配置与 API 客户端
- 更新 e2e 测试用例及 demo 文件
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-04-08 13:37:14 +08:00 |
|
zhonghua
|
7d7ef9820b
|
fix: 作品分配评委移除后同步数据库并允许清空评委
Made-with: Cursor
|
2026-04-08 11:30:54 +08:00 |
|
zhonghua
|
df7eae6125
|
fix: 纯评委角色隐藏机构端评委管理菜单
Made-with: Cursor
|
2026-04-08 11:13:35 +08:00 |
|
zhonghua
|
197064820b
|
feat: 评委角色权限补全与租户评委菜单合并,更新 menu-config 说明
Made-with: Cursor
|
2026-04-08 11:07:11 +08:00 |
|
zhonghua
|
180c22fe49
|
feat: 作品列表终分回算、评审进度详情展示对齐及评委管理优化
Made-with: Cursor
|
2026-04-08 10:53:50 +08:00 |
|
|
|
bc7c17b281
|
refactor: 乐读派(leai)模块规范化改造
按照项目 Java 后端规范对 leai 模块进行全面重构:
- 新增 ILeaiWebhookEventService/ILeaiSyncService 接口,遵循 IService 模式
- Controller 层通过 Service 接口调用,不再直接注入 Mapper
- 新增 LeaiTokenVO/LeaiAuthRedirectDTO,替代 Map<String,String> 入参出参
- RuntimeException 替换为 BusinessException
- 添加 @Tag/@Operation Swagger 注解
- 提取共享工具类 LeaiUtil,消除 4 处重复的 toInt/toString 方法
- LeaiWebhookEvent 实体添加 @Schema 注解
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-04-08 10:23:11 +08:00 |
|
|
|
9b5c24c49c
|
Merge remote-tracking branch 'origin/master_develop' into master_develop
|
2026-04-08 09:36:50 +08:00 |
|
|
|
922f650365
|
feat: 添加乐读派(leai)集成模块及E2E测试基础设施
后端:
- 新增 leai 模块:认证、Webhook、数据同步、定时对账
- 新增 LeaiConfig/RestTemplateConfig/SchedulingConfig 配置
- 新增 FlywayRepairConfig 处理迁移修复
- 新增 V5__leai_integration.sql 迁移脚本
- 扩展所有实体类添加 tenantId 等字段
- 更新 SecurityConfig 放行 leai 公开接口
- 添加 application-test.yml 测试环境配置
前端:
- 添加乐读派认证 API (public.ts)
- 优化 Generating.vue 生成页
- 添加 Playwright E2E 测试配置及依赖
- 添加测试 fixtures、utils、mock-h5.html
- 添加 leai 模块完整 E2E 测试套件
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-04-07 21:52:32 +08:00 |
|
zhonghua
|
7a039e8403
|
fix:分配评委时应该查询租户下的+平台的评委
|
2026-04-07 19:16:13 +08:00 |
|
zhonghua
|
1d43501983
|
fix:修复评委打分403
|
2026-04-07 17:48:48 +08:00 |
|
zhonghua
|
f2c10d5e32
|
fix:添加作品编号,报名账号,评分字段
|
2026-04-07 17:16:40 +08:00 |
|
zhonghua
|
170d904081
|
feat: 作品管理分配状态/评委回显 + 评委管理租户隔离
Changes:
1. ContestWorkServiceImpl: findAll 返回 assignments、_count 数据 + assignStatus 搜索
2. ContestJudgeServiceImpl: 评委列表返回 assignedCount(已分配作品数)
3. JudgesManagementServiceImpl: 评委库租户隔离(查询当前租户+平台评委,创建在当前租户、平台评委只读)
4. judges/Index.vue: 增加"来源"列 + 平台评委操作限制
5. judges-management.ts: 类型增加 isPlatform/tenantId
6. WorksDetail.vue: 小修改
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-04-07 17:10:40 +08:00 |
|
zhonghua
|
3fd7002e2a
|
fix:修复评审进度500错误
|
2026-04-07 15:31:06 +08:00 |
|
zhonghua
|
633e46e663
|
feat: 添加评审模块Flyway迁移脚本V3
使用 DROP TABLE IF EXISTS + CREATE TABLE 确保表结构完整对齐实体类:
- t_biz_contest_judge(评委表,继承BaseEntity)
- t_biz_contest_review_rule(评审规则表,继承BaseEntity)
- t_biz_contest_work_judge_assignment(分配表,独立字段)
- t_biz_contest_work_score(评分表,继承BaseEntity)
- t_biz_preset_comment(预设评语表,继承BaseEntity)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-04-07 15:09:31 +08:00 |
|
zhonghua
|
2b83c9c78a
|
revert: 撤销评审表相关两次提交,需按设计文档规范重新实现
Reverts:
- eb40939 fix: 添加评审表自动创建兜底机制
- 015f871 feat: 创建评审模块数据库表
原因:数据库变更应使用Flyway迁移脚本规范实现,需对齐设计文档
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-04-07 14:42:58 +08:00 |
|
zhonghua
|
eb409398f3
|
fix: 添加评审表自动创建兜底机制
Flyway迁移可能未执行,添加ApplicationRunner在启动时自动检测并创建评审相关5张表。
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-04-07 14:32:50 +08:00 |
|
zhonghua
|
015f8718c4
|
feat: 创建评审模块数据库表
包含5张表:评委表、评审规则表、作品评委分配表、作品评分表、预设评语表
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-04-07 14:23:39 +08:00 |
|
zhonghua
|
1c63cb21e5
|
feat: 活动提交联动作品库+多租户数据对齐
1. P0-12 活动提交联动:替换文件上传为 WorkSelector 作品选择器
- 前端 ActivityDetail.vue 集成 WorkSelector 组件
- 后端 submitWork 支持 userWorkId 快照复制(title/description/coverUrl/pages)
- WorkSelector 支持 redirectUrl 创作后返回活动页
2. 多租户数据对齐:修复公众端报名/作品 tenantId 不一致
- register() 使用活动的 contestTenants[0] 作为 tenantId
- submitWork() 使用报名记录的 tenantId
- 管理端报名/作品统计、列表数据一致
3. 前端报名状态区分:pending/passed/rejected 显示不同按钮
4. submitWork 报名状态检查:区分未报名/审核中/已拒绝提示
5. 活动列表添加 _count(报名数/作品数)用于已交/应交展示
6. 修复 PublicCreationService.submit() title 默认值缺失
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-04-07 14:11:59 +08:00 |
|
zhonghua
|
a5909f98be
|
fix:创建作品修复
|
2026-04-07 09:50:44 +08:00 |
|
zhonghua
|
1003776dd3
|
fix:多项前端修复与功能对齐
- 修复评委端进入评审contestId为NaN(record.id→record.contestId)
- 修复评委评审详情403(活动名称改为路由传参,跳过需要contest:read权限的接口)
- 已发布活动隐藏编辑按钮
- 添加评委成功提示去重(移除子组件重复message)
- 用户端活动阶段判断修复(报名与提交重叠时优先显示提交阶段)
- 用户端作品提交支持submitRule(once/resubmit)重新提交
- 后端公共API补充submitRule字段返回
- 报名统计接口增加租户隔离,修复统计与列表数据不一致
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-04-03 20:29:28 +08:00 |
|
zhonghua
|
d68322f24a
|
fix:修复我的报名列表
|
2026-04-03 18:47:42 +08:00 |
|
zhonghua
|
63c564a03b
|
fix:修复报名
|
2026-04-03 16:28:38 +08:00 |
|
zhonghua
|
ff25e41243
|
fix:用户端活动报名修复报名按钮
|
2026-04-03 15:59:54 +08:00 |
|
zhonghua
|
b3954ffcf3
|
fix:活动详情优化
|
2026-04-03 15:28:15 +08:00 |
|
zhonghua
|
764f6eec4b
|
fix:公告添加租户隔离
|
2026-04-03 14:49:32 +08:00 |
|
zhonghua
|
7afb57c9bf
|
fix:添加活动
|
2026-04-03 14:18:38 +08:00 |
|
zhonghua
|
78cd956ab5
|
fix:修复创建活动失败
|
2026-04-03 13:49:19 +08:00 |
|
zhonghua
|
f223e9bd41
|
清理文件
|
2026-04-03 10:17:36 +08:00 |
|
zhonghua
|
c5fad30849
|
fix: 修复用户管理页面所属机构字段显示及列表过滤逻辑
1. 前端所属机构字段改为使用后端返回的平铺 tenantName 字段
- users.ts: 添加 tenantName, tenantCode, tenantType, tenantIsSuper 平铺字段
- Index.vue: 表格列和详情 Drawer 使用 record.tenantName/detailData.tenantName
2. 后端修复机构用户 (org) 过滤逻辑
- SysUserServiceImpl: case "org" 分支增加 getOrgTenantIds() 调用,传递 orgTenantIdsFilter 参数
- SysUserMapper.xml: 增加 orgTenantIdsFilter 参数处理,使用 IN 查询过滤
3. 后端修复公众 (public) 和评委 (judge) 用户过滤逻辑
- 数据库中 public 租户的 tenant_type='platform',judge 租户的 tenant_type='other'
- case "public"/"judge" 改为传递 tenantCodeFilter 参数,按租户 code 过滤
- SysUserMapper.xml: 增加 tenantCodeFilter 参数处理
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-04-02 20:06:09 +08:00 |
|
aid
|
3c4100c231
|
feat: 创建租户时自动生成管理员账号、角色和权限
创建租户改为事务化一站式操作:自动复制 gdlib 权限模板 + 补充基础管理权限,
创建 tenant_admin 角色和管理员用户,支持自定义账号密码。
前端表单增加管理员输入区块,成功弹窗展示凭据并支持一键复制。
同步实现 menuIds 菜单分配(消除原 TODO)。
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-02 18:48:34 +08:00 |
|
zhonghua
|
ea65b55332
|
fix: 补齐作品租户隔离与租户菜单树
- 作品列表/统计补齐 validState 与租户条件,关键字支持报名/队伍信息匹配
- 新增租户菜单树接口与服务实现,结构对齐用户菜单树
- t_biz_contest_work 增加 deleted 字段,补充 flyway 迁移与启动时轻量修复
Made-with: Cursor
|
2026-04-02 18:30:45 +08:00 |
|
aid
|
fd9c739cf5
|
修复租户端登录和菜单:支持 tenantCode 登录 + gdlib 菜单修正
问题1: 前端登录传 body.tenantCode(如 gdlib),但 Java 后端只从 X-Tenant-Id header 取租户ID
修复: AuthController/AuthService 支持从 tenantCode 查找租户,兼容两种方式
问题2: gdlib 租户菜单错乱(包含了超管端的活动监管/内容管理等)
修复: 重置 gdlib tenant_menus 为正确的18条:
工作台(50) + 活动管理(9+8子) + 数据统计(52+2子) + 系统设置(14+4子:机构信息/用户/角色/日志)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-02 16:26:58 +08:00 |
|