Ejemplo n.º 1
0
        public async Task <IEnumerable <InventoryUseList> > GetUndistributedListAsync()
        {
            var loggedInUserID = _userService.GetCurrentUserId();

            CoreServiceDevReference.CoreServiceClient coreServiceClient = new CoreServiceDevReference.CoreServiceClient();

            var distributableInventory = await coreServiceClient.GetDistributableInventoryForUserAsync(int.Parse(loggedInUserID), false);

            List <InventoryUseList> distributableInventoryList = new List <InventoryUseList>();

            foreach (var inv in distributableInventory)
            {
                var invUseList = new InventoryUseList();
                List <InventoryUse> inventoryUseList = new List <InventoryUse>();
                foreach (var assForms in inv.AssessmentForms)
                {
                    invUseList.ProductName = assForms.ProductFamily;
                    foreach (var reportForm in assForms.ReportForms)
                    {
                        var invUse = new InventoryUse();
                        invUse.ProductName = assForms.ProductFamily;
                        invUse.Name        = reportForm.Name;
                        invUse.Uses        = reportForm.Count;
                        inventoryUseList.Add(invUse);
                    }
                    invUseList.InventoryUses = inventoryUseList;
                    distributableInventoryList.Add(invUseList);
                }
            }
            return(distributableInventoryList);
        }
Ejemplo n.º 2
0
        public async Task <IEnumerable <Report> > GetListAsync()
        {
            var loggedInUserID = _userService.GetCurrentUserId();

            CoreServiceDevReference.CoreServiceClient coreServiceClient = new CoreServiceDevReference.CoreServiceClient();
            // TODO: access clients?
            var reportListingForUser = await coreServiceClient.GetReportsBySearchCriteriaAsync(null, null, null, null, null, false, false, null, null, int.Parse(loggedInUserID), null);

            var clientListingForUser = await coreServiceClient.GetAllClientListingForUserAsync(int.Parse(loggedInUserID));

            //var clinicians = await coreServiceClient.GetClinicianListingsForUserAsync(int.Parse(loggedInUserID));
            //var user = clinicians.Where(x=>x.OrgUserMappingKey == int.Parse(loggedInUserID)).Select(c => c.Name).SingleOrDefault();

            var reportListing = reportListingForUser
                                .Select(x => new Report
            {
                ClientId      = x.ClientID,
                ClientName    = x.ClientName,
                ReportName    = x.ProductName,
                AssignedDate  = x.DateAssigned,
                CompletedDate = x.DateCompleted,
                ReportKey     = x.ReportKey
            }).ToList();

            return(reportListing);
        }
        public async Task <IEnumerable <AssessmentReviewDto> > GetAssessmentsByStatus(int id)
        {
            string contentRootPath = _hostingEnvironment.ContentRootPath;

            if (await IsAlive())
            {
                CoreServiceDevReference.CoreServiceClient coreServiceClient = new CoreServiceDevReference.CoreServiceClient();

                var clientAssessmentReviews = await coreServiceClient.GetClientAssessmentsForReview_NEWAsync(null, 54338, null, null); //54338

                var clientAssesReviews = clientAssessmentReviews
                                         .Select(x => new AssessmentReviewDto
                {
                    Assessment  = x.AssessmentForm.Assessment.Name + " " + x.AssessmentForm.Name,
                    ClientName  = x.Client.FirstName + " " + x.Client.LastName,
                    LastUpdated = x.TestDate,
                    StatusKey   = x.StatusKey
                });
                if (id > 0)
                {
                    clientAssesReviews = clientAssesReviews.Where(x => StatusTypes.GetCompletedStatuses(true).Contains(x.StatusKey));
                }
                else
                {
                    clientAssesReviews = clientAssesReviews.Where(x => StatusTypes.GetCompletedStatuses(false).Contains(x.StatusKey));
                }
                return(clientAssesReviews);
            }
            //else
            //{
            //var JSON = System.IO.File.ReadAllText(contentRootPath + "/data/clientAssessments.json");
            //return JsonConvert.DeserializeObject<IEnumerable<AssessmentReviewDto>>(JSON);
            //}
            return(null);
        }
Ejemplo n.º 4
0
        public async Task <CoreServiceDevReference.AssessmentForm> GetByKeyAsync(int key)
        {
            CoreServiceDevReference.CoreServiceClient coreServiceClient = new CoreServiceDevReference.CoreServiceClient();
            var assessmentFormRef = await coreServiceClient.GetAssessmentFormByKeyAsync(key);

            return(assessmentFormRef);
        }
