feat: 新增工作服务项目并调整部分接口路由

1. 新增QYZH.InteractiveMagazine.WorkService工作服务项目,包含队列消费者框架、Hangfire定时任务支持
2. 修复PetService中未定义FeedPetOutput变量的问题
3. 调整JournalController的路由前缀从api/icr改为api
4. 将工作服务项目添加到解决方案中
This commit is contained in:
glz
2026-06-11 18:01:07 +08:00
parent e493c85d08
commit 4142b621c3
12 changed files with 433 additions and 2 deletions

View File

@ -0,0 +1,35 @@
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;
}
}