Ejemplo n.º 1
0
            public void DD_Get_With_Module_Description_Test()
            {
                string desc = "BSHSI - Outreach & Enrollment";

                ProgramService ps = new ProgramService
                {
                    ProgramDataManager  = new StubProgramDataManager(),
                    Helpers             = new StubHelper(),
                    CommonFormatterUtil = new StubCommonFormatterUtil()
                };

                GetProgramDetailsSummaryRequest request = new GetProgramDetailsSummaryRequest
                {
                    Context        = "NG",
                    ContractNumber = "InHealth001",
                    PatientId      = "",
                    ProgramId      = "",
                    UserId         = "nguser",
                    Version        = 1.0
                };

                GetProgramDetailsSummaryResponse response = ps.Get(request);
                ModuleDetail module = response.Program.Modules.Find(m => m.SourceId == "532b5585a381168abe00042c");
                string       mDesc  = module.Description.Trim();

                Assert.AreEqual(desc, mDesc, true);
            }
Ejemplo n.º 2
0
            public void DD_Get_Action_AssignedBy_Test()
            {
                string         ctrl = "123456789011111111112233";
                ProgramService ps   = new ProgramService
                {
                    ProgramDataManager  = new StubProgramDataManager(),
                    Helpers             = new StubHelper(),
                    CommonFormatterUtil = new StubCommonFormatterUtil()
                };

                GetProgramDetailsSummaryRequest request = new GetProgramDetailsSummaryRequest
                {
                    Context        = "NG",
                    ContractNumber = "InHealth001",
                    PatientId      = "",
                    ProgramId      = "",
                    UserId         = "nguser",
                    Version        = 1.0
                };

                GetProgramDetailsSummaryResponse response = ps.Get(request);
                ModuleDetail  module = response.Program.Modules.Find(m => m.SourceId == "532b5585a381168abe00042c");
                ActionsDetail action = module.Actions.Find(a => a.SourceId == "123456789012345678901234");

                Assert.AreEqual(ctrl, action.AssignBy);
            }
Ejemplo n.º 3
0
            public void DD_Get_Action_Objectives_Test()
            {
                ProgramService ps = new ProgramService
                {
                    ProgramDataManager  = new StubProgramDataManager(),
                    Helpers             = new StubHelper(),
                    CommonFormatterUtil = new StubCommonFormatterUtil()
                };

                GetProgramDetailsSummaryRequest request = new GetProgramDetailsSummaryRequest
                {
                    Context        = "NG",
                    ContractNumber = "InHealth001",
                    PatientId      = "",
                    ProgramId      = "",
                    UserId         = "nguser",
                    Version        = 1.0
                };

                GetProgramDetailsSummaryResponse response = ps.Get(request);
                ModuleDetail             module           = response.Program.Modules.Find(m => m.SourceId == "532b5585a381168abe00042c");
                ActionsDetail            action           = module.Actions.Find(a => a.SourceId == "123456789012345678901234");
                List <ObjectiveInfoData> objs             = action.Objectives;

                Assert.IsNotNull(objs);
            }
Ejemplo n.º 4
0
            public void DD_Get_With_Action_AssignedOn_Test()
            {
                DateTime?time = Convert.ToDateTime("1/1/1899");
                //                ProgramDataManager pm = new ProgramDataManager { Factory = new ProgramRepositoryFactory(), DTOUtility = new DTOUtility { Factory = new ProgramRepositoryFactory() } };
                ProgramDataManager pm = new ProgramDataManager {
                    Factory = new StubProgramRepositoryFactory(), DTOUtility = new StubDTOUtility {
                        Factory = new StubProgramRepositoryFactory()
                    }
                };
                GetProgramDetailsSummaryRequest request = new GetProgramDetailsSummaryRequest
                {
                    Version        = 1.0,
                    ProgramId      = _programId,
                    PatientId      = _patientId,
                    UserId         = "000000000000000000000000",
                    ContractNumber = "InHealth001",
                    Context        = "NG"
                };
                GetProgramDetailsSummaryResponse response = pm.GetPatientProgramDetailsById(request);
                ModuleDetail  module = response.Program.Modules.Find(m => m.SourceId == "532b5585a381168abe00042c");
                ActionsDetail action = module.Actions.Find(a => a.SourceId == "123456789012345678901234");
                DateTime?     mTime  = action.AssignDate;

                Assert.AreEqual(time, mTime);
            }
