예제 #1
0
        public async Task <bool> WritetoAuditLog(Audit_trail au, string accessToken)
        {
            bool        result  = false;
            HttpClient  client  = new HttpClient();
            var         json    = JsonConvert.SerializeObject(au);
            HttpContent content = new StringContent(json);

            content.Headers.ContentType = new MediaTypeHeaderValue("application/json");
            client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("bearer", accessToken);

            HttpResponseMessage response = new HttpResponseMessage();

            response = await client.PostAsync(Path + "/MobileAuthWS/api/Agent/WriteToAuditTrail", content);

            if (response.IsSuccessStatusCode)
            {
                result = true;
            }
            else
            {
                result = false;
            }


            return(result);
        }
예제 #2
0
        //public ICommand LoginCommand
        //{
        //    get
        //    {
        //        return new Command(async() =>
        //       {
        //           IsBusy = true;
        //           LoginEnabled = false;
        //           var accessToken =  await _apiServices.LoginAsync(Username, Password);

        //           LoginEnabled = true;
        //           if (accessToken == null)
        //           {
        //               IsBusy = false;
        //               LoginSuccess = false;
        //               Message = "Login failed";
        //           }
        //           else
        //           {
        //               Settings.AccessToken = accessToken;
        //               //if (Settings.Username ==  "" && Settings.Password == "")
        //               //{
        //               //    Settings.Username = Username;
        //               //    Settings.Password = Password;
        //               //}

        //               Message = "Logged in Successfully";
        //               LoginSuccess = true;

        //               var nav = new NavigationPage(new LandingPage());
        //               nav.BarBackgroundColor = Color.FromHex("#00adbb");
        //               Application.Current.MainPage = nav;
        //               AgentProfile agentProfile = new AgentProfile();
        //               agentProfile = await _apiServices.GetAgentProfile(accessToken);
        //               Settings.jobRole = agentProfile.Role;
        //               Settings.agentCode = (agentProfile.Role == "Organizer" ? agentProfile.Organizer_code.ToString() : agentProfile.Agent_code.ToString());
        //               Settings.orgTeamCode = (agentProfile.Role == "Organizer" ? agentProfile.Organizer_codeTeam.ToString():"");
        //               IsBusy = false;

        //           }
        //       });
        //    }

        //}

        public async Task Login()
        {
            IsBusy       = true;
            LoginEnabled = false;
            var accessToken = await _apiServices.LoginAsync(Username, Password);

            if (accessToken == null)
            {
                IsBusy       = false;
                LoginSuccess = false;
                Message      = "Login failed";
                LoginEnabled = true;
            }
            else
            {
                Settings.AccessToken = accessToken;

                //Message = "Logged in Successfully";
                LoginSuccess = true;

                AgentProfile agentProfile = new AgentProfile();
                agentProfile = await _apiServices.GetAgentProfile(accessToken);

                if (agentProfile.allowAccess == true)
                {
                    Settings.jobRole     = agentProfile.Role;
                    Settings.agentCode   = (agentProfile.Role == "Organizer" ? agentProfile.Organizer_code.ToString() : agentProfile.Agent_code.ToString());
                    Settings.orgTeamCode = (agentProfile.Role == "Organizer" ? agentProfile.Organizer_codeTeam.ToString() : "");

                    Audit_trail au = new Audit_trail
                    {
                        Action   = "Log in",
                        Log_date = DateTime.Now,
                        Stream   = "Common",
                        App_Id   = "B Connect",
                        User_Id  = Username
                    };

                    bool successCode = await _apiServices.WritetoAuditLog(au, accessToken);
                }
                else
                {
                    IsBusy       = false;
                    LoginSuccess = false;
                    Message      = "Login Restricted";
                    LoginEnabled = true;
                }
                IsBusy = false;
            }
        }