fix: 修复硬编码lsfxProjectId问题
- 注入CcdiProjectMapper - 查询项目信息获取真实的lsfxProjectId - 验证项目存在,不存在则抛出IllegalArgumentException - 验证项目已关联流水分析平台,未关联则抛出IllegalStateException - 添加日志记录项目信息验证通过
This commit is contained in:
@@ -2,10 +2,12 @@ package com.ruoyi.ccdi.project.service.impl;
|
|||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
|
import com.ruoyi.ccdi.project.domain.CcdiProject;
|
||||||
import com.ruoyi.ccdi.project.domain.dto.CcdiFileUploadQueryDTO;
|
import com.ruoyi.ccdi.project.domain.dto.CcdiFileUploadQueryDTO;
|
||||||
import com.ruoyi.ccdi.project.domain.entity.CcdiFileUploadRecord;
|
import com.ruoyi.ccdi.project.domain.entity.CcdiFileUploadRecord;
|
||||||
import com.ruoyi.ccdi.project.domain.vo.CcdiFileUploadStatisticsVO;
|
import com.ruoyi.ccdi.project.domain.vo.CcdiFileUploadStatisticsVO;
|
||||||
import com.ruoyi.ccdi.project.mapper.CcdiFileUploadRecordMapper;
|
import com.ruoyi.ccdi.project.mapper.CcdiFileUploadRecordMapper;
|
||||||
|
import com.ruoyi.ccdi.project.mapper.CcdiProjectMapper;
|
||||||
import com.ruoyi.ccdi.project.service.ICcdiFileUploadService;
|
import com.ruoyi.ccdi.project.service.ICcdiFileUploadService;
|
||||||
import jakarta.annotation.Resource;
|
import jakarta.annotation.Resource;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
@@ -52,6 +54,9 @@ public class CcdiFileUploadServiceImpl implements ICcdiFileUploadService {
|
|||||||
@Resource
|
@Resource
|
||||||
private CcdiFileUploadRecordMapper recordMapper;
|
private CcdiFileUploadRecordMapper recordMapper;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private CcdiProjectMapper projectMapper;
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
@Qualifier("fileUploadExecutor")
|
@Qualifier("fileUploadExecutor")
|
||||||
private Executor fileUploadExecutor;
|
private Executor fileUploadExecutor;
|
||||||
@@ -131,10 +136,18 @@ public class CcdiFileUploadServiceImpl implements ICcdiFileUploadService {
|
|||||||
// 1. 生成批次ID
|
// 1. 生成批次ID
|
||||||
String batchId = UUID.randomUUID().toString().replace("-", "");
|
String batchId = UUID.randomUUID().toString().replace("-", "");
|
||||||
|
|
||||||
// 2. 获取项目的 lsfxProjectId
|
// 2. 查询项目信息并获取 lsfxProjectId
|
||||||
// TODO: 需要注入 CcdiProjectMapper 并查询项目信息
|
CcdiProject project = projectMapper.selectById(projectId);
|
||||||
// Integer lsfxProjectId = project.getLsfxProjectId();
|
if (project == null) {
|
||||||
Integer lsfxProjectId = 1; // 临时硬编码,稍后修复
|
throw new IllegalArgumentException("项目不存在: projectId=" + projectId);
|
||||||
|
}
|
||||||
|
|
||||||
|
Integer lsfxProjectId = project.getLsfxProjectId();
|
||||||
|
if (lsfxProjectId == null) {
|
||||||
|
throw new IllegalStateException("项目未关联流水分析平台: projectId=" + projectId);
|
||||||
|
}
|
||||||
|
|
||||||
|
log.info("【文件上传】项目信息验证通过: projectId={}, lsfxProjectId={}", projectId, lsfxProjectId);
|
||||||
|
|
||||||
// Critical Fix #2: 保存MultipartFile到临时存储,避免异步处理时文件已被清理
|
// Critical Fix #2: 保存MultipartFile到临时存储,避免异步处理时文件已被清理
|
||||||
List<String> tempFilePaths = new ArrayList<>();
|
List<String> tempFilePaths = new ArrayList<>();
|
||||||
|
|||||||
Reference in New Issue
Block a user