Ejemplo n.º 5
0
            public void DD_Get_Module_AssignedOn_Test()
            {
                DateTime?time = Convert.ToDateTime("1/1/1999");

                ProgramService ps = new ProgramService
                {
                    ProgramDataManager  = new StubProgramDataManager(),
                    Helpers             = new StubHelper(),
                    CommonFormatterUtil = new StubCommonFormatterUtil()
                };

                GetProgramDetailsSummaryRequest request = new GetProgramDetailsSummaryRequest
                {
                    Context        = "NG",
                    ContractNumber = "InHealth001",
                    PatientId      = "",
                    ProgramId      = "",
                    UserId         = "nguser",
                    Version        = 1.0
                };

                GetProgramDetailsSummaryResponse response = ps.Get(request);
                ModuleDetail module = response.Program.Modules.Find(m => m.SourceId == "532b5585a381168abe00042c");
                DateTime?    mTime  = module.AssignDate;

                Assert.AreEqual(time, mTime);
            }
Ejemplo n.º 6
0
            public void DD_Get_With_Action_Description_Test()
            {
                string desc = "BSHSI - Outreach & Enrollment action description";
                //                ProgramDataManager pm = new ProgramDataManager { Factory = new ProgramRepositoryFactory(), DTOUtility = new DTOUtility { Factory = new ProgramRepositoryFactory() } };
                ProgramDataManager pm = new ProgramDataManager {
                    Factory = new StubProgramRepositoryFactory(), DTOUtility = new StubDTOUtility {
                        Factory = new StubProgramRepositoryFactory()
                    }
                };
                GetProgramDetailsSummaryRequest request = new GetProgramDetailsSummaryRequest
                {
                    Version        = 1.0,
                    ProgramId      = _programId,
                    PatientId      = _patientId,
                    UserId         = "000000000000000000000000",
                    ContractNumber = "InHealth001",
                    Context        = "NG"
                };
                GetProgramDetailsSummaryResponse response = pm.GetPatientProgramDetailsById(request);
                ModuleDetail  module = response.Program.Modules.Find(m => m.SourceId == "532b5585a381168abe00042c");
                ActionsDetail action = module.Actions.Find(a => a.SourceId == "123456789012345678901234");
                string        mDesc  = action.Description.Trim();

                Assert.AreEqual(desc, mDesc, true);
            }
Ejemplo n.º 7
0
            public void Get_With_Objectives_Test()
            {
                ProgramDataManager pm = new ProgramDataManager {
                    Factory = new ProgramRepositoryFactory()
                };
                GetProgramDetailsSummaryRequest request = new GetProgramDetailsSummaryRequest
                {
                    Version        = 1.0,
                    ProgramId      = _programId,
                    PatientId      = _patientId,
                    UserId         = "nguser",
                    ContractNumber = "InHealth001",
                    Context        = "NG"
                };
                GetProgramDetailsSummaryResponse response = pm.GetPatientProgramDetailsById(request);

                Assert.IsNotNull(response.Program.ObjectivesData);
            }
Ejemplo n.º 8
0
            public void DD_Get_With_Module_Objectives()
            {
                ProgramDataManager pm = new ProgramDataManager {
                    Factory = new StubProgramRepositoryFactory(), DTOUtility = new StubDTOUtility {
                        Factory = new StubProgramRepositoryFactory()
                    }
                };
                GetProgramDetailsSummaryRequest request = new GetProgramDetailsSummaryRequest
                {
                    Version        = 1.0,
                    ProgramId      = _programId,
                    PatientId      = _patientId,
                    UserId         = "000000000000000000000000",
                    ContractNumber = "InHealth001",
                    Context        = "NG"
                };
                GetProgramDetailsSummaryResponse response = pm.GetPatientProgramDetailsById(request);
                ModuleDetail module = response.Program.Modules.Find(m => m.SourceId == "532b5585a381168abe00042c");

                Assert.IsNotNull(module.Objectives);
            }
