From 5d578edb01b5776e8d5bae61658acb692b76cfa4 Mon Sep 17 00:00:00 2001 From: yjz <3131811435@qq.com> Date: Fri, 1 Mar 2024 22:36:31 +0800 Subject: [PATCH] =?UTF-8?q?fix(asms):=20=E5=90=8C=E6=AD=A5=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/LawsAsmsOpenApiServiceImpl.java | 45 +++++++++++-------- .../impl/SynchronizationAsmsService.java | 42 ++++++++++------- 2 files changed, 52 insertions(+), 35 deletions(-) diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/impl/LawsAsmsOpenApiServiceImpl.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/impl/LawsAsmsOpenApiServiceImpl.java index e5a02554..45aa6473 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/impl/LawsAsmsOpenApiServiceImpl.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/impl/LawsAsmsOpenApiServiceImpl.java @@ -643,25 +643,33 @@ public class LawsAsmsOpenApiServiceImpl extends ServiceImpl entity = new HttpEntity<>(headers); - ResponseEntity responseEntity = restTemplate.exchange(url, HttpMethod.GET, entity, byte[].class); - if (HttpStatus.OK == responseEntity.getStatusCode()) { - byte[] imageBytes = responseEntity.getBody(); - MultipartFile file = new MockMultipartFile(fileName, fileName,"application/octet-stream" ,imageBytes); - // 上传图片 - OSSFile oSSFile = ossFileService.uploadLocalForSplit(file, "", "", ""); + log.info("-------" + articleContent); + // base64 + if (articleContent.contains("base64")){ StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append("

").append("").append("

"); + stringBuilder.append("

").append(articleContent).append("

"); articleContent = stringBuilder.toString(); + }else { + String urlSuffix = articleContent.substring(articleContent.indexOf("getImg"), + articleContent.indexOf("\" alt")); + String url = asmsPostUtil.getHost() + urlSuffix; + String fileName = url.substring(url.lastIndexOf("/") + 1); + // 获取图片 + HttpHeaders headers = new HttpHeaders(); + headers.set(HttpHeaders.USER_AGENT, "Mozilla/5.0"); + headers.set(HttpHeaders.ACCEPT, MediaType.ALL_VALUE); + HttpEntity entity = new HttpEntity<>(headers); + ResponseEntity responseEntity = restTemplate.exchange(url, HttpMethod.GET, entity, byte[].class); + if (HttpStatus.OK == responseEntity.getStatusCode()) { + byte[] imageBytes = responseEntity.getBody(); + MultipartFile file = new MockMultipartFile(fileName, fileName,"application/octet-stream" ,imageBytes); + // 上传图片 + OSSFile oSSFile = ossFileService.uploadLocalForSplit(file, "", "", ""); + StringBuilder stringBuilder = new StringBuilder(); + stringBuilder.append("

").append("").append("

"); + articleContent = stringBuilder.toString(); + } } } // 处理表格 @@ -976,7 +984,8 @@ public class LawsAsmsOpenApiServiceImpl extends ServiceImpl222"; +// String str = "111\"\"222"; + String str = "\"\"\n"; String substring = str.substring(str.indexOf("getImg"), str.indexOf("\" alt")); System.out.println(substring); System.out.println(substring.substring(substring.lastIndexOf("/") + 1)); diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/impl/SynchronizationAsmsService.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/impl/SynchronizationAsmsService.java index 11cf6707..0f772a45 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/impl/SynchronizationAsmsService.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/impl/SynchronizationAsmsService.java @@ -399,25 +399,33 @@ public class SynchronizationAsmsService { String articleContent = eMap.get("articleContent"); // 处理图片 if (articleContent.contains(" entity = new HttpEntity<>(headers); - ResponseEntity responseEntity = restTemplate.exchange(imageUrl, HttpMethod.GET, entity, byte[].class); - if (HttpStatus.OK == responseEntity.getStatusCode()) { - byte[] imageBytes = responseEntity.getBody(); - MultipartFile file = new MockMultipartFile(fileName, fileName,"application/octet-stream" ,imageBytes); - // 上传图片 - OSSFile oSSFile = ossFileService.uploadLocalForSplit(file, "", "", ""); + log.info("-------" + articleContent); + // base64 + if (articleContent.contains("base64")){ StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append("

").append("").append("

"); + stringBuilder.append("

").append(articleContent).append("

"); articleContent = stringBuilder.toString(); + }else { + String urlSuffix = articleContent.substring(articleContent.indexOf("getImg"), + articleContent.indexOf("\" alt")); + String imageUrl = asmsPostUtil.getHost() + urlSuffix; + String fileName = imageUrl.substring(imageUrl.lastIndexOf("/") + 1); + // 获取图片 + HttpHeaders headers = new HttpHeaders(); + headers.set(HttpHeaders.USER_AGENT, "Mozilla/5.0"); + headers.set(HttpHeaders.ACCEPT, MediaType.ALL_VALUE); + HttpEntity entity = new HttpEntity<>(headers); + ResponseEntity responseEntity = restTemplate.exchange(imageUrl, HttpMethod.GET, entity, byte[].class); + if (HttpStatus.OK == responseEntity.getStatusCode()) { + byte[] imageBytes = responseEntity.getBody(); + MultipartFile file = new MockMultipartFile(fileName, fileName, "application/octet-stream", imageBytes); + // 上传图片 + OSSFile oSSFile = ossFileService.uploadLocalForSplit(file, "", "", ""); + StringBuilder stringBuilder = new StringBuilder(); + stringBuilder.append("

").append("").append("

"); + articleContent = stringBuilder.toString(); + } } } // 处理表格