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); }
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); }