Selaa lähdekoodia

Merge remote-tracking branch 'origin/master'

pruple_boy 9 kuukautta sitten
vanhempi
commit
bcf56a7d53

+ 15 - 4
mjava-aiwei/src/main/java/com/malk/aiwei/controller/TBxYDController.java

@@ -6,6 +6,7 @@ package com.malk.aiwei.controller;
 
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
+import com.malk.aiwei.server.YDSearch;
 import com.malk.aiwei.service.AWClint;
 import com.malk.delegate.McDelegate;
 import com.malk.server.aliwork.YDConf;
@@ -17,6 +18,7 @@ import com.malk.server.teambition.TBConf;
 import com.malk.service.aliwork.YDClient;
 import com.malk.service.aliwork.YDService;
 import com.malk.service.teambition.TBClient;
+import com.malk.utils.UtilExcel;
 import com.malk.utils.UtilMap;
 import com.malk.utils.UtilServlet;
 import lombok.extern.slf4j.Slf4j;
@@ -24,10 +26,8 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletRequest;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
+import javax.servlet.http.HttpServletResponse;
+import java.util.*;
 
 @Slf4j
 @RestController
@@ -314,6 +314,17 @@ public class TBxYDController {
         return UtilMap.map("options", result);
     }
 
+    /**
+     * 搭配出
+     */
+    @PostMapping("export")
+    void export(@RequestBody Map data, HttpServletResponse response) {
+        List<Map> dataList = UtilMap.getList(data,"dataList");
+        String fileName = UtilMap.getString(data,"fileName");
+        String tempFileName = UtilMap.getString(data,"tempFileName");
+        UtilExcel.exportMapAndListByTemplate(response, dataList, Map.class, fileName, tempFileName);
+    }
+
     //////// test ////////
 
     @Autowired

+ 5 - 5
mjava-aiwei/src/main/resources/application-dev.yml

@@ -38,14 +38,14 @@ spring:
 # filepath
 file:
   path:
-    file: /Users/malk/server/_Tool/var/mjava/tmp/file/
-    image: /Users/malk/server/_Tool/var/mjava/tmp/image/
-    tmp: /Users/malk/server/_Tool/var/mjava/tmp/
+    file: /home/malk/server/_Tool/var/mjava/tmp/file/
+    image: /home/malk/server/_Tool/var/mjava/tmp/image/
+    tmp: /home/malk/server/_Tool/var/mjava/tmp/
   source:
-    fonts: /Users/malk/server/_Tool/fonts/simsun.ttc
+    fonts: /home/malk/server/_Tool/fonts/simsun.ttc
 logging:
   file:
-    path: /Users/malk/server/_Tool/var/mjava/log
+    path: /home/malk/server/_Tool/var/mjava/log
 
 # dingtalk
 dingtalk:

BIN
mjava-aiwei/src/main/resources/templates/需求入库_数据模板.xlsx


+ 1 - 0
mjava/src/main/java/com/malk/server/aliwork/YDConf.java

@@ -64,6 +64,7 @@ public class YDConf {
         retrieve_changed,    // 变更记录
         retrieve_definition, // 表单定义
 
+        retrieve_forms, // 表单列表
     }
 
     /**

+ 3 - 0
mjava/src/main/java/com/malk/service/aliwork/impl/YDClientImpl.java

@@ -127,6 +127,9 @@ public class YDClientImpl implements YDClient {
             case retrieve_changed:
                 ddr_new = DDR_New.doPost(getRequestUrl("/forms/operationsLogs/query"), ddClient.initTokenHeader(), null, param);
                 break;
+            case retrieve_forms:
+                ddr_new = DDR_New.doGet(getRequestUrl("/forms"), ddClient.initTokenHeader(), param);
+                break;
         }
         return ddr_new;
     }

+ 14 - 0
mjava/src/main/java/com/malk/utils/UtilExcel.java

@@ -244,4 +244,18 @@ public class UtilExcel {
         workBook.finish();
     }
 
+    /**
+     * 列表与主表进行填充 [格式: 模板主表 {字段}, 列表 {.字段}]
+     */
+    @SneakyThrows
+    public static void exportMapAndListByTemplate(HttpServletResponse response, List dataList, Class dtoClass, @Nullable String fileName, String templateName) {
+        InputStream inputStream = UtilFile.readPackageResource("templates/" + templateName);
+        UtilExcel.setResponseHeader(response, fileName, ".xlsx");
+        ExcelWriter workBook = EasyExcel.write(response.getOutputStream(), dtoClass).withTemplate(inputStream).build();
+        WriteSheet sheet = EasyExcel.writerSheet().build();
+        // 先单组数据填充,再多组数据填充
+        workBook.fill(dataList, sheet);
+        workBook.finish();
+    }
+
 }