From 03ee38a3f0173642a3f9e845dcffe1148383589a Mon Sep 17 00:00:00 2001 From: chenxudong Date: Mon, 2 Dec 2024 17:13:30 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=AF=BC=E5=85=A5?= =?UTF-8?q?=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/sqlmapper/CategoryMapper.xml | 2 +- .../src/main/resources/sqlmapper/EdDataInfoMapper.xml | 2 +- .../data/manage/service/facade/EDDataFacadeImpl.java | 5 ++--- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/infrastructure/repository/src/main/resources/sqlmapper/CategoryMapper.xml b/infrastructure/repository/src/main/resources/sqlmapper/CategoryMapper.xml index 33c9002..8ef2388 100644 --- a/infrastructure/repository/src/main/resources/sqlmapper/CategoryMapper.xml +++ b/infrastructure/repository/src/main/resources/sqlmapper/CategoryMapper.xml @@ -49,7 +49,7 @@ SELECT LAST_INSERT_ID() - insert into ed_data_info (id, + replace into ed_data_info (id, category_type_id, parent_id, category_id, category_name, category_status, creator, creator_name, gmt_create, diff --git a/infrastructure/repository/src/main/resources/sqlmapper/EdDataInfoMapper.xml b/infrastructure/repository/src/main/resources/sqlmapper/EdDataInfoMapper.xml index 619da42..9519cf3 100644 --- a/infrastructure/repository/src/main/resources/sqlmapper/EdDataInfoMapper.xml +++ b/infrastructure/repository/src/main/resources/sqlmapper/EdDataInfoMapper.xml @@ -38,7 +38,7 @@ SELECT LAST_INSERT_ID() - insert into ed_data_info (category_id, + replace into ed_data_info (category_id, data_id, data_no, data_name, data_type, file_type, version, content, implant_json, data_status, diff --git a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/facade/EDDataFacadeImpl.java b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/facade/EDDataFacadeImpl.java index dda5b8a..d8f2f1e 100644 --- a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/facade/EDDataFacadeImpl.java +++ b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/facade/EDDataFacadeImpl.java @@ -228,7 +228,7 @@ public class EDDataFacadeImpl implements EDDataFacade { Map result = new HashMap<>(); List dataIdList = Arrays.asList(dataIdArr.split(",")); - if(dataIdList.size() > 0) { + if(!dataIdList.isEmpty()) { String filePath = edDataService.exportData(dataIdList); Assert.isTrue(FileUtil.exist(filePath), "下载文件不存在。"); @@ -313,13 +313,12 @@ public class EDDataFacadeImpl implements EDDataFacade { return new ArrayList<>(); } - List uploadedFileChunkNums = FileUtil.listFileNames(destPath) + return FileUtil.listFileNames(destPath) .stream() .filter(e -> !e.endsWith(".comac")) .map(e -> e.replace(UPLOAD_FILE_CHUNK_SUFFIX, "")) .map(Integer::parseInt) .collect(Collectors.toList()); - return uploadedFileChunkNums; } // TODO 需要验证如果一个分片上传一半网络断开,则该分片的存储情况。 From 78b8207bb04b9128bdaf47281e7d0959de79e900 Mon Sep 17 00:00:00 2001 From: chenxudong Date: Wed, 4 Dec 2024 09:52:20 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=AF=BC=E5=87=BA?= =?UTF-8?q?=E6=96=87=E4=BB=B6=E5=90=8E=E7=BC=80=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/EDDataServiceImpl.java | 5 +++-- .../constants/ElectromagneticConstants.java | 2 ++ .../manage/service/facade/EDDataFacadeImpl.java | 3 ++- .../manage/service/mappers/UserMappersImpl.java | 17 ++++------------- 4 files changed, 11 insertions(+), 16 deletions(-) diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/indicator/service/impl/EDDataServiceImpl.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/indicator/service/impl/EDDataServiceImpl.java index d1e4cf1..593cbc7 100644 --- a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/indicator/service/impl/EDDataServiceImpl.java +++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/indicator/service/impl/EDDataServiceImpl.java @@ -25,6 +25,7 @@ import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.SerializationFeature; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; +import electromagnetic.data.framework.share.constants.ElectromagneticConstants; import electromagnetic.data.framework.share.exception.LoggerConstant; import electromagnetic.data.framework.share.id.IdWorker; import electromagnetic.data.framework.share.model.ElectromagneticResultUtil; @@ -274,7 +275,7 @@ public class EDDataServiceImpl implements EDDataService { parames.setParentId(edDataInfo.getDataId()); childFileCount += getChildFileCount(parames); } - else if(edDataInfo.getDataType().equals(dataTypeFile)) + else if(edDataInfo.getDataType().equals(dataTypeFile) && edDataInfo.getEffectFlag().equals(1)) { ++childFileCount; } @@ -561,7 +562,7 @@ public class EDDataServiceImpl implements EDDataService { String dateString = sdf.format(date); zipPathFileName = dataCachePath + "/exportData_" + dateString; - enCodeZipPathFileName = dataCachePath + "/exportData_" + dateString + ".comac"; + enCodeZipPathFileName = dataCachePath + "/exportData_" + dateString + ElectromagneticConstants.EXPORT_FILE_SUFFIX; ZipUtil.zip(exportDataCachePath, zipPathFileName); diff --git a/electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/constants/ElectromagneticConstants.java b/electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/constants/ElectromagneticConstants.java index 85ff251..61f7a87 100644 --- a/electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/constants/ElectromagneticConstants.java +++ b/electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/constants/ElectromagneticConstants.java @@ -38,4 +38,6 @@ public final class ElectromagneticConstants { public static final String TAG_SEGMENT="TagSegment"; public static final String TYPE_SEGMENT="TypeSegment"; + + public static final String EXPORT_FILE_SUFFIX = ".colib"; } \ No newline at end of file diff --git a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/facade/EDDataFacadeImpl.java b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/facade/EDDataFacadeImpl.java index d8f2f1e..59ab47f 100644 --- a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/facade/EDDataFacadeImpl.java +++ b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/facade/EDDataFacadeImpl.java @@ -17,6 +17,7 @@ import com.electromagnetic.industry.software.data.manage.request.indicator.FileC import com.electromagnetic.industry.software.data.manage.request.indicator.FileChunkResultDTO; import com.electromagnetic.industry.software.data.manage.response.indicator.EDDataPageResponse; import com.electromagnetic.industry.software.data.manage.service.mappers.EDDataMappers; +import electromagnetic.data.framework.share.constants.ElectromagneticConstants; import electromagnetic.data.framework.share.id.IdWorker; import electromagnetic.data.framework.share.model.ElectromagneticResult; import electromagnetic.data.framework.share.model.ElectromagneticResultUtil; @@ -315,7 +316,7 @@ public class EDDataFacadeImpl implements EDDataFacade { return FileUtil.listFileNames(destPath) .stream() - .filter(e -> !e.endsWith(".comac")) + .filter(e -> !e.endsWith(ElectromagneticConstants.EXPORT_FILE_SUFFIX)) .map(e -> e.replace(UPLOAD_FILE_CHUNK_SUFFIX, "")) .map(Integer::parseInt) .collect(Collectors.toList()); diff --git a/service/target/generated-sources/annotations/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappersImpl.java b/service/target/generated-sources/annotations/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappersImpl.java index 124c80f..d193831 100644 --- a/service/target/generated-sources/annotations/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappersImpl.java +++ b/service/target/generated-sources/annotations/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappersImpl.java @@ -1,7 +1,6 @@ package com.electromagnetic.industry.software.data.manage.service.mappers; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; -import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.UserLoginInfo; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params.PublishParam; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params.SearchKeyWords; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params.UserDeleteKeyWords; @@ -13,14 +12,15 @@ import com.electromagnetic.industry.software.data.manage.request.user.UserPublis import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserWorkNumRequest; import com.electromagnetic.industry.software.data.manage.response.user.SingleUserResponse; +import electromagnetic.data.framework.share.model.UserLoginInfo; import java.util.ArrayList; import java.util.List; import javax.annotation.Generated; @Generated( value = "org.mapstruct.ap.MappingProcessor", - date = "2024-11-21T15:49:09+0800", - comments = "version: 1.4.1.Final, compiler: javac, environment: Java 1.8.0_281 (Oracle Corporation)" + date = "2024-12-04T09:28:17+0800", + comments = "version: 1.4.1.Final, compiler: javac, environment: Java 1.8.0_432 (Temurin)" ) public class UserMappersImpl implements UserMappers { @@ -41,10 +41,6 @@ public class UserMappersImpl implements UserMappers { user.setJoinTime( userRequest.getJoinTime() ); user.setUserStatus( userRequest.getUserStatus() ); user.setInternshipEndDate( userRequest.getInternshipEndDate() ); - user.setCreator( userRequest.getCreator() ); - user.setCreatorName( userRequest.getCreatorName() ); - user.setModifier( userRequest.getModifier() ); - user.setModifierName( userRequest.getModifierName() ); return user; } @@ -58,6 +54,7 @@ public class UserMappersImpl implements UserMappers { UserLoginInfo userLoginInfo = new UserLoginInfo(); userLoginInfo.setWorkNumber( loginRequest.getWorkNumber() ); + userLoginInfo.setUserId( loginRequest.getUserId() ); userLoginInfo.setUserPwd( loginRequest.getUserPwd() ); return userLoginInfo; @@ -107,8 +104,6 @@ public class UserMappersImpl implements UserMappers { if ( list != null ) { publishParam.setUserIds( new ArrayList( list ) ); } - publishParam.setModifier( userPublishRequest.getModifier() ); - publishParam.setModifierName( userPublishRequest.getModifierName() ); return publishParam; } @@ -164,8 +159,6 @@ public class UserMappersImpl implements UserMappers { user.setJoinTime( userModiRequest.getJoinTime() ); user.setUserStatus( userModiRequest.getUserStatus() ); user.setInternshipEndDate( userModiRequest.getInternshipEndDate() ); - user.setModifier( userModiRequest.getModifier() ); - user.setModifierName( userModiRequest.getModifierName() ); return user; } @@ -194,8 +187,6 @@ public class UserMappersImpl implements UserMappers { UserDeleteKeyWords userDeleteKeyWords = new UserDeleteKeyWords(); userDeleteKeyWords.setUserId( userDeleteRequest.getUserId() ); - userDeleteKeyWords.setModifier( userDeleteRequest.getModifier() ); - userDeleteKeyWords.setModifierName( userDeleteRequest.getModifierName() ); return userDeleteKeyWords; } From c35f4cfef677cccd1e48146e67282fe318e0eeda Mon Sep 17 00:00:00 2001 From: chenxudong Date: Wed, 4 Dec 2024 14:45:30 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E6=94=B9=E5=90=8E=E7=BC=80=E7=9A=84=E9=97=AE=E9=A2=98=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/EDDataServiceImpl.java | 22 ++++++++-------- .../framework/share/util/EleCommonUtil.java | 25 +++++++++++++++++++ .../service/facade/EDDataFacadeImpl.java | 4 ++- 3 files changed, 39 insertions(+), 12 deletions(-) create mode 100644 electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/util/EleCommonUtil.java diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/indicator/service/impl/EDDataServiceImpl.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/indicator/service/impl/EDDataServiceImpl.java index 593cbc7..4bf0fb7 100644 --- a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/indicator/service/impl/EDDataServiceImpl.java +++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/indicator/service/impl/EDDataServiceImpl.java @@ -4,6 +4,7 @@ package com.electromagnetic.industry.software.data.manage.domain.boardservice.indicator.service.impl; import cn.hutool.core.io.FileUtil; +import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.ZipUtil; import cn.hutool.crypto.SecureUtil; import cn.hutool.crypto.symmetric.AES; @@ -29,6 +30,7 @@ import electromagnetic.data.framework.share.constants.ElectromagneticConstants; import electromagnetic.data.framework.share.exception.LoggerConstant; import electromagnetic.data.framework.share.id.IdWorker; import electromagnetic.data.framework.share.model.ElectromagneticResultUtil; +import electromagnetic.data.framework.share.util.EleCommonUtil; import electromagnetic.data.framework.share.util.EleZipUtil; import lombok.extern.slf4j.Slf4j; import org.slf4j.Logger; @@ -133,8 +135,9 @@ public class EDDataServiceImpl implements EDDataService { if(categoryParentList.size() > 0){ categoryParent = categoryParentList.get(0); filePathOfFolder = categoryParent.getCategoryId() + FOLDER_NAME_SEPARATOR + categoryParent.getCategoryName(); - if(edDataInfoParent != null){ - filePathOfFolder = filePathOfFolder + File.separator + edDataInfoParent.getDataName(); + if(edDataInfoParent != null) { + String fileType = StrUtil.isEmpty(edDataInfoParent.getFileType()) ? "" : "." + edDataInfoParent.getFileType(); + filePathOfFolder = filePathOfFolder + File.separator + edDataInfoParent.getDataName() + fileType; } } @@ -234,13 +237,14 @@ public class EDDataServiceImpl implements EDDataService { EDDataInfo edDataInfo = edDataInfoList.get(0); String filePathOfFolder = getFilePathOfFolder(edDataInfo.getCategoryId()); - String fileStorageFullPath = dataStoragePath + filePathOfFolder + File.separator + edDataInfo.getDataName(); + String fileType = StrUtil.isEmpty(edDataInfo.getFileType()) ? "" : "." + edDataInfo.getFileType(); + String fileStorageFullPath = dataStoragePath + filePathOfFolder + File.separator + edDataInfo.getDataName() + fileType; if (!FileUtil.exist(fileStorageFullPath)){ throw new Exception("文件不存在"); } - String fileNameNew = parames.getName(); + String fileNameNew = parames.getName() + fileType; if(fileNameNew != null && fileNameNew != "" && !fileNameNew.equals(edDataInfo.getDataName())) { FileUtil.rename(Paths.get(fileStorageFullPath) ,fileNameNew,true); } @@ -306,13 +310,9 @@ public class EDDataServiceImpl implements EDDataService { // 获取文件名 String fileFullName = fileInput.getOriginalFilename(); // 获取文件类型 - String fileType = ""; + String fileType = EleCommonUtil.getFileType(fileFullName); // 获取文件名称 - String fileName = ""; - if (fileFullName.lastIndexOf(".") != -1 && fileFullName.lastIndexOf(".") != 0) { - fileType = fileFullName.substring(fileFullName.lastIndexOf(".") + 1); - fileName = fileFullName.substring(fileFullName.lastIndexOf(".")); - } + String fileName = EleCommonUtil.getFileName(fileFullName); // 判断文件名称是否存在 EDDataParams folderParames = new EDDataParams(); @@ -343,7 +343,7 @@ public class EDDataServiceImpl implements EDDataService { edDataInfo.setModifier(parames.getUserId()); edDataInfo.setModifierName(parames.getUserName()); edDataInfo.setCategoryId(parames.getParentId()); - edDataInfo.setDataName(fileFullName); + edDataInfo.setDataName(fileName); edDataInfo.setNote(parames.getNote()); edDataInfo.setFileType(fileType); edDataInfo.setGmtBatchUpload(parames.getGmtBatchUpload()); diff --git a/electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/util/EleCommonUtil.java b/electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/util/EleCommonUtil.java new file mode 100644 index 0000000..f0aa751 --- /dev/null +++ b/electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/util/EleCommonUtil.java @@ -0,0 +1,25 @@ +package electromagnetic.data.framework.share.util; + +public final class EleCommonUtil { + + public static String getFileName(String fileFullName) { + if (fileFullName == null) { + return ""; + } + if (!fileFullName.contains(".")) { + return fileFullName; + } + + int index = fileFullName.lastIndexOf("."); + return fileFullName.substring(0, index); + } + + public static String getFileType(String fileFullName) { + if (fileFullName == null || !fileFullName.contains(".")) { + return ""; + } + int index = fileFullName.lastIndexOf("."); + return fileFullName.substring(index + 1); + } + +} diff --git a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/facade/EDDataFacadeImpl.java b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/facade/EDDataFacadeImpl.java index 59ab47f..3023141 100644 --- a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/facade/EDDataFacadeImpl.java +++ b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/facade/EDDataFacadeImpl.java @@ -4,6 +4,7 @@ import cn.hutool.core.codec.Base64; import cn.hutool.core.io.FileUtil; import cn.hutool.core.io.IoUtil; import cn.hutool.core.lang.Assert; +import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.ZipUtil; import cn.hutool.crypto.SecureUtil; import cn.hutool.crypto.symmetric.AES; @@ -194,7 +195,8 @@ public class EDDataFacadeImpl implements EDDataFacade { EDDataInfo edDataInfo = edDataService.getDataInfo(parames); Assert.isTrue(edDataInfo != null, "没有找到该下载文件"); String filePathOfFolder = edDataService.getFilePathOfFolder(edDataInfo.getCategoryId()); - String filePath = storageFilePath + "/" + filePathOfFolder + "/" + edDataInfo.getDataName(); + String fileType = StrUtil.isEmpty(edDataInfo.getFileType()) ? "" : "." + edDataInfo.getFileType(); + String filePath = storageFilePath + "/" + filePathOfFolder + "/" + edDataInfo.getDataName() + fileType; Assert.isTrue(FileUtil.exist(filePath), "下载文件不存在。"); FileSystemResource fileSystemResource = new FileSystemResource(filePath); From 01f6a63b2de368460d63cf00d9311cef7476c9ed Mon Sep 17 00:00:00 2001 From: chenxudong Date: Thu, 5 Dec 2024 15:09:00 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E5=B9=B2=E6=8E=89=E4=B8=80=E4=B8=AA?= =?UTF-8?q?=E6=97=B6=E5=8C=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bootstrap/src/main/resources/application.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bootstrap/src/main/resources/application.properties b/bootstrap/src/main/resources/application.properties index 48730a6..5fe0f1d 100644 --- a/bootstrap/src/main/resources/application.properties +++ b/bootstrap/src/main/resources/application.properties @@ -12,7 +12,7 @@ logging.config=classpath:${LOG_CONFIG:log4j2-spring.xml} spring.datasource.typd=com.alibaba.druid.pool.DruidDataSource -spring.datasource.url=jdbc:mysql://139.224.43.89:3306/em_data?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=GMT%2B8&allowMultiQueries=true&rewriteBatchedStatements=true +spring.datasource.url=jdbc:mysql://139.224.43.89:3306/em_data?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8&useSSL=true&allowMultiQueries=true&rewriteBatchedStatements=true spring.datasource.username=comac spring.datasource.password=2024*Comac spring.servlet.multipart.max-file-size=500MB