signature client

vnext
Paul Schneider 8 years ago
parent adbaa961b0
commit a13fc739b5
2 changed files with 25 additions and 6 deletions

@ -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 });
}
}
}

@ -169,11 +169,10 @@ namespace Yavsc.Helpers
dir, xsmallname), ImageFormat.Png);
}
}
public static FileRecievedInfo ReceiveProSignature(this ClaimsPrincipal user, long estimateId, IFormFile formFile)
public static FileRecievedInfo ReceiveSignature(this ClaimsPrincipal user, long estimateId, IFormFile formFile, string signtype)
{
var item = new FileRecievedInfo();
item.FileName = $"estimate-prosign-{estimateId}.png";
item.FileName = $"estimate-{signtype}sign-{estimateId}.png";
var destFileName = Path.Combine(Startup.SiteSetup.UserFiles.Bills, item.FileName);
var fi = new FileInfo(destFileName);

Loading…