diff --git a/backend/src/main/java/com/yfd/platform/data/controller/FishDraftDataController.java b/backend/src/main/java/com/yfd/platform/data/controller/FishDraftDataController.java index 9eef43d..21b7e4b 100644 --- a/backend/src/main/java/com/yfd/platform/data/controller/FishDraftDataController.java +++ b/backend/src/main/java/com/yfd/platform/data/controller/FishDraftDataController.java @@ -702,28 +702,13 @@ public class FishDraftDataController { return ResponseResult.successData(result); } - int totalCount = currentTask.getTotalCount() != null ? currentTask.getTotalCount() : 0; - int successCount = currentTask.getSuccessCount() != null ? currentTask.getSuccessCount() : 0; - int failCount = currentTask.getFailCount() != null ? currentTask.getFailCount() : 0; - int progressPercent = totalCount > 0 ? (int) ((successCount + failCount) * 100.0 / totalCount) : 0; - String statusText = getStatusText(currentTask.getStatus()); boolean canImport = isTaskComplete(currentTask.getStatus()); Map taskInfo = new HashMap<>(); taskInfo.put("id", currentTask.getId()); - taskInfo.put("importNo", currentTask.getImportNo()); - taskInfo.put("fileName", currentTask.getFileName()); - taskInfo.put("fileSize", currentTask.getFileSize()); taskInfo.put("status", currentTask.getStatus()); taskInfo.put("statusText", statusText); - taskInfo.put("totalCount", totalCount); - taskInfo.put("successCount", successCount); - taskInfo.put("failCount", failCount); - taskInfo.put("progressPercent", progressPercent); - taskInfo.put("errorMsg", currentTask.getErrorMsg() != null ? currentTask.getErrorMsg() : ""); - taskInfo.put("uploadTime", currentTask.getUploadTime()); - result.put("hasImportingTask", true); result.put("canImport", canImport); result.put("currentTask", taskInfo); diff --git a/backend/src/main/java/com/yfd/platform/data/mapper/ImportTaskMapper.java b/backend/src/main/java/com/yfd/platform/data/mapper/ImportTaskMapper.java index 8325796..0937aab 100644 --- a/backend/src/main/java/com/yfd/platform/data/mapper/ImportTaskMapper.java +++ b/backend/src/main/java/com/yfd/platform/data/mapper/ImportTaskMapper.java @@ -38,15 +38,16 @@ public interface ImportTaskMapper extends BaseMapper { @Select("SELECT * FROM IMPORT_TASK WHERE UPLOAD_USER_ID = #{uploadUserId} ORDER BY CREATED_AT DESC") List selectByUploadUserId(@Param("uploadUserId") String uploadUserId); - @Select("") - List selectByUserIdAndStatuses(@Param("uploadUserId") String uploadUserId, - @Param("statuses") List statuses); + @Select("SELECT * FROM (" + + "SELECT ID, IMPORT_NO, BIZ_TYPE, FILE_NAME, FILE_SIZE, FILE_PATH, TEMP_DIR, " + + "TOTAL_COUNT, SUCCESS_COUNT, FAIL_COUNT, STATUS, ERROR_MSG, " + + "UPLOAD_USER_ID, UPLOAD_TIME, EXPIRE_TIME, CREATED_AT, UPDATED_AT " + + "FROM IMPORT_TASK " + + "WHERE UPLOAD_USER_ID = #{uploadUserId} " + + "AND STATUS IN ('UPLOADED', 'PARSING', 'VALIDATED') " + + "ORDER BY CREATED_AT DESC" + + ") WHERE ROWNUM = 1") + List selectByUserIdAndStatuses(@Param("uploadUserId") String uploadUserId); /** * 查询过期的任务 diff --git a/backend/src/main/java/com/yfd/platform/data/service/impl/FishImportServiceImpl.java b/backend/src/main/java/com/yfd/platform/data/service/impl/FishImportServiceImpl.java index ee1c0bc..fb019b4 100644 --- a/backend/src/main/java/com/yfd/platform/data/service/impl/FishImportServiceImpl.java +++ b/backend/src/main/java/com/yfd/platform/data/service/impl/FishImportServiceImpl.java @@ -218,14 +218,14 @@ public class FishImportServiceImpl implements IFishImportService { } } - Set allStcdSet = new HashSet<>(); +// Set allStcdSet = new HashSet<>(); if (!allowedHbrvcdSet.isEmpty() || !directStcdSet.isEmpty()) { if (!allowedHbrvcdSet.isEmpty()) { List stationsFromHbrv = engInfoBHMapper.selectByHbrvcdList(new ArrayList<>(allowedHbrvcdSet)); for (SdEngInfoBH station : stationsFromHbrv) { if (station.getStcd() != null) { - allStcdSet.add(station.getStcd()); + directStcdSet.add(station.getStcd()); } } } @@ -234,7 +234,7 @@ public class FishImportServiceImpl implements IFishImportService { List stationsFromStcd = engInfoBHMapper.selectBatchIds(new ArrayList<>(directStcdSet)); for (SdEngInfoBH station : stationsFromStcd) { if (station.getStcd() != null) { - allStcdSet.add(station.getStcd()); + directStcdSet.add(station.getStcd()); } if (station.getHbrvcd() != null) { allowedHbrvcdSet.add(station.getHbrvcd()); @@ -243,7 +243,7 @@ public class FishImportServiceImpl implements IFishImportService { } } if (!directStcdSet.isEmpty()) { - List sdFpssBHS = fpssBHMapper.selectList(new LambdaQueryWrapper().in(SdFpssBH::getRstcd, allStcdSet).select(SdFpssBH::getStcd)); + List sdFpssBHS = fpssBHMapper.selectList(new LambdaQueryWrapper().in(SdFpssBH::getRstcd, directStcdSet).select(SdFpssBH::getStcd)); for (SdFpssBH sdFpssBH : sdFpssBHS) { if (sdFpssBH.getStcd() != null) { directBHSet.add(sdFpssBH.getStcd()); @@ -268,7 +268,7 @@ public class FishImportServiceImpl implements IFishImportService { importRow.getWarnings().add("rstcd"); data.setEnnm(cellValue.trim()); } else { - if (allStcdSet.contains(stcd)) { + if (directStcdSet.contains(stcd)) { data.setEnnm(cellValue.trim()); data.setRstcd(stcd); } else { diff --git a/backend/src/main/java/com/yfd/platform/data/service/impl/ImportTaskServiceImpl.java b/backend/src/main/java/com/yfd/platform/data/service/impl/ImportTaskServiceImpl.java index 4eb29ea..46028ef 100644 --- a/backend/src/main/java/com/yfd/platform/data/service/impl/ImportTaskServiceImpl.java +++ b/backend/src/main/java/com/yfd/platform/data/service/impl/ImportTaskServiceImpl.java @@ -12,12 +12,14 @@ import com.yfd.platform.data.mapper.ImportTaskMapper; import com.yfd.platform.data.service.AttachmentUploadService; import com.yfd.platform.data.service.IImportTaskService; import jakarta.annotation.Resource; +import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.StringUtils; import java.util.Date; import java.util.List; +import java.util.concurrent.CompletableFuture; /** *

@@ -166,8 +168,8 @@ public class ImportTaskServiceImpl extends ServiceImpl activeStatuses = List.of("UPLOADED", "PARSING", "VALIDATING"); - List tasks = importTaskMapper.selectByUserIdAndStatuses(uploadUserId, activeStatuses); +// List activeStatuses = List.of("UPLOADED", "PARSING", "VALIDATING"); + List tasks = importTaskMapper.selectByUserIdAndStatuses(uploadUserId); return tasks != null && !tasks.isEmpty(); } @@ -185,21 +187,6 @@ public class ImportTaskServiceImpl extends ServiceImpl fileIds = StrUtil.split(vdpth, ","); -// fileIds.forEach(fileId -> attachmentUploadService.deleteFile(fileId)); -// } -// String picpth = successRow.getData().getPicpth(); -// if (StringUtils.hasText(picpth)) { -// List fileIds = StrUtil.split(vdpth, ","); -// fileIds.forEach(fileId -> attachmentUploadService.deleteFile(fileId)); -// } -// } String tempDir = importResult.getTempDir(); // del 方法会递归删除目录及其所有内容 FileUtil.del(tempDir); @@ -216,8 +203,8 @@ public class ImportTaskServiceImpl extends ServiceImpl activeStatuses = List.of("UPLOADED", "PARSING", "VALIDATED"); - List tasks = importTaskMapper.selectByUserIdAndStatuses(uploadUserId, activeStatuses); +// List activeStatuses = List.of("UPLOADED", "PARSING", "VALIDATED"); + List tasks = importTaskMapper.selectByUserIdAndStatuses(uploadUserId); if (tasks == null || tasks.isEmpty()) { return null; } diff --git a/backend/src/main/resources/application-devtw.yml b/backend/src/main/resources/application-devtw.yml index 58f4f08..54a6258 100644 --- a/backend/src/main/resources/application-devtw.yml +++ b/backend/src/main/resources/application-devtw.yml @@ -10,12 +10,12 @@ spring: druid: master: driverClassName: oracle.jdbc.OracleDriver - url: "${DB_MASTER_URL:jdbc:oracle:thin:@172.16.31.190:1521/SDLYZ}" + url: "${DB_MASTER_URL:jdbc:oracle:thin:@172.16.21.134:1521/SDLYZ}" username: "${DB_MASTER_USERNAME:QGC_REFA}" password: "${DB_MASTER_PASSWORD:Y4M4K1oCkL8U}" slave: driverClassName: oracle.jdbc.OracleDriver - url: "${DB_SLAVE_URL:jdbc:oracle:thin:@172.16.31.190:1521/SDLYZ}" + url: "${DB_SLAVE_URL:jdbc:oracle:thin:@172.16.21.134:1521/SDLYZ}" username: "${DB_SLAVE_USERNAME:QGC_REFA}" password: "${DB_SLAVE_PASSWORD:Y4M4K1oCkL8U}"