droits d'accès
This commit is contained in:
@ -1,6 +1,8 @@
|
|||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
using System.Security.Claims;
|
||||||
|
using Microsoft.AspNet.Authorization;
|
||||||
using Microsoft.AspNet.FileProviders;
|
using Microsoft.AspNet.FileProviders;
|
||||||
using Microsoft.AspNet.Http;
|
using Microsoft.AspNet.Http;
|
||||||
using Microsoft.AspNet.Mvc;
|
using Microsoft.AspNet.Mvc;
|
||||||
@ -9,9 +11,11 @@ using Microsoft.Extensions.OptionsModel;
|
|||||||
using Yavsc.Helpers;
|
using Yavsc.Helpers;
|
||||||
using Yavsc.Models;
|
using Yavsc.Models;
|
||||||
using Yavsc.Models.Billing;
|
using Yavsc.Models.Billing;
|
||||||
|
using Yavsc.Models.Booking;
|
||||||
|
|
||||||
namespace Yavsc.Controllers
|
namespace Yavsc.Controllers
|
||||||
{
|
{
|
||||||
|
[Authorize]
|
||||||
public class EstimateController : Controller
|
public class EstimateController : Controller
|
||||||
{
|
{
|
||||||
private ApplicationDbContext _context;
|
private ApplicationDbContext _context;
|
||||||
@ -24,14 +28,19 @@ namespace Yavsc.Controllers
|
|||||||
}
|
}
|
||||||
|
|
||||||
// GET: Estimate
|
// GET: Estimate
|
||||||
|
|
||||||
public IActionResult Index()
|
public IActionResult Index()
|
||||||
{
|
{
|
||||||
return View(_context.Estimates.ToList());
|
var uid = User.GetUserId();
|
||||||
|
return View(_context.Estimates.Where(
|
||||||
|
e=>e.OwnerId == uid || e.ClientId == uid
|
||||||
|
).ToList());
|
||||||
}
|
}
|
||||||
|
|
||||||
// GET: Estimate/Details/5
|
// GET: Estimate/Details/5
|
||||||
public IActionResult Details(long? id)
|
public IActionResult Details(long? id)
|
||||||
{
|
{
|
||||||
|
var uid = User.GetUserId();
|
||||||
if (id == null)
|
if (id == null)
|
||||||
{
|
{
|
||||||
return HttpNotFound();
|
return HttpNotFound();
|
||||||
@ -41,20 +50,32 @@ namespace Yavsc.Controllers
|
|||||||
.Include(e => e.Query)
|
.Include(e => e.Query)
|
||||||
.Include(e => e.Query.PerformerProfile)
|
.Include(e => e.Query.PerformerProfile)
|
||||||
.Include(e => e.Query.PerformerProfile.Performer)
|
.Include(e => e.Query.PerformerProfile.Performer)
|
||||||
|
.Where(
|
||||||
|
e=>e.OwnerId == uid || e.ClientId == uid
|
||||||
|
)
|
||||||
.Single(m => m.Id == id);
|
.Single(m => m.Id == id);
|
||||||
if (estimate == null)
|
if (estimate == null)
|
||||||
{
|
{
|
||||||
return HttpNotFound();
|
return HttpNotFound();
|
||||||
}
|
}
|
||||||
|
DirectoryInfo di = new DirectoryInfo(_site.UserFiles.DirName);
|
||||||
|
|
||||||
ViewBag.Files = estimate.GetFileContent(_site.UserFiles.DirName);
|
|
||||||
|
ViewBag.Files = estimate.GetFileContent(di.FullName);
|
||||||
return View(estimate);
|
return View(estimate);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// GET: Estimate/Create
|
// GET: Estimate/Create
|
||||||
|
[Authorize]
|
||||||
public IActionResult Create()
|
public IActionResult Create()
|
||||||
{
|
{
|
||||||
|
var uid = User.GetUserId();
|
||||||
|
IQueryable<BookQuery> queries = _context.BookQueries.Include(q=>q.Location).Where(bq=>bq.PerformerId == uid);
|
||||||
|
//.Select(bq=>new SelectListItem{ Text = bq.Client.UserName, Value = bq.Client.Id });
|
||||||
|
ViewBag.Clients = queries.Select(q=>q.Client).Distinct();
|
||||||
|
ViewBag.Queries = queries;
|
||||||
|
|
||||||
return View();
|
return View();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -66,6 +87,7 @@ namespace Yavsc.Controllers
|
|||||||
ICollection<IFormFile> newFiles
|
ICollection<IFormFile> newFiles
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
estimate.OwnerId = User.GetUserId();
|
||||||
if (ModelState.IsValid)
|
if (ModelState.IsValid)
|
||||||
{
|
{
|
||||||
_context.Estimates
|
_context.Estimates
|
||||||
@ -114,8 +136,10 @@ namespace Yavsc.Controllers
|
|||||||
{
|
{
|
||||||
return HttpNotFound();
|
return HttpNotFound();
|
||||||
}
|
}
|
||||||
|
var uid = User.GetUserId();
|
||||||
|
|
||||||
Estimate estimate = _context.Estimates.Single(m => m.Id == id);
|
Estimate estimate = _context.Estimates
|
||||||
|
.Where(e=>e.OwnerId==uid||e.ClientId==uid).Single(m => m.Id == id);
|
||||||
if (estimate == null)
|
if (estimate == null)
|
||||||
{
|
{
|
||||||
return HttpNotFound();
|
return HttpNotFound();
|
||||||
@ -129,6 +153,9 @@ namespace Yavsc.Controllers
|
|||||||
[ValidateAntiForgeryToken]
|
[ValidateAntiForgeryToken]
|
||||||
public IActionResult Edit(Estimate estimate)
|
public IActionResult Edit(Estimate estimate)
|
||||||
{
|
{
|
||||||
|
var uid = User.GetUserId();
|
||||||
|
if (estimate.OwnerId!=uid&&estimate.ClientId!=uid
|
||||||
|
) return new HttpNotFoundResult();
|
||||||
if (ModelState.IsValid)
|
if (ModelState.IsValid)
|
||||||
{
|
{
|
||||||
_context.Update(estimate);
|
_context.Update(estimate);
|
||||||
@ -146,8 +173,10 @@ namespace Yavsc.Controllers
|
|||||||
{
|
{
|
||||||
return HttpNotFound();
|
return HttpNotFound();
|
||||||
}
|
}
|
||||||
|
var uid = User.GetUserId();
|
||||||
|
|
||||||
Estimate estimate = _context.Estimates.Single(m => m.Id == id);
|
Estimate estimate = _context.Estimates
|
||||||
|
.Where(e=>e.OwnerId==uid||e.ClientId==uid) .Single(m => m.Id == id);
|
||||||
if (estimate == null)
|
if (estimate == null)
|
||||||
{
|
{
|
||||||
return HttpNotFound();
|
return HttpNotFound();
|
||||||
|
Reference in New Issue
Block a user