Files
hzdyjs/README-修复说明.md
T
2025-10-14 16:41:19 +08:00

3.3 KiB
Raw Blame History

出国申请附件下载问题修复说明

📌 问题

新增出国申请时上传的盖章文件无法下载,提示"文件OSS ID不存在"

✅ 修复完成

已完成代码修复,包括:

  • ✅ 后端返回新创建的applicationId
  • ✅ 前端上传前自动保存申请记录
  • ✅ 导入dayjs处理日期格式

🚀 立即操作(3步)

1️⃣ 修复数据库(解决ID 39的问题)

执行SQL查询,找到ID 39对应的OSS文件:

SELECT oss_id, file_name, original_name, 
       DATE_FORMAT(create_time, '%Y-%m-%d %H:%i:%s') AS create_time
FROM sys_oss
WHERE DATE(create_time) >= CURDATE() - INTERVAL 2 DAY
  AND (original_name LIKE '%pdf%' OR original_name LIKE '%jpg%')
ORDER BY create_time DESC LIMIT 20;

然后更新ID 39的记录(替换下面的oss_id值):

UPDATE rs_overseas_application 
SET stamped_file_oss_id = [从上面查询到的oss_id]
WHERE application_id = 39 AND deleted = 0;

2️⃣ 重启后端

IDEA中:

  1. 停止 ruoyi-admin(点击 ⏹️)
  2. 启动 ruoyi-admin(点击 ▶️)

3️⃣ 刷新前端

浏览器中按:

  • Mac: Cmd + Shift + R
  • Windows: Ctrl + F5

🧪 测试验证

测试1:ID 39可以下载

  1. 进入"出国申请管理" → "我的申请"
  2. 找到ID 39,点击"查看详情"
  3. 点击下载盖章文件
  4. 预期:文件正常下载 ✅

测试2:新增申请可以下载

  1. 点击"新增",填写必填字段:

    • 政治面貌:任选
    • 出国开始/结束日期:选择日期
    • 紧急联系人:张三 13800138000
    • 目的国家:美国
  2. 直接上传盖章文件(不要先点确定)

    • 观察提示:"正在保存申请记录..."
    • 观察提示:"申请记录已保存..."
    • 观察提示:"盖章文件上传成功!"
  3. 点击"确定"提交

  4. 进入"我的申请",找到新增的记录

  5. 点击"查看详情" → 下载盖章文件

  6. 预期:文件正常下载 ✅

📊 验证数据库

SELECT 
    application_id, applicant_name, stamped_file_oss_id,
    CASE WHEN stamped_file_oss_id IS NOT NULL THEN '✅' ELSE '❌' END AS status
FROM rs_overseas_application
WHERE deleted = 0
ORDER BY application_id DESC LIMIT 5;

预期:新增的记录中,stamped_file_oss_id不为NULL

🐛 问题排查

问题:上传时未显示"正在保存申请记录..."

解决:

  • 确认已刷新页面(Cmd+Shift+R)
  • 按F12查看Console是否有错误
  • 清除浏览器缓存

问题:提示"保存申请记录失败"

解决:

  • 检查是否填写了所有必填字段
  • 查看后端日志错误信息
  • 重新登录系统

问题:OSS_ID仍然为NULL

解决:

  • 查看后端日志,确认uploadStampedFile是否被调用
  • F12 → Network,查看请求的applicationId参数
  • 执行SQL查询确认数据库状态

📚 详细文档

  • 完整分析:出国申请附件下载问题分析与修复方案.md
  • 操作指南:🚨立即操作-重启后端.md
  • 修复总结:✅修复完成-出国申请附件下载问题.md
  • 数据库脚本:修复ID39的OSS_ID.sql

修复时间:2025-10-11
优先级:🔴 高
状态:✅ 代码修复完成,待测试

现在请按上面3个步骤操作并测试! 🚀