瀏覽代碼

账号邮箱统计

18118724055@163.com 11 小時之前
父節點
當前提交
46932e15b5

+ 4 - 3
java/storlead-sasa/storlead-trade/src/main/java/com/storlead/trade/controller/MarketEmailsController.java

@@ -7,6 +7,7 @@ import com.storlead.trade.dto.MarketEmailsDTO;
 import com.storlead.trade.entity.MarketEmailsEntity;
 import com.storlead.trade.service.MarketEmailsService;
 import com.storlead.framework.common.result.Result;
+import com.storlead.trade.vo.MarketEmailsAccountStatsVO;
 import com.storlead.trade.vo.MarketEmailsManagementVO;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -165,10 +166,10 @@ public class MarketEmailsController {
         return marketEmailsService.getLast7DaysSendTrend();
     }
 
-    @GetMapping("/account-total")
+    @PostMapping("/account-total")
     @ApiOperation("营销: 按发件箱 id 批量统计,返回 Map<outboxId, 统计>(总发送量、回复数、回复率、最新发送时间;outboxIds=1,2 或 outboxIds=1&outboxIds=2)")
-    public Result<Map<Long, Object>> accountStats(@RequestParam("outboxIds") List<Long> outboxIds) {
-        return marketEmailsService.getAccountStats(outboxIds);
+    public Result<Map<Long, MarketEmailsAccountStatsVO>> accountStats(@RequestParam("outboxIds") List<Long> outboxIds) {
+        return Result.result(marketEmailsService.getAccountStats(outboxIds));
     }
 
     @PostMapping("/test")

+ 2 - 1
java/storlead-sasa/storlead-trade/src/main/java/com/storlead/trade/service/MarketEmailsService.java

@@ -3,6 +3,7 @@ package com.storlead.trade.service;
 import com.storlead.trade.dto.MarketEmailsDTO;
 import com.storlead.trade.entity.MarketEmailsEntity;
 import com.storlead.trade.entity.MarketingCampaignEntity;
+import com.storlead.trade.vo.MarketEmailsAccountStatsVO;
 import com.storlead.trade.vo.MarketEmailsCustomerVO;
 import com.storlead.trade.vo.MarketEmailsManagementVO;
 import com.storlead.trade.vo.MarketEmailsStatsVO;
@@ -115,7 +116,7 @@ public interface MarketEmailsService extends MyBaseService<MarketEmailsEntity> {
      * 口径与今日发送一致:is_delete=0 且 status=1;回复数再叠加 has_reply=1。
      * 返回 Map&lt;outboxId, 统计&gt;;入参只接受账号 id,无数据的 id 补 0。
      */
-    Result<Map<Long, Object>> getAccountStats(List<Long> outboxIds);
+    Map<Long, MarketEmailsAccountStatsVO> getAccountStats(List<Long> outboxIds);
 
     /***
       * @Description: 通过id/marketingCampaignId/客户id关联的邮件状态

+ 6 - 6
java/storlead-sasa/storlead-trade/src/main/java/com/storlead/trade/service/impl/MarketEmailsServiceImpl.java

@@ -1055,14 +1055,14 @@ public class MarketEmailsServiceImpl extends MyBaseServiceImpl<MarketEmailsMappe
     }
 
     @Override
-    public Result<Map<Long, Object>> getAccountStats(List<Long> outboxIds) {
-        Map<Long, Object> result = new LinkedHashMap<>();
+    public Map<Long, MarketEmailsAccountStatsVO> getAccountStats(List<Long> outboxIds) {
+        Map<Long, MarketEmailsAccountStatsVO> result = new LinkedHashMap<>();
         if (CollectionUtils.isEmpty(outboxIds)) {
-            return Result.result(result);
+            return result;
         }
         List<Long> ids = outboxIds.stream().filter(Objects::nonNull).distinct().collect(Collectors.toList());
         if (ids.isEmpty()) {
-            return Result.result(result);
+            return result;
         }
         for (Long id : ids) {
             result.put(id, emptyAccountStats(id));
@@ -1080,7 +1080,7 @@ public class MarketEmailsServiceImpl extends MyBaseServiceImpl<MarketEmailsMappe
         qw.groupBy("outbox_id");
         List<Map<String, Object>> rows = this.listMaps(qw);
         if (CollectionUtils.isEmpty(rows)) {
-            return Result.result(result);
+            return result;
         }
         for (Map<String, Object> row : rows) {
             if (row == null) {
@@ -1100,7 +1100,7 @@ public class MarketEmailsServiceImpl extends MyBaseServiceImpl<MarketEmailsMappe
             vo.setLastSendTime(toDate(row.get("last_send_time")));
             result.put(id, vo);
         }
-        return Result.result(result);
+        return result;
     }
 
     private MarketEmailsAccountStatsVO emptyAccountStats(Long outboxId) {