Esempio n. 1
0
        public ActionResult Create([Bind(Include = "Id,Adi,AcilisTarihi,KapanisTarihi,Enlem,Boylam,Adres,TelefonNo,MailAdresi,WebSitesi,NobetUstGrupId")] Eczane eczane)
        {
            if (ModelState.IsValid)
            {
                _eczaneService.Insert(eczane);
                TempData["EklenenEczane"] = eczane.Adi;

                var eczaneler = new int[1]
                {
                    eczane.Id
                };

                var eczaneNobetGrupCoklu = new EczaneNobetGrupCoklu
                {
                    EczaneId        = eczaneler,
                    BaslangicTarihi = eczane.AcilisTarihi,
                };

                TempData["EklenecekEczane"] = eczaneNobetGrupCoklu;

                return(RedirectToAction("Create", "EczaneNobetGrup"));
                //return RedirectToAction("Index");
            }
            var ustGrupSession  = _nobetUstGrupSessionService.GetSession("nobetUstGrup");
            var nobetUstGruplar = _nobetUstGrupService.GetDetaylar(ustGrupSession.Id);

            ViewBag.NobetUstGrupId = new SelectList(nobetUstGruplar, "Id", "Adi", eczane.NobetUstGrupId);

            return(View(eczane));
        }
Esempio n. 2
0
        private void NobetGrubunaEczaneleriEkle(EczaneNobetGrupCoklu eczaneNobetGrupCoklu, List <EczaneNobetGrup> eczaneNobetGruplar)
        {
            var eklenenNobetGrupGorevTip = _nobetGrupGorevTipService.GetDetayById(eczaneNobetGrupCoklu.NobetGrupGorevTipId);

            TempData["EklenenEczane"] = $"{eklenenNobetGrupGorevTip.NobetGrupGorevTipAdi} nöbet grubuna {eczaneNobetGrupCoklu.EczaneId.Count()} adet eczane başarılı bir şekilde eklenmiştir.";

            _eczaneNobetGrupService.CokluEkle(eczaneNobetGruplar);

            var gruptakiEczaneler       = _eczaneNobetGrupService.GetDetaylarByNobetGrupGorevTipler(eczaneNobetGrupCoklu.NobetGrupGorevTipId);
            var eczaneIdList            = eczaneNobetGruplar.Select(s => s.EczaneId).ToList();
            var eczaneNobetGrupDetaylar = _eczaneNobetGrupService.GetDetaylar(eczaneIdList, eczaneNobetGrupCoklu.NobetGrupGorevTipId);

            if (eklenenNobetGrupGorevTip.NobetUstGrupId == 2)
            {     //antalya'da planlanan nöbetleri yazmak için
                if (eczaneNobetGrupDetaylar.Count > 0)
                { //grupta eczaneler var. grup yeni değil. tekli olarak eklenen eczaneler için planlanan nöbetler yeniden yazılacak.
                    #region planlanan nöbetler - sıralı nöbet yazma (gün grubu bazında)

                    var baslangicTarihi = eczaneNobetGrupDetaylar.Min(s => s.BaslangicTarihi);

                    var sonTarih = baslangicTarihi.AddYears(1);

                    var planlananNobetlerinYazilacagiSonTarih = new DateTime(sonTarih.Year, 12, 31);

                    var planlananNobetlerinYazilacagiNobetGrubu = _nobetGrupGorevTipService.GetDetayById(eczaneNobetGrupCoklu.NobetGrupGorevTipId);

                    _takvimService.SiraliNobetYazGrupBazindaOncekiNobetGrubaGore(planlananNobetlerinYazilacagiNobetGrubu, gruptakiEczaneler, baslangicTarihi, planlananNobetlerinYazilacagiSonTarih);

                    #endregion
                }
                else
                {//gruba ilk kez eczane ekleniyor
                }
            }

            var nobetGrupGorevTip = _nobetGrupGorevTipService.GetDetayById(eczaneNobetGrupCoklu.NobetGrupGorevTipId);
            var nobetUstGrupId    = nobetGrupGorevTip.NobetUstGrupId;

            if (nobetUstGrupId == 1 || //alanya
                nobetUstGrupId == 3 ||//mersin
                nobetUstGrupId == 4 ||//giresun
                nobetUstGrupId == 5   //osmaniye
                )
            {
                var eklenenIkiliEczaneler = _ayniGunTutulanNobetService.IkiliEczaneleriOlustur(eczaneNobetGrupDetaylar);
            }
        }
