huangtf 1 年之前
父節點
當前提交
f1e11a20c8

+ 43 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/controller/ArchiveMeasurementController.java

@@ -33,7 +33,10 @@ import org.springblade.core.tool.api.R;
 import java.io.File;
 import java.io.IOException;
 import java.io.InputStream;
+import java.io.UnsupportedEncodingException;
 import java.net.URI;
+import java.net.URLDecoder;
+import java.nio.charset.StandardCharsets;
 import java.nio.file.Files;
 import java.nio.file.Path;
 import java.nio.file.StandardOpenOption;
@@ -60,6 +63,46 @@ public class ArchiveMeasurementController {
                     @RequestParam String fileTime,
                     @RequestParam String dutyUser,
                     @RequestParam("fileData") MultipartFile fileData) {
+
+        System.out.println("before decode:========================== " );
+        System.out.println("projectName: " + projectName);
+        System.out.println("contractName: " + contractName);
+        System.out.println("periodName: " + periodName);
+        System.out.println("fileName: " + fileName);
+        System.out.println("fileTime: " + fileTime);
+        System.out.println("dutyUser: " + dutyUser);
+
+        try {
+            if (StringUtils.isNotEmpty(projectName)) {
+                projectName = URLDecoder.decode(projectName, StandardCharsets.UTF_8.toString());
+            }
+            if (StringUtils.isNotEmpty(contractName)) {
+                contractName = URLDecoder.decode(contractName, StandardCharsets.UTF_8.toString());
+            }
+            if (StringUtils.isNotEmpty(periodName)) {
+                periodName = URLDecoder.decode(periodName, StandardCharsets.UTF_8.toString());
+            }
+            if (StringUtils.isNotEmpty(fileName)) {
+                fileName = URLDecoder.decode(fileName, StandardCharsets.UTF_8.toString());
+            }
+
+            if (StringUtils.isNotEmpty(dutyUser)) {
+                dutyUser = URLDecoder.decode(dutyUser, StandardCharsets.UTF_8.toString());
+            }
+
+        } catch (UnsupportedEncodingException e) {
+            e.printStackTrace();
+        }
+
+        System.out.println("after decode:========================== " );
+        System.out.println("projectName: " + projectName);
+        System.out.println("contractName: " + contractName);
+        System.out.println("periodName: " + periodName);
+        System.out.println("fileName: " + fileName);
+        System.out.println("fileTime: " + fileTime);
+        System.out.println("dutyUser: " + dutyUser);
+
+
         // 处理文件上传逻辑
         // 可根据需要对 contractId、periodName、fileName 和 fileData 进行相应的操作
         ArchiveTreeContract periodNode = archiveTreeContractClient.getMeasurementPeriodNode(projectName,contractName,periodName);

+ 1 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/ArchiveAutoRuleSyncImpl.java

@@ -243,6 +243,7 @@ public class ArchiveAutoRuleSyncImpl {
         }
 
         //构建 合同段ID_项目级groupID,客户级groupID> 集合   用于映射archiveAutoGroupId同步
+        // 遍历客户级普通节点,并且有fromId的分类并卷节点,   <合同段ID_项目级groupID, 客户级groupID> 或者 <项目级groupID, 客户级groupID>集合
         Map<String, Long> groupMap = new HashMap<>();
         for (ArchiveTreeContractVO2 contractVO2 : vo2Map.values()) {
             Integer archiveAutoType = contractVO2.getArchiveAutoType();