public AdminViewModel() { _container = new UnityContainer(); _container.RegisterType <IUserService, UserService>(); _container.RegisterType <IClientService, ClientService>(); _container.RegisterType <IClientMessageService, ClientMessageService>(); _container.RegisterType <IDispatcherMessageService, DispatcherMessageService>(); _modelUserService = new ModelUserService(_container); _modelClientService = new ModelClientService(_container); _modelClientMessageService = new ModelClientMessageService(_container); _modelDespatcherMessageService = new ModelDespatcherMessageService(_container); _messages = new ObservableCollection <MessageAll>(); _users = _modelUserService.GetUsers(); _clients = _modelClientService.GetClients(); _clentMessages = _modelClientMessageService.GetClientMessage(); _dispatcherMessages = _modelDespatcherMessageService.GetDispatcharMessage(); _fromDate = new DateTime(2019, 05, 01); _toDate = DateTime.Now; _checkLoginText = "Enter Login!"; OkCommandLinq = new RelayCommand(OnCommandLinq); SaveCommand = new RelayCommand(OnSaveCommand, CanOnSaveExecute); }
public DispatcherControlModel() { _botLogic = new LogicBot(); _container = new UnityContainer(); _container.RegisterType <IClientMessageService, ClientMessageService>(); _container.RegisterType <IClientService, ClientService>(); _container.RegisterType <IDispatcherMessageService, DispatcherMessageService>(); _container.RegisterType <IWorkTimeDispatcherService, WorkTimeDispatcherService>(); _container.RegisterType <IUserService, UserService>(); _modelClientMessageService = new ModelClientMessageService(_container); _modelClientService = new ModelClientService(_container); _modelDespatcherMessageService = new ModelDespatcherMessageService(_container); _modelUserService = new ModelUserService(_container); _clients = _modelClientService.GetClients(); _users = _modelUserService.GetUsers(); _clientsChat = new ObservableCollection <ClientInfo>(); Messages = new ObservableCollection <DisBotMessage>(); _user = new UserModel(); _mainListBox = new ListBox(); _сhoiceClient = new ClientInfo(); _isConnect = true; Context = SynchronizationContext.Current; SendMessageCommand = new RelayCommand(OnSendMessageCommandExecute); ConnectCommand = new RelayCommand(OnConnectCommand); DisconnectCommand = new RelayCommand(OnDisconnectCommand); _botLogic.LogStart += BotLogicLogStart; UserName = ((MainWindow)Application.Current.MainWindow).tbLogin.Text; EventClosedWindow(); InitUser(); }
private void BotLogicLogStart(object sender, BotEventArgs e) { Application.Current.Dispatcher.Invoke(() => { AddClientInBdAndDTO(e); AddClientInCombaBox(e); var message = new DisBotMessage() { Content = e.Message.Content, Date = e.Message.Date, LastName = e.Message.LastName, FirstName = e.Message.FirstName, UserName = e.Message.UserName, FullName = e.Message.FirstName, Type = DisBotMessage.MessageType.OutMessage, }; Messages.Add(message); _mainListBox.ScrollIntoView(message); _clients = _modelClientService.GetClients(); var tmpId = 0; foreach (var item in _clients) { if (item.TelegramId.Equals(e.Message.Id)) { tmpId = item.Id; break; } } var messageDB = new ClientMessageInfo() { MessageClient = e.Message.Content, TimeMassage = e.Message.Date, UserId = User.Id, ClientId = tmpId }; _modelClientMessageService.Add(messageDB); if (_clients.Count != 0) { IsSendMessage = true; } }); }
public DispatcherViewModel() { _botLogic = new LogicBot(); _container = new UnityContainer(); _container.RegisterType <IClientMessageService, ClientMessageService>(); _container.RegisterType <IClientService, ClientService>(); _container.RegisterType <IDispatcherMessageService, DispatcherMessageService>(); _container.RegisterType <IWorkTimeDispatcherService, WorkTimeDispatcherService>(); _modelClientMessageService = new ModelClientMessageService(_container); _modelClientService = new ModelClientService(_container); _modelDespatcherMessageService = new ModelDespatcherMessageService(_container); _modelWorkTimeDispatcherService = new ModelWorkTimeDispatcherService(_container); _clients = _modelClientService.GetClients(); _clientsChat = new ObservableCollection <ClientInfo>(); _mainListBox = new ListBox(); for (int i = 0; i < Application.Current.Windows.Count; i++) { var window = Application.Current.Windows[i]; if (window.Tag == null) { continue; } else if (window.Tag.Equals("DispatcherWindow")) { Application.Current.Windows[i].Closing += DispatcherViewModel_Closed; break; } } Messages = new ObservableCollection <DisBotMessage>(); _сhoiceClient = new ClientInfo(); _isConnect = true; SendMessageCommand = new RelayCommand(OnSendMessageCommandExecute); ConnectCommand = new RelayCommand(OnConnectCommand); DisconnectCommand = new RelayCommand(OnDisconnectCommand); //EventPost(); _botLogic.LogStart += _botLogic_LogStart; UserInfo = StaticLogicBot.UserInfo; }
private void _botLogic_LogStart(object sender, BLL.Logic.EventsArgs.BotEventArgs e) { Application.Current.Dispatcher.Invoke(() => { var countClientDB = 0; var coutClientList = 0; if (_clients.Count == 0) { var addClient = new ClientInfo() { FirstName = _botLogic.Messages.FirstName, LastName = _botLogic.Messages.LastName, TelegramId = _botLogic.Messages.Id, Username = _botLogic.Messages.UserName, }; _modelClientService.Add(addClient); _clients.Add(addClient); _clientsChat.Add(addClient); } foreach (var client in _clients) { if (client.TelegramId.Equals(_botLogic.Messages.Id)) { break; } else if (!string.IsNullOrEmpty(client.TelegramId)) { countClientDB++; } if (_clients.Count == countClientDB) { var addClient = new ClientInfo() { FirstName = e.Message.FirstName, LastName = e.Message.LastName, TelegramId = e.Message.Id, Username = e.Message.UserName, }; _modelClientService.Add(addClient); _clients.Add(addClient); _clientsChat.Add(addClient); break; } } var addClientList = new ClientInfo() { FirstName = e.Message.FirstName, LastName = e.Message.LastName, TelegramId = e.Message.Id, Username = e.Message.UserName, }; if (_clientsChat.Count == 0) { _clientsChat.Add(addClientList); } foreach (var item in _clientsChat) { if (item.TelegramId.Equals(e.Message.Id)) { break; } else if (!item.TelegramId.Equals(e.Message.Id)) { coutClientList++; } if (coutClientList == _clientsChat.Count()) { _clientsChat.Add(addClientList); break; } } var message = new DisBotMessage() { Content = e.Message.Content, Date = e.Message.Date, LastName = e.Message.LastName, FirstName = e.Message.FirstName, UserName = e.Message.UserName, Type = DisBotMessage.MessageType.OutMessage, }; Messages.Add(message); _mainListBox.ScrollIntoView(message); _clients = _modelClientService.GetClients(); var tmpId = 0; foreach (var item in _clients) { if (item.TelegramId.Equals(e.Message.Id)) { tmpId = item.Id; break; } } CheckUserName(); var messageDB = new ClientMessageInfo() { MessageClient = e.Message.Content, TimeMassage = e.Message.Date, UserId = UserInfo.Id, ClientId = tmpId }; _modelClientMessageService.Add(messageDB); if (!String.IsNullOrEmpty(UserName)) { IsSendMessage = true; } }); }
private void EventPost() { UserInfo = StaticLogicBot.UserInfo; Console.WriteLine(); _botLogic.Log += buffer => { var countClientDB = 0; var coutClientList = 0; if (_clients.Count == 0) { var addClient = new ClientInfo() { FirstName = _botLogic.Masseges.FirstName, LastName = _botLogic.Masseges.LastName, TelegramId = _botLogic.Masseges.Id, Username = _botLogic.Masseges.UserName, }; _modelClientService.Add(addClient); _clients.Add(addClient); _clientsChat.Add(addClient); } foreach (var client in _clients) { if (client.TelegramId.Equals(_botLogic.Masseges.Id)) { break; } else if (!string.IsNullOrEmpty(client.TelegramId)) { countClientDB++; } if (_clients.Count == countClientDB) { var addClient = new ClientInfo() { FirstName = _botLogic.Masseges.FirstName, LastName = _botLogic.Masseges.LastName, TelegramId = _botLogic.Masseges.Id, Username = _botLogic.Masseges.UserName, }; _modelClientService.Add(addClient); _clients.Add(addClient); _clientsChat.Add(addClient); break; } } var addClientList = new ClientInfo() { FirstName = _botLogic.Masseges.FirstName, LastName = _botLogic.Masseges.LastName, TelegramId = _botLogic.Masseges.Id, Username = _botLogic.Masseges.UserName, }; if (_clientsChat.Count == 0) { _clientsChat.Add(addClientList); } foreach (var item in _clientsChat) { if (item.TelegramId.Equals(_botLogic.Masseges.Id)) { break; } else if (!item.TelegramId.Equals(_botLogic.Masseges.Id)) { coutClientList++; } if (coutClientList == _clientsChat.Count()) { _clientsChat.Add(addClientList); break; } } var message = new DisBotMessage() { Content = _botLogic.Masseges.Content, Date = _botLogic.Masseges.Date, LastName = _botLogic.Masseges.LastName, FirstName = _botLogic.Masseges.FirstName, UserName = _botLogic.Masseges.UserName, Type = DisBotMessage.MessageType.OutMessage, }; Messages.Add(message); _mainListBox.ScrollIntoView(message); _clients = _modelClientService.GetClients(); var tmpId = 0; foreach (var item in _clients) { if (item.TelegramId.Equals(_botLogic.Masseges.Id)) { tmpId = item.Id; break; } } CheckUserName(); var messageDB = new ClientMessageInfo() { MessageClient = _botLogic.Masseges.Content, TimeMassage = _botLogic.Masseges.Date, UserId = UserInfo.Id, ClientId = tmpId }; _modelClientMessageService.Add(messageDB); if (!String.IsNullOrEmpty(UserName)) { IsSendMessage = true; } }; }