4.5 KiB
4.5 KiB
出国申请功能修复说明
修复日期: 2025-10-11
问题:
- 新增申请弹窗中"申请附件"功能需要删除
- 上传出国境登记表盖章文件时报错:
Unknown column 'stamped_file_oss_id' in 'field list'
📋 修复内容
1. ✅ 前端修改 - 删除"申请附件"功能
修改文件: web/src/views/rs/overseas/index.vue
修改内容: 删除了新增申请弹窗中的"申请附件管理区域"(第866-899行)
影响范围:
- 新增申请时不再显示"申请附件"上传区域
- 移除了"添加附件"按钮
- 移除了附件列表展示
- 其他功能(盖章文件上传、党籍保留附件)保持不变
2. ⚠️ 数据库修复 - 添加OSS ID字段(需要手动执行)
问题原因:
- 后端代码在更新盖章文件信息时,尝试更新
stamped_file_oss_id和party_retention_file_oss_id字段 - 但数据库表
rs_overseas_application中缺少这两个字段 - 导致SQL执行失败
解决方案: 执行SQL脚本添加缺失的字段
SQL脚本位置: 【立即执行】修复出国申请OSS字段.sql
执行方法:
💡 推荐方法:使用Navicat/DBeaver等图形化工具
- 打开
【立即执行】修复出国申请OSS字段.sql文件 - 复制全部SQL语句
- 在Navicat中连接到
ruoyi_vue_plus数据库 - 新建查询窗口,粘贴SQL语句
- 点击"运行"按钮
- 查看执行结果,确认"修复完成"
方法2:使用MySQL命令行
# 进入项目目录
cd /Users/weizzzz/Documents/Cursor/0828CURSOR/all-project
# 执行SQL脚本(请替换为实际的数据库密码)
mysql -u root -p < 【立即执行】修复出国申请OSS字段.sql
🔍 SQL脚本说明
脚本会执行以下操作:
-
添加盖章文件OSS ID字段
ALTER TABLE `rs_overseas_application` ADD COLUMN `stamped_file_oss_id` BIGINT(20) NULL COMMENT '盖章文件OSS ID' AFTER `stamped_file_upload_status`; -
添加党籍保留附件OSS ID字段
ALTER TABLE `rs_overseas_application` ADD COLUMN `party_retention_file_oss_id` BIGINT(20) NULL COMMENT '党籍保留附件OSS ID' AFTER `party_retention_upload_status`; -
添加索引提升查询性能
ALTER TABLE `rs_overseas_application` ADD INDEX `idx_stamped_file_oss_id` (`stamped_file_oss_id`), ADD INDEX `idx_party_retention_file_oss_id` (`party_retention_file_oss_id`); -
智能检查: 脚本会自动检查字段是否已存在,避免重复添加
✅ 验证方法
1. 验证数据库字段
执行SQL后,运行以下查询验证字段是否成功添加:
USE ruoyi_vue_plus;
SELECT
COLUMN_NAME,
COLUMN_TYPE,
COLUMN_COMMENT,
IS_NULLABLE
FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = 'ruoyi_vue_plus'
AND TABLE_NAME = 'rs_overseas_application'
AND COLUMN_NAME IN ('stamped_file_oss_id', 'party_retention_file_oss_id');
预期结果:
+-----------------------------+-------------+---------------------+-------------+
| COLUMN_NAME | COLUMN_TYPE | COLUMN_COMMENT | IS_NULLABLE |
+-----------------------------+-------------+---------------------+-------------+
| stamped_file_oss_id | bigint(20) | 盖章文件OSS ID | YES |
| party_retention_file_oss_id | bigint(20) | 党籍保留附件OSS ID | YES |
+-----------------------------+-------------+---------------------+-------------+
2. 验证功能
- 启动后端服务
- 登录系统,进入"人事管理 → 出国申请"
- 点击"新增申请"
- 填写必填信息
- 上传"出国境登记表盖章文件"
- 确认上传成功,没有报错
📊 修改汇总
| 修复项 | 文件 | 状态 |
|---|---|---|
| 删除申请附件功能 | web/src/views/rs/overseas/index.vue |
✅ 已完成 |
| 添加OSS ID字段 | 数据库表 rs_overseas_application |
⚠️ 需手动执行SQL |
| 后端代码 | 无需修改(代码正确) | ✅ 无需修改 |
🚨 重要提示
- 必须先执行SQL脚本,否则上传盖章文件时仍会报错
- SQL脚本已做了智能检查,重复执行不会报错
- 建议在测试环境先验证后再应用到生产环境
- 执行SQL前建议备份数据库
📞 技术支持
如遇问题,请检查:
- 数据库连接是否正常
- 是否有ALTER TABLE权限
- 表
rs_overseas_application是否存在 - SQL脚本执行后的输出信息
修复完成后,出国申请的盖章文件上传功能将恢复正常! ✨