// GET: KomponenGaris/Edit/5 public async Task <IActionResult> AddOrEdit(int?grsId, bool add = true) { var sesPola = SPola.GetSesi(this); var polaId = sesPola.PolaId; if (grsId == null) { grsId = sesPola.GarisId; } List <KomponenPola> lstKomp = new List <KomponenPola>(); var komponenGaris = await _context.TblKomponenGaris.FindAsync(grsId); if (add) { komponenGaris = new KomponenGaris() { GarisId = (int)grsId, }; } else { if (komponenGaris == null) { return(NotFound()); } grsId = komponenGaris.GarisId; //polaId = komponenGaris.Garis.KoordAwal.PolaId; } var grs = _context.TblGaris .Include(g => g.KoordAwal) .Include(g => g.KoordAkhir) .Include(g => g.KoordAwal.TitikX) .Include(g => g.KoordAwal.TitikY) .Include(g => g.KoordAkhir.TitikX) .Include(g => g.KoordAkhir.TitikY) .Where(g => g.GarisId == grsId) //.ToList(); .Single(); ViewBag.GarisNama = grs.Nama + " (" + grs.Arah + ")"; var lstKomp4Select = _context.TblKomponenPola.Where(k => k.PolaId == polaId) .Select(k => new { k.KomPolaId, k.Komponen.Nama }).ToList(); var lstPosZ = _context.TblTitik.Where(t => t.PolaId == polaId && t.Sumbu == ESumbu.Z) .Select(t => new { t.TtkId, t.Nama }).ToList(); ViewData["KompPolaId"] = new SelectList(lstKomp4Select, "KomPolaId", "Nama", komponenGaris.KompPolaId); ViewData["PosZId"] = new SelectList(lstPosZ, "TtkId", "Nama", komponenGaris.PosZId); return(View(komponenGaris)); }
public async Task <IActionResult> AddOrEdit(int id, [Bind("KompGrsId,GarisId,KompPolaId,PosRelatifDiZ,PosZId,PosRelatif,PosRelX,PosRelY,OffsetKeKanan")] KomponenGaris komponenGaris) { var sesPola = SPola.GetSesi(this); var permintaanDariGambar = sesPola.DariGambar; if (ModelState.IsValid) { if (komponenGaris.KompGrsId == 0) { try { _context.Add(komponenGaris); await _context.SaveChangesAsync(); } catch { } } else if (id == komponenGaris.KompGrsId) { try { _context.Update(komponenGaris); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!KomponenGarisExists(komponenGaris.KompGrsId)) { return(NotFound()); } else { throw; } } } if (permintaanDariGambar) { // kembali ke index gambar return(RedirectToAction("KompGaris", "Gambar")); } else { return(RedirectToAction(nameof(Index))); } } var grs = _context.TblGaris .Include(g => g.KoordAwal) .Include(g => g.KoordAkhir) .Include(g => g.KoordAwal.TitikX) .Include(g => g.KoordAwal.TitikY) .Include(g => g.KoordAkhir.TitikX) .Include(g => g.KoordAkhir.TitikY) .Where(g => g.GarisId == id) //.ToList(); .Single(); int polaId = grs.KoordAwal.TitikX.Pola.PolaId; ViewBag.GarisNama = grs.Nama + " (" + grs.Arah + ")"; var lstKomp4Select = _context.TblKomponenPola.Where(k => k.PolaId == polaId) .Select(k => new { k.KomPolaId, k.Komponen.Nama }).ToList(); var lstPosZ = _context.TblTitik.Where(t => t.PolaId == polaId && t.Sumbu == ESumbu.Z) .Select(t => new { t.TtkId, t.Nama }).ToList(); ViewData["KompPolaId"] = new SelectList(lstKomp4Select, "KomPolaId", "Nama", komponenGaris.KompPolaId); ViewData["PosZId"] = new SelectList(lstPosZ, "TtkId", "Nama", komponenGaris.PosZId); if (permintaanDariGambar) { //kembali ke action gambar garis di gambar return(RedirectToAction("KompGaris", "Gambar")); } return(View(komponenGaris)); }