using System.Text;
namespace QYZH.InteractiveMagazine.WorkService.Consumers;
///
/// 期刊任务接收消费者(示例)
///
public class JournalTaskReceiveConsumer : IQueueConsumer
{
private readonly ILogger _logger;
public JournalTaskReceiveConsumer(ILogger logger)
{
_logger = logger;
}
public string Exchange => "ex.journal";
public string QueueName => "mq.journal.task.receive";
public string RoutingKey => "rk.journal.task.receive";
public async Task HandleAsync(byte[] message)
{
var body = Encoding.UTF8.GetString(message);
_logger.LogInformation("收到期刊任务消息: {Message}", body);
// TODO: 在此编写具体的消息处理逻辑
await Task.CompletedTask;
}
public Task OnErrorAsync(byte[] message, Exception exception)
{
var body = Encoding.UTF8.GetString(message);
_logger.LogError(exception, "处理期刊任务消息失败: {Message}", body);
return Task.CompletedTask;
}
}