Ejemplo n.º 5
0
        public async Task <CoreServiceDevReference.ClientGroup> GetByKeyAsync(int key)
        {
            //var loggedInUserID = _userService.GetCurrentUserId();
            CoreServiceDevReference.CoreServiceClient coreServiceClient = new CoreServiceDevReference.CoreServiceClient();
            var clientGroup = await coreServiceClient.GetClientGroupByKeyAsync(key);

            return(clientGroup);
        }
Ejemplo n.º 6
0
        public async Task <IEnumerable <AssessmentReviewDto> > GetAssessmentsByStatus(int id)
        {
            try
            {
                CoreServiceDevReference.CoreServiceClient coreServiceClient = new CoreServiceDevReference.CoreServiceClient();
                if (await IsAlive())
                {
                    var clientAssessments = await coreServiceClient.GetClientAssessmentsForReview_NEWAsync(null, 54338, null, null); //54338

                    var clientAsses = clientAssessments
                                      .Select(x => new AssessmentReviewDto
                    {
                        Assessment  = x.AssessmentForm.Assessment.Name + " " + x.AssessmentForm.Name,
                        ClientName  = x.Client.FirstName + " " + x.Client.LastName,
                        LastUpdated = x.TestDate,
                        StatusKey   = x.StatusKey
                    });
                    if (id > 0)
                    {
                        clientAsses = clientAsses.Where(x => StatusTypes.GetCompletedStatuses(true).Contains(x.StatusKey));
                    }
                    else
                    {
                        clientAsses = clientAsses.Where(x => StatusTypes.GetCompletedStatuses(false).Contains(x.StatusKey));
                    }
                    return(clientAsses);
                }
                else if (_hostingEnvironment.IsDevelopment())
                {
                    string webRootPath    = _hostingEnvironment.WebRootPath;
                    var    JSON           = System.IO.File.ReadAllText(webRootPath + "/data/clientAssessments.json");
                    var    newClientAsses = JsonConvert.DeserializeObject <IEnumerable <AssessmentReviewDto> >(JSON);
                    if (id > 0)
                    {
                        var statusTypeList = StatusTypes.GetCompletedStatuses(true).ToArray();

                        Debug.WriteLine(statusTypeList);
                        //newClientAsses = newClientAsses.Where(x => statusTypeList.Contains(x.StatusKey));
                        //newClientAsses = newClientAsses.Where(x => x.StatusKey == 12);

                        return(newClientAsses.Where(x => statusTypeList.Contains(x.StatusKey)));
                    }
                    else
                    {
                        var statusTypeList = StatusTypes.GetCompletedStatuses(false).ToArray();
                        Debug.WriteLine(statusTypeList);
                        //newClientAsses = newClientAsses.Where(x => x.StatusKey == 6);
                        return(newClientAsses.Where(x => statusTypeList.Contains(x.StatusKey)));
                    }
                    return(newClientAsses);
                }
                return(null);
            }
            catch (Exception ex)
            {
                return(null);
            }
        }
Ejemplo n.º 7
0
        public async Task <bool> IsDistributable()
        {
            var loggedInUserID = _userService.GetCurrentUserId();

            CoreServiceDevReference.CoreServiceClient coreServiceClient = new CoreServiceDevReference.CoreServiceClient();
            var distributableInventory = await coreServiceClient.GetDistributableInventoryForUserAsync(int.Parse(loggedInUserID), false);

            return(distributableInventory.Any());
        }
Ejemplo n.º 8
0
        public async Task <CoreServiceDevReference.ClientGroup> SaveOrUpdate(CoreServiceDevReference.ClientGroup clientGroup)
        {
            var loggedInUserID = _userService.GetCurrentUserId();

            clientGroup.OrgUserMappingKey = int.Parse(loggedInUserID);
            //var loggedInUserName = _userService.GetCurrentUserName();
            CoreServiceDevReference.CoreServiceClient coreServiceClient = new CoreServiceDevReference.CoreServiceClient();
            var clientGroupResult = await coreServiceClient.SaveOrUpdateClientGroupAsync(clientGroup);

            return(clientGroupResult);
        }
Ejemplo n.º 9
0
        public async Task <bool> IsInventoryLow()
        {
            var loggedInUserID = _userService.GetCurrentUserId();

            CoreServiceDevReference.CoreServiceClient coreServiceClient = new CoreServiceDevReference.CoreServiceClient();
            var inventoryUsesList = await coreServiceClient.GetCurrentInventoryForUserListAsync(int.Parse(loggedInUserID));

            var appSettingsSection = _configuration.GetSection("AppSettings");
            var appSettings        = appSettingsSection.Get <AppSettings>();

            var anyUsesLow = inventoryUsesList.Any(x => x.Uses < appSettings.InventoryLowThreshold);

            return(anyUsesLow);
        }
