🐛 Fix award handler
This commit is contained in:
@@ -71,25 +71,25 @@ public class BroadcastEventHandler(
|
|||||||
switch (evt.ProductIdentifier)
|
switch (evt.ProductIdentifier)
|
||||||
{
|
{
|
||||||
case "posts.award":
|
case "posts.award":
|
||||||
{
|
{
|
||||||
var awardEvt = JsonSerializer.Deserialize<PaymentOrderAwardEvent>(msg.Data);
|
var awardEvt = JsonSerializer.Deserialize<PaymentOrderAwardEvent>(msg.Data, GrpcTypeHelper.SerializerOptions);
|
||||||
if (awardEvt?.Meta == null) throw new ArgumentNullException(nameof(awardEvt));
|
if (awardEvt?.Meta == null) throw new ArgumentNullException(nameof(awardEvt));
|
||||||
|
|
||||||
var meta = awardEvt.Meta;
|
var meta = awardEvt.Meta;
|
||||||
|
|
||||||
logger.LogInformation("Handling post award order: {OrderId}", evt.OrderId);
|
logger.LogInformation("Handling post award order: {OrderId}", evt.OrderId);
|
||||||
|
|
||||||
await using var scope = serviceProvider.CreateAsyncScope();
|
await using var scope = serviceProvider.CreateAsyncScope();
|
||||||
var ps = scope.ServiceProvider.GetRequiredService<PostService>();
|
var ps = scope.ServiceProvider.GetRequiredService<PostService>();
|
||||||
|
|
||||||
var amountNum = decimal.Parse(meta.Amount);
|
var amountNum = decimal.Parse(meta.Amount);
|
||||||
|
|
||||||
await ps.AwardPost(meta.PostId, meta.AccountId, amountNum, meta.Attitude, meta.Message);
|
await ps.AwardPost(meta.PostId, meta.AccountId, amountNum, meta.Attitude, meta.Message);
|
||||||
|
|
||||||
logger.LogInformation("Post award for order {OrderId} handled successfully.", evt.OrderId);
|
logger.LogInformation("Post award for order {OrderId} handled successfully.", evt.OrderId);
|
||||||
await msg.AckAsync(cancellationToken: stoppingToken);
|
await msg.AckAsync(cancellationToken: stoppingToken);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
await msg.NakAsync(cancellationToken: stoppingToken);
|
await msg.NakAsync(cancellationToken: stoppingToken);
|
||||||
break;
|
break;
|
||||||
|
Reference in New Issue
Block a user