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