From 790b1d0ff8279b8b97eae79ede714231712c9358 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=85=B4=E7=90=B3?= <1911390090@qq.com> Date: Tue, 2 Jul 2024 16:18:22 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=AE=9A=E6=97=B6=20?= =?UTF-8?q?=E4=BA=A4=E9=80=9A=E8=B7=AF=E5=86=B5=20=E6=AF=8F=E5=B0=8F?= =?UTF-8?q?=E6=97=B6=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DcRoadConditionInformationController.java | 9 ++++- ...DcTimingOfTrafficConditionsController.java | 36 +++++++++++++++++++ .../DcTrafficStatisticsController.java | 5 ++- .../DcRoadConditionInformationMapper.java | 3 ++ .../IDcRoadConditionInformationService.java | 3 ++ ...DcRoadConditionInformationServiceImpl.java | 5 +++ .../impl/DcTrafficStatisticsServiceImpl.java | 11 +----- .../DcRoadConditionInformationMapper.xml | 4 +++ 8 files changed, 62 insertions(+), 14 deletions(-) create mode 100644 zc-business/src/main/java/com/zc/business/controller/DcTimingOfTrafficConditionsController.java diff --git a/zc-business/src/main/java/com/zc/business/controller/DcRoadConditionInformationController.java b/zc-business/src/main/java/com/zc/business/controller/DcRoadConditionInformationController.java index 66713b66..4b1a43d8 100644 --- a/zc-business/src/main/java/com/zc/business/controller/DcRoadConditionInformationController.java +++ b/zc-business/src/main/java/com/zc/business/controller/DcRoadConditionInformationController.java @@ -23,7 +23,7 @@ import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.common.core.page.TableDataInfo; -/** +/**DcTimingOfTrafficConditionsController * 路况信息Controller * * @author ruoyi @@ -47,6 +47,13 @@ public class DcRoadConditionInformationController extends BaseController List list = dcRoadConditionInformationService.selectDcRoadConditionInformationList(dcRoadConditionInformation); return getDataTable(list); } + @GetMapping("/listTime") + public TableDataInfo listTime() + { + startPage(); + List list = dcRoadConditionInformationService.selectlistTime(); + return getDataTable(list); + } /** * 导出路况信息列表 diff --git a/zc-business/src/main/java/com/zc/business/controller/DcTimingOfTrafficConditionsController.java b/zc-business/src/main/java/com/zc/business/controller/DcTimingOfTrafficConditionsController.java new file mode 100644 index 00000000..29c88a5a --- /dev/null +++ b/zc-business/src/main/java/com/zc/business/controller/DcTimingOfTrafficConditionsController.java @@ -0,0 +1,36 @@ +package com.zc.business.controller; + +import com.alibaba.fastjson.JSONArray; +import com.ruoyi.common.core.domain.AjaxResult; +import com.zc.business.domain.DcRoadConditionInformation; +import com.zc.business.service.IDcRoadConditionInformationService; +import com.zc.business.service.IDcTrafficStatisticsService; +import com.zc.common.core.httpclient.exception.HttpException; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Component; + +import java.io.IOException; + +/** + *路况信息 每小时入一次库 + */ +@Component +public class DcTimingOfTrafficConditionsController { + @Autowired + private IDcTrafficStatisticsService dcTrafficStatisticsService; + @Autowired + private IDcRoadConditionInformationService dcRoadConditionInformationService; + + // 调用服务层方法,获取当前交通指标数据 + @Scheduled(cron = "0 0 * * * *") + public void getTheCurrentCongestedSection() throws HttpException, IOException { + // 调用服务层方法,获取当前交通指标数据 + JSONArray jsonArray = dcTrafficStatisticsService.getTheCurrentCongestedSection(); + //插入 数据库 + DcRoadConditionInformation dcRoadConditionInformation =new DcRoadConditionInformation(); + dcRoadConditionInformation.setOtherConfig(jsonArray.toJSONString()); + dcRoadConditionInformationService.insertDcRoadConditionInformation(dcRoadConditionInformation); + // 将获取到的交通指标数据封装为成功的结果并返回 + } +} diff --git a/zc-business/src/main/java/com/zc/business/controller/DcTrafficStatisticsController.java b/zc-business/src/main/java/com/zc/business/controller/DcTrafficStatisticsController.java index 59ea6b56..8986f5bb 100644 --- a/zc-business/src/main/java/com/zc/business/controller/DcTrafficStatisticsController.java +++ b/zc-business/src/main/java/com/zc/business/controller/DcTrafficStatisticsController.java @@ -46,7 +46,7 @@ import java.util.stream.Collectors; * * @author xiepufeng */ -@Component + @Api(tags = "交通数据统计") @RestController @RequestMapping("/business/traffic-statistics") @@ -745,8 +745,7 @@ public AjaxResult realTimeTrafficFlow(String startDate, String direction,String // 将获取到的交通指标数据封装为成功的结果并返回 return AjaxResult.success(jsonArray); } - @Scheduled(cron = "0 */1 * * * ?") - // @Scheduled(cron = "0/30 * * * * ?") + @ApiOperation("获取当前拥堵路段") @GetMapping("/current/getTheCurrentCongestedSection") public AjaxResult getTheCurrentCongestedSection() throws HttpException, IOException { diff --git a/zc-business/src/main/java/com/zc/business/mapper/DcRoadConditionInformationMapper.java b/zc-business/src/main/java/com/zc/business/mapper/DcRoadConditionInformationMapper.java index 190850be..29beb5fe 100644 --- a/zc-business/src/main/java/com/zc/business/mapper/DcRoadConditionInformationMapper.java +++ b/zc-business/src/main/java/com/zc/business/mapper/DcRoadConditionInformationMapper.java @@ -59,4 +59,7 @@ public interface DcRoadConditionInformationMapper * @return 结果 */ int deleteDcRoadConditionInformationByIds(Long[] ids); + + List selectlistTime(); + } diff --git a/zc-business/src/main/java/com/zc/business/service/IDcRoadConditionInformationService.java b/zc-business/src/main/java/com/zc/business/service/IDcRoadConditionInformationService.java index 7deb570e..7fccc8a8 100644 --- a/zc-business/src/main/java/com/zc/business/service/IDcRoadConditionInformationService.java +++ b/zc-business/src/main/java/com/zc/business/service/IDcRoadConditionInformationService.java @@ -59,4 +59,7 @@ public interface IDcRoadConditionInformationService * @return 结果 */ int deleteDcRoadConditionInformationById(Long id); + + List selectlistTime(); + } diff --git a/zc-business/src/main/java/com/zc/business/service/impl/DcRoadConditionInformationServiceImpl.java b/zc-business/src/main/java/com/zc/business/service/impl/DcRoadConditionInformationServiceImpl.java index e0e45b06..4d7f9ffd 100644 --- a/zc-business/src/main/java/com/zc/business/service/impl/DcRoadConditionInformationServiceImpl.java +++ b/zc-business/src/main/java/com/zc/business/service/impl/DcRoadConditionInformationServiceImpl.java @@ -94,4 +94,9 @@ public class DcRoadConditionInformationServiceImpl implements IDcRoadConditionIn { return dcRoadConditionInformationMapper.deleteDcRoadConditionInformationById(id); } + + @Override + public List selectlistTime() { + return dcRoadConditionInformationMapper.selectlistTime(); + } } diff --git a/zc-business/src/main/java/com/zc/business/service/impl/DcTrafficStatisticsServiceImpl.java b/zc-business/src/main/java/com/zc/business/service/impl/DcTrafficStatisticsServiceImpl.java index e3eab352..0c9631fd 100644 --- a/zc-business/src/main/java/com/zc/business/service/impl/DcTrafficStatisticsServiceImpl.java +++ b/zc-business/src/main/java/com/zc/business/service/impl/DcTrafficStatisticsServiceImpl.java @@ -57,8 +57,6 @@ public class DcTrafficStatisticsServiceImpl implements IDcTrafficStatisticsServi @Resource private IDcFacilityService facilityService; - @Autowired - private IDcRoadConditionInformationService dcRoadConditionInformationService; @Resource private IDcRoadSectionService roadSectionService; @@ -965,11 +963,9 @@ public class DcTrafficStatisticsServiceImpl implements IDcTrafficStatisticsServi // System.out.printf("最大距离为: %.2f 米%n", distanceM); jsonObject.put("max_jam_dist", distanceM);//最大拥堵距离 double endMake = startPileNo +Double.parseDouble(String.format("%.3f", distanceM)); - String endmark = formatNumber(endMake); jsonObject.put("endMark", endmark);//结束桩号 - String[] split = string1.split(","); double firstLon = Double.parseDouble(split[UniversalEnum.ZERO.getNumber()]); double firstLat = Double.parseDouble(split[UniversalEnum.ONE.getNumber()]); @@ -984,14 +980,9 @@ public class DcTrafficStatisticsServiceImpl implements IDcTrafficStatisticsServi double distanceMeters = distanceKm * UniversalEnum.THOUSAND.getNumber(); // 将距离转换为米 //System.out.printf("两点之间的距离为: %.2f 米%n", distanceMeters); jsonObject.put("jam_dist", distanceMeters);//当前拥堵距离 - } - } - //插入 数据库 road_condition_information - DcRoadConditionInformation dcRoadConditionInformation =new DcRoadConditionInformation(); - dcRoadConditionInformation.setOtherConfig(jsonArray.toJSONString()); - dcRoadConditionInformationService.insertDcRoadConditionInformation(dcRoadConditionInformation); + return jsonArray; } diff --git a/zc-business/src/main/resources/mapper/business/DcRoadConditionInformationMapper.xml b/zc-business/src/main/resources/mapper/business/DcRoadConditionInformationMapper.xml index df07b2a4..5bb124b1 100644 --- a/zc-business/src/main/resources/mapper/business/DcRoadConditionInformationMapper.xml +++ b/zc-business/src/main/resources/mapper/business/DcRoadConditionInformationMapper.xml @@ -23,6 +23,10 @@ ORDER BY create_time DESC +