コード例 #1
0
        public static EntirePatientJourney GetApprovedJourneyForPdf(string CountryId, string BrandId, string Year)
        {
            EntirePatientJourney   lstJourney     = new EntirePatientJourney();
            JourneyPdfModel        FirstResult    = new JourneyPdfModel();
            FullJourneyTransaction lstFullJourney = new FullJourneyTransaction();
            List <String>          lstCountryId   = new List <String>();

            lstCountryId = CountryId.Split(',').ToList();
            List <String> lstBrandId = new List <String>();

            lstBrandId = BrandId.Split(',').ToList();
            try
            {
                Patient_Journey result = new Patient_Journey();
                result = dbPatientJourney.GetApprovedJourney(Convert.ToInt32(lstCountryId[0]), Convert.ToInt32(lstBrandId[0]), Convert.ToInt32(Year));
                PJEntities entity = new PJEntities();
                if (result != null)
                {
                    List <JourneyStages> stages = bsPdfJourney.GetJourneyStageNames(result.Patient_Journey_Id.ToString());
                    lstJourney.Stages = stages;

                    lstJourney.StageCount     = stages.Count();
                    lstJourney.IndicationName = result.Journey_Title.Substring(0, result.Journey_Title.IndexOf("-"));

                    List <StrategicMomentAll> strategicAll = bsPdfJourney.GetStrategicMoment(result.Patient_Journey_Id.ToString());
                    lstJourney.StrategicMoment = strategicAll;

                    if (stages != null)
                    {
                        FullJourneyTransaction Full_Transactions = bsPdfJourney.GetAllTransactions(result.Patient_Journey_Id.ToString(), stages);
                        lstFullJourney.Transactions          = Full_Transactions.Transactions;
                        lstFullJourney.ClinicalInterventions = Full_Transactions.ClinicalInterventions;
                        lstFullJourney.AssociatedCosts       = Full_Transactions.AssociatedCosts;
                        lstFullJourney.DesiredOutcomes       = Full_Transactions.DesiredOutcomes;
                    }
                    lstJourney.FullJourneyTransaction = lstFullJourney;

                    FirstResult.PatientJourneyId = result.Patient_Journey_Id;
                    FirstResult.JourneyTitle     = result.Journey_Title;
                    FirstResult.StagesCount      = stages.Count;

                    lstJourney.Journey = FirstResult;
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(lstJourney);
        }
コード例 #2
0
        public static FullJourneyTransaction GetAllTransactions(string JourneyId, List <JourneyStages> stages)
        {
            FullJourneyTransaction fullJourneyTransaction = new FullJourneyTransaction();

            List <Journey_ClinicalInterventions> listClinicalIntervention = new List <Journey_ClinicalInterventions>();
            Journey_ClinicalInterventions        clinInter = null;

            List <Journey_DesiredOutcomes> listDesiredOutcomes = new List <Journey_DesiredOutcomes>();
            Journey_DesiredOutcomes        desiredOutcomes     = null;

            List <Journey_AssociatedCosts> listAssociatedCosts = new List <Journey_AssociatedCosts>();
            Journey_AssociatedCosts        associatedCost      = null;

            #region Get Transaction

            for (int i = 0; i < stages.Count; i++)
            {
                Journey_Transaction _journeyTransaction = new Journey_Transaction();
                _journeyTransaction                       = bsPdfJourney.GetTransactions(JourneyId, stages[i].PatientStageId.ToString(), i);
                _journeyTransaction.StageColor            = (i % 2 == 1) ? "#fff" : "rgba(204, 204, 204, 0.48)";
                _journeyTransaction.StageColorForLocation = (i % 2 == 1) ? "rgba(204, 204, 204, 0.48)" : "rgba(158, 158, 158, 0.48)";
                fullJourneyTransaction.Transactions.Add(_journeyTransaction);
            }
            #endregion

            if (fullJourneyTransaction.Transactions != null)
            {
                #region Get Clinical Intervention

                for (int i = 0; i < fullJourneyTransaction.Transactions.Count; i++)
                {
                    clinInter                       = new Journey_ClinicalInterventions();
                    clinInter.StageColor            = (i % 2 == 1) ? "rgb(255, 255, 255)" : "rgba(204, 204, 204, 0.48)";
                    clinInter.StageColorForLocation = (i % 2 == 1) ? "rgba(204, 204, 204, 0.48)" : "rgba(158, 158, 158, 0.48)";
                    List <Journey_ClinicalInterventions_Details> ClinicalInterventionsDetails = new List <Journey_ClinicalInterventions_Details>();

                    for (int j = 0; j < fullJourneyTransaction.Transactions[i].TransactionsDetails.Count; j++)
                    {
                        clinInter.TransactionId = Convert.ToInt32(fullJourneyTransaction.Transactions[i].TransactionsDetails[j].PatientJourneyTransactionId);

                        var resultClinInt = dbPatientJourney.GetClinicalIntervention(fullJourneyTransaction.Transactions[i].TransactionsDetails[j].PatientJourneyTransactionId);

                        if (resultClinInt != null)
                        {
                            Journey_ClinicalInterventions_Details Journey_ClinicalInterventions_Details = new Journey_ClinicalInterventions_Details();
                            Journey_ClinicalInterventions_Details.ClinicalInterventionId       = resultClinInt.Patient_Journey_Trans_Clin_Interventions_Id;
                            Journey_ClinicalInterventions_Details.ClinicalInterventionMasterId = resultClinInt.Clinical_Intervention_Master_Id;
                            if (Journey_ClinicalInterventions_Details.ClinicalInterventionMasterId != null)
                            {
                                var clinicalInterventionMasterDetails = dbPatientAdministration.GetClinicalInterventionDetails(Journey_ClinicalInterventions_Details.ClinicalInterventionMasterId);
                                Journey_ClinicalInterventions_Details.ClinicalInterventionTitle = clinicalInterventionMasterDetails.Select(x => x.Title).FirstOrDefault().ToString();
                                if (clinicalInterventionMasterDetails.Select(x => x.Image_Master_Id).FirstOrDefault() != null)
                                {
                                    Journey_ClinicalInterventions_Details.ImageMasterId = (int)clinicalInterventionMasterDetails.Select(x => x.Image_Master_Id).FirstOrDefault();
                                    Journey_ClinicalInterventions_Details.ImagePath     = dbPatientAdministration.GetImagePath(Journey_ClinicalInterventions_Details.ImageMasterId);
                                }
                            }
                            Journey_ClinicalInterventions_Details.Description = resultClinInt.Description;

                            ClinicalInterventionsDetails.Add(Journey_ClinicalInterventions_Details);
                        }
                        else
                        {
                            Journey_ClinicalInterventions_Details Journey_ClinicalInterventions_Details = new Journey_ClinicalInterventions_Details();
                            ClinicalInterventionsDetails.Add(Journey_ClinicalInterventions_Details);
                        }

                        clinInter.ClinicalInterventionsDetails = ClinicalInterventionsDetails;
                    }

                    fullJourneyTransaction.ClinicalInterventions.Add(clinInter);
                }
                #endregion

                #region Get Desired Outcomes
                Journey_DesiredOutcomes_Details Journey_DesiredOutcomes_Details;

                for (int i = 0; i < fullJourneyTransaction.Transactions.Count; i++)
                {
                    desiredOutcomes                       = new Journey_DesiredOutcomes();
                    desiredOutcomes.StageColor            = (i % 2 == 1) ? "rgb(255, 255, 255)" : "rgba(204, 204, 204, 0.48)";
                    desiredOutcomes.StageColorForLocation = (i % 2 == 1) ? "rgba(204, 204, 204, 0.48)" : "rgba(158, 158, 158, 0.48)";
                    List <Journey_DesiredOutcomes_Details> DesiredOutcomesDetails = new List <Journey_DesiredOutcomes_Details>();

                    for (int j = 0; j < fullJourneyTransaction.Transactions[i].TransactionsDetails.Count; j++)
                    {
                        desiredOutcomes.TransactionId = Convert.ToInt32(fullJourneyTransaction.Transactions[i].TransactionsDetails[j].PatientJourneyTransactionId);

                        var resultDesiredOutcomes = dbPatientJourney.GetDesiredOutcome(fullJourneyTransaction.Transactions[i].TransactionsDetails[j].PatientJourneyTransactionId);

                        if (resultDesiredOutcomes != null)
                        {
                            Journey_DesiredOutcomes_Details = new Journey_DesiredOutcomes_Details();
                            Journey_DesiredOutcomes_Details.DesiredOutcomeId = resultDesiredOutcomes.Patient_Journey_Transactions_DesiredOutcomes_Id;
                            Journey_DesiredOutcomes_Details.Description      = resultDesiredOutcomes.Description;

                            DesiredOutcomesDetails.Add(Journey_DesiredOutcomes_Details);
                        }
                        else
                        {
                            Journey_DesiredOutcomes_Details = new Journey_DesiredOutcomes_Details();
                            DesiredOutcomesDetails.Add(Journey_DesiredOutcomes_Details);
                        }

                        desiredOutcomes.DesiredOutcomesDetails = DesiredOutcomesDetails;
                    }
                    fullJourneyTransaction.DesiredOutcomes.Add(desiredOutcomes);
                }
                #endregion

                #region Get Associated Costs

                for (int i = 0; i < fullJourneyTransaction.Transactions.Count; i++)
                {
                    associatedCost                       = new Journey_AssociatedCosts();
                    associatedCost.StageColor            = (i % 2 == 1) ? "rgb(255, 255, 255)" : "rgba(204, 204, 204, 0.48)";
                    associatedCost.StageColorForLocation = (i % 2 == 1) ? "rgba(204, 204, 204, 0.48)" : "rgba(158, 158, 158, 0.48)";
                    List <Journey_AssociatedCosts_Details> AssociatedCostDetails = new List <Journey_AssociatedCosts_Details>();

                    for (int j = 0; j < fullJourneyTransaction.Transactions[i].TransactionsDetails.Count; j++)
                    {
                        associatedCost.TransactionId = Convert.ToInt32(fullJourneyTransaction.Transactions[i].TransactionsDetails[j].PatientJourneyTransactionId);

                        var resultAssociatedCost = dbPatientJourney.GetAssociatedCost(fullJourneyTransaction.Transactions[i].TransactionsDetails[j].PatientJourneyTransactionId);

                        if (resultAssociatedCost != null)
                        {
                            Journey_AssociatedCosts_Details Journey_AssociatedCost_Details = new Journey_AssociatedCosts_Details();
                            Journey_AssociatedCost_Details.AssociatedCostId = resultAssociatedCost.Patient_Journey_Transactions_AssociatedCosts_Id;
                            Journey_AssociatedCost_Details.Description      = resultAssociatedCost.Description;

                            AssociatedCostDetails.Add(Journey_AssociatedCost_Details);
                        }
                        else
                        {
                            Journey_AssociatedCosts_Details Journey_AssociatedCost_Details = new Journey_AssociatedCosts_Details();
                            AssociatedCostDetails.Add(Journey_AssociatedCost_Details);
                        }

                        associatedCost.AssociatedCostDetails = AssociatedCostDetails;
                    }
                    fullJourneyTransaction.AssociatedCosts.Add(associatedCost);
                }
                #endregion
            }

            FullJourneyTransaction fullTransaction = new FullJourneyTransaction();
            fullTransaction.Transactions          = fullJourneyTransaction.Transactions;
            fullTransaction.ClinicalInterventions = fullJourneyTransaction.ClinicalInterventions;
            fullTransaction.DesiredOutcomes       = fullJourneyTransaction.DesiredOutcomes;
            fullTransaction.AssociatedCosts       = fullJourneyTransaction.AssociatedCosts;
            return(fullTransaction);
        }