From 8a43111118b7634cd3f658d3af03836e5c832132 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Wed, 10 Aug 2022 11:30:31 +0800
Subject: [PATCH] fix
---
src/main/java/com/xcong/farmer/cms/core/template/TemplateConfiguration.java | 67 +++++++++++++++------------------
1 files changed, 30 insertions(+), 37 deletions(-)
diff --git a/src/main/java/com/xcong/farmer/cms/core/template/TemplateConfiguration.java b/src/main/java/com/xcong/farmer/cms/core/template/TemplateConfiguration.java
index b951adb..05e363f 100644
--- a/src/main/java/com/xcong/farmer/cms/core/template/TemplateConfiguration.java
+++ b/src/main/java/com/xcong/farmer/cms/core/template/TemplateConfiguration.java
@@ -1,14 +1,15 @@
package com.xcong.farmer.cms.core.template;
-import cn.hutool.core.collection.CollUtil;
+import com.xcong.farmer.cms.common.exception.GlobalException;
+import com.xcong.farmer.cms.common.utils.FileUtils;
import com.xcong.farmer.cms.core.node.PartNode;
-import com.xcong.farmer.cms.core.tag.TagsEnum;
+import com.xcong.farmer.cms.core.node.Template;
+import lombok.extern.slf4j.Slf4j;
import org.jsoup.nodes.Document;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
-import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -16,12 +17,13 @@
* @author wzy
* @date 2022-07-01
**/
+@Slf4j
public class TemplateConfiguration extends Configuration{
private TemplateLoader templateLoader;
- public TemplateConfiguration(String templatePath, String staticPath, String outputPath) {
- super(templatePath, staticPath, outputPath);
+ public TemplateConfiguration(String templatePath, String staticPath, String outputPath, String baseUrl, String staticUrl) {
+ super(templatePath, staticPath, outputPath, baseUrl, staticUrl);
}
public void templateLoader(TemplateLoader templateLoader) {
@@ -32,14 +34,34 @@
if (this.templateLoader == null) {
throw new RuntimeException("TemplateLoader do not able to be null");
}
+ map.put("apiUrl", API_URL);
+ String companyCode = (String) map.get("companyCode");
+
+ log.info("解析开始执行--#类型:{}#--#模板名称:{}#--#ID:{}#", map.get("templateType"), templateName, map.get("id"));
this.templateLoader.data(map);
- output(template(templateName));
+ Template template = template(FileUtils.path(templatePath, companyCode), templateName);
+ template.output(outputPath);
+
+ // 判断是否有分页,有则执行。从第二页开始
+ int i = 2;
+ while(Template.HAS_PAGING) {
+ map.put("page", i);
+ this.templateLoader.data(map);
+ Template pageTemplate = template(FileUtils.path(templatePath, companyCode), templateName);
+ pageTemplate.output(outputPath);
+ i++;
+ }
}
+ public Template template(String templatePath, String templateName) {
+ File file = new File(path(templatePath) + templateName);
+ if (!file.exists()) {
+ log.info("模板文件不存在 : {}", templateName);
+ throw new GlobalException("模板文件不存在:" + templateName);
+ }
- public Template template(String templateName) {
- return template(new File(path(this.templatePath) + templateName));
+ return template(file);
}
public Template template(File file) {
@@ -48,35 +70,6 @@
}
return this.templateLoader.template(file);
- }
-
-// public void columnProcess(Map<String, Object> data, String templateName) {
-// process;
-// }
-//
-//
-// public void articleProcess(Map<String, Object> data, String templateName) {
-// process(data, templateName);
-// }
-
- public void output(Template template) {
- Document document = template.getDocument();
- List<PartNode> partNodes = template.getPartNodes();
- StringBuilder sb = new StringBuilder();
- for (PartNode partNode : partNodes) {
- sb.append(partNode.getHtml());
- }
- document.body().empty().html(sb.toString());
- String outPath = path(this.outputPath);
-
- String html = document.html();
- try {
- FileOutputStream outputStream = new FileOutputStream(outPath + template.getName());
- outputStream.write(html.getBytes());
- outputStream.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
}
private String path(String path) {
--
Gitblit v1.9.1