refactor: 统一采购交易导入接口返回值

- 添加ImportResultVO导入
- 添加数据验证(至少需要一条数据)
- 修改返回结构为ImportResultVO对象
- 与员工信息导入接口保持一致

返回值包含:
- taskId: 任务ID
- status: PROCESSING状态
- message: 提示消息

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
wkc
2026-02-08 14:11:43 +08:00
parent 5f86d378ef
commit 5b4c1247dd

View File

@@ -6,6 +6,7 @@ import com.ruoyi.ccdi.domain.dto.CcdiPurchaseTransactionEditDTO;
import com.ruoyi.ccdi.domain.dto.CcdiPurchaseTransactionQueryDTO;
import com.ruoyi.ccdi.domain.excel.CcdiPurchaseTransactionExcel;
import com.ruoyi.ccdi.domain.vo.CcdiPurchaseTransactionVO;
import com.ruoyi.ccdi.domain.vo.ImportResultVO;
import com.ruoyi.ccdi.domain.vo.PurchaseTransactionImportFailureVO;
import com.ruoyi.ccdi.domain.vo.ImportStatusVO;
import com.ruoyi.ccdi.service.ICcdiPurchaseTransactionImportService;
@@ -140,8 +141,21 @@ public class CcdiPurchaseTransactionController extends BaseController {
public AjaxResult importData(@Parameter(description = "导入文件") MultipartFile file,
@Parameter(description = "是否更新支持") boolean updateSupport) throws Exception {
List<CcdiPurchaseTransactionExcel> list = EasyExcelUtil.importExcel(file.getInputStream(), CcdiPurchaseTransactionExcel.class);
if (list == null || list.isEmpty()) {
return error("至少需要一条数据");
}
// 提交异步任务
String taskId = transactionService.importTransaction(list, updateSupport);
return success("导入任务已提交任务ID" + taskId);
// 立即返回,不等待后台任务完成
ImportResultVO result = new ImportResultVO();
result.setTaskId(taskId);
result.setStatus("PROCESSING");
result.setMessage("导入任务已提交,正在后台处理");
return AjaxResult.success("导入任务已提交,正在后台处理", result);
}
/**