public async Task <bool> LogoutCleanAsync(IProgressDialog progressDialog) { APIResult fooAPIResult; progressDialog.Title = $"檢查與更新存取權杖"; bool fooRefreshTokenResult = await RefreshTokenHelper.CheckAndRefreshToken(dialogService, refreshTokenManager, systemStatusManager, appStatus); if (fooRefreshTokenResult == false) { return(false); } await leaveFormsManager.ReadFromFileAsync(); leaveFormsManager.Items.Clear(); await leaveFormsManager.WriteToFileAsync(); progressDialog.Title = $"回報例外異常資料中"; await exceptionRecordsManager.ReadFromFileAsync(); if (exceptionRecordsManager.Items.Count > 0) { List <ExceptionRecordRequestDTO> fooExceptionRecordRequestDTOList = new List <ExceptionRecordRequestDTO>(); foreach (var item in exceptionRecordsManager.Items) { ExceptionRecordRequestDTO fooExceptionRecordRequestDTO = new ExceptionRecordRequestDTO() { CallStack = item.CallStack, DeviceModel = item.DeviceModel, DeviceName = item.DeviceName, ExceptionTime = item.ExceptionTime, Message = item.Message, OSType = item.OSType, OSVersion = item.OSVersion, User = new UserDTO() { Id = appStatus.SystemStatus.UserID }, }; fooExceptionRecordRequestDTOList.Add(fooExceptionRecordRequestDTO); } fooAPIResult = await exceptionRecordsManager.PostAsync(fooExceptionRecordRequestDTOList); if (fooAPIResult.Status != true) { await dialogService.DisplayAlertAsync("回報例外異常資料中 發生錯誤", fooAPIResult.Message, "確定"); return(false); } } return(true); }
public async void OnNavigatedTo(INavigationParameters parameters) { var naviMode = parameters.GetNavigationMode(); if (naviMode == NavigationMode.New) { await leaveFormTypesManager.ReadFromFileAsync(); await leaveFormsManager.ReadFromFileAsync(); await LoadDataAsync(false); } else { bool fooNeedRefresh = parameters.GetValue <bool>("NeedRefresh"); if (fooNeedRefresh == true) { await LoadDataAsync(); } } }