/// <summary> /// Funkcja odpowiadajaca za widok skanowania danego srodka trwalego i wyniku skanowania /// </summary> /// <param name="result">wynik poprzedniego skanowania</param> private async void ZXingScannerView_OnScanResult(Result result) { if (previus != null && (result.Text == previus.Text || ListContainItem(result.Text))) { Device.BeginInvokeOnMainThread(async() => { await ShowPopup("Już zeskanowano ten przedmiot!"); }); return; } string[] positions; int AssetId; try { positions = result.Text.Split('-'); AssetId = Convert.ToInt32(positions[1]); } catch (Exception) { Device.BeginInvokeOnMainThread(async() => { await ShowPopup("Zły format kodu"); }); return; } AssetInfoEntity assetInfo = await api.getAssetInfo(AssetId); if (assetInfo == null) { Device.BeginInvokeOnMainThread(async() => { await ShowPopup("Nieznany obiekt"); }); return; } ScanAsset(assetInfo); scanningUpdate.Update(AllPositions); scannedItem.Add(result.Text); previus = result; UpdateCounter(); }
/// <summary> /// Funkcja odpowiadajaca za probe zmiany lokalizacji/pokoju danego srodka trwalego /// </summary> async private void ChangeRoom(object sender, EventArgs e) { bool response = await DisplayAlert("Uwaga", "Czy na pewno chcesz przenieść tutaj ten przedmiot?", "Tak", "Nie"); if (response) { Button button = sender as Button; int id = Convert.ToInt32(button.CommandParameter); foreach (ScanPosition item in allScaning) { if (item.ScannedId == id) { item.ItemMoved(); ShowInfo(); break; } } scanningUpdate.Update(allScaning); } }