From d6687f97f122a3c192ec6ec15a18ceab4fa63c34 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=85=95=E4=B8=8B?= <484014559@qq.com> Date: Tue, 3 Sep 2024 09:49:51 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BF=83=E8=B7=B3=E6=95=B0=E6=8D=AE=E6=8E=A8?= =?UTF-8?q?=E9=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../infra/clients/LargeScreenClient.java | 9 ++++- .../admin/ticketing/TicketingController.java | 36 ++++++++++++++++--- .../LargeScreenHeartbeat.java | 22 ++++++++++-- 3 files changed, 60 insertions(+), 7 deletions(-) diff --git a/yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/clients/LargeScreenClient.java b/yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/clients/LargeScreenClient.java index 8b3b086a0..188d341dd 100644 --- a/yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/clients/LargeScreenClient.java +++ b/yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/clients/LargeScreenClient.java @@ -2,6 +2,7 @@ package cn.iocoder.yudao.module.infra.clients; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestParam; import java.util.List; import java.util.Map; @@ -9,5 +10,11 @@ import java.util.Map; @FeignClient("datacenter-server") public interface LargeScreenClient { @GetMapping("/api/asset/type") - List assetMethod1(); + Object assetMethod1(); + + @GetMapping("/api/saledata") + Object saleDataTotal(@RequestParam("starTime") String starTime, @RequestParam("endTime") String endTime); + + @GetMapping("/api/checkticket") + Object checkTicketTotal(@RequestParam("starTime") String starTime, @RequestParam("endTime") String endTime); } diff --git a/yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/ticketing/TicketingController.java b/yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/ticketing/TicketingController.java index e70382b5e..53b55ca1b 100644 --- a/yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/ticketing/TicketingController.java +++ b/yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/ticketing/TicketingController.java @@ -2,6 +2,8 @@ package cn.iocoder.yudao.module.infra.controller.admin.ticketing; import cn.iocoder.yudao.framework.common.pojo.CommonResult; import cn.iocoder.yudao.framework.common.util.date.TickingDateUtils; +import cn.iocoder.yudao.module.infra.api.websocket.WebSocketSenderApi; +import cn.iocoder.yudao.module.infra.clients.LargeScreenClient; import cn.iocoder.yudao.module.infra.job.ticketing.TicketDataMigration; import cn.iocoder.yudao.module.infra.service.checkticket.CheckTicketService; import cn.iocoder.yudao.module.infra.service.saledata.SaleDataService; @@ -10,9 +12,10 @@ import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; -import java.util.Calendar; -import java.util.Date; -import java.util.List; +import java.text.SimpleDateFormat; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; +import java.util.*; /** * @Description 测试抽数接口 @@ -31,6 +34,12 @@ public class TicketingController { @Resource SaleDataService saleDataService; + @Resource + private WebSocketSenderApi webSocketSenderApi; + + @Resource + private LargeScreenClient largeScreenClient; + @GetMapping public CommonResult testTicketing(@RequestParam("startDate") String startDate, @RequestParam("endDate")String endDate, @RequestParam("method") String method) throws Exception { Calendar startCalendar = Calendar.getInstance(); @@ -39,10 +48,29 @@ public class TicketingController { endCalendar.setTime(TickingDateUtils.parse(endDate)); return CommonResult.success(ticketDataMigration.getTicketDataByTimeZonesToMongo(startCalendar, endCalendar, method)); } - @GetMapping("/test") + @GetMapping("/test1") public CommonResult> testAll(){ return CommonResult.success(checkTicketService.deleteTwoYearLastMonthAgo()); } + + private void methodUtils(Map map, String name, Object list){ + map.put(name,list); + } + private String methodDataUtils(){ + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); + LocalDateTime now = LocalDateTime.now(); + return now.format(formatter); + } + @GetMapping("/test") + public void test(){ + Map map = new HashMap<>(); + String dataUtils = this.methodDataUtils(); + this.methodUtils(map, "assetCount", largeScreenClient.assetMethod1()); + this.methodUtils(map,"saleDataTotal",largeScreenClient.saleDataTotal(dataUtils,dataUtils)); + this.methodUtils(map,"checkTicketTotal",largeScreenClient.checkTicketTotal(dataUtils,dataUtils)); + webSocketSenderApi.sendObject(2,1L,"1",map); + } + @GetMapping("/testa") public CommonResult> testAlla(){ return CommonResult.success(saleDataService.deleteTwoYearLastMonthAgo()); diff --git a/yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/job/largeScreenHeartbeat/LargeScreenHeartbeat.java b/yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/job/largeScreenHeartbeat/LargeScreenHeartbeat.java index 4858e0a8a..74b3bb493 100644 --- a/yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/job/largeScreenHeartbeat/LargeScreenHeartbeat.java +++ b/yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/job/largeScreenHeartbeat/LargeScreenHeartbeat.java @@ -7,6 +7,9 @@ import com.xxl.job.core.handler.annotation.XxlJob; import org.springframework.stereotype.Component; import javax.annotation.Resource; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; +import java.util.HashMap; import java.util.List; import java.util.Map; @@ -19,10 +22,25 @@ public class LargeScreenHeartbeat { @Resource private LargeScreenClient largeScreenClient; + + private void methodUtils(Map map, String name, Object list){ + map.put(name,list); + } + + private String methodDataUtils(){ + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); + LocalDateTime now = LocalDateTime.now(); + return now.format(formatter); + } + @XxlJob("largeScreen") public void largeScreenToWebSocket(){ - List maps = largeScreenClient.assetMethod1(); - webSocketSenderApi.sendObject(1,"1",maps); + Map map = new HashMap<>(); + String dataUtils = this.methodDataUtils(); + this.methodUtils(map, "assetCount", largeScreenClient.assetMethod1()); + this.methodUtils(map,"saleDataTotal",largeScreenClient.saleDataTotal(dataUtils,dataUtils)); + this.methodUtils(map,"checkTicketTotal",largeScreenClient.checkTicketTotal(dataUtils,dataUtils)); + webSocketSenderApi.sendObject(2,1L,"1",map); } }