Module Creator external template changes for 2.1 - supporting mutliple databases, EF Core migrations, and other multi-tenancy improvements

This commit is contained in:
Shaun Walker
2021-05-28 17:01:25 -04:00
parent 8529a42075
commit 54a639d1d5
12 changed files with 109 additions and 73 deletions

View File

@ -5,27 +5,19 @@ using Microsoft.AspNetCore.Http;
using Oqtane.Shared;
using Oqtane.Enums;
using Oqtane.Infrastructure;
using [Owner].[Module].Models;
using [Owner].[Module].Repository;
using Oqtane.Controllers;
namespace [Owner].[Module].Controllers
{
[Route(ControllerRoutes.Default)]
public class [Module]Controller : Controller
[Route(ControllerRoutes.ApiRoute)]
public class [Module]Controller : ModuleControllerBase
{
private readonly I[Module]Repository _[Module]Repository;
private readonly ILogManager _logger;
protected int _entityId = -1;
public [Module]Controller(I[Module]Repository [Module]Repository, ILogManager logger, IHttpContextAccessor accessor)
public [Module]Controller(I[Module]Repository [Module]Repository, ILogManager logger, IHttpContextAccessor accessor) : base(logger, accessor)
{
_[Module]Repository = [Module]Repository;
_logger = logger;
if (accessor.HttpContext.Request.Query.ContainsKey("entityid"))
{
_entityId = int.Parse(accessor.HttpContext.Request.Query["entityid"]);
}
}
// GET: api/<controller>?moduleid=x
@ -33,7 +25,14 @@ namespace [Owner].[Module].Controllers
[Authorize(Policy = PolicyNames.ViewModule)]
public IEnumerable<Models.[Module]> Get(string moduleid)
{
return _[Module]Repository.Get[Module]s(int.Parse(moduleid));
if (int.Parse(moduleid) == _entityId)
{
return _[Module]Repository.Get[Module]s(int.Parse(moduleid));
}
else
{
return null;
}
}
// GET api/<controller>/5