From b6dd47b05107fc36d8ff4f7f29a4446521f95503 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期四, 02 一月 2025 18:44:28 +0800
Subject: [PATCH] 代码提交

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonorpaymentController.java |   69 ++++++++++++++++++++++++++++++----
 1 files changed, 60 insertions(+), 9 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..16e01e9 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
@@ -31,11 +35,17 @@
     @Autowired
     private IServiceDonorpaymentService serviceDonorpaymentService;
 
+    private static Configuration configuration = null;
+
+    public ServiceDonorpaymentController() {
+        configuration = new Configuration();
+        configuration.setDefaultEncoding("utf-8");
+    }
+
     /**
      * 鏌ヨ璐圭敤鏀舵鍗曞垪琛�
      */
     @ApiOperation("鏌ヨ璐圭敤鏀舵鍗曞垪琛�")
-    @PreAuthorize("@ss.hasPermi('system:donorpayment:list')")
     @GetMapping("/list")
     public TableDataInfo list(ServiceDonorpayment serviceDonorpayment) {
         startPage();
@@ -47,7 +57,6 @@
      * 瀵煎嚭璐圭敤鏀舵鍗曞垪琛�
      */
     @ApiOperation("瀵煎嚭璐圭敤鏀舵鍗曞垪琛�")
-    @PreAuthorize("@ss.hasPermi('system:donorpayment:export')")
     @Log(title = "璐圭敤鏀舵鍗�", businessType = BusinessType.EXPORT)
     @GetMapping("/export")
     public AjaxResult export(ServiceDonorpayment serviceDonorpayment) {
@@ -60,7 +69,6 @@
      * 鑾峰彇璐圭敤鏀舵鍗曡缁嗕俊鎭�
      */
     @ApiOperation("鑾峰彇璐圭敤鏀舵鍗曡缁嗕俊鎭�")
-    @PreAuthorize("@ss.hasPermi('system:donorpayment:query')")
     @GetMapping(value = "/getInfo/{id}")
     public AjaxResult getInfo(@PathVariable("id") Long id) {
         return AjaxResult.success(serviceDonorpaymentService.getById(id));
@@ -70,19 +78,18 @@
      * 鏂板璐圭敤鏀舵鍗�
      */
     @ApiOperation("鏂板璐圭敤鏀舵鍗�")
-    @PreAuthorize("@ss.hasPermi('system:donorpayment:add')")
     @Log(title = "璐圭敤鏀舵鍗�", businessType = BusinessType.INSERT)
     @PostMapping("/add")
     @RepeatSubmit
     public AjaxResult add(@RequestBody ServiceDonorpayment serviceDonorpayment) {
-        return toAjax(serviceDonorpaymentService.save(serviceDonorpayment));
+        boolean save = serviceDonorpaymentService.save(serviceDonorpayment);
+        return success(serviceDonorpayment.getId().toString());
     }
 
     /**
      * 淇敼璐圭敤鏀舵鍗�
      */
     @ApiOperation("淇敼璐圭敤鏀舵鍗�")
-    @PreAuthorize("@ss.hasPermi('system:donorpayment:edit')")
     @Log(title = "璐圭敤鏀舵鍗�", businessType = BusinessType.UPDATE)
     @PostMapping("/edit")
     @RepeatSubmit
@@ -94,10 +101,54 @@
      * 鍒犻櫎璐圭敤鏀舵鍗�
      */
     @ApiOperation("鍒犻櫎璐圭敤鏀舵鍗�")
-    @PreAuthorize("@ss.hasPermi('system:donorpayment:remove')")
+    // @PreAuthorize("@ss.hasPermi('system:donorpayment:remove')")
     @Log(title = "璐圭敤鏀舵鍗�", businessType = BusinessType.DELETE)
     @GetMapping("/remove/{ids}")
     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");
+            t = configuration.getTemplate("娴欐睙鐪佹帴鏀跺櫒瀹樼粨绠楄〃.ftl");
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+        String newTime = String.valueOf(Calendar.getInstance().getTimeInMillis());
+        String name = "娴欐睙鐪佹帴鏀跺櫒瀹樼粨绠楄〃_"+ 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