From c2600591e819743757f8668d0c684da1e24cb7d4 Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期五, 08 三月 2024 18:21:22 +0800 Subject: [PATCH] 代码提交 --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonorpaymentController.java | 61 +++++++++++++++++++++++++++++- 1 files changed, 58 insertions(+), 3 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonorpaymentController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonorpaymentController.java index ae4dfc7..a0be903 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonorpaymentController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonorpaymentController.java @@ -2,6 +2,7 @@ import com.ruoyi.common.annotation.Log; import com.ruoyi.common.annotation.RepeatSubmit; +import com.ruoyi.common.config.RuoYiConfig; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.page.TableDataInfo; @@ -9,14 +10,17 @@ import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.project.domain.ServiceDonorpayment; import com.ruoyi.project.service.IServiceDonorpaymentService; +import freemarker.template.Configuration; +import freemarker.template.Template; +import freemarker.template.TemplateException; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; -import java.util.Arrays; -import java.util.List; +import java.io.*; +import java.util.*; /** * 璐圭敤鏀舵鍗旵ontroller @@ -30,6 +34,13 @@ public class ServiceDonorpaymentController extends BaseController { @Autowired private IServiceDonorpaymentService serviceDonorpaymentService; + + private static Configuration configuration = null; + + public ServiceDonorpaymentController() { + configuration = new Configuration(); + configuration.setDefaultEncoding("utf-8"); + } /** * 鏌ヨ璐圭敤鏀舵鍗曞垪琛� @@ -75,7 +86,8 @@ @PostMapping("/add") @RepeatSubmit public AjaxResult add(@RequestBody ServiceDonorpayment serviceDonorpayment) { - return toAjax(serviceDonorpaymentService.save(serviceDonorpayment)); + boolean save = serviceDonorpaymentService.save(serviceDonorpayment); + return success(serviceDonorpayment.getId().toString()); } /** @@ -100,4 +112,47 @@ public AjaxResult remove(@PathVariable Long[] ids) { return toAjax(serviceDonorpaymentService.removeByIds(Arrays.asList(ids))); } + + /** + * 涓嬭浇娴欐睙鐪丱PO鏀舵缁撶畻鍗曠粺璁¤〃 + */ + @ApiOperation("涓嬭浇娴欐睙鐪丱PO鏀舵缁撶畻鍗�") + @GetMapping(value = "/downloadInfo/{id}") + public Map downloadInfo(@PathVariable("id") Long id) throws IOException { + Map dataMap = new HashMap(); + serviceDonorpaymentService.getDataById(dataMap, id); + String filePath = getClass().getResource("/template/").getPath(); + System.out.println(filePath); + //璁剧疆妯℃湰瑁呯疆鏂规硶鍜岃矾寰�,FreeMarker鏀寔澶氱妯℃澘瑁呰浇鏂规硶銆傚彲浠ラ噸servlet锛宑lasspath锛屾暟鎹簱鏁欑▼瑁呰浇锛� + configuration.setDirectoryForTemplateLoading(new File(filePath)); + Template t = null; + try { + t = configuration.getTemplate("娴欐睙鐪丱PO鏀舵缁撶畻鍗�.ftl"); + } catch (IOException e) { + e.printStackTrace(); + } + String newTime = String.valueOf(Calendar.getInstance().getTimeInMillis()); + String name = "娴欐睙鐪丱PO鏀舵缁撶畻鍗昣"+ newTime; + //杈撳嚭鏂囨。璺緞鍙婂悕绉� + File outFile = new File(RuoYiConfig.getProfile() + "/download/wordtemplate/" + name + ".doc"); + Writer out = null; + + try { + out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outFile), "utf-8")); + + } catch (FileNotFoundException e1) { + e1.printStackTrace(); + } + try { + + t.process(dataMap, out); + } catch (TemplateException e) { + e.printStackTrace(); + } + Map<String, Object> map = new HashMap<>(); + map.put("downloadUrl", "/profile/download/wordtemplate/" + name + ".doc"); + map.put("downloadName", name + ".doc"); + return map; + } + } -- Gitblit v1.9.3