1. 新增QYZH.InteractiveMagazine.WorkService工作服务项目,包含队列消费者框架、Hangfire定时任务支持 2. 修复PetService中未定义FeedPetOutput变量的问题 3. 调整JournalController的路由前缀从api/icr改为api 4. 将工作服务项目添加到解决方案中
36 lines
1000 B
C#
36 lines
1000 B
C#
using System.Text;
|
|
|
|
namespace QYZH.InteractiveMagazine.WorkService.Consumers;
|
|
|
|
/// <summary>
|
|
/// 期刊任务接收消费者(示例)
|
|
/// </summary>
|
|
public class JournalTaskReceiveConsumer : IQueueConsumer
|
|
{
|
|
private readonly ILogger<JournalTaskReceiveConsumer> _logger;
|
|
|
|
public JournalTaskReceiveConsumer(ILogger<JournalTaskReceiveConsumer> logger)
|
|
{
|
|
_logger = logger;
|
|
}
|
|
|
|
public string QueueName => "mq.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;
|
|
}
|
|
}
|