root
|
34b294fd48
|
fix: 添加订单状态检查和友好错误提示
- 检测订单已完成状态,返回友好提示
- 添加infoCard方法显示中性提示
- 优化自审批错误处理
|
2026-02-28 14:30:35 +08:00 |
|
root
|
719a93ba16
|
Release: 自审批发送文本消息
|
2026-02-28 14:22:43 +08:00 |
|
root
|
759bd6c2b3
|
Merge feature/mzl-dev: 自审批发送文本消息
|
2026-02-28 14:22:43 +08:00 |
|
root
|
6eed14933a
|
feat: 自审批时发送文本消息而不是卡片消息
- FeishuNotificationService: 检测自审批场景,发送纯文本消息
- ApprovalService: 传递 applicant_id 参数
- 添加 sendTextNotification 和 sendText 方法
- 保留自审批自动通过逻辑(前端调用场景)
|
2026-02-28 14:22:40 +08:00 |
|
root
|
1b0be5918d
|
fix: 防止自审批并优化飞书响应
- 添加自审批检查(申请人不能审批自己的申请)
- 使用 response() 函数替代 new Response() 确保飞书回调正确
|
2026-02-28 14:19:58 +08:00 |
|
root
|
6e73c7146b
|
Release: 修复Webman Request方法
|
2026-02-28 14:16:03 +08:00 |
|
root
|
d3b9bb0b72
|
Merge feature/mzl-dev: 修复Webman Request方法
|
2026-02-28 14:16:03 +08:00 |
|
root
|
95e150b65f
|
fix: 使用正确的Webman Request方法获取协议
- 使用 request()->header('x-forwarded-proto') 替代 isSecure()
- 支持反向代理环境
|
2026-02-28 14:15:57 +08:00 |
|
root
|
ea10bdb138
|
fix: 修复request()->scheme()方法不存在的问题
- ApprovalService.getDetailUrl: 改用 request()->isSecure()
- AuthController.qrcodeLogin: 改用 request()->isSecure()
|
2026-02-28 14:12:59 +08:00 |
|
root
|
da436949e1
|
Release: 添加飞书回调调试
|
2026-02-28 14:10:37 +08:00 |
|
root
|
593b72c895
|
Merge feature/mzl-dev: 添加飞书回调调试
|
2026-02-28 14:10:37 +08:00 |
|
root
|
0aa5b3abef
|
fix: 添加飞书卡片回调调试日志,追踪200671错误
|
2026-02-28 14:10:31 +08:00 |
|
root
|
fd722d0bde
|
Release: 修复飞书卡片回调200671错误
|
2026-02-28 14:05:00 +08:00 |
|
root
|
9c4c04c48c
|
Merge feature/mzl-dev: 修复飞书卡片回调200671错误
|
2026-02-28 14:05:00 +08:00 |
|
root
|
342f3128bf
|
fix: 修复飞书卡片回调JSON编码问题,解决200671错误
- 添加 JSON_UNESCAPED_UNICODE 防止中文被转义
- 添加 JSON_UNESCAPED_SLASHES 防止斜杠被转义
- Content-Type 添加 charset=utf-8
|
2026-02-28 14:04:55 +08:00 |
|
root
|
6c600d348a
|
Release: 更新nginx线上路径
|
2026-02-28 13:24:09 +08:00 |
|
root
|
097bc60cc4
|
Merge feature/mzl-dev: 更新nginx线上路径
|
2026-02-28 13:24:09 +08:00 |
|
root
|
2a26cbaf44
|
fix: 更新nginx配置为线上实际路径
|
2026-02-28 13:24:06 +08:00 |
|
root
|
3205138d35
|
Release: 修复HTML结构+添加文档托管
|
2026-02-28 13:15:41 +08:00 |
|
root
|
4edc707edc
|
Merge feature/mzl-dev: 修复HTML结构+添加文档托管
|
2026-02-28 13:15:41 +08:00 |
|
root
|
c2e5c35a9b
|
docs: 修复HTML文档出差申请结构错误 + 添加OpenResty文档托管配置
|
2026-02-28 13:15:30 +08:00 |
|
root
|
67d2ff43fc
|
Release: 移除用户文档联系支持
|
2026-02-28 13:12:51 +08:00 |
|
root
|
141b10ee9e
|
Merge feature/mzl-dev: 移除用户文档联系支持
|
2026-02-28 13:12:51 +08:00 |
|
root
|
9da279e349
|
docs: 移除用户文档中的联系支持部分
|
2026-02-28 13:12:42 +08:00 |
|
root
|
283a087c6f
|
docs: 添加HTML版本用户使用说明文档
- 美观的渐变色设计
- 移动端适配
- 图文并茂,通俗易懂
- 不包含不存在的功能
- 内联CSS,可直接独立访问
|
2026-02-28 12:04:16 +08:00 |
|
root
|
02dede2bd0
|
Release: 更新用户使用说明文档
|
2026-02-28 12:01:12 +08:00 |
|
root
|
b9cbf5d8eb
|
Merge feature/mzl-dev: 更新用户使用说明文档
|
2026-02-28 12:01:12 +08:00 |
|
root
|
614d633739
|
docs: 更新用户使用说明文档
- 移除对不存在功能的描述(首页待办事项、最新动态)
- 更新工作台首页说明,描述实际存在的功能
- 添加语言切换位置的说明
- 完善常见问题
|
2026-02-28 12:01:06 +08:00 |
|
root
|
27e59c6a5e
|
feat: 首页添加待办事项和最新动态
- 待办事项:显示待审批的申请(最多显示3条)
- 最新动态:显示已审批/已提交的动态(最多显示3条)
- 支持点击跳转到详情页
- 显示相对时间(刚刚、X分钟前、X小时前等)
- 空状态提示暂无动态
优化首页布局,提供更丰富的信息展示
|
2026-02-28 11:55:59 +08:00 |
|
root
|
5160522eab
|
Merge branch 'develop'
|
2026-02-28 11:49:31 +08:00 |
|
root
|
3581788aa1
|
Merge feature/mzl-dev: 添加用户帮助中心
|
2026-02-28 11:49:08 +08:00 |
|
root
|
13e963e012
|
feat: 添加用户帮助中心
- 新增帮助页面 /help,分类展示使用说明
- 新增用户使用说明文档
- 在个人中心添加帮助入口
**开发规范**:新增功能需同时更新:
1. 模块技术文档 (docs/modules/)
2. 用户使用说明 (frontend/public/docs/)
3. i18n 翻译
|
2026-02-28 11:49:02 +08:00 |
|
root
|
0053e87a77
|
Release: merge develop into master - 重组文档结构
|
2026-02-28 11:43:00 +08:00 |
|
root
|
7dcb1a6d16
|
Merge feature/mzl-dev into develop: 重组文档结构
|
2026-02-28 11:42:55 +08:00 |
|
root
|
e3fa7e86f3
|
docs: 重组文档结构,按模块分类
新的文档结构:
docs/
├── README.md # 文档中心导航
├── modules/ # 模块文档
│ ├── auth/ # 认证模块
│ │ ├── README.md
│ │ ├── feishu-login.md
│ │ ├── feishu-qrcode.md
│ │ └── feishu-notification.md
│ ├── approval/ # 审批流程模块
│ │ └── README.md
│ ├── business-trip/ # 出差申请模块
│ │ └── README.md
│ └── user/ # 用户管理模块
│ └── README.md
└── guides/ # 指南文档
├── deployment.md
├── environment.md
├── git-workflow.md
└── ...
每个模块都有独立的 README.md 说明概述、API、关键文件等
|
2026-02-28 11:42:51 +08:00 |
|
root
|
d37d82bc13
|
docs: 更新 CLAUDE.md 添加 Git 分支模型说明
- 更新环境对比表,增加测试环境
- 添加 Git 分支模型说明
- 更新文档引用链接
|
2026-02-28 11:35:43 +08:00 |
|
root
|
cf9c1fb272
|
docs: 更新 Git 工作流程文档
采用三分支模型:
- master: 生产环境
- develop: 开发集成分支(团队协作测试)
- feature/*: 个人功能分支
工作流程:
1. 从 develop 创建 feature/* 分支开发
2. 完成后合并到 develop 进行测试
3. 测试通过后合并到 master 发布
|
2026-02-28 11:34:02 +08:00 |
|
root
|
daa576ba19
|
docs: 更新 CLAUDE.md 添加环境配置说明引用
|
2026-02-28 11:25:22 +08:00 |
|
root
|
4617eae0b1
|
docs: 添加环境配置说明文档
包含:
- 开发环境与生产环境对比
- 域名使用说明
- Git 工作流程
- 飞书开放平台配置
- 常见操作错误(避免混淆)
- 部署检查清单
|
2026-02-28 11:24:32 +08:00 |
|
root
|
d2caeb8d12
|
docs: 更新 CLAUDE.md 项目文档
- 添加飞书登录完整说明(免登 + 扫码登录)
- 更新核心接口列表
- 添加 URL 参数说明
- 添加 Token 自动刷新说明
- 更新当前开发状态(飞书登录已完成)
- 更新文档列表和快速参考
|
2026-02-28 11:22:55 +08:00 |
|
root
|
7b4bf36188
|
docs: 添加飞书登录实现经验总结文档
包含:
- 飞书内免登完整流程和代码
- 飞书外扫码登录完整流程和代码
- Token 过期自动刷新机制
- 常见错误和解决方案
- 最佳实践和调试技巧
- 检查清单和快速调试命令
|
2026-02-28 11:20:31 +08:00 |
|
root
|
7c6a8fc247
|
feat: 实现飞书环境 token 过期自动刷新
- 当 API 返回 401 时,在飞书环境中自动调用免登刷新 token
- 刷新成功后自动重试原始请求,用户无感知
- 飞书外环境仍跳转到登录页
- 防止死循环:请求只重试一次
- 登录页支持从 redirect 参数中提取 company 参数
流程:
1. API 返回 401
2. 飞书环境:调用 tt.requestAuthCode 获取新授权码
3. 用新授权码登录获取新 token
4. 用新 token 重试原始请求
5. 失败或非飞书环境:跳转登录页
|
2026-02-28 11:12:26 +08:00 |
|
root
|
d13484c0f3
|
fix: 移除本地token检查,由后端处理授权验证
- 移除 localStorage token 检查,避免与飞书免登并行执行
- 在飞书环境中始终尝试免登,由后端判断登录状态
- 解决'飞书应用配置错误'误导性提示
|
2026-02-28 11:08:29 +08:00 |
|
root
|
6b76135374
|
fix: 移除误导性的'飞书应用配置错误'提示
- 免登功能实际正常,但显示误导性错误
- 移除不必要的错误提示,改善用户体验
|
2026-02-28 10:53:17 +08:00 |
|
root
|
dca1f45e2a
|
fix: 添加 redirectUri 参数到 tt.requestAuthCode
- 使用当前域名 + /login/callback 作为重定向地址
|
2026-02-28 10:41:34 +08:00 |
|
root
|
7e7534ec13
|
fix: 添加更详细的调试日志
|
2026-02-28 10:38:27 +08:00 |
|
root
|
b0fd009eb1
|
fix: 在调用 tt.requestAuthCode 前先调用 h5sdk.config
- 预先获取 appId 并配置 h5sdk
- 避免 'invalid url' 错误
|
2026-02-28 10:35:03 +08:00 |
|
root
|
6f7ac6c40b
|
fix: 重新添加 H5 JSSDK 并使用 h5sdk.ready() 等待 tt 对象
- H5 JSSDK 是飞书网页应用免登必需的
- 使用 h5sdk.ready() 确保 tt 对象被注入后再调用 API
|
2026-02-28 10:25:04 +08:00 |
|
root
|
fdb030cba0
|
fix: 移除 H5 JSSDK,直接使用飞书客户端注入的 tt 对象
- H5 JSSDK 与 tt 对象冲突,导致警告
- tt 对象由飞书客户端自动注入,无需额外 SDK
- 使用 tt.requestAuthCode 进行免登
|
2026-02-28 10:19:33 +08:00 |
|
root
|
12eeab6d2d
|
fix: 使用 tt.requestAccess 替代 tt.requestAuthCode
根据飞书官方文档,网页应用免登应使用 tt.requestAccess 而非 tt.requestAuthCode
参数名从 appId 改为 appID
|
2026-02-28 09:24:41 +08:00 |
|