public async void OnSaveClicked(object sender, EventArgs e) { var m_Http = XComosMobile.Services.XServices.Instance.GetService <HttpClient>(); IBRServiceContracts.CWriteValueCollection collection = new IBRServiceContracts.CWriteValueCollection() { Values = Values.Values.ToArray(), }; //var http = m_ComosWeb.GetComosHttpClient(); string user = ProjectData.User; string project = ProjectData.SelectedProject.UID; string workinglayer = ProjectData.SelectedLayer.UID; string language = ProjectData.SelectedLanguage.LCID; var db = Services.XServices.Instance.GetService <Services.XDatabase>(); string servername = db.ReadSetting("ServerName", "http://siemens.southcentralus.cloudapp.azure.com"); string output = Newtonsoft.Json.JsonConvert.SerializeObject(collection); StringContent content = new StringContent(output, Encoding.UTF8, "application/json"); string url = string.Format(servername + "/BRMobile/v1/WriteComosValues/{0}/{1}/{2}/{3}", user, WebUtility.UrlEncode(project), WebUtility.UrlEncode(workinglayer), language); // Working POST /* * string output = Newtonsoft.Json.JsonConvert.SerializeObject(collection); * StringContent content = new StringContent(output, Encoding.UTF8, "application/json"); * string url = string.Format("http://siemens.southcentralus.cloudapp.azure.com/BRMobile/v1/WriteComosValues/{0}/{1}/{2}/{3}", * user, WebUtility.UrlEncode(project), WebUtility.UrlEncode(workinglayer), language); */ var response = await m_Http.PostAsync(url, content); var platform = Services.XServices.Instance.GetService <Services.IPlatformSystem>(); if (response.StatusCode != HttpStatusCode.OK) { await App.Current.MainPage.DisplayAlert(Services.TranslateExtension.TranslateText("error"), Services.TranslateExtension.TranslateText("save_failed") + response.StatusCode.ToString(), "OK"); return; } output = await response.Content.ReadAsStringAsync(); IBRServiceContracts.TResult <IBRServiceContracts.CWriteValueResult[]> result = Newtonsoft.Json.JsonConvert.DeserializeObject < IBRServiceContracts.TResult <IBRServiceContracts.CWriteValueResult[]> >(output); if (!result.Status) { await App.Current.MainPage.DisplayAlert(Services.TranslateExtension.TranslateText("error"), Services.TranslateExtension.TranslateText("save_failed") + result.Message, "OK"); return; } await App.Current.MainPage.DisplayAlert("", Services.TranslateExtension.TranslateText("done"), "OK"); return; }
private async Task <bool> SaveValuesToComos(ComosWebSDK.Data.CObject cacheobj) { string user = ProjectData.User; string project = ProjectData.SelectedProject.UID; string workinglayer = ProjectData.SelectedLayer.UID; string language = ProjectData.SelectedLanguage.LCID; var m_Http = Services.XServices.Instance.GetService <HttpClient>(); ComosWebSDK.brcomosweb.ComosBRWeb m_comosbrweb = new ComosWebSDK.brcomosweb.ComosBRWeb(m_Http); var db = Services.XServices.Instance.GetService <Services.IDatabase>(); IBRServiceContracts.CWriteValueCollection collection = db.GetAllCachedSpecsFromOwner(cacheobj.UID, project, workinglayer); //string servername = db.ReadSetting("ServerName", ""); string servername = db.ReadSetting("ServerNameBR", "http://siemens.southcentralus.cloudapp.azure.com:5109/Service.svc"); var result = true; if (collection.Values.Count() > 0) { this.ShowSpinner(Services.TranslateExtension.TranslateText("saving")); try { result = await m_comosbrweb.WriteComosValues(collection, servername, user, project, workinglayer, language); } catch (Exception ex) { await App.Current.MainPage.DisplayAlert("Error", ex.Message, "OK"); return(false); } this.HideSpinner(); } if (result) { if (cacheobj != null) { db.ClearAllSpecsFromOwner(cacheobj.UID, project, workinglayer); } //ShowToast(Services.TranslateExtension.TranslateText("done")); return(true); } else { //ShowToast(Services.TranslateExtension.TranslateText("save_failed")); return(false); } }
public async Task <IBRServiceContracts.TResult <string> > CreateComosDevice(IBRServiceContracts.CWriteValueCollection collection, string server, string project, string layer, string lang, string owner, string cdev, string user, string desc) { string output = Newtonsoft.Json.JsonConvert.SerializeObject(collection); StringContent content = new StringContent(output, Encoding.UTF8, "application/json"); string url = string.Format(server + "/v1/CreateComosDeviceByWebUID/{0}/{1}/{2}/{3}/{4}/{5}/{6}", WebUtility.UrlEncode(project), WebUtility.UrlEncode(layer), lang, WebUtility.UrlEncode(owner), WebUtility.UrlEncode(cdev), user, desc); var response = await m_Http.PostAsync(url, content); output = await response.Content.ReadAsStringAsync(); var result = Newtonsoft.Json.JsonConvert.DeserializeObject <IBRServiceContracts.TResult <string> >(output); return(result); }
private async Task <bool> SaveValuesToComos() { string user = ProjectData.User; string project = ProjectData.SelectedProject.UID; string workinglayer = ProjectData.SelectedLayer.UID; string language = ProjectData.SelectedLanguage.LCID; IBRServiceContracts.CWriteValueCollection collection = new IBRServiceContracts.CWriteValueCollection() { Values = Values.Values.ToArray(), }; var db = Services.XServices.Instance.GetService <Services.XDatabase>(); string servername = db.ReadSetting("ServerNameBR", "http://siemens.southcentralus.cloudapp.azure.com:5109/Service.svc"); this.ShowSpinner(Services.TranslateExtension.TranslateText("saving")); var m_comosbrweb = GetBRComosWeb(); try { var result = await m_comosbrweb.WriteComosValues(collection, servername, user, project, workinglayer, language); this.HideSpinner(); if (result) { if (MainObject != null) { db.ClearAllSpecsFromOwner(MainObject.UID, project, workinglayer); } ShowToast(Services.TranslateExtension.TranslateText("done")); return(true); } else { ShowToast(Services.TranslateExtension.TranslateText("save_failed")); return(false); } } catch (Exception ex) { await App.Current.MainPage.DisplayAlert("Error", ex.Message, "OK"); return(false); } }
public async Task <bool> WriteComosValues(IBRServiceContracts.CWriteValueCollection collection, string servername, string user, string project, string workinglayer, string language) { string output = Newtonsoft.Json.JsonConvert.SerializeObject(collection); StringContent content = new StringContent(output, Encoding.UTF8, "application/json"); string url = string.Format(servername + "/v1/WriteComosValues/{0}/{1}/{2}/{3}", user, WebUtility.UrlEncode(project), WebUtility.UrlEncode(workinglayer), language); var response = await m_Http.PostAsync(url, content); // Acá hay un error if (response.StatusCode != HttpStatusCode.OK) { return(false); } output = await response.Content.ReadAsStringAsync(); IBRServiceContracts.TResult <IBRServiceContracts.CWriteValueResult[]> result = Newtonsoft.Json.JsonConvert.DeserializeObject < IBRServiceContracts.TResult <IBRServiceContracts.CWriteValueResult[]> >(output); return(result.Status); }
public async void OnSaveClicked(object sender, EventArgs e) { bool cancelBackButtonAction = false; var plataform = Services.XServices.Instance.GetService <Services.IPlatformSystem>(); if (plataform.IsOnline) { //If is Parte,elemento y Modo (PEM) activity, Z10T00002.Z001E, Z10T00002.Z002E and Z10T00002.Z003E attributes must be in changed values, and they must have a value different from "". Else, cancel save! (prevent sending blank failure tree) bool rejectSave = false; if (this.isPEMActivity) { var attributePEMindex = 0; IBRServiceContracts.CWriteValueCollection collection = new IBRServiceContracts.CWriteValueCollection() { Values = Values.Values.ToArray(), }; KeyValuePair <string, IBRServiceContracts.CWriteValue> changedValues = new KeyValuePair <string, IBRServiceContracts.CWriteValue>(); for (int i = 0; i < Values.Count; i++) { changedValues = Values.ElementAt(i); if (changedValues.Key == "Z10T00002.Z001E" || changedValues.Key == "Z10T00002.Z002E" || changedValues.Key == "Z10T00002.Z003E") { attributePEMindex++; if (changedValues.Value.ToString() == "") { rejectSave = true; } } } if (attributePEMindex != 3) { rejectSave = true; } //if I didnt find three attributes, then they might not be completed } if (!rejectSave) { await SaveValuesToComos(); this.ShowSpinner("Guardando media..."); await midiacontrol.UploadAllPicturesFromObject(MainObject.UID); await midiacontrol.UploadAllAudiosFromObject(MainObject.UID); } else { ShowToast("Se debe completar el árbol de fallas para poder guardar la actividad"); cancelBackButtonAction = true; } this.HideSpinner(); } else { CacheAttributes(); } if (!cancelBackButtonAction) { this.reloadWorkPackageGrid = true; DoBackButtonPressed(); } }
private async void saveTransactionToComos(string itemLargo, string cantidad, bool aComprar) { try { if (Double.Parse(cantidad) > 0) { if (aComprar) { CheckValue("Y01.E03", "Compra", ""); CheckValue("Y01.E05", "", ""); // Pedido CheckValue("Y01.E06", "", ""); // Entregado CheckValue("Y01.E07", cantidad, ""); // Comprado } else { CheckValue("Y01.E03", "Pedido", ""); CheckValue("Y01.E05", cantidad, ""); // Pedido CheckValue("Y01.E06", "", ""); // Entregado CheckValue("Y01.E07", "", ""); // Comprado } CheckValue("Y01.E08", ProjectData.User, ""); // User } else { CheckValue("Y01.E03", "Entrega", ""); CheckValue("Y01.E05", cantidad, ""); // Pedido CheckValue("Y01.E06", "", ""); // Entregado CheckValue("Y01.E07", "", ""); // Comprado CheckValue("Y01.E08", ProjectData.User, ""); // User } CheckValue("Y01.E01", DateTime.Now.ToString("d-MM-yyyy HH:mm:ss"), ""); // Time of day CheckValue("Y01.E04", itemLargo, ""); // Material Name IBRServiceContracts.CWriteValueCollection collection = new IBRServiceContracts.CWriteValueCollection() { Values = Values.Values.ToArray(), }; this.ShowSpinner("Guardando transacción..."); var m_Http = Services.XServices.Instance.GetService <HttpClient>(); ComosWebSDK.brcomosweb.ComosBRWeb m_comosbrweb = new ComosWebSDK.brcomosweb.ComosBRWeb(m_Http); var result = await m_comosbrweb.CreateComosDevice( collection, db.ReadSetting("ServerNameBR", ""), ProjectData.SelectedProject.UID, ProjectData.SelectedLayer.UID, ProjectData.SelectedLanguage.LCID, wp.UID, "U:13:A4A9QUA65S:I", ProjectData.User, "History Object (WP Transactions)"); if (!result.Status) { this.ShowToast("Error. No se guardó la transacción en COMOS. Contacte al administrador. Referencia: COMOS.IO"); } else { if (result.data != "") { this.ShowToast("Transacción guardada"); returnToWorkpackagePage(); } else { this.ShowToast("Error. No se pudo guardar la transacción correctamente. Contacte al administrador. Referencia: COMOS.IO"); } } } catch (Exception ex2) { await App.Current.MainPage.DisplayAlert("Error", ex2.Message, "OK"); } finally { this.HideSpinner(); } }
public async void OnUploadClicked(object sender, EventArgs e) { if (!CheckOnline()) { this.ShowToast(Services.TranslateExtension.TranslateText("uploading_tasks_only_online")); return; } if (TasksCollection == null || TasksCollection.Length == 0) { this.ShowToast(Services.TranslateExtension.TranslateText("no_tasks_found")); return; } Services.XDatabase db = Services.XServices.Instance.GetService <Services.XDatabase>(); ViewModels.ProjectData projectdata = Services.XServices.Instance.GetService <ViewModels.ProjectData>(); IBRServiceContracts.CWriteValueCollection totalvalues = new IBRServiceContracts.CWriteValueCollection(); this.ShowSpinner(Services.TranslateExtension.TranslateText("saving_tasks")); foreach (var item in TasksCollection) { IBRServiceContracts.CWriteValueCollection values = db.GetAllCachedSpecsFromOwner(item.Row.Items[0].UID, projectdata.SelectedProject.UID, projectdata.SelectedLayer.UID); if (totalvalues.Values == null) { totalvalues.Values = values.Values; } else { totalvalues.Values = totalvalues.Values.Concat(values.Values).ToArray(); } } string user = projectdata.User; string project = projectdata.SelectedProject.UID; string workinglayer = projectdata.SelectedLayer.UID; string language = projectdata.SelectedLanguage.LCID; string servername = db.ReadSetting("ServerNameBR", "http://siemens.southcentralus.cloudapp.azure.com:5109/Service.svc"); var m_comosbrweb = GetBRComosWeb(); try { var result = await m_comosbrweb.WriteComosValues(totalvalues, servername, user, project, workinglayer, language); if (result) { foreach (var item in totalvalues.Values) { db.ClearAllSpecsFromOwner(item.WebSystemUID, project, workinglayer); } m_QueryResult = null; TasksCollection = null; Device.BeginInvokeOnMainThread(async() => { await LoadTasks(); }); ShowToast(Services.TranslateExtension.TranslateText("done")); } else { ShowToast(Services.TranslateExtension.TranslateText("save_failed")); } } catch (Exception ex) { await App.Current.MainPage.DisplayAlert("Error", ex.Message, "OK"); return; } this.HideSpinner(); }
public void CacheDeviceToCreate(string project, string overlay, string owner, string cdev, IBRServiceContracts.CWriteValueCollection collection, string tempuid, string ownername, string ownerpicture, string description) { string values = Newtonsoft.Json.JsonConvert.SerializeObject(collection); m_DB.CacheDeviceToCreate(project, overlay, owner, cdev, values, tempuid, ownername, ownerpicture, description); }