Ejemplo n.º 1
0
        public async Task Start()
        {
            Status = PageStatus.Processing;
            this.StateHasChanged();
            var checkpoints = await BorderCrossingServiceWebWrapper.ParseLocationHistoryAsync(RequestId, QueryRequest, (sender, e) =>
            {
                PercentageProc = e.ProgressPercentage;
                InvokeAsync(StateHasChanged);
            });

            await BorderCrossingServiceWebWrapper.UpdateResultAsync(RequestId, checkpoints);

            NavigationManager.NavigateTo($"result/{RequestId}");
        }
Ejemplo n.º 2
0
        public async Task OnChanged(FileChangedEventArgs e)
        {
            try
            {
                ErrorMessage     = string.Empty;
                Status           = PageStatus.Uploading;
                FileUploadStatus = ValidationStatus.None;
                StateHasChanged();

                foreach (var file in e.Files)
                {
                    string requestId = await BorderCrossingServiceWebWrapper.AddNewRequestAsync(ConnectionInfo?.RemoteIpAddress, ConnectionInfo?.UserAgent);

                    if (Path.GetExtension(file.Name) != ".zip")
                    {
                        throw new Exception(L["ZipWarning"]);
                    }

                    await using (var memoryStream = new MemoryStream())
                    {
                        await file.WriteToStreamAsync(memoryStream);

                        PercentageLoad = 100;
                        StateHasChanged();
                        Status = PageStatus.Deserializing;
                        await BorderCrossingServiceWebWrapper.PrepareLocationHistoryAsync(memoryStream, file.Name, requestId, (sender, progressChangedEventArgs) =>
                        {
                            PercentagePrep = progressChangedEventArgs.ProgressPercentage;
                            InvokeAsync(StateHasChanged);
                        });

                        NavigationManager.NavigateTo($"query/{requestId}");
                    }
                }
            }
            catch (Exception exception)
            {
                ErrorMessage     = exception.Message;
                FileUploadStatus = ValidationStatus.Error;
                Status           = PageStatus.ReadyToUpload;
                PercentageLoad   = 0;
                PercentagePrep   = 0;
            }
            finally
            {
                this.StateHasChanged();
            }
        }
Ejemplo n.º 3
0
        protected override async Task OnInitializedAsync()
        {
            Message = L["UploadP2"];
            this.StateHasChanged();

            var checkPoints = await BorderCrossingServiceWebWrapper.GetResultAsync(RequestId);

            if (!checkPoints.Any())
            {
                Message = L["ResultNodFound"];
            }
            else
            {
                Response = new BorderCrossingResponse();

                var arrivalPoint = checkPoints.First();
                Response.Periods.Add(new Period
                {
                    ArrivalPoint = arrivalPoint,
                    Country      = arrivalPoint.CountryName
                });
                var last = Response.Periods.Last();

                foreach (var checkPoint in checkPoints.Skip(1).Take(checkPoints.Count - 2))
                {
                    last.DeparturePoint = checkPoint;
                    Response.Periods.Add(new Period
                    {
                        ArrivalPoint = checkPoint,
                        Country      = checkPoint.CountryName,
                    });
                    last = Response.Periods.Last();
                }

                last.DeparturePoint = checkPoints.Last();
            }

            this.StateHasChanged();
        }
Ejemplo n.º 4
0
 protected override async Task OnInitializedAsync()
 {
     Status       = PageStatus.AskParameter;
     QueryRequest = await BorderCrossingServiceWebWrapper.GetQueryRequestAsync(RequestId);
 }