public PageProjects(ComosWebSDK.IComosWeb web) { InitializeComponent(); this.ShowHamburger = false; this.ShowBackButton = true; this.web = web; m_ProjectData = new ViewModels.ProjectData(); this.BindingContext = m_ProjectData; }
private void GetAllDocuments() { List <ComosWebSDK.Data.CDocument> objects = null; Services.IDatabase db = Services.XServices.Instance.GetService <Services.IDatabase>(); ViewModels.ProjectData projectdata = Services.XServices.Instance.GetService <ViewModels.ProjectData>(); objects = db.GetAllDocuments(projectdata.SelectedProject.UID, projectdata.SelectedLayer.UID); listViewDocuments.ItemsSource = objects; }
private void GetAllObjectsWithCachedAttributes() { List <ComosWebSDK.Data.CObject> objects = null; Services.IDatabase db = Services.XServices.Instance.GetService <Services.IDatabase>(); ViewModels.ProjectData projectdata = Services.XServices.Instance.GetService <ViewModels.ProjectData>(); objects = db.GetDevicesWithCachedAttributes(projectdata.SelectedProject.UID, projectdata.SelectedLayer.UID); List <ComosWebSDK.Data.CObject> pictures = db.GetDevicesWithCachedPictures(projectdata.SelectedProject.UID, projectdata.SelectedLayer.UID); foreach (var item in pictures) { if (objects.Select(x => x.UID == item.UID).Count() == 0) { objects.Add(item); } } listViewUploads.ItemsSource = objects; }
private void CompleteTask_Toggled(object sender, ToggledEventArgs e) { if (!isUpdating) { Switch completeTaskSwitch = (Switch)sender; Services.XDatabase db = Services.XServices.Instance.GetService <Services.XDatabase>(); ViewModels.ProjectData ProjectData = Services.XServices.Instance.GetService <ViewModels.ProjectData>(); ViewModel task = (ViewModel)this.BindingContext; string value = task.Items[4].Text.Equals("0") ? "1" : "0"; db.WriteCacheSpecValue(task.Items[0].UID, "Z10T00002.Z10A00048", ProjectData.SelectedProject.UID, ProjectData.SelectedLayer.UID, value, task.Columns[4].DisplayDescription, task.Items[0].Text, task.Items[1].Text); if (value.Equals("1")) { db.WriteCacheSpecValue(task.Items[0].UID, "Z10T00002.Z10A00047", ProjectData.SelectedProject.UID, ProjectData.SelectedLayer.UID, "100%", task.Columns[6].DisplayDescription, task.Items[0].Text, task.Items[1].Text); } } }
private async Task <bool> LoadWorkPackages() { bool result = true; try { ViewModels.ProjectData projectdata = Services.XServices.Instance.GetService <ViewModels.ProjectData>(); IComosWeb m_ComosWeb = Services.XServices.Instance.GetService <IComosWeb>(); IDatabase db = Services.XServices.Instance.GetService <IDatabase>(); //this.ShowToast($"Finding CObject on DB"); CObject o = db.GetCObjectByFullName(projectdata.SelectedLayer.UID, Constants.QueryWorkPackagesAnFailureSystemFullName); if (o == null) { try { o = await m_ComosWeb.GetObjectBySystemFullName(projectdata.SelectedLayer, Constants.QueryWorkPackagesAnFailureSystemFullName); } catch (Exception ex) { await App.Current.MainPage.DisplayAlert("Error", "Error al cargar query: " + ex.Message, Services.TranslateExtension.TranslateText("OK")); return(false); } db.InsertCObject(o, projectdata.SelectedLayer.UID); } if (o == null) { await App.Current.MainPage.DisplayAlert(Services.TranslateExtension.TranslateText("error"), Services.TranslateExtension.TranslateText("my_wp_not_found"), "OK"); return(false); } if (!keepElements) { try { m_QueryResult = await m_ComosWeb.GetqueriesResult( projectdata.SelectedDB.Key, o.ProjectUID, o.OverlayUID, projectdata.SelectedLanguage.LCID, o.UID, null); } catch (Exception ex) { await App.Current.MainPage.DisplayAlert("Error", "Error al cargar query: " + ex.Message, Services.TranslateExtension.TranslateText("OK")); return(false); } } else { keepElements = false; } if (m_QueryResult != null) { if (m_QueryResult.Rows.Count() > 0) { List <WorkPackageViewModel> tasks = new List <WorkPackageViewModel>(); foreach (var row in m_QueryResult.Rows) { tasks.Add(new WorkPackageViewModel(m_QueryResult.Columns, row)); } this.TasksCollection = tasks.ToArray(); OnPropertyChanged("TasksCollection"); OnPropertyChanged("TasksAttributeNames"); UpdateSortingAndGrouping(); OnPropertyChanged("SelectedIndex"); } else { ShowToast(Services.TranslateExtension.TranslateText("no_wp_found")); } ListViewTasks.EndRefresh(); } else { //page not loaded at comosweboffline ShowToast(Services.TranslateExtension.TranslateText("no_wp_found")); ListViewTasks.EndRefresh(); } } catch (Exception e) { await App.Current.MainPage.DisplayAlert(Services.TranslateExtension.TranslateText("error"), e.Message, "OK"); return(false); } return(result); }
private async Task <bool> GetTaskInfoByUID(string UID, bool push = false) { IComosWeb m_ComosWeb = Services.XServices.Instance.GetService <IComosWeb>(); ViewModels.ProjectData projectdata = Services.XServices.Instance.GetService <ViewModels.ProjectData>(); List <CSpecification> Specifications; try { Specifications = await m_ComosWeb.GetObjectSpecification( projectdata.SelectedDB.Key, projectdata.SelectedProject.UID, projectdata.SelectedLayer.UID, projectdata.SelectedLanguage.LCID, UID); } catch (Exception e) { await App.Current.MainPage.DisplayAlert("Error", "Error al obtener atributos: " + e.Message, Services.TranslateExtension.TranslateText("OK")); return(false); } foreach (var item in Specifications) { if (item.Name.Equals(Constants.MobileTabName)) { CSystemObject sysobj; try { sysobj = await m_ComosWeb.GetObject(projectdata.SelectedLayer, UID, projectdata.SelectedLanguage.LCID); } catch (Exception ex) { await App.Current.MainPage.DisplayAlert("Error", "Error al cargar OT´s: " + ex.Message, Services.TranslateExtension.TranslateText("OK")); return(false); } if (sysobj == null) { return(false); } CObject o = new CObject() { ClassType = sysobj.SystemType, Description = sysobj.Description, IsClientPicture = sysobj.IsClientPicture, Name = sysobj.Name, UID = sysobj.UID, OverlayUID = projectdata.SelectedLayer.UID, Picture = sysobj.Picture, ProjectUID = projectdata.SelectedProject.ProjectUID, SystemFullName = sysobj.Name, }; //Get OT Number string otNumber = ""; var objects = await m_ComosWeb.GetNavigatorNodes_Children(projectdata.SelectedLayer.Database, projectdata.SelectedProject.UID, projectdata.SelectedLayer.UID, projectdata.SelectedLanguage.LCID, sysobj.UID, "U"); CObject[] devices = objects.ToArray(); foreach (var device in devices) { if (device.Description.Equals(Constants.WP_OTCode_Description)) { otNumber = device.Name; } } PageAttributes page = new PageAttributes(projectdata.SelectedDB.Key, projectdata.SelectedLanguage.LCID, item, o, "wp", otNumber); //WorkPackageDetail page = new WorkPackageDetail(item,UID); if (push) { await this.Navigation.PushAsync(page); } return(true); } } this.ShowToast(Services.TranslateExtension.TranslateText("mobile_tab_not_found")); return(false); }
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(); }
private async void SearchForItems() { string tosearch = searchBarPageSearch.Text; if (tosearch != null && tosearch != "" && tosearch.Length > 3) { var m_Http = Services.XServices.Instance.GetService <HttpClient>(); ComosWebSDK.brcomosweb.ComosBRWeb m_comosbrweb = new ComosWebSDK.brcomosweb.ComosBRWeb(m_Http); ViewModels.ProjectData m_ProjectData = Services.XServices.Instance.GetService <ViewModels.ProjectData>(); 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("searching")); try { CQuerieResult result = null; if (toggletags.IsToggled && !toggledocs.IsToggled) { result = await m_comosbrweb.SearchDevicesByNameAndDescription(servername, m_ProjectData.SelectedProject.UID, m_ProjectData.SelectedLayer.UID, m_ProjectData.SelectedLanguage.LCID, tosearch); } else if (!toggletags.IsToggled && toggledocs.IsToggled) { result = await m_comosbrweb.SearchDocumentsByNameAndDescription(servername, m_ProjectData.SelectedProject.UID, m_ProjectData.SelectedLayer.UID, m_ProjectData.SelectedLanguage.LCID, tosearch); } else if (toggletags.IsToggled && toggledocs.IsToggled) { result = await m_comosbrweb.SearchAllByNameAndDescription(servername, m_ProjectData.SelectedProject.UID, m_ProjectData.SelectedLayer.UID, m_ProjectData.SelectedLanguage.LCID, tosearch); } else if (!toggletags.IsToggled && !toggledocs.IsToggled) { // do nothing result = new CQuerieResult { Rows = new CRow[1], Columns = new CColumn[1] }; } if (result == null) { this.ShowToast("Error. Intente nuevamente"); return; } m_List.ItemsSource = QueryResultToResultItem(result); //m_Query.Query = result; //await m_Query.ShowListQuery(); //m_Query.SetNavigator(m_ProjectData.SelectedDB.Key); string message = Services.TranslateExtension.TranslateText("results_found"); message = message.Replace("@", result.Rows.Count().ToString()); this.ShowToast(message); } catch (Exception ex) { this.ShowToast(Services.TranslateExtension.TranslateText("search_error") + ex.Message); } finally { this.HideSpinner(); } } }
public static async Task <bool> LoadLogBookForm() { CQuerieResult m_QueryResult; try { ViewModels.ProjectData projectdata = Services.XServices.Instance.GetService <ViewModels.ProjectData>(); IComosWeb m_ComosWeb = Services.XServices.Instance.GetService <IComosWeb>(); IDatabase db = Services.XServices.Instance.GetService <IDatabase>(); CObject o = db.GetCObjectByFullName(projectdata.SelectedLayer.UID, Constants.QueryLogBookTypesFullName); if (o == null) { try { o = await m_ComosWeb.GetObjectBySystemFullName(projectdata.SelectedLayer, Constants.QueryLogBookTypesFullName); } catch (TaskCanceledException) { return(false); } // If there is a Logout Request catch (Exception ex) { await App.Current.MainPage.DisplayAlert("Error", "Error al cargar query: " + ex.Message, Services.TranslateExtension.TranslateText("OK")); return(false); } db.InsertCObject(o, projectdata.SelectedLayer.UID); } if (o == null) { await App.Current.MainPage.DisplayAlert(Services.TranslateExtension.TranslateText("error"), Services.TranslateExtension.TranslateText("no_logbook_types_found"), "OK"); return(false); } try { m_QueryResult = await m_ComosWeb.GetqueriesResult( projectdata.SelectedDB.Key, o.ProjectUID, o.OverlayUID, projectdata.SelectedLanguage.LCID, o.UID, null); } catch (TaskCanceledException) { return(false); } // If there is a Logout Request catch (Exception ex) { await App.Current.MainPage.DisplayAlert("Error", "Error al cargar query: " + ex.Message, Services.TranslateExtension.TranslateText("OK")); return(false); } if (m_QueryResult != null) { Converters.IsQueryCachedValue cachehandler = new Converters.IsQueryCachedValue(); cachehandler.GetQueryCachedValues(m_QueryResult); if (m_QueryResult.Rows.Length > 0) { logBook = new ViewModel(m_QueryResult.Columns, m_QueryResult.Rows[0]); return(true); } else { await App.Current.MainPage.DisplayAlert(Services.TranslateExtension.TranslateText("error"), Services.TranslateExtension.TranslateText("no_logbook_types_found"), "OK"); return(false); } } else { await App.Current.MainPage.DisplayAlert(Services.TranslateExtension.TranslateText("error"), Services.TranslateExtension.TranslateText("no_logbook_types_found"), "OK"); return(false); } } catch (Exception e) { await App.Current.MainPage.DisplayAlert(Services.TranslateExtension.TranslateText("error"), e.Message, "OK"); return(false); } }
public async Task <bool> LoadIncidentTypes() { bool result = false; try { ViewModels.ProjectData projectdata = Services.XServices.Instance.GetService <ViewModels.ProjectData>(); IComosWeb m_ComosWeb = Services.XServices.Instance.GetService <IComosWeb>(); IDatabase db = Services.XServices.Instance.GetService <IDatabase>(); //this.ShowToast($"Finding CObject on DB"); CObject o = db.GetCObjectByFullName(projectdata.SelectedLayer.UID, Constants.QueryIncidentTypesFullName); if (o == null) { try { o = await m_ComosWeb.GetObjectBySystemFullName(projectdata.SelectedLayer, Constants.QueryIncidentTypesFullName); } catch (TaskCanceledException) { return(false); } // If there is a Logout Request catch (Exception ex) { await App.Current.MainPage.DisplayAlert("Error", "Error al cargar query: " + ex.Message, Services.TranslateExtension.TranslateText("OK")); return(false); } db.InsertCObject(o, projectdata.SelectedLayer.UID); } if (o == null) { await App.Current.MainPage.DisplayAlert(Services.TranslateExtension.TranslateText("error"), Services.TranslateExtension.TranslateText("my_incidents_not_found"), "OK"); return(false); } try { m_QueryResult = await m_ComosWeb.GetqueriesResult( projectdata.SelectedDB.Key, o.ProjectUID, o.OverlayUID, projectdata.SelectedLanguage.LCID, o.UID, null); } catch (TaskCanceledException) { return(false); } // If there is a Logout Request catch (Exception ex) { await App.Current.MainPage.DisplayAlert("Error", "Error al cargar query: " + ex.Message, Services.TranslateExtension.TranslateText("OK")); return(false); } if (m_QueryResult != null) { Converters.IsQueryCachedValue cachehandler = new Converters.IsQueryCachedValue(); cachehandler.GetQueryCachedValues(m_QueryResult); if (m_QueryResult.Rows.Length > 0) { List <ViewModel> incidentTypes = new List <ViewModel>(); foreach (var row in m_QueryResult.Rows) { incidentTypes.Add(new ViewModel(m_QueryResult.Columns, row)); } this.IncidentTypesCollection = incidentTypes.ToArray(); OnPropertyChanged("IncidentTypesCollection"); /*OnPropertyChanged("TasksAttributeNames"); * UpdateSortingAndGrouping();*/ } else { ShowToast(Services.TranslateExtension.TranslateText("no_incidents_types_found")); } result = true; } else { //page not loaded at comosweboffline ShowToast(Services.TranslateExtension.TranslateText("no_incidents_types_found")); } ListViewIncidents.EndRefresh(); } catch (Exception e) { await App.Current.MainPage.DisplayAlert(Services.TranslateExtension.TranslateText("error"), e.Message, "OK"); return(false); } return(result); }