|
@@ -166,33 +166,19 @@ namespace ShakerControl.ViewModel
|
|
MainWindowViewModel.Default.Bus.PubSub.Subscribe<Shaker.Model.ShakerControlModel>((model, _) =>
|
|
MainWindowViewModel.Default.Bus.PubSub.Subscribe<Shaker.Model.ShakerControlModel>((model, _) =>
|
|
{
|
|
{
|
|
PublishLog($"振动台{Description}的参数已修改");
|
|
PublishLog($"振动台{Description}的参数已修改");
|
|
- if (Thread.CurrentThread == App.Current.Dispatcher.Thread)
|
|
|
|
|
|
+ Tools.DispatherInovke.Inovke(() =>
|
|
{
|
|
{
|
|
- MainWindowViewModel.Default.Prompt.Init();
|
|
|
|
- MainWindowViewModel.Default.Prompt.NoTextFunc = (index) => $"否({10 - index})";
|
|
|
|
- MainWindowViewModel.Default.Prompt.Message = $"振动台{Description}的参数已修改,是否重启程序?";
|
|
|
|
- MainWindowViewModel.Default.Prompt.YesAction = () =>
|
|
|
|
|
|
+ PromptViewModel.Default.Init();
|
|
|
|
+ PromptViewModel.Default.NoTextFunc = (index) => $"否({10 - index})";
|
|
|
|
+ PromptViewModel.Default.Message = $"振动台{Description}的参数已修改,是否重启程序?";
|
|
|
|
+ PromptViewModel.Default.YesAction = () =>
|
|
{
|
|
{
|
|
(App.Current as App)?.Restart();
|
|
(App.Current as App)?.Restart();
|
|
};
|
|
};
|
|
- MainWindowViewModel.Default.Prompt.SetTimeout(10);
|
|
|
|
- MainWindowViewModel.Default.Prompt.IsOpen = true;
|
|
|
|
- }
|
|
|
|
- else
|
|
|
|
- {
|
|
|
|
- App.Current.Dispatcher.Invoke(() =>
|
|
|
|
- {
|
|
|
|
- MainWindowViewModel.Default.Prompt.Init();
|
|
|
|
- MainWindowViewModel.Default.Prompt.NoTextFunc = (index) => $"否({10 - index})";
|
|
|
|
- MainWindowViewModel.Default.Prompt.Message = $"振动台{Description}的参数已修改,是否重启程序?";
|
|
|
|
- MainWindowViewModel.Default.Prompt.YesAction = () =>
|
|
|
|
- {
|
|
|
|
- (App.Current as App)?.Restart();
|
|
|
|
- };
|
|
|
|
- MainWindowViewModel.Default.Prompt.SetTimeout(10);
|
|
|
|
- MainWindowViewModel.Default.Prompt.IsOpen = true;
|
|
|
|
- });
|
|
|
|
- }
|
|
|
|
|
|
+ PromptViewModel.Default.SetTimeout(10);
|
|
|
|
+ PromptViewModel.Default.IsOpen = true;
|
|
|
|
+ });
|
|
|
|
+
|
|
}, $"{Shaker.Model.GlobalVariable.ShakerIDKey} = '{model.Id}'");
|
|
}, $"{Shaker.Model.GlobalVariable.ShakerIDKey} = '{model.Id}'");
|
|
|
|
|
|
MainWindowViewModel.Default.Bus.RPC.Respond<Shaker.Model.SysControl, Shaker.Model.Result>(SystemControl, $"{Shaker.Model.GlobalVariable.ShakerIDKey} = '{model.Id}'");
|
|
MainWindowViewModel.Default.Bus.RPC.Respond<Shaker.Model.SysControl, Shaker.Model.Result>(SystemControl, $"{Shaker.Model.GlobalVariable.ShakerIDKey} = '{model.Id}'");
|
|
@@ -398,35 +384,20 @@ namespace ShakerControl.ViewModel
|
|
{
|
|
{
|
|
Success = true,
|
|
Success = true,
|
|
};
|
|
};
|
|
- if(Thread.CurrentThread == App.Current.Dispatcher.Thread)
|
|
|
|
|
|
+ Tools.DispatherInovke.Inovke(() =>
|
|
{
|
|
{
|
|
- MainWindowViewModel.Default.Prompt.Init();
|
|
|
|
- MainWindowViewModel.Default.Prompt.Message = $"申请{Model.Description}的控制权限,是否同意?";
|
|
|
|
- MainWindowViewModel.Default.Prompt.YesAction = () =>
|
|
|
|
|
|
+ PromptViewModel.Default.Init();
|
|
|
|
+ PromptViewModel.Default.Message = $"申请{Model.Description}的控制权限,是否同意?";
|
|
|
|
+ PromptViewModel.Default.YesAction = () =>
|
|
{
|
|
{
|
|
AllowRemote = AllowRemoteControl.Remote;
|
|
AllowRemote = AllowRemoteControl.Remote;
|
|
};
|
|
};
|
|
uint count = MainWindowViewModel.Default.SystemConfig.RequestPermissionsTimeout / 1000;
|
|
uint count = MainWindowViewModel.Default.SystemConfig.RequestPermissionsTimeout / 1000;
|
|
- MainWindowViewModel.Default.Prompt.NoTextFunc = (index) => $"否({count - index})";
|
|
|
|
- MainWindowViewModel.Default.Prompt.SetTimeout(count);
|
|
|
|
- MainWindowViewModel.Default.Prompt.IsOpen = true;
|
|
|
|
- }
|
|
|
|
- else
|
|
|
|
- {
|
|
|
|
- App.Current.Dispatcher.BeginInvoke(() =>
|
|
|
|
- {
|
|
|
|
- MainWindowViewModel.Default.Prompt.Init();
|
|
|
|
- MainWindowViewModel.Default.Prompt.Message = $"申请{Model.Description}的控制权限,是否同意?";
|
|
|
|
- MainWindowViewModel.Default.Prompt.YesAction = () =>
|
|
|
|
- {
|
|
|
|
- AllowRemote = AllowRemoteControl.Remote;
|
|
|
|
- };
|
|
|
|
- uint count = MainWindowViewModel.Default.SystemConfig.RequestPermissionsTimeout / 1000;
|
|
|
|
- MainWindowViewModel.Default.Prompt.NoTextFunc = (index) => $"否({count - index})";
|
|
|
|
- MainWindowViewModel.Default.Prompt.SetTimeout(count);
|
|
|
|
- MainWindowViewModel.Default.Prompt.IsOpen = true;
|
|
|
|
- });
|
|
|
|
- }
|
|
|
|
|
|
+ PromptViewModel.Default.NoTextFunc = (index) => $"否({count - index})";
|
|
|
|
+ PromptViewModel.Default.SetTimeout(count);
|
|
|
|
+ PromptViewModel.Default.IsOpen = true;
|
|
|
|
+ });
|
|
|
|
+
|
|
return new Result()
|
|
return new Result()
|
|
{
|
|
{
|
|
Success = true,
|
|
Success = true,
|
|
@@ -565,11 +536,11 @@ namespace ShakerControl.ViewModel
|
|
if (PLCControl.IsConnected) return;
|
|
if (PLCControl.IsConnected) return;
|
|
if (!PLCControl.Connect())
|
|
if (!PLCControl.Connect())
|
|
{
|
|
{
|
|
- MainWindowViewModel.Default.Prompt.Init();
|
|
|
|
- MainWindowViewModel.Default.Prompt.IconType = IconType.Error;
|
|
|
|
- MainWindowViewModel.Default.Prompt.NoVisibility = System.Windows.Visibility.Collapsed;
|
|
|
|
- MainWindowViewModel.Default.Prompt.Message = "连接失败!";
|
|
|
|
- MainWindowViewModel.Default.Prompt.IsOpen = true;
|
|
|
|
|
|
+ PromptViewModel.Default.Init();
|
|
|
|
+ PromptViewModel.Default.IconType = IconType.Error;
|
|
|
|
+ PromptViewModel.Default.NoVisibility = System.Windows.Visibility.Collapsed;
|
|
|
|
+ PromptViewModel.Default.Message = "连接失败!";
|
|
|
|
+ PromptViewModel.Default.IsOpen = true;
|
|
}
|
|
}
|
|
else
|
|
else
|
|
{
|
|
{
|
|
@@ -578,16 +549,16 @@ namespace ShakerControl.ViewModel
|
|
});
|
|
});
|
|
public ICommand DisConnectCommand => new DelegateCommand(() =>
|
|
public ICommand DisConnectCommand => new DelegateCommand(() =>
|
|
{
|
|
{
|
|
- MainWindowViewModel.Default.Prompt.Init();
|
|
|
|
- MainWindowViewModel.Default.Prompt.IconType = IconType.Ask;
|
|
|
|
- MainWindowViewModel.Default.Prompt.Message = "是否断开连接?";
|
|
|
|
- MainWindowViewModel.Default.Prompt.YesAction = () =>
|
|
|
|
|
|
+ PromptViewModel.Default.Init();
|
|
|
|
+ PromptViewModel.Default.IconType = IconType.Ask;
|
|
|
|
+ PromptViewModel.Default.Message = "是否断开连接?";
|
|
|
|
+ PromptViewModel.Default.YesAction = () =>
|
|
{
|
|
{
|
|
if (!PLCControl.IsConnected) return;
|
|
if (!PLCControl.IsConnected) return;
|
|
PublishLog("断开功放连接", LogType.Message);
|
|
PublishLog("断开功放连接", LogType.Message);
|
|
PLCControl.Disconnect();
|
|
PLCControl.Disconnect();
|
|
};
|
|
};
|
|
- MainWindowViewModel.Default.Prompt.IsOpen = true;
|
|
|
|
|
|
+ PromptViewModel.Default.IsOpen = true;
|
|
});
|
|
});
|
|
}
|
|
}
|
|
}
|
|
}
|