Example #1
0
 public Driver_SignatureScreenPage(int DailyCheckListID)
 {
     InitializeComponent();
     NavigationPage.SetHasNavigationBar(this, false);
     _objDriver_SignatureResponse = new Driver_SignatureResponse();
     _baseUrl         = Settings.Url + Domain.DriverSignatureApiConstant;
     _apiServices     = new RestApi();
     DailyCheckListId = DailyCheckListID;
 }
Example #2
0
        private async void btnSubmitSignature_Clicked(object sender, EventArgs e)
        {
            try
            {
                String imageBase64;
                Stream image = await padView.GetImageStreamAsync(SignaturePad.Forms.SignatureImageFormat.Jpeg, Color.Black, Color.White, 1f);

                // imageSign.Source=image
                //imageSign.Source = ImageSource.FromStream(() =>
                //{
                //    // var stream = _mediaFile.GetStream();
                //    // _mediaFile.Dispose();
                //    return image;
                //});
                _objHeaderModel = new HeaderModel
                {
                    TokenCode = Settings.TokenCode
                };
                if (image != null)
                {
                    imageBase64 = Base64Extensions.ConvertToBase64(image);
                    _objDriver_SignatureRequest = new Driver_SignatureRequest
                    {
                        AddCheckListId = DailyCheckListId.ToString(),
                        DriverSign     = imageBase64
                    };
                    await Navigation.PushPopupAsync(new LoadingPopPage());

                    _objDriver_SignatureResponse = await _apiServices.DriverSignatureAsync(new Get_API_Url().Driver_SignatureApi(_baseUrl), true, _objHeaderModel, _objDriver_SignatureRequest);

                    if (_objDriver_SignatureResponse.Response.statusCode == 200)
                    {
                        Settings.IsPreStartChecked = true;
                        DependencyService.Get <IToast>().Show(_objDriver_SignatureResponse.Response.Message);
                        await App.NavigationPage.Navigation.PushAsync(new WorkSheetDetailsPage());

                        await Navigation.PopAllPopupAsync();
                    }
                    else
                    {
                        DependencyService.Get <IToast>().Show("Something Bad Happend please Try again Later!");
                        await Navigation.PopAllPopupAsync();
                    }
                }
                else
                {
                    DependencyService.Get <IToast>().Show("Please Sign over the signature pad to submit the Dailychecklist!");
                }
            }
            catch (Exception ex)
            {
                var msg = ex.Message;
            }
        }