4.8 KiB
4.8 KiB
出国申请附件功能-快速部署指南
🚀 快速部署(3步完成)
第1步:执行数据库脚本(1分钟)
# 使用MySQL客户端执行
mysql -h 主机地址 -u 用户名 -p 数据库名 < docs/设计文档/database/rs_overseas_application_attachment.sql
或者在数据库管理工具中执行该SQL文件。
验证:检查是否创建了表 rs_overseas_application_attachment
第2步:重启后端服务(2-3分钟)
cd backend
mvn clean install -DskipTests
./start-all.sh
验证:访问 http://localhost:8080 确认服务启动成功
第3步:重新构建前端(2-3分钟)
cd web
npm run build:prod
验证:检查 web/dist 目录是否生成新的文件
✅ 功能测试(5分钟)
测试1:新增申请并上传附件
- 登录系统
- 进入【出国管理】-【出国申请】
- 点击"新增申请"
- 阅读文件通知(30秒)
- 填写申请表单
- 滚动到底部,点击"添加附件"
- 填写附件标题(如:"护照复印件")
- 填写附件说明(选填,如:"护照信息页")
- 选择文件上传
- 点击"确认上传"
- 验证附件列表显示新上传的文件
- 点击"提交"保存申请
测试2:查看详情中显示附件
- 在申请列表中找到刚才的申请
- 点击"查看详情"
- 滚动到底部查看"申请附件"区域
- 验证显示附件标题、内容、文件名等信息
- 点击"下载"按钮测试下载功能
📁 关键文件清单
数据库
docs/设计文档/database/rs_overseas_application_attachment.sql- 附件表SQL脚本
后端(7个文件)
backend/ruoyi-modules/ruoyi-rs/src/main/java/org/dromara/rs/domain/RsOverseasApplicationAttachment.java- Entitybackend/ruoyi-modules/ruoyi-rs/src/main/java/org/dromara/rs/domain/vo/RsOverseasApplicationAttachmentVo.java- VObackend/ruoyi-modules/ruoyi-rs/src/main/java/org/dromara/rs/domain/bo/RsOverseasApplicationAttachmentBo.java- BObackend/ruoyi-modules/ruoyi-rs/src/main/java/org/dromara/rs/mapper/RsOverseasApplicationAttachmentMapper.java- Mapperbackend/ruoyi-modules/ruoyi-rs/src/main/resources/mapper/rs/RsOverseasApplicationAttachmentMapper.xml- Mapper XMLbackend/ruoyi-modules/ruoyi-rs/src/main/java/org/dromara/rs/service/IRsOverseasApplicationAttachmentService.java- Service接口backend/ruoyi-modules/ruoyi-rs/src/main/java/org/dromara/rs/service/impl/RsOverseasApplicationAttachmentServiceImpl.java- Service实现backend/ruoyi-modules/ruoyi-rs/src/main/java/org/dromara/rs/controller/RsOverseasApplicationAttachmentController.java- Controller
前端(2个文件)
web/src/api/rs/overseas.ts- API接口定义web/src/views/rs/overseas/index.vue- 页面组件
🐛 常见问题排查
问题1:上传附件时提示"请先保存申请表单"
原因:申请还没有保存到数据库,没有applicationId
解决:需要先填写必填项并点击"提交"保存申请,再上传附件
问题2:上传失败,提示"文件上传失败"
原因:OSS配置不正确或网络问题
解决:
- 检查OSS配置是否正确
- 检查网络连接是否正常
- 查看后端日志确认具体错误
问题3:查看详情时不显示附件
原因:前端没有正确调用附件列表API
解决:
- 打开浏览器开发者工具
- 查看Network标签,确认是否调用了
/rs/overseas/attachment/list/{applicationId}接口 - 检查接口返回数据是否正常
问题4:下载附件时无响应
原因:OSS URL不可访问或权限问题
解决:
- 复制附件URL在浏览器中直接访问
- 确认OSS bucket配置允许外部访问
- 检查文件是否真实存在
📊 API接口列表
| 接口路径 | 方法 | 说明 |
|---|---|---|
/rs/overseas/attachment/list/{applicationId} |
GET | 查询附件列表 |
/rs/overseas/attachment/{attachmentId} |
GET | 查询附件详情 |
/rs/overseas/attachment/upload |
POST | 上传附件 |
/rs/overseas/attachment |
PUT | 更新附件 |
/rs/overseas/attachment/{attachmentId} |
DELETE | 删除附件 |
/rs/overseas/attachment/batch |
DELETE | 批量删除 |
💡 使用技巧
- 快速上传:可以拖拽文件到上传区域
- 批量管理:在编辑页面可以一次性上传多个附件
- 文件命名:建议使用有意义的附件标题,方便查找
- 内容说明:详细的内容说明有助于审批人员快速了解附件内容
- 格式选择:推荐使用PDF格式,兼容性最好
部署时间:约5-10分钟
测试时间:约5分钟
总计:15分钟完成部署和测试
如有问题,请参考详细的《出国申请附件管理功能实现报告.md》文档。