From 3908ce56986e6f79e55865c15ca9a32064fe2c44 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E8=89=AF=28004796=29?= Date: Tue, 30 Jan 2024 12:45:40 +0800 Subject: [PATCH] 123 --- .../admin/query/syspush/SysPushMasterDTO.java | 5 +++++ .../cai/service/impl/SysPushServiceImpl.java | 19 +++++++++---------- .../service/impl/UserForbidServiceImpl.java | 2 +- 3 files changed, 15 insertions(+), 11 deletions(-) diff --git a/ruoyi-cai/src/main/java/com/ruoyi/cai/dto/admin/query/syspush/SysPushMasterDTO.java b/ruoyi-cai/src/main/java/com/ruoyi/cai/dto/admin/query/syspush/SysPushMasterDTO.java index f01cd973..4d3f7173 100644 --- a/ruoyi-cai/src/main/java/com/ruoyi/cai/dto/admin/query/syspush/SysPushMasterDTO.java +++ b/ruoyi-cai/src/main/java/com/ruoyi/cai/dto/admin/query/syspush/SysPushMasterDTO.java @@ -1,6 +1,9 @@ package com.ruoyi.cai.dto.admin.query.syspush; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.ruoyi.common.constant.DateConstant; import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDateTime; @@ -24,6 +27,8 @@ public class SysPushMasterDTO { private String onlyImage; private Integer sendTimeType; + @DateTimeFormat(pattern = DateConstant.PATTERN_DATETIME) + @JsonFormat(pattern = DateConstant.PATTERN_DATETIME) private LocalDateTime sendTime; private String title; private Integer type; diff --git a/ruoyi-cai/src/main/java/com/ruoyi/cai/service/impl/SysPushServiceImpl.java b/ruoyi-cai/src/main/java/com/ruoyi/cai/service/impl/SysPushServiceImpl.java index 59fca693..ec2cebc4 100644 --- a/ruoyi-cai/src/main/java/com/ruoyi/cai/service/impl/SysPushServiceImpl.java +++ b/ruoyi-cai/src/main/java/com/ruoyi/cai/service/impl/SysPushServiceImpl.java @@ -31,6 +31,7 @@ import com.ruoyi.cai.notice.data.child.MultipleImageTextData; import com.ruoyi.cai.notice.data.child.MultipleImageTextNode; import com.ruoyi.cai.notice.data.child.SimpleImageTextData; import com.ruoyi.cai.notice.enums.MessageBaseTypeEnum; +import com.ruoyi.cai.service.SysPushLogService; import com.ruoyi.cai.service.SysPushService; import com.ruoyi.cai.service.UserService; import com.ruoyi.cai.util.CaiDateUtil; @@ -69,6 +70,8 @@ public class SysPushServiceImpl extends ServiceImpl impl private SystemConfigManager systemConfigManager; @Autowired private AmqpProducer amqpProducer; + @Autowired + private SysPushLogService sysPushLogService; @Override public void saveSysPush(SysPushParams params) { @@ -97,12 +100,12 @@ public class SysPushServiceImpl extends ServiceImpl impl } sysPush.setSendTimeType(systemPushSendTime.getCode()); if(systemPushSendTime == SystemPushSendTimeTypeEnum.SCHEDULED_SEND){ - long between = CaiDateUtil.diff(sysPush.getEndTime(), LocalDateTime.now()); + long between = CaiDateUtil.diff(master.getSendTime(), LocalDateTime.now()); if(between < 0){ throw new ServiceException("定时发送时间不能少于当前时间"); } - if(between < 60*3){ - throw new ServiceException("定时发送最低限制为3分钟以后"); + if(between < 60){ + throw new ServiceException("定时发送最低限制为1分钟以后"); } sysPush.setSendTime(master.getSendTime()); } @@ -174,13 +177,13 @@ public class SysPushServiceImpl extends ServiceImpl impl this.save(sysPush); try { // 小于 < 12小时 - long between = CaiDateUtil.diff(sysPush.getEndTime(), LocalDateTime.now()); + long between = CaiDateUtil.diff(sysPush.getSendTime(), LocalDateTime.now()); CommonDelayDto dto = new CommonDelayDto(); dto.setSysPushId(sysPush.getId()); dto.setType(CommonDelayTypeEnum.SYS_PUSH.getCode()); amqpProducer.sendCommonDelayMq(dto,(int)between+2); }catch (Exception e){ - log.error("延时任务发送失败!"); + log.error("系统推送任务发送失败!",e); } } @@ -218,10 +221,6 @@ public class SysPushServiceImpl extends ServiceImpl impl if(SystemPushStatusEnum.COMPLETE.getCode().equals(status)){ throw new ServiceException("不允许重复执行"); } - if(SystemPushStatusEnum.RUNNING.getCode().equals(status) - || SystemPushStatusEnum.QUEUE_RUNNING.getCode().equals(status)){ - throw new ServiceException("任务正在执行中,不允许重复执行"); - } boolean update = this.update(Wrappers.lambdaUpdate(SysPush.class) .eq(SysPush::getId, sysPush.getId()) .eq(SysPush::getStatus, SystemPushStatusEnum.RUNNING.getCode()) @@ -303,7 +302,7 @@ public class SysPushServiceImpl extends ServiceImpl impl sysPushLog.setStatus(SystemPushLogStatusEnum.SEND_FAIL.getCode()); sysPushLog.setResult(e.getMessage()); } - this.save(sysPush); + sysPushLogService.save(sysPushLog); } this.update(Wrappers.lambdaUpdate(SysPush.class) .eq(SysPush::getId, sysPush.getId()) diff --git a/ruoyi-cai/src/main/java/com/ruoyi/cai/service/impl/UserForbidServiceImpl.java b/ruoyi-cai/src/main/java/com/ruoyi/cai/service/impl/UserForbidServiceImpl.java index 7338325c..7117f39a 100644 --- a/ruoyi-cai/src/main/java/com/ruoyi/cai/service/impl/UserForbidServiceImpl.java +++ b/ruoyi-cai/src/main/java/com/ruoyi/cai/service/impl/UserForbidServiceImpl.java @@ -92,7 +92,7 @@ public class UserForbidServiceImpl extends ServiceImpl