private void OnStartMeasure(object sender, EventArgs e) { var batch = new MeasureBatch(); //gather data try { batch.Grade = pckGrade.SelectedItem.ToString(); batch.InnerDiameter = float.Parse(pckInnerDiam.SelectedItem.ToString()); batch.OuterDiameter = float.Parse(pckOuterDiam.SelectedItem.ToString()); batch.TopThread = pckThread.SelectedItem.ToString(); batch.Weight = int.Parse(pckWeight.SelectedItem.ToString()); batch.SiteName = pckSiteName.SelectedItem.ToString(); batch.Uploaded = false; //batch.Measurements = new List<Measurement>(); GetGeoLocation(batch); var measurePage = new CollectMeasurePage(batch); this.Navigation.PushAsync(measurePage, true); } catch (Exception ex) { return; } }
public CollectMeasurePage(MeasureBatch batch) { InitializeComponent(); this.Appearing += CollectMeasurePage_Appearing; _batch = batch; _batchMeasures = new List <Measurement>(); }
private async static Task <bool> SendMeasurements(string svcURL, MeasureBatch batch, List <Measurement> measurements) { var endpoint = svcURL + "JobSite"; HttpClient client = new HttpClient(); var data = Conversion(batch, measurements); var json = JsonConvert.SerializeObject(data); var content = new StringContent(json, Encoding.UTF8, "application/json"); var result = false; try { var response = await client.PostAsync(endpoint, content); if (response.StatusCode == System.Net.HttpStatusCode.OK || response.StatusCode == System.Net.HttpStatusCode.Created) { result = true; } else { System.Diagnostics.Debug.WriteLine(response.StatusCode + " - " + await response.Content.ReadAsStringAsync()); result = false; } } catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex.Message + " at " + ex.StackTrace); result = false; } return(result); }
private void GetGeoLocation(MeasureBatch batch) { Task.Run(GetCurrentLocation).ContinueWith(r => { var position = r.Result; batch.Latitude = position.Latitude; batch.Longitude = position.Longitude; }); }
public void StoreFullBatch(MeasureBatch batch, List <Measurement> measurements) { var cnt = _database.InsertAsync(batch).Result; foreach (var m in measurements) { m.MeasureBatchID = batch.ID; } _database.InsertAllAsync(measurements); }
private static JobSiteObject Conversion(MeasureBatch measureBatch, List <Measurement> measurements) { var jobSite = new JobSiteObject { JobSiteId = 0, Grade = measureBatch.Grade, OuterDiameter = measureBatch.OuterDiameter, InnerDiameter = measureBatch.InnerDiameter, TotalWeight = measureBatch.Weight, ThreadType = measureBatch.TopThread, Latitude = measureBatch.Latitude, Longitude = measureBatch.Longitude, Title = measureBatch.SiteName, Measurements = convertMeasurements(measurements) }; return(jobSite); }
public void UpdateBatch(MeasureBatch batch) { _database.UpdateAsync(batch); }