diff --git a/BlueWest.Api.Gateway/BlueWest.Api.Gateway.csproj b/BlueWest.Api.Gateway/BlueWest.Api.Gateway.csproj
index 62993b8..d75c291 100644
--- a/BlueWest.Api.Gateway/BlueWest.Api.Gateway.csproj
+++ b/BlueWest.Api.Gateway/BlueWest.Api.Gateway.csproj
@@ -12,4 +12,10 @@
+
+
+
+
+
+
diff --git a/BlueWest.Api/BlueWest.Api.csproj b/BlueWest.Api/BlueWest.Api.csproj
index 3c34cf8..aff487f 100644
--- a/BlueWest.Api/BlueWest.Api.csproj
+++ b/BlueWest.Api/BlueWest.Api.csproj
@@ -48,6 +48,10 @@
+
+
+
+
diff --git a/BlueWest.Api/Context/ExchangeInterface.cs b/BlueWest.Api/Context/ExchangeInterface.cs
index 79bbfbe..f87f6ed 100644
--- a/BlueWest.Api/Context/ExchangeInterface.cs
+++ b/BlueWest.Api/Context/ExchangeInterface.cs
@@ -1,6 +1,7 @@
using System;
using System.Threading.Tasks;
using BlueWest.Tools;
+using BlueWest.WebApi.Context.Users;
using BlueWest.WebApi.EF;
namespace BlueWest.WebApi.Interfaces
@@ -16,6 +17,7 @@ namespace BlueWest.WebApi.Interfaces
///
public sealed class ExchangeInterface : EventListener, IDisposable, IAsyncDisposable
{
+ private readonly ApplicationUserDbContext _applicationUserDbContext;
private readonly EventManager _eventManager;
private readonly CountryDbContext _countryDbContext;
private readonly FinanceDbContext _financeDbContext;
@@ -32,11 +34,13 @@ namespace BlueWest.WebApi.Interfaces
/// Event manager injection
public ExchangeInterface(
+ ApplicationUserDbContext applicationUserDbContext,
CountryDbContext countryDbContext,
FinanceDbContext financeDbContext,
UserDbContext userDbContext,
EventManager eventManager)
{
+ _applicationUserDbContext = applicationUserDbContext;
_countryDbContext = countryDbContext;
_financeDbContext = financeDbContext;
_userDbContext = userDbContext;
diff --git a/BlueWest.Api/Context/Extensions/ModelBuilderExtensions.cs b/BlueWest.Api/Context/Extensions/ModelBuilderExtensions.cs
index 83ece0d..f2a2157 100644
--- a/BlueWest.Api/Context/Extensions/ModelBuilderExtensions.cs
+++ b/BlueWest.Api/Context/Extensions/ModelBuilderExtensions.cs
@@ -25,6 +25,7 @@ namespace BlueWest.WebApi.EF.Model
.ConfigureDatabaseKeys()
.CurrencyModel()
.ConfigureUserModel();
+
//.ConfigureIdentityModel();
}
@@ -110,15 +111,16 @@ namespace BlueWest.WebApi.EF.Model
private static ModelBuilder ConfigureUserModel(this ModelBuilder modelBuilder)
{
-
-
// FinanceOp => User
modelBuilder
.Entity(builder => builder
.HasOne()
.WithMany(ft => ft.FinanceTransactions)
.HasForeignKey(x => x.UserId));
-
+
+ modelBuilder.Entity(b => b.HasOne()
+ .WithMany(x => x.Users)
+ .HasForeignKey(x => x.ApplicationUserId));
return modelBuilder;
}
diff --git a/BlueWest.Api/Controllers/CountryController.cs b/BlueWest.Api/Controllers/CountryController.cs
index 0133a96..187af15 100644
--- a/BlueWest.Api/Controllers/CountryController.cs
+++ b/BlueWest.Api/Controllers/CountryController.cs
@@ -51,7 +51,7 @@ namespace BlueWest.WebApi.Controllers
int orderDir = 1)
{
- var (success, countries) = _dbContext.GetCountries(skip, take, orderDir);
+ var (success, countries) = _dbContext.GetCountries( skip, take, orderDir);
if (!success) return new NotFoundResult();
return Ok(countries);
diff --git a/BlueWest.Api/Startup.cs b/BlueWest.Api/Startup.cs
index 6e52315..0c513cf 100644
--- a/BlueWest.Api/Startup.cs
+++ b/BlueWest.Api/Startup.cs
@@ -132,7 +132,7 @@ namespace BlueWest.WebApi
throw new InvalidOperationException("config.json doesn't specify a valid database. Use mysql or sqlite.");
}
- services.AddAuthServerServices(MyAllowSpecificOrigins, _configuration, _environment);
+ services = services.AddAuthServerServices(MyAllowSpecificOrigins, _configuration, _environment);
services.AddScoped();
@@ -160,7 +160,7 @@ namespace BlueWest.WebApi
c.RoutePrefix = "swagger";
c.SwaggerEndpoint("/swagger/v1/swagger.json", "BlueWest.Api v1");
});
- //app.UseStaticFiles();
+ app.UseStaticFiles();
//app.UseHttpsRedirection();
diff --git a/BlueWest.Api/StartupExtensions.cs b/BlueWest.Api/StartupExtensions.cs
index 590e84e..d882eaa 100644
--- a/BlueWest.Api/StartupExtensions.cs
+++ b/BlueWest.Api/StartupExtensions.cs
@@ -99,22 +99,20 @@ namespace BlueWest.WebApi
.AddDbContextPool(options => options.UseSqlite(sqliteConString))
.AddDbContextPool(options => options.UseSqlite(sqliteConString))
.AddDbContextPool(options => options.UseSqlite(sqliteConString))
- .AddDbContextPool(options => options.UseSqlite(sqliteConString));
+ .AddDbContextPool(options => options.UseSqlite(sqliteConString))
+ .AddDbContextPool(options => options.UseSqlite(sqliteConString));
}
public static IServiceCollection AddAuthServerServices(this IServiceCollection services, string origins, IConfiguration configuration , IWebHostEnvironment environment)
{
- var sqliteConString = "Data Source=BlueWest.Api.db";
-
- services.AddDbContext(options => options.UseSqlite(sqliteConString));
services.AddScoped();
services.AddScoped();
services
- .AddScoped()
+ .AddScoped< UserRepository>()
.AddScoped()
.AddScoped()
.AddScoped();
diff --git a/BlueWest.Api/Users/ApplicationUser.cs b/BlueWest.Api/Users/ApplicationUser.cs
index dfe9d1b..fb791bb 100644
--- a/BlueWest.Api/Users/ApplicationUser.cs
+++ b/BlueWest.Api/Users/ApplicationUser.cs
@@ -1,6 +1,8 @@
using System;
+using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
+using BlueWest.Data;
using Microsoft.AspNetCore.Identity;
namespace BlueWest.WebApi.Context.Users;
@@ -18,6 +20,7 @@ public class ApplicationUser : IdentityUser
[PersonalData]
public new string Id { get; set; }
+ public List Users { get; set; }
///
/// Gets or sets the user name for this user.
///
diff --git a/BlueWest.Api/Users/ApplicationUserDbContext.cs b/BlueWest.Api/Users/ApplicationUserDbContext.cs
index 54459e3..291f650 100644
--- a/BlueWest.Api/Users/ApplicationUserDbContext.cs
+++ b/BlueWest.Api/Users/ApplicationUserDbContext.cs
@@ -52,6 +52,8 @@ public class ApplicationUserDbContext : IdentityDbContext<
{
base.OnModelCreating(builder);
+
+ builder.Entity().ToTable("UserRoles");
builder.Entity(b =>
{
b.HasMany()
@@ -61,7 +63,7 @@ public class ApplicationUserDbContext : IdentityDbContext<
builder.Entity().ToTable("ApplicationUser")
.HasKey(x => x.Id);
-
+
builder.Entity(b =>
@@ -90,6 +92,10 @@ public class ApplicationUserDbContext : IdentityDbContext<
b.ToTable("UserRoles");
});
+ builder.Entity(b => b.HasOne()
+ .WithMany(x => x.Users)
+ .HasForeignKey(x => x.ApplicationUserId));
+
builder.ConfigureCurrentDbModel();
}
diff --git a/BlueWest.Api/appsettings.json b/BlueWest.Api/appsettings.json
index 54ceb96..547b74d 100644
--- a/BlueWest.Api/appsettings.json
+++ b/BlueWest.Api/appsettings.json
@@ -11,6 +11,6 @@
"DockerMySQL": "server=db;user=blueuser;password=dXjw127124dJ;database=bluedb;"
},
"AuthSettings": {
- "SecretKey": "d123d123d123fff12"
+ "SecretKey": "iJWHDmHLpUA283sqsfhqGbMRdRj1PVkH"
}
}
diff --git a/BlueWest.Data.Capital/BlueWest.Data.Capital.csproj b/BlueWest.Data.Capital/BlueWest.Data.Capital.csproj
index 423d42d..1309c49 100644
--- a/BlueWest.Data.Capital/BlueWest.Data.Capital.csproj
+++ b/BlueWest.Data.Capital/BlueWest.Data.Capital.csproj
@@ -11,6 +11,10 @@
+
+
+
+
diff --git a/BlueWest.Data.Geography/BlueWest.Data.Geography.csproj b/BlueWest.Data.Geography/BlueWest.Data.Geography.csproj
index f3f4eda..4c7b476 100644
--- a/BlueWest.Data.Geography/BlueWest.Data.Geography.csproj
+++ b/BlueWest.Data.Geography/BlueWest.Data.Geography.csproj
@@ -11,4 +11,8 @@
+
+
+
+
diff --git a/BlueWest/BlueWest.csproj b/BlueWest/BlueWest.csproj
index 4860e23..79595ef 100644
--- a/BlueWest/BlueWest.csproj
+++ b/BlueWest/BlueWest.csproj
@@ -7,4 +7,8 @@
PerformanceSolution
+
+
+
+