diff --git a/core/core-backend/src/main/java/io/dataease/template/manage/TemplateCenterManage.java b/core/core-backend/src/main/java/io/dataease/template/manage/TemplateCenterManage.java index 374e793bb1..fe5eb2797e 100644 --- a/core/core-backend/src/main/java/io/dataease/template/manage/TemplateCenterManage.java +++ b/core/core-backend/src/main/java/io/dataease/template/manage/TemplateCenterManage.java @@ -23,6 +23,8 @@ import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; import java.util.*; import java.util.function.Function; import java.util.stream.Collectors; @@ -52,6 +54,8 @@ public class TemplateCenterManage { */ public TemplateManageFileDTO getTemplateFromMarket(String templateUrl) { if (StringUtils.isNotEmpty(templateUrl)) { + String templateName = templateUrl.substring(templateUrl.lastIndexOf("/")+1,templateUrl.length()); + templateUrl = templateUrl.replace(templateName,URLEncoder.encode(templateName, StandardCharsets.UTF_8).replace("+", "%20")); String sufUrl = sysParameterManage.groupVal("template.").get("template.url"); String templateInfo = HttpClientUtil.get(sufUrl + templateUrl, null); return JsonUtil.parseObject(templateInfo, TemplateManageFileDTO.class); diff --git a/core/core-frontend/src/views/template-market/component/TemplateMarketV2Item.vue b/core/core-frontend/src/views/template-market/component/TemplateMarketV2Item.vue index ae7a31ba6b..1cebaee031 100644 --- a/core/core-frontend/src/views/template-market/component/TemplateMarketV2Item.vue +++ b/core/core-frontend/src/views/template-market/component/TemplateMarketV2Item.vue @@ -60,7 +60,9 @@ const classBackground = computed(() => { return { width: props.width + 'px', height: props.width * 0.58 + 'px', - background: `url(${imgUrlTrans(thumbnailUrl.value)}) no-repeat`, + background: `url(${imgUrlTrans(thumbnailUrl.value) + .replace(/\(/g, '%28') + .replace(/\)/g, '%29')}) no-repeat`, 'background-size': `100% 100%` } })