public List<SearchGridViewModel> GetGridData(vw_SearchData SearchObj)
        {
            List<SearchGridViewModel> GridList_ = new List<SearchGridViewModel>();


            List<SearchResult> GridList = SearchServiceObj.Search(SearchObj);
            string SessionDate;
            foreach (SearchResult o in GridList)
            {
                if (o.LastSessionDate == null || o.LastSessionDate.Year == 1)
                {
                    SessionDate = "";
                }
                else
                {
                    SessionDate = o.LastSessionDate.ToShortDateString();
                }
                GridList_.Add(new SearchGridViewModel { CrimeType = o.CrimeType, CaseID = o.CaseID, FirstNumber = o.FirstLevelNumber, SecondNumber = o.SecondLevelNumber, OverAllNumber = o.OverAllNumber.ToString(), LastSessionDate = SessionDate, LastDecesion = o.LastDecision });

            }
            //  GridList_.Add(new SearchGridViewModel { CrimeType = "Crime1", CaseID = 1, FirstNumber ="2", SecondNumber = "3", OverAllNumber = "4", LastSessionDate = "30/12/2017", LastDecesion = "jj" });


            return GridList_;
        }
        public List <SearchResult> Search(vw_SearchData SearchObj)
        {
            List <SearchResult> VList = new List <SearchResult>();

            VList.Add(new SearchResult {
                FirstLevelNumber = "1", SecondLevelNumber = "2", OverAllNumber = "3", CrimeType = "1", LastSessionDate = new DateTime(2017, 3, 3), LastDecision = "abc"
            });
            VList.Add(new SearchResult {
                FirstLevelNumber = "1", SecondLevelNumber = "4", OverAllNumber = "3", CrimeType = "2", LastSessionDate = new DateTime(2017, 3, 3), LastDecision = "abc"
            });
            // VList.Add(new vw_SearchData { FirstNumber = 1, SecondNumber = 2, OverAllNumber = 3, CrimeType = 1, SessionDate = new DateTime(2017, 3, 3), JudgeType = 3 });
            return(VList);
        }
 public List <SearchResult> Search(vw_SearchData searchData)
 {
     return(SearchCaseComponent.Search(searchData));
 }
        public List <SearchResult> SearchCase(vw_SearchData searchData)
        {
            List <SearchResult> result2 = new List <SearchResult>();

            string PartyCleanName = null;

            if (!string.IsNullOrEmpty(searchData.PartyName))
            {
                PartyCleanName = Utilities.RemoveSpecialCharacters(searchData.PartyName);
                PartyCleanName = PartyCleanName.Replace(" ", string.Empty);
            }

            var result = (from MasterCase in this.DataContext.Cases_MasterCase
                          join Cases in this.DataContext.Cases_Cases on MasterCase.ID equals Cases.MasterCaseID
                          join OvelallNumber in this.DataContext.Configurations_OverallNumbers on MasterCase.OverallID equals OvelallNumber.ID
                          join Courts in this.DataContext.Configurations_Courts on Cases.CourtID equals Courts.ID
                          join PoliceStation in this.DataContext.Configurations_PoliceStations on MasterCase.PoliceStationID equals PoliceStation.ID
                          join FirstLevelProsecution in this.DataContext.Configurations_Prosecutions on PoliceStation.ProsecutionID equals FirstLevelProsecution.ID
                          join SecondLevelProsecution in this.DataContext.Configurations_Prosecutions on MasterCase.ProsecutionID equals SecondLevelProsecution.ID
                          join CT in this.DataContext.Cases_CrimeTypes on MasterCase.CrimeType equals CT.ID
                          where
                          ((MasterCase.IsComplete && Cases.IsDeleted != true) &&
                           ((Courts.ID == searchData.CourtID && searchData.CourtID.HasValue) || !searchData.CourtID.HasValue)

                           && ((MasterCase.FirstLevelNumber.Contains(searchData.FirstLevelNumber.ToString())) || string.IsNullOrEmpty(searchData.FirstLevelNumber.ToString())) &&
                           ((MasterCase.SecondLevelNumber.Contains(searchData.SecondLevelNumber.ToString())) || string.IsNullOrEmpty(searchData.SecondLevelNumber.ToString())) &&
                           (((OvelallNumber.InclosiveSierial == searchData.OverAllNumber && searchData.OverAllNumber.HasValue)) || !searchData.OverAllNumber.HasValue)

                           && ((MasterCase.FirstLevelYear == searchData.FirstLevelYear.ToString() && searchData.FirstLevelYear.HasValue) || string.IsNullOrEmpty(searchData.FirstLevelYear.ToString())) &&
                           ((MasterCase.SecondLevelYear == searchData.SecondLevelYear.ToString() && searchData.SecondLevelYear.HasValue) || string.IsNullOrEmpty(searchData.SecondLevelYear.ToString())) &&
                           ((OvelallNumber.Year == searchData.OverAllNumberYear && searchData.OverAllNumberYear.HasValue) || !searchData.OverAllNumberYear.HasValue)

                           && (((PoliceStation.ProsecutionID == searchData.FirstLevelProsecutionID && searchData.FirstLevelProsecutionID.HasValue)) || !searchData.FirstLevelProsecutionID.HasValue) &&
                           ((MasterCase.ProsecutionID == searchData.SecondLevelProsecutionID && searchData.SecondLevelProsecutionID.HasValue) || !searchData.SecondLevelProsecutionID.HasValue) &&
                           ((MasterCase.PoliceStationID == searchData.PoliceStationID && searchData.PoliceStationID.HasValue) || !searchData.PoliceStationID.HasValue) &&
                           ((OvelallNumber.ProsecutionID == searchData.OverAllNumberProsecution && searchData.OverAllNumberProsecution.HasValue) || !searchData.OverAllNumberProsecution.HasValue)

                           && ((CT.ID == searchData.CrimeType && searchData.CrimeType.HasValue) || !searchData.CrimeType.HasValue)

                           //   && ((Cases.CourtConfigurations_Circuits.ID == searchData.CircuitID && searchData.CircuitID.HasValue) || !searchData.CircuitID.HasValue)

                           && ((MasterCase.CrimeType == searchData.CrimeType && searchData.CrimeType.HasValue) || !searchData.CrimeType.HasValue)

                           && ((Cases.CaseStatusID == searchData.JudgeType && searchData.JudgeType.HasValue) || !searchData.JudgeType.HasValue)
                           //&&
                           //(((Cases.Cases_CaseDefendants.Where(defendant => defendant.Configurations_Persons.CleanFullName == PartyCleanName).Any()) || string.IsNullOrEmpty(PartyCleanName))
                           //|| ((Cases.Cases_CaseVictims.Where(victim => victim.Configurations_Persons.CleanFullName == PartyCleanName).Any()) || string.IsNullOrEmpty(PartyCleanName)))
                          )

                          select new //SearchResult
            {
                CaseID = Cases.ID,
                FirstLevelNumber = MasterCase.FirstLevelYear + "-" + MasterCase.FirstLevelNumber + "-" + FirstLevelProsecution.Name,
                SecondLevelNumber = MasterCase.SecondLevelYear + "-" + MasterCase.SecondLevelNumber + "-" + SecondLevelProsecution.Name,
                OverAllNumber = OvelallNumber.Year + "-" + OvelallNumber.InclosiveSierial + "-" + SecondLevelProsecution.Name,
                CrimeType = CT.Name,
                MasterCase = MasterCase.ID,
            }).ToList();

            //var result1 = (from r in result
            //               join sessions in DataContext.Cases_CaseSessions on r.CaseID equals sessions.CaseID
            //               join sessiondecisions in DataContext.Cases_SessionDecision on sessions.ID equals sessiondecisions.CaseSessionID
            //               join rolls in DataContext.CourtConfigurations_CircuitRolls on sessions.RollID equals rolls.ID

            //               select new //SearchResult
            //               {
            //                   CaseID = r.CaseID,
            //                   FirstLevelNumber = r.FirstLevelNumber,
            //                   SecondLevelNumber = r.SecondLevelNumber,
            //                   OverAllNumber = r.OverAllNumber,
            //                   CrimeType = r.CrimeType,
            //                   MasterCase = r.MasterCase,
            //               //    LastSessionDate = rolls.SessionDate,
            //             //      LastDecision = sessiondecisions.DecisionText,

            //               }).ToList();

            //var result3 = (from r in result
            //               join sessions in DataContext.Cases_CaseSessions on r.CaseID equals sessions.CaseID
            //               // join sessiondecisions in DataContext.Cases_SessionDecision on sessions.ID equals sessiondecisions.CaseSessionID
            //               join rolls in DataContext.CourtConfigurations_CircuitRolls on sessions.RollID equals rolls.ID

            //               select new //SearchResult
            //               {
            //                   CaseID = r.CaseID,
            //                   FirstLevelNumber = r.FirstLevelNumber,
            //                   SecondLevelNumber = r.SecondLevelNumber,
            //                   OverAllNumber = r.OverAllNumber,
            //                   CrimeType = r.CrimeType,
            //                   MasterCase = r.MasterCase,
            //               //    LastSessionDate = rolls.SessionDate,
            //                 //  LastDecision = "",


            //               }).ToList();

            //if (result1.Count() != 0)
            // {
            //         for (int i = result1.Count; i < result.Count(); i++)
            //         {
            //         result1.Add(result[i]);
            //         }
            //     result = result1;
            // }
            // else if (result3.Count() != 0)
            // {

            //     for (int i = result3.Count; i < result.Count(); i++)
            //     {
            //         result3.Add(result[i]);
            //     }
            //     result = result3;
            // }

            if (searchData.JudgeDate != null)
            {
                result = (from r in result
                          join sessions in DataContext.Cases_CaseSessions on r.CaseID equals sessions.CaseID
                          join sessiondecisions in DataContext.Cases_SessionDecision on sessions.ID equals sessiondecisions.CaseSessionID
                          join rolls in DataContext.CourtConfigurations_CircuitRolls on sessions.RollID equals rolls.ID
                          where ((rolls.SessionDate == searchData.JudgeDate && searchData.JudgeDate.HasValue) || !searchData.JudgeDate.HasValue)
                          select new //SearchResult
                {
                    CaseID = r.CaseID,
                    FirstLevelNumber = r.FirstLevelNumber,
                    SecondLevelNumber = r.SecondLevelNumber,
                    OverAllNumber = r.OverAllNumber,
                    CrimeType = r.CrimeType,
                    MasterCase = r.MasterCase,
                    // LastSessionDate = rolls.SessionDate,
                    // LastDecision = sessiondecisions.DecisionText,
                }).Distinct().ToList();
            }
            ////// party type filter ////////
            if (searchData.PartyType == (int)PartyTypes.Defendant && !string.IsNullOrEmpty(PartyCleanName))
            {
                result = (from r in result
                          join defendant in DataContext.Cases_CaseDefendants on r.CaseID equals defendant.CaseID
                          join persons in DataContext.Configurations_Persons on defendant.PersonID equals persons.ID
                          where (persons.CleanFullName.Contains(PartyCleanName))
                          select new //SearchResult
                {
                    CaseID = r.CaseID,
                    FirstLevelNumber = r.FirstLevelNumber,
                    SecondLevelNumber = r.SecondLevelNumber,
                    OverAllNumber = r.OverAllNumber,
                    CrimeType = r.CrimeType,
                    MasterCase = r.MasterCase,
                    // LastSessionDate = r.LastSessionDate,
                    // LastDecision = r.LastDecision,
                }).Distinct().ToList();
            }
            else if (searchData.PartyType == (int)PartyTypes.Victim && !string.IsNullOrEmpty(PartyCleanName))
            {
                result = (from r in result
                          join victim in DataContext.Cases_CaseVictims on r.CaseID equals victim.CaseID
                          join persons in DataContext.Configurations_Persons on victim.PersonID equals persons.ID
                          where (persons.CleanFullName.Contains(PartyCleanName))
                          select new //SearchResult
                {
                    CaseID = r.CaseID,
                    FirstLevelNumber = r.FirstLevelNumber,
                    SecondLevelNumber = r.SecondLevelNumber,
                    OverAllNumber = r.OverAllNumber,
                    CrimeType = r.CrimeType,
                    MasterCase = r.MasterCase
                    ,
                    //   LastSessionDate = r.LastSessionDate,
                    //   LastDecision = r.LastDecision,
                }).Distinct().ToList();
            }
            else if (searchData.PartyType == (int)PartyTypes.VictimAndDefendant && !string.IsNullOrEmpty(PartyCleanName))
            {
                result = (from r in result
                          join victim in DataContext.Cases_CaseVictims on r.CaseID equals victim.CaseID
                          join defendant in DataContext.Cases_CaseDefendants on r.CaseID equals defendant.CaseID
                          join victimperson in DataContext.Configurations_Persons on victim.PersonID equals victimperson.ID
                          join defendantperson in DataContext.Configurations_Persons on defendant.PersonID equals defendantperson.ID
                          where (victimperson.CleanFullName == PartyCleanName && defendantperson.CleanFullName == PartyCleanName || string.IsNullOrEmpty(PartyCleanName))
                          select new //SearchResult
                {
                    CaseID = r.CaseID,
                    FirstLevelNumber = r.FirstLevelNumber,
                    SecondLevelNumber = r.SecondLevelNumber,
                    OverAllNumber = r.OverAllNumber,
                    CrimeType = r.CrimeType,
                    MasterCase = r.MasterCase,
                    //  LastSessionDate = r.LastSessionDate,
                    //  LastDecision = r.LastDecision,
                }).Distinct().ToList();
            }
            else if (!string.IsNullOrEmpty(PartyCleanName))
            {
                result = (from r in result
                          join victim in DataContext.Cases_CaseVictims on r.CaseID equals victim.CaseID
                          join defendant in DataContext.Cases_CaseDefendants on r.CaseID equals defendant.CaseID
                          join victimperson in DataContext.Configurations_Persons on victim.PersonID equals victimperson.ID
                          join defendantperson in DataContext.Configurations_Persons on defendant.PersonID equals defendantperson.ID
                          where (victimperson.CleanFullName.Contains(PartyCleanName) || defendantperson.CleanFullName.Contains(PartyCleanName) || string.IsNullOrEmpty(PartyCleanName))
                          select new //SearchResult
                {
                    CaseID = r.CaseID,
                    FirstLevelNumber = r.FirstLevelNumber,
                    SecondLevelNumber = r.SecondLevelNumber,
                    OverAllNumber = r.OverAllNumber,
                    CrimeType = r.CrimeType,
                    MasterCase = r.MasterCase,
                    //    LastSessionDate = r.LastSessionDate,
                    //   LastDecision = r.LastDecision,
                }).Distinct().ToList();
            }

            ////// obtainments filter ////////

            if (searchData.HasObtainment == ObtainmentStatus.HasObtainment)
            {
                result = (from r in result
                          join master in DataContext.Cases_MasterCase on r.MasterCase equals master.ID
                          where (master.HasObtainments)
                          select new //SearchResult
                {
                    CaseID = r.CaseID,
                    FirstLevelNumber = r.FirstLevelNumber,
                    SecondLevelNumber = r.SecondLevelNumber,
                    OverAllNumber = r.OverAllNumber,
                    CrimeType = r.CrimeType,
                    MasterCase = master.ID,
                    //  LastSessionDate = r.LastSessionDate,
                    //  LastDecision = r.LastDecision,
                }).Distinct().ToList();
            }
            else if (searchData.HasObtainment == ObtainmentStatus.NotHasObtainment)
            {
                result = (from r in result
                          join master in DataContext.Cases_MasterCase on r.MasterCase equals master.ID
                          where !(master.HasObtainments)
                          select new //SearchResult
                {
                    CaseID = r.CaseID,
                    FirstLevelNumber = r.FirstLevelNumber,
                    SecondLevelNumber = r.SecondLevelNumber,
                    OverAllNumber = r.OverAllNumber,
                    CrimeType = r.CrimeType,
                    MasterCase = master.ID,
                    // LastSessionDate = r.LastSessionDate,
                    // LastDecision = r.LastDecision,
                }).Distinct().ToList();
            }

            ////// session dates type filter ////////
            if (result != null || result.Count > 0)
            {
                switch (searchData.SessionDateType)
                {
                case SessionSearchMode.All:
                    if (searchData.SessionDate != null)
                    {
                        result2 = (from r in result
                                   join sessions in DataContext.Cases_CaseSessions on r.CaseID equals sessions.CaseID
                                   //join sessiondecisions in DataContext.Cases_SessionDecision on sessions.ID equals sessiondecisions.CaseSessionID
                                   join rolls in DataContext.CourtConfigurations_CircuitRolls on sessions.RollID equals rolls.ID
                                   where (
                                       ((rolls.SessionDate == searchData.SessionDate && searchData.SessionDate.HasValue) || !searchData.SessionDate.HasValue) ||
                                       ((rolls.CircuitID == searchData.CircuitID && searchData.CircuitID.HasValue) || !searchData.CircuitID.HasValue)
                                       )
                                   select new SearchResult
                        {
                            CaseID = r.CaseID,
                            FirstLevelNumber = r.FirstLevelNumber,
                            SecondLevelNumber = r.SecondLevelNumber,
                            OverAllNumber = r.OverAllNumber,
                            CrimeType = r.CrimeType,
                            MasterCase = r.MasterCase,
                            LastSessionDate = rolls.SessionDate,
                            LastDecision = ""                //sessiondecisions.DecisionText
                        }).Distinct().ToList();
                    }
                    else if (searchData.CircuitID.HasValue)
                    {
                        result2 = (from r in result
                                   join sessions in DataContext.Cases_CaseSessions on r.CaseID equals sessions.CaseID
                                   //join sessiondecisions in DataContext.Cases_SessionDecision on sessions.ID equals sessiondecisions.CaseSessionID
                                   join rolls in DataContext.CourtConfigurations_CircuitRolls on sessions.RollID equals rolls.ID
                                   where ((rolls.CircuitID == searchData.CircuitID && searchData.CircuitID.HasValue) || !searchData.CircuitID.HasValue)

                                   select new SearchResult
                        {
                            CaseID = r.CaseID,
                            FirstLevelNumber = r.FirstLevelNumber,
                            SecondLevelNumber = r.SecondLevelNumber,
                            OverAllNumber = r.OverAllNumber,
                            CrimeType = r.CrimeType,
                            MasterCase = r.MasterCase,
                            LastSessionDate = rolls.SessionDate,
                            LastDecision = ""                //sessiondecisions.DecisionText
                        }).Distinct().ToList();
                    }
                    else
                    {
                        result2 = result.Select(r => new SearchResult
                        {
                            CaseID            = r.CaseID,
                            FirstLevelNumber  = r.FirstLevelNumber,
                            SecondLevelNumber = r.SecondLevelNumber,
                            OverAllNumber     = r.OverAllNumber,
                            CrimeType         = r.CrimeType
                        }).Distinct().ToList();
                    }
                    return(result2);

                case SessionSearchMode.NotReservedSession:

                    result2 = (from res in result
                               where !(from r in result
                                       join sessions in DataContext.Cases_CaseSessions on r.CaseID equals sessions.CaseID
                                       join rolls in DataContext.CourtConfigurations_CircuitRolls on sessions.RollID equals rolls.ID
                                       select r.CaseID).ToList().Contains(res.CaseID)
                               select new SearchResult
                    {
                        CaseID = res.CaseID,
                        FirstLevelNumber = res.FirstLevelNumber,
                        SecondLevelNumber = res.SecondLevelNumber,
                        OverAllNumber = res.OverAllNumber,
                        CrimeType = res.CrimeType
                    }).Distinct().ToList();

                    return(result2);

                case SessionSearchMode.LastSessionDate:

                    SearchResult element = (from r in result
                                            join sessions in DataContext.Cases_CaseSessions on r.CaseID equals sessions.CaseID
                                            //join sessiondecisions in DataContext.Cases_SessionDecision on sessions.ID equals sessiondecisions.CaseSessionID
                                            join rolls in DataContext.CourtConfigurations_CircuitRolls on sessions.RollID equals rolls.ID
                                            select new SearchResult
                    {
                        CaseID = r.CaseID,
                        FirstLevelNumber = r.FirstLevelNumber,
                        SecondLevelNumber = r.SecondLevelNumber,
                        OverAllNumber = r.OverAllNumber,
                        CrimeType = r.CrimeType,
                        LastSessionDate = rolls.SessionDate,
                        LastDecision = ""                            //sessiondecisions.DecisionText
                    }).OrderByDescending(x => x.LastSessionDate).FirstOrDefault();
                    result2.Add(element);
                    return(result2);

                case SessionSearchMode.NextSessionDate:
                    result2 = (from r in result
                               join sessions in DataContext.Cases_CaseSessions on r.CaseID equals sessions.CaseID
                               join rolls in DataContext.CourtConfigurations_CircuitRolls on sessions.RollID equals rolls.ID
                               where rolls.SessionDate > DateTime.Now
                               select new SearchResult
                    {
                        CaseID = r.CaseID,
                        FirstLevelNumber = r.FirstLevelNumber,
                        SecondLevelNumber = r.SecondLevelNumber,
                        OverAllNumber = r.OverAllNumber,
                        CrimeType = r.CrimeType,
                        LastSessionDate = rolls.SessionDate
                    }).Distinct().ToList();

                    return(result2);

                default:
                    break;
                }
                return(result2);
            }
            else
            {
                return(null);
            }
        }
