diff --git a/Mango.Core/Loggers/ConsoleLogWriter.cs b/Mango.Core/Loggers/ConsoleLogWriter.cs
new file mode 100644
index 0000000..403f007
--- /dev/null
+++ b/Mango.Core/Loggers/ConsoleLogWriter.cs
@@ -0,0 +1,17 @@
+using AyCode.Core.Enums;
+using AyCode.Core.Loggers;
+
+namespace Mango.Core.Loggers;
+
+public class ConsoleLogWriter : AcConsoleLogWriter
+{
+ public ConsoleLogWriter() : this(null)
+ { }
+
+ public ConsoleLogWriter(string? categoryName = null) : base(categoryName)
+ { }
+
+ public ConsoleLogWriter(AppType appType, LogLevel logLevel, string? callerClassName = null) : base(appType, logLevel, callerClassName)
+ {
+ }
+}
\ No newline at end of file
diff --git a/Mango.Core/Loggers/Logger.cs b/Mango.Core/Loggers/Logger.cs
new file mode 100644
index 0000000..fa79afe
--- /dev/null
+++ b/Mango.Core/Loggers/Logger.cs
@@ -0,0 +1,19 @@
+using AyCode.Core.Enums;
+using AyCode.Core.Loggers;
+
+namespace Mango.Core.Loggers;
+
+public class Logger : AcLoggerBase
+{
+ public Logger() : this(null)
+ { }
+
+ public Logger(string? categoryName) : base(categoryName)
+ { }
+
+ public Logger(string? categoryName, params IAcLogWriterBase[] logWriters) : base(categoryName, logWriters)
+ { }
+
+ public Logger(AppType appType, LogLevel logLevel, string? categoryName, params IAcLogWriterBase[] logWriters) : base(appType, logLevel, categoryName, logWriters)
+ { }
+}
\ No newline at end of file
diff --git a/Mango.Core/Mango.Core.csproj b/Mango.Core/Mango.Core.csproj
index 86f45d1..36401d1 100644
--- a/Mango.Core/Mango.Core.csproj
+++ b/Mango.Core/Mango.Core.csproj
@@ -6,6 +6,10 @@
enable
+
+
+
+
..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Core.dll
diff --git a/Mango.Database.Test/DatabaseTestBase.cs b/Mango.Database.Test/DatabaseTestBase.cs
index e27ad26..231d56c 100644
--- a/Mango.Database.Test/DatabaseTestBase.cs
+++ b/Mango.Database.Test/DatabaseTestBase.cs
@@ -1,6 +1,7 @@
using AyCode.Database.DbContexts;
using AyCode.Database.Tests;
using Mango.Database.DbContexts;
+using Mango.Database.DbContexts.Users;
namespace Mango.Database.Test
{
@@ -10,12 +11,15 @@ namespace Mango.Database.Test
[TestInitialize]
public void Setup()
{
-
+
}
[TestCleanup]
public void TearDown()
{
}
+
+ [DataTestMethod]
+ public override void DatabaseExistsTest() => base.DatabaseExistsTest();
}
}
\ No newline at end of file
diff --git a/Mango.Database.Test/Mango.Database.Test.csproj b/Mango.Database.Test/Mango.Database.Test.csproj
index 480e5dc..87657e1 100644
--- a/Mango.Database.Test/Mango.Database.Test.csproj
+++ b/Mango.Database.Test/Mango.Database.Test.csproj
@@ -24,15 +24,15 @@
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
diff --git a/Mango.Database.Test/UserDalTests.cs b/Mango.Database.Test/UserDalTests.cs
index 2b4bb38..1355e81 100644
--- a/Mango.Database.Test/UserDalTests.cs
+++ b/Mango.Database.Test/UserDalTests.cs
@@ -4,13 +4,32 @@ using Mango.Database.DataLayers.Users;
using Mango.Database.DbContexts.Users;
using Mango.Entities.Addresses;
using Mango.Entities.Companies;
+using Mango.Entities.Messages.Emails;
using Mango.Entities.Profiles;
using Mango.Entities.Users;
-using Microsoft.ApplicationInsights;
namespace Mango.Database.Test;
[TestClass]
-public class UserDalTests : AcUserDalTestBase
+public class UserDalTests : AcUserDalTestBase
{
+ [DataTestMethod]
+ [DataRow("test@tiam.hu")]
+ public override void AcBase_GetUserByEmail_ReturnsUser_WhenUserExists(string email)
+ => base.AcBase_GetUserByEmail_ReturnsUser_WhenUserExists(email);
+
+ [DataTestMethod]
+ [DataRow("540271F6-C604-4C16-8160-D5A7CAFEDF00")]
+ public override void AcBase_GetUserById_ReturnsUser_WhenUserExists(string userIdString)
+ => base.AcBase_GetUserById_ReturnsUser_WhenUserExists(userIdString);
+
+ [DataTestMethod]
+ [DataRow("540271F6-C604-4C16-8160-D5A7CAFEDF00")]
+ public override void AcBase_GetUserModelDtoDetailById_ReturnsUser_WhenUserExists(string userIdString)
+ => base.AcBase_GetUserModelDtoDetailById_ReturnsUser_WhenUserExists(userIdString);
+
+ [DataTestMethod]
+ [DataRow(["e31044d7-1771-4a32-8dd9-6f9853ed53c6", "0a831191-70a3-4504-9ec4-c5902affaba7", "8eed080c-d2ce-4cc3-bcfe-2268c220bba7", "addUser_test9432@tiam.hu"])]
+ public override async Task AcBase_AddUserTest(string[] userIdProfileIdAddressIdEmailStrings)
+ => await base.AcBase_AddUserTest(userIdProfileIdAddressIdEmailStrings);
}
\ No newline at end of file
diff --git a/Mango.Database.Test/appsettings.json b/Mango.Database.Test/appsettings.json
index 48d14a2..c9c3222 100644
--- a/Mango.Database.Test/appsettings.json
+++ b/Mango.Database.Test/appsettings.json
@@ -1,6 +1,7 @@
{
"ConnectionStrings": {
- "DeveloperDbConnection": "Data Source=185.51.190.197;Initial Catalog=TIAM_DEV;Trusted_Connection=False;Connect Timeout=200;User ID=Anata_Development_Team;Password=v6f_?xNfg9N1;MultipleActiveResultSets=true"
+ "DeveloperDbConnection":
+ "Data Source=185.51.190.197;Initial Catalog=TIAM_DEV;Trusted_Connection=false;Encrypt=false;TrustServerCertificate=True;Connect Timeout=200;User ID=Anata_Development_Team;Password=v6f_?xNfg9N1;MultipleActiveResultSets=true"
},
"Logging": {
"LogLevel": {
@@ -17,6 +18,24 @@
"SendGrid": {
//"Key": "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"
"Key": "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"
- }
+ },
+ "AyCode": {
+ "ProjectId": "684f34d1-163a-4077-918f-a9d9df5ce789",
+ "Logger": {
+ "AppType": "Server",
+ "LogLevel": "Detail",
+ "LogWriters": [
+ {
+ "LogLevel": "Detail",
+ "LogWriterType": "Mango.Core.Loggers.ConsoleLogWriter, Mango.Core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
+ },
+ {
+ "LogLevel": "Detail",
+ "LogWriterType": "Mango.Database.DbLogItemWriter, Mango.Database, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
+ }
+ ]
+ }
+ }
}
+
diff --git a/Mango.Database/DataLayers/IDalBase.cs b/Mango.Database/DataLayers/IDalBase.cs
index 9670c5e..2cac8af 100644
--- a/Mango.Database/DataLayers/IDalBase.cs
+++ b/Mango.Database/DataLayers/IDalBase.cs
@@ -1,4 +1,5 @@
using AyCode.Database.DataLayers;
+using AyCode.Database.DbContexts;
using Mango.Database.DbContexts;
namespace Mango.Database.DataLayers;
@@ -6,5 +7,5 @@ namespace Mango.Database.DataLayers;
public interface IDalBase : IAcDalBase
{ }
-public interface IDalBase : IAcDalBase, IAcDalBase where TDbContext : DbContextBase
+public interface IDalBase : IAcDalBase, IAcDalBase where TDbContext : AcDbContextBase
{ }
\ No newline at end of file
diff --git a/Mango.Database/DataLayers/Users/UserDal.cs b/Mango.Database/DataLayers/Users/UserDal.cs
index 9c8251c..05ce845 100644
--- a/Mango.Database/DataLayers/Users/UserDal.cs
+++ b/Mango.Database/DataLayers/Users/UserDal.cs
@@ -2,13 +2,14 @@
using Mango.Database.DbContexts.Users;
using Mango.Entities.Addresses;
using Mango.Entities.Companies;
+using Mango.Entities.Messages.Emails;
using Mango.Entities.Profiles;
using Mango.Entities.Users;
using Microsoft.EntityFrameworkCore;
namespace Mango.Database.DataLayers.Users
{
- public class UserDal : AcUserDalBase, IDalBase
+ public class UserDal : AcUserDalBase, IDalBase
{
public UserDal() : base()
{
diff --git a/Mango.Database/DbContexts/DbContextBase.cs b/Mango.Database/DbContexts/DbContextBase.cs
index 14d9e45..db73d2d 100644
--- a/Mango.Database/DbContexts/DbContextBase.cs
+++ b/Mango.Database/DbContexts/DbContextBase.cs
@@ -27,7 +27,7 @@ public class DbContextBase : AcDbContextBase
//optionsBuilder.UseSqlServer(Configuration.GetConnectionString("DeveloperDbConnection"));
//var connString = string.Empty;//"Data Source=185.51.190.197;Initial Catalog=TIAM_DEV;Trusted_Connection=false;Encrypt=false;TrustServerCertificate=True;Connect Timeout=200;User ID=Anata_Development_Team;Password=v6f_?xNfg9N1;MultipleActiveResultSets=true";
- var connString = "Data Source=185.51.190.197;Initial Catalog=TIAM_DEV;Trusted_Connection=false;Encrypt=false;TrustServerCertificate=True;Connect Timeout=200;User ID=Anata_Development_Team;Password=v6f_?xNfg9N1;MultipleActiveResultSets=true";
- optionsBuilder.UseSqlServer(connString);
+ //var connString = "Data Source=185.51.190.197;Initial Catalog=TIAM_DEV;Trusted_Connection=false;Encrypt=false;TrustServerCertificate=True;Connect Timeout=200;User ID=Anata_Development_Team;Password=v6f_?xNfg9N1;MultipleActiveResultSets=true";
+ //optionsBuilder.UseSqlServer(connString);
}
}
\ No newline at end of file
diff --git a/Mango.Database/DbContexts/Users/IUserDbContext.cs b/Mango.Database/DbContexts/Users/IUserDbContext.cs
index 5cc9a5e..5f14215 100644
--- a/Mango.Database/DbContexts/Users/IUserDbContext.cs
+++ b/Mango.Database/DbContexts/Users/IUserDbContext.cs
@@ -4,10 +4,11 @@ using Mango.Database.DbSets.Emails;
using Mango.Database.DbSets.Users;
using Mango.Entities.Addresses;
using Mango.Entities.Companies;
+using Mango.Entities.Messages.Emails;
using Mango.Entities.Profiles;
using Mango.Entities.Users;
namespace Mango.Database.DbContexts.Users;
-public interface IUserDbContext : IAcUserDbContextBase, IUserDbSet, IAddressDbSet, IEmailMessageDbSet
+public interface IUserDbContext : IAcUserDbContextBase, IUserDbSet, IAddressDbSet, IEmailMessageDbSet
{ }
\ No newline at end of file
diff --git a/Mango.Database/DbContexts/Users/UserDbContext.cs b/Mango.Database/DbContexts/Users/UserDbContext.cs
index 7f8af21..666c8e7 100644
--- a/Mango.Database/DbContexts/Users/UserDbContext.cs
+++ b/Mango.Database/DbContexts/Users/UserDbContext.cs
@@ -1,4 +1,6 @@
-using Mango.Entities.Addresses;
+using AyCode.Database.DbContexts.Users;
+using Mango.Entities.Addresses;
+using Mango.Entities.Companies;
using Mango.Entities.Messages.Emails;
using Mango.Entities.Profiles;
using Mango.Entities.Users;
@@ -6,15 +8,15 @@ using Microsoft.EntityFrameworkCore;
namespace Mango.Database.DbContexts.Users
{
- public class UserDbContext : DbContextBase, IUserDbContext
+ public class UserDbContext : AcUserDbContextBase, IUserDbContext
{
- public DbSet Users { get; set; }
- public DbSet UserTokens { get; set; }
+ //public DbSet Users { get; set; }
+ //public DbSet UserTokens { get; set; }
- public DbSet Profiles { get; set; }
- public DbSet Addresses { get; set; }
+ //public DbSet Profiles { get; set; }
+ //public DbSet Addresses { get; set; }
- public DbSet EmailMessages { get; set; }
+ //public DbSet EmailMessages { get; set; }
public UserDbContext() //: this(string.Empty)
{
diff --git a/Mango.Database/DbLogWriter.cs b/Mango.Database/DbLogWriter.cs
new file mode 100644
index 0000000..8266533
--- /dev/null
+++ b/Mango.Database/DbLogWriter.cs
@@ -0,0 +1,26 @@
+using AyCode.Core.Enums;
+using AyCode.Core.Loggers;
+using AyCode.Database;
+using AyCode.Database.DbContexts.Loggers;
+using AyCode.Entities.LogItems;
+using AyCode.Entities.Server.LogItems;
+
+namespace Mango.Database;
+
+public class LoggerDbContextBase : AcLoggerDbContextBase
+{
+
+}
+
+public class DbLogItemWriter : AcDbLogItemWriter
+{
+ public DbLogItemWriter() : this(null)
+ { }
+
+ public DbLogItemWriter(string? categoryName = null) : base(categoryName)
+ { }
+
+ public DbLogItemWriter(AppType appType, LogLevel logLevel, string? categoryName = null) : base(appType, logLevel, categoryName)
+ {
+ }
+}
\ No newline at end of file
diff --git a/Mango.Database/DbSets/Users/IUserDbSet.cs b/Mango.Database/DbSets/Users/IUserDbSet.cs
index a47daf6..9142d82 100644
--- a/Mango.Database/DbSets/Users/IUserDbSet.cs
+++ b/Mango.Database/DbSets/Users/IUserDbSet.cs
@@ -6,6 +6,6 @@ using Mango.Entities.Users;
namespace Mango.Database.DbSets.Users;
-public interface IUserDbSet : IAcUserDbSet
+public interface IUserDbSet : IAcUserDbSetBase
{
}
\ No newline at end of file
diff --git a/Mango.Database/Mango.Database.csproj b/Mango.Database/Mango.Database.csproj
index 3a367bd..b04579c 100644
--- a/Mango.Database/Mango.Database.csproj
+++ b/Mango.Database/Mango.Database.csproj
@@ -53,9 +53,11 @@
-
-
-
+
+
+
+
+
diff --git a/Mango.Entities/Companies/Company.cs b/Mango.Entities/Companies/Company.cs
index ba6e1b6..5b26e20 100644
--- a/Mango.Entities/Companies/Company.cs
+++ b/Mango.Entities/Companies/Company.cs
@@ -1,12 +1,14 @@
using System.ComponentModel.DataAnnotations.Schema;
using AyCode.Entities.ServiceProviders;
+using Mango.Entities.Addresses;
+using Mango.Entities.Profiles;
using Mango.Entities.Users;
using Mango.Interfaces.Companies;
namespace Mango.Entities.Companies;
[Table("ServiceProviders")]
-public class Company : AcServiceProvider, ICompany, ICompanyBase
+public class Company : AcCompany, ICompany, ICompanyBase
{
public Company()
{
diff --git a/Mango.Entities/Users/UserToCompany.cs b/Mango.Entities/Users/UserToCompany.cs
index 931ef7d..056c6e5 100644
--- a/Mango.Entities/Users/UserToCompany.cs
+++ b/Mango.Entities/Users/UserToCompany.cs
@@ -1,10 +1,12 @@
using AyCode.Entities.Users;
using Mango.Entities.Companies;
using Mango.Interfaces.Users;
+using System.ComponentModel.DataAnnotations.Schema;
namespace Mango.Entities.Users;
-public class UserToCompany : AcUserToServiceProvider, IUserToCompany
+[Table("UserToServiceProvider")]
+public class UserToCompany : AcUserToCompany, IUserToCompany
{
}
\ No newline at end of file
diff --git a/Mango.Interfaces/Companies/ICompany.cs b/Mango.Interfaces/Companies/ICompany.cs
index 5f4417e..531adf3 100644
--- a/Mango.Interfaces/Companies/ICompany.cs
+++ b/Mango.Interfaces/Companies/ICompany.cs
@@ -1,11 +1,17 @@
using AyCode.Interfaces.ServiceProviders;
using AyCode.Interfaces.Users;
using System;
+using AyCode.Interfaces.Addresses;
+using AyCode.Interfaces.Profiles;
+using AyCode.Interfaces.Profiles.Dtos;
using Mango.Interfaces.Users;
+using Mango.Interfaces.Profiles;
namespace Mango.Interfaces.Companies;
-public interface ICompany : IAcServiceProvider
+public interface ICompany : IAcCompany
where TUser : class, IUserBase
where TUserToCompany : class, IUserToCompanyBase
+ where TProfile : class, IAcProfile
+ where TAddress : class, IAcAddress
{}
\ No newline at end of file
diff --git a/Mango.Interfaces/Companies/ICompanyBase.cs b/Mango.Interfaces/Companies/ICompanyBase.cs
index 8baf306..ff78a83 100644
--- a/Mango.Interfaces/Companies/ICompanyBase.cs
+++ b/Mango.Interfaces/Companies/ICompanyBase.cs
@@ -2,6 +2,6 @@
namespace Mango.Interfaces.Companies;
-public interface ICompanyBase : IAcServiceProviderBase
+public interface ICompanyBase : IAcCompanyBase
{
}
\ No newline at end of file
diff --git a/Mango.Interfaces/Users/IUser.cs b/Mango.Interfaces/Users/IUser.cs
index 7280147..1684b4e 100644
--- a/Mango.Interfaces/Users/IUser.cs
+++ b/Mango.Interfaces/Users/IUser.cs
@@ -5,10 +5,10 @@ using Mango.Interfaces.Profiles;
namespace Mango.Interfaces.Users;
-public interface IUser : IAcUser, IUserDto, IUserBase
- where TProfile : class, IProfile
+public interface IUser : IAcUser, IUserDto, IUserBase
+ where TProfile : class, IProfile
where TCompany : class, ICompanyBase
where TUserToCompany : class, IUserToCompanyBase
- where TProfileAddress : class, IAddress
+ where TAddress : class, IAddress
{
}
\ No newline at end of file
diff --git a/Mango.Interfaces/Users/IUserDto.cs b/Mango.Interfaces/Users/IUserDto.cs
index 52c3ba0..7064489 100644
--- a/Mango.Interfaces/Users/IUserDto.cs
+++ b/Mango.Interfaces/Users/IUserDto.cs
@@ -1,13 +1,13 @@
-using AyCode.Interfaces.Users.Dtos;
+using AyCode.Interfaces.Profiles.Dtos;
+using AyCode.Interfaces.Users.Dtos;
using Mango.Interfaces.Addresses;
using Mango.Interfaces.Companies;
using Mango.Interfaces.Profiles;
namespace Mango.Interfaces.Users;
-public interface IUserDto : IAcUserDtoBase
- where TProfile : class, IProfile
+public interface IUserDto : IAcUserDtoBase
+ where TProfile : class, IAcProfileDtoBase
where TCompany : class, ICompanyBase
where TUserToCompany : class, IUserToCompanyBase
- where TProfileAddress : class, IAddress
{ }
\ No newline at end of file
diff --git a/Mango.Interfaces/Users/IUserToCompany.cs b/Mango.Interfaces/Users/IUserToCompany.cs
index ee7fbd8..248f498 100644
--- a/Mango.Interfaces/Users/IUserToCompany.cs
+++ b/Mango.Interfaces/Users/IUserToCompany.cs
@@ -7,5 +7,5 @@ public interface IUserToCompany : IUserToCompanyBase
where TCompany : class, ICompanyBase
{
public TUser User { get; set; }
- public TCompany ServiceProvider { get; set; }
+ public TCompany Company { get; set; }
}
\ No newline at end of file
diff --git a/Mango.Interfaces/Users/IUserToCompanyBase.cs b/Mango.Interfaces/Users/IUserToCompanyBase.cs
index 1847dff..b6ef530 100644
--- a/Mango.Interfaces/Users/IUserToCompanyBase.cs
+++ b/Mango.Interfaces/Users/IUserToCompanyBase.cs
@@ -2,5 +2,5 @@
namespace Mango.Interfaces.Users;
-public interface IUserToCompanyBase : IAcUserToServiceProviderBase
+public interface IUserToCompanyBase : IAcUserToCompanyBase
{}
\ No newline at end of file
diff --git a/Mango.Models/Logins/ILoggedInModel.cs b/Mango.Models/Logins/ILoggedInModel.cs
new file mode 100644
index 0000000..0c10306
--- /dev/null
+++ b/Mango.Models/Logins/ILoggedInModel.cs
@@ -0,0 +1,10 @@
+using AyCode.Interfaces.Server.Logins;
+using Mango.Entities.Addresses;
+using Mango.Entities.Companies;
+using Mango.Entities.Profiles;
+using Mango.Entities.Users;
+
+namespace Mango.Models.Logins;
+
+public interface ILoggedInModel : IAcLoggedInModelBase
+{}
\ No newline at end of file
diff --git a/Mango.Models/Logins/LoggedInModel.cs b/Mango.Models/Logins/LoggedInModel.cs
new file mode 100644
index 0000000..407edeb
--- /dev/null
+++ b/Mango.Models/Logins/LoggedInModel.cs
@@ -0,0 +1,11 @@
+using AyCode.Models.Server.Logins;
+using Mango.Entities.Addresses;
+using Mango.Entities.Companies;
+using Mango.Entities.Profiles;
+using Mango.Entities.Users;
+
+namespace Mango.Models.Logins;
+
+public class LoggedInModel : AcLoggedInModelServer, ILoggedInModel
+{
+}
\ No newline at end of file
diff --git a/Mango.Models/Mango.Models.csproj b/Mango.Models/Mango.Models.csproj
index fa71b7a..0bb8421 100644
--- a/Mango.Models/Mango.Models.csproj
+++ b/Mango.Models/Mango.Models.csproj
@@ -6,4 +6,41 @@
enable
+
+
+
+
+
+
+
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Core.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Core.Server.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Database.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Entities.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Entities.Server.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Interfaces.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Interfaces.Server.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Models.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Models.Server.dll
+
+
+
diff --git a/Mango.Services.Server.Tests/LoginServices/LoginServiceServerTests.cs b/Mango.Services.Server.Tests/LoginServices/LoginServiceServerTests.cs
new file mode 100644
index 0000000..fa658f3
--- /dev/null
+++ b/Mango.Services.Server.Tests/LoginServices/LoginServiceServerTests.cs
@@ -0,0 +1,63 @@
+using AyCode.Core.Loggers;
+using AyCode.Core.Server.Loggers;
+using AyCode.Services.Server.Tests.LoginServices;
+using Mango.Core.Loggers;
+using Mango.Database;
+using Mango.Database.DataLayers.Users;
+using Mango.Database.DbContexts.Users;
+using Mango.Entities.Addresses;
+using Mango.Entities.Companies;
+using Mango.Entities.Messages.Emails;
+using Mango.Entities.Profiles;
+using Mango.Entities.Users;
+using Mango.Models.Logins;
+using Mango.Services.Server.Logins;
+
+namespace Mango.Services.Server.Tests.LoginServices
+{
+ [TestClass]
+ public class LoginServiceServerTests : AcLoginServiceServerTestBase
+ {
+ private readonly Logger _logger = new(nameof(LoginServiceServerTests));
+
+ private const string RegisterEmail = "qwerty@xxxxx.com";
+ private const string RegisterPassword = "elem'r";
+ private const string RegisterUserIdString = "1f7e0591-330b-463b-81ad-d01f2e65e23e";
+
+ private const string LoginId = "1DED6045-1278-4B92-A10A-3EB9426E41A3";
+ private const string LoginEmail = "asdfsdf@ggggg.hu";
+ private const string LoginPassword = "alad'r";
+
+ [DataTestMethod]
+ [DataRow([LoginEmail, LoginPassword])]
+ public override void AcBase_LoginUser_ReturnsUser_WhenUserExist(string[] emailPasswordStrings)
+ => base.AcBase_LoginUser_ReturnsUser_WhenUserExist(emailPasswordStrings);
+
+ [DataTestMethod]
+ [DataRow([RegisterUserIdString, RegisterEmail, RegisterPassword])]
+ public override Task AcBase_RegisterUser_ReturnsUser_WhenUserExist(string[] userIdEmailPasswordStrings)
+ {
+ //GlobalLogger.Debug("Test started0...");
+
+ //for (int i = 0; i < 1000; i++)
+ //{
+ // _logger.Debug(i + ". Test started...");
+ // _logger.Debug(i + ". Test started2...");
+ // GlobalLogger.Debug(i + ". Test started3...");
+ //}
+
+ //GlobalLogger.Debug("Test started4...");
+ //GlobalLogger.Writer().Suggest("sdfdfa", nameof(LoginServiceServerTests));
+
+ //Assert.IsTrue(true);
+ //return Task.CompletedTask;
+ return base.AcBase_RegisterUser_ReturnsUser_WhenUserExist(userIdEmailPasswordStrings);
+ }
+
+ [DataTestMethod]
+ [DataRow([LoginId, LoginPassword, "asdfgh123456"])]//, "$bcrypt$v=1$salt=JwptfNI6bXd7qKOJDChlvQ==$hash=j4CEfDeibKFWFGUOzxGICyHm3/hA+71j7qoyPDUk1qY="])]
+ public override void AcBase_ChangePassword_ReturnUser_WhenUserLoggedInWithNewPassword(string[] userIdOriginalPasswordNewPasswordStrings)
+ => base.AcBase_ChangePassword_ReturnUser_WhenUserLoggedInWithNewPassword(userIdOriginalPasswordNewPasswordStrings);
+
+ }
+}
\ No newline at end of file
diff --git a/Mango.Services.Server.Tests/Mango.Services.Server.Tests.csproj b/Mango.Services.Server.Tests/Mango.Services.Server.Tests.csproj
new file mode 100644
index 0000000..c7ba89c
--- /dev/null
+++ b/Mango.Services.Server.Tests/Mango.Services.Server.Tests.csproj
@@ -0,0 +1,102 @@
+
+
+
+ net8.0
+ enable
+ enable
+
+ false
+ true
+
+
+
+
+
+
+
+
+ PreserveNewest
+
+
+
+
+
+ all
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Core.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Core.Server.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server.Tests\bin\Debug\net8.0\AyCode.Core.Tests.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Database.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server.Tests\bin\Debug\net8.0\AyCode.Database.Tests.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Entities.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Entities.Server.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Interfaces.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Interfaces.Server.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Models.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Models.Server.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Services.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Services.Server.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server.Tests\bin\Debug\net8.0\AyCode.Services.Server.Tests.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Utils.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server.Tests\bin\Debug\net8.0\AyCode.Utils.Server.dll
+
+
+
+
+
+
+
+
diff --git a/Mango.Services.Server.Tests/appsettings.json b/Mango.Services.Server.Tests/appsettings.json
new file mode 100644
index 0000000..1ba32c8
--- /dev/null
+++ b/Mango.Services.Server.Tests/appsettings.json
@@ -0,0 +1,39 @@
+{
+ "ConnectionStrings": {
+ "DeveloperDbConnection": "Data Source=185.51.190.197;Initial Catalog=TIAM_DEV;Trusted_Connection=false;Encrypt=false;TrustServerCertificate=True;Connect Timeout=200;User ID=Anata_Development_Team;Password=v6f_?xNfg9N1;MultipleActiveResultSets=true"
+ },
+ "Logging": {
+ "LogLevel": {
+ "Default": "Information",
+ "Microsoft.AspNetCore": "Warning"
+ }
+ },
+ "AllowedHosts": "*",
+ "JWT": {
+ "Key": "Cee4400-rDMFkVvHPufyLDSzbfu2grgRhpepos299IhTLOXsljkcpt3yUR4RRjPQ",
+ "Issuer": "http://localhost:5000",
+ "Audience": "http://localhost:5000"
+ },
+ "SendGrid": {
+ //"Key": "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"
+ "Key": "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"
+ },
+
+ "AyCode": {
+ "ProjectId": "684f34d1-163a-4077-918f-a9d9df5ce789",
+ "Logger": {
+ "AppType": "Server",
+ "LogLevel": "Detail",
+ "LogWriters": [
+ {
+ "LogLevel": "Detail",
+ "LogWriterType": "Mango.Core.Loggers.ConsoleLogWriter, Mango.Core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
+ },
+ {
+ "LogLevel": "Detail",
+ "LogWriterType": "Mango.Database.DbLogItemWriter, Mango.Database, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
+ }
+ ]
+ }
+ }
+}
diff --git a/Mango.Services.Server/Logins/ILoginService.cs b/Mango.Services.Server/Logins/ILoginService.cs
new file mode 100644
index 0000000..a8e7dbb
--- /dev/null
+++ b/Mango.Services.Server/Logins/ILoginService.cs
@@ -0,0 +1,13 @@
+using AyCode.Interfaces.Server.Logins;
+using Mango.Entities.Addresses;
+using Mango.Entities.Companies;
+using Mango.Entities.Profiles;
+using Mango.Entities.Users;
+using Mango.Models.Logins;
+
+namespace Mango.Services.Server.Logins;
+
+public interface ILoginService : IAcLoginServiceServer
+{
+
+}
\ No newline at end of file
diff --git a/Mango.Services.Server/Logins/LoginService.cs b/Mango.Services.Server/Logins/LoginService.cs
new file mode 100644
index 0000000..72022ee
--- /dev/null
+++ b/Mango.Services.Server/Logins/LoginService.cs
@@ -0,0 +1,32 @@
+using AyCode.Core.Consts;
+using AyCode.Services.Server.Logins;
+using Mango.Database.DataLayers.Users;
+using Mango.Database.DbContexts.Users;
+using Mango.Entities.Addresses;
+using Mango.Entities.Companies;
+using Mango.Entities.Messages.Emails;
+using Mango.Entities.Profiles;
+using Mango.Entities.Users;
+using Mango.Models.Logins;
+using Microsoft.Extensions.Configuration;
+
+namespace Mango.Services.Server.Logins;
+
+public class LoginService(UserDal userDal, IConfiguration configuration) : AcLoginServiceServer(userDal, configuration), ILoginService
+
+{
+ public override LoggedInModel Login(string? email, string? password)
+ {
+ return base.Login(email, password);
+ }
+
+ public override bool Logout()
+ {
+ return base.Logout();
+ }
+
+ public override Task RegistrationAsync(string email, string password, string? phoneNumber = null, Guid? referralId = null)
+ {
+ return base.RegistrationAsync(email, password, phoneNumber, referralId);
+ }
+}
\ No newline at end of file
diff --git a/Mango.Services.Server/Mango.Services.Server.csproj b/Mango.Services.Server/Mango.Services.Server.csproj
new file mode 100644
index 0000000..98f680a
--- /dev/null
+++ b/Mango.Services.Server/Mango.Services.Server.csproj
@@ -0,0 +1,68 @@
+
+
+
+ net8.0
+ enable
+ enable
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Core.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Core.Server.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Database.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Entities.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Entities.Server.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Interfaces.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Interfaces.Server.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Models.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Models.Server.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Services.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Services.Server.dll
+
+
+ ..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Utils.dll
+
+
+
+
diff --git a/Mango.Services/Mango.Services.csproj b/Mango.Services/Mango.Services.csproj
new file mode 100644
index 0000000..fa71b7a
--- /dev/null
+++ b/Mango.Services/Mango.Services.csproj
@@ -0,0 +1,9 @@
+
+
+
+ net8.0
+ enable
+ enable
+
+
+
diff --git a/MissNationBlazor.sln b/MissNationBlazor.sln
index bebdc28..7842407 100644
--- a/MissNationBlazor.sln
+++ b/MissNationBlazor.sln
@@ -13,23 +13,29 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MissNationBlazorWASM.Shared
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MissNationSharedUI", "MissNationSharedUI\MissNationSharedUI.csproj", "{B7790887-D399-4AA6-B3F4-2C332D83C637}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Core", "Mango.Core\Mango.Core.csproj", "{69E5377B-5938-4C08-AB7F-424EB353578A}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Mango.Core", "Mango.Core\Mango.Core.csproj", "{69E5377B-5938-4C08-AB7F-424EB353578A}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Database", "Mango.Database\Mango.Database.csproj", "{7C58DF80-C636-4693-8AC2-6D92B503DCA5}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Mango.Database", "Mango.Database\Mango.Database.csproj", "{7C58DF80-C636-4693-8AC2-6D92B503DCA5}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Entities", "Mango.Entities\Mango.Entities.csproj", "{17FE11C8-0821-4357-9BE0-6D96E948BECB}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Mango.Entities", "Mango.Entities\Mango.Entities.csproj", "{17FE11C8-0821-4357-9BE0-6D96E948BECB}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Entities.Server", "Mango.Entities.Server\Mango.Entities.Server.csproj", "{51FFD293-3C1A-43D6-A272-2850AFC3F1D6}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Mango.Entities.Server", "Mango.Entities.Server\Mango.Entities.Server.csproj", "{51FFD293-3C1A-43D6-A272-2850AFC3F1D6}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Interfaces", "Mango.Interfaces\Mango.Interfaces.csproj", "{B9CAB99F-AF7D-4377-ACD1-97C5A0D703EA}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Mango.Interfaces", "Mango.Interfaces\Mango.Interfaces.csproj", "{B9CAB99F-AF7D-4377-ACD1-97C5A0D703EA}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Interfaces.Server", "Mango.Interfaces.Server\Mango.Interfaces.Server.csproj", "{E966ABA3-C927-4BC0-96A2-9CB9BA60DE6D}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Mango.Interfaces.Server", "Mango.Interfaces.Server\Mango.Interfaces.Server.csproj", "{E966ABA3-C927-4BC0-96A2-9CB9BA60DE6D}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Models", "Mango.Models\Mango.Models.csproj", "{AC74712A-880D-4633-86A9-F02AA4A62E90}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Mango.Models", "Mango.Models\Mango.Models.csproj", "{AC74712A-880D-4633-86A9-F02AA4A62E90}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Database.Test", "Mango.Database.Test\Mango.Database.Test.csproj", "{F12EB241-1360-4CC7-9078-EDD487F4A9FC}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Mango.Database.Test", "Mango.Database.Test\Mango.Database.Test.csproj", "{F12EB241-1360-4CC7-9078-EDD487F4A9FC}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Core.Server", "Mango.Core.Server\Mango.Core.Server.csproj", "{90AE435C-D257-4839-8AC5-F8D012A4F92C}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Mango.Core.Server", "Mango.Core.Server\Mango.Core.Server.csproj", "{90AE435C-D257-4839-8AC5-F8D012A4F92C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Services", "Mango.Services\Mango.Services.csproj", "{561010E9-A898-4EAE-98AC-23D7D988A39A}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Services.Server", "Mango.Services.Server\Mango.Services.Server.csproj", "{2EB5F3A6-2A08-44AF-997E-E8F3411071D5}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Services.Server.Tests", "Mango.Services.Server.Tests\Mango.Services.Server.Tests.csproj", "{9ADAA164-BBE3-4919-9881-98980D5C3CCE}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -95,6 +101,18 @@ Global
{90AE435C-D257-4839-8AC5-F8D012A4F92C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{90AE435C-D257-4839-8AC5-F8D012A4F92C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{90AE435C-D257-4839-8AC5-F8D012A4F92C}.Release|Any CPU.Build.0 = Release|Any CPU
+ {561010E9-A898-4EAE-98AC-23D7D988A39A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {561010E9-A898-4EAE-98AC-23D7D988A39A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {561010E9-A898-4EAE-98AC-23D7D988A39A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {561010E9-A898-4EAE-98AC-23D7D988A39A}.Release|Any CPU.Build.0 = Release|Any CPU
+ {2EB5F3A6-2A08-44AF-997E-E8F3411071D5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {2EB5F3A6-2A08-44AF-997E-E8F3411071D5}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {2EB5F3A6-2A08-44AF-997E-E8F3411071D5}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {2EB5F3A6-2A08-44AF-997E-E8F3411071D5}.Release|Any CPU.Build.0 = Release|Any CPU
+ {9ADAA164-BBE3-4919-9881-98980D5C3CCE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {9ADAA164-BBE3-4919-9881-98980D5C3CCE}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {9ADAA164-BBE3-4919-9881-98980D5C3CCE}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {9ADAA164-BBE3-4919-9881-98980D5C3CCE}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/MissNationBlazorHybrid/MissNationBlazorHybrid.csproj b/MissNationBlazorHybrid/MissNationBlazorHybrid.csproj
index 372dc65..50723e1 100644
--- a/MissNationBlazorHybrid/MissNationBlazorHybrid.csproj
+++ b/MissNationBlazorHybrid/MissNationBlazorHybrid.csproj
@@ -58,10 +58,10 @@
-
-
-
-
+
+
+
+
diff --git a/MissNationBlazorWASM/Client/MissNationBlazorWASM.Client.csproj b/MissNationBlazorWASM/Client/MissNationBlazorWASM.Client.csproj
index aaacc5c..c50eb57 100644
--- a/MissNationBlazorWASM/Client/MissNationBlazorWASM.Client.csproj
+++ b/MissNationBlazorWASM/Client/MissNationBlazorWASM.Client.csproj
@@ -7,9 +7,9 @@
-
-
-
+
+
+
diff --git a/MissNationBlazorWASM/Server/MissNationBlazorWASM.Server.csproj b/MissNationBlazorWASM/Server/MissNationBlazorWASM.Server.csproj
index c476478..b5c9f47 100644
--- a/MissNationBlazorWASM/Server/MissNationBlazorWASM.Server.csproj
+++ b/MissNationBlazorWASM/Server/MissNationBlazorWASM.Server.csproj
@@ -7,7 +7,7 @@
-
+
diff --git a/MissNationBlazorWASM/Shared/MissNationBlazorWASM.Shared.csproj b/MissNationBlazorWASM/Shared/MissNationBlazorWASM.Shared.csproj
index 3c56617..9a938be 100644
--- a/MissNationBlazorWASM/Shared/MissNationBlazorWASM.Shared.csproj
+++ b/MissNationBlazorWASM/Shared/MissNationBlazorWASM.Shared.csproj
@@ -1,7 +1,7 @@
- net7.0
+ net8.0
enable
enable
diff --git a/MissNationSharedUI/MissNationSharedUI.csproj b/MissNationSharedUI/MissNationSharedUI.csproj
index 374ec2a..7536e84 100644
--- a/MissNationSharedUI/MissNationSharedUI.csproj
+++ b/MissNationSharedUI/MissNationSharedUI.csproj
@@ -12,8 +12,8 @@
-
-
+
+