|
@@ -1,10 +1,7 @@
|
|
|
using MapsterMapper;
|
|
|
using Microsoft.Extensions.Logging;
|
|
|
-using Push.Share.Dtos;
|
|
|
using Push.Share.Enums;
|
|
|
-using Push.YiBin.Dtos;
|
|
|
using Quartz;
|
|
|
-using static System.Runtime.InteropServices.JavaScript.JSType;
|
|
|
|
|
|
namespace Push.YiBin
|
|
|
{
|
|
@@ -14,21 +11,31 @@ namespace Push.YiBin
|
|
|
private readonly ILogger<TaskSendMessageJob> _logger;
|
|
|
private readonly IRepository<Message> _messageRepository;
|
|
|
private readonly IRepository<WaitMessage> _waitMessageRepository;
|
|
|
- private readonly IPushDomainService _pushDomainService; private readonly FwClient _fwClient;
|
|
|
+ private readonly IPushDomainService _pushDomainService;
|
|
|
+ private readonly IChannelConfigurationManager _channelConfigurationManager;
|
|
|
|
|
|
+ /// <summary>
|
|
|
+ ///
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="mapper"></param>
|
|
|
+ /// <param name="logger"></param>
|
|
|
+ /// <param name="messageRepository"></param>
|
|
|
+ /// <param name="waitMessageRepository"></param>
|
|
|
+ /// <param name="pushDomainService"></param>
|
|
|
+ /// <param name="channelConfigurationManager"></param>
|
|
|
public TaskSendMessageJob(IMapper mapper,
|
|
|
ILogger<TaskSendMessageJob> logger,
|
|
|
IRepository<Message> messageRepository,
|
|
|
IRepository<WaitMessage> waitMessageRepository,
|
|
|
IPushDomainService pushDomainService,
|
|
|
- FwClient fwClient)
|
|
|
+ IChannelConfigurationManager channelConfigurationManager)
|
|
|
{
|
|
|
_mapper = mapper;
|
|
|
_logger = logger;
|
|
|
_messageRepository = messageRepository;
|
|
|
_waitMessageRepository = waitMessageRepository;
|
|
|
_pushDomainService = pushDomainService;
|
|
|
- _fwClient = fwClient;
|
|
|
+ _channelConfigurationManager = channelConfigurationManager;
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
@@ -44,7 +51,6 @@ namespace Push.YiBin
|
|
|
.OrderBy(d => d.CreationTime)
|
|
|
.Take(50)
|
|
|
.ToListAsync(context.CancellationToken);
|
|
|
-
|
|
|
if (tasks.Count != 0)
|
|
|
{
|
|
|
foreach (var sendTask in tasks)
|
|
@@ -55,9 +61,12 @@ namespace Push.YiBin
|
|
|
var result = await _pushDomainService.PushNewAsync(_mapper.Map<Share.Dtos.MessageDto>(sendTask));
|
|
|
if (result.SendState == ESendState.Sending && result.Status == EPushStatus.Success)
|
|
|
{
|
|
|
+ //删除待推送表
|
|
|
await _waitMessageRepository.RemoveAsync(sendTask, cancellationToken: context.CancellationToken);
|
|
|
- await _messageRepository.AddAsync(result, context.CancellationToken); //写入本地数据库
|
|
|
|
|
|
+ //修改添加推送数据
|
|
|
+ result.ProcessingServices = _channelConfigurationManager.GetConfigurationProcessingServices();
|
|
|
+ await _messageRepository.AddAsync(result, context.CancellationToken); //写入本地数据库
|
|
|
}
|
|
|
else
|
|
|
{
|