From 669a33ba3405df7e28237d83d19f2907544a637c Mon Sep 17 00:00:00 2001 From: yuyang Date: Thu, 20 Oct 2022 15:57:24 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=EF=BC=8C=E5=AE=9E=E6=97=B6?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=20BMS=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../order/mapper/XhpcRealTimeOrderMapper.java | 13 ++++ .../service/IXhpcRealTimeOrderService.java | 24 ++++++- .../impl/XhpcRealTimeOrderServiceImpl.java | 45 ++++++++++++- .../com/xhpc/order/tasks/ScheduledTasks.java | 66 +++++++++++++++++++ .../mapper/XhpcRealTimeOrderMapper.xml | 25 +++++++ 5 files changed, 171 insertions(+), 2 deletions(-) create mode 100644 xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/tasks/ScheduledTasks.java diff --git a/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/mapper/XhpcRealTimeOrderMapper.java b/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/mapper/XhpcRealTimeOrderMapper.java index 086e5d21..d4b1cad3 100644 --- a/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/mapper/XhpcRealTimeOrderMapper.java +++ b/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/mapper/XhpcRealTimeOrderMapper.java @@ -188,4 +188,17 @@ public interface XhpcRealTimeOrderMapper { XhpcActivityFormulaDomainDto getActivityFormulaTimeById(@Param("activityId") Integer activityId,@Param("startTime") String startTime, @Param("endTime") String endTime); + + void deleteOrderCurrent(@Param("time")String time); + + void deleteOrderVoltage(@Param("time")String time); + + void deleteOrderSoc(@Param("time")String time); + + void deleteRealTimeOrderTime(@Param("time")String time); + + void deleteOorderRedisRecord(@Param("time")String time); + + void deleteRealTimeOrderBms(@Param("time")String time); + } diff --git a/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/service/IXhpcRealTimeOrderService.java b/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/service/IXhpcRealTimeOrderService.java index ef2910b9..9e6244a1 100644 --- a/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/service/IXhpcRealTimeOrderService.java +++ b/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/service/IXhpcRealTimeOrderService.java @@ -170,8 +170,30 @@ public interface IXhpcRealTimeOrderService { /** - * 添加一条实时订单的BMS + * 添加一条实时订单的BMS,清除一个月半之前的数据 */ void addRealTimeOrderBms(String orderNo); + /** + * 实时电流定时任务,每天下午2点,清除一个月半之前的数据 + */ + void orderCurrent(); + /** + * 实时电压定时任务,每天下午3点,清除一个月半之前的数据 + */ + void orderVoltage(); + + /** + * 实时soc定时任务,每天下午2点30,清除一个月半之前的数据 + */ + void orderSoc(); + + //实时充电数据定时任务,每天下午3点30,清除一个月半之前的数据 + void realTimeOrder(); + + //充电结算订单报文定时任务,每天下午4点,清除一个月半之前的数据 + void orderRedisRecord(); + + //充电车辆BMS报文定时任务,每天下午4点30,清除一个月半之前的数据 + void realTimeOrderBms(); } diff --git a/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/service/impl/XhpcRealTimeOrderServiceImpl.java b/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/service/impl/XhpcRealTimeOrderServiceImpl.java index bec0bfbb..82422f44 100644 --- a/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/service/impl/XhpcRealTimeOrderServiceImpl.java +++ b/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/service/impl/XhpcRealTimeOrderServiceImpl.java @@ -1703,6 +1703,50 @@ public class XhpcRealTimeOrderServiceImpl extends BaseService implements IXhpcRe } + @Override + public void orderCurrent() { + String time = monthTime(); + xhpcRealTimeOrderMapper.deleteOrderCurrent(time); + } + + @Override + public void orderVoltage() { + String time = monthTime(); + xhpcRealTimeOrderMapper.deleteOrderVoltage(time); + } + + @Override + public void orderSoc() { + String time = monthTime(); + xhpcRealTimeOrderMapper.deleteOrderSoc(time); + } + + @Override + public void realTimeOrder() { + String time = monthTime(); + xhpcRealTimeOrderMapper.deleteRealTimeOrderTime(time); + } + @Override + public void orderRedisRecord() { + String time = monthTime(); + xhpcRealTimeOrderMapper.deleteOorderRedisRecord(time); + } + @Override + public void realTimeOrderBms() { + String time = monthTime(); + xhpcRealTimeOrderMapper.deleteRealTimeOrderBms(time); + } + + + + + + //获今天之后一个月半后时间 + private String monthTime(){ + Date date = new Date(); + Date beginOfDay = DateUtil.beginOfDay(date); + return DateUtil.formatDateTime(DateUtil.offsetDay(beginOfDay, -35)); + } private BigDecimal getBigDecimal(Long rateModelId, String startTime, String updateTime, BigDecimal powerPriceTotal, BigDecimal divide) { if("00:00:00".equals(updateTime)){ @@ -1742,7 +1786,6 @@ public class XhpcRealTimeOrderServiceImpl extends BaseService implements IXhpcRe return bigDecimal; } - private BigDecimal getRealOrderTime(Long chargingOrderId,String startTime,String endTime){ //结束时间差时间 int differenceEndTime =0; diff --git a/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/tasks/ScheduledTasks.java b/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/tasks/ScheduledTasks.java new file mode 100644 index 00000000..1f6f339c --- /dev/null +++ b/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/tasks/ScheduledTasks.java @@ -0,0 +1,66 @@ +package com.xhpc.order.tasks; + +import com.xhpc.order.service.IXhpcRealTimeOrderService; +import io.swagger.annotations.Api; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +/** + * @author yuyang + * @date 2022/10/20 14:30 + */ +@EnableScheduling +@RestController +@RequestMapping("/scheduledTasks") +@Api(value = "定时任务接口", tags = "定时任务接口") +public class ScheduledTasks { + + @Resource + IXhpcRealTimeOrderService xhpcRealTimeOrderService; + + //实时电流定时任务,每天下午2点,清除一个月半之前的数据 + @GetMapping("/orderCurrent") + @Scheduled(cron = "0 0 14 * * ?") + public void orderCurrent(){ + xhpcRealTimeOrderService.orderCurrent(); + } + + + //实时电压定时任务,每天下午2点30,清除一个月半之前的数据 + @GetMapping("/orderVoltage") + @Scheduled(cron = "0 30 14 * * ?") + public void orderVoltage(){ + xhpcRealTimeOrderService.orderVoltage(); + } + + //实时soc定时任务,每天下午3点,清除一个月半之前的数据 + @GetMapping("/orderSoc") + @Scheduled(cron = "0 0 15 * * ?") + public void orderSoc(){ + xhpcRealTimeOrderService.orderSoc(); + } + + //实时充电数据定时任务,每天下午3.30点,清除一个月半之前的数据 + @GetMapping("/realTimeOrder") + @Scheduled(cron = "0 30 15 * * ?") + public void realTimeOrder(){ + xhpcRealTimeOrderService.realTimeOrder(); + } + //充电结算订单报文定时任务,每天下午4点,清除一个月半之前的数据 + @GetMapping("/orderRedisRecord") + @Scheduled(cron = "0 0 16 * * ?") + public void orderRedisRecord(){ + xhpcRealTimeOrderService.orderRedisRecord(); + } + //充电结算订单报文定时任务,每天下午4点30,清除一个月半之前的数据 + @GetMapping("/realTimeOrderBms") + @Scheduled(cron = "0 30 16 * * ?") + public void realTimeOrderBms(){ + xhpcRealTimeOrderService.realTimeOrderBms(); + } +} diff --git a/xhpc-modules/xhpc-order/src/main/resources/mapper/XhpcRealTimeOrderMapper.xml b/xhpc-modules/xhpc-order/src/main/resources/mapper/XhpcRealTimeOrderMapper.xml index b678a42d..9dd618c8 100644 --- a/xhpc-modules/xhpc-order/src/main/resources/mapper/XhpcRealTimeOrderMapper.xml +++ b/xhpc-modules/xhpc-order/src/main/resources/mapper/XhpcRealTimeOrderMapper.xml @@ -1009,4 +1009,29 @@ and start_time >= #{startTime} AND end_time <= #{endTime} + + + delete from xhpc_charge_order_current where create_time <=#{time} + + + + delete from xhpc_charge_order_voltage where create_time <=#{time} + + + + delete from xhpc_charge_order_soc where create_time <=#{time} + + + + delete from xhpc_real_time_order where create_time <=#{time} + + + + delete from xhpc_order_redis_record where create_time <=#{time} + + + + delete from xhpc_real_time_order_bms where create_time <=#{time} + + \ No newline at end of file