DebugViewModel.cs 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. using Prism.Commands;
  2. using Prism.Events;
  3. using Prism.Ioc;
  4. using Prism.Mvvm;
  5. using Prism.Regions;
  6. using Prism.Services.Dialogs;
  7. using System;
  8. using System.Collections.Generic;
  9. using System.Linq;
  10. using TeamAAS_VP.Events;
  11. using TeamAAS_VP.Core;
  12. using TeamAAS_VP.Models;
  13. using Team.FFFeederService;
  14. namespace TeamAAS_VP.ViewModels
  15. {
  16. public class DebugViewModel : BindableBase
  17. {
  18. #region 字段
  19. IRegionManager _regionManager;
  20. IEventAggregator _eventAggregator;
  21. IContainerProvider _container;
  22. IDialogService _dialogService;
  23. #endregion
  24. #region 属性
  25. private Management _management;
  26. public Management management
  27. {
  28. get { return _management; }
  29. set { SetProperty(ref _management, value); }
  30. }
  31. private DeviceConfiguration _DeviceConfig;
  32. /// <summary>
  33. /// 设备配置参数
  34. /// </summary>
  35. public DeviceConfiguration DeviceConfig
  36. {
  37. get { return _DeviceConfig; }
  38. set { SetProperty(ref _DeviceConfig, value); }
  39. }
  40. private RobotInfo _SelectRobot;
  41. /// <summary>
  42. /// 选中的机器人
  43. /// </summary>
  44. public RobotInfo SelectRobot
  45. {
  46. get { return _SelectRobot; }
  47. set { SetProperty(ref _SelectRobot, value); }
  48. }
  49. private FeederInfo _SelectFeeder;
  50. /// <summary>
  51. /// 选中的Feeder
  52. /// </summary>
  53. public FeederInfo SelectFeeder
  54. {
  55. get { return _SelectFeeder; }
  56. set { SetProperty(ref _SelectFeeder, value); }
  57. }
  58. #endregion
  59. #region 命令
  60. public DelegateCommand LoadedCommand { get; set; }
  61. #endregion
  62. #region 事件
  63. #endregion
  64. public DebugViewModel(IRegionManager regionManager, IEventAggregator ea, IContainerProvider container, IDialogService dialogService)
  65. {
  66. _regionManager = regionManager;
  67. _eventAggregator = ea;
  68. _container = container;
  69. _dialogService = dialogService;
  70. management = _container.Resolve<Management>();
  71. LoadedCommand = new DelegateCommand(OnLoad);
  72. DeviceConfig = management.DeviceConfig;
  73. //订阅权限登录事件
  74. _eventAggregator.GetEvent<UserLoginNotification>().Subscribe(LoginChange);
  75. }
  76. #region 方法
  77. private void OnLoad()
  78. {
  79. }
  80. public void SelectView(string view,object vm)
  81. {
  82. switch (view)
  83. {
  84. case "robot":
  85. _regionManager.RequestNavigate("DebugRegionContext", "RobotManualStep");
  86. break;
  87. case "feeder":
  88. if (SelectFeeder!=null && SelectFeeder.FeederBrand== FeederBrand.TEAM)
  89. {
  90. _regionManager.RequestNavigate("DebugRegionContext", "FeederManual");
  91. }
  92. else if (SelectFeeder != null && SelectFeeder.FeederBrand == FeederBrand.AFAG)
  93. {
  94. _regionManager.RequestNavigate("DebugRegionContext", "AfagFeederManual");
  95. }
  96. break;
  97. case "VisionSolution":
  98. _regionManager.RequestNavigate("DebugRegionContext", "VisionSolution");
  99. break;
  100. case "InchingControl":
  101. _regionManager.RequestNavigate("DebugRegionContext", "InchingControl");
  102. break;
  103. case "ScriptHome":
  104. _regionManager.RequestNavigate("DebugRegionContext", "ScriptHome");
  105. break;
  106. case "FeederClear":
  107. _regionManager.RequestNavigate("DebugRegionContext", "FeederClear");
  108. break;
  109. default:
  110. break;
  111. }
  112. }
  113. #endregion
  114. private void LoginChange(Models.User user)
  115. {
  116. }
  117. }
  118. }