public async Task <IActionResult> TenantClientLists() { var token = await _tokenStore.GetAccessTokenAsync(User.XeroUserId()); var connections = await _xeroClient.GetConnectionsAsync(token); connections = connections.Where(c => c.TenantType == "PRACTICEMANAGER").ToList(); if (!connections.Any()) { return(RedirectToAction(nameof(NoTenants))); } var data = new List <(Guid tenantId, ClientListResponse clients)>(); var client = _httpClientFactory.CreateClient("XeroPracticeManager"); client.SetBearerToken(token.AccessToken); //Retrieve the WorkflowMax clients for each connection we have access to foreach (var connection in connections) { ClientListResponse clients = await GetClients(client, connection.TenantId); data.Add((connection.TenantId, clients)); } var model = new TenantClientListsModel { LoggedInUser = $"{User.FindFirstValue(ClaimTypes.GivenName)} {User.FindFirstValue(ClaimTypes.Surname)}", TenantClients = data }; return(View(model)); }
private void clientListRefreshTrigger(ClientListResponse response) { clientId = response.Client.ClientId; if (ClientListRefresh != null) { ClientListRefresh(response); } }
/// <summary> /// List of clients /// </summary> public ClientListResponse ClientList(HeaderInfo headerInfo) { var clientListResponse = new ClientListResponse(); clientListResponse.response = new ResponseStatus(); // clientListResponse.clientList = Client.List(headerInfo); clientListResponse.clientList = RepClient.List(headerInfo); return(clientListResponse); }
/// <summary> /// List of clients /// </summary> public ClientListResponse ClientList(HeaderInfo headerInfo) { var clientListResponse = new ClientListResponse(); clientListResponse.response = new ResponseStatus(); // clientListResponse.clientList = Client.List(headerInfo); try { clientListResponse.clientList = RepClient.List(headerInfo); } catch (Exception ex) { string s = ex.ToString(); } return(clientListResponse); }
private void refreshClientList(ClientListResponse response) { Session.Clients = response.Clients; lvClients.Items.Clear(); Text = $"Client | Chat [{response.Client.Nick} - {response.Client.Status.ClientStatusToString()}]"; notifyIcon1.Text = Text; ImageList imageList = new ImageList(); imageList.ImageSize = new Size(18, 18); imageList.Images.Add(((int)ClientStatus.Available).ToString(), global::ChatClient.Properties.Resources.line); imageList.Images.Add(((int)ClientStatus.Away).ToString(), global::ChatClient.Properties.Resources.yellow); imageList.Images.Add(((int)ClientStatus.Busy).ToString(), global::ChatClient.Properties.Resources.red); imageList.Images.Add(((int)ClientStatus.DoNotDisturb).ToString(), global::ChatClient.Properties.Resources.dnd); imageList.Images.Add(((int)ClientStatus.Invisible).ToString(), global::ChatClient.Properties.Resources.gray); lvClients.SmallImageList = imageList; foreach (var client in response.Clients.Where(c => c.ClientId != Session.Client.ClientId)) { ListViewItem item = new ListViewItem(); item.Text = client.Nick; item.ImageIndex = imageList.Images.IndexOfKey(((int)client.Status).ToString()); item.SubItems.Add(client.ClientId.ToString()); lvClients.Items.Add(item); } }
private void clientListRefresh(ClientListResponse response) { Invoke(new dgClientListRefresh(refreshClientList), response); }