public ConcurrentUserLogin IsConcurrentUserLoggedIn()
        {
            ConcurrentUserLogin userLogin = new ConcurrentUserLogin();

            userLogin.TeamId = LicenseSessionState.Instance.SelectedTeam.Id;
            userLogin.UserId = LicenseSessionState.Instance.User.UserId;
            HttpClient client       = WebApiServiceLogic.CreateClient(ServiceType.OnPremiseWebApi);
            var        response     = client.PostAsJsonAsync("api/User/IsConcurrentUserLoggedIn", userLogin).Result;
            var        jsonData     = response.Content.ReadAsStringAsync().Result;
            var        userLoginObj = JsonConvert.DeserializeObject <ConcurrentUserLogin>(jsonData);

            return(userLoginObj);
        }
Пример #2
0
        public void LoadTeams()
        {
            HttpClient client = AppState.CreateClient(ServiceType.OnPremiseWebApi.ToString());

            client.DefaultRequestHeaders.Add("Authorization", "Bearer " + AppState.Instance.OnPremiseToken.access_token);
            string url = "api/Team/GetTeamsByUserId/";

            if (AppState.Instance.IsSuperAdmin)
            {
                url = "api/Team/GetTeamsByAdminId/";
            }
            var response = client.GetAsync(url + AppState.Instance.User.UserId).Result;

            if (response.IsSuccessStatusCode)
            {
                var jsonData = response.Content.ReadAsStringAsync().Result;
                var teamList = JsonConvert.DeserializeObject <List <Team> >(jsonData);
                if (teamList.Count > 1)
                {
                    AppState.Instance.TeamList = teamList;
                    Views.Teams teamWindow = new Views.Teams();
                    teamWindow.ClosePopupWindow += CloseWindow;
                    teamWindow.ShowDialog();
                }
                else if (teamList.Count == 1)
                {
                    AppState.Instance.SelectedTeam = teamList.FirstOrDefault();
                    ConcurrentUserLogin userLogin = new ConcurrentUserLogin();
                    userLogin.TeamId = AppState.Instance.SelectedTeam.Id;
                    userLogin.UserId = AppState.Instance.User.UserId;
                    client           = AppState.CreateClient(ServiceType.OnPremiseWebApi.ToString());
                    client.DefaultRequestHeaders.Add("Authorization", "Bearer " + AppState.Instance.OnPremiseToken.access_token);
                    response = client.PostAsJsonAsync("api/User/IsConcurrentUserLoggedIn", userLogin).Result;
                    jsonData = response.Content.ReadAsStringAsync().Result;
                    var userLoginObj = JsonConvert.DeserializeObject <ConcurrentUserLogin>(jsonData);
                    if (userLoginObj.IsUserLoggedIn)
                    {
                        NavigateNextPage?.Invoke("Dashboard", null);
                    }
                    else
                    {
                        MessageBox.Show(userLoginObj.ErrorOrNotificationMessage);
                    }
                }
            }
        }
Пример #3
0
        public void UpdateSelectedTeam(object args)
        {
            AppState.Instance.SelectedTeam = (Team)args;
            ConcurrentUserLogin userLogin = new ConcurrentUserLogin();

            userLogin.TeamId = AppState.Instance.SelectedTeam.Id;
            userLogin.UserId = AppState.Instance.User.UserId;
            HttpClient client = AppState.CreateClient(ServiceType.OnPremiseWebApi.ToString());

            client.DefaultRequestHeaders.Add("Authorization", "Bearer " + AppState.Instance.OnPremiseToken.access_token);
            var response     = client.PostAsJsonAsync("api/User/IsConcurrentUserLoggedIn", userLogin).Result;
            var jsonData     = response.Content.ReadAsStringAsync().Result;
            var userLoginObj = JsonConvert.DeserializeObject <ConcurrentUserLogin>(jsonData);

            AppState.Instance.UserLogin = userLoginObj;
            //CustomEventArgs e = new CustomEventArgs();
            //e.IsConcurrentuserLoggedIn = userLoginObj.IsUserLoggedIn;
            //if (userLoginObj.IsUserLoggedIn)
            //    e.ErrorMessage = "";
            //else
            //    e.ErrorMessage = userLoginObj.ErrorOrNotificationMessage;
            ClosepoupWindow?.Invoke(this, new EventArgs());
        }
Пример #4
0
        public HttpResponseMessage IsConcurrentUserLoggedIn(ConcurrentUserLogin userLogin)
        {
            Initialize();
            LicenseBO licBO = new LicenseBO()
            {
                UserManager = UserManager
            };
            HttpStatusCode statusCode;
            var            status = licBO.ValidateConcurrentUser(userLogin.TeamId, userLogin.UserId);

            if (status)
            {
                licBO.UpdateTeamLicenseToUser(userLogin.TeamId, userLogin.UserId);
                statusCode = HttpStatusCode.OK;
                userLogin.IsUserLoggedIn = true;
            }
            else
            {
                logic.UpdateLogOutStatus(userLogin.UserId, false);
                userLogin.IsUserLoggedIn = false;
                statusCode = HttpStatusCode.ExpectationFailed;
            }
            return(Request.CreateResponse(statusCode, userLogin));
        }