Esempio n. 3
0
        public ActionResult Create([Bind(Include = "Id,EczaneId,NobetGrupGorevTipId,BaslangicTarihi,BitisTarihi,Aciklama,EnErkenTarihteNobetYazilsinMi")] EczaneNobetGrupCoklu eczaneNobetGrupCoklu)
        {
            var eczaneNobetGruplar = new List <EczaneNobetGrup>();

            foreach (var eczaneId in eczaneNobetGrupCoklu.EczaneId)
            {
                eczaneNobetGruplar.Add(new EczaneNobetGrup
                {
                    EczaneId            = eczaneId,
                    NobetGrupGorevTipId = eczaneNobetGrupCoklu.NobetGrupGorevTipId,
                    BaslangicTarihi     = eczaneNobetGrupCoklu.BaslangicTarihi,
                    BitisTarihi         = eczaneNobetGrupCoklu.BitisTarihi,
                    Aciklama            = eczaneNobetGrupCoklu.Aciklama
                });
            }

            var eklenecekEczaneSayisi = eczaneNobetGruplar.Count;

            if (ModelState.IsValid && eklenecekEczaneSayisi > 0)
            {
                NobetGrubunaEczaneleriEkle(eczaneNobetGrupCoklu, eczaneNobetGruplar);
                //else if (nobetUstGrupId == 1)
                //{

                //}

                ViewBag.EklenenEczaneSayisi = eklenecekEczaneSayisi;
                ViewBag.EklenenNobetGrupAdi = _nobetGrupGorevTipService.GetDetayById(eczaneNobetGrupCoklu.NobetGrupGorevTipId).NobetGrupAdi;
                return(RedirectToAction("Index"));
            }

            var nobetUstGrup = _nobetUstGrupSessionService.GetSession("nobetUstGrup");

            //var user = _userService.GetByUserName(User.Identity.Name);
            //var nobetUstGrup = _nobetUstGrupService.GetListByUser(user).FirstOrDefault();
            var nobetGruplar = _nobetGrupGorevTipService.GetDetaylar(nobetUstGrup.Id);
            var eczaneler    = _eczaneService.GetList(nobetUstGrup.Id).OrderBy(s => s.Adi).ToList();

            ViewBag.EczaneId            = new SelectList(eczaneler, "Id", "Adi", eczaneNobetGrupCoklu.EczaneId);
            ViewBag.NobetGrupGorevTipId = new SelectList(nobetGruplar, "Id", "NobetGrupGorevTipAdi", eczaneNobetGrupCoklu.NobetGrupGorevTipId);
            return(View()); //eczaneNobetGrup
        }
        public ActionResult Create()
        {
            //var user = _userService.GetByUserName(User.Identity.Name);
            //var nobetUstGrup = _nobetUstGrupService.GetListByUser(user).FirstOrDefault();

            var nobetUstGrup = _nobetUstGrupSessionService.GetSession("nobetUstGrup");

            //var eczaneNobetGruplar = _eczaneNobetGrupService.GetDetaylar(nobetUstGrup.Id)
            //    //.Where(w => w.BitisTarihi == null || w.nobet)
            //    .Select(s => s.EczaneId).Distinct().ToList();

            var eczaneler = _eczaneService.GetDetaylar(nobetUstGrup.Id)
                            .Where(s => s.KapanisTarihi == null
                                   //&& !eczaneNobetGruplar.Contains(s.Id)
                                   )
                            .OrderBy(s => s.EczaneAdi).ToList();

            var nobetGrupGorevTipler = _nobetGrupGorevTipService.GetDetaylar(nobetUstGrup.Id);

            var eczaneNobetGrupCoklu = new EczaneNobetGrupCoklu();

            if (TempData["EklenecekEczane"] != null)
            {
                eczaneNobetGrupCoklu = (EczaneNobetGrupCoklu)TempData["EklenecekEczane"];

                ViewBag.EczaneId = new SelectList(eczaneler, "Id", "EczaneAdi", eczaneNobetGrupCoklu.EczaneId.FirstOrDefault());
            }
            else
            {
                ViewBag.EczaneId = new SelectList(eczaneler, "Id", "EczaneAdi");
            }

            ViewBag.NobetGrupGorevTipId = new SelectList(nobetGrupGorevTipler, "Id", "NobetGrupGorevTipAdi");

            //var baslamaTarihi = new EczaneNobetGrup { BaslangicTarihi = DateTime.Now, Aciklama = "..... eczane bu gruba yeni katıldı." };
            return(View(eczaneNobetGrupCoklu));
        }
        public ActionResult Create([Bind(Include = "Id,EczaneId,NobetGrupGorevTipId,BaslangicTarihi,BitisTarihi,Aciklama,EnErkenTarihteNobetYazilsinMi")] EczaneNobetGrupCoklu eczaneNobetGrupCoklu)
        {
            var eczaneNobetGruplar = new List <EczaneNobetGrup>();

            foreach (var eczaneId in eczaneNobetGrupCoklu.EczaneId)
            {
                eczaneNobetGruplar.Add(new EczaneNobetGrup
                {
                    EczaneId            = eczaneId,
                    NobetGrupGorevTipId = eczaneNobetGrupCoklu.NobetGrupGorevTipId,
                    BaslangicTarihi     = eczaneNobetGrupCoklu.BaslangicTarihi,
                    BitisTarihi         = eczaneNobetGrupCoklu.BitisTarihi,
                    Aciklama            = eczaneNobetGrupCoklu.Aciklama
                });
            }

            var eklenecekEczaneSayisi = eczaneNobetGruplar.Count;

            if (ModelState.IsValid && eklenecekEczaneSayisi > 0)
            {
                var eklenenNobetGrupGorevTip = _nobetGrupGorevTipService.GetDetayById(eczaneNobetGrupCoklu.NobetGrupGorevTipId);

                TempData["EklenenEczane"] = $"{eklenenNobetGrupGorevTip.NobetGrupGorevTipAdi} nöbet grubuna {eczaneNobetGrupCoklu.EczaneId.Count()} adet eczane başarılı bir şekilde eklenmiştir.";

                _eczaneNobetGrupService.CokluEkle(eczaneNobetGruplar);

                var gruptakiEczaneler       = _eczaneNobetGrupService.GetDetaylarByNobetGrupGorevTipler(eczaneNobetGrupCoklu.NobetGrupGorevTipId);
                var eczaneIdList            = eczaneNobetGruplar.Select(s => s.EczaneId).ToList();
                var eczaneNobetGrupDetaylar = _eczaneNobetGrupService.GetDetaylar(eczaneIdList, eczaneNobetGrupCoklu.NobetGrupGorevTipId);

                if (eklenenNobetGrupGorevTip.NobetUstGrupId == 2)
                {     //antalya'da planlanan nöbetleri yazmak için
                    if (eczaneNobetGrupDetaylar.Count > 0)
                    { //grupta eczaneler var. grup yeni değil. tekli olarak eklenen eczaneler için planlanan nöbetler yeniden yazılacak.
                        #region planlanan nöbetler - sıralı nöbet yazma (gün grubu bazında)

                        var baslangicTarihi = eczaneNobetGrupDetaylar.Min(s => s.BaslangicTarihi);

                        var sonTarih = baslangicTarihi.AddYears(1);

                        var planlananNobetlerinYazilacagiSonTarih = new DateTime(sonTarih.Year, 12, 31);

                        var planlananNobetlerinYazilacagiNobetGrubu = _nobetGrupGorevTipService.GetDetayById(eczaneNobetGrupCoklu.NobetGrupGorevTipId);

                        _takvimService.SiraliNobetYazGrupBazindaOncekiNobetGrubaGore(planlananNobetlerinYazilacagiNobetGrubu, gruptakiEczaneler, baslangicTarihi, planlananNobetlerinYazilacagiSonTarih);

                        #endregion
                    }
                    else
                    {//gruba ilk kez eczane ekleniyor
                    }
                }

                var nobetGrupGorevTip = _nobetGrupGorevTipService.GetDetayById(eczaneNobetGrupCoklu.NobetGrupGorevTipId);
                var nobetUstGrupId    = nobetGrupGorevTip.NobetUstGrupId;

                if (nobetUstGrupId == 1 || //alanya
                    nobetUstGrupId == 3 ||//mersin
                    nobetUstGrupId == 4 ||//giresun
                    nobetUstGrupId == 5   //osmaniye
                    )
                {
                    var eklenenIkiliEczaneler = _ayniGunTutulanNobetService.IkiliEczaneleriOlustur(eczaneNobetGrupDetaylar);
                }
                //else if (nobetUstGrupId == 1)
                //{

                //}

                ViewBag.EklenenEczaneSayisi = eklenecekEczaneSayisi;
                ViewBag.EklenenNobetGrupAdi = _nobetGrupGorevTipService.GetDetayById(eczaneNobetGrupCoklu.NobetGrupGorevTipId).NobetGrupAdi;
                return(RedirectToAction("Index"));
            }

            var nobetUstGrup = _nobetUstGrupSessionService.GetSession("nobetUstGrup");

            //var user = _userService.GetByUserName(User.Identity.Name);
            //var nobetUstGrup = _nobetUstGrupService.GetListByUser(user).FirstOrDefault();
            var nobetGruplar = _nobetGrupGorevTipService.GetDetaylar(nobetUstGrup.Id);
            var eczaneler    = _eczaneService.GetList(nobetUstGrup.Id).OrderBy(s => s.Adi).ToList();

            ViewBag.EczaneId            = new SelectList(eczaneler, "Id", "Adi", eczaneNobetGrupCoklu.EczaneId);
            ViewBag.NobetGrupGorevTipId = new SelectList(nobetGruplar, "Id", "NobetGrupGorevTipAdi", eczaneNobetGrupCoklu.NobetGrupGorevTipId);
            return(View()); //eczaneNobetGrup
        }