diff --git a/cf-module-report/cf-module-report-biz/src/main/java/com/cf/imes/module/report/service/template/ReportTemplateServiceImpl.java b/cf-module-report/cf-module-report-biz/src/main/java/com/cf/imes/module/report/service/template/ReportTemplateServiceImpl.java index 78d17d294..9fea9bd66 100644 --- a/cf-module-report/cf-module-report-biz/src/main/java/com/cf/imes/module/report/service/template/ReportTemplateServiceImpl.java +++ b/cf-module-report/cf-module-report-biz/src/main/java/com/cf/imes/module/report/service/template/ReportTemplateServiceImpl.java @@ -57,6 +57,7 @@ import com.cf.imes.module.report.dal.mysql.datasource.ReportDatasourceMapper; import com.cf.imes.module.report.dal.mysql.template.ReportTemplateMapper; import com.cf.imes.module.report.enums.template.ReportTemplateTypeEnum; import com.cf.imes.module.report.utils.TenantParamsUtils; +import jodd.util.StringUtil; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; @@ -135,7 +136,10 @@ public class ReportTemplateServiceImpl implements ReportTemplateService { // url解码xml String content = createReqVO.getContent(); if (StringUtils.isNotEmpty(content)) { - createReqVO.setContent(URLUtil.decode(content)); + String decode = URLUtil.decode(content); + createReqVO.setContent(decode); + // 解析xml + new ReportParser().parse(new ByteArrayInputStream(decode.getBytes()), createReqVO.getName()); } // 新增模板 ReportTemplateDO template = BeanUtils.toBean(createReqVO, ReportTemplateDO.class); @@ -184,6 +188,12 @@ public class ReportTemplateServiceImpl implements ReportTemplateService { copyTemplateDO.setUpdater(null); copyTemplateDO.setUpdateTime(null); copyTemplateDO.setCreateTime(null); + // 解析xml + String content = copyTemplateDO.getContent(); + if (StringUtil.isNotEmpty(content)) { + // 解析xml + new ReportParser().parse(new ByteArrayInputStream(content.getBytes()), createReqVO.getName()); + } // 生成id copyTemplateDO.setId((Long) snowFlakeGenerator.nextId(null)); // 新增模版 @@ -204,7 +214,10 @@ public class ReportTemplateServiceImpl implements ReportTemplateService { // url解码xml String content = updateReqVO.getContent(); if (StringUtils.isNotEmpty(content)) { - updateReqVO.setContent(URLUtil.decode(content)); + String decode = URLUtil.decode(content); + updateReqVO.setContent(decode); + // 解析xml + new ReportParser().parse(new ByteArrayInputStream(decode.getBytes()), updateReqVO.getName()); } // 更新模板 ReportTemplateDO updateObj = BeanUtils.toBean(updateReqVO, ReportTemplateDO.class); diff --git a/cf-module-report/cf-module-report-biz/src/main/resources/lib/ureport-core-2.3.0-SNAPSHOT.jar b/cf-module-report/cf-module-report-biz/src/main/resources/lib/ureport-core-2.3.0-SNAPSHOT.jar index d08a8ff50..1ec3c61e7 100644 Binary files a/cf-module-report/cf-module-report-biz/src/main/resources/lib/ureport-core-2.3.0-SNAPSHOT.jar and b/cf-module-report/cf-module-report-biz/src/main/resources/lib/ureport-core-2.3.0-SNAPSHOT.jar differ