public ActionResult PivotSonuclar(int nobetGrup = 0, int yilBaslangic = 2018, int yilBitis = 2020, int ay = 0)
        {
            //var user = _userService.GetByUserName(User.Identity.Name);
            //var nobetUstGruplar = _nobetUstGrupService.GetListByUser(user);
            //var nobetUstGrup = nobetUstGruplar.FirstOrDefault();
            var nobetUstGrup   = _nobetUstGrupSessionService.GetSession("nobetUstGrup");
            var nobetUstGrupId = nobetUstGrup.Id;

            var nobetGruplar = _nobetGrupService.GetDetaylar(nobetUstGrupId)
                               .Select(s => new MyDrop {
                Id = s.Id, Value = s.Adi
            });

            var sonuclarEski = _eczaneNobetSonucService.GetSonuclar(nobetUstGrupId)
                               .Where(w => w.Tarih >= nobetUstGrup.BaslangicTarihi);

            var sonuclarAktif = _eczaneNobetSonucAktifService.GetSonuclar2(nobetUstGrupId);
            var sonuclar      = sonuclarEski.Union(sonuclarAktif)
                                .Where(w => w.NobetGrupId == nobetGrup || nobetGrup == 0).ToList();

            var tumSonuclar = sonuclar
                              .Where(w => (w.Yil >= yilBaslangic && w.Yil <= yilBitis)).ToList();

            var yillar = sonuclar
                         .Select(s => s.Yil).Distinct().OrderBy(o => o).ToList();

            ViewBag.yilBaslangic = yilBaslangic;
            ViewBag.yilBitis     = yilBitis;
            ViewBag.nobetGrup    = nobetGrup;


            //ViewBag.NobetGruptakiEczaneSayisi = _eczaneNobetGrupService.NobetGruplarDDL(nobetUstGrupId).Where(w => w.NobetGrupId == nobetGrup).Select(s => s.EczaneSayisi).SingleOrDefault();
            var beklenenGunFarklari = new List <NobetGrupBeklenenGunFarki>();

            //ViewBag.NobetGruptakiEczaneSayisi
            var nobetGrupEczaneSayilari = _eczaneNobetGrupService.NobetGruplarDDL(nobetUstGrupId)
                                          .Where(w => w.NobetGrupId == nobetGrup).Select(s => new { s.NobetGrupAdi, s.EczaneSayisi });

            foreach (var item in nobetGrupEczaneSayilari)
            {
                beklenenGunFarklari.Add(new NobetGrupBeklenenGunFarki
                {
                    NobetGrupAdi = item.NobetGrupAdi,
                    Haftaİci     = $"{Math.Round(item.EczaneSayisi * 1.2 * 0.766, 0)}-{(Math.Ceiling(item.EczaneSayisi * 1.34))}",
                    Pazar        = $"{(int)Math.Ceiling(((double)item.EczaneSayisi / 5) - 1) * 30}-{((int)Math.Ceiling((double)item.EczaneSayisi / 4) + 1) * 30}",
                    EczaneSayisi = item.EczaneSayisi
                });
            }
            ;

            TempData["NobetGrupId"] = nobetGrup;
            TempData["Yil"]         = yilBitis;
            TempData["Ay"]          = ay;

            ViewBag.YilBaslangiclar = new SelectList(yillar, null, null, yilBaslangic);
            ViewBag.YilBitisler     = new SelectList(yillar, null, null, yilBitis);
            ViewBag.NobetGruplar    = new SelectList(nobetGruplar, "Id", "Value", nobetGrup);

            ViewBag.ToplamUzunluk = tumSonuclar.Count;

            //var pivotSekiller2 = _eczaneNobetOrtakService.GetPivotSekillerGunFarki();
            var gunFarklari = _eczaneNobetOrtakService.EczaneNobetIstatistikGunFarkiHesapla(sonuclar)
                              .Where(w => w.Nobet2Yil == yilBitis && w.Nobet2Ay == ay).ToList();

            var gunFarkiFrekanslar = _eczaneNobetOrtakService.EczaneNobetIstatistikGunFarkiFrekans(gunFarklari);

            ViewBag.ToplamUzunluk2 = gunFarklari.Count;

            var model = new EczaneNobetSonucAktifPivotSonuclarViewModel
            {
                TumSonuclar                  = tumSonuclar,
                GunFarklari                  = gunFarklari,
                GunFarklariFrekanslar        = gunFarkiFrekanslar,
                NobetGrupBeklenenGunFarklari = beklenenGunFarklari
            };

            return(View(model));
        }
        // GET: EczaneNobet/EczaneNobetSonuc  int[] nobetGrupIdList = null, int yil = 2018, int ay = 1
        public ActionResult PivotSonuclar(PivotSonuclarParams pivotSonuclarParams)
        {
            var parametreler = pivotSonuclarParams;

            if (parametreler == null)
            {
                parametreler = new PivotSonuclarParams();
            }

            //pivotSonuclarParams.NobetGrupIdList.ToArray();

            var arr = ParseStringToIntArray(pivotSonuclarParams.NobetGrupIdList);

            //var user = _userService.GetByUserName(User.Identity.Name);
            //var nobetUstGruplar = _nobetUstGrupService.GetListByUser(user);
            //var nobetUstGrup = nobetUstGruplar.FirstOrDefault();
            var nobetUstGrup   = _nobetUstGrupSessionService.GetSession("nobetUstGrup");
            var nobetUstGrupId = nobetUstGrup.Id;

            var nobetGruplar = _nobetGrupService.GetDetaylar(nobetUstGrupId)
                               .Select(s => new MyDrop {
                Id = s.Id, Value = s.Adi
            });

            var baslamaTarihi = pivotSonuclarParams.BaslangicTarihi;
            var bitisTarihi   = pivotSonuclarParams.BitisTarihi;

            var sonuclarEski = _eczaneNobetSonucService.GetSonuclar(nobetUstGrupId)
                               .Where(w => w.Tarih >= nobetUstGrup.BaslangicTarihi);

            var sonuclarAktif = _eczaneNobetSonucAktifService.GetSonuclar2(nobetUstGrupId)
                                .Where(w => w.Tarih >= baslamaTarihi && w.Tarih <= bitisTarihi).ToList();

            var tumSonuclar = sonuclarEski.Union(sonuclarAktif).ToList();

            ViewBag.nobetGrup = arr.FirstOrDefault();

            var beklenenGunFarklari = new List <NobetGrupBeklenenGunFarki>();

            //ViewBag.NobetGruptakiEczaneSayisi

            var nobetGrupEczaneSayilari = arr.Count == 0
                ? _eczaneNobetGrupService.NobetGruplarDDL(nobetUstGrupId)
                                          //.Where(w => arr.Contains(w.NobetGrupId))
                                          .Select(s => new { s.NobetGrupAdi, s.EczaneSayisi })
                : _eczaneNobetGrupService.NobetGruplarDDL(nobetUstGrupId)
                                          .Where(w => arr.Contains(w.NobetGrupId))
                                          .Select(s => new { s.NobetGrupAdi, s.EczaneSayisi });

            foreach (var item in nobetGrupEczaneSayilari)
            {
                beklenenGunFarklari.Add(new NobetGrupBeklenenGunFarki
                {
                    NobetGrupAdi = item.NobetGrupAdi,
                    Haftaİci     = $"{Math.Round(item.EczaneSayisi * 1.2 * 0.766, 0)}-{(Math.Ceiling(item.EczaneSayisi * 1.34))}",
                    Pazar        = $"{(int)Math.Ceiling(((double)item.EczaneSayisi / 5) - 1) * 30}-{((int)Math.Ceiling((double)item.EczaneSayisi / 4) + 1) * 30}",
                    EczaneSayisi = item.EczaneSayisi
                });
            }
            ;

            TempData["NobetGrupId"] = pivotSonuclarParams.NobetGrupIdList;

            //ViewBag.YilBaslangiclar = new SelectList(yillar, null, null, yilBaslangic);
            //ViewBag.YilBitisler = new SelectList(yillar, null, null, pivotSonuclarParams.Yil);
            //if (pivotSonuclarParams.NobetGrupIdList != null)
            //{
            //    ViewBag.NobetGruplar = new SelectList(nobetGruplar, "Id", "Value", pivotSonuclarParams.NobetGrupIdList.FirstOrDefault());
            //}
            //else
            //{
            //    ViewBag.NobetGruplar = new SelectList(nobetGruplar, "Id", "Value");
            //}

            ViewBag.ToplamUzunluk = tumSonuclar.Count();

            var gunFarklari = _eczaneNobetOrtakService.EczaneNobetIstatistikGunFarkiHesapla(tumSonuclar)
                              .Where(w => (w.Nobet2Tarih >= baslamaTarihi && w.Nobet2Tarih <= bitisTarihi)).ToList();

            var gunFarkiFrekanslar = _eczaneNobetOrtakService.EczaneNobetIstatistikGunFarkiFrekans(gunFarklari);

            ViewBag.ToplamUzunluk2 = gunFarklari.Count;

            //TempData["EczaneNobetSonuclar"] = sonucModel;

            var model = new EczaneNobetSonucAktifPivotSonuclarViewModel
            {
                TumSonuclar                  = tumSonuclar.Where(w => arr.Contains(w.NobetGrupId)).ToList(),
                GunFarklari                  = gunFarklari,
                GunFarklariFrekanslar        = gunFarkiFrekanslar,
                NobetGrupBeklenenGunFarklari = beklenenGunFarklari,
                EczaneNobetSonuclar          = (EczaneNobetSonucModel)TempData["EczaneNobetSonuclar"] ?? new EczaneNobetSonucModel(),
                BaslamaTarihi                = baslamaTarihi,
                BitisTarihi                  = bitisTarihi
            };

            return(View(model));
        }