mirror of
https://github.com/NecroticBamboo/QRBee.git
synced 2025-12-21 12:11:53 +00:00
Logging fixed. The connectivity between Android application and API Server fixed.
This commit is contained in:
parent
55428f92f3
commit
edfdfacb2d
@ -9,7 +9,7 @@ namespace QRBee.Droid.Services
|
||||
{
|
||||
internal class LocalSettings : ILocalSettings
|
||||
{
|
||||
public string QRBeeApiUrl => "https://192.169.0.12:5000";
|
||||
public string QRBeeApiUrl => "https://10.0.2.2:7000";
|
||||
|
||||
public async Task SaveSettings(Settings settings)
|
||||
{
|
||||
|
||||
@ -7,12 +7,13 @@ namespace QRBee.Services
|
||||
{
|
||||
public class Settings
|
||||
{
|
||||
//TODO add ClientId
|
||||
public string PIN { get; set; }
|
||||
public bool IsRegistered { get; set; }
|
||||
|
||||
public string Name { get; set; }
|
||||
public string Email { get; set; }
|
||||
public string DateOfBirth { get; set; }
|
||||
public DateTime DateOfBirth { get; set; }
|
||||
public string CardNumber { get; set; }
|
||||
public string ValidFrom { get; set; }
|
||||
public string ExpirationDate { get; set; }
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
using System;
|
||||
using System.Linq;
|
||||
using System.Net.Http;
|
||||
using System.Text.RegularExpressions;
|
||||
using QRBee.Core;
|
||||
using QRBee.Core.Data;
|
||||
using QRBee.Services;
|
||||
@ -38,7 +39,7 @@ namespace QRBee.ViewModels
|
||||
|
||||
public string Name { get; set; }
|
||||
public string Email { get; set; }
|
||||
public string DateOfBirth { get; set; }
|
||||
public DateTime DateOfBirth { get; set; }
|
||||
public string CardNumber { get; set; }
|
||||
public string ValidFrom { get; set; }
|
||||
public string ExpirationDate { get; set; }
|
||||
@ -58,12 +59,23 @@ namespace QRBee.ViewModels
|
||||
return;
|
||||
|
||||
_password1 = value;
|
||||
Password1Color = (string.IsNullOrWhiteSpace(_password1) || _password1.Length < 8 ) ? Color.Red : Color.Green;
|
||||
Password1Color = (CheckPassword(_password1)) ? Color.Green : Color.Red;
|
||||
OnPropertyChanged(nameof(Password1));
|
||||
OnPropertyChanged(nameof(Password1Color));
|
||||
}
|
||||
}
|
||||
|
||||
private static bool CheckPassword(string password)
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(password) || password.Length < 7)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
return Regex.IsMatch(password, "(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z])");
|
||||
//return string.IsNullOrWhiteSpace(password) || password.Length<8 && Regex.IsMatch(password, "[a-zA-Z0-9]");
|
||||
}
|
||||
|
||||
public string Password2
|
||||
{
|
||||
get => _password2;
|
||||
@ -82,13 +94,14 @@ namespace QRBee.ViewModels
|
||||
|
||||
private async void OnRegisterClicked(object obj)
|
||||
{
|
||||
using var client = new HttpClient();
|
||||
using var client = new HttpClient(GetInsecureHandler());
|
||||
var localSettings = DependencyService.Resolve<ILocalSettings>();
|
||||
|
||||
var service = new Core.Client.Client(localSettings.QRBeeApiUrl,client);
|
||||
|
||||
try
|
||||
{
|
||||
//TODO Check if ClientId already in LocalSettings. If Yes update data in database
|
||||
|
||||
//save local settings
|
||||
var settings = new Settings
|
||||
@ -109,7 +122,7 @@ namespace QRBee.ViewModels
|
||||
|
||||
await service.RegisterAsync(new RegistrationRequest
|
||||
{
|
||||
DateOfBirth = DateOfBirth,
|
||||
DateOfBirth = DateOfBirth.ToString("yyyy-MM-dd"),
|
||||
Email = Email,
|
||||
Name = Name,
|
||||
RegisterAsMerchant = false
|
||||
@ -128,5 +141,19 @@ namespace QRBee.ViewModels
|
||||
}
|
||||
}
|
||||
|
||||
// This method must be in a class in a platform project, even if
|
||||
// the HttpClient object is constructed in a shared project.
|
||||
public HttpClientHandler GetInsecureHandler()
|
||||
{
|
||||
var handler = new HttpClientHandler();
|
||||
handler.ServerCertificateCustomValidationCallback = (message, cert, chain, errors) =>
|
||||
{
|
||||
if (cert.Issuer.Equals("CN=localhost"))
|
||||
return true;
|
||||
return errors == System.Net.Security.SslPolicyErrors.None;
|
||||
};
|
||||
return handler;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -23,7 +23,7 @@ namespace QRBee.Api.Controllers
|
||||
[HttpPost("Register")]
|
||||
public Task<RegistrationResponse> Register([FromBody] RegistrationRequest value)
|
||||
{
|
||||
_logger.LogDebug($"Trying to register user {value.Name}");
|
||||
_logger.LogInformation($"Trying to register user {value.Name}");
|
||||
return _service.Register(value);
|
||||
}
|
||||
|
||||
|
||||
@ -12,6 +12,7 @@ builder.Host.ConfigureLogging(logging =>
|
||||
{
|
||||
logging.ClearProviders();
|
||||
GlobalContext.Properties["LOGS_ROOT"] = Environment.GetEnvironmentVariable("LOGS_ROOT") ?? "";
|
||||
System.Text.Encoding.RegisterProvider(System.Text.CodePagesEncodingProvider.Instance);
|
||||
logging.AddLog4Net("log4net.config");
|
||||
});
|
||||
|
||||
|
||||
@ -26,12 +26,13 @@ namespace QRBee.Api.Services
|
||||
Validate(request);
|
||||
|
||||
var info = Convert(request);
|
||||
|
||||
//TODO Check that user doesn't exist(name,surname,dateOfBirth or Telephone number(get from Android))
|
||||
|
||||
var clientId = await _storage.PutUserInfo(info);
|
||||
|
||||
return new RegistrationResponse{ClientId = clientId};
|
||||
}
|
||||
|
||||
//TODO Write an UpdateUser command
|
||||
private static void Validate(RegistrationRequest request)
|
||||
{
|
||||
if (request == null)
|
||||
|
||||
@ -7,8 +7,8 @@
|
||||
|
||||
"Logging": {
|
||||
"LogLevel": {
|
||||
"Default": "Information",
|
||||
"Microsoft.AspNetCore": "Warning"
|
||||
"Default": "Trace"
|
||||
//"Microsoft.AspNetCore": "Debug"
|
||||
}
|
||||
},
|
||||
"AllowedHosts": "*"
|
||||
|
||||
@ -6,10 +6,18 @@
|
||||
</layout>
|
||||
</appender>
|
||||
|
||||
<appender name="Console" type="log4net.Appender.ConsoleAppender">
|
||||
<appender name="Console" type="log4net.Appender.ColoredConsoleAppender">
|
||||
<mapping>
|
||||
<level value="ERROR" />
|
||||
<foreColor value="White" />
|
||||
<backColor value="Red, HighIntensity" />
|
||||
</mapping>
|
||||
<mapping>
|
||||
<level value="DEBUG" />
|
||||
<foreColor value="White" />
|
||||
</mapping>
|
||||
<layout type="log4net.Layout.PatternLayout">
|
||||
<!-- Pattern to output the caller's file name and line number -->
|
||||
<conversionPattern value="%5level [%thread] (%file:%line) - %message%newline" />
|
||||
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
|
||||
</layout>
|
||||
</appender>
|
||||
|
||||
@ -25,10 +33,15 @@
|
||||
</layout>
|
||||
</appender>
|
||||
|
||||
<root>
|
||||
<level value="ALL"/>
|
||||
<appender name="BufferingForwardingAppender" type="log4net.Appender.BufferingForwardingAppender" >
|
||||
<bufferSize value="1"/>
|
||||
<appender-ref ref="DebugAppender" />
|
||||
<appender-ref ref="Console" />
|
||||
<appender-ref ref="RollingFile" />
|
||||
</appender>
|
||||
|
||||
<root>
|
||||
<level value="ALL"/>
|
||||
<appender-ref ref="BufferingForwardingAppender" />
|
||||
</root>
|
||||
</log4net>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user