public void should_load_Local()
        {
            var practice = _activationService.GetLocal(_local).Result;

            Assert.IsNotNull(practice);
            Console.WriteLine(practice);
        }
 public IActionResult FindLocal()
 {
     try
     {
         var fac = _activationService.GetLocal();
         return(Ok(fac));
     }
     catch (Exception e)
     {
         Log.Debug($"{e}");
         return(StatusCode(500, $"{e.Message}"));
     }
 }
        private async Task <Practice> GetPractice()
        {
            var practice = await _activationService.GetLocal(Address);

            if (null == practice)
            {
                IsBusy               = false;
                CurrentStatus        = $"connection failed !!";
                CurrentStatusSummary = "Could not connect to server";

                _dialogService.Alert("Could not connect to server");
                return(null);
            }

            return(practice);
        }
Exemple #4
0
        private async void VerifyLocal()
        {
            _dialogService.ShowWait("Verifying,Please wait...");
            Local = new ServerConfig("hapi.local");
            var practice = await _activationService.GetLocal(LocalAddress);

            _dialogService.HideWait();
            if (null != practice)
            {
                //Activate Device
                Device.PracticeId = practice.Id;
                Local             = ServerConfig.CreateLocal(practice, LocalAddress);
            }
            else
            {
                _dialogService.Alert("Address could not be verified");
            }


            LocalName = Local.Name;
        }
        private async void PullData()
        {
            int total   = 16;
            int current = 0;

            IsBusy        = true;
            CurrentStatus = $"connecting...";

            var practice = await _activationService.GetLocal(Address);

            if (null != practice)
            {
                try
                {
                    var devicePrefix = await _activationService.AttemptEnrollDevice(Address, RegisteredDevice);

                    if (!string.IsNullOrEmpty(devicePrefix))
                    {
                        _deviceSetupService.UpdateCode(devicePrefix);
                        _settings.AddOrUpdateValue("livehts.devicecode", devicePrefix);
                    }
                }
                catch (Exception e)
                {
                }



                current++;
                CurrentStatus = showPerc("Metas", current, total);
                var meta = await _metaSyncService.GetMetaData(Address);

                _syncDataService.UpdateMeta(meta);

                current++;
                CurrentStatus = showPerc("Counties", current, total);
                var counties = await _metaSyncService.GetCounties(Address);

                _syncDataService.Update(counties);

                current++;
                CurrentStatus = showPerc("Categories", current, total);
                var categories = await _metaSyncService.GetCategories(Address);

                _syncDataService.Update(categories);

                current++;
                CurrentStatus = showPerc("Items", current, total);
                var items = await _metaSyncService.GetItems(Address);

                _syncDataService.Update(items);

                current++;
                CurrentStatus = showPerc("Category Items", current, total);
                var catitems = await _metaSyncService.GetCatItems(Address);

                _syncDataService.Update(catitems);

                current++;
                CurrentStatus = showPerc("Modules", current, total);
                var modules = await _formsSyncService.GetModules(Address);

                _syncDataService.UpdateModules(modules);

                current++;
                CurrentStatus = showPerc("Forms", current, total);
                var forms = await _formsSyncService.GetForms(Address);

                _syncDataService.UpdateForms(forms);

                current++;
                CurrentStatus = showPerc("Concepts", current, total);
                var concepts = await _formsSyncService.GetConcepts(Address);

                _syncDataService.UpdateConcepts(concepts);

                current++;
                CurrentStatus = showPerc("Questions", current, total);
                var questions = await _formsSyncService.GetQuestions(Address);

                _syncDataService.UpdateQuestions(questions);

                current++;
                current++;
                current++;
                CurrentStatus = showPerc("Users", current, total);
                var users = await _emrService.GetUsers(Address);

                _deviceSetupService.SaveUsers(users);



                current++;
                CurrentStatus = showPerc("cohort lists", current, total);
                var cohorts = await _cohortSyncService.GetCohorts(Address);

                _syncDataService.Update(cohorts);



                CurrentStatus = "done!";
                _dialogService.ShowToast("completed successfully");
            }
            else
            {
                IsBusy        = false;
                CurrentStatus = $"connection failed !!";

                _dialogService.Alert("Could not connect to server");
            }

            IsBusy = false;
        }
