refactor(Pdf\Behaviors): Handle the history recording process in another behavior named CreateHistoryBehavior
This commit is contained in:
parent
380b141738
commit
d88ed324be
@ -89,6 +89,7 @@ public static class DependencyInjection
|
|||||||
cfg.RegisterServicesFromAssembly(Assembly.GetExecutingAssembly());
|
cfg.RegisterServicesFromAssembly(Assembly.GetExecutingAssembly());
|
||||||
cfg.AddBehavior<AddReportBehavior>();
|
cfg.AddBehavior<AddReportBehavior>();
|
||||||
cfg.AddBehavior<SavePdfBehavior>();
|
cfg.AddBehavior<SavePdfBehavior>();
|
||||||
|
cfg.AddBehavior<CreateHistoryBehavior>();
|
||||||
});
|
});
|
||||||
|
|
||||||
// Add memory cache
|
// Add memory cache
|
||||||
|
|||||||
@ -1,6 +1,4 @@
|
|||||||
using MediatR;
|
using MediatR;
|
||||||
using EnvelopeGenerator.Application.Histories.Commands;
|
|
||||||
using EnvelopeGenerator.Domain.Constants;
|
|
||||||
using EnvelopeGenerator.Application.EnvelopeReports;
|
using EnvelopeGenerator.Application.EnvelopeReports;
|
||||||
using EnvelopeGenerator.Application.Exceptions;
|
using EnvelopeGenerator.Application.Exceptions;
|
||||||
using EnvelopeGenerator.Domain.Entities;
|
using EnvelopeGenerator.Domain.Entities;
|
||||||
@ -40,17 +38,9 @@ public class AddReportBehavior : IPipelineBehavior<BurnPdfCommand, byte[]>
|
|||||||
{
|
{
|
||||||
var docResult = await next(cancel);
|
var docResult = await next(cancel);
|
||||||
|
|
||||||
if (!request.Debug)
|
var report = await CreateReport(request.Envelope!, cancel);
|
||||||
await _sender.Send(new CreateHistoryCommand()
|
|
||||||
{
|
|
||||||
EnvelopeId = request.EnvelopeId,
|
|
||||||
UserReference = "System",
|
|
||||||
Status = EnvelopeStatus.EnvelopeReportCreated,
|
|
||||||
}, cancel);
|
|
||||||
|
|
||||||
docResult = await CreateReport(request.Envelope!, cancel);
|
var reportBase64 = Convert.ToBase64String(report);
|
||||||
|
|
||||||
var base64 = Convert.ToBase64String(docResult);
|
|
||||||
|
|
||||||
return docResult;
|
return docResult;
|
||||||
}
|
}
|
||||||
@ -71,7 +61,7 @@ public class AddReportBehavior : IPipelineBehavior<BurnPdfCommand, byte[]>
|
|||||||
throw new CreateReportException("No report data found!");
|
throw new CreateReportException("No report data found!");
|
||||||
}
|
}
|
||||||
|
|
||||||
var oBuffer = AddReportBehavior.DoCreateReport(oItems);
|
var oBuffer = DoCreateReport(oItems);
|
||||||
|
|
||||||
return oBuffer;
|
return oBuffer;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1,47 @@
|
|||||||
|
using MediatR;
|
||||||
|
using EnvelopeGenerator.Application.Histories.Commands;
|
||||||
|
using EnvelopeGenerator.Domain.Constants;
|
||||||
|
using Microsoft.Extensions.Logging;
|
||||||
|
|
||||||
|
namespace EnvelopeGenerator.Application.Pdf.Behaviors;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
|
public class CreateHistoryBehavior : IPipelineBehavior<BurnPdfCommand, byte[]>
|
||||||
|
{
|
||||||
|
private readonly ISender _sender;
|
||||||
|
|
||||||
|
private readonly ILogger<AddReportBehavior> _logger;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="sender"></param>
|
||||||
|
/// <param name="logger"></param>
|
||||||
|
public CreateHistoryBehavior(ISender sender, ILogger<AddReportBehavior> logger)
|
||||||
|
{
|
||||||
|
_sender = sender;
|
||||||
|
_logger = logger;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="request"></param>
|
||||||
|
/// <param name="next"></param>
|
||||||
|
/// <param name="cancel"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
public async Task<byte[]> Handle(BurnPdfCommand request, RequestHandlerDelegate<byte[]> next, CancellationToken cancel)
|
||||||
|
{
|
||||||
|
if (!request.Debug)
|
||||||
|
await _sender.Send(new CreateHistoryCommand()
|
||||||
|
{
|
||||||
|
EnvelopeId = request.EnvelopeId,
|
||||||
|
UserReference = "System",
|
||||||
|
Status = EnvelopeStatus.EnvelopeReportCreated,
|
||||||
|
}, cancel);
|
||||||
|
|
||||||
|
return await next(cancel);
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user