Ejemplo n.º 9
0
            public void Get_With_Objectives_Test()
            {
                ProgramService ps = new ProgramService
                {
                    ProgramDataManager  = new StubProgramDataManager(),
                    Helpers             = new StubHelper(),
                    CommonFormatterUtil = new StubCommonFormatterUtil()
                };

                GetProgramDetailsSummaryRequest request = new GetProgramDetailsSummaryRequest
                {
                    Context        = "NG",
                    ContractNumber = "InHealth001",
                    PatientId      = "",
                    ProgramId      = "",
                    UserId         = "nguser",
                    Version        = 1.0
                };

                GetProgramDetailsSummaryResponse response = ps.Get(request);

                Assert.IsNotNull(response.Program.ObjectivesData);
            }
Ejemplo n.º 10
0
            public void DD_Get_With_Module_AssignedBy()
            {
                string             ctrl = "123456789011111111112223";
                ProgramDataManager pm   = new ProgramDataManager {
                    Factory = new StubProgramRepositoryFactory(), DTOUtility = new StubDTOUtility {
                        Factory = new StubProgramRepositoryFactory()
                    }
                };
                GetProgramDetailsSummaryRequest request = new GetProgramDetailsSummaryRequest
                {
                    Version        = 1.0,
                    ProgramId      = _programId,
                    PatientId      = _patientId,
                    UserId         = "000000000000000000000000",
                    ContractNumber = "InHealth001",
                    Context        = "NG"
                };
                GetProgramDetailsSummaryResponse response = pm.GetPatientProgramDetailsById(request);
                ModuleDetail module = response.Program.Modules.Find(m => m.SourceId == "532b5585a381168abe00042c");
                string       smpl   = module.AssignBy;

                Assert.AreEqual(ctrl, smpl);
            }
Ejemplo n.º 11
0
        public GetProgramDetailsSummaryResponse Get(GetProgramDetailsSummaryRequest request)
        {
            GetProgramDetailsSummaryResponse response = new GetProgramDetailsSummaryResponse();

            try
            {
                if (string.IsNullOrEmpty(request.UserId))
                {
                    throw new UnauthorizedAccessException("ProgramDD:Get()::Unauthorized Access");
                }

                response         = ProgramDataManager.GetPatientProgramDetailsById(request);
                response.Version = request.Version;
            }
            catch (Exception ex)
            {
                CommonFormatterUtil.FormatExceptionResponse(response, base.Response, ex);

                string aseProcessID = ConfigurationManager.AppSettings.Get("ASEProcessID") ?? "0";
                Helpers.LogException(int.Parse(aseProcessID), ex);
            }
            return(response);
        }
Ejemplo n.º 12
0
            public void Get_With_Eligibility_EndDate_Test()
            {
                ProgramService ps = new ProgramService
                {
                    ProgramDataManager  = new StubProgramDataManager(),
                    Helpers             = new StubHelper(),
                    CommonFormatterUtil = new StubCommonFormatterUtil()
                };

                GetProgramDetailsSummaryRequest request = new GetProgramDetailsSummaryRequest
                {
                    Context        = "NG",
                    ContractNumber = "InHealth001",
                    PatientId      = "",
                    ProgramId      = "",
                    UserId         = "nguser",
                    Version        = 1.0
                };

                GetProgramDetailsSummaryResponse response = ps.Get(request);
                DateTime val = System.DateTime.UtcNow;

                Assert.AreEqual(val, response.Program.EligibilityEndDate);
            }
Ejemplo n.º 13
0
            public void DD_Get_With_Action_AssignedTo_Test()
            {
                string             assnTC = "123456789011111111112232";
                ProgramDataManager pm     = new ProgramDataManager {
                    Factory = new StubProgramRepositoryFactory(), DTOUtility = new StubDTOUtility {
                        Factory = new StubProgramRepositoryFactory()
                    }
                };
                GetProgramDetailsSummaryRequest request = new GetProgramDetailsSummaryRequest
                {
                    Version        = 1.0,
                    ProgramId      = _programId,
                    PatientId      = _patientId,
                    UserId         = "000000000000000000000000",
                    ContractNumber = "InHealth001",
                    Context        = "NG"
                };
                GetProgramDetailsSummaryResponse response = pm.GetPatientProgramDetailsById(request);
                ModuleDetail  module = response.Program.Modules.Find(m => m.SourceId == "532b5585a381168abe00042c");
                ActionsDetail action = module.Actions.Find(a => a.SourceId == "123456789012345678901234");
                string        assnT  = action.AssignTo;

                Assert.AreEqual(assnTC, assnT);
            }
