public ActionResult Ekle(IzinEkleVM model) { if (ModelState.IsValid) { var UserId = User.GetUserPropertyValue("UserId"); if (model.BaslangicTS > model.BitisTS) { ViewBag.GenelHata = "Başlangıç tarihi bitiş tarihinden ileri olamaz"; model.IzinTipList = IzintipSelection(); return(View(model)); } if (model.Id > 0)//güncelleme { var izin = izinContext.Izinler.FirstOrDefault(x => x.Id == model.Id); if (izin.DurumId != 1)//taslak değilse güncelleyemesin { ViewBag.GenelHata = "Sadece Taslak Durumundaki izinleri güncelleyebilirsiniz"; model.IzinTipList = IzintipSelection(); return(View(model)); } izin.IzinNedeni = model.IzinNedeni; izin.BaslangicTarihi = model.BaslangicTS; izin.BitisTarihi = model.BitisTS; izin.IzinTipId = model.IzinTipId; izinContext.Izinler.Attach(izin); izinContext.Entry(izin).State = EntityState.Modified; izinContext.SaveChanges(); return(RedirectToAction("Index")); } else { //yeni ekleme var izin = new Izin(); izin.IzinNedeni = model.IzinNedeni; izin.BaslangicTarihi = model.BaslangicTS; izin.BitisTarihi = model.BitisTS; izin.IzinTipId = model.IzinTipId; izin.IzinKullaniciId = Convert.ToInt32(UserId); izin.EklemeTarihi = DateTime.Now; if (User.IsInRole("Yonetici") || User.IsInRole("Admin")) { izin.DurumId = 3;//direk onaylanmış olarak kaydedilsin } else { izin.DurumId = 1;//ilk kaydetmede taslak olarak kaydediliyor } izinContext.Izinler.Add(izin); izinContext.SaveChanges(); return(RedirectToAction("Index")); } } model.IzinTipList = IzintipSelection(); return(View(model)); }
public ActionResult Ekle(int id = 0) { var izin = izinContext.Izinler.FirstOrDefault(x => x.Id == id); var model = new IzinEkleVM(); if (izin != null) { model.Id = izin.Id; model.IzinNedeni = izin.IzinNedeni; model.IzinTipList = IzintipSelection(); model.IzinTipId = izin.IzinTipId; model.BaslangicTS = izin.BaslangicTarihi; model.BitisTS = izin.BitisTarihi; model.DurumId = izin.DurumId; return(View(model)); } model.IzinTipList = IzintipSelection(); return(View(model)); }