Esempio n. 1
0
        public async Task <SigninResultEnum> Signin(CancellationToken token)
        {
            var request = new GetTokenRequest
            {
                UserName = UserName,
                Password = Password
            };

            var result = await _service.GetAccessToken(request, token);

            if (!result.IsSuccess)
            {
                var error = result.Error;
                switch (error.Type)
                {
                case "InvalidPassword":
                    return(SigninResultEnum.InvalidPassword);

                case "UserNotFound":
                    return(SigninResultEnum.UserNotFound);

                default:
                    return(SigninResultEnum.UnknownError);
                }
            }

            var response = result.Ok;

            _settingsService.AddOrUpdateValue(Constants.AccessToken, response.AccessToken);
            await UpdateUserInfo(token);

            return(SigninResultEnum.Ok);
        }
        public async Task Execute()
        {
            settingsService.AddOrUpdateValue <string>(LAST_SESSION, null);
            settingsService.AddOrUpdateValue <long>(LAST_DATE, DateTime.Now.AddDays(-1).Ticks);
            var appSession = Locator.Current.GetService <AppSession>();

            appSession.AccesToken = null;
        }
        public async Task <TaskGenericResponse <Passport> > Execute(bool force = false)
        {
            if (!force && cachePassport != null)
            {
                return new TaskGenericResponse <Passport>()
                       {
                           Data = cachePassport
                       }
            }
            ;
            if (force)
            {
                cachePassport = null;
            }
            try
            {
                var response = await employeeRepository.GetPassport();

                cachePassport = response;
                var serialized = JsonConvert.SerializeObject(response);
                settingsService.AddOrUpdateValue(DomainConstants.OFFLINE_PASSPORT, serialized);
                return(new TaskGenericResponse <Passport>()
                {
                    Data = response
                });
            }
            catch (Exception e)
            {
                ApiException errorException = e as ApiException;
                if (errorException != null)
                {
                    if (errorException.Code == 400)
                    {
                        return new TaskGenericResponse <Passport>()
                               {
                                   Data = null
                               }
                    }
                    ;
                    return(new TaskGenericResponse <Passport>()
                    {
                        ErrorCode = errorException.Code, Message = errorException.Error
                    });
                }
                else
                {
                    return new TaskGenericResponse <Passport>()
                           {
                               ErrorCode = 600, Message = e.Message
                           }
                };
            }
        }
    }
}
Esempio n. 4
0
        private void Start()
        {
            _context.User = new Items.UserItemViewModel()
            {
                UserName = this.UserName,
            };

            _context.UseCloud = this.UseCloud;

            _settingsService.AddOrUpdateValue("UserName", this.UserName);
            _settingsService.AddOrUpdateValue("UseCloud", this.UseCloud);

            Dictionary <string, string> properties = new Dictionary <string, string>();

            properties.Add("UserName", this.UserName);
            properties.Add("UseCloud", this.UseCloud.ToString());

            Analytics.TrackEvent("Login", properties);

            _navigationService.NavigateAsync(NavigationConstants.Main);
        }
Esempio n. 5
0
        public override void OnCreate()
        {
            base.OnCreate();
            ConfigureLanguage();
            CalculateNavigation();
            settingsService.AddOrUpdateValue(DomainConstants.LAST_START, DateTime.Now.ToString("dd/MM/yyyy"));
            var    appSession = Locator.Current.GetService <AppSession>();
            string location   = settingsService.GetValueOrDefault <string>(DomainConstants.LOCATION);

            if (location != null)
            {
                appSession.Location = JsonConvert.DeserializeObject <Location>(location);
            }
        }
