Ejemplo n.º 1
0
        public ActionResult Create(int?id)
        {//bu metod teklif sayfasından çağırılır. teklife alım yapmak için
            Alim Alim                = new Alim();
            var  user                = _userService.GetByUserName(User.Identity.Name);
            var  alimDurumlar        = _alimDurumService.GetList();
            var  iTStransferDurumlar = _iTStransferDurumService.GetList();

            if (id == null)
            {
                return(RedirectToAction("Index", "Teklif"));
            }

            var teklifId = Convert.ToInt32(id);
            var ilacId   = _teklifService.GetById(Convert.ToInt32(teklifId)).IlacId;
            var ilacAdi  = _ilacService.GetById(ilacId).Adi;

            ViewBag.Ilac               = ilacAdi;
            ViewBag.AlimDurumId        = new SelectList(alimDurumlar, "Id", "Adi");
            ViewBag.ITStransferDurumId = new SelectList(iTStransferDurumlar, "Id", "Adi");
            ViewBag.Maksimum           = _teklifService.GetDetayById(teklifId).Maksimum;
            ViewBag.Minimum            = _teklifService.GetDetayById(teklifId).Minimum;
            //maksimum ve minimum u sağlaması yetmez, kalan miktardan da az olmalı
            var alimMiktari             = _teklifService.GetById(teklifId).AlimMiktari;
            var buTekliftenAlinanMiktar = _alimService.GetListByTeklifId(teklifId)
                                          .Sum(x => x.Miktar);
            var kalan = alimMiktari - buTekliftenAlinanMiktar;

            if (kalan < ViewBag.Maksimum)
            {
                ViewBag.Maksimum = kalan;
            }
            ViewBag.teklifId = teklifId;
            Alim.TeklifId    = teklifId;
            var teklifVerenEczaneGrupId = _teklifService.GetDetayById(teklifId).TeklifiVerenEczaneGrupId;
            var grupId        = _eczaneGrupService.GetDetayById(teklifVerenEczaneGrupId).GrupId;
            var eczaneGruplar = _eczaneGrupService.GetListByUser(user);

            Alim.EczaneGrupId = eczaneGruplar.Where(w => w.GrupId == grupId).Select(s => s.Id).FirstOrDefault();

            //try
            //{
            //    Alim.EczaneGrupId = Convert.ToInt32(Session["EczanegrupId"]);
            //    ViewBag.eczaneGrupId = Convert.ToInt32(Session["EczanegrupId"]);
            //}
            //catch
            //{
            //    return RedirectToAction("Index", "EczaneGrup");
            //}

            return(View(Alim));
        }