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