signature client

This commit is contained in:
Paul Schneider 2016-12-07 00:09:12 +01:00
commit 58e1bdd47c
2 changed files with 25 additions and 6 deletions

View file

@ -12,6 +12,7 @@ namespace Yavsc.ApiControllers
using System.Threading.Tasks;
using Microsoft.Extensions.Logging;
using System;
using System.Security.Claims;
[Route("api/pdfestimate"), Authorize]
public class PdfEstimateController : Controller
@ -80,20 +81,39 @@ namespace Yavsc.ApiControllers
[HttpPost("prosign/{id}")]
public async Task<IActionResult> ProSign(long id)
{
var uid = User.GetUserId();
var estimate = dbContext.Estimates.Include(
e=>e.Query
).FirstOrDefault(e=>e.Id == id);
logger.LogWarning("I Was here");
).FirstOrDefault(e=>e.Id == id && e.OwnerId == uid );
if (!await authorizationService.AuthorizeAsync(User, estimate, new ViewRequirement()))
{
return new ChallengeResult();
}
if (Request.Form.Files.Count!=1)
return new BadRequestResult();
User.ReceiveProSignature(id,Request.Form.Files[0]);
User.ReceiveSignature(id,Request.Form.Files[0],"pro");
estimate.ProviderValidationDate = DateTime.Now;
dbContext.SaveChanges();
return Ok (new { ProviderValidationDate = estimate.ProviderValidationDate });
}
[HttpPost("clisign/{id}")]
public async Task<IActionResult> CliSign(long id)
{
var uid = User.GetUserId();
var estimate = dbContext.Estimates.Include( e=>e.Query
).FirstOrDefault( e=> e.Id == id && e.Query.ClientId == uid );
if (!await authorizationService.AuthorizeAsync(User, estimate, new ViewRequirement()))
{
return new ChallengeResult();
}
if (Request.Form.Files.Count!=1)
return new BadRequestResult();
User.ReceiveSignature(id,Request.Form.Files[0],"cli");
estimate.ClientValidationDate = DateTime.Now;
dbContext.SaveChanges();
return Ok (new { ClientValidationDate = estimate.ClientValidationDate });
}
}
}