HKC_Blazor/MasaBlazorApp3/Pages/InitPage.razor

118 lines
3.8 KiB
Plaintext

@page "/init"
@using MasaBlazorApp3.Pojo.Config;
@using MasaBlazorApp3.Pojo.Vo;
@using MasaBlazorApp3.Util;
@using Microsoft.Extensions.Options;
@using Newtonsoft.Json;
@using log4net;
<RadzenStack AlignItems="AlignItems.Center" Gap="2rem" class="rz-p-12">
<RadzenImage Path="images/community.svg" Style="width: 200px;" AlternateText="community" />
<RadzenText TextStyle="TextStyle.H6">加载程序必要连接中,请稍等。。。</RadzenText>
<RadzenText TextStyle="TextStyle.H6">@msg</RadzenText>
<RadzenText TextStyle="TextStyle.H6">@errMsg</RadzenText>
</RadzenStack>
@code {
@inject Radzen.DialogService dialogService;
@inject IOptions<DrawerConfig> setting;
@inject NotificationService _message;
@inject PortUtil PortUtil;
@inject FingerprintUtil FingerprintUtil;
@inject GlobalStateService globalStateService;
string msg;
string errMsg;
private readonly ILog logger = LogManager.GetLogger(typeof(InitPage));
protected override async Task OnInitializedAsync()
{
base.OnInitializedAsync();
}
protected override async Task OnAfterRenderAsync(bool firstRender)
{
base.OnAfterRender(firstRender);
if (firstRender)
{
await Task.Delay(15);
msg = "开始连接指纹模块";
InvokeAsync(StateHasChanged);
try
{
bool flag=await FingerprintUtil.ConnectionMain();
if (flag)
{
msg = "指纹模块连接成功";
}
else
{
msg = "指纹模块连接失败";
}
InvokeAsync(StateHasChanged);
} catch (Exception e)
{
msg = "指纹模块连接失败";
errMsg += "【指纹模块连接失败】";
InvokeAsync(StateHasChanged);
}
await Task.Delay(500);
msg = "开始连接抽屉串口";
InvokeAsync(StateHasChanged);
try
{
PortUtil.drawerSerial.Open();
logger.Info($"抽屉串口打开结果【{PortUtil.drawerSerial.IsOpen}】");
msg = "抽屉串口连接成功";
InvokeAsync(StateHasChanged);
} catch (Exception e)
{
msg = "抽屉串口连接失败";
errMsg += "【抽屉串口连接失败】";
InvokeAsync(StateHasChanged);
}
await Task.Delay(500);
msg = "开始连接CanBus模块";
InvokeAsync(StateHasChanged);
try
{
PortUtil.canBusSerial.Open();
logger.Info($"CanBus模块打开结果【{PortUtil.canBusSerial.IsOpen}】");
msg = "CanBus模块连接成功";
InvokeAsync(StateHasChanged);
} catch (Exception e)
{
msg = "CanBus模块连接失败";
errMsg += "【CanBus模块连接失败】";
InvokeAsync(StateHasChanged);
}
await Task.Delay(500);
msg = "开始连接条码扫描模块";
InvokeAsync(StateHasChanged);
try
{
PortUtil.scanCodeSerial.Open();
logger.Info($"条码扫描模块打开结果【{PortUtil.scanCodeSerial.IsOpen}】");
msg = "条码扫描模块连接成功";
InvokeAsync(StateHasChanged);
} catch (Exception e)
{
msg = "条码扫描模块连接失败";
errMsg += "【条码扫描模块连接失败】";
InvokeAsync(StateHasChanged);
}
globalStateService.isInit = true;
dialogService.Close();
}
}
}