Example #5
0
 public List <SearchResult> Search(vw_SearchData searchData)
 {
     return(SearchCaseRepository.SearchCase(searchData));
 }
        public ActionResult SearchGrid(int CourtID, int? FirstYear, int? FirstNumber, int? FirstLevelProsecutionID, int? SecondYear, int?
       SecondNumber, int? SecondLevelProsecutionID, int? PartyType, string PartyName, int? JudgeType, string
       JudgeDate, int? CircuitID, int? CrimeType, int? OverAllNumber, int?
       OverAllNumberYear, int? OverAllNumberProsecution, string SessionDate, SessionSearchMode? SessionDateType, int? PoliceStationID, ObtainmentStatus? HasObtainment)
        {
            if (CurrentUser != null)
            {
                ViewData["SessionEnded"] = false;

                //if (this.CurrentUser.CourtID != null)
                //{ CourtID = (int)this.CurrentUser.CourtID; }

                vw_SearchData SearchDataObject = new vw_SearchData();
                List<SearchGridViewModel> GridList = new List<SearchGridViewModel>();
                SearchDataObject.CircuitID = CircuitID;
                SearchDataObject.CourtID = CourtID;// (int)this.CurrentUser.CourtID;  // ToDo: take court value from user session

                if (JudgeType == null)
                { SearchDataObject.JudgeType = JudgeType; }
                else
                { SearchDataObject.JudgeType = (int)JudgeType; }

                if (SessionDate == null || SessionDate == "")
                { SearchDataObject.SessionDate = null; }
                else
                { SearchDataObject.SessionDate = Convert.ToDateTime(SessionDate); }

                if (JudgeDate == null || JudgeDate == "")
                { SearchDataObject.JudgeDate = null; }
                else
                { SearchDataObject.JudgeDate = Convert.ToDateTime(JudgeDate); }

                SearchDataObject.CrimeType = CrimeType;

                if (SessionDateType == null)
                { SearchDataObject.SessionDateType = 0; }
                else
                { SearchDataObject.SessionDateType = SessionDateType; }

                //  SearchDataObject.SessionDateType = SessionDateType;
                SearchDataObject.FirstLevelNumber = FirstNumber;
                SearchDataObject.FirstLevelYear = FirstYear;
                SearchDataObject.HasObtainment = HasObtainment;
                SearchDataObject.PoliceStationID = PoliceStationID;
                SearchDataObject.SecondLevelProsecutionID = SecondLevelProsecutionID;
                SearchDataObject.SecondLevelNumber = SecondNumber;
                SearchDataObject.SecondLevelYear = SecondYear;
                SearchDataObject.FirstLevelProsecutionID = FirstLevelProsecutionID;
                SearchDataObject.OverAllNumber = OverAllNumber;
                SearchDataObject.OverAllNumberYear = OverAllNumberYear;
                SearchDataObject.OverAllNumberProsecution = OverAllNumberProsecution;
                SearchDataObject.PartyName = PartyName;
                SearchDataObject.PartyType = PartyType;




                GridList = GetGridData(SearchDataObject);
                if (GridList != null)
                { ViewData["Count"] = GridList.Count; }
                else
                { ViewData["Count"] = 0; }

                ViewData["UserID"] = CurrentUser.UserTypeID;

                if (CurrentUser.UserTypeID == (int)SystemUserTypes.ElementaryCourtAdministrator)
                {
                    ViewData["showDelete"] = true;
                }
                else
                { ViewData["showDelete"] = false; }

                if (CurrentUser.UserTypeID == (int)SystemUserTypes.schedualEmployee || CurrentUser.UserTypeID == (int)SystemUserTypes.ElementaryCourtAdministrator)
                {
                    ViewData["showEdit"] = true;
                }
                else
                {
                    ViewData["showEdit"] = false;
                }

                return PartialView("SearchGrid", GridList);

            }
            else
            {
                ViewData["SessionEnded"] = true;
                return PartialView();
            }
        }