Files
BackOffice.BFF/src/BackOffice.BFF.Application/PublicMessageCQ/Commands/UpdatePublicMessage/UpdatePublicMessageCommandHandler.cs

39 lines
1.4 KiB
C#
Raw Normal View History

using BackOffice.BFF.Application.Common.Interfaces;
using BackOffice.BFF.PublicMessage.Protobuf;
using CMSMicroservice.Protobuf.Protos;
using Google.Protobuf.WellKnownTypes;
namespace BackOffice.BFF.Application.PublicMessageCQ.Commands.UpdatePublicMessage;
public class UpdatePublicMessageCommandHandler : IRequestHandler<UpdatePublicMessageRequest, UpdatePublicMessageRequest>
{
private readonly IApplicationContractContext _context;
public UpdatePublicMessageCommandHandler(IApplicationContractContext context)
{
_context = context;
}
public async Task<UpdatePublicMessageRequest> Handle(UpdatePublicMessageRequest request, CancellationToken cancellationToken)
{
var cmsRequest = new UpdatePublicMessageRequest
{
Id = request.MessageId,
Title = request.Title,
Content = request.Content,
Type = request.MessageType,
Priority = request.Priority,
StartDate = Timestamp.FromDateTime(request.StartsAt.ToUniversalTime()),
EndDate = Timestamp.FromDateTime(request.ExpiresAt.ToUniversalTime())
};
await _context.PublicMessages.UpdatePublicMessageAsync(
cmsRequest,
cancellationToken: cancellationToken);
// در حال حاضر پاسخ خاصی از CMS دریافت نمی‌کنیم؛ همان ورودی را برمی‌گردانیم
return request;
}
}