Refactored repository pattern for Add and Update methods so that they return their respective entity objects
This commit is contained in:
parent
b9c007998e
commit
4fda7b17d0
|
@ -37,14 +37,14 @@ namespace Oqtane.Services
|
|||
return await http.GetJsonAsync<Alias>(apiurl + "/" + AliasId.ToString());
|
||||
}
|
||||
|
||||
public async Task AddAliasAsync(Alias alias)
|
||||
public async Task<Alias> AddAliasAsync(Alias alias)
|
||||
{
|
||||
await http.PostJsonAsync(apiurl, alias);
|
||||
return await http.PostJsonAsync<Alias>(apiurl, alias);
|
||||
}
|
||||
|
||||
public async Task UpdateAliasAsync(Alias alias)
|
||||
public async Task<Alias> UpdateAliasAsync(Alias alias)
|
||||
{
|
||||
await http.PutJsonAsync(apiurl + "/" + alias.AliasId.ToString(), alias);
|
||||
return await http.PutJsonAsync<Alias>(apiurl + "/" + alias.AliasId.ToString(), alias);
|
||||
}
|
||||
public async Task DeleteAliasAsync(int AliasId)
|
||||
{
|
||||
|
|
|
@ -10,9 +10,9 @@ namespace Oqtane.Services
|
|||
|
||||
Task<Alias> GetAliasAsync(int AliasId);
|
||||
|
||||
Task AddAliasAsync(Alias alias);
|
||||
Task<Alias> AddAliasAsync(Alias Alias);
|
||||
|
||||
Task UpdateAliasAsync(Alias alias);
|
||||
Task<Alias> UpdateAliasAsync(Alias Alias);
|
||||
|
||||
Task DeleteAliasAsync(int AliasId);
|
||||
}
|
||||
|
|
|
@ -9,8 +9,8 @@ namespace Oqtane.Services
|
|||
Task<List<Module>> GetModulesAsync(int PageId);
|
||||
Task<List<Module>> GetModulesAsync(int SiteId, string ModuleDefinitionName);
|
||||
Task<Module> GetModuleAsync(int ModuleId);
|
||||
Task AddModuleAsync(Module module);
|
||||
Task UpdateModuleAsync(Module module);
|
||||
Task<Module> AddModuleAsync(Module Module);
|
||||
Task<Module> UpdateModuleAsync(Module Module);
|
||||
Task DeleteModuleAsync(int ModuleId);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,8 +7,8 @@ namespace Oqtane.Services
|
|||
public interface IPageModuleService
|
||||
{
|
||||
Task<List<PageModule>> GetPageModulesAsync();
|
||||
Task AddPageModuleAsync(PageModule pagemodule);
|
||||
Task UpdatePageModuleAsync(PageModule pagemodule);
|
||||
Task<PageModule> AddPageModuleAsync(PageModule PageModule);
|
||||
Task<PageModule> UpdatePageModuleAsync(PageModule PageModule);
|
||||
Task DeletePageModuleAsync(int PageModuleId);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -8,8 +8,8 @@ namespace Oqtane.Services
|
|||
{
|
||||
Task<List<Page>> GetPagesAsync(int SiteId);
|
||||
Task<Page> GetPageAsync(int PageId);
|
||||
Task AddPageAsync(Page page);
|
||||
Task UpdatePageAsync(Page page);
|
||||
Task<Page> AddPageAsync(Page Page);
|
||||
Task<Page> UpdatePageAsync(Page Page);
|
||||
Task DeletePageAsync(int PageId);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -10,9 +10,9 @@ namespace Oqtane.Services
|
|||
|
||||
Task<Site> GetSiteAsync(int SiteId);
|
||||
|
||||
Task AddSiteAsync(Site site);
|
||||
Task<Site> AddSiteAsync(Site Site);
|
||||
|
||||
Task UpdateSiteAsync(Site site);
|
||||
Task<Site> UpdateSiteAsync(Site Site);
|
||||
|
||||
Task DeleteSiteAsync(int SiteId);
|
||||
}
|
||||
|
|
|
@ -12,18 +12,18 @@ namespace Oqtane.Services
|
|||
|
||||
Task<User> GetUserAsync(string Username);
|
||||
|
||||
Task AddUserAsync(User user);
|
||||
Task<User> AddUserAsync(User User);
|
||||
|
||||
Task UpdateUserAsync(User user);
|
||||
Task<User> UpdateUserAsync(User User);
|
||||
|
||||
Task DeleteUserAsync(int UserId);
|
||||
|
||||
Task<User> GetCurrentUserAsync();
|
||||
|
||||
Task<User> LoginUserAsync(User user);
|
||||
Task<User> LoginUserAsync(User User);
|
||||
|
||||
Task LogoutUserAsync();
|
||||
|
||||
bool IsAuthorized(User user, string accesscontrollist);
|
||||
bool IsAuthorized(User User, string AccessControlList);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -46,14 +46,14 @@ namespace Oqtane.Services
|
|||
return await http.GetJsonAsync<Module>(apiurl + "/" + ModuleId.ToString());
|
||||
}
|
||||
|
||||
public async Task AddModuleAsync(Module module)
|
||||
public async Task<Module> AddModuleAsync(Module Module)
|
||||
{
|
||||
await http.PostJsonAsync(apiurl, module);
|
||||
return await http.PostJsonAsync<Module>(apiurl, Module);
|
||||
}
|
||||
|
||||
public async Task UpdateModuleAsync(Module module)
|
||||
public async Task<Module> UpdateModuleAsync(Module Module)
|
||||
{
|
||||
await http.PutJsonAsync(apiurl + "/" + module.ModuleId.ToString(), module);
|
||||
return await http.PutJsonAsync<Module>(apiurl + "/" + Module.ModuleId.ToString(), Module);
|
||||
}
|
||||
|
||||
public async Task DeleteModuleAsync(int ModuleId)
|
||||
|
|
|
@ -31,14 +31,14 @@ namespace Oqtane.Services
|
|||
return await http.GetJsonAsync<List<PageModule>>(apiurl);
|
||||
}
|
||||
|
||||
public async Task AddPageModuleAsync(PageModule pagemodule)
|
||||
public async Task<PageModule> AddPageModuleAsync(PageModule PageModule)
|
||||
{
|
||||
await http.PostJsonAsync(apiurl, pagemodule);
|
||||
return await http.PostJsonAsync<PageModule>(apiurl, PageModule);
|
||||
}
|
||||
|
||||
public async Task UpdatePageModuleAsync(PageModule pagemodule)
|
||||
public async Task<PageModule> UpdatePageModuleAsync(PageModule PageModule)
|
||||
{
|
||||
await http.PutJsonAsync(apiurl + "/" + pagemodule.PageModuleId.ToString(), pagemodule);
|
||||
return await http.PutJsonAsync<PageModule>(apiurl + "/" + PageModule.PageModuleId.ToString(), PageModule);
|
||||
}
|
||||
|
||||
public async Task DeletePageModuleAsync(int PageModuleId)
|
||||
|
|
|
@ -37,14 +37,14 @@ namespace Oqtane.Services
|
|||
return await http.GetJsonAsync<Page>(apiurl + "/" + PageId.ToString());
|
||||
}
|
||||
|
||||
public async Task AddPageAsync(Page page)
|
||||
public async Task<Page> AddPageAsync(Page Page)
|
||||
{
|
||||
await http.PostJsonAsync(apiurl, page);
|
||||
return await http.PostJsonAsync<Page>(apiurl, Page);
|
||||
}
|
||||
|
||||
public async Task UpdatePageAsync(Page page)
|
||||
public async Task<Page> UpdatePageAsync(Page Page)
|
||||
{
|
||||
await http.PutJsonAsync(apiurl + "/" + page.PageId.ToString(), page);
|
||||
return await http.PutJsonAsync<Page>(apiurl + "/" + Page.PageId.ToString(), Page);
|
||||
}
|
||||
public async Task DeletePageAsync(int PageId)
|
||||
{
|
||||
|
|
|
@ -37,14 +37,14 @@ namespace Oqtane.Services
|
|||
return await http.GetJsonAsync<Site>(apiurl + "/" + SiteId.ToString());
|
||||
}
|
||||
|
||||
public async Task AddSiteAsync(Site site)
|
||||
public async Task<Site> AddSiteAsync(Site Site)
|
||||
{
|
||||
await http.PostJsonAsync(apiurl, site);
|
||||
return await http.PostJsonAsync<Site>(apiurl, Site);
|
||||
}
|
||||
|
||||
public async Task UpdateSiteAsync(Site site)
|
||||
public async Task<Site> UpdateSiteAsync(Site Site)
|
||||
{
|
||||
await http.PutJsonAsync(apiurl + "/" + site.SiteId.ToString(), site);
|
||||
return await http.PutJsonAsync<Site>(apiurl + "/" + Site.SiteId.ToString(), Site);
|
||||
}
|
||||
public async Task DeleteSiteAsync(int SiteId)
|
||||
{
|
||||
|
|
|
@ -43,14 +43,14 @@ namespace Oqtane.Services
|
|||
return await http.GetJsonAsync<User>(apiurl + "/name/" + Username);
|
||||
}
|
||||
|
||||
public async Task AddUserAsync(User user)
|
||||
public async Task<User> AddUserAsync(User User)
|
||||
{
|
||||
await http.PostJsonAsync(apiurl, user);
|
||||
return await http.PostJsonAsync<User>(apiurl, User);
|
||||
}
|
||||
|
||||
public async Task UpdateUserAsync(User user)
|
||||
public async Task<User> UpdateUserAsync(User User)
|
||||
{
|
||||
await http.PutJsonAsync(apiurl + "/" + user.UserId.ToString(), user);
|
||||
return await http.PutJsonAsync<User>(apiurl + "/" + User.UserId.ToString(), User);
|
||||
}
|
||||
public async Task DeleteUserAsync(int UserId)
|
||||
{
|
||||
|
@ -62,9 +62,9 @@ namespace Oqtane.Services
|
|||
return await http.GetJsonAsync<User>(apiurl + "/current");
|
||||
}
|
||||
|
||||
public async Task<User> LoginUserAsync(User user)
|
||||
public async Task<User> LoginUserAsync(User User)
|
||||
{
|
||||
return await http.PostJsonAsync<User>(apiurl + "/login", user);
|
||||
return await http.PostJsonAsync<User>(apiurl + "/login", User);
|
||||
}
|
||||
|
||||
public async Task LogoutUserAsync()
|
||||
|
@ -74,23 +74,23 @@ namespace Oqtane.Services
|
|||
}
|
||||
|
||||
// ACLs are stored in the format "!rolename1;![userid1];rolename2;rolename3;[userid2];[userid3]" where "!" designates Deny permissions
|
||||
public bool IsAuthorized(User user, string accesscontrollist)
|
||||
public bool IsAuthorized(User User, string AccessControlList)
|
||||
{
|
||||
bool isAllowed = false;
|
||||
|
||||
if (user != null)
|
||||
if (User != null)
|
||||
{
|
||||
//super user always has full access
|
||||
isAllowed = user.IsSuperUser;
|
||||
isAllowed = User.IsSuperUser;
|
||||
}
|
||||
|
||||
if (!isAllowed)
|
||||
{
|
||||
if (accesscontrollist != null)
|
||||
if (AccessControlList != null)
|
||||
{
|
||||
foreach (string permission in accesscontrollist.Split(new[] { ';' }))
|
||||
foreach (string permission in AccessControlList.Split(new[] { ';' }))
|
||||
{
|
||||
bool? allowed = VerifyPermission(user, permission);
|
||||
bool? allowed = VerifyPermission(User, permission);
|
||||
if (allowed.HasValue)
|
||||
{
|
||||
isAllowed = allowed.Value;
|
||||
|
|
|
@ -117,7 +117,6 @@
|
|||
private string DatabaseType = "LocalDB";
|
||||
private string ServerName = "(LocalDb)\\MSSQLLocalDB";
|
||||
private string DatabaseName = "Oqtane-" + DateTime.Now.ToString("yyyyMMddHHmm");
|
||||
private bool IntegratedSecurity = true;
|
||||
private string Username = "";
|
||||
private string Password = "";
|
||||
private string HostUsername = "host";
|
||||
|
|
|
@ -31,18 +31,24 @@ namespace Oqtane.Controllers
|
|||
|
||||
// POST api/<controller>
|
||||
[HttpPost]
|
||||
public void Post([FromBody] Alias alias)
|
||||
public Alias Post([FromBody] Alias Alias)
|
||||
{
|
||||
if (ModelState.IsValid)
|
||||
aliases.AddAlias(alias);
|
||||
{
|
||||
Alias = aliases.AddAlias(Alias);
|
||||
}
|
||||
return Alias;
|
||||
}
|
||||
|
||||
// PUT api/<controller>/5
|
||||
[HttpPut("{id}")]
|
||||
public void Put(int id, [FromBody] Alias alias)
|
||||
public Alias Put(int id, [FromBody] Alias Alias)
|
||||
{
|
||||
if (ModelState.IsValid)
|
||||
aliases.UpdateAlias(alias);
|
||||
{
|
||||
Alias = aliases.UpdateAlias(Alias);
|
||||
}
|
||||
return Alias;
|
||||
}
|
||||
|
||||
// DELETE api/<controller>/5
|
||||
|
|
|
@ -53,18 +53,24 @@ namespace Oqtane.Controllers
|
|||
|
||||
// POST api/<controller>
|
||||
[HttpPost]
|
||||
public void Post([FromBody] Module Module)
|
||||
public Module Post([FromBody] Module Module)
|
||||
{
|
||||
if (ModelState.IsValid)
|
||||
modules.AddModule(Module);
|
||||
{
|
||||
Module = modules.AddModule(Module);
|
||||
}
|
||||
return Module;
|
||||
}
|
||||
|
||||
// PUT api/<controller>/5
|
||||
[HttpPut("{id}")]
|
||||
public void Put(int id, [FromBody] Module Module)
|
||||
public Module Put(int id, [FromBody] Module Module)
|
||||
{
|
||||
if (ModelState.IsValid)
|
||||
modules.UpdateModule(Module);
|
||||
{
|
||||
Module = modules.UpdateModule(Module);
|
||||
}
|
||||
return Module;
|
||||
}
|
||||
|
||||
// DELETE api/<controller>/5
|
||||
|
|
|
@ -38,18 +38,24 @@ namespace Oqtane.Controllers
|
|||
|
||||
// POST api/<controller>
|
||||
[HttpPost]
|
||||
public void Post([FromBody] Page Page)
|
||||
public Page Post([FromBody] Page Page)
|
||||
{
|
||||
if (ModelState.IsValid)
|
||||
pages.AddPage(Page);
|
||||
{
|
||||
Page = pages.AddPage(Page);
|
||||
}
|
||||
return Page;
|
||||
}
|
||||
|
||||
// PUT api/<controller>/5
|
||||
[HttpPut("{id}")]
|
||||
public void Put(int id, [FromBody] Page Page)
|
||||
public Page Put(int id, [FromBody] Page Page)
|
||||
{
|
||||
if (ModelState.IsValid)
|
||||
pages.UpdatePage(Page);
|
||||
{
|
||||
Page = pages.UpdatePage(Page);
|
||||
}
|
||||
return Page;
|
||||
}
|
||||
|
||||
// DELETE api/<controller>/5
|
||||
|
|
|
@ -31,18 +31,24 @@ namespace Oqtane.Controllers
|
|||
|
||||
// POST api/<controller>
|
||||
[HttpPost]
|
||||
public void Post([FromBody] PageModule PageModule)
|
||||
public PageModule Post([FromBody] PageModule PageModule)
|
||||
{
|
||||
if (ModelState.IsValid)
|
||||
pagemodules.AddPageModule(PageModule);
|
||||
{
|
||||
PageModule = pagemodules.AddPageModule(PageModule);
|
||||
}
|
||||
return PageModule;
|
||||
}
|
||||
|
||||
// PUT api/<controller>/5
|
||||
[HttpPut("{id}")]
|
||||
public void Put(int id, [FromBody] PageModule PageModule)
|
||||
public PageModule Put(int id, [FromBody] PageModule PageModule)
|
||||
{
|
||||
if (ModelState.IsValid)
|
||||
pagemodules.UpdatePageModule(PageModule);
|
||||
{
|
||||
PageModule = pagemodules.UpdatePageModule(PageModule);
|
||||
}
|
||||
return PageModule;
|
||||
}
|
||||
|
||||
// DELETE api/<controller>/5
|
||||
|
|
|
@ -31,18 +31,24 @@ namespace Oqtane.Controllers
|
|||
|
||||
// POST api/<controller>
|
||||
[HttpPost]
|
||||
public void Post([FromBody] Site site)
|
||||
public Site Post([FromBody] Site Site)
|
||||
{
|
||||
if (ModelState.IsValid)
|
||||
sites.AddSite(site);
|
||||
{
|
||||
Site = sites.AddSite(Site);
|
||||
}
|
||||
return Site;
|
||||
}
|
||||
|
||||
// PUT api/<controller>/5
|
||||
[HttpPut("{id}")]
|
||||
public void Put(int id, [FromBody] Site site)
|
||||
public Site Put(int id, [FromBody] Site Site)
|
||||
{
|
||||
if (ModelState.IsValid)
|
||||
sites.UpdateSite(site);
|
||||
{
|
||||
Site = sites.UpdateSite(Site);
|
||||
}
|
||||
return Site;
|
||||
}
|
||||
|
||||
// DELETE api/<controller>/5
|
||||
|
|
|
@ -31,18 +31,24 @@ namespace Oqtane.Controllers
|
|||
|
||||
// POST api/<controller>
|
||||
[HttpPost]
|
||||
public void Post([FromBody] Tenant site)
|
||||
public Tenant Post([FromBody] Tenant Tenant)
|
||||
{
|
||||
if (ModelState.IsValid)
|
||||
tenants.AddTenant(site);
|
||||
{
|
||||
Tenant = tenants.AddTenant(Tenant);
|
||||
}
|
||||
return Tenant;
|
||||
}
|
||||
|
||||
// PUT api/<controller>/5
|
||||
[HttpPut("{id}")]
|
||||
public void Put(int id, [FromBody] Tenant site)
|
||||
public Tenant Put(int id, [FromBody] Tenant Tenant)
|
||||
{
|
||||
if (ModelState.IsValid)
|
||||
tenants.UpdateTenant(site);
|
||||
{
|
||||
Tenant = tenants.UpdateTenant(Tenant);
|
||||
}
|
||||
return Tenant;
|
||||
}
|
||||
|
||||
// DELETE api/<controller>/5
|
||||
|
|
|
@ -4,8 +4,6 @@ using Oqtane.Repository;
|
|||
using Oqtane.Models;
|
||||
using Microsoft.AspNetCore.Identity;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.Extensions.Primitives;
|
||||
using System.Security.Claims;
|
||||
|
||||
namespace Oqtane.Controllers
|
||||
{
|
||||
|
@ -39,33 +37,35 @@ namespace Oqtane.Controllers
|
|||
|
||||
// POST api/<controller>
|
||||
[HttpPost]
|
||||
public async Task Post([FromBody] User user)
|
||||
public async Task<User> Post([FromBody] User User)
|
||||
{
|
||||
if (ModelState.IsValid)
|
||||
{
|
||||
IdentityUser identityuser = await identityUserManager.FindByNameAsync(user.Username);
|
||||
IdentityUser identityuser = await identityUserManager.FindByNameAsync(User.Username);
|
||||
if (identityuser == null)
|
||||
{
|
||||
identityuser = new IdentityUser();
|
||||
identityuser.UserName = user.Username;
|
||||
identityuser.Email = user.Username;
|
||||
var result = await identityUserManager.CreateAsync(identityuser, user.Password);
|
||||
identityuser.UserName = User.Username;
|
||||
identityuser.Email = User.Username;
|
||||
var result = await identityUserManager.CreateAsync(identityuser, User.Password);
|
||||
if (result.Succeeded)
|
||||
{
|
||||
users.AddUser(user);
|
||||
User = users.AddUser(User);
|
||||
}
|
||||
}
|
||||
}
|
||||
return User;
|
||||
}
|
||||
|
||||
// PUT api/<controller>/5
|
||||
[HttpPut("{id}")]
|
||||
public void Put(int id, [FromBody] User user)
|
||||
public User Put(int id, [FromBody] User User)
|
||||
{
|
||||
if (ModelState.IsValid)
|
||||
{
|
||||
users.UpdateUser(user);
|
||||
User = users.UpdateUser(User);
|
||||
}
|
||||
return User;
|
||||
}
|
||||
|
||||
// DELETE api/<controller>/5
|
||||
|
|
|
@ -31,18 +31,24 @@ namespace Oqtane.Server.Modules.HtmlText.Controllers
|
|||
|
||||
// POST api/<controller>
|
||||
[HttpPost]
|
||||
public void Post([FromBody] HtmlTextInfo HtmlText)
|
||||
public HtmlTextInfo Post([FromBody] HtmlTextInfo HtmlText)
|
||||
{
|
||||
if (ModelState.IsValid)
|
||||
htmltext.AddHtmlText(HtmlText);
|
||||
{
|
||||
HtmlText = htmltext.AddHtmlText(HtmlText);
|
||||
}
|
||||
return HtmlText;
|
||||
}
|
||||
|
||||
// PUT api/<controller>/5
|
||||
[HttpPut("{id}")]
|
||||
public void Put(int id, [FromBody] HtmlTextInfo HtmlText)
|
||||
public HtmlTextInfo Put(int id, [FromBody] HtmlTextInfo HtmlText)
|
||||
{
|
||||
if (ModelState.IsValid)
|
||||
htmltext.UpdateHtmlText(HtmlText);
|
||||
{
|
||||
HtmlText = htmltext.UpdateHtmlText(HtmlText);
|
||||
}
|
||||
return HtmlText;
|
||||
}
|
||||
|
||||
// DELETE api/<controller>/5
|
||||
|
|
|
@ -27,12 +27,13 @@ namespace Oqtane.Server.Modules.HtmlText.Repository
|
|||
}
|
||||
}
|
||||
|
||||
public void AddHtmlText(HtmlTextInfo HtmlText)
|
||||
public HtmlTextInfo AddHtmlText(HtmlTextInfo HtmlText)
|
||||
{
|
||||
try
|
||||
{
|
||||
db.HtmlText.Add(HtmlText);
|
||||
db.SaveChanges();
|
||||
return HtmlText;
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
@ -40,12 +41,13 @@ namespace Oqtane.Server.Modules.HtmlText.Repository
|
|||
}
|
||||
}
|
||||
|
||||
public void UpdateHtmlText(HtmlTextInfo HtmlText)
|
||||
public HtmlTextInfo UpdateHtmlText(HtmlTextInfo HtmlText)
|
||||
{
|
||||
try
|
||||
{
|
||||
db.Entry(HtmlText).State = EntityState.Modified;
|
||||
db.SaveChanges();
|
||||
return HtmlText;
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
|
|
@ -6,8 +6,8 @@ namespace Oqtane.Server.Modules.HtmlText.Repository
|
|||
public interface IHtmlTextRepository
|
||||
{
|
||||
IEnumerable<HtmlTextInfo> GetHtmlText();
|
||||
void AddHtmlText(HtmlTextInfo HtmlText);
|
||||
void UpdateHtmlText(HtmlTextInfo HtmlText);
|
||||
HtmlTextInfo AddHtmlText(HtmlTextInfo HtmlText);
|
||||
HtmlTextInfo UpdateHtmlText(HtmlTextInfo HtmlText);
|
||||
HtmlTextInfo GetHtmlText(int HtmlTextIdId);
|
||||
void DeleteHtmlText(int HtmlTextId);
|
||||
}
|
||||
|
|
|
@ -35,12 +35,13 @@ namespace Oqtane.Repository
|
|||
}
|
||||
}
|
||||
|
||||
public void AddAlias(Alias alias)
|
||||
public Alias AddAlias(Alias Alias)
|
||||
{
|
||||
try
|
||||
{
|
||||
db.Alias.Add(alias);
|
||||
db.Alias.Add(Alias);
|
||||
db.SaveChanges();
|
||||
return Alias;
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
@ -48,12 +49,13 @@ namespace Oqtane.Repository
|
|||
}
|
||||
}
|
||||
|
||||
public void UpdateAlias(Alias alias)
|
||||
public Alias UpdateAlias(Alias Alias)
|
||||
{
|
||||
try
|
||||
{
|
||||
db.Entry(alias).State = EntityState.Modified;
|
||||
db.Entry(Alias).State = EntityState.Modified;
|
||||
db.SaveChanges();
|
||||
return Alias;
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
@ -61,11 +63,11 @@ namespace Oqtane.Repository
|
|||
}
|
||||
}
|
||||
|
||||
public Alias GetAlias(int aliasId)
|
||||
public Alias GetAlias(int AliasId)
|
||||
{
|
||||
try
|
||||
{
|
||||
Alias alias = db.Alias.Find(aliasId);
|
||||
Alias alias = db.Alias.Find(AliasId);
|
||||
return alias;
|
||||
}
|
||||
catch
|
||||
|
@ -74,11 +76,11 @@ namespace Oqtane.Repository
|
|||
}
|
||||
}
|
||||
|
||||
public void DeleteAlias(int aliasId)
|
||||
public void DeleteAlias(int AliasId)
|
||||
{
|
||||
try
|
||||
{
|
||||
Alias alias = db.Alias.Find(aliasId);
|
||||
Alias alias = db.Alias.Find(AliasId);
|
||||
db.Alias.Remove(alias);
|
||||
db.SaveChanges();
|
||||
}
|
||||
|
|
|
@ -6,9 +6,9 @@ namespace Oqtane.Repository
|
|||
public interface IAliasRepository
|
||||
{
|
||||
IEnumerable<Alias> GetAliases();
|
||||
void AddAlias(Alias alias);
|
||||
void UpdateAlias(Alias alias);
|
||||
Alias GetAlias(int aliasId);
|
||||
void DeleteAlias(int aliasId);
|
||||
Alias AddAlias(Alias Alias);
|
||||
Alias UpdateAlias(Alias Alias);
|
||||
Alias GetAlias(int AliasId);
|
||||
void DeleteAlias(int AliasId);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,8 +7,8 @@ namespace Oqtane.Repository
|
|||
{
|
||||
IEnumerable<Module> GetModules();
|
||||
IEnumerable<Module> GetModules(int SiteId, string ModuleDefinitionName);
|
||||
void AddModule(Module Module);
|
||||
void UpdateModule(Module Module);
|
||||
Module AddModule(Module Module);
|
||||
Module UpdateModule(Module Module);
|
||||
Module GetModule(int ModuleId);
|
||||
void DeleteModule(int ModuleId);
|
||||
}
|
||||
|
|
|
@ -7,8 +7,8 @@ namespace Oqtane.Repository
|
|||
{
|
||||
IEnumerable<PageModule> GetPageModules();
|
||||
IEnumerable<PageModule> GetPageModules(int PageId);
|
||||
void AddPageModule(PageModule PageModule);
|
||||
void UpdatePageModule(PageModule PageModule);
|
||||
PageModule AddPageModule(PageModule PageModule);
|
||||
PageModule UpdatePageModule(PageModule PageModule);
|
||||
PageModule GetPageModule(int PageModuleId);
|
||||
void DeletePageModule(int PageModuleId);
|
||||
}
|
||||
|
|
|
@ -7,8 +7,8 @@ namespace Oqtane.Repository
|
|||
{
|
||||
IEnumerable<Page> GetPages();
|
||||
IEnumerable<Page> GetPages(int SiteId);
|
||||
void AddPage(Page Page);
|
||||
void UpdatePage(Page Page);
|
||||
Page AddPage(Page Page);
|
||||
Page UpdatePage(Page Page);
|
||||
Page GetPage(int PageId);
|
||||
void DeletePage(int PageId);
|
||||
}
|
||||
|
|
|
@ -6,9 +6,9 @@ namespace Oqtane.Repository
|
|||
public interface ISiteRepository
|
||||
{
|
||||
IEnumerable<Site> GetSites();
|
||||
void AddSite(Site site);
|
||||
void UpdateSite(Site site);
|
||||
Site GetSite(int siteId);
|
||||
void DeleteSite(int siteId);
|
||||
Site AddSite(Site Site);
|
||||
Site UpdateSite(Site Site);
|
||||
Site GetSite(int SiteId);
|
||||
void DeleteSite(int SiteId);
|
||||
}
|
||||
}
|
||||
|
|
15
Oqtane.Server/Repository/ISiteUserRepository.cs
Normal file
15
Oqtane.Server/Repository/ISiteUserRepository.cs
Normal file
|
@ -0,0 +1,15 @@
|
|||
using System.Collections.Generic;
|
||||
using Oqtane.Models;
|
||||
|
||||
namespace Oqtane.Repository
|
||||
{
|
||||
public interface ISiteUserRepository
|
||||
{
|
||||
IEnumerable<SiteUser> GetSiteUsers();
|
||||
IEnumerable<SiteUser> GetSiteUsers(int SiteId, int UserId);
|
||||
SiteUser AddSiteUser(SiteUser SiteUser);
|
||||
SiteUser UpdateSiteUser(SiteUser SiteUser);
|
||||
SiteUser GetSiteUser(int SiteUserId);
|
||||
void DeleteSiteUser(int SiteUserId);
|
||||
}
|
||||
}
|
|
@ -6,9 +6,9 @@ namespace Oqtane.Repository
|
|||
public interface ITenantRepository
|
||||
{
|
||||
IEnumerable<Tenant> GetTenants();
|
||||
void AddTenant(Tenant tenant);
|
||||
void UpdateTenant(Tenant tenant);
|
||||
Tenant GetTenant(int tenantId);
|
||||
void DeleteTenant(int tenantId);
|
||||
Tenant AddTenant(Tenant Tenant);
|
||||
Tenant UpdateTenant(Tenant Tenant);
|
||||
Tenant GetTenant(int TenantId);
|
||||
void DeleteTenant(int TenantId);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,8 +6,8 @@ namespace Oqtane.Repository
|
|||
public interface IUserRepository
|
||||
{
|
||||
IEnumerable<User> GetUsers();
|
||||
void AddUser(User User);
|
||||
void UpdateUser(User User);
|
||||
User AddUser(User User);
|
||||
User UpdateUser(User User);
|
||||
User GetUser(int UserId);
|
||||
User GetUser(string Username);
|
||||
void DeleteUser(int UserId);
|
||||
|
|
|
@ -41,12 +41,13 @@ namespace Oqtane.Repository
|
|||
}
|
||||
}
|
||||
|
||||
public void AddModule(Module Module)
|
||||
public Module AddModule(Module Module)
|
||||
{
|
||||
try
|
||||
{
|
||||
db.Module.Add(Module);
|
||||
db.SaveChanges();
|
||||
return Module;
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
@ -54,12 +55,13 @@ namespace Oqtane.Repository
|
|||
}
|
||||
}
|
||||
|
||||
public void UpdateModule(Module Module)
|
||||
public Module UpdateModule(Module Module)
|
||||
{
|
||||
try
|
||||
{
|
||||
db.Entry(Module).State = EntityState.Modified;
|
||||
db.SaveChanges();
|
||||
return Module;
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
|
|
@ -40,12 +40,13 @@ namespace Oqtane.Repository
|
|||
}
|
||||
}
|
||||
|
||||
public void AddPageModule(PageModule PageModule)
|
||||
public PageModule AddPageModule(PageModule PageModule)
|
||||
{
|
||||
try
|
||||
{
|
||||
db.PageModule.Add(PageModule);
|
||||
db.SaveChanges();
|
||||
return PageModule;
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
@ -53,12 +54,13 @@ namespace Oqtane.Repository
|
|||
}
|
||||
}
|
||||
|
||||
public void UpdatePageModule(PageModule PageModule)
|
||||
public PageModule UpdatePageModule(PageModule PageModule)
|
||||
{
|
||||
try
|
||||
{
|
||||
db.Entry(PageModule).State = EntityState.Modified;
|
||||
db.SaveChanges();
|
||||
return PageModule;
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
|
|
@ -38,12 +38,13 @@ namespace Oqtane.Repository
|
|||
}
|
||||
}
|
||||
|
||||
public void AddPage(Page Page)
|
||||
public Page AddPage(Page Page)
|
||||
{
|
||||
try
|
||||
{
|
||||
db.Page.Add(Page);
|
||||
db.SaveChanges();
|
||||
return Page;
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
@ -51,12 +52,13 @@ namespace Oqtane.Repository
|
|||
}
|
||||
}
|
||||
|
||||
public void UpdatePage(Page Page)
|
||||
public Page UpdatePage(Page Page)
|
||||
{
|
||||
try
|
||||
{
|
||||
db.Entry(Page).State = EntityState.Modified;
|
||||
db.SaveChanges();
|
||||
return Page;
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
|
|
@ -26,12 +26,13 @@ namespace Oqtane.Repository
|
|||
}
|
||||
}
|
||||
|
||||
public void AddSite(Site site)
|
||||
public Site AddSite(Site Site)
|
||||
{
|
||||
try
|
||||
{
|
||||
db.Site.Add(site);
|
||||
db.Site.Add(Site);
|
||||
db.SaveChanges();
|
||||
return Site;
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
@ -39,12 +40,13 @@ namespace Oqtane.Repository
|
|||
}
|
||||
}
|
||||
|
||||
public void UpdateSite(Site site)
|
||||
public Site UpdateSite(Site Site)
|
||||
{
|
||||
try
|
||||
{
|
||||
db.Entry(site).State = EntityState.Modified;
|
||||
db.Entry(Site).State = EntityState.Modified;
|
||||
db.SaveChanges();
|
||||
return Site;
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
|
100
Oqtane.Server/Repository/SiteUserRepository.cs
Normal file
100
Oqtane.Server/Repository/SiteUserRepository.cs
Normal file
|
@ -0,0 +1,100 @@
|
|||
using Microsoft.EntityFrameworkCore;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using Oqtane.Models;
|
||||
|
||||
namespace Oqtane.Repository
|
||||
{
|
||||
public class SiteUserRepository : ISiteUserRepository
|
||||
{
|
||||
private TenantDBContext db;
|
||||
|
||||
public SiteUserRepository(TenantDBContext context)
|
||||
{
|
||||
db = context;
|
||||
}
|
||||
|
||||
public IEnumerable<SiteUser> GetSiteUsers()
|
||||
{
|
||||
try
|
||||
{
|
||||
return db.SiteUser.ToList();
|
||||
}
|
||||
catch
|
||||
{
|
||||
throw;
|
||||
}
|
||||
}
|
||||
public IEnumerable<SiteUser> GetSiteUsers(int SiteId, int UserId)
|
||||
{
|
||||
try
|
||||
{
|
||||
List<SiteUser> siteusers = db.SiteUser.Where(item => item.SiteId == SiteId).ToList();
|
||||
if (UserId != -1)
|
||||
{
|
||||
siteusers = siteusers.Where(item => item.UserId == UserId).ToList();
|
||||
}
|
||||
return siteusers;
|
||||
}
|
||||
catch
|
||||
{
|
||||
throw;
|
||||
}
|
||||
}
|
||||
|
||||
public SiteUser AddSiteUser(SiteUser SiteUser)
|
||||
{
|
||||
try
|
||||
{
|
||||
db.SiteUser.Add(SiteUser);
|
||||
db.SaveChanges();
|
||||
return SiteUser;
|
||||
}
|
||||
catch
|
||||
{
|
||||
throw;
|
||||
}
|
||||
}
|
||||
|
||||
public SiteUser UpdateSiteUser(SiteUser SiteUser)
|
||||
{
|
||||
try
|
||||
{
|
||||
db.Entry(SiteUser).State = EntityState.Modified;
|
||||
db.SaveChanges();
|
||||
return SiteUser;
|
||||
}
|
||||
catch
|
||||
{
|
||||
throw;
|
||||
}
|
||||
}
|
||||
|
||||
public SiteUser GetSiteUser(int SiteUserId)
|
||||
{
|
||||
try
|
||||
{
|
||||
SiteUser SiteUser = db.SiteUser.Find(SiteUserId);
|
||||
return SiteUser;
|
||||
}
|
||||
catch
|
||||
{
|
||||
throw;
|
||||
}
|
||||
}
|
||||
|
||||
public void DeleteSiteUser(int SiteUserId)
|
||||
{
|
||||
try
|
||||
{
|
||||
SiteUser SiteUser = db.SiteUser.Find(SiteUserId);
|
||||
db.SiteUser.Remove(SiteUser);
|
||||
db.SaveChanges();
|
||||
}
|
||||
catch
|
||||
{
|
||||
throw;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -11,6 +11,7 @@ namespace Oqtane.Repository
|
|||
public virtual DbSet<PageModule> PageModule { get; set; }
|
||||
public virtual DbSet<Module> Module { get; set; }
|
||||
public virtual DbSet<User> User { get; set; }
|
||||
public virtual DbSet<SiteUser> SiteUser { get; set; }
|
||||
|
||||
public TenantDBContext(ITenantResolver TenantResolver, IHttpContextAccessor accessor) : base(TenantResolver, accessor)
|
||||
{
|
||||
|
|
|
@ -36,12 +36,13 @@ namespace Oqtane.Repository
|
|||
}
|
||||
}
|
||||
|
||||
public void AddTenant(Tenant tenant)
|
||||
public Tenant AddTenant(Tenant Tenant)
|
||||
{
|
||||
try
|
||||
{
|
||||
db.Tenant.Add(tenant);
|
||||
db.Tenant.Add(Tenant);
|
||||
db.SaveChanges();
|
||||
return Tenant;
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
@ -49,12 +50,13 @@ namespace Oqtane.Repository
|
|||
}
|
||||
}
|
||||
|
||||
public void UpdateTenant(Tenant tenant)
|
||||
public Tenant UpdateTenant(Tenant Tenant)
|
||||
{
|
||||
try
|
||||
{
|
||||
db.Entry(tenant).State = EntityState.Modified;
|
||||
db.Entry(Tenant).State = EntityState.Modified;
|
||||
db.SaveChanges();
|
||||
return Tenant;
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
@ -62,11 +64,11 @@ namespace Oqtane.Repository
|
|||
}
|
||||
}
|
||||
|
||||
public Tenant GetTenant(int tenantId)
|
||||
public Tenant GetTenant(int TenantId)
|
||||
{
|
||||
try
|
||||
{
|
||||
Tenant tenant = db.Tenant.Find(tenantId);
|
||||
Tenant tenant = db.Tenant.Find(TenantId);
|
||||
return tenant;
|
||||
}
|
||||
catch
|
||||
|
@ -75,11 +77,11 @@ namespace Oqtane.Repository
|
|||
}
|
||||
}
|
||||
|
||||
public void DeleteTenant(int tenantId)
|
||||
public void DeleteTenant(int TenantId)
|
||||
{
|
||||
try
|
||||
{
|
||||
Tenant tenant = db.Tenant.Find(tenantId);
|
||||
Tenant tenant = db.Tenant.Find(TenantId);
|
||||
db.Tenant.Remove(tenant);
|
||||
db.SaveChanges();
|
||||
}
|
||||
|
|
|
@ -26,12 +26,13 @@ namespace Oqtane.Repository
|
|||
}
|
||||
}
|
||||
|
||||
public void AddUser(User user)
|
||||
public User AddUser(User user)
|
||||
{
|
||||
try
|
||||
{
|
||||
db.User.Add(user);
|
||||
db.SaveChanges();
|
||||
return user;
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
@ -39,12 +40,13 @@ namespace Oqtane.Repository
|
|||
}
|
||||
}
|
||||
|
||||
public void UpdateUser(User user)
|
||||
public User UpdateUser(User user)
|
||||
{
|
||||
try
|
||||
{
|
||||
db.Entry(user).State = EntityState.Modified;
|
||||
db.SaveChanges();
|
||||
return user;
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
|
|
@ -96,6 +96,21 @@ CREATE TABLE [dbo].[User](
|
|||
)
|
||||
GO
|
||||
|
||||
CREATE TABLE [dbo].[SiteUser](
|
||||
[SiteUserId] [int] IDENTITY(1,1) NOT NULL,
|
||||
[SiteId] [int] NOT NULL,
|
||||
[UserId] [int] NOT NULL,
|
||||
[IsAuthorized] [bit] NOT NULL,
|
||||
[CreatedBy] [nvarchar](256) NOT NULL,
|
||||
[CreatedOn] [datetime] NOT NULL,
|
||||
[ModifiedBy] [nvarchar](256) NOT NULL,
|
||||
[ModifiedOn] [datetime] NOT NULL,
|
||||
CONSTRAINT [PK_SiteUser] PRIMARY KEY CLUSTERED
|
||||
(
|
||||
[SiteUserId] ASC
|
||||
)
|
||||
)
|
||||
GO
|
||||
/*
|
||||
|
||||
Create foreign key relationships
|
||||
|
@ -125,6 +140,15 @@ REFERENCES [dbo].[Page] ([PageId])
|
|||
ON DELETE CASCADE
|
||||
GO
|
||||
|
||||
ALTER TABLE [dbo].[SiteUser] WITH CHECK ADD CONSTRAINT [FK_SiteUser_Site] FOREIGN KEY([SiteId])
|
||||
REFERENCES [dbo].[Site] ([SiteId])
|
||||
ON DELETE CASCADE
|
||||
GO
|
||||
|
||||
ALTER TABLE [dbo].[SiteUser] WITH CHECK ADD CONSTRAINT [FK_SiteUser_User] FOREIGN KEY([UserId])
|
||||
REFERENCES [dbo].[User] ([UserId])
|
||||
GO
|
||||
|
||||
/*
|
||||
|
||||
Create seed data
|
||||
|
|
17
Oqtane.Shared/Models/SiteUser.cs
Normal file
17
Oqtane.Shared/Models/SiteUser.cs
Normal file
|
@ -0,0 +1,17 @@
|
|||
using System;
|
||||
|
||||
namespace Oqtane.Models
|
||||
{
|
||||
public class SiteUser : IAuditable
|
||||
{
|
||||
public int SiteUserId { get; set; }
|
||||
public int SiteId { get; set; }
|
||||
public int UserId { get; set; }
|
||||
public bool IsAuthorized { get; set; }
|
||||
|
||||
public string CreatedBy { get; set; }
|
||||
public DateTime CreatedOn { get; set; }
|
||||
public string ModifiedBy { get; set; }
|
||||
public DateTime ModifiedOn { get; set; }
|
||||
}
|
||||
}
|
|
@ -10,6 +10,8 @@ namespace Oqtane.Models
|
|||
public string Roles { get; set; }
|
||||
public bool IsSuperUser { get; set; }
|
||||
|
||||
[NotMapped]
|
||||
public int SiteId { get; set; }
|
||||
[NotMapped]
|
||||
public string Password { get; set; }
|
||||
[NotMapped]
|
||||
|
|
Loading…
Reference in New Issue
Block a user