signature client
This commit is contained in:
parent
cf81e8308f
commit
58e1bdd47c
2 changed files with 25 additions and 6 deletions
|
|
@ -12,6 +12,7 @@ namespace Yavsc.ApiControllers
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Microsoft.Extensions.Logging;
|
using Microsoft.Extensions.Logging;
|
||||||
using System;
|
using System;
|
||||||
|
using System.Security.Claims;
|
||||||
|
|
||||||
[Route("api/pdfestimate"), Authorize]
|
[Route("api/pdfestimate"), Authorize]
|
||||||
public class PdfEstimateController : Controller
|
public class PdfEstimateController : Controller
|
||||||
|
|
@ -80,20 +81,39 @@ namespace Yavsc.ApiControllers
|
||||||
[HttpPost("prosign/{id}")]
|
[HttpPost("prosign/{id}")]
|
||||||
public async Task<IActionResult> ProSign(long id)
|
public async Task<IActionResult> ProSign(long id)
|
||||||
{
|
{
|
||||||
|
var uid = User.GetUserId();
|
||||||
var estimate = dbContext.Estimates.Include(
|
var estimate = dbContext.Estimates.Include(
|
||||||
e=>e.Query
|
e=>e.Query
|
||||||
).FirstOrDefault(e=>e.Id == id);
|
).FirstOrDefault(e=>e.Id == id && e.OwnerId == uid );
|
||||||
logger.LogWarning("I Was here");
|
|
||||||
if (!await authorizationService.AuthorizeAsync(User, estimate, new ViewRequirement()))
|
if (!await authorizationService.AuthorizeAsync(User, estimate, new ViewRequirement()))
|
||||||
{
|
{
|
||||||
return new ChallengeResult();
|
return new ChallengeResult();
|
||||||
}
|
}
|
||||||
if (Request.Form.Files.Count!=1)
|
if (Request.Form.Files.Count!=1)
|
||||||
return new BadRequestResult();
|
return new BadRequestResult();
|
||||||
User.ReceiveProSignature(id,Request.Form.Files[0]);
|
User.ReceiveSignature(id,Request.Form.Files[0],"pro");
|
||||||
estimate.ProviderValidationDate = DateTime.Now;
|
estimate.ProviderValidationDate = DateTime.Now;
|
||||||
dbContext.SaveChanges();
|
dbContext.SaveChanges();
|
||||||
return Ok (new { ProviderValidationDate = estimate.ProviderValidationDate });
|
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);
|
dir, xsmallname), ImageFormat.Png);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
public static FileRecievedInfo ReceiveSignature(this ClaimsPrincipal user, long estimateId, IFormFile formFile, string signtype)
|
||||||
public static FileRecievedInfo ReceiveProSignature(this ClaimsPrincipal user, long estimateId, IFormFile formFile)
|
|
||||||
{
|
{
|
||||||
var item = new FileRecievedInfo();
|
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 destFileName = Path.Combine(Startup.SiteSetup.UserFiles.Bills, item.FileName);
|
||||||
|
|
||||||
var fi = new FileInfo(destFileName);
|
var fi = new FileInfo(destFileName);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue