예제 #1
0
        private List <TeklifDetayAlimDetaylarViewModel> getGonderimlerim_EczaneGrupdetay(List <TeklifDetayAlimDetaylarViewModel>
                                                                                         teklifDetayAlimDetaylarViewModel, string page, string teklifDurumId, string alimDurumId)
        {
            var user              = _userService.GetByUserName(User.Identity.Name);
            var userId            = _userService.GetByUserName(User.Identity.Name).Id;
            var eczaneGrupIdlerim = _eczaneGrupService.GetListByUser(user).Select(s => s.EczaneId).ToList();
            var grupIdler         = _grupService.GetListByUser(user).Select(s => s.Id);
            var bulundugumGruplardakiEczaneGrupIdler = _eczaneGrupService.GetList().Where(w => grupIdler.Contains(w.GrupId))
                                                       .Select(s => s.Id).ToList();

            var verdigimTeklifIdler = _teklifService.GetDetaylar(w => eczaneGrupIdlerim.Contains(w.TeklifiVerenEczaneGrupId))
                                      .Select(s => s.Id).ToList();

            var verdigimTeklifler = new List <TeklifDetay>();

            if (teklifDurumId != null && teklifDurumId != "")
            {
                verdigimTeklifler = _teklifService.GetDetaylar(w => eczaneGrupIdlerim.Contains(w.TeklifiVerenEczaneGrupId))
                                    .Where(w => w.TeklifDurumId == Convert.ToInt32(teklifDurumId))
                                    .OrderByDescending(o => o.BaslangicTarihi).ToList();
            }
            else
            {
                verdigimTeklifler = _teklifService.GetDetaylar(w => eczaneGrupIdlerim.Contains(w.TeklifiVerenEczaneGrupId))
                                    .OrderByDescending(o => o.BaslangicTarihi).ToList();
            }

            var alimDetaylar = _alimService.GetDetaylar();

            if (alimDurumId != null && alimDurumId != "")
            {
                alimDetaylar = _alimService.GetDetaylar(w => verdigimTeklifIdler.Contains(w.TeklifId))
                               .Where(w => w.AlimDurumId == Convert.ToInt32(alimDurumId)).ToList();
            }
            else
            {
                alimDetaylar = _alimService.GetDetaylar(w => verdigimTeklifIdler.Contains(w.TeklifId)).ToList();
            }
            var eczaneGrupDetaylar = _eczaneGrupService.GetDetaylar(w => bulundugumGruplardakiEczaneGrupIdler.Contains(w.Id))
                                     .Distinct().ToList();

            if (page == "" || page == null)
            {
                page = "1";
            }

            var pager = new Pager(verdigimTeklifler.Count(), Convert.ToInt32(page));

            //verdigimTeklifler = verdigimTeklifler.Skip((pager.CurrentPage - 1) * pager.PageSize).Take(pager.PageSize).ToList();
            foreach (var item in verdigimTeklifler)
            {
                var alimDetaylars = alimDetaylar.Where(w => w.TeklifId == item.Id).ToList();
                foreach (var item2 in alimDetaylars)
                {
                    if (item.Id == item2.TeklifId)
                    {
                        if (!teklifDetayAlimDetaylarViewModel.Any(s => s.TeklifDetay.IlacId == item2.IlacId))
                        {//distinct olması için
                            teklifDetayAlimDetaylarViewModel.Add(new TeklifDetayAlimDetaylarViewModel
                            {
                                AlimDetaylar = alimDetaylars,
                                TeklifDetay  = item,
                                Pager        = pager
                            });
                        }
                    }
                }
            }
            var AlimDurumlar = _alimDurumService.GetList();//.Where(w => w.AliciTarafiMi != true);

            ViewBag.AlimDurumIdFilter = new SelectList(AlimDurumlar, "Id", "Adi", alimDurumId);
            var TeklifDurumlar = _teklifDurumService.GetList();

            ViewBag.TeklifDurumIdFilter = new SelectList(TeklifDurumlar, "Id", "Adi", teklifDurumId);
            return(teklifDetayAlimDetaylarViewModel);
        }
예제 #2
0
        private List <AlimDetayAlimDetaylarViewModel> getAlimlarim(List <AlimDetayAlimDetaylarViewModel> AlimDetayAlimDetaylarViewModel,
                                                                   string page, string teklifDurumId, string alimDurumId)
        {
            var user              = _userService.GetByUserName(User.Identity.Name);
            var userId            = _userService.GetByUserName(User.Identity.Name).Id;
            var eczaneler         = _eczaneService.GetListByUser(user);
            var eczaneIdlerim     = _eczaneUserService.GetListByUserId(userId).Select(s => s.EczaneId).ToList();
            var eczaneGrupIdlerim = _eczaneGrupService.GetListByUser(user).Select(s => s.EczaneId);
            var gruplar           = _grupService.GetListByUser(user);
            var eczaneGruplar     = _eczaneGrupService.GetListByUser(user);
            var eczanegrupIdler   = eczaneGruplar.Select(s => s.Id).ToList();
            var eczaneIdler       = eczaneler.Select(s => s.Id).ToList();


            var digerAlimDetaylar = _alimService.GetDetaylar(w => !eczaneGrupIdlerim.Contains(w.EczaneGrupId));

            var alimDetaylar = new List <AlimDetay>();

            if (alimDurumId != null && alimDurumId != "")
            {
                if (teklifDurumId != null && teklifDurumId != "")
                {
                    alimDetaylar = _alimService.GetDetaylar(w => eczaneGrupIdlerim.Contains(w.EczaneGrupId))
                                   .Where(w => w.AlimDurumId == Convert.ToInt32(alimDurumId) &&
                                          w.TeklifDurumId == Convert.ToInt32(teklifDurumId))
                                   .OrderByDescending(o => o.AlimTarihi).ToList();
                }
                else
                {
                    alimDetaylar = _alimService.GetDetaylar(w => eczaneGrupIdlerim.Contains(w.EczaneGrupId))
                                   .Where(w => w.AlimDurumId == Convert.ToInt32(alimDurumId))
                                   .OrderByDescending(o => o.AlimTarihi).ToList();
                }
            }
            else
            {
                if (teklifDurumId != null && teklifDurumId != "")
                {
                    alimDetaylar = _alimService.GetDetaylar(w => eczaneGrupIdlerim.Contains(w.EczaneGrupId))
                                   .Where(w => w.TeklifDurumId == Convert.ToInt32(teklifDurumId))
                                   .OrderByDescending(o => o.AlimTarihi).ToList();
                }
                else
                {
                    alimDetaylar = _alimService.GetDetaylar(w => eczaneGrupIdlerim.Contains(w.EczaneGrupId))
                                   .OrderByDescending(o => o.AlimTarihi).ToList();
                }
            }

            if (page == "" || page == null)
            {
                page = "1";
            }
            var AlimDurumlar = _alimDurumService.GetList();//.Where(w => w.AliciTarafiMi != true);

            ViewBag.AlimDurumIdFilter = new SelectList(AlimDurumlar, "Id", "Adi", alimDurumId);
            var TeklifDurumlar = _teklifDurumService.GetList();

            ViewBag.TeklifDurumIdFilter = new SelectList(TeklifDurumlar, "Id", "Adi", teklifDurumId);

            var pager = new Pager(alimDetaylar.Count(), Convert.ToInt32(page));

            //alimDetaylar = alimDetaylar.Skip((pager.CurrentPage - 1) * pager.PageSize).Take(pager.PageSize).ToList();
            foreach (var item in alimDetaylar)
            {
                var alimDetaylars = digerAlimDetaylar.Where(w => w.TeklifId == item.TeklifId).ToList();

                AlimDetayAlimDetaylarViewModel.Add(new AlimDetayAlimDetaylarViewModel
                {
                    AlimDetay    = item,
                    AlimDetaylar = alimDetaylars,
                    Pager        = pager
                });
            }
            return(AlimDetayAlimDetaylarViewModel);
        }
예제 #3
0
        private List <AlimGroupByTeklifIdAlimDetaylarViewModel> GetAlimDetayViewModel_GroupByTeklifId(List <AlimGroupByTeklifIdAlimDetaylarViewModel> alimGroupByTeklifIdAlimDetaylarViewModel,
                                                                                                      string page, string teklifDurumId, string alimDurumId)
        {
            var alimDurumlar = _alimDurumService.GetList();

            ViewBag.alimTurId = new SelectList(alimDurumlar, "Id", "Adi");
            // var temp = TempData["EczaneGrupId"];

            var user              = _userService.GetByUserName(User.Identity.Name);
            var gruplar           = _grupService.GetListByUser(user).ToList();
            var eczaneGruplar     = _eczaneGrupService.GetDetayListByUser(user).ToList();
            var eczaneIdler       = _eczaneGrupService.GetDetayListByUser(user).Select(s => s.EczaneId).ToList();
            var eczaneGrupIdlerim = _eczaneGrupService.GetListByUser(user).Select(s => s.EczaneId);
            var eczaneler         = _eczaneService.GetList().Where(w => eczaneIdler.Contains(w.Id)).ToList();
            //kendi yaptığım alımlar:
            // eczaneGruplar = _eczaneGrupService.GetMyDetayListByUser(user);
            //var eczaneler = _eczaneService.GetListByUser(user);
            var eczaneGruplarim = _eczaneGrupService.GetListByUser(user).Select(s => s.Id);
            //var teklifler = _teklifService.GetListByUser(user);

            var teklifler = _teklifService.GetDetaylar().ToList();

            var alimlar = new List <AlimDetay>();

            if (teklifDurumId != null && teklifDurumId != "")
            {
                if (alimDurumId != null && alimDurumId != "")
                {
                    alimlar = _alimService.GetMyListByEczaneGruplar(eczaneGruplar)
                              .Where(w => w.TeklifDurumId == Convert.ToInt32(teklifDurumId) &&
                                     w.AlimDurumId == Convert.ToInt32(alimDurumId))
                              .ToList();
                }
                else
                {
                    alimlar = _alimService.GetMyListByEczaneGruplar(eczaneGruplar)
                              .Where(w => w.TeklifDurumId == Convert.ToInt32(teklifDurumId))
                              .ToList();
                }
            }
            else
            {
                if (alimDurumId != null && alimDurumId != "")
                {
                    alimlar = _alimService.GetMyListByEczaneGruplar(eczaneGruplar)
                              .Where(w => w.AlimDurumId == Convert.ToInt32(alimDurumId))
                              .ToList();
                }
                else
                {
                    alimlar = _alimService.GetMyListByEczaneGruplar(eczaneGruplar)
                              .ToList();
                }
            }

            var alimlarGroupByTeklifId = alimlar.GroupBy(g => g.TeklifId) //.Select(s => s.Sum(d => d.Miktar));
                                         .Select(g => new AlimGroupByTeklifId
            {
                //EczaneGln = _eczaneService.GetById(alimlar.Where(w => w.TeklifId == g.Key).Select(s => s.EczaneId).FirstOrDefault()).EczaneGln,
                AlimDurumAdi = alimlar.Where(w => w.TeklifId == g.Key).Select(s => s.AlimDurumAdi).FirstOrDefault(),
                AlimDurumId  = alimlar.Where(w => w.TeklifId == g.Key).Select(s => s.AlimDurumId).FirstOrDefault(),
                TeklifId     = g.Key,
                // AlimTarihi = alimlar.Where(w => w.TeklifId == g.Key).Select(s => s.AlimTarihi).FirstOrDefault(),
                ToplamAlimMiktari     = g.Sum(x => x.Miktar),
                AliciEczaneAdi        = alimlar.Where(w => w.TeklifId == g.Key).Select(s => s.EczaneAdi).FirstOrDefault(),
                DepoFiyat             = teklifler.Where(w => w.Id == g.Key).Select(s => s.DepoFiyat).FirstOrDefault(),
                NetFiyat              = teklifler.Where(w => w.Id == g.Key).Select(s => s.NetFiyat).FirstOrDefault(),
                IlacAdi               = teklifler.Where(w => w.Id == g.Key).Select(s => s.IlacAdi).FirstOrDefault(),
                MalFazlasi            = teklifler.Where(w => w.Id == g.Key).Select(s => s.MalFazlasi).FirstOrDefault(),
                GrupAdi               = teklifler.Where(w => w.Id == g.Key).Select(s => s.TeklifiVerenEczaneGrupAdi).FirstOrDefault(),
                Minimum               = teklifler.Where(w => w.Id == g.Key).Select(s => s.Minimum).FirstOrDefault(),
                Maksimum              = teklifler.Where(w => w.Id == g.Key).Select(s => s.Maksimum).FirstOrDefault(),
                BitisTarihi           = teklifler.Where(w => w.Id == g.Key).Select(s => s.BitisTarihi).FirstOrDefault(),
                IlacMiad              = teklifler.Where(w => w.Id == g.Key).Select(s => s.IlacMiad).FirstOrDefault(),
                YayinlamaTurAdi       = teklifler.Where(w => w.Id == g.Key).Select(s => s.YayinlamaTurAdi).FirstOrDefault(),
                TeklifiVerenEczaneAdi = teklifler.Where(w => w.Id == g.Key).Select(s => s.TeklifiVerenEczaneAdi).FirstOrDefault(),
                HedeflenenAlim        = teklifler.Where(w => w.Id == g.Key).Select(s => s.HedeflenenAlim).FirstOrDefault(),
                Kalan          = teklifler.Where(w => w.Id == g.Key).Select(s => s.HedeflenenAlim).FirstOrDefault() - g.Sum(x => x.Miktar),
                ToplamAlimlar  = alimlar.Where(w => w.TeklifId == g.Key && w.EczaneGrupId == eczaneGruplarim.FirstOrDefault()).Sum(s => s.Miktar),
                ToplamFiyat    = g.Sum(x => x.Miktar) * teklifler.Where(w => w.Id == g.Key).Select(s => s.NetFiyat).FirstOrDefault(),
                TeklifDurumAdi = teklifler.Where(w => w.Id == g.Key).Select(s => s.TeklifDurumAdi).FirstOrDefault(),
                Id             = teklifler.Where(w => w.Id == g.Key).Select(s => s.Id).FirstOrDefault(),
            }).ToList();

            var alimlarGroupby = alimlar.GroupBy(g => g.TeklifId).ToList();
            //o eczanenin alım yaptığı teklifler:
            var alimYaptigiTeklifler = teklifler.Where(w => alimlar.Select(s => s.TeklifId).Contains(w.Id)).ToList();

            var teklifIdler = alimlar.Select(s => s.TeklifId);
            var ilacIdler   = teklifler.Where(w => teklifIdler.Contains(w.Id)).Select(s => s.IlacId);
            var ilaclar     = _ilacService.GetList().Where(w => ilacIdler.Contains(w.Id)).ToList();

            if (page == "" || page == null)
            {
                page = "1";
            }
            var pager        = new Pager(alimlarGroupByTeklifId.Count(), Convert.ToInt32(page));
            var AlimDurumlar = _alimDurumService.GetList();//.Where(w => w.AliciTarafiMi != true);

            ViewBag.AlimDurumIdFilter = new SelectList(AlimDurumlar, "Id", "Adi", alimDurumId);
            var TeklifDurumlar = _teklifDurumService.GetList();

            ViewBag.TeklifDurumIdFilter = new SelectList(TeklifDurumlar, "Id", "Adi", teklifDurumId);

            foreach (var item in alimlarGroupByTeklifId)
            {
                var alimDetaylars = alimlar.Where(w => w.TeklifId == item.TeklifId).ToList();

                alimGroupByTeklifIdAlimDetaylarViewModel.Add(new AlimGroupByTeklifIdAlimDetaylarViewModel
                {
                    AlimGroupByTeklifId = item,
                    AlimDetaylar        = alimDetaylars,
                    Pager = pager
                });
            }
            return(alimGroupByTeklifIdAlimDetaylarViewModel);
        }
