From 49fea21571a4060aa8570cbf220088352e2ccf15 Mon Sep 17 00:00:00 2001
From: zhizhijie <zhizhijie@users.noreply.gitee.com>
Date: 星期三, 16 九月 2026 17:33:01 +0800
Subject: [PATCH] docs(工作日结): 补记 2026-09-16 收工记录(origin 已推 80e0879、gitea 仍不通、未提交项与明日计划)

---
 traffic-audit-server/src/main/java/com/trafficaudit/dataimport/controller/DataImportController.java |   37 +++++++++++++++++++++++++++++++++----
 1 files changed, 33 insertions(+), 4 deletions(-)

diff --git a/traffic-audit-server/src/main/java/com/trafficaudit/dataimport/controller/DataImportController.java b/traffic-audit-server/src/main/java/com/trafficaudit/dataimport/controller/DataImportController.java
index d8217b5..46d6e61 100644
--- a/traffic-audit-server/src/main/java/com/trafficaudit/dataimport/controller/DataImportController.java
+++ b/traffic-audit-server/src/main/java/com/trafficaudit/dataimport/controller/DataImportController.java
@@ -269,6 +269,24 @@
         }
     }
 
+    /** 缃戠害杞﹁鍗曡繍琛岀洃娴嬪垎鏋愭姤鍛婏紙docx锛氥�婄綉绾﹁溅琛屼笟YYYY骞碝鏈堣繍琛岀洃娴嬫儏鍐靛垎鏋愭姤鍛娿�嬶級 */
+    @PostMapping("/wycOrderReport")
+    public Result<String> importWycOrderReport(@RequestParam("file") MultipartFile file,
+                                               @RequestParam("period") String period) {
+        try {
+            DataImportService.WycOrderReportResult r = importService.importWycOrderReport(file, period);
+            StringBuilder msg = new StringBuilder("缃戠害杞﹁鍗曟姤鍛婂鍏ユ垚鍔燂細鎶ヨ〃鏈� " + r.getPeriod()
+                    + "锛岃鍗曞悎璁� " + String.format("%,.0f", r.getOrderSum()) + " 鍗曪紝宸插啓鍏� " + r.getCityCount() + " 涓競宸�");
+            if (!r.getMissingCities().isEmpty()) {
+                msg.append("锛涗互涓嬪競宸炴湭鍦ㄦ姤鍛婁腑瑙f瀽鍒帮紝鏈啓鍏ワ細").append(String.join("銆�", r.getMissingCities()));
+            }
+            return Result.ok(msg.toString());
+        } catch (Exception e) {
+            log.error("wycOrderReport import error", e);
+            return Result.error("瀵煎叆澶辫触: " + e.getMessage());
+        }
+    }
+
     /** 鎶曡祫鏈堟姤锛堝叏鐪佹眹鎬诲ぇ琛級锛歝ategory=瀹㈣繍绔欏満/鐗╂祦鍥尯 */
     @PostMapping("/investment")
     public Result<String> importInvestment(@RequestParam("file") MultipartFile file,
@@ -443,14 +461,25 @@
         return Result.ok(result);
     }
 
-    /** 娓呯┖鎸囧畾鎶ヨ〃鏈熷叏閮ㄥ凡瀵煎叆鏁版嵁涓庡鏍哥粨鏋滐紙鏁版嵁瀵煎叆椤�"娓呯┖"鎸夐挳璋冪敤锛夛紝渚夸簬鏁存湀閲嶆柊瀵煎叆 */
+    /**
+     * 娓呯┖鎸囧畾鎶ヨ〃鏈熷凡瀵煎叆鏁版嵁涓庡鏍哥粨鏋滐紙鏁版嵁瀵煎叆椤�"娓呯┖鏁版嵁"鍏ュ彛璋冪敤锛夛紝渚夸簬鏁存湀閲嶆柊瀵煎叆銆�
+     * types 涓虹┖琛ㄧず娓呯┖璇ユ姤琛ㄦ湡鍏ㄩ儴绫诲瀷锛涘惁鍒欏彧娓呯┖鎸囧畾鏁版嵁绫诲瀷锛堥�楀彿鍒嗛殧锛屽 h2032,cityBus锛夈��
+     */
     @PostMapping("/clear")
-    public Result<Map<String, Object>> clearData(@RequestParam("period") String period) {
+    public Result<Map<String, Object>> clearData(@RequestParam("period") String period,
+                                                 @RequestParam(value = "types", required = false) String types) {
         try {
-            Map<String, Object> stats = importService.clearPeriod(period);
+            List<String> typeList = new java.util.ArrayList<>();
+            if (types != null) {
+                for (String t : types.split(",")) {
+                    String s = t.trim();
+                    if (!s.isEmpty()) typeList.add(s);
+                }
+            }
+            Map<String, Object> stats = importService.clearPeriod(period, typeList);
             return Result.ok(stats);
         } catch (Exception e) {
-            log.error("clear period {} error", period, e);
+            log.error("clear period {} types {} error", period, types, e);
             return Result.error("娓呯┖澶辫触: " + e.getMessage());
         }
     }

--
Gitblit v1.9.1