Пример #1
0
        public ActionResult AcceptPCMEndPointCase(PCMSocialWorkerEndpointCasesVM update, string id)
        {
            var currentUser  = (User)Session["CurrentUser"];
            var userProvince = -1;
            var userId       = -1;

            if (currentUser != null)
            {
                userId = currentUser.User_Id;
                if (currentUser.Employees.Any())
                {
                    userProvince = currentUser.Employees.First().apl_Service_Office.apl_Local_Municipality.District.Province_Id;
                }
                if (currentUser.apl_Social_Worker.Any())
                {
                    userProvince = currentUser.apl_Social_Worker.First().apl_Service_Office.apl_Local_Municipality.District.Province_Id;
                }
            }
            // Accetp Case Allocated
            int End_Point_POD_Id = Convert.ToInt32(id);
            var _db = new SDIIS_DatabaseEntities();


            var list = new PCMSocialWorkerEndpointCasesVM();
            PCMWorkListModel model = new PCMWorkListModel();


            //Call update function..................................................................................................................

            model.UpdatePCMEndpointWorkListCase(update, End_Point_POD_Id, userId);

            return(RedirectToAction("Index", "Home", new { End_Point_POD_Id = End_Point_POD_Id }));
        }
Пример #2
0
        public ActionResult Index()
        {
            var _db = new SDIIS_DatabaseEntities();
            PCMMainPageWorklistModelVM vm    = new PCMMainPageWorklistModelVM();
            PCMWorkListModel           model = new PCMWorkListModel();

            var currentUser  = (User)Session["CurrentUser"];
            var userProvince = -1;
            var userId       = 0;

            if (currentUser != null)
            {
                userId = currentUser.User_Id;
                if (currentUser.Employees.Any())
                {
                    userProvince = currentUser.Employees.First().apl_Service_Office.apl_Local_Municipality.District.Province_Id;
                }
                if (currentUser.apl_Social_Worker.Any())
                {
                    userProvince = currentUser.apl_Social_Worker.First().apl_Service_Office.apl_Local_Municipality.District.Province_Id;
                }
            }
            #region LOAD NEW CASES FROM INTAKE

            // Check for new case from intake and Insert

            model.CheckPCMAssementExistance();

            #endregion


            //Get all the cases assigned to the loggedinuser.
            List <Intake_Assessment> intakeAssesments = _db.Intake_Assessments.Where(x => x.Case_Manager_Id == userId).ToList();

            //Get User worklist for the logged user
            List <PCMSocialWorkerWorkListVM> Worklist = model.PCMGetUserWorkList(userId);

            List <PCMCaseGridMain> PCMOldworkList = model.GetPCMWorkList();

            List <PCMSocialWorkerWorkListVM> newWorklist = model.GetPCMUserNewWorkList(userId);

            List <PCMSocialWorkerEndpointCasesVM> newAllocatedCaseslist = model.GetNewEndpointAlloctedCasesList(userId);

            // All new work list assigned to user
            vm.PCMNewCasez = newWorklist;

            vm.PCMEndPointAllocatedCasez = newAllocatedCaseslist;

            //All the cases currently assigned and working on

            vm.PCMCurrentCases = Worklist;

            //All the adoption cases completed

            vm.PCMClients_Case_List = PCMOldworkList;


            return(View(vm));
        }
Пример #3
0
        public ActionResult PCMSearch()
        {
            var currentUser  = (User)Session["CurrentUser"];
            var userProvince = -1;
            var userId       = -1;

            if (currentUser != null)
            {
                userId = currentUser.User_Id;
                if (currentUser.Employees.Any())
                {
                    userProvince = currentUser.Employees.First().apl_Service_Office.apl_Local_Municipality.District.Province_Id;
                }
                if (currentUser.apl_Social_Worker.Any())
                {
                    userProvince = currentUser.apl_Social_Worker.First().apl_Service_Office.apl_Local_Municipality.District.Province_Id;
                }
            }
            // get client list
            var caseViewModel = new PCMCaseListViewModel {
                Client_List = new List <Client>(), PCMClients_Case_List = new List <PCMCaseGridMain>()
            };
            SDIIS_DatabaseEntities db = new SDIIS_DatabaseEntities();

            if (userProvince == -1)
            {
                // Logged In User is not assigned to a province, what should happen here?
            }
            else
            {
                var intakeAssessmentModel = new IntakeAssessmentModel();
                var assessments           = intakeAssessmentModel.GetListOfPCMIntakeAssessments(userProvince, userId);
                PCMWorkListModel model    = new PCMWorkListModel();

                var clientAssessments = model.GetListOfPersonsPCM();

                var clientItems = clientAssessments.Select(x => new PCMCaseGridMain()
                {
                    PersonId        = x.Person_Id,
                    FirstName       = x.First_Name,
                    LastName        = x.Last_Name,
                    IDNumber        = x.Identification_Number,
                    AssessmentCount = x.Clients.Any() ? x.Clients.First().Intake_Assessments.Count : 0,
                    PCMNestedItems  = !x.Clients.Any() ? new List <PCMCaseGridNested>() : x.Clients.First().Intake_Assessments.Select(y => new PCMCaseGridNested()
                    {
                        PersonId       = x.Person_Id,
                        AssessmentId   = y.Intake_Assessment_Id,
                        AssessmentDate = y.Assessment_Date,
                        POName         = db.Users.Find(y.Assessed_By_Id).Last_Name
                    }).ToList()
                }).ToList();

                caseViewModel.PCMClients_Case_List.AddRange(clientItems);
            }


            return(PartialView(caseViewModel));
        }
