refactroing, improvements, fixes, etc...

This commit is contained in:
jozsef.b@aycode.com 2024-05-18 05:14:31 +02:00
parent efca96cb61
commit fc0b725bc1
43 changed files with 224 additions and 112 deletions

View File

@ -22,10 +22,10 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="8.0.4" />
<PackageReference Include="Microsoft.EntityFrameworkCore.InMemory" Version="8.0.4" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Proxies" Version="8.0.4" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.4" />
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="8.0.5" />
<PackageReference Include="Microsoft.EntityFrameworkCore.InMemory" Version="8.0.5" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Proxies" Version="8.0.5" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.5" />
<PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="8.0.0" />
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="8.0.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.9.0" />

View File

@ -2,7 +2,6 @@
using AyCode.Core.Loggers;
using AyCode.Database;
using AyCode.Database.DbContexts.Loggers;
using AyCode.Entities.LogItems;
using AyCode.Entities.Server.LogItems;
namespace TIAM.Database;

View File

@ -7,9 +7,9 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="8.0.4" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Proxies" Version="8.0.4" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.4" />
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="8.0.5" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Proxies" Version="8.0.5" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.5" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
</ItemGroup>

View File

@ -32,7 +32,7 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.EntityFrameworkCore.Abstractions" Version="8.0.4" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Abstractions" Version="8.0.5" />
</ItemGroup>
</Project>

View File

@ -26,7 +26,7 @@
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="Microsoft.AspNetCore.Cryptography.KeyDerivation" Version="8.0.4" />
<PackageReference Include="Microsoft.AspNetCore.Cryptography.KeyDerivation" Version="8.0.5" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.9.0" />
<PackageReference Include="MSTest.TestAdapter" Version="3.3.1" />
<PackageReference Include="MSTest.TestFramework" Version="3.3.1" />

View File

@ -7,7 +7,7 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Cryptography.KeyDerivation" Version="8.0.4" />
<PackageReference Include="Microsoft.AspNetCore.Cryptography.KeyDerivation" Version="8.0.5" />
<PackageReference Include="SendGrid" Version="9.29.3" />
</ItemGroup>

View File