Ejemplo n.º 14
0
        public GetProgramDetailsSummaryResponse GetPatientProgramDetailsById(GetProgramDetailsSummaryRequest request)
        {
            try
            {
                GetProgramDetailsSummaryResponse response = new GetProgramDetailsSummaryResponse();

                IProgramRepository repo = Factory.GetRepository(request, RepositoryType.PatientProgram);
                MEPatientProgram   mepp = repo.FindByID(request.ProgramId) as MEPatientProgram;

                IProgramRepository respRepo = Factory.GetRepository(request, RepositoryType.PatientProgramResponse);
                var stepIds = mepp.Modules.SelectMany(m => m.Actions.SelectMany(a => a.Steps.Select(s => s.Id))).ToList();
                DTOUtility.ResponsesBag = respRepo.Find(stepIds).Cast <MEPatientProgramResponse>().ToList();

                response.Program = new ProgramDetail
                {
                    Id     = mepp.Id.ToString(),
                    Client = mepp.Client != null?mepp.Client.ToString() : null,
                                 ContractProgramId = mepp.ContractProgramId.ToString(),
                                 Description       = mepp.Description,
                                 Name      = mepp.Name,
                                 PatientId = mepp.PatientId.ToString(),
                                 //ProgramState = (int)mepp.ProgramState, depricated - Use Element state instead.
                                 ShortName                          = mepp.ShortName,
                                 StartDate                          = mepp.StartDate,
                                 EndDate                            = mepp.EndDate,
                                 AttrStartDate                      = mepp.AttributeStartDate,
                                 AttrEndDate                        = mepp.AttributeEndDate,
                                 Status                             = (int)mepp.Status,
                                 Version                            = mepp.Version,
                                 Completed                          = mepp.Completed,
                                 Enabled                            = mepp.Enabled,
                                 Next                               = mepp.Next != null?mepp.Next.ToString() : string.Empty,
                                                           Order    = mepp.Order,
                                                           Previous = mepp.Previous != null?mepp.Previous.ToString() : string.Empty,
                                                                          SourceId                = mepp.SourceId.ToString(),
                                                                          AssignBy                = mepp.AssignedBy.ToString(),
                                                                          AssignDate              = mepp.AssignedOn,
                                                                          AssignTo                = mepp.AssignedTo.ToString(),
                                                                          ElementState            = (int)mepp.State,
                                                                          StateUpdatedOn          = mepp.StateUpdatedOn,
                                                                          CompletedBy             = mepp.CompletedBy,
                                                                          DateCompleted           = mepp.DateCompleted,
                                                                          EligibilityEndDate      = mepp.EligibilityEndDate,
                                                                          EligibilityStartDate    = mepp.EligibilityStartDate,
                                                                          EligibilityRequirements = mepp.EligibilityRequirements,
                                                                          AuthoredBy              = mepp.AuthoredBy,
                                                                          //ObjectivesData = DTOUtils.GetObjectives(mepp.Objectives),
                                                                          SpawnElement = DTOUtility.GetSpawnElement(mepp),
                                                                          Modules      = DTOUtility.GetModules(mepp.Modules, mepp.ContractProgramId.ToString(), request)
                };

                // load program attributes
                ProgramAttributeData pad = GetProgramAttributes(mepp.Id.ToString(), request);
                response.Program.Attributes = pad;

                // Get the fields from Program collection.
                MEProgram meProgram = DTOUtility.GetLimitedProgramDetails(mepp.SourceId.ToString(), request);

                if (meProgram != null)
                {
                    response.Program.AuthoredBy              = meProgram.AuthoredBy;
                    response.Program.TemplateName            = meProgram.TemplateName;
                    response.Program.TemplateVersion         = meProgram.TemplateVersion;
                    response.Program.ProgramVersion          = meProgram.ProgramVersion;
                    response.Program.ProgramVersionUpdatedOn = meProgram.ProgramVersionUpdatedOn;
                    response.Program.ObjectivesData          = DTOUtility.GetObjectivesData(meProgram.Objectives);
                }
                return(response);
            }
            catch (Exception ex)
            {
                throw new Exception("DD:DataProgramManager:GetPatientProgramDetailsById()::" + ex.Message, ex.InnerException);
            }
            finally
            {
                DTOUtility.ResponsesBag = null;
            }
        }