Esempio n. 6
0
        public async Task <AddSettingsResponse> Handle(AddSettingsRequest request, CancellationToken cancellationToken)
        {
            try
            {
                await settingsService.AddOrUpdateValue(request.Key, request.Value).ConfigureAwait(false);

                await settingsService.AddOrUpdateValue(ConstantHandlerMessages.IsLoggedIn, true.ToString()).ConfigureAwait(false);

                var result = settingsService.GetValueOrDefault(request.Key, "");
                if (result == null || result == "")
                {
                    return(AddSettingsResponse.WithStatusAndMessage(false, ConstantHandlerMessages.AddCheckInFalg));
                }
                else
                {
                    return(AddSettingsResponse.WithStatus(true));
                }
            }
            catch (System.Exception ex)
            {
                return(AddSettingsResponse.WithStatusAndMessage(false, ex.Message));
            }
        }
        public async Task GetData()
        {
            await Task.Delay(50);

            View.ShowLoading();
            var  passport         = getOfflinePassportUseCase.Execute();
            bool offline          = false;
            var  passportResponse = await getPassportUseCase.Execute(true);

            View.HideLoading();
            if (passportResponse.ErrorCode > 0)
            {
                if (passport == null)
                {
                    View.ShowDialog(passportResponse.Message, "msg_ok", null);
                    return;
                }
                offline = true;
            }
            else
            {
                passport = passportResponse.Data;
            }
            View.SetQRInfo(QRUtils.GenerateQRInfo(passport));
            var message = CalculatePassportExpiration(passport);

            View.SetPassportInfo(passport, message, offline);

            estadoPasaporte = passport.EstadoId;
            int state = settingsService.GetValueOrDefault <int>(DomainConstants.LAST_PASSPORT_STATE, -1);

            if (state != estadoPasaporte)
            {
                if (passport.HasMessage)
                {
                    View.ShowStateChange();
                }
                settingsService.AddOrUpdateValue <int>(DomainConstants.LAST_PASSPORT_STATE, estadoPasaporte);
            }
        }
Esempio n. 8
0
        public async Task Authorized(string token)
        {
            var appSession = Locator.Current.GetService <AppSession>();

            appSession.AccesToken = token;

            View.ShowLoading();
            var userResponse = await getUserUseCase.Execute();

            if (userResponse.ErrorCode > 0)
            {
                View.HideLoading();
                if (userResponse.ErrorCode == 401)
                {
                    View.ShowDialog("error_401_user", "msg_ok", null);
                }
                else
                {
                    View.ShowDialog(userResponse.Message, "msg_ok", null);
                }
                View.ShowRetry();
            }
            else
            {
                settingsService.AddOrUpdateValue <string>(DomainConstants.LAST_SESSION, appSession.AccesToken);
                settingsService.AddOrUpdateValue <string>(DomainConstants.LAST_USER, appSession.User);
                settingsService.AddOrUpdateValue <long>(DomainConstants.LAST_DATE, DateTime.Now.Ticks);
                settingsService.AddOrUpdateValue <string>(DomainConstants.LAST_USER_INFO, JsonConvert.SerializeObject(appSession.UserInfo));
                var passportResponse = await getPassportUseCase.Execute(true);

                //await getPassportStatesUseCase.Execute(true);
                //await getPassportStatesColorsUseCase.Execute(true);
                await getRiskFactorsUseCase.Execute(true);

                await getSymptomTypesUseCase.Execute(true);

                //await getMedicalMonitorsUseCase.Execute(true);
                View.HideLoading();
                if (passportResponse.ErrorCode > 0)
                {
                    View.ShowDialog(passportResponse.Message, "msg_ok", null);
                }
                else
                {
                    if (passportResponse.Data == null)
                    {
                        //navigator.GoToMedicalTest();
                        var resFactors = await getRiskFactorsUseCase.Execute();

                        if (resFactors.ErrorCode > 0)
                        {
                            View.ShowDialog(resFactors.Message, "msg_ok", null);
                            return;
                        }
                        var factors = resFactors.Data;
                        List <RequestValue> values = new List <RequestValue>();
                        for (int i = 0; i < factors.Count(); i++)
                        {
                            var value = new RequestValue()
                            {
                                Id    = factors.ElementAt(i).IdRiskFactor,
                                Value = (bool?)null
                            };
                            values.Add(value);
                        }
                        var response = await senrRiskFactorsUseCase.Execute(values);

                        if (response.ErrorCode > 0)
                        {
                            View.ShowDialog(response.Message, "msg_ok", null);
                        }
                        else
                        {
                            navigator.GoToMain();
                        }
                    }
                    else
                    {
                        navigator.GoToMain();
                    }
                }
            }
        }
Esempio n. 9
0
 public void ModifyClicked(Location loc)
 {
     appSession.Location = loc;
     settingsService.AddOrUpdateValue(DomainConstants.LOCATION, JsonConvert.SerializeObject(loc));
     navigator.GoBack();
 }