@ -8,6 +8,7 @@ using TIAMWebApp.Shared.Application.Utility;
using TIAMWebApp.Shared.Application.Services;
using BlazorAnimation;
using AyCode.Core.Loggers;
using AyCode.Services.Loggers;
namespace TIAMMobileApp
{
@ -47,7 +48,9 @@ namespace TIAMMobileApp
builder.Services.AddScoped<IWeatherForecastService, WeatherForecastService>();
builder.Services.AddScoped<ITransferDataService, TransferDataService>();
builder.Services.AddScoped<IAcLogWriterBase, BrowserConsoleLogWriter>();
//builder.Services.AddScoped<IAcLogWriterBase, BrowserConsoleLogWriter>();
builder.Services.AddSingleton<IAcLogWriterClientBase, BrowserConsoleLogWriter>();
builder.Services.AddSingleton<IAcLogWriterClientBase, HttpClientLogItemWriter>();
builder.Services.AddScoped<IPopulationStructureDataProvider, PopulationStructureDataProvider>();
builder.Services.AddScoped<ISupplierService, SupplierService>();
builder.Services.AddScoped<IUserDataService, UserDataServiceMobile>();

View File

@ -62,6 +62,8 @@
<ProjectReference Include="..\..\Aycode.Blazor\AyCode.Maui.Core\AyCode.Maui.Core.csproj" />
<ProjectReference Include="..\TIAM.Core\TIAM.Core.csproj" />
<ProjectReference Include="..\TIAM.Entities\TIAM.Entities.csproj" />
<ProjectReference Include="..\TIAM.Models\TIAM.Models.csproj" />
<ProjectReference Include="..\TIAM.Services\TIAM.Services.csproj" />
<ProjectReference Include="..\TIAMSharedUI\TIAMSharedUI.csproj" />
<ProjectReference Include="..\TIAMWebApp\Shared\TIAMWebApp.Shared.Application.csproj" />
<PackageReference Include="Microsoft.Extensions.Logging.Abstractions" VersionOverride="7.0.1" Version="8.0.1" />
@ -80,18 +82,21 @@
<Reference Include="AyCode.Models">
<HintPath>..\..\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Models.dll</HintPath>
</Reference>
<Reference Include="AyCode.Services">
<HintPath>..\..\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Services.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
<PackageReference Update="Microsoft.AspNetCore.Components.WebView.Maui" Version="8.0.20" />
<PackageReference Update="Microsoft.AspNetCore.Components.WebView.Maui" Version="8.0.40" />
</ItemGroup>
<ItemGroup>
<PackageReference Update="Microsoft.Maui.Controls" Version="8.0.20" />
<PackageReference Update="Microsoft.Maui.Controls" Version="8.0.40" />
</ItemGroup>
<ItemGroup>
<PackageReference Update="Microsoft.Maui.Controls.Compatibility" Version="8.0.20" />
<PackageReference Update="Microsoft.Maui.Controls.Compatibility" Version="8.0.40" />
</ItemGroup>
</Project>

View File

@ -9,10 +9,11 @@
@using System.Globalization;
@using AyCode.Core.Enums
@using AyCode.Core.Loggers
@using AyCode.Services.Loggers
@using TIAM.Core.Loggers
@inject NavigationManager NavManager
@inject IJSRuntime JSRuntime
@inject IEnumerable<IAcLogWriterBase> LogWriters
@inject IEnumerable<IAcLogWriterClientBase> LogWriters
@inject IUserDataService UserDataService
@inject ISecureStorageHandler SecureStorageHandler
@inject ISessionService sessionService;

View File

@ -20,6 +20,7 @@ using System.Text.RegularExpressions;
using AyCode.Core.Consts;
using AyCode.Core.Loggers;
using TIAM.Core.Loggers;
using AyCode.Services.Loggers;
namespace TIAMSharedUI.Pages.Components
@ -27,7 +28,7 @@ namespace TIAMSharedUI.Pages.Components
public partial class InputWizard : ComponentBase
{
[Inject]
public required IEnumerable<IAcLogWriterBase> LogWriters { get; set; }
public required IEnumerable<IAcLogWriterClientBase> LogWriters { get; set; }
[Inject]
IStringLocalizer<TIAMResources> localizer { get; set; }
@ -117,7 +118,9 @@ namespace TIAMSharedUI.Pages.Components
{
var _type = Data.GetType();
_logger.Info("Hellooooo " + _type.AssemblyQualifiedName);
//for (var i = 0; i < 1000; i++)
_logger.Info("Hellooooo " + _type.AssemblyQualifiedName);
var propertyList = _type.GetProperties();
var _length = propertyList.Length - IgnoreReflection.Count;

View File

@ -11,6 +11,7 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
using AyCode.Core.Loggers;
using AyCode.Services.Loggers;
using TIAMSharedUI.Resources;
using TIAMWebApp.Shared.Application.Interfaces;
using TIAMWebApp.Shared.Application.Models;
@ -29,7 +30,7 @@ namespace TIAMSharedUI.Pages.Components
[Inject]
public NavigationManager navigationManager { get; set; }
[Inject]
public IAcLogWriterBase BrowserConsoleLogWriter { get; set; }
public IAcLogWriterClientBase BrowserConsoleLogWriter { get; set; }
[Inject]
public IComponentUpdateService componentUpdateService { get; set; }

View File

@ -13,6 +13,7 @@
@using TIAMWebApp.Shared.Application.Utility;
@using System.IdentityModel.Tokens.Jwt;
@using AyCode.Core.Loggers
@using AyCode.Services.Loggers
@using TIAMSharedUI.Pages.Components;
@using TIAMSharedUI.Shared
@using TIAMWebApp.Shared.Application.Models.ClientSide.UI.WizardModels
@ -23,7 +24,7 @@
@inject ISessionService sessionService;
@inject IStringLocalizer<MyResources> localizer;
@inject NavigationManager navManager
@inject IAcLogWriterBase BrowserConsoleLogWriter
@inject IAcLogWriterClientBase BrowserConsoleLogWriter
@inject ITransferDataService transferDataService

View File

@ -10,6 +10,7 @@
@using TIAMWebApp.Shared.Application.Utility;
@using System.IdentityModel.Tokens.Jwt;
@using AyCode.Core.Loggers
@using AyCode.Services.Loggers
@using TIAMSharedUI.Pages.Components;
@using TIAMSharedUI.Shared
@using TIAMWebApp.Shared.Application.Models.ClientSide.UI.WizardModels
@ -20,7 +21,7 @@
@inject ISessionService sessionService;
@inject IStringLocalizer<MyResources> localizer;
@inject NavigationManager navManager
@inject IAcLogWriterBase BrowserConsoleLogWriter
@inject IAcLogWriterClientBase BrowserConsoleLogWriter
@inject IWizardProcessor WizardProcessor
<PageTitle>Index</PageTitle>

View File

@ -7,13 +7,14 @@
@using AyCode.Core.Loggers
@using TIAMWebApp.Shared.Application.Models.ClientSide
@using AyCode.Interfaces.StorageHandlers;
@using AyCode.Services.Loggers
@using TIAM.Core.Loggers
@inject NavigationManager NavManager
@inject IJSRuntime JSRuntime
@inject IUserDataService UserDataService
@inject ISecureStorageHandler SecureStorageHandler
@inject HttpClient http;
@inject IEnumerable<IAcLogWriterBase> LogWriters
@inject IEnumerable<IAcLogWriterClientBase> LogWriters
<h3>AppLaunch</h3>
Loading....

View File

@ -13,6 +13,7 @@ using System.Resources;
using Microsoft.Extensions.Localization;
using AyCode.Blazor.Components;
using AyCode.Core.Loggers;
using AyCode.Services.Loggers;
using Azure.Core;
namespace TIAMSharedUI.Pages
@ -25,7 +26,7 @@ namespace TIAMSharedUI.Pages
[Inject]
public IUserDataService userDataService { get; set; }
[Inject]
public IAcLogWriterBase BrowserConsoleLogWriter { get; set; }
public IAcLogWriterClientBase BrowserConsoleLogWriter { get; set; }
[Inject]
public IJSRuntime jsRuntime { get; set; }
[Inject]

View File

@ -5,7 +5,8 @@
@using TIAMWebApp.Shared.Application.Utility
@using TIAM.Entities.Transfers
@using AyCode.Core.Loggers
@inject IAcLogWriterBase BrowserConsoleLogWriter
@using AyCode.Services.Loggers
@inject IAcLogWriterClientBase BrowserConsoleLogWriter
@inject IWizardProcessor WizardProcessor
<h3>TestPage</h3>
<div class="container mt-3">

View File

@ -5,8 +5,9 @@
@using TIAMWebApp.Shared.Application.Models.ClientSide.UI.WizardModels
@using TIAMWebApp.Shared.Application.Utility
@using AyCode.Core.Loggers
@using AyCode.Services.Loggers
@inject NavigationManager navManager
@inject IAcLogWriterBase BrowserConsoleLogWriter
@inject IAcLogWriterClientBase BrowserConsoleLogWriter
@inject IWizardProcessor WizardProcessor
<PageTitle>Transfer</PageTitle>

View File

@ -37,6 +37,7 @@
@page "/user/media"
@using System.Net.Http.Headers
@using AyCode.Core.Loggers
@using AyCode.Services.Loggers
@using TIAMSharedUI.Shared
@using TIAMWebApp.Shared.Application.Interfaces
@using TIAMWebApp.Shared.Application.Models
@ -44,7 +45,7 @@
@layout AdminLayout
@inject IJSRuntime JSRuntime;
@inject IImageDataService imageDataService;
@inject IAcLogWriterBase BrowserConsoleLogWriter;
@inject IAcLogWriterClientBase BrowserConsoleLogWriter;
@implements IAsyncDisposable
<h3>File Upload</h3>

View File

@ -6,8 +6,9 @@
@using TIAMWebApp.Shared.Application.Models.ClientSide.UI.WizardModels
@using TIAMWebApp.Shared.Application.Utility
@using AyCode.Core.Loggers
@using AyCode.Services.Loggers
@layout AdminLayout
@inject IAcLogWriterBase BrowserConsoleLogWriter
@inject IAcLogWriterClientBase BrowserConsoleLogWriter
@inject IStringLocalizer<TIAMResources> localizer
<h3>Properties</h3>

View File

@ -5,8 +5,9 @@
@using TIAMWebApp.Shared.Application.Utility
@using TIAM.Core.Loggers
@using AyCode.Core.Loggers
@using AyCode.Services.Loggers
@inject IUserDataService NwindDataService
@inject IEnumerable<IAcLogWriterBase> LogWriters
@inject IEnumerable<IAcLogWriterClientBase> LogWriters
<div class="mb-2">

View File

@ -15,9 +15,10 @@
@using TIAMWebApp.Shared.Application.Models.PageModels
@using TIAMWebApp.Shared.Application.Utility
@using AyCode.Core.Loggers
@using AyCode.Services.Loggers
@using TIAM.Core.Loggers
@layout AdminLayout
@inject IEnumerable<IAcLogWriterBase> LogWriters
@inject IEnumerable<IAcLogWriterClientBase> LogWriters
@inject IStringLocalizer<TIAMResources> localizer
@inject IWizardProcessor wizardProcessor
@inject ITransferDataService transferDataService

View File

@ -18,9 +18,10 @@
@using TIAMWebApp.Shared.Application.Models.PageModels
@using TIAMWebApp.Shared.Application.Utility
@using AyCode.Core.Loggers
@using AyCode.Services.Loggers
@using TIAM.Core.Loggers
@layout AdminLayout
@inject IEnumerable<IAcLogWriterBase> LogWriters
@inject IEnumerable<IAcLogWriterClientBase> LogWriters
@inject IStringLocalizer<TIAMResources> localizer
@inject ISessionService sessionService
@inject IWizardProcessor wizardProcessor

View File

@ -9,8 +9,9 @@
@using TIAMWebApp.Shared.Application.Models.ClientSide.Messages
@using TIAMWebApp.Shared.Application.Utility
@using AyCode.Core.Loggers
@using AyCode.Services.Loggers
@layout AdminLayout
@inject IEnumerable<IAcLogWriterBase> LogWriters
@inject IEnumerable<IAcLogWriterClientBase> LogWriters
@inject IStringLocalizer<TIAMResources> localizer
<PageTitle>Transfers</PageTitle>

View File

@ -7,9 +7,10 @@
@using TIAMWebApp.Shared.Application.Utility
@using TIAM.Core.Loggers
@using AyCode.Core.Loggers
@using AyCode.Services.Loggers
@inject IUserDataService NwindDataService
@inject IServiceProviderDataService serviceProviderDataService
@inject IEnumerable<IAcLogWriterBase> LogWriters
@inject IEnumerable<IAcLogWriterClientBase> LogWriters
<div class="mb-2">
UserProductMapping

View File

@ -7,6 +7,7 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
using AyCode.Core.Loggers;
using AyCode.Services.Loggers;
using TIAMSharedUI.Resources;
using TIAMWebApp.Shared.Application.Interfaces;
using TIAMWebApp.Shared.Application.Utility;
@ -30,7 +31,7 @@ namespace TIAMSharedUI.Shared.Components
public IComponentUpdateService componentUpdateService { get; set; }
[Inject]
public IAcLogWriterBase BrowserConsoleLogWriter { get; set; }
public IAcLogWriterClientBase BrowserConsoleLogWriter { get; set; }
private bool collapseNavMenu = true;
private bool myUser = false;

View File

@ -1,9 +1,10 @@
@using System.Linq.Expressions
@using AyCode.Core.Loggers
@using AyCode.Services.Loggers
@using TIAM.Entities.Transfers
@using TIAMWebApp.Shared.Application.Interfaces
@using TIAMWebApp.Shared.Application.Utility
@inject IAcLogWriterBase BrowserConsoleLogWriter
@inject IAcLogWriterClientBase BrowserConsoleLogWriter
<style>
.underlineInput{

View File

@ -15,8 +15,8 @@
<PackageReference Include="Blazor.AnimateOnScroll" Version="1.1.0" />
<PackageReference Include="BlazorAnimation" Version="2.2.0" />
<PackageReference Include="DevExpress.Blazor" Version="23.2.3" />
<PackageReference Include="Microsoft.AspNetCore.Components.Web" Version="8.0.4" />
<PackageReference Include="Microsoft.Extensions.Localization" Version="8.0.4" />
<PackageReference Include="Microsoft.AspNetCore.Components.Web" Version="8.0.5" />
<PackageReference Include="Microsoft.Extensions.Localization" Version="8.0.5" />
</ItemGroup>
<ItemGroup>

View File

@ -13,8 +13,11 @@ using TIAMWebApp.Client.Services;
using TIAMWebApp.Shared.Application.Interfaces;
using TIAMWebApp.Shared.Application.Services;
using TIAMWebApp.Shared.Application.Utility;
using AyCode.Services.Loggers;
using System.Net;
var builder = WebAssemblyHostBuilder.CreateDefault(args);
builder.RootComponents.Add<App>("#app");
builder.RootComponents.Add<HeadOutlet>("head::after");
builder.Services.AddLocalization();
@ -25,7 +28,7 @@ builder.Services.AddScoped<ISupplierService, SupplierService>();
builder.Services.AddScoped<IUserDataService, UserDataServiceWeb>();
builder.Services.AddScoped<ISecureStorageHandler, SecureStorageHandler>();
builder.Services.AddBlazoredLocalStorage();
builder.Services.AddSingleton<ISessionService, SessionServiceWeb>();
builder.Services.AddScoped<ISessionService, SessionServiceWeb>();
builder.Services.AddSingleton<IComponentUpdateService, ComponentUpdateServiceWeb>();
builder.Services.AddScoped<IServiceProviderDataService, ServiceProviderDataService>();
builder.Services.AddScoped<IClientNoticeSenderService, ClientNoticeSenderService>();
@ -34,16 +37,23 @@ builder.Services.AddScoped<IImageDataService, ImageDataService>();
//WebSpecific
builder.Services.AddScoped<SessionStorageAccessor>();
builder.Services.AddSingleton(x => new ResourceManager("TIAMWebApp.Client.Resources.MyResources", typeof(Program).Assembly));
builder.Services.AddScoped<IAcLogWriterBase, BrowserConsoleLogWriter>();
builder.Services.AddScoped<IAcLogWriterBase, HttpClientLogItemWriter>();
builder.Services.AddSingleton<IAcLogWriterClientBase, BrowserConsoleLogWriter>();
builder.Services.AddSingleton<IAcLogWriterClientBase, HttpClientLogItemWriter>();
//builder.Services.AddScoped<BrowserConsoleLogWriter>();
//WebSpecific end
builder.Services.AddSingleton(sp => new HttpClient { BaseAddress = new Uri(builder.HostEnvironment.BaseAddress) });
builder.Services.AddSingleton(sp => new HttpClient
{
BaseAddress = new Uri(builder.HostEnvironment.BaseAddress),
DefaultRequestVersion = HttpVersion.Version20,
DefaultVersionPolicy = HttpVersionPolicy.RequestVersionOrHigher
});
builder.Services.AddDevExpressBlazor(configure => configure.BootstrapVersion = BootstrapVersion.v5);
builder.Services.Configure<AnimationOptions>(Guid.NewGuid().ToString(), c => { });
await builder.Build().RunAsync();

View File

@ -1,4 +1,5 @@
using AyCode.Core.Loggers;
using AyCode.Services.Loggers;
using System.Collections;
using System.Collections.Generic;
using System.Net.Http.Json;
@ -16,9 +17,9 @@ namespace TIAMWebApp.Client.Services
public class PermissionService : IPermissionService
{
private readonly HttpClient http;
private readonly IAcLogWriterBase _browserConsoleLogWriter;
private readonly IAcLogWriterClientBase _browserConsoleLogWriter;
public PermissionService(HttpClient http, IAcLogWriterBase browserConsoleLogWriter)
public PermissionService(HttpClient http, IAcLogWriterClientBase browserConsoleLogWriter)
{
this.http = http;
this._browserConsoleLogWriter = browserConsoleLogWriter;

View File

@ -14,6 +14,7 @@ using TIAM.Models.Dtos.Users;
using ILogger = TIAM.Core.Loggers.ILogger;
using LogLevel = AyCode.Core.Loggers.LogLevel;
using AyCode.Core.Loggers;
using AyCode.Services.Loggers;
namespace TIAMWebApp.Client.Services
@ -30,7 +31,7 @@ namespace TIAMWebApp.Client.Services
public Dictionary<int, string> userRoleTypes { get => throw new NotImplementedException(); set => throw new NotImplementedException(); }
public UserDataServiceWeb(HttpClient http, ISecureStorageHandler secureStorageHandler, IJSRuntime jSRuntime, IServiceProviderDataService serviceProviderDataService, IEnumerable<IAcLogWriterBase> logWriters)
public UserDataServiceWeb(HttpClient http, ISecureStorageHandler secureStorageHandler, IJSRuntime jSRuntime, IServiceProviderDataService serviceProviderDataService, IEnumerable<IAcLogWriterClientBase> logWriters)
//public UserDataServiceWeb(HttpClient http, ISecureStorageHandler secureStorageHandler, IJSRuntime jSRuntime, IServiceProviderDataService serviceProviderDataService, HttpClientLogItemWriter logWriter)
{
this.http = http;

View File

@ -11,14 +11,17 @@
<ItemGroup>
<PackageReference Include="Blazored.LocalStorage" Version="4.5.0" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly" Version="8.0.4" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.DevServer" Version="8.0.4" PrivateAssets="all" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly" Version="8.0.5" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.DevServer" Version="8.0.5" PrivateAssets="all" />
<PackageReference Include="SkiaSharp" Version="2.88.8" />
<PackageReference Include="SkiaSharp.Views.Desktop.Common" Version="2.88.8" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\TIAM.Core\TIAM.Core.csproj" />
<ProjectReference Include="..\..\TIAM.Entities\TIAM.Entities.csproj" />
<ProjectReference Include="..\..\TIAM.Models\TIAM.Models.csproj" />
<ProjectReference Include="..\..\TIAM.Services\TIAM.Services.csproj" />
<ProjectReference Include="..\..\TIAMSharedUI\TIAMSharedUI.csproj" />
<ProjectReference Include="..\Shared\TIAMWebApp.Shared.Application.csproj" />
</ItemGroup>

View File

@ -0,0 +1,52 @@
using AyCode.Core.Consts;
using AyCode.Core.Loggers;
using AyCode.Core.Server.Loggers;
using AyCode.Entities;
using AyCode.Entities.Server.LogItems;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Cors;
using Microsoft.AspNetCore.Mvc;
using TIAMWebApp.Server.Services;
using TIAMWebApp.Shared.Application.Models;
namespace TIAMWebApp.Server.Controllers
{
[Authorize]
[ApiController]
[EnableCors("_myAllowSpecificOrigins")]
[Route("api/v1/[controller]")]
public class LoggerApiController(LoggerToLoggerApiController logger) : ControllerBase
{
// = new TIAM.Core.Loggers.Logger<LoggerApiController>();
[AllowAnonymous]
[HttpPost]
[Route(APIUrls.LoggerRouteName)]
public async Task AddLogItem(AcLogItem? logItem)
{
try
{
if (logItem == null)
{
logger.Error("AddLogItem; LogItem == null");
//_logger.Writer<ConsoleLogWriter>().Detail("");
return;
}
//logItem.LogHeaderId = ???
logItem.TimeStampUtc = DateTime.UtcNow;
logger.Write(logItem);
//_logger.Writer<IAcConsoleLogWriter>()?.Write(logItem.AppType, logItem.LogLevel, logItem.Text, logItem.CallerName, logItem.CategoryName, logItem.ErrorType, logItem.Exception);
//_logger.Writer<DbLogItemWriter>().WriteLogItemAsync(logItem);
}
catch (Exception ex)
{
Console.WriteLine($@"ERROR!!! {nameof(LoggerApiController)}->WriteLogItem; ex: {ex.Message}{AcEnv.NL}{AcEnv.NL}{ex}");
}
}
}
}

View File

@ -26,9 +26,9 @@ namespace TIAMWebApp.Server.Controllers
};
private readonly ILogger<TransferDataAPIController> _logger;
private readonly ILogger<PopulationStructureAPIController> _logger;
public PopulationStructureAPIController(ILogger<TransferDataAPIController> logger)
public PopulationStructureAPIController(ILogger<PopulationStructureAPIController> logger)
{
_logger = logger;
}

View File

@ -11,18 +11,11 @@ using TIAM.Database.DataLayers.Users;
using TIAM.Entities.Users;
using TIAM.Models.Dtos.Users;
using TIAM.Database.DataLayers.Admins;
using AyCode.Core.Enums;
using AyCode.Core.Server.Loggers;
using AyCode.Entities.LogItems;
using AyCode.Entities.Server.LogItems;
using TIAM.Database;
using TIAM.Entities.Profiles;
using TIAM.Entities.Addresses;
using TIAM.Services.Server.Logins;
using TIAMWebApp.Shared.Application.Utility;
using ILogger = TIAM.Core.Loggers.ILogger;
using LogLevel = AyCode.Core.Loggers.LogLevel;
using TIAM.Core.Loggers;
namespace TIAMWebApp.Server.Controllers
{
@ -33,9 +26,8 @@ namespace TIAMWebApp.Server.Controllers
{
private LoginService _loginService;
private UserDal _userDal;
private AdminDal _adminDal;
private readonly IConfiguration _configuration;
private readonly IWebHostEnvironment _webHostEnvironment;
//private readonly IWebHostEnvironment _webHostEnvironment;
//readonly PasswordHasher _hasher = new();
private readonly ILogger _logger;
@ -48,36 +40,37 @@ namespace TIAMWebApp.Server.Controllers
//private readonly ILogger<UserAPIController> _logger;
public UserAPIController(IConfiguration configuration, IWebHostEnvironment webHostEnvironment, UserDal userDal, AdminDal adminDal, IEnumerable<IAcLogWriterBase> logWriters)
public UserAPIController(IConfiguration configuration, UserDal userDal, IEnumerable<IAcLogWriterBase> logWriters)
{
_configuration = configuration;
_webHostEnvironment = webHostEnvironment;
//_webHostEnvironment = webHostEnvironment;
_userDal = userDal;
_adminDal = adminDal;
_loginService = new LoginService(_userDal, _configuration);
_logger = new TIAM.Core.Loggers.Logger<UserAPIController>(logWriters.ToArray());
}
[AllowAnonymous]
[HttpPost]
[Route(APIUrls.LoggerRouteName)]
public async Task AddLogItem(AcLogItem? logItem)
{
if (logItem == null)
{
_logger.Error("AddLogItem; LogItem == null");
//_logger.Writer<ConsoleLogWriter>().Detail("");
//[AllowAnonymous]
//[HttpPost]
//[Route(APIUrls.LoggerRouteName)]
//public async Task AddLogItem(AcLogItem? logItem)
//{
// if (logItem == null)
// {
// _logger.Error("AddLogItem; LogItem == null");
// //_logger.Writer<ConsoleLogWriter>().Detail("");
return;
}
// return;
// }
//logItem.LogHeaderId = ???
// //logItem.LogHeaderId = ???
// logItem.TimeStampUtc = DateTime.UtcNow;
// _logger.Write(logItem);
_logger.Writer<IAcConsoleLogWriter>()?.Write(logItem.AppType, logItem.LogLevel, logItem.Text, logItem.CallerName, logItem.CategoryName, logItem.ErrorType, logItem.Exception);
_logger.Writer<DbLogItemWriter>().WriteLogItemAsync(logItem);
}
// //_logger.Writer<IAcConsoleLogWriter>()?.Write(logItem.AppType, logItem.LogLevel, logItem.Text, logItem.CallerName, logItem.CategoryName, logItem.ErrorType, logItem.Exception);
// //_logger.Writer<DbLogItemWriter>().WriteLogItemAsync(logItem);
//}
[AllowAnonymous]
@ -121,7 +114,7 @@ namespace TIAMWebApp.Server.Controllers
return Ok(response);
}
_logger.Info(@"User not valid! errorCode: " + loggedInModel.LoginErrorCode);
_logger.Warning(@"User not valid! errorCode: " + loggedInModel.LoginErrorCode);
return Unauthorized();
}

View File

@ -13,28 +13,35 @@ using TIAM.Database.DataLayers.Users;
using TIAM.Entities.Emails;
using TIAM.Services.Server;
using TIAMWebApp.Shared.Application.Utility;
using Microsoft.Extensions.DependencyInjection;
using TIAMWebApp.Server.Controllers;
using TIAMWebApp.Server.Services;
using Microsoft.AspNetCore.Server.Kestrel.Core;
//using TIAM.Database.DataLayers.ServiceProviders;
var builder = WebApplication.CreateBuilder(args);
string MyAllowSpecificOrigins = "_myAllowSpecificOrigins";
const string myAllowSpecificOrigins = "_myAllowSpecificOrigins";
// Add services to the container.
builder.Services.AddControllersWithViews();
builder.Services.AddRazorPages();
//builder.Services.AddDbContext<TransferDestinationDbContext>(options => options.UseSqlServer(builder.Configuration.GetConnectionString("DeveloperDbConnection")));;
builder.Services.AddScoped<IAcLogWriterBase, ConsoleLogWriter>();
builder.Services.AddScoped<IAcLogWriterBase, DbLogItemWriter>();
builder.Services.AddSingleton<LoggerToLoggerApiController>();
builder.Services.AddSingleton<IAcLogWriterBase, ConsoleLogWriter>();
builder.Services.AddSingleton<IAcLogWriterBase, DbLogItemWriter>();
builder.Services.AddScoped<UserDal>();
builder.Services.AddScoped<AdminDal>();
builder.Services.AddScoped<AuctionDal>();
builder.Services.AddScoped<TransferDestinationDal>();
builder.Services.AddCors(options => {
options.AddPolicy(MyAllowSpecificOrigins,
builder => {
builder.AllowAnyOrigin();
options.AddPolicy(myAllowSpecificOrigins,
policy => {
policy.AllowAnyOrigin();
});
});
@ -74,7 +81,7 @@ builder.Services.AddAuthentication(f =>
f.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme;
}).AddJwtBearer(k =>
{
var Key = Encoding.UTF8.GetBytes(builder.Configuration["JWT:Key"]);
var key = Encoding.UTF8.GetBytes(builder.Configuration["JWT:Key"]);
k.SaveToken = true;
k.TokenValidationParameters = new TokenValidationParameters
{
@ -84,7 +91,7 @@ builder.Services.AddAuthentication(f =>
ValidateIssuerSigningKey = true,
ValidIssuer = builder.Configuration["JWT:Issuer"],
ValidAudience = builder.Configuration["JWT:Audience"],
IssuerSigningKey = new SymmetricSecurityKey(Key),
IssuerSigningKey = new SymmetricSecurityKey(key),
ClockSkew = TimeSpan.Zero
};
@ -107,6 +114,16 @@ builder.Services.ConfigureApplicationCookie(options =>
options.SlidingExpiration = true;
});
builder.WebHost.ConfigureKestrel((context, options) =>
{
options.ListenAnyIP(7116, listenOptions =>
{
listenOptions.Protocols = HttpProtocols.Http1AndHttp2AndHttp3;
listenOptions.UseHttps();
});
});
var app = builder.Build();
@ -138,7 +155,7 @@ app.UseStaticFiles();
app.UseAuthentication();
app.UseRouting();
//cors
app.UseCors(MyAllowSpecificOrigins);
app.UseCors(myAllowSpecificOrigins);
app.UseAuthorization();
app.UsePathBase("/");
app.MapRazorPages();

View File

@ -0,0 +1,7 @@
using TIAMWebApp.Server.Controllers;
namespace TIAMWebApp.Server.Services;
public class LoggerToLoggerApiController : TIAM.Core.Loggers.Logger<LoggerApiController>
{
}

View File

@ -10,18 +10,18 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="GoogleApi" Version="5.4.0" />
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="8.0.4" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.Server" Version="8.0.4" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.4" />
<PackageReference Include="GoogleApi" Version="5.4.3" />
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="8.0.5" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.Server" Version="8.0.5" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.5" />
<PackageReference Include="Microsoft.OpenApi" Version="1.6.14" />
<PackageReference Include="QRCoderNetCore" Version="1.0.0" />
<PackageReference Include="SendGrid" Version="9.29.3" />
<PackageReference Include="SkiaSharp" Version="2.88.8" />
<PackageReference Include="SkiaSharp.Views.Desktop.Common" Version="2.88.8" />
<PackageReference Include="Swashbuckle.AspNetCore.Swagger" Version="6.5.0" />
<PackageReference Include="Swashbuckle.AspNetCore.SwaggerGen" Version="6.5.0" />
<PackageReference Include="Swashbuckle.AspNetCore.SwaggerUI" Version="6.5.0" />
<PackageReference Include="Swashbuckle.AspNetCore.Swagger" Version="6.6.1" />
<PackageReference Include="Swashbuckle.AspNetCore.SwaggerGen" Version="6.6.1" />
<PackageReference Include="Swashbuckle.AspNetCore.SwaggerUI" Version="6.6.1" />
</ItemGroup>
<ItemGroup>
@ -76,9 +76,5 @@
</Reference>
</ItemGroup>
<ItemGroup>
<Folder Include="Services\" />
</ItemGroup>
</Project>

View File

@ -7,6 +7,8 @@ namespace TIAMWebApp.Shared.Application.Models
public const string BaseUrlWithSlash = BaseUrl + "/";
public const string BaseUrlWithSlashAndVersion = BaseUrlWithSlash + "v1/";
public const string LoggerApi = BaseUrlWithSlashAndVersion + "LoggerApi/";
public const string UserAPI = BaseUrlWithSlashAndVersion + "UserAPI/";
public const string WeatherForecastAPI = BaseUrlWithSlashAndVersion + "WeatherForecastAPI/";
public const string PopulationStructureAPI = BaseUrlWithSlashAndVersion + "PopulationStructureAPI/";
@ -16,6 +18,9 @@ namespace TIAMWebApp.Shared.Application.Models
public const string FileAPI = BaseUrlWithSlashAndVersion + "FileAPI/";
public const string MessageAPI = BaseUrlWithSlashAndVersion + "MessageAPI/";
public const string LoggerRouteName = "Logger";
public const string Logger = LoggerApi + LoggerRouteName;
//userdata
public const string UserTestRouteName = "test1";
public const string UserTest = UserAPI + UserTestRouteName;
@ -41,9 +46,6 @@ namespace TIAMWebApp.Shared.Application.Models
public const string LogoutUserRouteName = "LogoutUser";
public const string LogoutUser = UserAPI + LogoutUserRouteName;
public const string LoggerRouteName = "Logger";
public const string Logger = UserAPI + LoggerRouteName;
public const string CreateUserRouteName = "CreateUser";
public const string CreateUser = UserAPI + CreateUserRouteName;

View File

@ -1,6 +1,7 @@
using AyCode.Core.Loggers;
using System.Net.Http.Json;
using System.Text.Json;
using AyCode.Services.Loggers;
using TIAM.Entities.Transfers;
using TIAMWebApp.Shared.Application.Interfaces;
using TIAMWebApp.Shared.Application.Models;
@ -13,9 +14,9 @@ namespace TIAMWebApp.Shared.Application.Services
public class TransferDataService : ITransferDataService
{
private readonly HttpClient http;
private readonly IAcLogWriterBase _browserConsoleLogWriter;
private readonly IAcLogWriterClientBase _browserConsoleLogWriter;
public TransferDataService(HttpClient http, IAcLogWriterBase browserConsoleLogWriter)
public TransferDataService(HttpClient http, IAcLogWriterClientBase browserConsoleLogWriter)
{
this.http = http;
this._browserConsoleLogWriter = browserConsoleLogWriter;

View File

@ -22,9 +22,9 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Cryptography.KeyDerivation" Version="8.0.4" />
<PackageReference Include="Microsoft.AspNetCore.Cryptography.KeyDerivation" Version="8.0.5" />
<PackageReference Include="Microsoft.AspNetCore.Http.Features" Version="5.0.17" />
<PackageReference Include="Microsoft.JSInterop" Version="8.0.4" />
<PackageReference Include="Microsoft.JSInterop" Version="8.0.5" />
<PackageReference Include="SkiaSharp" Version="2.88.8" />
<PackageReference Include="SkiaSharp.Views.Desktop.Common" Version="2.88.8" />
<PackageReference Include="System.Net.Http.Json" Version="8.0.0" />

View File

@ -2,6 +2,7 @@
using AyCode.Core.Consts;
using AyCode.Core.Enums;
using AyCode.Core.Loggers;
using AyCode.Services.Loggers;
using Microsoft.JSInterop;
using TIAMWebApp.Shared.Application.Models.ClientSide;
@ -16,7 +17,7 @@ namespace TIAMWebApp.Shared.Application.Utility;
// { }
//}
public class BrowserConsoleLogWriter : AcTextLogWriterBase
public class BrowserConsoleLogWriter : AcTextLogWriterBase, IAcLogWriterClientBase
{
private readonly IJSRuntime _jsRuntime;

View File

@ -1,10 +1,9 @@
using AyCode.Entities.LogItems;
using AyCode.Services.Loggers;
using static System.Net.WebRequestMethods;
using AyCode.Services.Loggers;
using TIAMWebApp.Shared.Application.Models.ClientSide;
using TIAMWebApp.Shared.Application.Models.PageModels;
using TIAMWebApp.Shared.Application.Models;
using System.Net.Http.Json;
using AyCode.Core.Helpers;
using AyCode.Core.Loggers;
namespace TIAMWebApp.Shared.Application.Utility;
@ -17,6 +16,7 @@ public class HttpClientLogItemWriter : AcHttpClientLogItemWriter<AcLogItemClient
{
var url = $"{Setting.ApiBaseUrl}/{APIUrls.Logger}";
_httpClient.PostAsJsonAsync(url, logItem);
//logItem.ThreadId = Environment.CurrentManagedThreadId;
_httpClient.PostAsJsonAsync(url, logItem).Forget();
}
}

View File

@ -1,5 +1,6 @@
using AyCode.Core.Enums;
using AyCode.Core.Loggers;
using AyCode.Services.Loggers;
using TIAM.Core.Loggers;
namespace TIAMWebApp.Shared.Application.Utility;
@ -9,9 +10,9 @@ public class LoggerClient<TCategory> : Logger, ILogger<TCategory>
public LoggerClient() : base(AppType.Web, LogLevel.Detail, typeof(TCategory).Name)
{ }
public LoggerClient(params IAcLogWriterBase[] logWriters) : base(AppType.Web, LogLevel.Detail, typeof(TCategory).Name, logWriters)
public LoggerClient(params IAcLogWriterClientBase[] logWriters) : base(AppType.Web, LogLevel.Detail, typeof(TCategory).Name, logWriters)
{ }
public LoggerClient(AppType appType, LogLevel logLevel, params IAcLogWriterBase[] logWriters) : base(appType, logLevel, typeof(TCategory).Name, logWriters)
public LoggerClient(AppType appType, LogLevel logLevel, params IAcLogWriterClientBase[] logWriters) : base(appType, logLevel, typeof(TCategory).Name, logWriters)
{ }
}