Ejemplo n.º 10
0
        public async Task <IEnumerable <InventoryUseList> > GetInventoryUseListAsync()
        {
            var loggedInUserID = _userService.GetCurrentUserId();

            CoreServiceDevReference.CoreServiceClient coreServiceClient = new CoreServiceDevReference.CoreServiceClient();
            var inventoryUsesList = await coreServiceClient.GetCurrentInventoryForUserListAsync(int.Parse(loggedInUserID));

            var inventoryUses = inventoryUsesList.GroupBy(g => g.ProductName, g => new InventoryUse(g.Name, g.Uses), (key, g) => new InventoryUseList {
                ProductName   = key,
                InventoryUses = g.ToList()
            });

            return(inventoryUses);
        }
Ejemplo n.º 11
0
        public async Task <bool> IsAlive()
        {
            CoreServiceDevReference.CoreServiceClient coreServiceClient = new CoreServiceDevReference.CoreServiceClient();
            try
            {
                await coreServiceClient.HelloWorldAsync();

                return(true);
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex.Message);
                return(false);
            }
        }
Ejemplo n.º 12
0
        public async Task <bool> SetFavoriteStatus(int assessmentFormKey, bool favorited)
        {
            var loggedInUserID = _userService.GetCurrentUserId();

            CoreServiceDevReference.CoreServiceClient coreServiceClient = new CoreServiceDevReference.CoreServiceClient();
            try
            {
                await coreServiceClient.SetFavoriteStatusAsync(int.Parse(loggedInUserID), assessmentFormKey, favorited);

                return(true);
            }
            catch
            {
                return(false);
            }
        }
        public async Task <IEnumerable <RecentlyCreated> > GetRecentlyCreatedAsync()
        {
            var loggedInUserID = _userService.GetCurrentUserId();

            CoreServiceDevReference.CoreServiceClient coreServiceClient = new CoreServiceDevReference.CoreServiceClient();
            var clientListResult = await coreServiceClient.GetClientListingForUserAsync(int.Parse(loggedInUserID));

            var clientList = clientListResult.Clients
                             .Select(x => new RecentlyCreated
            {
                ClientId   = x.ClientKey,
                ClientName = x.FirstName + " " + x.LastName,
                Created    = x.CreatedDateTime
            });

            return(clientList.OrderByDescending(x => x.Created).Take(10));
        }
Ejemplo n.º 14
0
        public async Task <IEnumerable <InventoryUse> > GetAllInventoryUse()
        {
            var loggedInUserID = _userService.GetCurrentUserId();

            CoreServiceDevReference.CoreServiceClient coreServiceClient = new CoreServiceDevReference.CoreServiceClient();
            var inventoryUsesList = await coreServiceClient.GetCurrentInventoryForUserListAsync(int.Parse(loggedInUserID));

            var inventoryUses = inventoryUsesList
                                .Select(x => new InventoryUse
            {
                Name        = x.Name,
                ProductName = x.ProductName,
                Uses        = x.Uses
            });

            return(inventoryUses);
        }
Ejemplo n.º 15
0
        public async Task <IEnumerable <Group> > GetListAsync()
        {
            var loggedInUserID = _userService.GetCurrentUserId();

            CoreServiceDevReference.CoreServiceClient coreServiceClient = new CoreServiceDevReference.CoreServiceClient();
            var groupListingForUser = await coreServiceClient.GetAllClientListingForUserAsync(int.Parse(loggedInUserID));

            var groupListing = groupListingForUser.ClientGroups
                               .Select(x => new Group
            {
                ClientGroupKey = x.ClientGroupKey,
                Name           = x.Name,
                ClientCount    = x.Clients.Count()
                                 //    ,
                                 //    Clients = x.Clients.ToList()
            });

            return(groupListing);
        }
        public async Task <IEnumerable <AssessmentReviewDto> > GetAssessmentReviews(int id)
        //public async Task<IEnumerable<AssessmentReviewDto>> GetAssessmentsByStatus(int id)
        {
            string contentRootPath = _hostingEnvironment.ContentRootPath;

            CoreServiceDevReference.CoreServiceClient coreServiceClient = new CoreServiceDevReference.CoreServiceClient();

            var clientAssessmentReviews = await coreServiceClient.GetClientAssessmentsForReview_NEWAsync(null, id, null, null); //54338

            var clientAssesReviews = clientAssessmentReviews
                                     .Select(x => new AssessmentReviewDto
            {
                Assessment  = x.AssessmentForm.Assessment.Name + " " + x.AssessmentForm.Name,
                ClientName  = x.Client.FirstName + " " + x.Client.LastName,
                LastUpdated = x.TestDate,
                StatusKey   = x.StatusKey
            });

            return(clientAssesReviews);
        }
