|
@ -16,6 +16,8 @@ import org.dromara.system.service.ISysDictTypeService; |
|
|
import org.springframework.stereotype.Service; |
|
|
import org.springframework.stereotype.Service; |
|
|
|
|
|
|
|
|
import java.util.List; |
|
|
import java.util.List; |
|
|
|
|
|
import java.util.concurrent.ScheduledExecutorService; |
|
|
|
|
|
import java.util.concurrent.TimeUnit; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
/** |
|
@ -33,6 +35,8 @@ public class RemoteNoticeServiceImpl implements RemoteNoticeService { |
|
|
private final RemoteMessageService remoteMessageService; |
|
|
private final RemoteMessageService remoteMessageService; |
|
|
private final ISysDictTypeService dictTypeService; |
|
|
private final ISysDictTypeService dictTypeService; |
|
|
|
|
|
|
|
|
|
|
|
private final ScheduledExecutorService scheduledExecutorService; |
|
|
|
|
|
|
|
|
@Override |
|
|
@Override |
|
|
public int saveNotice(RemoteNoticeBo bo) { |
|
|
public int saveNotice(RemoteNoticeBo bo) { |
|
|
SysNotice notice = MapstructUtils.convert(bo, SysNotice.class); |
|
|
SysNotice notice = MapstructUtils.convert(bo, SysNotice.class); |
|
@ -40,7 +44,10 @@ public class RemoteNoticeServiceImpl implements RemoteNoticeService { |
|
|
List<SysDictDataVo> data = dictTypeService.selectDictDataByType("ai_push"); |
|
|
List<SysDictDataVo> data = dictTypeService.selectDictDataByType("ai_push"); |
|
|
List<Long> list = data.stream().map(SysDictDataVo::getDictValue).distinct().toList().stream().map(Long::parseLong).toList(); |
|
|
List<Long> list = data.stream().map(SysDictDataVo::getDictValue).distinct().toList().stream().map(Long::parseLong).toList(); |
|
|
//获取字典值
|
|
|
//获取字典值
|
|
|
remoteMessageService.publishMessage(list,bo.getParam()); |
|
|
scheduledExecutorService.schedule(() -> { |
|
|
|
|
|
remoteMessageService.publishMessage(list, bo.getParam()); |
|
|
|
|
|
}, 3, TimeUnit.SECONDS); |
|
|
|
|
|
|
|
|
return sysNoticeMapper.insert(notice); |
|
|
return sysNoticeMapper.insert(notice); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|