Merge branch 'fix/v0.3_Bugs' into 'main'

Fix/v0.3 bugs

Closes #56 and #57

See merge request fabinfra/fabaccess/borepin!49
This commit is contained in:
TheJoKlLa 2022-04-28 15:05:28 +00:00
commit c1d0399105
2 changed files with 29 additions and 2 deletions

View File

@ -5,6 +5,7 @@ using Borepin.Base;
using Borepin.Model;
using Borepin.Service.BFFH;
using Borepin.Service.BFFH.Exceptions;
using FabAccessAPI.Exceptions;
using Prism.Commands;
using Prism.Navigation;
using Prism.Services;
@ -85,13 +86,20 @@ namespace Borepin.PageModel.AddServerProcess
IsBusy = false;
return;
}
catch (AuthenticatingFailedException)
catch (AuthenticationFailedException)
{
await _PageDialogService.DisplayAlertAsync("Connection failed", "Unable to authenticate to server.", "Ok").ConfigureAwait(false);
IsBusy = false;
return;
}
catch(Exception)
{
await _PageDialogService.DisplayAlertAsync("Connection failed", "Unexpected Error.", "Ok").ConfigureAwait(false);
IsBusy = false;
return;
}
await _NavigationService.NavigateAsync("/MainPage/NavigationPage/MachineListPage").ConfigureAwait(false);
}

View File

@ -1,5 +1,6 @@
using Borepin.Base;
using Borepin.Service.BFFH;
using Borepin.Service.BFFH.Exceptions;
using FabAccessAPI.Schema;
using Prism.Commands;
using Prism.Navigation;
@ -97,8 +98,21 @@ namespace Borepin.PageModel
return;
}
// END HACK
string id = null;
try
{
id = await QRToID(ScanResult.Text).ConfigureAwait(false);
}
catch(ReconnectingFailedException)
{
Device.BeginInvokeOnMainThread(async () =>
{
await _PageDialogService.DisplayAlertAsync("Connection failed", "Please reconnect to the server.", "OK").ConfigureAwait(false);
IsScanning = true;
});
string id = await QRToID(ScanResult.Text).ConfigureAwait(false);
return;
}
if (id != null)
{
@ -119,13 +133,18 @@ namespace Borepin.PageModel
await _PageDialogService.DisplayAlertAsync("Alert", "QR Code is invalid", "OK").ConfigureAwait(false);
IsScanning = true;
});
return;
}
IsScanning = true;
}
public async Task<string> QRToID(string value)
{
if (!_BFFHService.IsConnected)
{
await _BFFHService.Reconnect().ConfigureAwait(false);
IsConnected = false;
return null;
}