Ejemplo n.º 17
0
        public async Task <IEnumerable <AssessmentReviewDto> > GetAssessments(int?id)
        {
            try
            {
                CoreServiceDevReference.CoreServiceClient coreServiceClient = new CoreServiceDevReference.CoreServiceClient();
                if (await IsAlive())
                {
                    var clientAssessments = await coreServiceClient.GetClientAssessmentsForReview_NEWAsync(null, 54338, null, null);

                    var clientAsses = clientAssessments
                                      .Select(x => new AssessmentReviewDto
                    {
                        Assessment  = x.AssessmentForm.Assessment.Name + " " + x.AssessmentForm.Name,
                        ClientName  = x.Client.FirstName + " " + x.Client.LastName,
                        LastUpdated = x.TestDate,
                        StatusKey   = x.StatusKey
                    });
                    if (id > 0)
                    {
                        clientAsses = clientAsses.Where(x => x.StatusKey == id);
                    }
                    return(clientAsses);
                }
                else if (_hostingEnvironment.IsDevelopment())
                {
                    string webRootPath    = _hostingEnvironment.WebRootPath;
                    var    JSON           = System.IO.File.ReadAllText(webRootPath + "/data/clientAssessments.json");
                    var    newClientAsses = JsonConvert.DeserializeObject <IEnumerable <AssessmentReviewDto> >(JSON);
                    if (id > 0)
                    {
                        newClientAsses = newClientAsses.Where(x => x.StatusKey == id);
                    }
                    return(newClientAsses);
                }
                return(null);
            }
            catch (Exception ex)
            {
                return(null);
            }
        }
        public async Task <IEnumerable <AssessmentReview> > GetAllAsync(int?clientKey)
        {
            var loggedInUserID = _userService.GetCurrentUserId();

            CoreServiceDevReference.CoreServiceClient coreServiceClient = new CoreServiceDevReference.CoreServiceClient();
            var clientAssessmentReviews = await coreServiceClient.GetClientAssessmentsForReview_NEWAsync(clientKey, int.Parse(loggedInUserID), null, null);

            // var clientAssessment = await coreServiceClient.GetClientAssessmentByKeyAsync();
            var clientAssesReviews = clientAssessmentReviews
                                     .Select(x => new AssessmentReview
            {
                ClientAssessmentKey = x.ClientAssessmentKey,
                ClientKey           = x.ClientKey,
                Assessment          = x.AssessmentForm.Assessment.Name + " " + x.AssessmentForm.Name,
                ClientName          = x.Client.FirstName + " " + x.Client.LastName,
                Updated             = x.TestDate ?? DateTime.MinValue,//x.ModifiedDateTime??DateTime.MinValue,
                StatusKey           = x.StatusKey
            });

            return(clientAssesReviews.OrderByDescending(x => x.Updated));
        }
Ejemplo n.º 19
0
        public async Task <IEnumerable <Clinician> > GetListAsync()
        {
            var loggedInUserID = _userService.GetCurrentUserId();

            CoreServiceDevReference.CoreServiceClient coreServiceClient = new CoreServiceDevReference.CoreServiceClient();
            var clinicianListingForUser = await coreServiceClient.GetClinicianListingsForUserAsync(int.Parse(loggedInUserID));

            var clinicianListing = clinicianListingForUser
                                   .Select(x => new Clinician
            {
                OrgUserMappingKey = x.OrgUserMappingKey,
                Name    = x.Name,
                Clients = x.ClientListing.Clients.Select(c => new Client {
                    ClientId   = c.ClientID,
                    ClientName = string.Format("{0} {1}", c.FirstName, c.LastName),
                    Email      = c.PrimaryEmail,
                    Clinician  = x.Name
                })
            });

            return(clinicianListing);
        }
Ejemplo n.º 20
0
        public async Task <IEnumerable <CoreServiceDevReference.AssessmentInventoryItem> > GetAssessmentListAsync()
        {
            var loggedInUserID = _userService.GetCurrentUserId();

            CoreServiceDevReference.CoreServiceClient coreServiceClient = new CoreServiceDevReference.CoreServiceClient();
            var assessments = await coreServiceClient.GetCurrentInventoryForUserAsync(int.Parse(loggedInUserID));

            //var favorites = await coreServiceClient.GetFavoriteInventoryForCurrentUserAsync(int.Parse(loggedInUserID));

            //var fav = favorites.Where(x=>x.)
            var assessment = new Models.Assessment();


            var assessmentInventoryItems = assessments.Select(x => new CoreServiceDevReference.AssessmentInventoryItem
            {
                AssessmentKey   = x.AssessmentKey,
                ProductFamily   = x.ProductFamily,
                Count           = x.Count,
                AssessmentForms = x.AssessmentForms
            });

            return(assessmentInventoryItems);
        }