Пример #4
0
        public ActionResult AcceptPCMCase(PCMSocialWorkerWorkListVM update, string id)
        {
            var currentUser  = (User)Session["CurrentUser"];
            var userProvince = -1;
            var userId       = -1;

            if (currentUser != null)
            {
                userId = currentUser.User_Id;
                if (currentUser.Employees.Any())
                {
                    userProvince = currentUser.Employees.First().apl_Service_Office.apl_Local_Municipality.District.Province_Id;
                }
                if (currentUser.apl_Social_Worker.Any())
                {
                    userProvince = currentUser.apl_Social_Worker.First().apl_Service_Office.apl_Local_Municipality.District.Province_Id;
                }
            }
            // Accetp Case Allocated
            int assessmentId      = Convert.ToInt32(id);
            var _db               = new SDIIS_DatabaseEntities();
            var currentCasesCount = _db.PCM_Case_Details.Count();
            var nextSeqNumber     = currentCasesCount + 1;
            var assessment        = _db.Intake_Assessments.Where(x => x.Intake_Assessment_Id == assessmentId).FirstOrDefault();

            var list = new PCMSocialWorkerWorkListVM();
            PCMWorkListModel model = new PCMWorkListModel();

            var IntAss = model.GetAssessment(assessmentId);

            //Call update function..................................................................................................................

            model.UpdatePCMWorkListCase(update, assessmentId);

            return(RedirectToAction("Index", "Home", new { assessmentId = assessmentId }));
        }
Пример #5
0
        public ActionResult PCMSearch(PCMCaseListViewModel caseViewModel)
        {
            var currentUser  = (User)Session["CurrentUser"];
            var userProvince = -1;
            var userId       = -1;

            if (currentUser != null)
            {
                userId = currentUser.User_Id;
                if (currentUser.Employees.Any())
                {
                    userProvince = currentUser.Employees.First().apl_Service_Office.apl_Local_Municipality.District.Province_Id;
                }
                if (currentUser.apl_Social_Worker.Any())
                {
                    userProvince = currentUser.apl_Social_Worker.First().apl_Service_Office.apl_Local_Municipality.District.Province_Id;
                }
            }

            caseViewModel.PCMClients_Case_List = new List <PCMCaseGridMain>();
            if (userProvince == -1)
            {
                // Logged In User is not assigned to a province, what should happen here?
            }
            else
            {
                var intakeAssessmentModel    = new IntakeAssessmentModel();
                var assessments              = intakeAssessmentModel.GetListOfPCMIntakeAssessments(userProvince, userId);
                PCMWorkListModel       model = new PCMWorkListModel();
                SDIIS_DatabaseEntities db    = new SDIIS_DatabaseEntities();


                //var clientAssessments = model.GetListOfPersonsPCM();

                var persons = model.GetListOfPersonsPCM();

                //var query = from c in clientAssessments select c;

                var query1 = from p in persons select p;

                if (!string.IsNullOrEmpty(caseViewModel.Search_First_Name))
                {
                    query1 = query1.Where(p => p.First_Name.ToLower().Contains(caseViewModel.Search_First_Name.ToLower()));
                }

                if (!string.IsNullOrEmpty(caseViewModel.Search_Last_Name))
                {
                    query1 = query1.Where(p => p.Last_Name.ToLower().Contains(caseViewModel.Search_Last_Name.ToLower()));
                }

                if (!string.IsNullOrEmpty(caseViewModel.Search_ID_Number))
                {
                    query1 = query1.Where(p => p.Identification_Number.Contains(caseViewModel.Search_ID_Number));
                }



                var filteredResults = query1.ToList();
                var clientItems     = filteredResults.Select(x => new PCMCaseGridMain()
                {
                    PersonId        = x.Person_Id,
                    FirstName       = x.First_Name,
                    LastName        = x.Last_Name,
                    IDNumber        = x.Identification_Number,
                    AssessmentCount = x.Clients.Any() ? x.Clients.First().Intake_Assessments.Count : 0,
                    PCMNestedItems  = !x.Clients.Any() ? new List <PCMCaseGridNested>() : x.Clients.First().Intake_Assessments.Select(y => new PCMCaseGridNested()
                    {
                        PersonId       = x.Person_Id,
                        AssessmentId   = y.Intake_Assessment_Id,
                        AssessmentDate = y.Assessment_Date,
                        POName         = db.Users.Find(y.Assessed_By_Id).Last_Name
                    }).ToList()
                }).ToList().Distinct();

                caseViewModel.PCMClients_Case_List.AddRange(clientItems);
            }
            return(PartialView(caseViewModel));
        }