Exemple #6
0
        private async void PushData()
        {
            IsBusy = true;

            CurrentStatus = $"connecting...";
            var practice = await _activationService.GetLocal(Address);

            if (null != practice)
            {
                bool completed = true;

                try
                {
                    var response = await _activationService.AttempCheckVersion(Address);

                    if (string.IsNullOrWhiteSpace(response))
                    {
                        _dialogService.Alert($"you are using an old version of LiveHAPI");
                        IsBusy        = false;
                        CurrentStatus = $"send failed! updated LiveHAPI ";
                        return;
                    }

                    int.TryParse(response, out var version);

                    if (version != _hapiVersion)
                    {
                        _dialogService.Alert($"you are using an old version of LiveHAPI");
                        IsBusy        = false;
                        CurrentStatus = $"send failed! update LiveHAPI to v{_hapiVersion}";
                        return;
                    }

                    var pracs = _practiceSetupService.GetAll();
                    await _activationService.AttemptEnrollPractice(Address, pracs);
                }
                catch (Exception e)
                {
                    _dialogService.Alert($"connetion Error {e.Message}");
                    IsBusy = false;
                    return;
                }



                var ids   = _clientReaderService.LoadClientIds();
                var count = ids.Count;
                int n     = 0;

                var clientIdsDelete  = new List <ClientToDeleteDTO>();
                var encountersDelete = new List <EnconterToDeleteDTO>();

                var practicses = _practiceSetupService.GetAll();

                foreach (var id in ids)
                {
                    var clientToDeleteDto = new ClientToDeleteDTO();
                    n++;

                    var client = _clientReaderService.LoadClient(id);


                    if (null != client)
                    {
                        var clientInfo = new SyncClientDTO(client);

                        clientInfo.PracticeCode = GetCode(clientInfo.PracticeId, practicses);

                        CurrentStatus = showPerc("Clients", n, count);

                        var status = await _clientSyncService.AttempSendClients(Address, clientInfo);

                        if (status)
                        {
                            clientToDeleteDto = new ClientToDeleteDTO(client.Id, client.PersonId);
                        }
                        else
                        {
                            completed = false;
                        }
                    }

                    if (!clientToDeleteDto.NotSent)
                    {
                        var encounters = _clientReaderService.LoadEncounters(id);
                        if (null != encounters && encounters.Count > 0)
                        {
                            var syncEncounters = SyncClientEncounterDTO.Create(encounters, client);
                            var status         = await _clientSyncService.AttempSendClientEncounters(Address, syncEncounters);

                            if (status)
                            {
                                foreach (var encounter in encounters)
                                {
                                    clientToDeleteDto.AddEnounter(new EnconterToDeleteDTO(encounter.Id,
                                                                                          encounter.EncounterType));
                                }
                            }
                            else
                            {
                                completed = false;
                            }
                        }

                        var shrs = _clientReaderService.LoadPSmartStores(id);

                        if (null != shrs && shrs.Count > 0)
                        {
                            await _clientSyncService.SendClientShrs(Address, shrs);
                        }

                        clientIdsDelete.Add(clientToDeleteDto);
                        foreach (var toDeleteDto in clientIdsDelete)
                        {
                            //TODO: ALLOW DELETE []
                            if (deleteOnPush)
                            {
                                _clientReaderService.Purge(toDeleteDto);
                            }
                        }
                    }
                }

                //  send

                CurrentStatus = $"done! sent {clientIdsDelete.Count} of {count} ";

                if (completed)
                {
                    _dialogService.ShowToast("completed successfully");
                }
                else
                {
                    CurrentStatus = $"{CurrentStatus} with some Errors, Please check server logs";
                    _dialogService.Alert("send completed with errors");
                }
            }
            else
            {
                IsBusy        = false;
                CurrentStatus = $"connection failed !!";

                _dialogService.Alert("Could not connect to server");
            }

            IsBusy = false;
        }