// GET: EczaneNobet/EczaneNobetSonucAktif/Edit/5 public ActionResult Edit(int id) { if (id == 0) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } EczaneNobetSonucAktif eczaneNobetSonucAktif = _eczaneNobetSonucAktifService.GetById(id); if (eczaneNobetSonucAktif == null) { return(HttpNotFound()); } ViewBag.EczaneNobetGrupId = new SelectList(_eczaneNobetGrupService.GetList(), "Id", "EczaneId", eczaneNobetSonucAktif.EczaneNobetGrupId); ViewBag.TakvimId = new SelectList(_takvimService.GetList(), "Id", "Tarih", eczaneNobetSonucAktif.TakvimId); return(View(eczaneNobetSonucAktif)); }
// GET: EczaneNobet/Bayram/Create public ActionResult Create() { var user = _userService.GetByUserName(User.Identity.Name); var nobetGruplar = _nobetGrupService.GetListByUser(user); var nobetGrupGorevTipler = _nobetGrupGorevTipService.GetDetaylar() .Where(w => nobetGruplar.Select(s => s.Id).Contains(w.NobetGrupId)) .Select(s => new MyDrop { Id = s.Id, Value = $"{s.NobetGrupAdi}, {s.NobetGorevTipAdi}" }); ViewBag.BayramTurId = new SelectList(_bayramTurService.GetList(), "Id", "Adi"); ViewBag.NobetGrupGorevTipId = new SelectList(nobetGrupGorevTipler, "Id", "Value"); ViewBag.NobetGunKuralId = new SelectList(_nobetGunKuralService.GetList().Where(w => w.Id > 7), "Id", "Adi"); ViewBag.TakvimId = new SelectList(_takvimService.GetList(), "Id", "Tarih"); return(View()); }
// GET: EczaneNobet/NobetGrupGorevTipTakvimOzelGun/Edit/5 public ActionResult Edit(int id) { if (id < 1) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var nobetGrupGorevTipTakvimOzelGun = _nobetGrupGorevTipTakvimOzelGunService.GetById(id); if (nobetGrupGorevTipTakvimOzelGun == null) { return(HttpNotFound()); } var nobetUstGrup = _nobetUstGrupSessionService.GetSession("nobetUstGrup"); var nobetGrupGorevTipGunKurallarTumu = _nobetGrupGorevTipGunKuralService.GetDetaylar(nobetUstGrup.Id); var nobetGrupGorevTipGunKurallar = nobetGrupGorevTipGunKurallarTumu .Where(w => w.NobetGunKuralId > 7) .Select(s => new MyDrop { Id = s.Id, Value = $"{s.NobetGrupAdi}, {s.NobetGorevTipAdi}, {s.NobetGunKuralAdi}" }); //normalde bayram olan bir günün farklı bir gün olarak gösterilebilmesi için //.Where(w => w.Id <= 7) var nobetGrunKurallar = nobetGrupGorevTipGunKurallarTumu .Select(s => new { s.NobetGunKuralId, s.NobetGunKuralAdi }) .Distinct() .OrderBy(o => o.NobetGunKuralId) .ToList(); ViewBag.NobetGrupGorevTipGunKuralId = new SelectList(nobetGrupGorevTipGunKurallar, "Id", "Value", nobetGrupGorevTipTakvimOzelGun.NobetGrupGorevTipGunKuralId); ViewBag.NobetOzelGunId = new SelectList(_nobetOzelGunService.GetList(), "Id", "Adi", nobetGrupGorevTipTakvimOzelGun.NobetOzelGunId); ViewBag.NobetGunKuralId = new SelectList(nobetGrunKurallar, "NobetGunKuralId", "NobetGunKuralAdi", nobetGrupGorevTipTakvimOzelGun.NobetGunKuralId); ViewBag.TakvimId = new SelectList(_takvimService.GetList().Select(s => new MyDrop { Id = s.Id, Value = s.Tarih.ToLongDateString() }), "Id", "Value", nobetGrupGorevTipTakvimOzelGun.TakvimId); ViewBag.NobetOzelGunKategoriId = new SelectList(_nobetOzelGunKategoriService.GetList(), "Id", "Adi", nobetGrupGorevTipTakvimOzelGun.NobetOzelGunKategoriId); return(View(nobetGrupGorevTipTakvimOzelGun)); }
// GET: EczaneNobet/NobetGrupTalep/Create public ActionResult Create() { //user //var user = _userService.GetByUserName(User.Identity.Name); //var nobetUstGruplar = _nobetUstGrupService.GetListByUser(user); //var nobetUstGrup = _nobetUstGrupService.GetListByUser(user).FirstOrDefault(); var nobetUstGrup = _nobetUstGrupSessionService.GetSession("nobetUstGrup"); var tarih = DateTime.Today; //var yil = DateTime.Now.AddMonths(1).Year; //var ay = DateTime.Now.AddMonths(1).Month; var tarihler = _takvimService.GetList() .Where(w => w.Tarih >= tarih) .Select(s => new MyDrop { Id = s.Id, Value = s.Tarih.ToLongDateString() }); ViewBag.NobetGrupGorevTipId = new SelectList(_nobetGrupGorevTipService.GetDetaylar(nobetUstGrup.Id) .Select(s => new { s.Id, Adi = $"{s.NobetGrupAdi}, {s.NobetGorevTipAdi}" }), "Id", "Adi"); ViewBag.TakvimId = new SelectList(tarihler, "Id", "Value"); return(View()); }
// GET: EczaneNobet/EczaneNobetSonucDemoe/Create public ActionResult Create() { ViewBag.EczaneNobetGrupId = new SelectList(_eczaneNobetGrupService.GetList(), "Id", "Aciklama"); ViewBag.TakvimId = new SelectList(_takvimService.GetList(), "Id", "Tarih"); return(View()); }
public ActionResult Create([Bind(Include = "Id,EczaneNobetGrupId,IstekId,BaslangicTarihi,BitisTarihi,HaftaninGunu,Aciklama,YinedeEklensinMi")] EczaneNobetIstekCoklu eczaneNobetIstekCoklu) { var nobetUstGrup = _nobetUstGrupSessionService.GetSession("nobetUstGrup"); var eczaneNobetGruplar = _eczaneNobetGrupService.GetDetaylar(eczaneNobetIstekCoklu.EczaneNobetGrupId); var nobetUstGrupId = eczaneNobetGruplar.Select(s => s.NobetUstGrupId).Distinct().SingleOrDefault(); var tarihler = _takvimService.GetList() .Select(s => new MyDrop { Id = s.Id, Value = s.Tarih.ToLongDateString() }); if (eczaneNobetIstekCoklu.HaftaninGunu == null) { eczaneNobetIstekCoklu.HaftaninGunu = new int[1] { 0 }; } var haftaninGunu = eczaneNobetIstekCoklu.HaftaninGunu; var bayramlar = _nobetGrupGorevTipTakvimOzelGunService.GetDetaylar(eczaneNobetIstekCoklu.BaslangicTarihi, eczaneNobetIstekCoklu.BitisTarihi, eczaneNobetGruplar.Select(s => s.NobetGrupId).ToList(), 1) .Where(w => eczaneNobetIstekCoklu.HaftaninGunu.Contains(w.NobetGunKuralId)).ToList(); var tarihAraligi = _takvimService.GetDetaylar(eczaneNobetIstekCoklu.BaslangicTarihi, eczaneNobetIstekCoklu.BitisTarihi); if (eczaneNobetIstekCoklu.HaftaninGunu.Count() > 0) { tarihAraligi = tarihAraligi.Where(w => eczaneNobetIstekCoklu.HaftaninGunu.Contains(w.HaftaninGunu) || bayramlar.Select(s => s.TakvimId).Contains(w.TakvimId)).ToList(); } var eczaneler = _eczaneService.GetDetaylar(nobetUstGrup.Id).Select(s => s.Id).ToList(); var baslangicTarihi = _takvimService.GetByTarih(eczaneNobetIstekCoklu.BaslangicTarihi); var bitisTarihi = _takvimService.GetByTarih(eczaneNobetIstekCoklu.BitisTarihi); ViewBag.EczaneNobetGrupId = new SelectList(_eczaneNobetGrupService.GetDetaylarByEczaneIdList(eczaneler) .Select(s => new MyDrop { Id = s.Id, Value = $"{s.EczaneAdi}, {s.NobetGrupGorevTipAdi}" }).OrderBy(s => s.Value), "Id", "Value", eczaneNobetIstekCoklu.EczaneNobetGrupId); ViewBag.IstekId = new SelectList(_istekService.GetList(), "Id", "Adi", eczaneNobetIstekCoklu.IstekId); ViewBag.HaftaninGunu = new SelectList(_takvimService.GetHaftaninGunleri(), "Id", "Value", eczaneNobetIstekCoklu.HaftaninGunu); ViewBag.SecilenHaftaninGunuSayisi = eczaneNobetIstekCoklu.HaftaninGunu.Count(); //seçilen tarih aralığı takvimde olmalıdır. if (baslangicTarihi == null || bitisTarihi == null) { var minYil = _takvimService.GetList().Min(x => x.Tarih.Year); var maxYil = _takvimService.GetList().Max(x => x.Tarih.Year); ViewBag.minYil = minYil; ViewBag.maxYil = maxYil; ViewBag.Mesaj = $"Başlangıç-Bitiş tarih aralığı enaz {minYil} ila ençok {maxYil} arasında olmalıdır..."; return(View(eczaneNobetIstekCoklu)); } //Başlangıç tarihi Bitiş tarihinden büyük olamaz. if (baslangicTarihi.Id > bitisTarihi.Id) { ViewBag.Mesaj2 = $"Başlangıç tarihi ({baslangicTarihi.Tarih}) Bitiş tarihinden ({bitisTarihi.Tarih}) büyük olamaz..."; return(View(eczaneNobetIstekCoklu)); } var eczaneNobetIstekler = new List <EczaneNobetIstek>(); foreach (var eczaneNobetGrupId in eczaneNobetIstekCoklu.EczaneNobetGrupId) { foreach (var item in tarihAraligi) { eczaneNobetIstekler.Add(new EczaneNobetIstek { IstekId = eczaneNobetIstekCoklu.IstekId, EczaneNobetGrupId = eczaneNobetGrupId, TakvimId = item.TakvimId, Aciklama = eczaneNobetIstekCoklu.Aciklama, }); } } var eklenenEczaneler = new List <EczaneNobetIstekDetay>(); if (ModelState.IsValid && eczaneNobetIstekler.Count > 0) { var istekGirilenEczaneninEsOlduguEczaneler = _eczaneGrupService.GetDetaylarEczaneninEsOlduguEczaneler(eczaneNobetGruplar.Select(s => s.Id).ToList()); var istekGirilenTarihtekiEczaneler = _eczaneNobetIstekService.GetDetaylarByNobetUstGrupId(eczaneNobetIstekCoklu.BaslangicTarihi, eczaneNobetIstekCoklu.BitisTarihi, nobetUstGrupId); var istekGirilenTarihtekiEsgrupOlduguEczaneler = _eczaneNobetIstekService.GetDetaylar(istekGirilenTarihtekiEczaneler, istekGirilenEczaneninEsOlduguEczaneler); var istekGirilenTarihtekiEsgrupOlduguEczanelerTumu = istekGirilenEczaneninEsOlduguEczaneler .Union(istekGirilenTarihtekiEsgrupOlduguEczaneler) .OrderBy(o => o.EczaneGrupTanimId) .ThenBy(o => o.EczaneAdi) .ToList(); var istekGirilenTarihtekiEsgrupOlduguEczaneSayisi = istekGirilenTarihtekiEsgrupOlduguEczanelerTumu.Count; if (istekGirilenTarihtekiEsgrupOlduguEczaneSayisi > 0) { ViewBag.IstekGirilenTarihtekiEsgrupOlduguEczaneler = istekGirilenTarihtekiEsgrupOlduguEczanelerTumu; return(View(eczaneNobetIstekCoklu)); } else { try { _eczaneNobetIstekService.CokluEkle(eczaneNobetIstekler); foreach (var item in eczaneNobetIstekler) { eklenenEczaneler.Add(new EczaneNobetIstekDetay { EczaneAdi = _eczaneNobetGrupService.GetDetayById(item.EczaneNobetGrupId).EczaneAdi, Tarih = _takvimService.GetById(item.TakvimId).Tarih }); } } catch (DbUpdateException ex) { var hata = ex.InnerException.ToString(); string[] dublicateHata = { "Cannot insert dublicate row in object", "with unique index" }; var dublicateRowHatasiMi = dublicateHata.Any(h => hata.Contains(h)); if (dublicateRowHatasiMi) { throw new Exception("<strong>Bir eczaneye aynı gün için iki istek kaydı eklenemez...</strong>"); } throw ex; } catch (Exception ex) { throw ex; } } TempData["EklenenIstekSayisi"] = eklenenEczaneler.Count; TempData["EklenenIstekler"] = eklenenEczaneler; return(View(eczaneNobetIstekCoklu)); } else { //bayram ve hafta günleri kontrol if (bayramlar.Count == 0) { if (eczaneNobetIstekCoklu.HaftaninGunu.Where(w => w == 8 && w == 9).Count() > 0) { ViewBag.MesajBayram = $"Girilen tarih aralığına uygun bayram bulunmamaktadır."; } else if (eczaneNobetIstekCoklu.HaftaninGunu.Where(w => w == 8).Count() > 0) { ViewBag.MesajBayram = $"Girilen tarih aralığına uygun dini bayram bulunmamaktadır."; } else if (eczaneNobetIstekCoklu.HaftaninGunu.Where(w => w == 9).Count() > 0) { ViewBag.MesajBayram = $"Girilen tarih aralığına uygun milli bayram bulunmamaktadır."; } else if (eczaneNobetIstekCoklu.HaftaninGunu.Where(w => w <= 7).Count() > 0) { ViewBag.MesajBayram = $"Girilen tarih aralığına uygun hafta günü bulunmamaktadır."; } } else { if (eczaneNobetIstekCoklu.HaftaninGunu.Count() == 1) { ViewBag.MesajBayram = $"Seçilen hafta gününe uygun tarih aralığı bulunmamaktadır."; } else { ViewBag.MesajBayram = $"Seçilen hafta günlerine uygun tarih aralığı bulunmamaktadır."; } } } return(View(eczaneNobetIstekCoklu)); }
// GET: EczaneNobet/Takvim public ActionResult Index() { var model = _takvimService.GetList(); return(View(model)); }
public ActionResult Create([Bind(Include = "Id,EczaneNobetGrupId,MazeretId,BaslangicTarihi,BitisTarihi,HaftaninGunu,Aciklama")] EczaneNobetMazeretCoklu eczaneNobetMazeretCoklu) { //var user = _userService.GetByUserName(User.Identity.Name); var nobetUstGrup = _nobetUstGrupSessionService.GetSession("nobetUstGrup"); //var haftaninGunleri = Enum.GetValues(typeof(DayOfWeek)).Cast<DayOfWeek>().ToList(); if (eczaneNobetMazeretCoklu.HaftaninGunu == null) { eczaneNobetMazeretCoklu.HaftaninGunu = new int[1] { 0 }; } var haftaninGunu = eczaneNobetMazeretCoklu.HaftaninGunu; var eczaneNobetGrup = _eczaneNobetGrupService.GetDetaylar(eczaneNobetMazeretCoklu.EczaneNobetGrupId); var bayramlar = _nobetGrupGorevTipTakvimOzelGunService.GetDetaylar(eczaneNobetMazeretCoklu.BaslangicTarihi, eczaneNobetMazeretCoklu.BitisTarihi, eczaneNobetGrup.Select(s => s.NobetGrupId).ToList(), 1) .Where(w => eczaneNobetMazeretCoklu.HaftaninGunu.Contains(w.NobetGunKuralId)).ToList(); var tarihAraligi = _takvimService.GetDetaylar(eczaneNobetMazeretCoklu.BaslangicTarihi, eczaneNobetMazeretCoklu.BitisTarihi); if (eczaneNobetMazeretCoklu.HaftaninGunu.Count() > 0) { tarihAraligi = tarihAraligi.Where(w => eczaneNobetMazeretCoklu.HaftaninGunu.Contains(w.HaftaninGunu) || bayramlar.Select(s => s.TakvimId).Contains(w.TakvimId)).ToList(); } var eczaneler = _eczaneService.GetDetaylar(nobetUstGrup.Id).Select(s => s.Id).ToList(); var baslangicTarihi = _takvimService.GetByTarih(eczaneNobetMazeretCoklu.BaslangicTarihi); var bitisTarihi = _takvimService.GetByTarih(eczaneNobetMazeretCoklu.BitisTarihi); //seçilen tarih aralığı takvimde olmalıdır. if (baslangicTarihi == null || bitisTarihi == null) { var minYil = _takvimService.GetList().Min(x => x.Tarih.Year); var maxYil = _takvimService.GetList().Max(x => x.Tarih.Year); ViewBag.minYil = minYil; ViewBag.maxYil = maxYil; ViewBag.Mesaj = $"Başlangıç-Bitiş tarih aralığı enaz {minYil} ila ençok {maxYil} arasında olmalıdır..."; ViewBag.EczaneNobetGrupId = new SelectList(_eczaneNobetGrupService.GetDetaylarByEczaneIdList(eczaneler) .Select(s => new MyDrop { Id = s.Id, Value = $"({s.EczaneAdi}, {s.NobetGrupGorevTipAdi}" }).OrderBy(s => s.Value), "Id", "Value", eczaneNobetMazeretCoklu.EczaneNobetGrupId); ViewBag.MazeretId = new SelectList(_mazeretService.GetList().Where(w => w.Id != 3), "Id", "Adi", eczaneNobetMazeretCoklu.MazeretId); ViewBag.HaftaninGunu = new SelectList(_takvimService.GetHaftaninGunleri(), "Id", "Value", eczaneNobetMazeretCoklu.HaftaninGunu); return(View(eczaneNobetMazeretCoklu)); } //Başlangıç tarihi Bitiş tarihinden büyük olamaz. if (baslangicTarihi.Id > bitisTarihi.Id) { ViewBag.Mesaj2 = $"Başlangıç tarihi ({baslangicTarihi.Tarih}) Bitiş tarihinden ({bitisTarihi.Tarih}) büyük olamaz..."; ViewBag.EczaneNobetGrupId = new SelectList(_eczaneNobetGrupService.GetDetaylarByEczaneIdList(eczaneler) .Select(s => new MyDrop { Id = s.Id, Value = $"{s.EczaneAdi}, {s.NobetGrupGorevTipAdi}" }).OrderBy(s => s.Value), "Id", "Value", eczaneNobetMazeretCoklu.EczaneNobetGrupId); ViewBag.MazeretId = new SelectList(_mazeretService.GetList().Where(w => w.Id != 3), "Id", "Adi", eczaneNobetMazeretCoklu.MazeretId); ViewBag.HaftaninGunu = new SelectList(_takvimService.GetHaftaninGunleri(), "Id", "Value", eczaneNobetMazeretCoklu.HaftaninGunu); return(View(eczaneNobetMazeretCoklu)); } var eczaneNobetMazeretler = new List <EczaneNobetMazeret>(); foreach (var eczaneNobetGrupId in eczaneNobetMazeretCoklu.EczaneNobetGrupId) { foreach (var item in tarihAraligi) { eczaneNobetMazeretler.Add(new EczaneNobetMazeret { MazeretId = eczaneNobetMazeretCoklu.MazeretId, EczaneNobetGrupId = eczaneNobetGrupId,// eczaneNobetMazeretCoklu.EczaneNobetGrupId, TakvimId = item.TakvimId, Aciklama = eczaneNobetMazeretCoklu.Aciklama, }); } } var eklenecekMazeretSayisi = eczaneNobetMazeretler.Count; if (ModelState.IsValid && eklenecekMazeretSayisi > 0) { try { _eczaneNobetMazeretService.CokluEkle(eczaneNobetMazeretler); } catch (DbUpdateException ex) { var hata = ex.InnerException.ToString(); string[] dublicateHata = { "Cannot insert dublicate row in object", "with unique index" }; var dublicateRowHatasiMi = dublicateHata.Any(h => hata.Contains(h)); if (dublicateRowHatasiMi) { throw new Exception("<strong>Bir eczaneye aynı gün için iki mazeret kaydı eklenemez...</strong>"); } throw ex; } catch (Exception ex) { throw ex; } TempData["EklenenMazeretSayisi"] = eklenecekMazeretSayisi; ViewBag.EczaneNobetGrupId = new SelectList(_eczaneNobetGrupService.GetDetaylarByEczaneIdList(eczaneler) .Select(s => new MyDrop { Id = s.Id, Value = $"{s.EczaneAdi}, {s.NobetGrupGorevTipAdi}" }).OrderBy(s => s.Value), "Id", "Value", eczaneNobetMazeretCoklu.EczaneNobetGrupId); ViewBag.MazeretId = new SelectList(_mazeretService.GetList().Where(w => w.Id != 3), "Id", "Adi", eczaneNobetMazeretCoklu.MazeretId); ViewBag.HaftaninGunu = new SelectList(_takvimService.GetHaftaninGunleri(), "Id", "Value", eczaneNobetMazeretCoklu.HaftaninGunu); ViewBag.SecilenHaftaninGunuSayisi = eczaneNobetMazeretCoklu.HaftaninGunu.Count(); //return RedirectToAction("Index"); return(View(eczaneNobetMazeretCoklu)); } else { ViewBag.EczaneNobetGrupId = new SelectList(_eczaneNobetGrupService.GetDetaylarByEczaneIdList(eczaneler) .Select(s => new MyDrop { Id = s.Id, Value = $"{s.EczaneAdi}, {s.NobetGrupGorevTipAdi}" }).OrderBy(s => s.Value), "Id", "Value"); ViewBag.MazeretId = new SelectList(_mazeretService.GetList().Where(w => w.Id != 3), "Id", "Adi", eczaneNobetMazeretCoklu.MazeretId); ViewBag.HaftaninGunu = new SelectList(_takvimService.GetHaftaninGunleri(), "Id", "Value"); ViewBag.SecilenHaftaninGunuSayisi = eczaneNobetMazeretCoklu.HaftaninGunu.Count(); //bayram ve hafta günleri kontrol if (bayramlar.Count == 0) { if (eczaneNobetMazeretCoklu.HaftaninGunu.Where(w => w == 8 && w == 9).Count() > 0) { ViewBag.MesajBayram = $"Girilen tarih aralığına uygun bayram bulunmamaktadır."; } else if (eczaneNobetMazeretCoklu.HaftaninGunu.Where(w => w == 8).Count() > 0) { ViewBag.MesajBayram = $"Girilen tarih aralığına uygun dini bayram bulunmamaktadır."; } else if (eczaneNobetMazeretCoklu.HaftaninGunu.Where(w => w == 9).Count() > 0) { ViewBag.MesajBayram = $"Girilen tarih aralığına uygun milli bayram bulunmamaktadır."; } else if (eczaneNobetMazeretCoklu.HaftaninGunu.Where(w => w <= 7).Count() > 0) { ViewBag.MesajBayram = $"Girilen tarih aralığına uygun hafta günü bulunmamaktadır."; } } else { if (eczaneNobetMazeretCoklu.HaftaninGunu.Count() == 1) { ViewBag.MesajBayram = $"Seçilen hafta gününe uygun tarih aralığı bulunmamaktadır."; } else { ViewBag.MesajBayram = $"Seçilen hafta günlerine uygun tarih aralığı bulunmamaktadır."; } } } return(View(eczaneNobetMazeretCoklu)); }