EquipmentModule.xaml.cs 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. using System;
  2. using System.Linq;
  3. using System.Threading.Tasks;
  4. using Comal.Classes;
  5. using InABox.Core;
  6. using InABox.Mobile;
  7. using Xamarin.Forms;
  8. using Xamarin.Forms.Xaml;
  9. using XF.Material.Forms.UI.Dialogs;
  10. namespace PRS.Mobile
  11. {
  12. [XamlCompilation(XamlCompilationOptions.Compile)]
  13. public partial class EquipmentModule
  14. {
  15. public EquipmentModule ()
  16. {
  17. InitializeComponent ();
  18. }
  19. protected override void UpdateTransportStatus()
  20. {
  21. base.UpdateTransportStatus();
  22. LiveMaps.IsEnabled = App.Data.IsConnected();
  23. }
  24. private void EquipmentScanner_Tapped(MobileModuleItem sender, ModuleMenuItemTappedArgs args)
  25. {
  26. var scannerPage = new ScannerPage();
  27. scannerPage.ItemScanned = async (e) =>
  28. {
  29. if (!Guid.TryParse(e.Text, out Guid equipmentid))
  30. {
  31. await MaterialDialog.Instance.AlertAsync("Invalid Code", "Error");
  32. return;
  33. }
  34. var editor = await EquipmentEdit.Load(equipmentid);
  35. if (editor != null)
  36. Device.BeginInvokeOnMainThread(() => Navigation.PushAsync(editor));
  37. else
  38. await MaterialDialog.Instance.AlertAsync("Equipment Not Found", "Error");
  39. };
  40. Navigation.PushAsync(scannerPage);
  41. }
  42. private void EquipmentList_Tapped(MobileModuleItem sender, ModuleMenuItemTappedArgs args)
  43. {
  44. Navigation.PushAsync(new EquipmentList());
  45. }
  46. private void LiveMaps_Tapped(MobileModuleItem sender, ModuleMenuItemTappedArgs args)
  47. {
  48. Navigation.PushAsync(new LiveMaps());
  49. }
  50. }
  51. }