kkfluous
|
8d861538af
|
fix(feedback): 第一步选完类型后点「下一步」无反应
ci/woodpecker/push/woodpecker Pipeline was successful
next() 漏写了 step===1 且 type 已选的分支,按钮只在「未选」时
拦截,「已选」时进入空函数体直接返回,没有 setStep(2)。
补上 step===1 已选时 setStep(2),行为:
- 直接点卡片:保持原有自动下一步(onClick 里 setStep)
- 选中后用底部「下一步」按钮:现在也能正常推进
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-04-30 14:37:46 +08:00 |
|
kkfluous
|
bdefb878a5
|
style(feedback): 选类型副标题换成轮转动态提示
ci/woodpecker/push/woodpecker Pipeline was successful
step 1 标题下的「选一个最贴近的类型」改成 RotatingFooterHint,
6 条文案 4 秒一轮(含「数字背后还有故事,等下一次上线揭晓」等)。
RotatingFooterHint 兼容自定义对齐:传 className 就完全覆盖
默认 mt-1 + justify-center;不传则保持底部居中(其他模块的用法)。
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-04-30 14:34:21 +08:00 |
|
kkfluous
|
1a3d48b2d1
|
feat(feedback): 反馈 FAB 菜单加「反馈管理」入口,BI-ADMIN-FEEDBACK 角色可见
ci/woodpecker/push/woodpecker Pipeline was successful
- shared/auth/roles 新增 FEEDBACK_ADMIN_ROLES = ['BI-ADMIN-FEEDBACK']
+ canManageFeedback() helper(含 FULL_ACCESS_ROLES 兜底)
- FeedbackFab 菜单:在「我的反馈」下方加分割线 + 紫色 ⚙ 图标的「反馈管理」
仅 canManageFeedback 为 true 时渲染,跳到 #/admin/feedback
- 后端守卫:GET /api/feedback/list 与 PATCH /api/feedback/:id 加角色判断
无权限返回 403。/mine /submit /upload 仍对全部登录用户开放。
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-04-30 14:20:45 +08:00 |
|
kkfluous
|
c5541fbbf5
|
style(feedback): 选类型步骤改用 Lucide 图标 + 克制白卡
ci/woodpecker/push/woodpecker Pipeline was successful
之前用 emoji + 整卡渐变背景,颜色饱和度高、和系统其他模块的视觉
语言不一致,看起来有点像玩具。
新视觉:
- 替换 emoji 为 Lucide 图标:Lightbulb / Bug / Palette / NotebookPen
与项目其他模块(Truck/Route/Zap)保持一致
- 卡片白底 + 1px 浅边框,hover 阴影;选中态用 ring 替代填色
- 图标放在彩色圆角小容器里(amber/rose/violet/blue),强度更克制
- 标题升级到 13px,副标题统一 11px slate-400 medium
- 入场级联动画 + 微交互(hover y=-1,→ 按钮位移)
文案微调:「想反馈点什么?」+ 副标题「选一个最贴近的类型」
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-04-30 14:16:26 +08:00 |
|
kkfluous
|
90b34b681e
|
feat(feedback): 移除联系方式步骤,登录态用户身份已知
ci/woodpecker/push/woodpecker Pipeline was successful
之前第三步要求填写微信/钉钉等联系方式,但用户已登录,后端已经
记录 user_id / user_name(与水印取的同一份),可以直接通过内部
渠道触达,无需再问。
流程从 4 步收紧为 3 步:
1) 选类型
2) 写内容 + 截图 + 板块
3) 成功页
提交概览页一并删除(信息不变就直接提交,少一次点击)。
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-04-30 14:14:54 +08:00 |
|
kkfluous
|
90b1266fe5
|
fix(feedback): 反馈弹窗禁止背景点击关闭,只能用 X 按钮
ci/woodpecker/push/woodpecker Pipeline was successful
之前点击外部遮罩会关闭弹窗,用户填到一半误触会丢失全部已输入内容。
去掉 backdrop 的 onClick={close},只保留右上角 X 按钮关闭路径。
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-04-30 14:08:22 +08:00 |
|
kkfluous
|
20ebb16e08
|
feat(feedback): 截图上传 + 我的反馈历史 + 后台管理页
ci/woodpecker/push/woodpecker Pipeline was successful
后端
- 接入阿里云 OSS(ali-oss SDK),bucket=lnh2etest,目录 /dos/feedback/YYYY-MM-DD/
- POST /api/feedback/upload:单图 multipart 上传,限制 5MB,仅 png/jpeg/webp/gif
- bi_user_feedback 增加 screenshots(JSON)、reply_content/reply_user/reply_at、user_id 索引
老表通过 try-catch 自动 ALTER 兼容
- POST /api/feedback/submit:增加 screenshots[] 字段
- GET /api/feedback/mine:当前用户自己的反馈历史
- PATCH /api/feedback/:id:更新状态 + 回复
- GET /api/feedback/list:增加 status 过滤
前端
- FeedbackFab 改为悬浮按钮 + 弹出菜单:「提个建议」/「我的反馈」
- 弹窗 Step 2 增加截图区:点击选择 / 多张 / 直接 Ctrl+V 粘贴
缩略图预览 + 单张移除,最多 6 张,上传中转圈
- FeedbackHistoryDrawer 新组件:底部抽屉展示自己的反馈
含状态徽章(待处理/处理中/已完成/已忽略)、截图缩略图、产品同学回复区
- 新增隐藏后台管理页 /admin/feedback(或 #/admin/feedback)
状态分类计数 + 列表 + 详情弹窗(改状态 + 写回复,状态选项含徽章色)
待处理项有快捷按钮(标记处理中 / 忽略)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-04-30 14:06:21 +08:00 |
|
kkfluous
|
e8f1604c11
|
feat: 全局反馈系统 + 各模块底部统一动态提示
ci/woodpecker/push/woodpecker Pipeline was successful
- 新增 components/RotatingFooterHint:统一文案+蓝色脉冲,4 秒轮换
- 新增 components/FeedbackFab:右下角悬浮按钮(渐变 + 心形信封 + 黄色脉冲点),
点击打开 4 步引导式弹窗
Step 1 选类型(💡新维度 / 🐛bug / 🎨界面 / 📝其他)
Step 2 描述需求 + 选当前板块(chip)
Step 3 留联系方式(可选)+ 提交概览
Step 4 ❤️ 成功页(弹簧 √ 动画)
顶部 spring 进度条,底部上一步/下一步,下拉手柄,背景点击或 X 关闭
- 后端 routes/feedback:bi_user_feedback 表(自动建表,含 status 字段)
POST /api/feedback/submit + GET /api/feedback/list
- Shell 全局挂载 FeedbackFab,自动从 hash 检测当前模块
- 各模块底部追加 RotatingFooterHint:
AssetsModule / MileageModule / SchedulingModule / EleImportPage
HydrogenOverview / HydrogenDaily / ElectricOverview / ElectricDaily
(HydrogenOverview 旧的内嵌实现已替换为共享组件)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-04-30 13:50:39 +08:00 |
|