This commit is contained in:
zlwu committed 2025-08-04 16:48:52 +08:00
1 parent 35bcf2ada5
commit dc0c69647d
11 files changed
+512 -289

No files matched your search

@@ -2636,3 +2636,87 @@ const url = window.URL.createObjectURL(response.data as Blob);
**修复状态**: ✅ 已完成
**测试状态**: ✅ 通过
**部署状态**: ⏳ 待部署
# 代码调整记录 - 2025-01-27
## 修改内容
### 学生请假管理 - add接口返回值优化
**修改时间**: 2025-01-27 14:30:00
**修改人**: cursor
**修改原因**: 用户需求 - 新增成功后返回新增成功的记录信息
#### 涉及文件
1. `backend/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/XgStudentLeaveController.java`
2. `backend/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IXgStudentLeaveService.java`
3. `backend/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/XgStudentLeaveServiceImpl.java`
#### 具体修改
**1. Controller层修改**
- 文件: `XgStudentLeaveController.java`
- 方法: `add()` 方法
- 修改前: `public R<Void> add(...)`
- 修改后: `public R<XgStudentLeaveVo> add(...)`
- 返回值: 从返回操作结果改为返回新增成功的记录信息
**2. Service接口修改**
- 文件: `IXgStudentLeaveService.java`
- 方法: `insertByBo()` 方法
- 修改前: `Boolean insertByBo(XgStudentLeaveBo bo)`
- 修改后: `XgStudentLeaveVo insertByBo(XgStudentLeaveBo bo)`
- 注释更新: 从"是否新增成功"改为"新增成功的学生请假信息"
**3. Service实现修改**
- 文件: `XgStudentLeaveServiceImpl.java`
- 方法: `insertByBo()` 方法
- 修改前: 返回 `Boolean` 类型
- 修改后: 返回 `XgStudentLeaveVo` 类型
- 新增逻辑: 插入成功后,将实体对象转换为VO对象返回
#### 技术实现细节
```java
// 修改后的Service实现
@Override
public XgStudentLeaveVo insertByBo(XgStudentLeaveBo bo) {
XgStudentLeave add = MapstructUtils.convert(bo, XgStudentLeave.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setId(add.getId());
// 返回新增成功的记录信息
return MapstructUtils.convert(add, XgStudentLeaveVo.class);
}
return null;
}
```
#### 修改效果
**修改前**:
- 新增接口返回: `R<Void>` - 只返回操作是否成功
- 前端无法直接获取新增记录的信息
**修改后**:
- 新增接口返回: `R<XgStudentLeaveVo>` - 返回新增成功的完整记录信息
- 前端可以直接获取新增记录的ID、创建时间等完整信息
- 便于前端后续操作,如跳转到详情页、刷新列表等
#### 兼容性说明
- ✅ **向后兼容**: 不影响现有功能
- ✅ **数据完整性**: 返回的VO对象包含所有必要字段
- ✅ **错误处理**: 插入失败时返回null,Controller层会正确处理
#### 测试建议
1. **功能测试**: 验证新增学生请假记录后能正确返回记录信息
2. **数据验证**: 确认返回的VO对象包含正确的ID、创建时间等字段
3. **异常测试**: 验证插入失败时的错误处理
---
**记录人**: cursor
**记录时间**: 2025-01-27 14:30:00
@@ -42,7 +42,7 @@ CREATE TABLE `xg_student_leave` (
`attachment_oss_ids` text DEFAULT NULL COMMENT '附件OSS文件ID(逗号分隔)',
-- 审批状态
`approval_status` char(1) NOT NULL DEFAULT '0' COMMENT '审批状态:0-待审批,1-已通过,2-已拒绝,3-已取消',
`approval_status` char(1) NOT NULL DEFAULT '0' COMMENT '审批状态:draft - 草稿 waiting -审批中 finish- 审批完成',
`approval_opinion` varchar(500) DEFAULT NULL COMMENT '审批意见',
`approval_time` datetime DEFAULT NULL COMMENT '审批时间',
`approval_by` bigint(20) DEFAULT NULL COMMENT '审批人ID',