コード例 #1
0
        public CaseSummaryVM GetCaseDetails(int CaseID)
        {
            StringBuilder sqlQuery = new StringBuilder(@"SELECT [C].[ID] AS CaseID,[C].[ProgramID], [PR].[Name] AS Program, ");

            sqlQuery.Append(" [P].[Name] AS SubProgram, [R].Name AS Region, [JK].Name AS Jamatkhaana, [C].CaseNumber AS ReferenceCase, ");
            sqlQuery.Append(" [C].[EnrollDate] AS EnrolmentDate, [IM].[Name] AS IntakeMethod, [RE].[Name] AS ReferralSource ,");
            sqlQuery.Append(" [C].[ReferralDate] AS ReferralDate, [RT].Name AS RiskLevel, [C].[PresentingProblem] AS PresentingProblem, ");
            sqlQuery.Append(" [C].[Address] AS Address, [C].[City] AS City, [C].[PostalCode] AS PostalCode,");
            sqlQuery.Append(" ((CASE WHEN Education = 1 THEN 'Education' ELSE '' END) + ");
            sqlQuery.Append(" (CASE WHEN IncomeLivelihood = 1 THEN ',IncomeLivelihood' ELSE '' END) + ");
            sqlQuery.Append(" (CASE WHEN Assets = 1 THEN ',Assets' ELSE '' END) +  ");
            sqlQuery.Append(" (CASE WHEN Housing = 1 THEN ',Housing' ELSE '' END) + ");
            sqlQuery.Append(" (CASE WHEN SocialSupport = 1 THEN ',SocialSupport' ELSE '' END) +  ");
            sqlQuery.Append(" (CASE WHEN Dignity = 1 THEN ',Dignity' ELSE '' END) + ");
            sqlQuery.Append(" (CASE WHEN Health = 1 THEN ',Health' ELSE '' END)) AS AreaOfNeed ");
            sqlQuery.Append(" FROM [dbo].[Case] [C] ");
            sqlQuery.Append(" INNER JOIN [dbo].[Program] [PR] ON [PR].[ID]=[C].[ProgramID]");
            sqlQuery.Append(" INNER JOIN [dbo].[Region] [R] ON [R].[ID]=[C].[RegionID]");
            sqlQuery.Append(" INNER JOIN [dbo].[SubProgram] [P] ON [P].[ID]=[C].[SubProgramID]");
            //sqlQuery.Append(" INNER JOIN [dbo].[CaseStatus] [CS] ON [CS].[ID]=[C].[CaseStatusID]");
            sqlQuery.Append(" INNER JOIN [dbo].[Jamatkhana] [JK] ON [JK].[ID]=[C].[JamatkhanaID]");
            sqlQuery.Append(" INNER JOIN [dbo].[IntakeMethod] [IM] ON [IM].[ID]=[C].[IntakeMethodID]");
            sqlQuery.Append(" INNER JOIN [dbo].[ReferralSource] [RE] ON [RE].[ID]=[C].[ReferralSourceID]");
            sqlQuery.Append(" INNER JOIN [dbo].[RiskType] [RT] ON [RT].[ID]=[C].[RiskTypeID]");

            sqlQuery.Append(" WHERE [C].[IsArchived] = 0 AND C.Id = " + CaseID + " ");

            CaseSummaryVM casesummary = context.Database.SqlQuery <CaseSummaryVM>(sqlQuery.ToString()).AsEnumerable().FirstOrDefault();

            casesummary.DoesHouseHoldIncomeExists   = context.CaseHouseholdIncome.Any(cus => cus.CaseID == CaseID);
            casesummary.DoesInitialAssessmentExists = context.CaseInitialAssessment.Any(cus => cus.CaseID == CaseID);
            casesummary.DoesFamilyMembersExists     = context.CaseMember.Any(cus => cus.CaseID == CaseID);

            return(casesummary);
        }
コード例 #2
0
        public ActionResult Index([DataSourceRequest(Prefix = "Grid")] DataSourceRequest dsRequest, Case searchCase, int caseID)
        {
            var  varCase   = caseRepository.Find(caseID);
            bool hasAccess = workerroleactionpermissionnewRepository.HasPermission(caseID, CurrentLoggedInWorkerRoleIDs, CurrentLoggedInWorker.ID, varCase.ProgramID, varCase.RegionID, varCase.SubProgramID, varCase.JamatkhanaID, Constants.Areas.CaseManagement, Constants.Controllers.CaseMember, Constants.Actions.Index, true);

            if (!hasAccess)
            {
                WebHelper.CurrentSession.Content.ErrorMessage = "You are not eligible to do this action";
                return(RedirectToAction(Constants.Actions.AccessDenied, Constants.Controllers.Home, new { Area = String.Empty }));
            }

            CaseSummaryVM caseSummary = _casesummaryrepository.GetCaseDetails(caseID);

            caseSummary.caseMember               = new CaseMember();
            caseSummary.caseMember.CaseID        = caseID;
            caseSummary.CurrentHouseholdIncomeID = 0;

            caseSummary.CaseInitialHouseholdIncomeVM = caseHouseholdIncomeRepository.GetInitialIncomeForCaseSummary(caseID);
            caseSummary.CaseCurrentHouseholdIncomeVM = caseHouseholdIncomeRepository.GetCurrentIncomeForCaseSummary(caseID);

            if (caseSummary.CaseCurrentHouseholdIncomeVM == null && caseSummary.CaseInitialHouseholdIncomeVM != null)
            {
                caseSummary.CaseCurrentHouseholdIncomeVM = caseSummary.CaseInitialHouseholdIncomeVM;
            }

            if (caseSummary.CaseCurrentHouseholdIncomeVM != null)
            {
                caseSummary.CurrentHouseholdIncomeID = caseSummary.CaseCurrentHouseholdIncomeVM.ID;
            }

            caseSummary.AssesmentIndicators   = caseInitialAssessmentRepository.GetAllIndicators();
            caseSummary.CaseInitialAssessment = caseInitialAssessmentRepository.GetCaseAssessment(caseID);

            string status = caseStatusHistoryRepository.CaseStatusByCaseID(caseID);

            caseSummary.CaseStatus = status;

            caseSummary.caseGoalNewVM = new CaseGoalNewVM();
            int TotalGoal = caseGoalNewRepository.CaseGoalNewCountByCaseID(caseID);

            caseSummary.caseGoalNewVM.TotalGoal = TotalGoal;

            int GoalCompleted = caseGoalNewRepository.CaseGoalNewCompleteByCaseID(caseID);

            caseSummary.caseGoalNewVM.GoalCompleted = GoalCompleted;

            return(View(caseSummary));
        }