kuaifan
df6c1fc04d
refactor(i18n): 完成前端国际化改造
2026-07-20 02:35:07 +00:00
kuaifan
71ca6ba249
feat(dashboard): 完善负责人视角界面与范围切换
2026-07-18 23:43:10 +00:00
kuaifan
420d46d5cc
feat(apps): 新增应用菜单角标(数字/红点,per-user 实时推送)
...
插件/微应用可在自己的菜单入口显示数字或红点角标,插件未打开也生效。
- 后端:新增 app_badges 表 + AppBadge 模型 + Module/Badge 业务编排 +
AppsController(badge__set 应用密钥鉴权 / badge__clear 用户鉴权)
- 每应用独立密钥 APP_SECRET:按 appid 持久化于 appstore config.yml,鉴权校验
- 推送:复用 PushTask 下发 appBadge WS 消息;microapp_menu 附带初始角标
- 前端:appBadges Vuex module + WS 处理 + 三处菜单渲染(应用卡片/主菜单入口/
父『应用』入口聚合)+ 移动端 Tabbar + 打开即清(badge_clear_on_open)
- 用户离职级联清理;同步 ai-kb 角标知识
2026-06-29 02:32:19 +00:00
kuaifan
97bd58312e
refactor(approve): 移除主仓库内置审批功能,收敛到插件/微应用
...
删除 ApproveController、ApproveProcInstHistory/ApproveProcMsg 模型、approve
前端页面与导出组件,移除 approve 路由与 flow_url 配置;审批消息模板改为对接
插件侧能力。版本号 1.7.90 → 1.7.91。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-16 11:35:49 +00:00
kuaifan
27c65cc582
fix(frontend): TagInput 体质优化与多分隔符支持 + 后端 saveOrIgnore 加固
...
TagInput:
- cut prop 支持字符串或字符串数组,多分隔符任一匹配即切;
v-model 写回用第一个分隔符 (joinChar) 拼接保持向后兼容
- 修复 max 仅在 cut 分隔符路径生效,回车/blur/paste 路径未查 max 的 bug
- 修复 data() 初始化与 watch(value) 用硬编码 ',' 切分,
统一走 joinChar (单一输出分隔符) 还原 v-model,避免含空格的列名
(如项目模板 'Sprint 1') 被切碎
- 修复 watch(value) 空值/null 时不清空 disSource 的潜在残留数据
- v-for 加 :key='text',配合初始化去重避免拖拽错位
- 重复 tag 由静默忽略改为提示「该标签已存在」
- 编辑 tag 加 dedup 检查,重命名成已有 tag 文本时阻止关闭
- 粘贴改为按 cut 切分逐个 addTag;addTag 返回 boolean,
pasteText 在 max 满时 break 短路
- splitByCuts/parseValue 拆分:回切用 joinChar,paste/输入用 cutPattern
- 拼接翻译 '最多只能添加X个' 改为 $L('最多只能添加(*)个', max);
新增「最多只能添加(*)个」「该标签已存在」到 language/original-web.txt
manage.vue:
- 创建项目任务列表启用 :cut=\"[',', ',', ' ']\",支持半角/全角逗号/空格
IME (compositionstart/end 时序不可靠,统一走 @on-keydown + W3C 标准 229 守卫):
- login/ProjectPanel/TaskAdd/UserTagsModal 的 onXxxKeydown 加
isComposing || key=='Process' || keyCode==229 三重守卫,
与 TagInput.downEnter 风格统一
- file.vue 块模式重命名 onKeydown 用 \$nextTick 包 onEnter,
避免 keydown 早于 input 事件 commit v-model 导致少一个字符
AbstractModel.performInsertOrIgnore:
- \$uniqueBy 不为 null 时抛 InvalidArgumentException;
MySQL INSERT IGNORE 无法按指定列 scope 冲突,与框架 ON CONFLICT 语义不一致
- lastInsertId 仅在 > 0 时回填主键;
避免在无 auto_increment 列的表上把业务设置的 PK 覆盖为 0
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-15 01:26:55 +00:00
kuaifan
c706c515ee
fix(dialog): AI 助手消息推送补全发送者身份
...
AI 助手为虚拟用户(userid=-1)无会员记录,userid2nickname 返回空串,
导致群聊推送拼成 ": 内容"。友盟 App 推送与前端桌面/移动通知改为取
msg.nickname 或默认"AI 助手"作为发送者名,显示为 "名称: 内容"。
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-02 06:10:02 +00:00
kuaifan
0888f599a4
feat(manage): 管理页侧边栏支持拖拽调整宽度并修复菜单条件渲染
...
- 新增 ResizeLine 组件实现侧边栏宽度拖拽调整,范围200-420px,持久化至 localStorage
- 修复 v-for/v-else-if 同级指令优先级问题,将 v-else-if 提升至 template 包裹层
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-21 09:41:00 +00:00
kuaifan
ef7293704b
refactor(manage): 收口部门负责人ID规范化逻辑并简化后端对话可见性校验
...
- 后端:任务群/项目群统一按项目级共享判断,不再区分任务可见性
- 前端:新增 department/owner/ids/save mutation 及 normalizeIntArray 工具函数
- 前端:departmentOwnerReadonlyUrls 从 action 局部变量提升至 state
- 前端:修复 TaskDetail 提示文本多余空格
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-21 06:06:39 +00:00
kuaifan
0863e5529a
feat(manage): 实现部门负责人视角,支持只读查看部门成员项目与任务
...
部门负责人/部门管理员可通过系统配置开启,选择管理部门后只读查看
本部门及下级部门成员的全部项目和任务。前端自动根据 department_readonly
标记禁用编辑操作,后端统一注入负责人视角上下文控制数据访问边界。
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-21 00:14:36 +00:00
kuaifan
87dd07ef23
feat(ai-assistant): 基于场景标识管理会话恢复
...
- 新增 getSceneKey 函数,根据路由和实体生成唯一场景标识
- 会话初始化改为按 sceneKey 匹配历史记录,相同场景恢复会话
- 统一全局 AI 助手打开方式,manage.vue 通过事件触发 float-button
- resumeSession 超时时间统一为 86400 秒(1天)
2026-01-16 08:49:25 +00:00
kuaifan
ff87de9f44
feat(manage): 优化快捷键事件处理
2026-01-16 08:28:39 +00:00
kuaifan
22de7de87c
feat(manage): 优化新建菜单并添加 AI 助手快捷键
...
- 主按钮从「新建项目」改为「新建任务」
- 下拉菜单首位添加「AI 助手」选项(需安装 AI 插件)
- 添加 Ctrl/Cmd+I 快捷键打开 AI 助手
- 键盘设置页面同步显示 AI 助手快捷键
2026-01-16 07:46:50 +00:00
kuaifan
32ffecb905
feat(ai-assistant): 为各场景添加自定义标题并优化浮动按钮显示
...
- 为项目创建、任务创建、消息编写、汇报编辑、汇报分析场景的 AI 助手添加专属标题
- 在模态框显示时自动隐藏浮动按钮,避免 UI 重叠
2026-01-15 10:48:56 +00:00
kuaifan
b794ba7a6b
refactor(ui): 优化客户端下载入口位置
...
- 将仪表盘页面的客户端下载链接移至右上角用户菜单
- 登录页保留右下角客户端下载链接
- 新增 clientDownloadUrl 全局状态,统一管理下载地址
- AI 浮动按钮在登录页不显示
2026-01-15 09:09:58 +00:00
kuaifan
986c4871df
feat: Enhance AI Assistant with session management and improved UI
...
- Added session management capabilities to the AI Assistant, allowing users to create, load, and delete sessions.
- Improved modal UI with a new header for session actions and a footer for model selection.
- Updated input handling to support dynamic loading of session data and improved response formatting.
- Enhanced search functionality in various components to utilize the AI Assistant for generating content based on user input.
2025-12-31 08:47:03 +00:00
kuaifan
b259f083d4
no message
2025-11-12 07:05:46 +08:00
kuaifan
b9215e2410
feat: 添加语言偏好提示功能到AI系统提示
2025-11-10 16:46:29 +00:00
kuaifan
0deb3113b5
feat: 引入文本提取功能,优化AI内容解析逻辑,移除冗余代码
2025-11-08 20:42:21 +00:00
kuaifan
ecb52c76b9
feat: 完善AI助手功能
2025-11-08 08:57:22 +00:00
kuaifan
e83fd7af1b
feat: 优化 AI 助手,支持自定义模型
2025-11-07 07:01:15 +00:00
kuaifan
b445af932c
feat: 更新消息推送逻辑
2025-11-03 00:45:34 +08:00
kuaifan
7fa075fa75
no message
2025-10-26 09:59:37 +08:00
kuaifan
8958f2f234
feat: 添加MCP服务器状态切换功能
2025-10-25 16:39:50 +08:00
kuaifan
b62c580d5e
no message
2025-09-28 05:55:02 +08:00
kuaifan
4b106e1f41
feat: 添加最近访问记录功能
...
- 在 UsersController 中新增获取和删除最近访问记录的接口
- 在相关控制器中记录用户最近访问的任务、文件和消息文件
- 新增 RecentManagement 组件,展示用户最近访问的记录
- 更新样式和图标以提升用户体验
2025-09-24 09:51:13 +08:00
kuaifan
631fa0db4e
feat: 添加数据导出功能及相关样式
...
- 在管理页面中新增数据导出功能,支持导出任务、超期任务、审批数据和签到数据
- 更新应用页面,添加导出管理的弹出菜单
- 新增导出相关的 SVG 图标
- 优化样式以提升用户体验
2025-09-23 16:41:07 +08:00
kuaifan
5fd2505a33
feat: 优化 AI 生成交互体验
...
- 移除不必要的 loading 状态,简化用户交互
- 在项目和任务生成中添加取消功能,提升用户体验
- 更新相关组件以支持取消操作,确保生成过程的灵活性
2025-09-23 14:41:34 +08:00
kuaifan
c190aab8b9
feat: 添加 AI 助手生成项目功能
...
- 在 ProjectController 中新增 ai__generate 接口,支持根据用户需求自动生成项目名称及任务列表
- 在 AI 模块中实现 generateProject 方法,处理项目生成逻辑
- 更新前端管理页面,添加 AI 生成按钮,集成项目生成请求
- 增强样式以提升用户体验
2025-09-23 13:43:46 +08:00
kuaifan
379d3811a8
feat: 添加用户收藏功能
...
- 在 UsersController 中新增获取、切换、清理用户收藏的 API 接口
- 创建 UserFavorite 模型以管理用户的收藏记录
- 更新前端 Vue 组件以支持收藏管理界面和交互
- 添加相关样式以美化收藏管理界面
2025-09-22 16:09:33 +08:00
kuaifan
0401b8a6e6
feat: 添加任务浏览历史功能
...
- 在 UsersController 中新增获取、记录和清理任务浏览历史的 API 接口
- 创建 UserTaskBrowse 模型以管理用户的任务浏览记录
- 更新前端 Vue 组件以支持任务浏览历史的加载和显示
- 移除不再使用的本地缓存逻辑,直接通过 API 进行数据交互
2025-09-22 07:10:12 +08:00
kuaifan
7c94f6bc9a
perf: 支持项目调整排序
2025-08-20 08:36:19 +08:00
kuaifan
e237b4db1c
perf: 支持项目调整排序
2025-08-19 22:18:18 +08:00
kuaifan
02275bb417
perf: 支持项目调整排序
2025-08-19 21:19:45 +08:00
kuaifan
0833018399
perf: 优化下载工具
2025-08-14 16:50:48 +08:00
kuaifan
dc1bb72070
perf: 优化抽屉窗口
2025-08-07 14:53:09 +08:00
kuaifan
8e084d2362
perf: 优化抽屉窗口
2025-08-07 14:27:00 +08:00
kuaifan
e792ab7b4d
feat: 工作流支持自定义颜色
2025-08-01 11:27:00 +08:00
kuaifan
f21d45e697
perf: 优化通知内容
2025-07-07 14:52:24 +08:00
kuaifan
8368bbec47
perf: 优化iPadOS兼容性
2025-06-18 15:35:37 +08:00
kuaifan
25e82d690e
perf: 优化导出任务功能
2025-06-04 14:58:54 +08:00
kuaifan
790b05880a
no message
2025-05-25 18:26:32 +08:00
kuaifan
f34766ade0
no message
2025-05-25 08:46:25 +08:00
kuaifan
2905059947
no message
2025-05-23 11:17:05 +08:00
kuaifan
7de433c5fc
no message
2025-05-20 17:53:49 +08:00
kuaifan
a01b292eb3
no message
2025-05-18 11:00:06 +08:00
kuaifan
b0c356fa9b
no message
2025-05-17 23:12:47 +08:00
kuaifan
b2d9568deb
no message
2025-05-17 20:56:54 +08:00
kuaifan
10f5af5f09
no message
2025-05-17 02:03:49 +08:00
kuaifan
ef696391d8
no message
2025-05-15 19:42:16 +08:00
kuaifan
0c34df290e
no message
2025-05-15 17:43:04 +08:00