예제 #4
0
        private List <TeklifDetayAlimDetaylarViewModel> getTeklifler(List <TeklifDetayAlimDetaylarViewModel>
                                                                     teklifDetayAlimDetaylarViewModel, string page, string teklifDurumId, string alimDurumId)
        {
            var user            = _userService.GetByUserName(User.Identity.Name);
            var eczaneler       = _eczaneService.GetListByUser(user);
            var gruplar         = _grupService.GetListByUser(user);
            var eczaneGruplar   = _eczaneGrupService.GetListByUser(user);
            var eczanegrupIdler = eczaneGruplar.Select(s => s.Id).ToList();
            var eczaneIdler     = eczaneler.Select(s => s.Id).ToList();

            var teklifDetaylar = new List <TeklifDetay>();
            var alimDetaylar   = _alimService.GetDetaylar();

            if (alimDurumId != null && alimDurumId != "")
            {
                alimDetaylar = alimDetaylar.Where(w => w.AlimDurumId == Convert.ToInt32(alimDurumId)).ToList();
            }
            if (teklifDurumId != null && teklifDurumId != "")
            {
                teklifDetaylar = _teklifService.GetListByEczaneGrupId(eczanegrupIdler.FirstOrDefault());
                teklifDetaylar = teklifDetaylar
                                 .Where(w => !eczanegrupIdler.Contains(w.TeklifiVerenEczaneGrupId) &&
                                        w.TeklifDurumId == Convert.ToInt32(teklifDurumId) &&
                                        (w.BitisTarihi > System.DateTime.Now || w.BitisTarihi == null) &&
                                        w.BaslangicTarihi < System.DateTime.Now)
                                 .OrderByDescending(o => o.BaslangicTarihi).ToList();
            }
            else
            {
                teklifDetaylar = _teklifService.GetListByEczaneGrupId(eczanegrupIdler.FirstOrDefault());
                teklifDetaylar = teklifDetaylar
                                 .Where(w => !eczanegrupIdler.Contains(w.TeklifiVerenEczaneGrupId) && //&& w.TeklifDurumId == 1
                                        (w.BitisTarihi > System.DateTime.Now || w.BitisTarihi == null) &&
                                        w.BaslangicTarihi < System.DateTime.Now)
                                 .OrderByDescending(o => o.BaslangicTarihi).ToList();
            }
            if (page == "" || page == null)
            {
                page = "1";
            }
            var pager = new Pager(teklifDetaylar.Count(), Convert.ToInt32(page));
            //teklifDetaylar = teklifDetaylar.Skip((pager.CurrentPage - 1) * pager.PageSize).Take(pager.PageSize).ToList();
            var AlimDurumlar = _alimDurumService.GetList();

            ViewBag.AlimDurumIdFilter = new SelectList(AlimDurumlar, "Id", "Adi", alimDurumId);
            var TeklifDurumlar = _teklifDurumService.GetList();

            ViewBag.TeklifDurumIdFilter = new SelectList(TeklifDurumlar, "Id", "Adi", teklifDurumId);
            foreach (var item in teklifDetaylar)
            {
                var alimDetaylars = alimDetaylar.Where(w => w.TeklifId == item.Id).ToList();

                teklifDetayAlimDetaylarViewModel.Add(new TeklifDetayAlimDetaylarViewModel
                {
                    TeklifDetay  = item,
                    AlimDetaylar = alimDetaylars,
                    Pager        = pager
                });
            }
            return(teklifDetayAlimDetaylarViewModel);
        }