예제 #1
0
        private async void btnSave_Clicked(object sender, EventArgs e)
        {
            Stream image = await SignatureView.GetImageStreamAsync(SignaturePad.Forms.SignatureImageFormat.Png);

            CSignature unterschrift = new CSignature();

            unterschrift.Name       = EntryName.Text;
            unterschrift.Id         = Guid.NewGuid();
            unterschrift.Signature1 = ReadFully(image); // serializeData(points);

            bool rc = await App.restManager.SetSignatureAsync(unterschrift);

            if (rc)
            {
                if (_listIndex == 0)
                {
                    rc = await App.restManager.SetSignatureAssign(unterschrift.Id.ToString(), _actOrderAchievement.IdOrder.ToString(), _actOrderAchievement.DateTimeAchie);

                    _actOrderAchievement.IdSignature = unterschrift.Id;
                }
                else if (_listIndex == 1)
                {
                    rc = await App.restManager.SetSignatureAssign(unterschrift.Id.ToString(), _actOrderAchievement.IdOrder.ToString(), DateTime.MinValue);

                    _actOrderAchievement.IdSignatureOrder = unterschrift.Id;
                }

                DependencyService.Get <IMessage>().ShortAlert("Unterschrift gespeichert.");
            }
            await Navigation.PopModalAsync();
        }
        public async Task <bool> SetSignatureAsync(CSignature unterschrift)
        {
            // http://localhost:63491/api/signature

            string resource = String.Format("{0}signature", Constants.RestUrl);
            var    uri      = new Uri(string.Format(resource, unterschrift));

            try
            {
                var json    = JsonConvert.SerializeObject(unterschrift);
                var content = new StringContent(json, Encoding.UTF8, "application/json");

                HttpResponseMessage response = null;

                response = await client.PostAsync(uri, content);

                if (response.IsSuccessStatusCode)
                {
                    return(true);
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine(@"				ERROR {0}", ex.Message);
            }
            return(false);
        }
예제 #3
0
        private async void SetData()
        {
            if (_actOrderAchievement.IdSignature != null && _actOrderAchievement.IdSignature != Guid.Empty)
            {
                // Basic-http
                App.restManager = new RestManager(new Web.RestService());
                CSignature sig = await App.restManager.GetSignatureAsync(_actOrderAchievement.IdSignature.ToString());

                if (sig != null)
                {
                    ImageSource SigImage = ImageSource.FromStream(() => new MemoryStream(sig.Signature1.ToArray()));
                    SignatureView.BackgroundImage = SigImage;
                }

                btnSave.IsVisible   = false;
                btnDelete.IsVisible = true;
            }
            else
            {
                btnSave.IsVisible   = true;
                btnDelete.IsVisible = false;
            }
        }
        public async Task <CSignature> GetSignatureAsync(string idSignature)
        {
            CSignature signature = null;

            string resource = String.Format("{0}signature?idSignature={1}", Constants.RestUrl, idSignature);
            var    uri      = new Uri(string.Format(resource, string.Empty));

            try
            {
                var response = await client.GetAsync(uri);

                if (response.IsSuccessStatusCode)
                {
                    var content = await response.Content.ReadAsStringAsync();

                    signature = JsonConvert.DeserializeObject <CSignature>(content);
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine(@"				ERROR {0}", ex.Message);
            }
            return(signature);
        }
예제 #5
0
 public Task <bool> SetSignatureAsync(CSignature unterschrift)
 {
     return(restService.SetSignatureAsync(unterschrift));
 }