115 Commits

Author SHA1 Message Date
kuaifan
8d9082f7a1 fix(upgrade): 修复 L13/PHP8.4 升级回归的 3 处致命异常 + 收敛动态路由暴露面
巡检全量 323 接口 + laravel.log PHP 致命异常普查发现:

- Base::getSchemeAndHost(): 非请求上下文(Task/导出闭包)request() 非
  Request 实例,调 getHttpHost() 致命错误(导出超期任务等)。加 instanceof 守卫。
- FileController::office__token(): php-jwt v7 强制 array payload,
  config 缺失为 null 触发 TypeError。校验为数组,否则 retError。
- DialogController::msg__translation(): 空 language 传入
  Doo::getLanguages(bool|string) 触发 TypeError。前置拦截空值。
- InvokeController: 动态路由改为仅暴露 public 方法,protected/private
  视为内部方法返回 404,堵住内部辅助方法被裸访问触发 ArgumentCountError。
- ApproveController: 6 个内部辅助方法(getProcessById 等)收敛为 protected。

验证: 复扫 323 接口 0 个 5xx,phpstan 无错误,真 public 端点回归正常。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-13 04:05:31 +00:00
kuaifan
04aa60b574 refactor(config): app 内 env() 直读收敛到 config()
- 新增 config/dootask.php 承载 11 个无 config 对应的 env key(默认值随迁)
- 29 处 env() 替换:APP_KEY→config('app.key')、APP_NAME→config('app.name')、其余→config('dootask.*')
- 语义逐处保持一致(?:/三元留在调用点);消除 config:cache 后 env() 返回 null 的隐患
- 注:User.php / Setting.php 同时含本批 ide-helper 生成的 @property 注释增量
- 验证:grep env( app/ 归零;composer stan 通过;phpunit 146 测试全过

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-13 01:21:47 +00:00
kuaifan
23b06327d6 feat(file): 添加文件内容提取 API 支持分页读取
- FileController: 新增 fetch API 通过路径获取文本内容
  - FileController: one API 支持 with_text 参数提取文本
  - ManticoreFile: 实现分页提取 extractFileContentPaginated
  - TextExtractor: 添加 truncate 参数支持内容截取
2026-01-16 01:41:28 +00:00
kuaifan
ec33327408 fix: 修复文件夹上传时数据库死锁问题
使用 Redis 分布式锁对同一用户往相同父目录的上传请求进行排队,
  避免并发上传导致的 MySQL 死锁错误 (SQLSTATE[40001])
2026-01-14 11:44:47 +00:00
kuaifan
42e4ddbd17 fix: 修复权限级联同步缺口
修复 Manticore 搜索索引在特定场景下 allowed_users 权限未能正确同步的问题:

  Observer.updated 补充:
  - ProjectUserObserver: 处理项目成员移交时的权限级联
  - ProjectTaskUserObserver: 处理任务成员移交时的权限更新

  批量操作绕过 Observer 修复(delete → remove):
  - FileUser: deleteFileAll/deleteFileUser 方法
  - ProjectTask: 可见性设置时的批量删除
  - ProjectController: 子任务升级和任务复制时的批量删除

  文件批量更新封装:
  - File 新增 updateChildFilesUserid() 方法,统一处理子文件 userid
    更新及 Manticore 同步
2026-01-13 11:55:45 +00:00
kuaifan
fe7a2a0e73 feat: 扩展 SeekDB 支持联系人、项目、任务的 AI 搜索
- 合并 SeekDBFileSyncTask 到 SeekDBSyncTask
- 统一 AI 搜索 API 入口
2025-12-30 07:48:00 +00:00
kuaifan
23faf28f7f feat: 集成 SeekDB AI 搜索引擎实现文件内容搜索 2025-12-30 05:49:26 +00:00
kuaifan
16a55de6f1 feat: 增强搜索功能,支持通过 ID、名称和其他字段搜索任务、文件和报告 2025-12-29 15:43:50 +00:00
kuaifan
477bb1ac8f feat: MCP增加文件管理功能,支持获取文件访问URL、文件列表和文件搜索 2025-11-11 05:23:00 +00:00
kuaifan
5ba0eed721 no message 2025-10-29 00:15:45 +00:00
kuaifan
068de0fa9f fix: 优化文件访问权限检查逻辑
- 移除冗余的游客访问权限检查代码
- 简化用户认证逻辑,确保在文件不允许游客访问时强制用户登录
- 更新返回数据结构,移除不再使用的 is_guest_access 字段
2025-09-24 19:00:07 +08:00
kuaifan
4b106e1f41 feat: 添加最近访问记录功能
- 在 UsersController 中新增获取和删除最近访问记录的接口
- 在相关控制器中记录用户最近访问的任务、文件和消息文件
- 新增 RecentManagement 组件,展示用户最近访问的记录
- 更新样式和图标以提升用户体验
2025-09-24 09:51:13 +08:00
kuaifan
5e1f3c5564 feat: 添加文件游客访问权限功能 2025-09-19 19:10:58 +08:00
kuaifan
0f41172468 perf: 文件名长度限制最长为100字 2025-08-10 21:54:31 +08:00
kuaifan
8597705a77 fix: 无法打包文件加载的情况 2025-08-10 21:00:35 +08:00
kuaifan
115b4aacb8 fix: 修复无法导出的问题 2025-07-31 15:27:17 +08:00
kuaifan
1b242dc04e perf: 优化错误提示 2025-07-30 20:33:27 +08:00
kuaifan
44baa743c0 perf: 优化聊天发送会员、任务、文件支持搜索ID 2025-07-07 18:10:37 +08:00
kuaifan
270ddc6487 feat: 检查应用是否已安装 2025-05-23 13:39:57 +08:00
王昱
1d92c2668d feat: 检查应用是否已安装 2025-05-23 12:40:33 +08:00
kuaifan
9716d7fe43 perf: 优化docker配置 2025-03-21 11:34:09 +08:00
kuaifan
0b1da914cd no message 2025-03-16 23:06:45 +08:00
kuaifan
d73a152a36 no message 2025-03-03 22:48:09 +08:00
kuaifan
da7e832f21 fix: 复制文件权限判断 2024-12-14 18:41:30 +08:00
kuaifan
4c5c071b21 no message 2024-12-03 08:30:56 +08:00
kuaifan
71f13a0b50 perf: 支持自定义上传图片压缩质量 2024-12-02 10:40:55 +08:00
kuaifan
9c4ff466a4 perf: 新增文件打包下载权限设置 2024-11-20 16:17:30 +08:00
kuaifan
93387c289e no message 2024-11-12 19:52:19 +08:00
kuaifan
7445ac3a39 perf: 优化图片压缩 2024-10-23 15:37:00 +08:00
kuaifan
3cd00e1343 no message 2024-10-19 11:09:17 +08:00
kuaifan
1128db184e no message 2024-10-17 14:03:51 +08:00
kuaifan
0ab6e6ca8d perf: 优化翻译 2024-09-23 01:34:06 +03:00
kuaifan
16359a968d perf: 文件上传支持覆盖上传 2024-03-13 14:25:15 +09:00
weifashi
fb8d759103 perf: 优化打包下载 2024-01-04 12:02:29 +08:00
kuaifan
846fdcf145 perf: 优化打包下载 2024-01-03 20:48:49 +08:00
weifashi
d26df91960 fix: 版本验证有问题,先干掉 2023-12-21 20:29:56 +08:00
ganzizi
faf5dec08a feat: 新增压缩下载完成后系统机器人提醒 2023-12-05 18:55:50 +08:00
weifashi
cef19488d2 perf: 细节优化 2023-12-01 14:52:50 +08:00
weifashi
b644a65f22 fix: 1. 修复 windows端 右键发送 是直接发送了,没有出现使用md格式发送 2.其他bug修复 2023-11-20 15:19:29 +08:00
ganzizi
6db82c8176 fix: 修复打包下载问题 2023-11-20 11:44:35 +08:00
ganzizi
2737fa4697 feat: 新增临时压缩下载文件24小时自动清理 2023-11-17 11:56:22 +08:00
ganzizi
aef46d4c76 fix: 修复进度完成后再次完成 2023-11-17 10:23:04 +08:00
ganzizi
ed4afa63f0 perf: 优化实现文件夹下载以及多文件压缩下载功能 2023-11-16 17:01:49 +08:00
weifashi
4205b68b8c perf: 压缩下载改名打包下载 2023-11-14 11:39:14 +08:00
ganzizi
51b1d78d8a perf: 优化实现文件夹下载以及多文件压缩下载功能 2023-11-13 17:21:26 +08:00
weifashi
3fdcbf92b6 feat: 文件共享只读禁止下载文件 2023-11-13 17:13:17 +08:00
ganzizi
43cee0eb4a perf: 优化实现文件夹下载以及多文件压缩下载功能 2023-11-13 15:00:53 +08:00
ganzizi
930f55b080 feat: 新增实现文件夹下载以及多文件压缩下载功能 2023-11-10 19:34:36 +08:00
kuaifan
efe80ce0eb perf: 补充优化 2023-11-09 00:38:16 +08:00
weifashi
e7fbe8bb49 feat: 升级 office 到 7.5 版本 2023-11-08 18:37:08 +08:00