Jonathan Jenne 1b88a6cff7 29-11-2023
2023-11-29 16:15:48 +01:00

46 lines
1.4 KiB
C#

using EnvelopeGenerator.Common;
using EnvelopeGenerator.Web.Services;
using Microsoft.AspNetCore.Mvc;
using static EnvelopeGenerator.Common.Constants;
namespace EnvelopeGenerator.Web.Controllers
{
public class HistoryController : BaseController
{
private readonly EnvelopeService envelopeService;
public HistoryController(DatabaseService database, LoggingService logging, EnvelopeService envelope) : base(database, logging)
{
envelopeService = envelope;
}
[HttpPost]
[Route("api/history/{envelopeKey}")]
public IActionResult Get(string envelopeKey)
{
try
{
logger.Info("HistoryController/Post");
// Validate Envelope Key and load envelope
envelopeService.EnsureValidEnvelopeKey(envelopeKey);
EnvelopeResponse response = envelopeService.LoadEnvelope(envelopeKey);
envelopeService.InsertHistoryEntry(new EnvelopeHistoryEntry()
{
ActionDate = DateTime.Now,
Status = EnvelopeStatus.DocumentOpened,
EnvelopeId = response.Envelope.Id,
UserReference = response.Receiver.Email
});
return Ok();
}
catch (Exception e)
{
return ErrorResponse(e);
}
}
}
}