public ActionResult EditSessions(string[] Cases, int CrimeID = 0)
        {
            if (CurrentUser != null)
            {
                CaseDataViewModels         caseDataViewModels         = new CaseDataViewModels();
                CaseConfigurationViewModel caseConfigurationViewModel = new CaseConfigurationViewModel();
                CaseConfigurationData      caseConfigurationData      = new CaseConfigurationData();
                caseDataViewModels.caseConfigurationData = caseConfigurationData;
                //caseDataViewModels.caseConfigurationData.Circuits = caseSessionsService.Circuits(CurrentUser.CourtID.Value);
                caseDataViewModels.caseConfigurationData.Circuits          = circuitService.GetCircuitsByCrime(CrimeID, CurrentUser.CourtID.Value);
                caseDataViewModels.caseConfigurationData.caseConfiguration = caseConfigurationViewModel;
                List <int> CasesIDs = new List <int>();
                if (Cases != null)
                {
                    foreach (var _case in Cases)
                    {
                        CasesIDs.Add(Convert.ToInt32(_case));
                    }
                }
                caseDataViewModels.caseConfigurationData.caseConfiguration.Cases = CasesIDs;

                Session["Cases"]         = Cases;
                ViewData["SessionEnded"] = false;
                return(CPartialView(caseDataViewModels));
            }

            else
            {
                ViewData["SessionEnded"] = true;
                return(CPartialView());
            }
        }
 private vw_CaseConfiguration GetConfigurationData(CaseConfigurationViewModel caseConfigurationData)
 {
     return(new vw_CaseConfiguration()
     {
         CasesIDs = caseConfigurationData.Cases,
         CircuitID = caseConfigurationData.CircuitID,
         SessionID = caseConfigurationData.SessionID,
         SessionDate = caseConfigurationData.SessionDate
     });
 }
        public ActionResult EditSessions(CaseDataViewModels model)
        {
            if (CurrentUser != null)
            {
                try
                {
                    string[]   cases    = (string[])Session["Cases"];
                    List <int> CasesIDs = new List <int>();
                    if (cases != null)
                    {
                        foreach (var _case in cases)
                        {
                            CasesIDs.Add(Convert.ToInt32(_case));
                        }
                        model.caseConfigurationData.caseConfiguration.Cases = CasesIDs;
                    }
                    if (ModelState.IsValid)
                    {
                        List <vw_KeyValueLongID> Sessions = caseSessionsService.GetCircuitRolls(model.caseConfigurationData.caseConfiguration.CircuitID).Select(x =>
                                                                                                                                                                new vw_KeyValueLongID()
                        {
                            ID   = x.ID,
                            Name = x.Date.ToShortDateString()
                        }).ToList();

                        CaseConfigurationViewModel caseConfigurationViewModel = new CaseConfigurationViewModel();

                        caseConfigurationViewModel.CircuitID   = model.caseConfigurationData.caseConfiguration.CircuitID;
                        caseConfigurationViewModel.SessionID   = model.caseConfigurationData.caseConfiguration.SessionID;
                        caseConfigurationViewModel.SessionDate = Sessions.Where(x => x.ID == model.caseConfigurationData.caseConfiguration.SessionID).Select(z => Convert.ToDateTime(z.Name)).SingleOrDefault();
                        caseConfigurationViewModel.Cases       = CasesIDs;
                        int?rollid = RollService.GetRollID(caseConfigurationViewModel.CircuitID, caseConfigurationViewModel.SessionDate);

                        vw_CaseConfiguration caseConfiguration = GetConfigurationData(caseConfigurationViewModel);
                        caseConfiguration.SessionID = rollid;
                        if (caseSessionsService.EditCaseConfiguration(caseConfiguration))
                        {
                            return(JavaScript("$(document).trigger('Session:Saved')"));
                            //PartialView(FillLists());
                        }


                        else
                        {
                            return(CPartialView().WithSuccessMessages(JIC.Base.Resources.Messages.OperationCompletedSuccessfully));
                        }
                    }
                    model.caseConfigurationData.Circuits = circuitService.GetCircuitsByCourtID(CurrentUser.CourtID.Value).ToList();
                    if (Session["Sessions"] != null)
                    {
                        model.caseConfigurationData.Sessions = (List <vw_KeyValueLongID>)Session["Sessions"];
                    }
                    ViewData["SessionEnded"] = false;
                    return(CPartialView(model));
                }
                catch (Exception ex)
                {
                    return(ErrorPage(ex));
                }
            }

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