From 4b9e197e0308ff6b42c3c941d46fdf366a566c47 Mon Sep 17 00:00:00 2001
From: zhoushihao <zsh19950802@163.com>
Date: 星期日, 29 十二月 2024 22:31:43 +0800
Subject: [PATCH] 模板文件样例功能以实现:1、按指定长度自动填充空格 2、按照列表循环生成文件

---
 hangzhoumesParent/moduleService/howllowGlassModule/src/main/java/com/mes/hollow/controller/HollowBigStorageCageController.java |   57 +++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 53 insertions(+), 4 deletions(-)

diff --git a/hangzhoumesParent/moduleService/howllowGlassModule/src/main/java/com/mes/hollow/controller/HollowBigStorageCageController.java b/hangzhoumesParent/moduleService/howllowGlassModule/src/main/java/com/mes/hollow/controller/HollowBigStorageCageController.java
index 2ef9415..b7e63b4 100644
--- a/hangzhoumesParent/moduleService/howllowGlassModule/src/main/java/com/mes/hollow/controller/HollowBigStorageCageController.java
+++ b/hangzhoumesParent/moduleService/howllowGlassModule/src/main/java/com/mes/hollow/controller/HollowBigStorageCageController.java
@@ -2,17 +2,28 @@
 
 
 import com.mes.hollow.entity.dto.HollowBigStorageAndDetailsDTO;
+import com.mes.hollow.entity.request.HollowTaskRequest;
 import com.mes.hollow.entity.vo.HollowBigStorageDetailsQueryVO;
 import com.mes.hollow.service.HollowBigStorageCageService;
+import com.mes.utils.Blank;
 import com.mes.utils.Result;
+import freemarker.template.Configuration;
+import freemarker.template.Template;
+import freemarker.template.TemplateException;
+import freemarker.template.Version;
+import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.core.io.FileSystemResource;
+import org.springframework.http.ResponseEntity;
+import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
+import java.io.IOException;
+import java.io.StringWriter;
+import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
 /**
  * (HollowBigStorageCage)琛ㄦ帶鍒跺眰
@@ -20,6 +31,7 @@
  * @author makejava
  * @since 2024-11-21 09:22:39
  */
+@Api(tags = "涓┖鐞嗙墖绗艰鎯�")
 @RestController
 @RequestMapping("hollowBigStorageCage")
 public class HollowBigStorageCageController {
@@ -31,5 +43,42 @@
     public Result<List<HollowBigStorageAndDetailsDTO>> queryHollowBigStorageCageDetail(@RequestBody HollowBigStorageDetailsQueryVO query) {
         return Result.build(200, "鏌ヨ鎴愬姛", hollowBigStorageCageService.queryHollowBigStorageCageDetail(query));
     }
+
+    @GetMapping("/generate")
+    public ResponseEntity<FileSystemResource> generate() throws IOException, TemplateException {
+// 鍒涘缓鍜岄厤缃瓼reemarker閰嶇疆瀹炰緥
+        Configuration cfg = new Configuration(new Version("2.3.29"));
+        cfg.setClassForTemplateLoading(HollowBigStorageCageController.class, "/templates/");
+        // 鍒涘缓Calculator瀹炰緥
+        Blank blank = new Blank();
+
+        // 鍒涘缓鏁版嵁妯″瀷
+        Map<String, Object> root = new HashMap<>();
+        root.put("blank", blank);
+        HollowTaskRequest request = new HollowTaskRequest();
+        request.setCell(1);
+        request.setFlowCardId("1111");
+        List<HollowTaskRequest> list = new ArrayList<>();
+        list.add(request);
+        list.add(request);
+        list.add(request);
+        root.put("request", request);
+        root.put("list1", list);
+
+        // 鑾峰彇妯℃澘
+        Template temp = cfg.getTemplate("hollowGlass.ftl");
+
+        // 鍚堝苟鏁版嵁妯″瀷鍜屾ā鏉�
+        StringWriter out = new StringWriter();
+        try {
+            temp.process(root, out);
+        } catch (TemplateException | IOException e) {
+            e.printStackTrace();
+        }
+
+        // 杈撳嚭缁撴灉
+        System.out.println(out.toString());
+        return null;
+    }
 }
 

--
Gitblit v1.8.0