Пример #1
0
        public KomponenKoordinat QryKoordIni(int koorId)
        {
            // temukan apakah ada komponen di koordinat ini
            // ada potensi kordinat ini tidak punya komponen
            KomponenKoordinat kompIni = new KomponenKoordinat();

            try
            {
                kompIni = QryTblIni.Where(k => k.KoorId == koorId).First();
            }
            catch { }
            return(kompIni);
        }
Пример #2
0
        // 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));
        }
Пример #3
0
        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));
        }