// GET: KomponenKoordinat public IActionResult Index(int?polaId, int?koorId, bool dariForm, bool dariAjax) { #region simpan/ambil kode ke/dari sesi var sesPola = SPola.GetSesi(this); if (dariAjax) { polaId = sesPola.PolaId; koorId = sesPola.KoorId; } #endregion #region tblKomponenKoordinat var rabContext = _context.TblKomponenKoordinat.AsQueryable(); if (polaId != null) { rabContext = rabContext.Where(k => k.PolaKomponen.PolaId == polaId); sesPola.SetPolaId(polaId); } #endregion if (koorId != null && koorId != 0) { rabContext = rabContext.Where(k => k.KoorId == koorId); sesPola.SetKoorId(koorId); } //rabContext = rabContext.Include(k => k.Koordinat); if (polaId == null && koorId == null) { rabContext = rabContext.Where(k => k.KoorId == 0); } else { rabContext = rabContext .Include(k => k.Koordinat) .Include(k => k.Koordinat.TitikX) .Include(k => k.Koordinat.TitikY) .Include(k => k.PolaKomponen) .Include(k => k.PolaKomponen.Komponen) .Include(k => k.TitikZatas) .Include(k => k.TitikZbawah) ; //simpan polaId dan koorId di sessi } ViewBag.KoorId = koorId; bool isAjax = HttpContext.Request.Headers["X-Requested-With"] == "XMLHttpRequest"; if (isAjax) { return(PartialView("RAB/_TblKomponenKoordinat", rabContext.ToList())); } ViewData["PolaId"] = new SelectList(_context.TblPola.Where(p => p.Status == EStatusPola.Utama), "PolaId", "Nama", polaId); return(View(rabContext.ToList())); }
public void SetSesPolaId(int?polaId) { if (polaId == null) { polaId = -1; } var sesPola = SPola.GetSesi(this); sesPola.SetPolaId(polaId); }
public void SetSesGaris(int?grsId) { if (grsId == null) { grsId = -1; } var sesPola = SPola.GetSesi(this); sesPola.SetGarisId(grsId); }
// 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 IActionResult GetLstKoord(int polaId) { var sesPola = SPola.GetSesi(this); sesPola.SetPolaId(polaId); var lstGrs = _context.TblKoordinat .Include(k => k.TitikX) .Include(k => k.TitikY) .Where(p => p.TitikX.PolaId == polaId).ToList(); var lstJson = lstGrs.Select(g => new { g.KoordId, g.Nama }).ToList(); var select = new SelectList(lstJson, "KoordId", "Nama", 0); return(Ok(select)); }
// GET: KomponenKoordinat/Edit/5 public async Task <IActionResult> AddOrEdit(int?komKoorId, int?koorId, bool add = true) { var sesPola = SPola.GetSesi(this); var polaId = sesPola.PolaId; if (koorId == null) { // untuk add koorId = sesPola.KoorId; } List <KomponenPola> lstKomp = new List <KomponenPola>(); var komponenKoor = await _context.TblKomponenKoordinat.FindAsync(komKoorId); if (add) { komponenKoor = new KomponenKoordinat() { KoorId = (int)koorId, }; } else { if (komponenKoor == null) { return(NotFound()); } koorId = komponenKoor.KoorId; //polaId = komponenGaris.Garis.KoordAwal.PolaId; } var koor = _context.TblKoordinat.Include(k => k.TitikX).Include(k => k.TitikY) .Where(k => k.KoordId == koorId).Single(); ViewBag.KoorNama = koor.Nama; var lstKomp4Select = _context.TblKomponenPola.Where(k => k.PolaId == polaId && (int)k.Komponen.Posisi3D == (int)EPosisi3D.Kolom) .Select(k => new { k.KomPolaId, k.Komponen.Nama }).ToList(); var lstPosZ = _context.TblTitik.Where(t => t.PolaId == polaId && t.Sumbu == ESumbu.Z) .OrderByDescending(t => t.Jarak) .Select(t => new { t.TtkId, t.Nama }).ToList(); ViewData["KompId"] = new SelectList(lstKomp4Select, "KomPolId", "Nama", komponenKoor.KompId); ViewData["PosAtasId"] = new SelectList(lstPosZ, "TtkId", "Nama", komponenKoor.PosAtasId); ViewData["PosBawahId"] = new SelectList(lstPosZ, "TtkId", "Nama", komponenKoor.PosBawahId); return(View(komponenKoor)); }
// GET: KomponenGaris public async Task <IActionResult> Index(int?polaId, int?grsId, bool dariForm, bool dariAjax) { var sesPola = SPola.GetSesi(this); if (dariForm) { sesPola.SetPolaId(polaId); sesPola.SetGarisId(grsId); } else if (dariAjax) { polaId = sesPola.PolaId; grsId = sesPola.GarisId; } #region menambang model tblKomponenGaris var rabContext = _context.TblKomponenGaris .Include(k => k.Garis) .Include(g => g.Garis.KoordAwal) .Include(g => g.Garis.KoordAkhir) .Include(g => g.Garis.KoordAwal.TitikX) .Include(g => g.Garis.KoordAwal.TitikY) .Include(g => g.Garis.KoordAkhir.TitikX) .Include(g => g.Garis.KoordAkhir.TitikY) .Include(k => k.PolaKomponen).ThenInclude(p => p.Komponen) .Include(k => k.TitikZ) .Where(k => k.Garis.KoordAwal.TitikX.PolaId == polaId); #endregion if (grsId != null && grsId != 0) { rabContext = rabContext.Where(k => k.Garis.GarisId == grsId); } bool isAjax = HttpContext.Request.Headers["X-Requested-With"] == "XMLHttpRequest"; if (isAjax) { return(PartialView("RAB/_TblKomponenGaris", await rabContext.ToListAsync())); } ViewData["PolaId"] = new SelectList(_context.TblPola.Where(p => p.Status == EStatusPola.Utama), "PolaId", "Nama", polaId); return(View(await rabContext.ToListAsync())); }
// GET: TitikPotongHor public async Task <IActionResult> Index(int?id) { var sesPola = SPola.GetSesi(this); if (id != null) { sesPola.SetPolaId(id); } else { id = sesPola.PolaId; } if (id != 0) { try{ QCekKoordinat cekKoord = new QCekKoordinat(_context, (int)id); //perbaharui tabel titik potong cekKoord.UpdateDariTblTitik(); } catch { } } var rabContext = await _context.TblKoordinat.Where(t => t.TitikX.PolaId == id).OrderBy(t => t.Yid).ThenBy(y => y.Xid).ToListAsync(); bool isAjax = HttpContext.Request.Headers["X-Requested-With"] == "XMLHttpRequest"; if (isAjax) { return(PartialView("RAB/_TblKoordinat", rabContext)); } ViewBag.ListPola = new SelectList(_context.TblPola, "PolaId", "Nama", id); ViewBag.PolaId = id; return(View(rabContext)); }
// GET: Grid public IActionResult Index(int?id) { //buat daftar pola yang tersedia untuk pilihan Pola var sesPola = SPola.GetSesi(this); if (id != null) { sesPola.SetPolaId(id); } else { id = sesPola.PolaId; } var rabConAll = _context.TblTitik.Include(g => g.Pola) .Where(pol => pol.PolaId == id) .ToList().AsQueryable(); var rabConNonZ = rabConAll.Where(k => (int)k.Sumbu != (int)ESumbu.Z) .OrderBy(p => p.Sumbu).ThenBy(p2 => p2.SumbuId); var rabConZ = rabConAll.Where(k => (int)k.Sumbu == (int)ESumbu.Z) .OrderByDescending(t => t.Jarak); var rabContext = rabConNonZ.Union(rabConZ); bool isAjax = HttpContext.Request.Headers["X-Requested-With"] == "XMLHttpRequest"; if (isAjax) { return(PartialView("RAB/_TblTitik", rabContext.ToList())); } ViewBag.PolaId = id; ViewBag.ListPola = new SelectList(_context.TblPola, "PolaId", "Nama", id); return(View(rabContext.ToList())); }
public async Task <IActionResult> AddOrEdit(int id, [Bind("KompKoorId,KoorId,KompId,PosAtasId,PosBawahId")] KomponenKoordinat komponenKoor) { var sesPola = SPola.GetSesi(this); var permintaanDariGambar = sesPola.DariGambar; var koor = _context.TblKoordinat.Include(k => k.TitikX).Include(k => k.TitikY) //.ThenInclude(k => k.Pola) .Where(k => k.KoordId == komponenKoor.KoorId).Single(); int polaId = koor.TitikX.PolaId; if (ModelState.IsValid) { if (komponenKoor.KompKoorId == 0) { try { _context.Add(komponenKoor); await _context.SaveChangesAsync(); } catch { } } else if (id == komponenKoor.KompKoorId) { try { _context.Update(komponenKoor); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!KomponenKoordinatExists(komponenKoor.KompKoorId)) { return(NotFound()); } else { throw; } } } if (permintaanDariGambar) { // kembali ke index gambar return(RedirectToAction("KompGaris", "Gambar")); } else { return(RedirectToAction(nameof(Index), new { polaId = polaId, koorId = komponenKoor.KoorId })); } } ViewBag.KoorNama = koor.Nama; var lstKomp4Select = _context.TblKomponenPola.Where(k => k.PolaId == polaId && (int)k.Komponen.Posisi3D == (int)EPosisi3D.Kolom) .Select(k => new { k.KomPolaId, k.Komponen.Nama }).ToList(); var lstPosZ = _context.TblTitik.Where(t => t.PolaId == polaId && t.Sumbu == ESumbu.Z) .OrderByDescending(t => t.Jarak) .Select(t => new { t.TtkId, t.Nama }).ToList(); ViewData["KompId"] = new SelectList(lstKomp4Select, "KomPolId", "Nama", komponenKoor.KompId); ViewData["PosAtasId"] = new SelectList(lstPosZ, "TtkId", "Nama", komponenKoor.PosAtasId); ViewData["PosBawahId"] = new SelectList(lstPosZ, "TtkId", "Nama", komponenKoor.PosBawahId); return(View(komponenKoor)); }
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)); }
public IActionResult Index(int? id, int skl = 50, bool dariForm= false) { var sesPola = SPola.GetSesi(this); if (dariForm) sesPola.SetPolaId(id); else id = sesPola.PolaId; decimal skala = (decimal)skl; if (skala < 10) { skala = 100; } var MVGambarGaris = new MVGambarGaris() { Skala = skala / 100, PolaId = id }; if (id != null & id != 0) { //perbaharui tabel koordinat try { QCekKoordinat cekKoord = new QCekKoordinat(_context, (int)id); //perbaharui tabel titik potong cekKoord.UpdateDariTblTitik(); } catch { } var qGaris = new List<OGaris>().AsQueryable(); var qGrsKoor = new List<OKetGarisKoordinat>().AsQueryable(); var qTtkKoor = new List<Koordinat>().AsQueryable(); try { QCekBidangDatar qDatar = new QCekBidangDatar(_context, (int)id); qGaris = qDatar.QryGarisPartial.OrderBy(g => g.Arah); QCekKoordinat qKoor = new QCekKoordinat(_context, (int)id); qGrsKoor = qKoor.GarisKoordinat; qTtkKoor = qKoor.QryTblIniPosUpToDate; MVGambarGaris.TinggiMax = qGrsKoor.Where(g => g.Garis.Arah == ESumbu.Y) .Select(s => s.Garis.Akhir.TitikY.PosAbs).Max() + 300; MVGambarGaris.LebarMax = qGrsKoor.Where(g => g.Garis.Arah == ESumbu.X) .Select(s => s.Garis.Akhir.TitikX.PosAbs).Max() + 300; //buat garis koordinat } catch (Exception) { } MVGambarGaris.LstGarisReal = qGaris.ToList(); MVGambarGaris.LstGrsKoord = qGrsKoor.ToList(); MVGambarGaris.LstKoord = qTtkKoor.ToList(); } ViewBag.Skala = skala / 100; bool isAjax = HttpContext.Request.Headers["X-Requested-With"] == "XMLHttpRequest"; if (isAjax) { return PartialView("RAB/_ViewGambarGaris", MVGambarGaris); } ViewBag.ListSkala = new SelectList(LstSkala, "Nilai", "Nama", skala); ViewBag.ListPola = new SelectList(_context.TblPola, "PolaId", "Nama", id); ViewBag.PolaId = id; // iQueryable tdk bisa menggunkan toListAsync() // jadi untuk sementara pakai toList() aja return View(MVGambarGaris); }
public IActionResult KompGaris(int? polaId, int? garisId, int? koorId, int? skl, bool inzet = false) { var sesPola = SPola.GetSesi(this); int _polaId = 0; if (polaId == null || polaId == 0) { _polaId = sesPola.PolaId; } else { _polaId = (int)polaId; } if(garisId != null) { // simpan ke sessi sesPola.SetGarisId(garisId); } else { garisId = sesPola.GarisId; } if (skl != null) { // simpan ke sessi sesPola.SetSkala(skl); } else { skl = sesPola.Skala; } //tidak ada pilihan pola decimal skala = (decimal)skl; var polaNama = ""; //int polId = ; var mvKompGaris = new MVGambarKompGaris(); var mvGambarGarisParsial = new MVGambarGarisParsial() { Skala = skala / 100, PolaId = _polaId }; var mvGambarGarisValid = new MVGambarGarisValid() { Skala = skala / 100, PolaId = _polaId }; if (_polaId != 0) { #region garis valid polaNama = _context.TblPola.Find(_polaId).Nama; var qGaris = new List<Garis>().AsQueryable(); var qGrsKoor = new List<OKetGarisKoordinat>().AsQueryable(); var qTtkKoor = new List<Koordinat>().AsQueryable(); try { QCekGaris qcGaris = new QCekGaris(_context, _polaId); qcGaris.UpdateDariGambar(); qGaris = qcGaris.QryTblIniPosUpToDate.OrderBy(g => g.Arah); // memperbaharui tabel garis di pola terpilih QCekGaris qGrs = new QCekGaris(_context, _polaId); qGrs.UpdateDariGambar(); QCekKoordinat qKoor = new QCekKoordinat(_context, _polaId); qGrsKoor = qKoor.GarisKoordinat; qTtkKoor = qKoor.QryTblIniPosUpToDate; // filter titik koordinat yang ada garis saja-------------------- var lstKoorAwalGrs = qGaris.Select(g => g.KoordAwal.KoordId).ToList(); var lstKoorAkhirGrs = qGaris.Select(g => g.KoordAkhir.KoordId).ToList(); qTtkKoor = qTtkKoor.Where(t => lstKoorAwalGrs.Contains(t.KoordId) || lstKoorAkhirGrs.Contains(t.KoordId)); //--------------------------------------------------------------------------------------------------------- mvGambarGarisValid.TinggiMax = qGrsKoor.Where(g => g.Garis.Arah == ESumbu.Y) .Select(s => s.Garis.Akhir.TitikY.PosAbs).Max() + 300; mvGambarGarisValid.LebarMax = qGrsKoor.Where(g => g.Garis.Arah == ESumbu.X) .Select(s => s.Garis.Akhir.TitikX.PosAbs).Max() + 300; //buat garis koordinat } catch (Exception) { } mvGambarGarisValid.LstGarisReal = qGaris.ToList(); mvGambarGarisValid.LstGrsKoord = qGrsKoor.ToList(); mvGambarGarisValid.LstKoord = qTtkKoor.ToList(); #endregion #region garis parsial var garis = new Garis(); try { // for test //garisId = 1; QCekGaris qcGaris = new QCekGaris(_context, _polaId); garis = qcGaris.QryTblIniPosUpToDate.Single(g => g.GarisId == (int)garisId); //OrderBy(g => g.Arah); QCekKoordinat qKoor = new QCekKoordinat(_context, _polaId); qGrsKoor = qKoor.GarisKoordinat4Z; qTtkKoor = qKoor.QryTblIni4ZPosUpToDate; mvGambarGarisParsial.TinggiMax = qGrsKoor.Where(g => g.Garis.Arah == ESumbu.Y) .Select(s => s.Garis.Akhir.TitikY.PosRel).Max(); } catch (Exception) { } if (garisId != 0) { QCekKompGaris qcKGaris = new QCekKompGaris(_context, _polaId, (int) garisId); mvGambarGarisParsial.GarisReal = garis; mvGambarGarisParsial.LstGarisKomp = qcKGaris.GarisKomponen.ToList(); } mvGambarGarisParsial.LstGrsKoord = qGrsKoor.ToList(); mvGambarGarisParsial.LstKoord = qTtkKoor.ToList(); #endregion mvKompGaris.GarisValid = mvGambarGarisValid; mvKompGaris.GarisParsial = mvGambarGarisParsial; // menambang tabel komponen garis var tblKompGaris = _context.TblKomponenGaris .Include(k => k.Garis) .Include(g => g.Garis.KoordAwal) .Include(g => g.Garis.KoordAkhir) .Include(g => g.Garis.KoordAwal.TitikX) .Include(g => g.Garis.KoordAwal.TitikY) .Include(g => g.Garis.KoordAkhir.TitikX) .Include(g => g.Garis.KoordAkhir.TitikY) .Include(k => k.PolaKomponen).ThenInclude(p => p.Komponen) .Include(k => k.TitikZ) .Where(k => k.Garis.GarisId == garisId) ; mvKompGaris.GarisParsial.TblKompGaris = tblKompGaris; } ViewBag.Skala = skala / 50; ViewBag.GarisTerpilih = garisId; ViewBag.KoordTerpilih = koorId; bool isAjax = HttpContext.Request.Headers["X-Requested-With"] == "XMLHttpRequest"; if (isAjax) { if (inzet) { return PartialView("RAB/_ViewGambarKompGaris", mvGambarGarisValid); } else { return PartialView("RAB/_ViewGambarGarisParsial", mvGambarGarisParsial); } } //ViewBag.PolaNama = polaNama; ViewBag.ListSkala = new SelectList(LstSkala, "Nilai", "Nama", skala); return View(mvKompGaris); }