private async Task OnSend()
        {
            try
            {
                IsBusy = true;
                ReportIssueQueryContext context = new ReportIssueQueryContext
                {
                    CustomerInfo = Api.GetCustomerContext(),
                    Note         = Message,
                    Branch       = Settings.MyInfo.CurrentUser.UserBranchCode,
                    ImageBase64  = _selectedImageBytes != null?Convert.ToBase64String(_selectedImageBytes) : null,
                };
                var response = await Api.ReportIssue(context);

                if (response.Successful.GetValueOrDefault())
                {
                    await Alert.ShowMessage(Translate.Get(nameof(AppResources.ReportSent)),
                                            Translate.Get(nameof(AppResources.Report)));

                    Message       = string.Empty;
                    SelectedImage = null;
                    return;
                }

                await Alert.DisplayApiCallError(response.ExceptionMessage, response.ValidationErrors,
                                                Translate.Get(nameof(AppResources.ReportSentError)));
            }
            catch (Exception e)
            {
                await Alert.DisplayError(e, Translate.Get(nameof(AppResources.ReportSentError)));
            }
            finally
            {
                IsBusy = false;
            }
        }
コード例 #2
0
 public async Task <ApiResponseOfBoolean> ReportIssue(ReportIssueQueryContext context)
 {
     return(await AXClient.Instance.ReportIssueAsync(context).ConfigureAwait(false));
 }