Commit Graph

212 Commits

Author SHA1 Message Date
TanWenyan a522d066ab 修正:Dify统一使用FastAPI后端地址,移除独立difyBaseUrl配置
问题:错误地为Dify创建了独立的difyBaseUrl配置

正确架构:
客户端 → /api/* → Remix routes → dify-client.server →
FastAPI baseUrl/dify/* → Dify服务

修改:
1. app/config/api-config.ts
   - 移除 difyBaseUrl 字段
   - 所有环境统一使用 baseUrl (FastAPI后端地址)
   - 添加注释说明 baseUrl 包含 /dify 代理

2. app/services/dify-client.server.ts
   - 使用 API_BASE_URL 而非 DIFY_BASE_URL
   - API_URL: `${API_BASE_URL}/dify`

各环境FastAPI地址:
- development: http://172.16.0.55:8000
- testing: http://nas.7bm.co:8873
- production: http://10.79.97.17:8000

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-30 14:24:35 +08:00
TanWenyan 8099d333e4 关键修复:移除root.tsx中Dify环境变量注入
问题:root.tsx 将 NEXT_PUBLIC_API_URL, NEXT_PUBLIC_APP_ID,
NEXT_PUBLIC_APP_KEY 注入到客户端 window.__ENV,导致客户端
仍然使用环境变量中的 Dify 直连地址

修改:
- 移除 ENV 对象中的所有 Dify 相关环境变量
- 客户端不再从 window.__ENV 读取 Dify 配置
- 确保客户端只使用 /api 路由

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-30 14:20:40 +08:00
TanWenyan cf6e9c2421 紧急修复:客户端改为调用Remix API routes,不再直接调用Dify API
根本问题:客户端代码直接调用Dify API(12980端口),绕过了服务端代理

修改内容:
1. app/config/api-config.ts
   - 添加独立的 difyBaseUrl 配置(指向外网 nas.7bm.co:8000)
   - 导出 DIFY_BASE_URL 供服务端使用

2. app/config/chat.ts
   - 移除直接Dify API配置(NEXT_PUBLIC_API_URL, APP_ID, API_KEY)
   - 移除 generateUserId 函数
   - API_URL 改为 '/api'(指向Remix API routes)

3. app/services/api.client.ts
   - 所有fetch调用改为相对路径 /api/*
   - 移除所有 Authorization 头(服务端自动处理JWT)
   - 移除所有 user 参数传递(服务端从JWT提取)
   - credentials 改为 'include' 以携带cookie

4. app/services/dify-client.server.ts
   - 使用 DIFY_BASE_URL 替代 API_BASE_URL

5. app/utils/dify-test.client.ts
   - 测试函数改为调用Remix API routes

调用链路:
客户端 → /api/* → Remix API routes → dify-client.server.ts → FastAPI /dify → Dify

解决问题:
-  不再直接调用 nas.7bm.co:12980(Dify端口)
-  统一通过 nas.7bm.co:8000/dify(FastAPI代理)
-  所有请求都经过JWT认证
-  user字段由后端自动管理

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-30 11:25:37 +08:00
TanWenyan 63acabccc9 配置优化:切换到生产环境内网地址并添加Dify前端修改文档
1. 更新API配置:梅州端口51703切换到内网地址172.16.0.55:8073
2. 测试环境切换到正确的端口8873
3. 启动脚本改用生产模式:start:pm2:production:multi
4. 添加紧急修改文档:URGENT-前端必须修改.md

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-30 11:14:43 +08:00
TanWenyan e41c457076 修复session中的user生成逻辑
问题:
- session.server.ts 还在调用已删除的 generateUserId 函数
- 生成的 user 格式为 user_{APP_ID}:{sessionId},与后端期望的 username 不符
- 导致后端无法正确识别用户

修复:
- 移除 difyUtils 导入
- 移除 getSessionInfo 中的 user 字段生成
- 现在完全由后端从 JWT 中提取 username 管理 user 字段

影响:
- getSessionInfo 返回值不再包含 user 字段
- 所有 API 路由已经不再使用 session 中的 user

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-30 10:48:18 +08:00
TanWenyan 3254cec5ca 修复Dify对话记录加载问题:移除user参数,由后端自动管理
问题描述:
- 用户登录后无法加载历史对话记录
- 根本原因:前端传递的user值与实际用户不一致,导致Dify无法找到对应的对话

解决方案:
- 后端已实现user字段自动填充功能(v1.2.7-post2)
- 前端采用方案A:完全移除user参数传递
- 让后端从JWT中自动提取username并管理user字段

修改内容:
1. dify-client.server.ts
   - 移除所有方法的user参数
   - GET请求移除user查询参数
   - POST/DELETE请求移除user字段
   - 移除generateUserId工具函数

2. 所有API路由
   - 移除getSessionInfo中的user解构
   - 移除difyClient方法调用中的user参数传递
   - 日志中移除user信息输出

影响接口:
- GET /dify/conversations - 会话列表
- GET /dify/messages - 消息历史
- POST /dify/chat-messages - 发送消息
- POST /dify/conversations/{id}/name - 重命名会话
- DELETE /dify/conversations/{id} - 删除会话
- POST /dify/messages/{id}/feedbacks - 消息反馈

参考文档:docs/dify-frontend-user-field-guide.md

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-30 10:37:45 +08:00
LiangShiyong 05cc992c78 fix:修复编辑评查点无法返回 2025-10-30 09:55:21 +08:00
TanWenyan c4c08cb59b 重构Dify客户端:改为通过FastAPI代理并使用JWT认证
主要变更:
- 修改 dify-client.server.ts 使用 JWT 认证通过 FastAPI 后端代理访问 Dify API
- 所有 Dify API 路由(chat-messages, parameters, conversations, messages)添加 JWT 获取和传递逻辑
- API_URL 从直连 Dify 改为 FastAPI 后端的 /dify 路由
- 增强 JWT 认证失败的错误处理(返回401状态码)
- 添加详细的日志输出,便于调试

安全提升:
- DIFY_API_KEY 从前端移至后端,不再暴露在客户端代码
- 使用统一的 JWT 认证体系,提高系统安全性

文档:
- 新增 dify-proxy-backend-integration.md - 后端对接文档(包含完整 FastAPI 实现示例)
- 新增 dify-frontend-modification-summary.md - 前端修改总结
- 新增 CLAUDE.md - 项目架构说明文档

影响范围:
- app/services/dify-client.server.ts - 核心服务层
- app/routes/api.chat-messages.tsx - 聊天消息
- app/routes/api.parameters.tsx - 应用参数
- app/routes/api.conversations.tsx - 会话列表
- app/routes/api.messages.tsx - 消息历史
- app/routes/api.conversations.$id.tsx - 删除会话
- app/routes/api.conversations.$id.name.tsx - 重命名会话

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-30 09:47:48 +08:00
LiangShiyong 064f05ffa5 添加根据合同/卷宗的入口进行分类评查点列表,同时区分卷宗添加的分组属于卷宗,合同添加的分组属于合同 2025-10-29 21:01:01 +08:00
LiangShiyong e56d199c3c 添加测试案卷的搜索条件 2025-10-29 18:40:18 +08:00
LiangShiyong 1f16ab2325 添加测试的行政处罚卷宗,添加登录的地区的字段(根据端口号) 2025-10-29 15:54:59 +08:00
LiangShiyong 59706b70d0 给所有请求都加上jwt,隐藏生成jwt的secret(放到.env中),隐藏app-secret(放在pm2运行配置文件中,后续直接读取环境配置即可) 2025-10-17 15:28:22 +08:00
jiangao 9ec6d30573 隐藏上传文件入口,交叉评查的文件查看添加防抖点击,升级pdf加载组件版本优化清晰度 2025-09-30 14:32:00 +08:00
TanWenyan 25c8c75aa5 优化按钮组件,统一使用button标签,调整样式以提升用户体验。 2025-09-22 20:39:05 +08:00
TanWenyan 75969253d0 移除Host头验证中间件及相关逻辑,简化OAuth相关API的请求处理,优化代码结构和可读性。 2025-09-22 20:29:46 +08:00
TanWenyan c1b5c76e5c 简化文件上传和附件追加功能的请求头设置,移除JWT认证逻辑,提升代码可读性。 2025-09-22 19:47:58 +08:00
TanWenyan f2750773f9 优化文件上传逻辑,统一JWT令牌处理方式,简化请求头设置,提升代码可读性。 2025-09-22 11:48:12 +08:00
TanWenyan aec2e1fca2 Merge remote-tracking branch 'origin/shiy-login' into shiy-login 2025-09-22 11:19:18 +08:00
TanWenyan 1ea9fb205c 更新附件追加功能,优化文件选择和验证逻辑,支持多种文件格式,调整用户界面以提升操作体验。 2025-09-22 11:17:40 +08:00
LiangShiyong 18f22fc796 添加严格的域名访问限制 2025-09-16 12:08:27 +08:00
TanWenyan acb717c342 优化文件上传流程,增加上传进度步骤显示,调整上传完成后的文件处理逻辑。 2025-09-14 01:54:57 +08:00
TanWenyan a6c40b9fc0 优化文件上传进度计算逻辑,调整上传速度显示,简化上传完成后的状态处理。 2025-09-14 01:36:59 +08:00
TanWenyan a45884ef1e 优化文件上传进度管理,增加上传速度显示,调整上传完成后的状态处理逻辑。 2025-09-12 17:35:00 +08:00
TanWenyan 75923b7b04 新增文件上传功能,支持附件上传,优化合同上传逻辑,调整接口调用方式。 2025-09-12 16:21:55 +08:00
TanWenyan 75fcaa4885 撤销更新 2025-09-12 14:55:52 +08:00
TanWenyan 004a31ee08 更新附件追加功能,新增removeAnnotations参数以控制注释移除逻辑,优化文件上传接口调用。 2025-09-12 14:54:03 +08:00
TanWenyan 52af1008fe 更新文档和文件上传功能,新增前端JWT传递逻辑,优化用户信息处理。 2025-09-12 12:12:45 +08:00
TanWenyan bbad3cf00d 新增附件追加和合同模板上传功能,支持文件选择、验证及上传逻辑,优化用户界面和操作体验。 2025-09-12 11:52:28 +08:00
TanWenyan 86c4a36e63 更新文件上传功能,支持PDF和Word格式的文件验证,修改相关提示信息,优化文件选择器的接受格式。 2025-09-12 11:16:58 +08:00
TanWenyan 3c8c4e7391 更新文件上传功能,支持PDF和Word格式的文件验证,修改相关提示信息,优化文件选择器的接受格式。 2025-09-12 11:09:57 +08:00
TanWenyan 6c1a105145 完善合同模板上传功能,增加模板文件选择和验证逻辑,支持PDF和Word格式,优化上传准备流程。 2025-09-11 17:31:29 +08:00
TanWenyan a5ca3a8261 新增合同模板上传功能,支持选择PDF和Word格式文件,并实现上传逻辑及状态管理。 2025-09-11 17:25:58 +08:00
TanWenyan c611d6621d 新增合同上传附件追加 2025-09-11 17:11:38 +08:00
LiangShiyong 066e8ba4d9 优化文件上传进度条显示 2025-08-12 16:26:27 +08:00
TanWenyan bf05f93548 优化使用体验 2025-08-11 10:41:15 +08:00
TanWenyan 360b5a846d 优化使用体验 2025-08-11 10:40:56 +08:00
TanWenyan 21c01d51d5 优化OAuth客户端的日志输出,增强调试信息;修复获取访问令牌时的端口配置,确保回调地址正确;更新API配置中的服务器地址和端口。 2025-08-06 16:53:46 +08:00
TanWenyan 1b5f7ac50a 修改上传超时为10分钟 2025-08-06 10:33:15 +08:00
TanWenyan ec2901da03 配置好服务器网络配置
增加 docker 部署配置
2025-08-01 16:05:41 +08:00
LiangShiyong 6727d62272 修复登录问题,sidebar修复用户角色的问题 2025-07-28 10:56:59 +08:00
LiangShiyong 33363aba78 添加管理员登陆,添加nginx反向代理配置, 2025-07-27 20:01:36 +08:00
LiangShiyong 9a366d042a 优化显示提出意见时显示的已获得分数 2025-07-25 17:23:00 +08:00
LiangShiyong 27b3574cef 合同模板重新上传添加jwt,优化pm2脚本的配置 2025-07-25 16:11:58 +08:00
LiangShiyong d465260daf 准备重构nginx的配置,先回退api-config配置,添加PM2的多端口服务的启动脚步 2025-07-25 15:06:47 +08:00
LiangShiyong ccd5cdf71e 修复系统概览数据不准确的查询。修复交叉评查意见列表的数量查询。优化全局消息提示的层级。优化提交意见进行局部更新。 2025-07-25 09:49:36 +08:00
LiangShiyong 3dab54d551 Merge branch 'Wren' into shiy-login 2025-07-24 09:46:41 +08:00
LiangShiyong 913702ea10 添加nginx相关配置,首页系统概览添加用户id查询 2025-07-24 09:42:39 +08:00
TanWenyan 4934b083e3 适配交叉评查上传接口
修复N多个BUG
2025-07-24 09:29:55 +08:00
LiangShiyong 8800e982ab 测通完成评查,投票,意见列表,任务列表,任务关联文档列表的内容。剩余创建任务,提出意见的完善 2025-07-23 10:22:51 +08:00
LiangShiyong 47664fc0e8 添加jwt验证,添加交叉评查首页加载对接接口,评查任务文档列表对接接口,意见列表对接接口 2025-07-22 14:37:37 +08:00