Selaa lähdekoodia

project-jmga-2.2.0-2.0.1

dengsixing 1 kuukausi sitten
vanhempi
commit
6e2cfee4f4

+ 15 - 7
src/main/java/com/fdkankan/contro/service/impl/JmgaServiceImpl.java

@@ -4,6 +4,7 @@ import cn.hutool.core.codec.Base64;
 import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.io.FileUtil;
 import cn.hutool.core.lang.UUID;
+import cn.hutool.core.util.ZipUtil;
 import cn.hutool.http.HttpUtil;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
@@ -25,6 +26,7 @@ import com.fdkankan.model.constants.ConstantFilePath;
 import com.fdkankan.rabbitmq.util.RabbitMqProducer;
 import com.fdkankan.web.util.RSAEncrypt;
 import lombok.extern.slf4j.Slf4j;
+import net.lingala.zip4j.core.ZipFile;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -205,14 +207,20 @@ public class JmgaServiceImpl implements IJmgaService {
         String uuid = UUID.randomUUID().toString();
         String zipName = uuid + ".zip";
         String zipDir = "/oss/4dkankan/bd_server/";
-        String zipKey = param.getFilePath().replace("/oss/", "");
-        fYunFileService.downloadFileByCommand(zipDir + zipName, zipKey);
-        fYunFileService.deleteFile(zipKey);
+        fYunFileService.downloadFileByCommand(zipDir + zipName, param.getFilePath());
+//        fYunFileService.deleteFile(param.getFilePath());
 
         //解压缩
-        String unzipCmd = "unzip -P " + ZipConstant.zipPassword + " " + zipDir +  zipName + " -d " + zipDir + uuid;
-        CmdUtils.callLineSh(unzipCmd);
-        FileUtil.del(zipDir +  zipName);
+//        String unzipCmd = "unzip -P " + ZipConstant.zipPassword + " " + zipDir +  zipName + " -d " + zipDir + uuid;
+//        CmdUtils.callLineSh(unzipCmd);
+        ZipFile zipFile = new ZipFile(new File(zipDir +  zipName));
+        if (zipFile.isEncrypted()) {
+            zipFile.setPassword(ZipConstant.zipPassword);
+            zipFile.extractAll(zipDir + uuid);
+        } else {
+            ZipUtil.unzip(zipDir +  zipName, zipDir + uuid);
+        }
+//        FileUtil.del(zipDir +  zipName);
 
         //去读data.fdage
         File dataFdageFile = FileUtil.loopFiles(zipDir + uuid).stream().filter(v -> v.getName().equals("data.fdage")).findFirst().get();
@@ -229,7 +237,7 @@ public class JmgaServiceImpl implements IJmgaService {
         FileUtil.mkdir(homePath);
         String cpCmd = "cp -p -r " + zipDir + uuid + "/*/* " + homePath;
         CmdUtils.callLineSh(cpCmd);
-        FileUtil.del(zipDir + uuid);
+//        FileUtil.del(zipDir + uuid);
 
         String params = snCode + "#" + fileId + "#" + uniCode;
         String encode = Base64.encode(RSAEncrypt.encrypt(RSAEncrypt.loadPublicKeyByStr(RSAEncrypt.loadPublicKeyByFile()), params.getBytes(StandardCharsets.UTF_8)));

+ 5 - 5
src/main/resources/logback-nacos.xml

@@ -9,11 +9,11 @@
 	<springProperty name="LOG_PATH" source="log.path" default="/www/VR/4dkankan/modeling-control/logs"/>
 
 	<!-- 定义日志目录 -->
-	<property name="SQL_LOG_PATH" value="${LOG_PATH}/logs/sql"/>
-	<property name="DEBUG_LOG_PATH" value="${LOG_PATH}/logs/debug"/>
-	<property name="INFO_LOG_PATH" value="${LOG_PATH}/logs/info"/>
-	<property name="WARN_LOG_PATH" value="${LOG_PATH}/logs/warn"/>
-	<property name="ERROR_LOG_PATH" value="${LOG_PATH}/logs/error"/>
+	<property name="SQL_LOG_PATH" value="${LOG_PATH}/sql"/>
+	<property name="DEBUG_LOG_PATH" value="${LOG_PATH}/debug"/>
+	<property name="INFO_LOG_PATH" value="${LOG_PATH}/info"/>
+	<property name="WARN_LOG_PATH" value="${LOG_PATH}/warn"/>
+	<property name="ERROR_LOG_PATH" value="${LOG_PATH}/error"/>
 	<!-- 定义日志保留天数 -->
 	<property name="MAX_HISTORY" value="180"/>
 	<!-- 定义日志文件总大小 -->